Наши партнеры








Книги по Linux (с отзывами читателей)

Библиотека сайта rus-linux.net

Часть VI. Приложения

Приложение A. Советы, рекомендации и задачи администрирования

Некоторые советы в этом разделе специфичны для Linux-систем. Большинство подходит для всех UNIX-систем.

Утилита du.

Вы можете использовать утилиту du для оценки дискового пространства, занимаемого файлами. Например, чтобы определить размер в мегабайтах каталогов /var/log и /home используйте команду:

[root@deep /]# du -sh /var/log /home
3.5M       /var/log
350M       /home

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

[root@deep /]# cd /home
[root@deep /home]# du -sh *
343M     admin
11k      ftp
6.8M     httpd
12k      lost+found
6.0k     named
6.0k     smbclient
6.0k     test
8.0k     www

ЗАМЕЧАНИЕ. Вы можете добавить эту команду в Ваш файл crontab, чтобы получать отчеты об использовании дискового пространства по почте.

Поиск маршрута, по которому пакеты пересылаются с Вашего компьютера на удаленный.

Если Вы хотите найти маршрут, по которому пакет следует между Вашим и удаленным компьютером, просто используйте следующую команду:

[root@deep /]# traceroute www.redhat.com
traceroute to www.portal.redhat.com (206.132.41.202),
           30 hops max, 38 byte packets
1  ppp005.108-253-207.mtl.mt.videotron.net (207.253.108.5) 98.584 ms
   1519.806 ms 109.911 ms
2  fa5-1-0.rb02-piex.videotron.net (207.96.135.1) 149.888 ms 89.830 ms
   109.914 ms
3  ia-tlpt-bb01-fec1.videotron.net (207.253.253.53) 149.896 ms 99.873 ms
   139.930 ms
4  ia-cduc-bb02-ge2-0.videotron.net (207.253.253.61) 99.897 ms 169.863 ms
   329.926 ms
5  if-4-1.core1.Montreal.Teleglobe.net (207.45.204.5) 409.895 ms 1469.882 ms
   109.902 ms
6  if-1-1.core1.NewYork.Teleglobe.net (207.45.223.109) 189.920 ms 139.852 ms
   109.939 ms
7  206.132.150.133 (206.132.150.133) 99.902 ms 99.724 ms 119.914 ms
8  pos1-0-2488M.wr2.CLE1.gblx.net (206.132.111.89) 189.899 ms 129.873 ms
   129.934 ms
9  pos8-0-2488m.wr2.kcy1.globalcenter.net (206.132.111.82) 169.890 ms
   179.884 ms 169.933 ms
10 206.132.114.77 (206.132.114.77) 199.890 ms 179.771 ms 169.928 ms
11 pos8-0-2488M.wr2.SFO1.gblx.net (206.132.110.110) 159.909 ms 199.959 ms
   179.837 ms
12 pos1-0-2488M.cr1.SNV2.gblx.net (208.48.118.118) 179.885 ms 309.855 ms
   299.937 ms
13 pos0-0-0-155M.hr2.SNV2.gblx.net (206.132.151.46) 329.905 ms 179.843 ms
   169.936 ms
14 206.132.41.202 (206.132.41.202) 2229.906 ms 199.752 ms 309.927 ms

где www.redhat.com имя или ip-адрес удаленного хоста.

Как выводить на экран сколько раз обращались к Вашему веб-серверу.

Чтобы быстро вывести число обращений к Вашему веб-серверу, используйте следующую команду:

[root@deep /]# grep "GET / HTTP" /var/log/httpd/access_log | wc -l
467

Одновременная остановка большинства сервисов.

Как root Вы можете остановить несколько сервисов одновременно следующей командой:

[root@deep /]# killall httpd smbd nmbd slapd named

Вышеприведенная команда остановит Apache-сервер, Samba-сервис, LDAP-сервер и DNS-сервер соответственно.

Хотите чтобы у всех пользователей вверху терминала выводились часы?

