Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

KTNI_Kozlov_otvety / Linux

.pdf
Скачиваний:
28
Добавлен:
05.06.2015
Размер:
589.67 Кб
Скачать

1. Наука как объект компьютеризации. Использование компьютерных технологий в научных исследованиях. Приведите примеры. Ответ:

Компьютерные технологии повышают уровень эффективности работ в науке за счет следующих факторов:

1.Упрощение, ускорение и увеличение эффективности процессов сбора, обработки, передачи, представления и хранения информации.

2.Увеличение объема полезной информации с накопителем типовых решений и обобщением опыта научных разработок.

3.Обеспечение глубины, точности и качества решения задач. Возможность реализации задач ранее не решаемых. Постановка исследований и получение результатов, недостижимых другими средствами.

4.Возможность анализа большого числа вариантов синтеза объектов и принятия решений.

5.Возможность проверки гипотез и контроля качества продукции на этапе проектирования без необходимости создания дорогостоящих тестовых образцов.

6. Сокращение сроков разработки, трудоемкости и стоимости научно-исследовательской деятельности при улучшении условий работы специалистов.

Примеры:

Вычислительная химия, метеорология, сейсмология, медицина и биология (проект по расшифровке генома человека, предсказание структуры белков и т.д).

2. Виды научно-технической информации и её обработка. Ответ:

К видам НТ информации можно отнести как различные книги, обзоры и статьи, так и чертежи, блок-схемы, описания алгоритмов и моделей, а также массивы числовых данных, получаемые в результате численного моделирования или лабораторного эксперимента. Современные технологии позволяют весьма эффективно обрабатывать НТ информацию. В частности:

Проводить статистический анализ результатов моделирования и экспериментов, выделять функциональные зависимости и корреляции данных, создавать модели на основе экспериментальных данных, оптимально прогнозировать поведение систем на основе неполной информации, систематизировать и группировать данные, представлять данные в формате удобном для человеческого восприятия и т.д.

3. Операционные системы. Основные характеристики, назначение. Ответ:

ОС — комплекс управляющих и обрабатывающих программ, которые, с одной стороны, выступают как интерфейс между устройствами вычислительной системы и прикладными программами, а с другой стороны — предназначены для управления устройствами, управления вычислительными процессами, эффективного распределения вычислительных ресурсов между вычислительными процессами и организации надёжных вычислений.

Основные функции:

Выполнение по запросу программ (ввод и вывод данных, запуск и остановка других программ, выделение и освобождение дополнительной памяти и др.).

Загрузка программ в оперативную память и их выполнение.

Стандартизованный доступ к периферийным устройствам (устройства ввода-вывода).

Управление оперативной памятью (распределение между процессами, организация виртуальной памяти).

Управление доступом к данным на энергонезависимых носителях (таких как жёсткий диск, оптические диски и др.), организованным в той или иной файловой системе.

Обеспечение пользовательского интерфейса. Сохранение информации об ошибках системы.

Дополнительные функции:

Параллельное или псевдопараллельное выполнение задач (многозадачность). Эффективное распределение ресурсов вычислительной системы между процессами. Разграничение доступа различных процессов к ресурсам.

Организация надёжных вычислений (невозможности одного вычислительного процесса намеренно или по ошибке повлиять на вычисления в другом процессе), основана на разграничении доступа к ресурсам.

Взаимодействие между процессами: обмен данными, взаимная синхронизация.

Защита самой системы, а также пользовательских данных и программ от действий пользователей (злонамеренных или по незнанию) или приложений.

Многопользовательский режим работы и разграничение прав доступа (см. аутентификация, авторизация).

Компоненты операционной системы

Загрузчик

Ядро Командный процессор (интерпретатор)

Драйверы устройств Интерфейс

4. Программное обеспечение в научных исследованиях. Системы автоматизированного проектирования. Ответ:

Большую роль играют системы компьютерной алгебры и пакеты программ для численного моделирования и статистического анализа. Кроме того широко используются программы, создаваемые сотрудниками лабораторий на языках программирования таких как C/C++ и Fortran c использованием множества библиотек, например, LAPACK и GMP.

Система автоматизированного проектирования — автоматизированная система, реализующая информационную технологию выполнения функций проектирования, представляет собой организационно-техническую систему, предназначенную для автоматизации процесса проектирования, состоящую из персонала и комплекса технических, программных и других средств автоматизации его деятельности Цели создания и задачи

В рамках жизненного цикла промышленных изделий САПР решает задачи автоматизации работ на стадиях проектирования и подготовки производства.

Основная цель создания САПР — повышение эффективности труда инженеров, включая: сокращения трудоёмкости проектирования и планирования; сокращения сроков проектирования;

сокращения себестоимости проектирования и изготовления, уменьшение затрат на эксплуатацию; повышения качества и технико-экономического уровня результатов проектирования; сокращения затрат на натурное моделирование и испытания.

Достижение этих целей обеспечивается путем: автоматизации оформления документации;

информационной поддержки и автоматизации процесса принятия решений;

использования технологий параллельного проектирования; унификации проектных решений и процессов проектирования; повторного использования проектных решений, данных и наработок; стратегического проектирования;

замены натурных испытаний и макетирования математическим моделированием; повышения качества управления проектированием; применения методов вариантного проектирования и оптимизации.

5.Особенности ОС Linux и ее отличия от дисковых ОС. Условия свободного распространения Linux. Основные компоненты ОС. Ответ:

Основные особенности ОС Linux:

Гибкость ОС; Наличие многозадачного режима;

Наличие многопользовательского режима; Наличие открытых исходных программных файлов (наличие кода);

Наличие бесплатной лицензии (большинство дистрибутивов ОС некоммерческие); Большие возможности настройки ОС; Стабильный режим работы; Невысокие требования к аппаратной платформе

Ядро Linux распространяется под лицензией GNU General Public License второй версии, которая позволяет свободно копировать и распространять исходный код ядра, а также модифицированные копии и программы, созданные на основе ядра (с использованием исходного кода ядра) под этой же лицензией.

