Опубликован: 24.07.2006 | Доступ: свободный | Студентов: 8870 / 1199 | Оценка: 3.95 / 3.75 | Длительность: 41:47:00
ISBN: 978-5-94157-183-3
Лекция 9:

Основы администрирования системы

Запуск и настройка общесистемных сервисов

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

Редактирование файла /etc/fstab

Файловая система - один из важнейших общесистемных сервисов. Монтирование основных файловых систем осуществляется на этапе загрузки системы. Другие (дополнительные) файловые системы монтируются командой mount, которая была рассмотрена в "Знакомство с файловой системой ext2fs" . Конфигурационным файлом для команды монтирования является файл /etc/fstab, который тоже был рассмотрен в "Знакомство с файловой системой ext2fs" . Поэтому здесь не будем повторяться, а ограничимся тем, что приведем несколько советов, которые позволят несколько снизить трудоемкость процедур монтирования файловых систем.

Одним из неудобств ОС Linux по сравнению с Windows является необходимость монтировать файловую систему при работе с дискетами и вообще сменными накопителями (CD-ROM, Zip фирмы Iomega и т.п.). Каждый раз при смене диска приходится заново монтировать и размонтировать файловую систему. Впрочем, и для получения доступа к некоторым разделам жесткого диска тоже необходимо выполнять команды монтирования, если только не заставить систему делать это автоматически, изменив соответствующим образом файл /etc/fstab.

Чтобы не повторять одинаковых действий при каждом перезапуске системы и сократить число необходимых символов, которые приходится вводить с клавиатуры при выполнении операций монтирования, целесообразно выполнить следующее. Сначала создайте точки монтирования (пустые каталоги) для каждого из устройств или внешних файловых систем, которые вы будете периодически подключать: гибкого диска, CD-ROM, ZIP-диска, сетевых дисков, которые будут подключаться по NFS. Это можно сделать из Midnight Commander или следующими командами:

[root]# cd /mnt
[root]# mkdir floppy; mkdir cdrom; mkdir win; mkdir zip; mkdir server

Теперь отредактируйте файл /etc/fstab, добавив в него следующие строки, соответствующие тем устройствам, которые имеются в вашей системе (то, что в файле было до вас, лучше не трогать):

/dev/fd0 /mnt/floppy vfat user,noauto 0 1
/dev/cdrom /mnt/cdrom iso9660 ro,user,noauto 1
/dev/sda4 /mnt/zip vfat user,noauto,exec 0 1
/dev/hda1 /mnt/win vfat user,noauto 0 1
server:/export /mnt/server nfs defaults

Редактирование файла /etc/fstab можно выполнить и с помощью программы linuxconf, о которой будет рассказано ниже (команда File systems | Access local drive ).

Если правильно настроен файл /etc/fstab, то обращение к гибкому диску или дискам CD-ROM осуществляется довольно просто. В графической среде KDE чтобы смонтировать диск надо просто щелкнуть правой кнопкой мыши по соответствующему значку и выбрать в появившемся меню команду Монтировать. Чтобы добиться примерно такого же эффекта в программе Midnight Commander, надо добавить в меню этой программы (файл /usr/lib/mc/mc.mnu ) команды монтирования и размонтирования дисков. Вот пример таких команд для гибких дисков:

m Смонтировать дискету
mount /mnt/floppy
d Размонтировать дискету
umount /mnt/floppy

(предполагается, что в файле /etc/fstab прописана строка, определяющая устройство и тип файловой системы для /mnt/floppy ). После этого смена дискеты в Midnight Commander под Linux будет ничем не сложнее аналогичного действия в программе Norton Commander или в FAR под MS Windows: для того, чтобы смонтировать дискету, достаточно будет последовательно нажать клавиши <F2> и <M>, для размонтирования - клавиши <F2> и <D>.

Файлы и разделы подкачки

Выше уже было сказано, что в тех случаях, когда системе Linux не хватает оперативной памяти, имеется возможность выгрузить часть исполняющихся (но временно простаивающих) программ и их данных на жесткий диск. Это называется свопированием (swaping). В Linux существует два варианта организации той области на диске, в которую осуществляется выгрузка данных из ОП:

  • в виде файла подкачки (swap-файл);
  • в виде отдельного раздела диска (swap partition).

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

О том, как создавать отдельный раздел подкачки, вы могли прочитать в "Инсталляция ОС Linux на компьютер с Windows" . А файл подкачки создается с помощью команды dd:

[root]# dd if=/dev/zero of=/swapfile bs=1k count=size

где size - размер файла подкачки в килобайтах. Некоторое время назад значение параметра size должно было находиться в пределах от 40 до 131 073 и, следовательно, размер файла подкачки мог быть не более 133 890 048 байт (это чуть меньше 128 Мбайт). То же самое ограничение действовало и для разделов подкачки. Однако последние версии ядра позволяют использовать области подкачки размером до 2 Гбайт (правда, это требует выделения дополнительной памяти для ядра).

Отметим, что для создания файла подкачки нельзя использовать команду cp, поскольку этот файл должен занимать непрерывную область на диске, что не обеспечивается командой копирования1(Замечание прислал Антон Непомнящих.) Неверно. Этот файл не обязан занимать напрерывную область. cp использовать можно, но dd просто удобнее, т.к. позволяет задать точные размеры создаваемого файла. И dd не создает непрерывный файл на диске - она просто копирует, а тем, как расположен (разбросан) файл по диску, занимается драйвер файловой системы или ядро .

После создания области подкачки (будь это хоть раздел, хоть файл) на ней необходимо создать соответствующую файловую систему, что делается командой mkswap следующим образом:

[root]# mkswap -c swapfile [size]

или

[root]# mkswap -c /dev/hdb3

Опция -c обеспечивает проверку указанной области на наличие плохих блоков. Если таковые обнаружены, сообщается их количество.

Linux использует страничную организацию памяти и области подкачки. Размер страницы можно указать в команде mkswap, используя опцию -p. Типичные значения, указываемые после этой опции, 4096 и 8192. Надо сказать, что команда mkswap отказывается работать с областями подкачки, размер которых менее 10 страниц, чем и объясняется то, что размер файла подкачки должен быть не менее 40 Кбайт.

Команда mkswap подготавливает область подкачки к использованию, но чтобы система могла ее использовать, необходимо эту область инициализировать (эта операция аналогична монтированию обычных файловых систем). Инициализация выполняется с помощью команды swapon. Обычно это делается во время выполнения инициализационного скрипта /etc/rc.d/rc.sysinit. Но если вы создали файл подкачки после запуска ОС, надо выполнить эту команду отдельно. Команда swapoff производит демонтаж указанных областей подкачки. Эта команда необходима для того, чтобы ядро могло снова считать в память данные из области подкачки.

ОС Linux может одновременно работать с несколькими областями подкачки (до 8). Сколько их задействовано в системе, можно увидеть с помощью команды swapon -s или просмотрев файл /proc/swaps.

Владислав Гермак
Владислав Гермак

Приглашения оболочки

Одна из очень важных переменных имеет имя PS1. Эта переменная задает вид приглашения, которое bash выводит, когда ожидает ввода очередной команды пользователем. По умолчанию этой переменной присвоено значение "\s-\v\$ ".

"\s-\v\$ ". -значиние /v замените /u