Операционная система UNIX. Руководство пользователя

         

Что делают команды


Внешний круг системы UNIX образуют программы и инструментальные средства системы, разделенные на категории функционально. Эти функции включают:

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



Файловая система


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

Файл, который является основной единицей системы UNIX, может быть: обыкновенным файлом, справочником, специальным файлом или символическим каналом связи.



Ядро


Ядро контролирует доступ к компьютеру, управляет памятью компьютера, обслуживает файловую систему и распределяет ресурсы компьютера среди пользователей. На рис. 1 приведено функциональное представление ядра.

Ядро

\ Распределение / \ ресурсов / \ системы / \ / Управление \ / Обслуживание памятью \/ файловой / \ системы / \ / Контроль \ / доступа \ / к компьютеру \

Рис. 1



Как выполнять команды


Чтобы ваш запрос был понятен системе UNIX вы должны ввести каждую команду в корректном формате или синтаксисе командной строки. Этот синтаксис определяет порядок, в котором вы вводите компоненты командной строки. И вы должны расположить все составные части командной строки в требуемом синтаксисом порядке, иначе shell не сможет интерпретировать ваш запрос.

Пример синтаксиса командной строки:

command option(s) argument(s) <CR>

Для каждой командной строки системы UNIX вы должны ввести как минимум два компонента: имя команды и клавишу <RETURN>. (Обозначение <CR> используется в документации как инструкция для нажатия клавиши RETURN). Командная строка может также содержать ключи и аргументы. В указанном примере синтаксиса командной строки:
command - это имя программы, которую вы хотите выполнить;
option - ключи, которые указывают как запустить команду;
argument - указывает на данные, которые эта команда обрабатывает, обычно это имя каталога или файла.

В командной строке, которая включает ключи и/или аргументы, каждый компонент отделяется друг от друга по крайней мере одним пробелом. Если аргумент содержит пробел, его надо заключить в двойные кавычки. Например, если аргумент sample 1, то вы должны указать его в командной строке как "sample 1". Если вы позабудете поставить двойные кавычки, то shell будет интерпретировать sample и 1 как два отдельных аргумента.

Некоторые команды позволяют вам указывать несколько и/или аргументов в одной командной строке. Например:

Пример. ls -l -i file1 file2 file3 команда ключи аргументы

В этом примере команда ls использует два ключа -l и -i и три аргумента file1, file2 и file3. Ключ -l обеспечивает информацию в длинном формате, включая режим, владельца и размер, а ключ -i печатает номер inode. Система UNIX обычно позволяет вам группировать ключи, например -li, и выводить их в любом порядке. Этого нельзя делать с аргументами.

Невзирая на разное количество компонентов, не забудьте в конце командной строки нажать клавишу <RETURN>.