Компоненты операционной системы

Загрузчик

Ядро Командный процессор (интерпретатор)

Драйверы устройств Интерфейс

6.Командный интерпретатор Linux. Назначение, основные способы настройки под нужды пользователя.

Приведите основные команды. Ответ:

Оболочка операционной системы (от англ. shell — оболочка) — интерпретатор команд операционной системы, обеспечивающий интерфейс для взаимодействия пользователя с функциями системы.

Стандартом POSIX определён язык оболочки, включающий конструкции последовательного (перевод строки, точка с запятой), условного («if», «case», "||", «&&») и циклического («for», «for in», «while», «until») исполнения команд, а также оператор присваивания.

На практике большинство дистрибутивов использует Bourne again Shell (BASH), который соответствует стандарту POSIX, в качестве командного интерпретатора по умолчанию.

Разновидности командных интерпретаторов

Bourne Shell (BSH) – Стив Боурн (AT&T); Bourne again Shell (BASH);

C Shell (CSH) – Билл Джой (Беркли); Z Shell (ZSH);

PDK Shell (PDKSH);

Korn Shell (KSH) – Девид Корн (AT&T); TC Shell (TCSH).

Основные команды:

ls - отображение объектов файловой системы, например, ls –la /home;

ls –F Выводит список имен файлов и каталогов, ставя после имени каталога косую черту; ls –R Выводит содержимое рабочего каталога со всеми его подкаталогами

cp – копирование данных, например, cp –i /home/pasha/1 /home/pash/old

mv – переименование или перемещение объекта файловой системы, например: mv –i 1 2 - переименование объекта 1 в объект 2 в текущей директории

mv –i 1 /home/pasha/old – перемещение объекта 1 в директорию /home/pasha/old pwd – отображение абсолютного пути текущего местоположения пользователя

rm – удаление объектов файловой системы, например: rm –i 1 2 3 4 5 6 7

rmdir – удаление пустых каталогов (частный случай команды rm) rmdir /home/pasha/old

cd – переход из одного каталога в другой (change directory), например: cd /home

7. Назначение команды ls, приведите основные опции команды. Использование команды совместно с метасимволами. Ответ:

Команда ls используется для отображения объектов файловой системы. При использовании без опций эта команда выдает список всех файлов и каталогов, содержащихся в текущем каталоге.

ls –l выдает построчный вывод информации для каждого файла, а именно его размер, дату и время последнего изменения; ls –al выдает информацию обо всех файлах, содержащихся в текущем каталоге, включая скрытые файлы;

ls –F выводит список имен файлов и каталогов, ставя после имени каталога косую черту; ls –R выводит содержимое рабочего каталога со всеми его подкаталогами.

Иногда при работе с командным интерпретатором требуется найти или сопоставить файлы по шаблону. В командном интерпретаторе используется ряд специальных символов, называемых групповыми символами, с помощью которых файлы можно искать, сопоставлять, а также создавать список имен файлов. Этими символами являются звездочка, вопросительный знак и квадратные скобки (*, ?, [])

* - Устанавливает соответствие с любым набором символов в именах файлов ? - Устанавливает соответствие с любым отдельным символом в именах файлов [ ] - Сравнение с классом возможных символов в именах файлов

Пример: ls [mt] *d? – выводятся все файлы (если они существуют), которые начинаются либо с буквы “m”, либо с буквы “t”, далее произвольный набор символов, далее буква “d” и затем один любой символ.

8. Метасимволы командной строки Linux. Назначение метасимволов, их применение. Средства перенаправления. Программные каналы. Примеры. Ответ: Иногда при работе с командным интерпретатором требуется найти или сопоставить файлы по шаблону. В командном интерпретаторе используется ряд специальных символов, называемых групповыми символами, с помощью которых файлы можно искать, сопоставлять, а также создавать список имен файлов. Этими символами являются звездочка, вопросительный знак и квадратные скобки (*, ?, []). Получив частичное имя файла, командный интерпретатор использует эти символы как образец для поиска и формирования cписка имен обнаруженных файлов. Параметр с неполным именем файла заменяется списком совпавших с ним имен файлов.

Общие символы

Назначение

;

Разделение команд в одной командной строке

'команда'

Выполнение команды

[ ]

Сравнение с классом возможных символов в именах файлов

\

Обозначение следующего символа как специального. Используется для обозначения

 

управляющих символов

|

Передача по каналу стандартного вывода одной команды в качестве ввода для другой

 

команды

&

Выполнение команды в фоновом режиме

!

Команда работы с перечнем ранее введенных команд

Групповые символы

Результат применения

*

Устанавливает соответствие с любым набором символов в именах файлов

?

Устанавливает соответствие с любым отдельным символом в именах файлов

Символы перенаправления

Результат применения

>

Перенаправляет стандартный вывод в файл или на устройство. При этом, если файл не

 

существует, он создается, если же файл существует, он перезаписывается

>!

Восклицательный знак приводит к перезаписи файла, если он существует. Этот символ

 

отменяет действие опции, которая запрещает перезапись существующих файлов

<

Перенаправляет стандартный ввод из файла или устройства в программу

> >

Перенаправляет стандартный вывод в файл или на устройство, добавляя выводимые данные к

 

концу файла

Символы перенаправления

Результат применения стандартного вывода сообщений об ошибках

2>

Перенаправляет стандартный вывод сообщений об ошибках в файл или на устройство

2>>

Перенаправляет и добавляет стандартный вывод сообщений об ошибках в файл или на

 

устройство

2>&1

Перенаправляет стандартный вывод сообщений об ошибках на стандартный ввод

>&

Перенаправляет стандартный вывод сообщений об ошибках в файл или на устройство

|&

Перенаправляет по каналу стандартный вывод сообщений об ошибках на вход другой

 

команды

Примеры использования программных каналов и средств перенаправления.

ls –al ./ | tee –a testfile – информация обо всех файлах (включая скрытые) передается по программному каналу и сохраняется в testfile командой tee

