1. Для того чтобы увидеть текущую нагрузку
top
top - 16:12:39 up 5 days, 22:10, 3 users, load average: 2.27, 2.13, 2.19
Tasks: 225 total, 1 running, 213 sleeping, 11 stopped, 0 zombie
Cpu(s): 50.7%us, 10.5%sy, 0.0%ni, 34.5%id, 1.3%wa, 0.7%hi, 2.3%si, 0.0%st
Mem: 2009636k total, 1819172k used, 190464k free, 224128k buffers
Swap: 2040244k total, 104k used, 2040140k free, 925516k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
4424 nobody 15 0 35532 16m 4416 S 5.6 0.8 0:03.49 httpd
3211 nobody 15 0 35312 16m 4508 S 3.6 0.8 0:04.61 httpd
3440 mysql 15 0 159m 49m 3692 S 2.3 2.5 106:08.62 mysqld
Здесь можно увидеть много интересного, но главное:
load averages: 2.27, 2.13, 2.19 - количество процессов в очереди на выполнение за 1, 5 и 15 минут соответственно. Значения меньше 1 говорят о низкой загрузке сервера, но это достаточно приблизительный и обобщённый показатель.
Более точно загрузку процессора можно увидеть в поле %CPU. Занятость памяти в общих чертах можно контролировать по параметру Swap. Если Swap:Used составляет значительную часть от установленной на сервере памяти, то следует задуматься о снижении нагрузки ли наращивании объёма памяти.
2. Для того чтобы увидеть загрузку сетевого канала.
yum install ifstat (предварительно подключив dag репозиторий)
ifstat
3. Свободное дисковое пространство
df -h
особо следует обращать внимание на разделы home и usr - в них обычно хранится контент и var - в нём хранятся логи и базы MySQL
Посмотреть кто занимает много места, например, в папке /home можно так
du -h --max-depth=1 /home/
4. Поиск процессов
Для примера найдём все процессы php (которые часто плодятся в больших количествах кроном)
ps aux|grep php
5. Завершить процесс.
Если вы увидели что какой-то процесс использует слишком много ресурсов и хотите его завершить (только если вы уверены, что точно знаете что делаете)
kill PID
где PID - это идентификатор процесса (перый столбец в выдаче команд top и второй в ps)
killall processname
где processname - имя процесса
Если процесс умирать добровольно не желает - посылаем сигнал принудительного завершения
kill -9 PID
killall -9 processname
6. Найти файл
Чтобы найти файл filename в папке /home/user и во всех подпапках
find /home/user/ -name filename
Чтобы найти файл содержащий в названии "filename" в папке /home/user и во всех подпапках
find /home/user/ -name "*filename*"
Найти в папке /home и вложенных папках все скрпты php содержащие текст "string for search"
find /home/ -name "*.php" -exec grep -l 'string for search' {} \;
7. Найти где находится программа PROGRAMM
whereis PROGRAMM
8. Посмотреть под каким пользователем вы работаете в данный момент
whoami
9. Посмотреть кто ещё подключен к серверу
w
10. Посмотреть 20 последних подключений к серверу
last -n20
11. Мягко (без обрыва соединений) перезапустить apache
apachectl graceful
12. Посмотреть версию php
php -v
13. Посмотреть модули подключенные к php
php -m
14. Редактировать крон пользователя admin
crontab -e -uadmin
если установлен midnight commander(обычно установлен) то удобнее
EDITOR=mcedit; crontab -e -uadmin