Чтобы выполнить команду, введите командную строку, когда на экране появится подсказка (например, символ #). Shell рассмотрит вашу команду как ввод, найдет один или более каталогов, чтобы вызвать программу, которую вы указали, и перенаправит ваш запрос вместе с затребованными программами ядру. Ядро последует инструкциям в программе и выполнит команду, которую вы запрашивали.

После завершения выполнения программы, shell сигнализирует, что готов выполнить следующую команду, напечатав подсказку.

| |

Comments: info@citmgu.ru

Designed by Andrey Novikov

Copyright © CIT



Команды


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

Этот раздел знакомит вас со многими программами и инструментальными средствами системы UNIX, которые вы будете использовать достаточно часто. Если вам будет необходима более полная информация по каким-либо стандартным программам, обратитесь к "Руководству программиста".



Обыкновенные файлы


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



Основные функции и компоненты системы UNIX


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

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

Система UNIX имеет 4 основных компонента:

ядро - это программа, которая образует ядро операционной системы; она координирует внутренние функции компьютера ( такие как размещение системных ресурсов). Ядро работает невидимо для вас; shell - это программа, которая осуществляет связь между вами и ядром, интерпретируя и выполняя ваши команды. Так как она читает ваш ввод и посылает вам сообщения, то описывается как интерактивная; commands - это имена программ, которые компьютер должен выполнить. Пакеты программ называются инструментальными средствами. Система UNIX обеспечивает инструментальными средствами для таких заданий как создание и изменение текста, написание программ, развитие инструментария программного обеспечения, обмен информацией с другими посредством компьютера; file system - файловая система - это набор всех файлов, возможных для вашего компьютера. Она помогает вам легко сохранять и отыскивать информацию.



Принятые соглашения


Следующие соглашения используются в данном руководстве:

< > - ввод, который не появляется на экране (например, пароль, табуляция, RETURN) в тексте приводится в угловых скобках; <^char> - управляющие символы приводятся тоже в угловых скобках, т.к. они не появляются на экране во время ввода. Символ ^ означает управляющую клавишу (обычно она называется CTRL). Управляющую клавишу и символ char необходимо нажимать одновременно; [] - ключи и аргументы команды, которые являются необязательными, заключаются в квадратные скобки; | - вертикальная черта разделяет необязательные аргументы, из которых вы должны выбрать один. Например, когда командная строка имеет следующий формат:

command [arg1|arg2]

вы можете выбрать либо arg1 либо arg2, когда выдаете команду; ... - многоточие после аргумента означает, что более чем один аргумент может быть использован в одной командной строке; - стрелка на экране представляет курсор.

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

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

| |

Comments: info@citmgu.ru

Designed by Andrey Novikov

Copyright © CIT



Расположение системы


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

Для системы UNIX все файлы одинаковы. Это делает файловую структуру UNIX легкой в использовании. Например, вам нет необходимости указывать требования к памяти для ваших файлов, т.к. система автоматически это сделает для вас. Или если вам или написанной вами программе необходим доступ к определенному устройству (например, принтеру) вы указываете устройство также как любой из ваших файлов. В системе UNIX существует только один интерейс для всего вашего ввода и вывода для вас; это упрощает ваше взаимодействие с системой.

Справочник root содержит несколько важных системных справочников:

/stand - содержит загрузочные программы и файлы данных, используемые в процессе загрузки; /sbin - содержит основные исполняемые программы, используемые в процессе загрузки и при восстановлении системы; /dev - содержит специальные файлы, которые представляют периферийные устройства (например, консоль, построчно-печатное устройство, терминалы пользователя и диски); /etc - содержит машинно-зависимые файлы конфигурации и базы данных организации системы; /home - корневой справочник поддерева для справочника пользователя; /tmp - содержит временные файлы; /var - корневой справочник поддерева для изменяющихся файлов (например, файлы log); /usr - содержит другие справочники, включая lib и bin.

Справочники и файлы, созданные вами, охватывают часть файловой системы, которая контролируется вами. Другая часть файловой системы обслуживается операционной системой: /sbin, /dev, /tmp и /usr.

В этом разделе вы познакомились с основными принципами операционной системы UNIX. Следующие разделы помогут применить эти принципы.

| |

Comments: info@citmgu.ru

Designed by Andrey Novikov

Copyright © CIT



Shell


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

|

Comments: info@citmgu.ru

Designed by Andrey Novikov

Copyright © CIT



Символические каналы связи


Символические каналы связи - это файлы, которые указывают на другие файлы.

| |

Comments: info@citmgu.ru

Designed by Andrey Novikov

Copyright © CIT



Специальные файлы


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



Справочники


Справочники являются супер-файлами, которые могут содержать файлы или другие справочники. Обычно файлы, содержащиеся в них, устанавливают отношения каким-либо способом. Например, справочник, названный sales может хранить файлы, содержащие цифры ежемесячных продаж, названные jan, feb, mar, и т.д. Вы можете создать каталоги, добавить или удалить файлы из них или удалить каталоги.

Все справочники, которые вы создаете, будут размещены в вашем собственном справочнике. Этот справочник назначается вам системой во время входа в систему. Никто кроме привилегированных пользователей не может читать или записывать файлы в этот справочник без вашего разрешения и вы определяете структуру этого справочника.

Система UNIX также содержит несколько справочников для собственного использования. Структура этих справочников аналогична во всех системах UNIX. Этот справочник, включающий в себя несколько системных справочников, размещается непосредственно под справочником root. Справочник root (обозначенный /) является исходным в файловой структуре UNIX. Все справочники и файлы иерархически располагаются ниже.



Операционная система UNIX. Руководство пользователя

Файловая система UNIX


Файловая система UNIX имеет иерархическую структуру; чаще всего она описывается в виде дерева. Вершина этого дерева - это справочник root. Он обозначается с помощью /. Все другие справочники и файлы берут свое начало из справочника root.

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

Другие пути ведут к системным справочникам и доступны всем пользователям. Чтобы получить перечень всех справочников и файлов в справочнике root, введите командную строку:

ls -l /<CR>

Чтобы перемещаться по файловой структуре, вы можете использовать имена путей. Например, вы можете переместиться в справочник /usr/bin, если введете следующую командную строку:

cd /usr/bin<CR>



Основные команды системы UNIX


at - выполнить команду в фоновом режиме в указанное время.

Формат:

at время [день]<CR>

команда_1<CR>

команда_2<CR>

<^d>

banner - распечатать сообщение (слова должны быть длиной не более 10 символов) большими буквами в стандартный вывод;

batch - поставить задание в очередь. Формат:

batch<CR>

команда_1<CR>

команда_2<CR>

<^d>

Команда batch читает задание со стандартного ввода и ставит его в очередь. Команды, поставленные в очередь командой batch, будут выполнены, когда позволит уровень загруженности;

cat - отобразить содержимое указанного файла на терминал. Чтобы временно приостановить вывод, нажмите <^s>, и чтобы возобновить вывод введите <^q>. Для прекращения вывода и возврата управления shell, нажмите клавишу BREAK или DELETE;

cd - сменить текущий справочник. Если вы указали имя справочника, то команда cd сменит текущий справочник на указанный. Если имя не указано, то используется значение переменной окружения $HOME. Если вместо имени справочника указано имя пути, то вы можете перескочить несколько уровней при помощи одной команды;

cp - скопировать указанный файл в новый файл, оставив оригинальный файл неизменным;

cut - выбрать отдельные поля из строк файла. Эта команда может, например, использоваться для выборки колонок из таблицы;

date - отобразить текущие дату и время;

diff - сравнить два файла. Команда diff выдает на стандартный вывод те строки файлов, которые нужно изменить, чтобы привести файлы в соответствие друг с другом;

echo - отображает ввод на стандартный вывод, включая возврат каретки, и возвращает подсказку;

ed - редактирование указанного файла с помощью построчного редактора. Если имя файла не указано, то команда ed создает новый файл;

grep - поиск по шаблону, заданному ограниченным регулярным выражением;

kill - завершить фоновый процесс с помощью идентификатора процесса (PID). Вы можете получить PID, запуcтив команду ps;

lex - генерирует программы, которые будут использоваться для лексического анализа текста;

lp - распечатать содержимое указанного файла на построчно-печатающем устройстве;

lpstat - отобразить состояние любого запроса построчно-печатающему устройству;

ls - распечатывает имена всех файлов и справочников, за исключением тех, которые начинаются с точки;

mail - отправка пользователям почты или ее чтение. Каждое сообщение заканчивается подсказкой ?; mail ждет от вас ввод опции для сохранения, удаления сообщения или передвижения к месту использования. Чтобы получить список допустимых опций, введите ?. mail, следующая за регистрационным именем, посылает сообщение владельцу этого имени. Чтобы завершить сообщение, введите <^d>. Для прерывания сеанса mail нажмите клавишу BREAK;

mailx - интерактивная система обработки сообщений;

make - поддержка, обновление и восстановление групп программ;

mkdir - создать новый справочник. Новый справочник становится подсправочником того справочника, в котором вы выдали команду mkdir;

mv - переместить файл. С помощью этой команды можно скопировать файл в новый в том же справочнике либо в новый файл в другом справочнике. Если вы перемещаете файл в другой справочник, то можете использовать то же самое имя файла;

nohup - запустить команду в фоновом режиме; она продолжит свою работу и после того, как вы завершите работу. Сообщения об ошибках и вывод будут располагаться в файле nohup.out;

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

pr - форматирует и выдает файлы на стандартный вывод. Команда pr разбивает текст на страницы;

ps - отображает состояние и номер каждого процесса, выполняющегося в данный момент. Команда ps не отображает состояние заданий, находящихся в очереди к at и batch;

pwd - отображает полное имя пути текущего рабочего справочника;

rm - удалить файлы или справочники из файловой системы. В этой команде вы можете использовать метасимволы, но с большой осторожностью, т.к. удаленные файлы восстановить непросто;

rmdir - удалить справочник. Вы не можете удалить справочник, в котором находитесь, не можете также удалить непустой справочник;

sort - сортировка и слияние файлов; результат отображается на экране;

spell - слова из указанного файла проверить на соответствие орфографии; слова, которые не соответствуют орфографическому списку, отображаются на экране;

stty - установка характеристик терминального ввода/вывода для устройства, являющегося стандартным вводом;

uname - отобразить имя системы UNIX, в которой вы работаете;

uucp - послать указанный файл другой системе UNIX;

uuname - список имен удаленных систем UNIX, которые могут связываться с вашей системой UNIX;

uupick - поиск файла в открытом справочнике посланного вам командой uuto. Если файл найден, то uupick отображает его имя и имя системы, из которой он пришел;

uustat - отобразить состояние команды uuto, с помощью которой вы послали файлы другому пользователю;

uuto - послать указанный файл другому пользователю. Укажите пункт назначения в формате system!login; system должно находиться в списке систем, созданном командой uuname;

wc - подсчитать числа строк, слов и символов в указанном файле и отобразить результат на терминале;

who - отобразить регистрационные имена пользователей, в данный момент зарегистрированных в вашей системе UNIX;

yacc - компилятор компиляторов.

|

Comments: info@citmgu.ru

Designed by Andrey Novikov

Copyright © CIT



Справочники системы UNIX


/ - справочник root;

/stand - содержит программы и файлы данных, используемые в процессе загрузки;

/dev - содержит специальные файлы, которые представляют периферийные устройства, такие как:
console - консоль
lp - построчно-печатающее устройство
term/* - пользовательские терминалы
dsk/* - диски

/etc - содержит файлы конфигурации и базы данных;

/home - собственный справочник пользователя;

/tmp - содержит временные файлы, например, буферы для редактирования файла;

/var - поддерево для изменяемых файлов (например, файлы регистрации);

/usr - содержит другие справочники, например, bin, lib;

/usr/bin - содержит исполняемые программы, включая следующие:

cat grep date mkdir login who

/usr/lib - содержит библиотеки для программ и языков программирования.