cat testfile > testfile2 – эта информация перенаправляется в новый файл. При этом, если файл не существует, он создается, если же файл существует, он перезаписывается.

9. Использование фильтров Linux. Назначение фильтров, использование совместно с другими командами ОС.Ответ: Фильтры — это команды (или программы), которые воспринимают входной поток данных, производят над ним некоторые преобразования и выдают результат на стандартный вывод (откуда его можно перенаправить куда-то еще по желанию пользователя). К числу команд-фильтров относятся команды cat, tee, wc, cmp, diff, grep, egrep, fgrep.

Команда - фильтр

Краткое описание

cat

Команда создания текстового файла. Команда cat не имеет

 

собственного интерфейса, поэтому после ввода команды cat с

 

символом перенаправления (см. ниже) и именем нового файла

 

можно сразу же писать текстовую информацию.

wc

Производит подсчет количества строк; количества слов;

 

количества символов в этих файлах.

cmp

Команда cmp используется для сравнения файлов на предмет

 

выявления отличий между ними. Команда печатает результаты,

 

если только различия найдены. Команда проводит побайтовое

 

сравнение. Если байты в файлах различаются, выводится номер

 

байта и номер строки с первым различием.

diff

Команда diff находит отличие между двумя файлами. Результат

 

выполнение этой команды – вывод всех строк, где имеются

 

различия между двумя текстовыми файлами с рекомендациями,

 

как отредактировать один файл, чтоб он был похож на другой.

grep, egrep, fgrep

Ищут во входном файле или данных со стандартного ввода

 

строки, содержащие указанный шаблон, и выдают их на

 

стандартный вывод.

Примеры использования совместно с другими командами.

ps –ef | grep “^user” – отображение процессов, запущенных пользователем. ls -l | tee -a file – сохранение текстовой информации из консоли в файл.

10. Использование программных каналов. Понятия стандартного ввода и стандартного вывода. Ответ:

Когда программа запускается на выполнение, в ее распоряжение предоставляются три потока (или канала):

1.стандартный ввод (standard input или stdin). По этому каналу данные передаются программе;

2.стандартный вывод (standard output или stdout). По этому каналу программа выводит результаты своей работы;

3.стандартный поток сообщений об ошибках (standard error или stderr). По этому каналу программы выдают информацию об

ошибках.

Из стандартного входа программа может только читать, а два других потока могут использоваться программой только для записи. По умолчанию входной поток связан с клавиатурой, а выходной поток и поток сообщений об ошибках направлены на терминал пользователя. Другими словами, вся выходная информация запущенной пользователем команды или программы, а также все сообщения об ошибках, выводятся в окно терминала. Однако, можно перенаправить выходные сообщения (например, в файл). Работу со стандартными входным и выходным потоками лучше всего проиллюстрировать на примере команд echo и cat.

Команда echo предназначена для выдачи на стандартный вывод строки символов, которая задана ей в качестве аргумента. После этого она выдает сигнал перевода строки и завершается. Команда cat по умолчанию воспринимает входной поток. Если запустить команду без аргументов, то курсор переместится в новую строку, и более как будто ничего не будет происходить. В это время команда ожидает поступления символов во входном потоке. Введите любой символ, и вы увидите, что он сразу же появился на экране, что говорит о том, что программа сразу же направила его в выходной поток. Если команде cat в качестве аргумента задать имя файла, это будет означать, что содержимое файла будет направлено во входной поток, откуда его примет команда cat и выдаст в выходной поток.

Особым вариантом перенаправления вывода является организация программного канала (иногда называет трубопроводом или конвейером). Для этого две или несколько команд, таких, что вывод предыдущей служит вводом для следующей, соединяются (или разделяются, если вам это больше нравится) символом вертикальной черты — "|". При этом стандартный выходной поток команды, расположенной слева от символа |, направляется на стандартный ввод программы, расположенной справа от символа |. Например: cat myfile | grep Linux | wc -l

Эта строка означает, что вывод команды cat, т. е. текст из файла myfile, будет направлен на вход команды grep, которая выделит только строки, содержащие слово "Linux". Вывод команды grep будет, в свою очередь, направлен на вход команды wc -l, которая подсчитает число таких строк.

Программные каналы используются для того, чтобы скомбинировать несколько маленьких программ, каждая из которых выполняет только определенные преобразования над своим входным потоком, для создания обобщенной команды, результатом которой будет какое-то более сложное преобразование.

11. Фоновый и интерактивный режимы. Команды остановки и перевода заданий между режимами. Ответ: Запуск приложений из под консоли терминала можно производить в интерактивном и фоновом режимах. При запуске нового приложения (программы) ставиться новая задача, задача провоцирует запуск одного или нескольких процессов в оперативной памяти компьютера. Задача – это приложение, которое можно запустить и которой можно управлять в операционной системе. Процесс – это программа, которая возникает в оперативной памяти компьютера при постановке задачи.

При запуске исполняемого приложения bigtask в интерактивном режиме, пользователю в командном приглашении надо просто ввести название команды и нажать Enter. При этом в данном командном приглашении Linux уже больше ничего ввести не удастся, пока не выполнится предыдущее приложение. Если же требуется выполнить с одной командной строки несколько приложений, то предыдущее приложение нужно перевести в фоновый режим либо изначально запускать задачу в фоновом режиме. Для того чтобы выполнить задачу в фоновом режиме, необходимо в конце ее поставить амперсанд (&). При вводе такой команды в фоновом режиме система выдает на экран номер задания пользователя и системный номер процесса. При этом система указывает в квадратных скобках номер задания, по которому пользователь может следить за ним и им управлять.

Пример: Мы запускаем два приложения gedit в фоновом режиме, а затем переводим первое приложение в интерактивный режим. gedit &

gedit &

fg номер задачи, соответствующий первому приложению

