Product SiteDocumentation Site

Приложение B. Краткий Коррективный Курс

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

B.1. Shell и Базовые команды

В мире Unix каждый администратор рано или поздно использует командную строку; например, когда система не запускается должным образом и имеется только командная строка режима восстановления. Умение управляться с командной строкой - базовое для выживания в таких условиях.
Эта секция дает только краткий обзор команд. Они все имеют много опций, не описанных здесь. Поэтому, пожалуйста, обратитесь к документации в соответствующих страницах руководства.

B.1.1. Обзор Дерева Каталогов и Управления Файлами

После того, как сеанс открыт, команда pwd (которая служит для вывода рабочего каталога) показывает текущее местоположение в файловой системе. Текущий каталог изменяется с помощью команды cd каталог (cd для того, чтобы изменить каталог). Родительский каталог всегда называют .. (две точки), тогда как текущий каталог - . (одна точка). Команда ls выводит список содержимого каталога. Если никаких параметров не задано, она работает в текущем каталоге.
$ pwd
/home/rhertzog
$ cd Desktop
$ pwd
/home/rhertzog/Desktop
$ cd .
$ pwd
/home/rhertzog/Desktop
$ cd ..
$ pwd
/home/rhertzog
$ ls
Desktop    Downloads  Pictures  Templates
Documents  Music      Public    Videos
Новый каталог может быть создан с помощью команды mkdir каталог, а удален существующий (пустой) каталог может быть с помощью - rmdir каталог. Команда mv позволяет переместить и/или переименовать файлы и каталоги; удаление файлов достигается с помощью команды rm файл.
$ mkdir test
$ ls
Desktop    Downloads  Pictures  Templates  Videos
Documents  Music      Public    test
$ mv test new
$ ls
Desktop    Downloads  new       Public     Videos
Documents  Music      Pictures  Templates
$ rmdir new
$ ls
Desktop    Downloads  Pictures  Templates  Videos
Documents  Music      Public

B.1.2. Отображение и Изменение Текстовых Файлов

Команда cat файл (предназначенная для связывания файла со стандартным устройством вывода) считывает файл и отображает его содержимое на терминале. Если файл слишком большой чтобы поместиться на экране, используйте пейджер (полоса прокрутки) например меньше (или больше) для прокрутки содержимого файла на странице.
Команда editor запускает текстовый редактор (например vi или nano) и позволяет создавать, редактировать и читать текстовые файлы. Простейшие файлы иногда могут быть созданы непосредственно из интерпретатора команд с помощью перенаправления: echo "текст" >файл. Оно создает файл с “текстом” в качестве содержимого. Добавить строку в конце файла тоже возможно, с помощью такой команды как echo "еще текст" >>файл. Запишите >> в этот пример.

B.1.3. Поиск Файлов и в пределах Файла

Команда find каталог критерий ищет файлы внутри каталога каталог по особым критериям. Наиболее часто используемым критерием является -name имя: что позволяет найти файл по его имени.
Команда grep выражение файл ищет содержимое файла и извлекает строки, совпадающие с выражением (смотри боковую панель BACK TO BASICS Regular expression). Добавление опции -r включает рекурсивный поиск всех файлов, содержащихся в каталоге, используемом в качестве параметра. Это позволяет найти файл когда известна лишь часть содержимого.

B.1.4. Управление Процессами

Команда ps aux выводит список запущенных процессов и помогает идентифицировать, показывая их pid (Идентификационный номер процесса). Когда pid процесса известен, команда kill -сигнал pid позволяет отправить ему сигнал (если процесс принадлежит текущему пользователю). Существует несколько сигналов; наиболее часто используемые - это TERM (запрос завершиться корректно) и KILL (принудительно убить).
Командный интерпретатор может запускать программы в фоновом режиме, если за командой следует “&”. Используя амперсанд, пользователь немедленно возобновляет контроль над оболочкой, хотя команда все еще выполняется (как фоновый процесс). Команда jobs выводит список процессов, запущенных в фоновом режим; ввод fg %номер фонового процесса (от foreground) возвращает процесс на передний план. Когда команда выполняется на переднем плане (была запущена обычным образом или перенесена на передний план с помощью fg), комбинация клавиш Control+Zприостанавливает процесс и возвращает контроль над командной строкой. Процесс может быть возобновлен в фоновом режиме с помощью bg %номер фонового процесса (от background).

B.1.5. Информация о системе: Память, Дисковое пространство, Идентификатор

Команда free отображает сведения о памяти; df (disk free) выводит отчет о доступном дисковом пространстве на каждом из дисков, смонтированных в файловой системе. Опция -h (для читаемости человеком) преобразует размеры в более разборчивый вид (обычно в мегабайты или гигабайты).Аналогичным образом, команда free поддерживает опции -m и -g для отображения данных в мегабайтах или гигабайтах, соответственно.
$ free
             total       used       free     shared    buffers     cached
Mem:       1028420    1009624      18796          0      47404     391804
-/+ buffers/cache:     570416     458004
Swap:      2771172     404588    2366584
$ df
Filesystem           1K-blocks      Used Available Use% Mounted on
/dev/sda2              9614084   4737916   4387796  52% /
tmpfs                   514208         0    514208   0% /lib/init/rw
udev                     10240       100     10140   1% /dev
tmpfs                   514208    269136    245072  53% /dev/shm
/dev/sda5             44552904  36315896   7784380  83% /home
Команда id выводит идентификатор пользователя, запустившего сессию, а также список групп, в которые он входит. Поскольку доступ к некоторым файлам или устройствам может быть ограничен для членов некоторых групп, проверка групп (в которых состоит пользователь) может быть полезной.
$ id
uid=1000(rhertzog) gid=1000(rhertzog) groups=1000(rhertzog),24(cdrom),25(floppy),27(sudo),29(audio),30(dip),44(video),46(plugdev),108(netdev),109(bluetooth),115(scanner)