Редактируйте файл profile (vi /etc/profile) и добавьте следующую строку:

PROMPT_COMMAND='echo -ne "\0337\033[2;999r\033[1;1H\033[00;44m\033[K"\
               `date`"\033[00m\0338"'

Инсталлирована ли lsof на Вашем сервере?

Если нет, то инсталлируйте ее и выполните команду lsof -i. Вы должны получить список портов, которые открыты на Вашей машине. Программа lsof, это полезная утилита, которая говорит, какие процессы слушают на каком порту:

[root@deep /]# lsof -i
COMMAND  PID  USER FD  TYPE DEVICE NODE NAME
Inetd    344  root 4u  IPv4  327   TCP  *:ssh (LISTEN)
sendmail 389  root 4u  IPv4  387   TCP  *:smtp (LISTEN)
smbd     450  root 5u  IPv4  452   TCP  deep.openna.com:netbios-ssn (LISTEN)
nmbd     461  root 5u  IPv4  463   UDP  *:netbios-ns
nmbd     461  root 6u  IPv4  465   UDP  *:netbios-dgm
nmbd     461  root 8u  IPv4  468   UDP  deep.openna.com:netbios-ns
nmbd     461  root 9u  IPv4  470   UDP  deep.openna.com:netbios-dgm
named    2599 root 4u  IPv4  3095  UDP  *:32771
named    2599 root 20u IPv4  3091  UDP  localhost.localdomain:domain
named    2599 root 21u IPv4  3092  TCP  localhost.localdomain:domain (LISTEN)
named    2599 root 22u IPv4  3093  UDP  deep.openna.com:domain
named    2599 root 23u IPv4  3094  TCP  deep.openna.com:domain (LISTEN)

Запуск команд на удаленном сервере без подключения к нему через протокол ssh.

Команда ssh также используется для выполнения команд на удаленной системе без подключения к ней. Результаты выполнения команды выводятся на дисплей, а контроль возвращается на локальную систему. Здесь приведен пример, который выводит всех пользователей, подключенных к системе:

[admin@deep /]$ ssh mail.openna.com who
admin@mail.openna.com's password:
root    tty1    Dec   2   14:45
admin   tty2    Dec   2   14:45
wahib   pts/0   Dec   2   11:38

Завершение имени файла.

Табулирование окончания имени файла позволяет Вам вводить только часть имени. Введите начало имени файла и нажмите клавишу [TAB], имя будет завершено за Вас. Если больше, чем один файл или программа подходят, то раздастся звуковой сигнал, а затем после повторного нажатия [TAB] Вы получите список подходящих имен.

Специальные символы.

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

Control-d: Если Вы находитесь в командном интерпретаторе и нажмете control-d, то отключитесь от системы (logged off).

Control-l: Если Вы находитесь в командном интерпретаторе и нажмете control-l, то Вы очистите экран.

?: Это групповой символ. Он выступает как единичный символ. Если Вы зададите в командной строке что-то подобное m?b, то Linux найдет mob, mib, mub и любые другие буквы/цифры между a-z и 0-9.

*: Этот символ выступает как любые другие символы. Если Вы зададите mi*, то будет использоваться mit, mim, miiii, miya и все другие слова, начинающиеся с mi. m*l соответствует mill, mull, ml и всему, что начинается с m и заканчивается на l.

[]: Определяет диапазон. Если я запрашиваю m[o,u,i]m, то Linux определяет: mim, mum, mom, если я задаю: m[a-d]m, то это соответствует: mam, mbm, mcm, mdm. Символы [], ? и * обычно используются при копировании, удалении и просмотре каталогов.

ЗАМЕЧАНИЕ. В Linux все зависит от регистра символов. Из-за этого Bill и bill это не одно и тоже. Это позволяет хранить в одно месте разные файлы с именами Bill, bill, bIll, biLl и т. д. Так что, при работе с [], Вы должны определить заглавные буквы, если в любом имени файла они могут использоваться.