Сигналы. Управление процессами осуществляется при помощи сигналов. Сигнал – сообщение, несущее определенный номер. Linux использует сигналы для сообщения о прерываниях, сгенерированных пользователем, а также о неправильных системных вызовах, нарушенных конвейерах, неверных инструкциях и других условиях. Сигналы позволяют воздействовать на процессы, выполняющиеся в системе, он посылает процессу информацию о том, что произошло новое событие, на которое процесс должен прореагировать. Например, при нажатии комбинации клавиш Control-C процессу отправляется стоп-сигнал, по которому он должен завершить свою работу. Процесс считывает номер сигнала и в зависимости от номера реагирует определенным образом.

Тип

Имя

Номер

Генерирующее условие

 

 

 

 

Отсутствие сигнала

 

0

Выход по команде exit или при достижении конца программы.

 

 

 

 

Разрыв

SIGHUP

1

Разрыв линии.

 

 

 

 

Прерывание терминала

SIGIN

2

Нажатие клавиши прерывания (например, Ctrl-C).

 

 

 

 

Прекращение

SIGQUIT

3

Нажатие клавиши прекращения (обычно, Ctrl-Shift-\ или Ctrl-Shift-|).

 

 

 

 

Уничтожение

SIGKILL

9

Самый сильный сигнал для процесса. Применять в крайнем случае.

 

 

 

 

Завершение программы

SIGTERM

15

Сигнал воздействия на процесс по умолчанию.

 

 

 

 

Стоп

SIGTSTP

20

Нажатие клавиши приостановки (обычно Ctrl-Z).

 

 

 

 

Снятие процессов осуществляется с помощью команды kill совместно с использованием номера сигнала. При этом обычно с kill используются два основных сигнала: 15 (используется по умолчанию) и 9 (уничтожением процесса).

12. Типы данных Linux. Отображение информации по команде ls. Понятие относительного и абсолютного путей. Ответ:

Типы данных в ОС Linux:

-файл (поименованная область на диске);

-директория;

-ссылка;

-файл физического устройства (блоковый и символьный).

Краткую или расширенную информацию о наличии файла или директории можно получить по команде ls. Рассмотрим полную информацию о файле по расширенному выводу команды ls с опцией –l слева направо. Самой левой информацией является набор прав доступа на объект, далее через пробел указывается сколько раз встречаются в системе ссылки на этот объект, затем указывается владелец данного объекта, потом через пробел отображается группа пользователей, которые могут пользоваться этим объектом, далее идет размер файла, затем дата создания или последней модификации объекта, и, наконец, в конце указывается название объекта. При сокращенном выводе данных по команде ls указывается имя объекта.

Понятие относительного и абсолютного путей. Пользователю нужно получить доступ к файлу test. Сам он находится в данный момент в папке workfiles. Абсолютный путь всегда начинается с корневого раздела, тогда доступ к файлу test, например, будет выглядеть так: /home/Tom/workfiles/laba1/test. Относительный путь – путь к объекту, относительно текущего местоположения, например, если текущим местоположение является каталог workfiles, то доступ: /laba1/test.

13. Файловые структура и система Linux. Основные категории Linux. Операции с файлами и каталогами. Права доступа к файлам и каталогам. Ответ:

При установке Linux на выбранном вами разделе жесткого диска создается корневая файловая система Linux. Корневая файловая система содержит набор стандартных каталогов и утилит, без которых невозможна работа Linux. Корневая файловая система обозначается как /.

/bin Содержит стандартные утилиты Linux

/home Содержит домашние каталоги пользователей. В домашних каталогах пользователей хранятся пользовательские файлы, а также пользовательские настройки различных программ

/root Каталог пользователя root (пользователь с максимальными полномочиями)

/sbin Набор утилит для системного администрирования, запускать эти утилиты имеет право только root

Абсолютный путь всегда начинает с корневого раздела, например, доступ к файлу 1: /home/pasha/1

Относительный путь – путь к объекту, относительно текущего местоположения, например, если текущим местоположение является каталог pasha, то: 1

Операции с файлами:

 

cat имя _ файла

 

Просмотр текстового файла

 

 

 

 

 

cp источник назначение

 

Копирует файл источник в файл назначение. Если файл назначение существует, то программа

 

 

 

спросит вас, нужно ли его перезаписать или нет

 

touch имя _ файла

 

Создает пустой файл

 

mv источник назначение

 

Перемещает файл источник в файл назначение. Если файл назначение существует, то

 

 

 

программа спросит вас, нужно ли его перезаписать или нет. Данную команду можно

 

 

 

использовать также для переименования файла

 

rm файл

 

Удаляет файл

Операции с каталогами:

 

 

 

cd каталог

Изменение каталога

 

mkdir каталог

Создание каталога

 

rm -r каталог

Рекурсивное удаление непустого каталога (будут удалены все подкаталоги заданного каталога и сам

 

 

каталог)

 

ls каталог

Вывод содержимого каталога

 

 

 

 

~ — домашний каталог пользователя;

. — текущий каталог;

.. — родительский каталог Права доступа:

1-ый уровень безопасности – регистрация. 2-ой уровень безопасности - доступ пользователя к данным (объектам Linux – файлам и каталогам) ОС.

Ограничение доступа к данным разделяется на: ограничение на чтение (reed, символ “r”), ограничение на запись (write, символ “w”) и ограничение на выполнение файла (execution, символ “x”). Комбинация прав доступа на объект указывается в следующей последовательности: r w x . Если хотя бы одно из прав у пользователя отсутствует, то на месте этого символа ставится прочерк: -.

Все пользователи в системе по уровню доступа к данным в Linux разделяются на три категории: владелец объекта (user), пользователи, входящий в группу, которой разрешен доступ к файлу (group) и другой сторонний пользователь (other), которые не имеют отношения к объекту Linux. Изменение прав доступа осуществляется с помощью команды chmod.

Восьмеричный вид

Двоичный вид

Символьный вид

Права доступа, разрешено

0

000

---

Нет никаких прав

1

001

--x

Только выполнение

2

010

-w-

Только запись

3

011

-wx

Только запись и выполнение

4

100

r--

Только чтение

5

101

r-x

Только чтение и выполнение

