Глава 9. Различные задачи администрирования

Локальное оглавление
Проверка места на дисках
Управление процессами
Запуск и завершение процессов
Планирование процессов: Cron и файлы Crontab

Linux очень надежна. На протяжении четырех лет она работала на моей машине в качестве Internet-сервера, и требовала не так уж много администрирования для поддержания в рабочем состоянии. Вся рутинная работа может и должна быть автоматизирована записями в crontab и файлами скриптов. Однако, для бесперебойного функционирования системы следует периодически выполнять ряд проверок. В них входят:

Проверка места на дисках

Время от времени проверяйте количество свободного места на дисках с помощью команды “df”. На моем рабочем сервере Internet результат выглядит так:

Filesystem 1024-blocks Used Available Capacity Mounted on /dev/sda1 1888052 135908 1654551 8% / /dev/sdd1 4299828 100084 3977246 2% /archive /dev/hda2 3048303 897858 1992794 31% /archive2 /dev/hda1 11677 1380 9694 12% /boot /dev/sdc1 4299828 350310 3727020 9% /home /dev/sdb1 4299828 598504 3478826 15% /usr /dev/sda2 1888083 700414 1090075 39% /var /dev/scd0 593958 593958 0 100% /cdrom

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

Файловая система “/” (она же root), смонтированная на /dev/hda1, хранит ядро Linux, файлы устройств и другие каталоги. Почта пользователей харнится в ( /var/spool/mail/), а логи в (/var/adm/), но почта уходит и приходит, а логи регулярно очищаются, так что свободное место почти не колеблется (примерно на 1% в месяц). Логи чистятся и резервируются еженедельно автоматически.

Tip

Замечание: Если эта файловая система возрастает быстро, сконцентрируйте свои усилия на каталоге /var/spool/mail directory: поищите там огромные почтовые ящики (например, командой `` find /var/spool/mail -size +1000k'', которая выведет список почтовых ящиков, превышающих размерами 1Mb). Если обнаружен ящик размером больше 1,000,000 байт, значит пользователь его не чистит или подписан на большое число списков рассылки. Войдите с ним в контакт или просто сотрите его почту командой “> mailbox”, (например, ``>smithj'' сотрет почтовый ящик Joe Smith). Если пользователь возмутится уничтожением своей почты, не придавайте значения: вы администратор, а он пользователь, значит никто. Если места все еще мало, проверьте каталог ``/tmp/ '', который тоже надо чистить: программы должны удалять свои временные файлы, но удаляют их далеко не всегда...

Файловая система “/usr/”, смонтированная на /dev/hda2, хранит софт, установленный администратором системы, web-страницы Вашего сайта, разные библиотеки, файлы заголовков для С и тому подобное. Система самая большая, но обычно растет медленно. Логи для web-страниц могут находиться здесь, и вот они-то растут быстро. Проверяйте и урезайте до приемлемых размеров. На моих системах в начале месяца логи для web перемещаются в сводный протокол за месяц (access_log.11 для логов за ноябрь). В конце года логи стираются и все начинается сначала, так что 1 января свободное место в системе резко увеличивается.

Tip

Замечание: Если эта файловая система растет быстро, проверьте каталоги ``/usr/local/etc/httpd/logs'' и ``/usr/local/squid/logs/'' (если они есть). Здесь могут быть слишком разросшиеся логи (например, если на сервер в последнее время пшла волна посетителей). Если логи регулярно автоматически урезаются, беспокоиться не о чем, и лучше их не торопится стирать: они могут пригодиться при анализе посещаемости Вашего сайта. Другое место, где лежат потенциально стираемые файлы, это ``/usr/tmp/''.

Файловая система “/home” (там лежат личные файлы пользователей), смонтирована на /dev/hda3, хранит все каталоги пользователей и их файлы. Кроме того, основная страница web-сервера в дистрибутиве Red Hat хранится в каталоге /home/httpd, хотя другие дистрибутивы обычно хранят ее в файловой системе /usr (подробности в разделе Администрирование Web-сервера и HTTP Proxy главы 7).

Tip

Замечание: Если данная система выросла резко и неожиданно, значит кто-то положил много файлов в свой каталог. Проверьте файлы протокола ``/var/adm/xferlog.*'' для выявления того, кто расширил свою web-страничку.

Я также имею систему “/archive/”, смонтированную на /dev/hdb1, который является жестким диском емкостью 1.02 Gb, который может использоваться для всего (данные, пакеты программ и прочее). Большая его часть (около 70%) занята резервной копией системы (disk-to-disk full current backup).

Еще есть CD-ROM, смонтированный как “/mnt/cdrom/” на /dev/scd0, который представляет из себя 24X SCSI CD-ROM, способный читать CD в формате ISO9660. Он используется прежде всего для установки программ, но DOS/Windows CD также могут быть смонтированы и доступны из Windows 3.x/95/NT как разделяемый сетевой ресурс с помощью сервиса Samba (подробности в разделе Файловый сервис и печать через Samba главы 7).

Команда “rm” удаляет файлы. Используйте ``rm filename''. Если нужно, чтобы перед удалением файла система спросила подтверждение, используйте параметр “-i” (например, `` rm -i *''). В этом случае перед удалением каждого файла система спросит, уверены ли Вы.

Note

Обратите внимание: Это значение по умолчанию для нормальных пользователей, но root система переспрашивать не будет, если не задан параметр “-i ”!

Будьте осторожны, особенно при работе как “root”: дело может кончится сожалениеями об удалении нужного файла.