Главная Статьи Форум Помощь Блоги Инструменты Контакты
Поиск:     Расширенный поиск
Обзор по категориям:
Contact Us



Некоторые полезные команды шелла.

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
Другие вопросы в этой категории
» More articles