6

110

rw-

Только чтение и запись

7

111

rwx

Полные права

Директория – 777 максимальные права, а у файла – 666.

Umask 022 (т.е. 777-022 = 755 для директории и 666-022 для файла)

14. Настройка и управление командными интерпретаторами. Назначение специальных переменных и их установка. Псевдонимы. Ответ:

Командный интерпретатор представляет собой строковый интерактивный интерфейс с приглашением командной строки между пользователем и операционной системой. Пользователь вводит в командной строке команды, командный интерпретатор “принимает” их и посылает в виде инструкций в операционную систему для исполнения. Командный интерпретатор позволяет не только вводить команды, но и перенаправлять ввод и вывод данных командной строки, а также выполнять операции в фоновом режиме, давая пользователю возможность заниматься в это время другими задачами.

Для Linux было разработано множество командных интерпретаторов: Bourne Again shell (BASH), Public Domain shell (PDKSH), интерпретатор TCSH и Z-shell.

Командная строка. Интерфейс командной строки Linux состоит из одной строки, в которой вводятся команды с опциями и параметрами. Основным интерфейсом командного интерпретатора является интерфейс командной строки, который интерпретирует введенные команды и посылает их в систему. Команды, введенные в командной строке, должны соответствовать определенным синтаксическим правилам. Опция — это предваряемый дефисом одноили многобуквенный код, который модифицирует тип действия, выполняемого командой. Например, при вводе команды ls с опцией -l команда ls выдает построчный вывод информации для каждого файла, а именно его размер, дату и время последнего изменения.

Опция -а позволяет вывести на экран все файлы текущего каталога, включая так называемые скрытые файлы. Скрытыми часто бывают файлы конфигурации. Имена скрытых файлов всегда начинаются с точки, поэтому их часто называют точенными файлами. Параметр — это слово, которое вводится в командной строке после опций. В командах управления файлами в качестве параметров обычно используются имена файлов. Например, если вам нужна информация только об одном файле gauss.plx, укажите его имя после опции – l.

Назначением командным интерпретатора является работа с файлами: создание, копирование, переименование, перемещение, удаление и модификация данных.

Одной из наиболее простых команд создания текстового файла является команда cat.

Команда cat не имеет собственного интерфейса, поэтому после ввода команды cat с символом перенаправления (см. ниже) и именем нового файла можно сразу же писать текстовую информацию, переходя от строки к строке с помощью клавиши Enter. Выход из редактора (фильтра) cat осуществляется комбинацией клавиш Ctrl-D. Ниже приведен пример создания файла с помощью команды cat. $ cat > new_file

Просмотр полученного файла осуществляется с помощью команды cat и через пробел название файла. $ cat new_file

Или, например, сохраняя текстовую информацию из консоли при работе команды ls с опцией –a в файл r, можно воспользоваться функцией перенаправления данных (см. ниже) и командой tee с опцией -a.

$ ls -l | tee -a r

Общие символыНазначение ; Разделение команд в одной командной строке

'команда'Выполнение команды [ ] Сравнение с классом возможных символов в именах файлов

\Обозначение следующего символа как специального. Используется для обозначения управляющих символов |Передача по каналу стандартного вывода одной команды в качестве ввода для другой команды &Выполнение команды в фоновом режиме !Команда работы с перечнем ранее введенных команд Групповые символы Результат применения

*Устанавливает соответствие с любым набором символов в именах файлов ?Устанавливает соответствие с любым отдельным символом в именах файлов Символы перенаправления Результат применения

>Перенаправляет стандартный вывод в файл или на устройство. При этом, если файл не существует, он создается, если же файл существует, он перезаписывается >!Восклицательный знак приводит к перезаписи файла, если он существует. Этот символ отменяет действие опции, которая запрещает перезапись существующих файлов

<Перенаправляет стандартный ввод из файла или устройства в программу > >Перенаправляет стандартный вывод в файл или на устройство, добавляя выводимые данные к концу файла

Псевдонимы, (или - как их в народе называют - алиасы) есть ни что иное, как альтернативные, легко запоминающиеся имена для тех длинных команд, которые вы часто используете. Когда вы что-нибудь набираете в командной строке, командный процессор сначала ищет то, что вы написали, в его собственном списке псевдонимов. И если при этом он обнаруживает соответствие, то заменяет псевдоним заданным текстом. Только после этого командный процессор проверяет получившуюся строку еще раз и выполняет ее.

Определить псевдонимы для команд можно в командной строке, во время сеанса работы с оболочкой. Но они будут работать только во время текущего сеанса, поэтому более эффективным будет, если вы сделаете их постоянными, определив во внутрисистемном или персональном файле конфигурации оболочки (/etc/bashrc или $HOME/.bashrc). Для того, чтобы узнать, какие псевдонимы уже определены в вашей системе, просто наберите alias в командной строке.

15. Назначение и примеры применения комнады find. Выражения и действия. Ответ:

Команда find. Для поиска файлов в дереве каталогов применяется команда find. Основным ее преимуществом является то, что она дает возможность искать файлы по заданным критериям, каких так имя файла; дата создания или последней модификации; размер; тип; поиск файлов, к которым производился доступ в разное время; поиск файлов, которые имеют соответствующие права. Формат команды: find путь выражение(я) действие(я) . Путь – последовательность переходов к объекту из одной папки в другую (может использоваться абсолютный и относительный пути). Под выражением понимается параметр, который должен использоваться совместно с впередистоящим тире (-). Действие – операция, которая должна быть выполнена с объектом поиска, также используется совместно с тире (-).

Выражение

Описание

-name имя_файла

Поиск файлов по имени. Могут использоваться метасимволы в “”.

-size [+|-]n

Поиск объектов, размер которых меньше чем –n и больше чем +n или равны n. n задается в 512-байтных

 

блоках.

-atime [+|-]n

Поиск файлов, к которым производился доступ более чем +n дней назад, менее чем –n дней назад или n

 

дней.

-mtime [+|-]n

Поиск файлов, которые были изменены более чем +n дней назад, менее чем –n дней или ровно n дней.

-user loginID

Поиск файлов, которые принадлежат пользователю loginID

-type

Поиск по типу объекта, например: f(файл) или d(директория).

-perm

Поиск файлов, которые имеют соответствующие права доступа.

Действие

Описание

-exec команда {} \;

Автоматическое выполнение указанной команды на каждый найденный файл. Перед знаком обратной

 

черты обязательно должен быть указан пробел.

-ok команда {} \;

Ручное выполнение указанной команды (интерактивная форма) на каждый найденный файл. Перед

 

знаком обратной черты обязательно должен быть указан пробел.

-print

Дает команду выводить каждый найденный файл на экран. Команда по умолчанию.

-ls

Выводит расширенную информацию о найденном файле: inode, размер в килобайтах, права доступа,

 

количество жестких ссылок и информацию о владельце.

find /etc –name ‘l*’ –size -2 –atime -10

16. Назначение и синтаксис команд grep, egrep, fgrep. Опции и параметры. Приведите примеры. Команда wc. Ответ:

Команда grep. Формат команды: grep параметр(ы) шаблон имя_файла(ов). Команда grep применяется для поиска и отображения данных в указанном ей файле. Команда grep осуществляет поиск в содержимом одного или нескольких файлов на предмет сравнения с регулярным выражением или символьным шаблоном. Команда может также использоваться совместно с программным каналом при перенаправлении потока стандартного вывода другой команды на себя. Например, использование этой команды совместно с программным каналом и команды отображения перечня процессов ps (process status) позволяет очень эффективно производить поиск нужных процессов для управления ими, а использование grep совместно с ls помогает в поиске нужных файлов в системе.

Параметр

Описание

-i

Задает режим игнорирования регистра, символы верхнего и нижнего регистра считаются идентичными.

-l

Перечисляет только имена файлов, которые содержат найденные строки.

-n

Задает простановку относительного номера к каждой строке в файле.

-v

Меняет условие поиска на обратные для выдачи только тех строк, которые не соответствуют шаблону.

-c

Задает вывод только количества строк, которые содержат шаблон.

-w

Задает поиск выражения как слова.

Команда egrep. Команда egrep осуществляет поиск в содержимом одного или нескольких файлов заданного шаблона с использованием расширенного набора метасимволов в регулярных выражениях. Формат команды: egrep –параметры шаблон имя_файла .

Команда fgrep. Другой командой, которую мы рассмотрим, явилась команда поиска fgrep. Команда fgrep осуществляет поиск в файле ключевого выражения как фиксированной строки. Ее работа отличается от работы grep и egrep, т.к. она обрабатывает все символы и любые метасимволы регулярных выражений, указанные в командной строке как обычные символы, за исключением знака вопроса (?) и знака доллара ($). Команду grep можно использовать для поиска словосочетаний в файлах, содержащих метасимволы. Формат команды такой же, как у grep и egrep: fgrep –параметр(ы) шаблон имя_файла(ов) .

Примеры: grep ‘S$’ f4>>f5 Ps –aux –f| egrep ‘root|Jul24’ fgrep ‘*’ /etc/group

wc – определяет и записывает кол-во строк, слов и символов.

17. Назначение и синтаксис команды sort. Опции и параметры. Приведите примеры. Ответ:

Команда sort . Данная команда предназначена для сортировки текстовых строк в одном или более файлах и вывода результатов на экран. По умолчанию sort использует символы пробела и табуляции для разделения различных полей в данных файла. Формат команды: sort (- /+)параметр имя_файла(ов) .

Параметр

Описание

-n

Производит числовую сортировку

(+|-)n

Начинает (+n) или заканчивает (-n) сортировку поля, следующего за полем n.

-r

Меняет порядок сортировки

-f

Игнорирует регистр символов

-d

Используется словарная сортировка. Сравниваются только буквы, цифры и пробелы, все

 

остальные символы игнорируются.

-o имя_файла

Сохранение результатов в файл имя_файла

-b

Игнорирует начальные пробелы при определении начальной и конечной позиции ограниченного

 

ключа сортировки.

-t символ

Использует «символ» как разделитель полей. Если параметр –t не указан, то по умолчанию в

 

качестве разделителей полей используются символы пробела и табуляции.

С помощью команды sort выполним числовую сортировку файла gauss2.plx. Для числовой сортировки требуется использовать параметр –n. По умолчанию сортировка выполняется по первому полю. sort –n gauss2.plx

18. Системные процессы. Команды и поля данных. Ответ:

Задача – это приложение, которое можно запустить и которой можно управлять в операционной системе. Процесс – это программа, которая возникает в оперативной памяти компьютера при постановке задачи. Каждому процессу назначается уникальный идентификационный номер (PID – process identification data). Когда запускается процесс, сначала создается его дубликат. При этом новый процесс называется дочерним, а процесс, который его породил – родительским. Для того чтобы выполнить задачу в фоновом режиме, необходимо в конце ее поставить амперсанд (&).

Команда ps. Просмотр процессов осуществляется командой ps (process status), которые выполняются в текущий момент. Параметры команды ps

Параметр

Описание

-aux

Отображение полного перечня процессов в системе.

-e

Выводится информация о каждом процессе в системе: PID, TTY, TIME, CMD.

-f

Выдается подробный вывод. Наряду с данными по опции –e также выводится информация UID (владелец

 

процесса), PPID (ID родительского процесса) и STIME (время запуска процесса).

Описание полей данных при использовании команды ps

Столбец

 

Описание

UID

 

Имя владельца процесса

PID

 

Уникальный идентификатор процесса

PPID

 

Уникальный идентификатор родительского процесса

C

 

Использование процессорного времени. Используется при выводе данных по команде top .

STIME

 

Время запуска процесса (МесяцДень)

TTY

 

Терминал, который использовался при запуске процесса (у)

TIME

 

Суммарное время работы процесса.

CMD

 

Имя команды, которая породила процесс

Команда top. Для просмотра существующих процессов также предусмотрена команда top в Linux. В отличие от ps она имеет свою интерактивную среду и в реальном времени изменяет информацию о ходе выполнения процесса. Команда vmstat. Данная команда предназначена для получения информации пользователем об эффективности использования различных компонентов системы. Например, памяти, центрального процессора, устройств ввода-вывода, и выполнения операций подкачки. Команда pgrep. Данная команда является более эффективным способом поиска процесса по имени. Команда pgrep отображает PID процесса, который соответствует шаблону поиска в командной строке. Команды kill и pkill. Снятие процессов осуществляется с помощью команды kill совместно с использованием номера сигнала. При этом обычно с kill используются два основных сигнала: 15 (используется по умолчанию) и 9 (уничтожением процесса).

19. Сигналы, номенклатура сигналов. Команды управления процессами kill, pkill, pgrep. Ответ:

Задача – это приложение, которое можно запустить и которой можно управлять в операционной системе. Процесс – это программа, которая возникает в оперативной памяти компьютера при постановке задачи.

Команда pgrep. Данная команда является более эффективным способом поиска процесса по имени. Команда pgrep отображает PID процесса, который соответствует шаблону поиска в командной строке.

Параметр

Описание

 

 

 

 

-x

Выводятся PID, полностью совпадающие с шаблоном.

 

-n

Выводятся только более новые PID, чем тот, что соответствует

 

шаблону. Выводится ID процесса, соответствующего шаблону.

-U

Отображаются

PID,

которые

принадлежат

заданному

 

пользователю. Требуется задать только имя пользователя.

-l

Наряду с PID процесса выводится его имя.

 

Управление процессами осуществляется при помощи сигналов. Сигнал – сообщение, несущее определенный номер. Linux использует сигналы для сообщения о прерываниях, сгенерированных пользователем, а также о неправильных системных вызовах, нарушенных конвейерах, неверных инструкциях и других условиях. Сигналы позволяют воздействовать на процессы, выполняющиеся в системе, он посылает процессу информацию о том, что произошло новое событие, на которое процесс должен прореагировать.

Тип

Имя

Номер

Генерирующее условие

Отсутствие сигнала

 

0

Выход по команде exit или при достижении конца программы.

Разрыв

SIGHUP

1

Разрыв линии.

Прерывание терминала

SIGIN

2

Нажатие клавиши прерывания (например, Ctrl-C).

Прекращение

SIGQUIT

3

Нажатие клавиши прекращения (обычно, Ctrl-Shift-\ или Ctrl-Shift-|).

Уничтожение

SIGKILL

9

Самый сильный сигнал для процесса. Применять в крайнем случае.

Завершение программы

SIGTERM

15

Сигнал воздействия на процесс по умолчанию.

Стоп

SIGTSTP

20

Нажатие клавиши приостановки (обычно Ctrl-Z).

Снятие процессов осуществляется с помощью команды kill совместно с использованием номера сигнала. При этом обычно с kill используются два основных сигнала: 15 (используется по умолчанию) и 9 (уничтожением процесса). Сигнал 9, действую на процесс, приводит к незамедлительному завершению последнего. Можно завершить работу процесса по его названию с помощью команды pkill. pkill имя_процесса

20.Понятие “архивирование” и “сжатие”. Приведите примеры использования программ архивирования и сжатия. Ответ:

ВLinux операции по сохранению и резервированию данных разделены на архивирование и сжатие. Архивирование данных – это процесс создания одного пакета, куда включены множество фалов, при этом размер общего пакета практически равен сумме размеров всех входящих в него файлов. Сжатие данных – процесс упаковки файлов или каталогов, направленный на уменьшение имеющегося их размера. Обычно при резервировании данных сначала их архивируют, а затем сжимают. Хотя возможны и другие варианты.

За архивацию\разархивацию отвечают такие команды как:

tar(сбор всех файлов, входящих в состав нового пакета) => tar функция(и) файл_архива имя_файла(ов) zip(позволяет упаковывать сразу несколько файлов в один архив) => zip имя архива архивируемый(ые) файл(ы) jar(jar одновременно и архивирует и сжимает файлы) => jar параметры файл_архива имя_файла(ов) / каталога(ов) За сжатие\расжатие отвечают такие команды как:

compress => compress опция имя_файла

zcat(просмотреть сжатые файлы compress) => zcat имя_файла

gzcat(просмотреть содержимое файлов, сжатых gzip и compress) => gzcat имя_файла gzip(главное отличие от compress – большое количество входных файлов) => gunzip имя_файла gunzip(распакует то, что создал gzip) => gunzip имя_файла

21.Назначение команды tar. Tar-архивы. Определите основные опции команды tar. Приведите примеры использования данной команды при архивировании директорий, добавлении файлов в архив и разархивировании. Ответ:

Смысл ее работы заключается в сборе всех файлов, входящих в состав нового пакета. Кроме того, он также раскрывает созданные им ранее пакеты для получения исходных файлов. Команда tar помещает файлы в один архив – так называемый tar-файл. Формат команды: tar функция(и) файл_архива имя_файла(ов) .

Функции

 

Определение

 

Функции

Определение

 

 

 

 

c

Создание нового tar-файла. Запись начинается

e

При первой ошибке происходит немедленный выход.

 

с начала файла.

 

 

 

 

 

 

 

 

 

 

t

Просмотр

содержимого

tar-файла.

h

Указание интерпретировать символические таким же

 

Разархивирования не происходит.

 

 

образом, как обычные файлы и каталоги.

 

 

 

 

x

Извлечение заданных файлов из tar-архива.

m

Используется при извлечении файлов из архива.

 

 

 

 

f

Используется для архивации в файл или из

o

При извлечении файлов из архива владельцем становится тот,

 

файла.

 

 

 

кто выполнил команду tar .

 

 

 

 

v

Выводятся комментарии (verbose mode).

w

Позволяет задать текст приглашения.

 

 

 

 

r

Заданные файлы дописываются в конец

u

Производится обновление архива. Если заданных файлов в

 

ленточного архива.

 

 

архиве нет, или в архиве уже хранятся их обновленные

 

 

 

 

 

версии, то они дописываются в конец архива.

 

 

 

 

 

 

Примеры: tar –cf имя_архива имя_директории (1), tar –rf имя_архива имя_добавочных_файлов (2), tar –xf имя_архива

22. Покажите назначение команды jar. В чем заключается ее сходство, а в чем различии с командой tar. Приведите примеры. Назначение команды cpio. Приведите примеры использования команды cpio. Ответ:

Команда jar применяется в тех же случаях, что и tar. Ее специфика в том, что jar одновременно и архивирует и сжимает заданные файлы. Несколько файлов копируются и упаковываются в один архивный файл.

Формат команды: jar параметры файл_архива имя_файла(ов) / каталога(ов). Пример: jar cvf имя_архива * (все файлы поместит в архив)

Параметр

Описание

c

Создание нового jar-файла.

t

Вывод содержимого jar-файла.

x

Извлечение заданных файлов из jar-архива.

f

Позволяет назначать целевой файл.

v

Режим комментарий.

Команда cpio (copy in / out). Команда cpio позволяет архивировать данные в отдельный файл или на ленту, а также извлекать указанные файлы из архива. При этом данные упаковываются на ленту эффективнее, чем с помощью tar. При восстановлении данных с ленты пропускаются все сбойные участки. Хорошая переносимость между различными системами. С помощью jar можно создавать многотомные архивы, при архивации файлов jar время доступа к ним не меняется. Формат команды: cpio параметр(ы) имя_файла(ов) .

Параметр

Определение

-o

Создание архива. Файлы и пути к ним копируются на ленту или в файл (copy in).

-c

Чтение или запись заголовочной информации в формате ASCII

-t

Чтение содержания файлов.

-v

Выдает данные в формате, напоминающем работу команды ls -l

-a

После копирования время доступа к ним изменяется.

-M текст

Позволяет задать текст, что достигнут конец ленты.

-O имя_файла

Результат работы cpio направляется в файл.

-I имя_файла

Данные считываются с указанного файла.

-i

Извлечение файлового архива с ленты или из файла (copy out).

-p

Считывание со стандартного ввода списка путей к файлам.

Пример: find имя_директории –выражения | cpio –ocv -O имя_файла (включит в результаты работы команды find файлы в файл)

23. Shell-сценарии. Способы написания файлов сценария. Правила написания скрипта. Ввод, вывод данных. Назначение и использование переменных. Экспорт переменных. Арифметические действия. Назначение и использования циклических операндов. Приведите примеры. Ответ:

Создания сценариев представляет собой последовательный набор команд, операторов командного интерпретатора и некоторых других символов в текстовом файле. Файлы-сценария также называют скриптами, а командные интерпретаторы латинским названием SHELL.

Написание любого скрипта начинается с принадлежности его к одному из командных интерпретаторов. В первой строке скрипта обычно пишут последовательность #! , которая указывает системе, какой интерпретатор должен выполнить команды из данного сценария. Если первый символ пробел, считается, что сценарий написан для BASH или PDKSH. Если сценарий начинается только с символа # , то для его выполнения необходим TC Shell. Если же за символом # следует символ !, ядро запустит интерпретатор, путь которого указан далее в этой строке. Например, для BASH будет следующая запись: #!/bin/sh . Пробела или одиночного символа # в начале сценария достаточно для интерпретаторов BASH Shell и TC Shell только при условии, что они будут считывать свой сценарий.

Чтобы один интерпретатор распознал сценарии другого, необходимо включать в сценарий символы #! , после чего указывается путь интерпретирующей программы. Тогда при вызове сценария будет прекращена работа текущего интерпретатора, вместо него будет загружен сценарий другого типа, а затем выполнен сценарий. Рекомендуется всегда начинать все сценарии с последовательности #! . Также строки, начинающиеся с символа # можно использовать для комментариев действий пользователя в скрипте.

Запуск скрипта => bash script.sh или ./script.sh, либо sh script.sh.

Для ввода и вывода данных мы используем команды echo и read. => read a, ввод переменной a, echo $a – вывод переменной a

Как и языках программирования, в shell Вы также можете использовать переменные, присваивать значения переменным можно через оператор присваивания равно «=». Сначала вводится имя переменной, потом без пробела знак «=», затем без пробела значение переменной. => word=”LOL” или number=5

На значение переменной можно ссылаться посредством ее имени, которое предваряется оператором $. Знак доллара — это специальный оператор, который использует имя переменной для ссылки на ее значение, то есть фактически для ее вычисления.

Аргументы командной строки. В сценарии, как и в командах Linux, можно использовать аргументы. Аргумент в сценарии обозначается оператором $ с указанием номера позиции в командной строке. Нумерация параметров начинается с единицы, а заканчивается девятью.

Переменная export. Иногда для разных файлов-сценария требуется воспользоваться определенной переменной, которая уже была определена. Переменные, которые вы определяете в интерпретаторе shell, являются локальными для него. В некотором смысле такая переменная принадлежит своему интерпретатору. Непосредственно определить переменную для другого интерпретатора нельзя, однако можно экспортировать определение переменной из одного интерпретатора в другой с помощью команды export. Команда export содержит инструкцию для системы, в соответствии с которой для каждого вновь образованного shell будет определяться копия этой переменной. Каждый новый интерпретатор shell будет иметь собственную копию экспортированной переменной. Арифметические операции – команда let. Команда let — это команда интерпретатора BASH shell, обеспечивающая выполнение операций над арифметическими величинами. Формат команды: let значение1 оператор значение2.

саsе строка in

if команда Linux then

while команда Linux

for переменная in перечень значений

for значения

шаблон) команды ;;

команды else

do

do

do

шаблон) команды ;;

команды fi

команда(ы)

команды

команды

esac

 

done

done

done

 

 

 

 

 

Соседние файлы в папке KTNI_Kozlov_otvety