Очистка дискового пространства сервера
Опубликовано Вадим Суфияров on 13 May 2008 04:53

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

Внимание! После удаления лог-файлов и системных временных файлов рекомендуется пререзагрузить соответствующий процесс-владелец файлов, либо перезапустить веб-сервер, чтобы приложения смогли начать запись новых лог-файлов!

 


 

 

Диагностика

Просмотреть текущее использование дискового пространства можно командой UNIX shell посредством SSH-доступа к Вашему серверу:

df -h

Типичный пример выполнения команды:

# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/vzfs 2.5G 2.5G 0 100% /

Как видно из этого примера - здесь все доступное место использовано. При этом характерными признаками переполнения дисковой квоты могут служить:

- неработающие или частично работающие сайты на сервере;
- не принимается почта (но она скорее всего может отправляться, но не всегда);
- не работает корректно или совсем панель управления Plesk;
- множественные ошибки в базах данных (в т.ч. служебных);
- другие аналогичные ошибки.

 


 

Временные файлы

Панель управления Plesk может оставлять на сервере временные файлы.
Наиболее типовые места размещения:
/tmp/ - общие временные файлы всех приложений, и панели Plesk. Могут оставаться файлы после установки обновлений панели управления.

 

Резервные копии, менеджер миграций

Очистку следующих директорий следует проводить исключительно вручную, убедившись в том, что удаляемые файлы не используются каким-либо запущенным в данный момент на сервере процессом! Необходимо быть крайне внимательными, все действия в системных директориях производятся пользователем исключительно на свой страх и риск!

/usr/local/psa/PMM/tmp/ - здесь могут оставаться архивные файлы .tgz, оставшиеся в результате неудачных завершений процессов резервного копирования из панели Plesk, или после использования "менеджера миграций" Plesk, для переноса сайтов между серверами.

/var/lib/psa/dumps/domains/ - здесь могут располагаться частично сделанные резервные копии от аварийно завершившихся процессов резервного копирования. Можно сравнить дату создания имеющихся здесь файлов с датами резервных копий сайтов, имеющихся в панели Plesk, и удалить с сервера архивы, которые не соответствуют по времени создания имеющимся в Plesk резервным копиям сайтов.


Удаление log-файлов, журналов.

Крайне вероятными причинами переполнения дискового пространства может быть то, что журналы веб-сервера Apache достигли больших размеров, тем самым заняв много дискового пространства. Журналы доступа и ошибок для каждого домена находятся в директориях вида (в данных журналах также хранится аналогичная информация по поддоменам):

/var/www/vhosts/domain.tld/statistics/logs/access_log
/var/www/vhosts/domain.tld/statistics/logs/error_log

Здесь domain.tld - это имя размещенного домена на сервере. Например, вместо domain.tld может быть rusonyx.ru или любое другое доменное имя сайта размещенного на Вашем сервере.

Текущий размер файлов и директории можно выяснить следующими командами:

ls -lah /var/www/vhosts/domain.tld/statistics/logs
du -sch /var/www/vhosts/domain.tld/statistics/logs

Пример выполнения команд:

# ls -lah /var/www/vhosts/domain.tld/statistics/logs/
total 2.3G
drwxr-x--- 2 root psaserv 1.0K May 3 01:28 .
dr-xr-x--- 7 root psaserv 1.0K Nov 20 20:10 ..
-rw-r--r-- 1 root root 1.0K May 13 09:05 access_log
-rw-r--r-- 1 root root 1.7M May 12 01:28 access_log.processed
-rw-r--r-- 1 root root 2.1G May 13 06:14 error_log
-rw-r--r-- 1 root root 218M May 8 01:28 error_log.1
-rw-r--r-- 1 root root 0 Dec 5 01:28 xferlog_regular
-rw-r--r-- 1 root root 169K Dec 5 01:28 xferlog_regular.processed

# du -sch /var/www/vhosts/domain.tld/statistics/logs/
2.3G /var/www/vhosts/dmax.name/statistics/logs/
2.3G total

В указанном примере xferlog_regular - это журнал FTP-доступа сервера ProFTPD.

Аналогичные действия можно провести и установить в отношении многих других журналов сервера, но эти случаи уже менее вероятны:

а) Журналы доступа и ошибок панели Plesk. Находятся в файлах:

/usr/local/psa/admin/logs/httpsd_access_log
/usr/local/psa/admin/logs/httpsd_error_log

б) Журналы доступа и ошибок непосредственно веб-сервера. Находятся в файлах:

/var/log/httpd/access_log
/var/log/httpd/error_log

Данные журналы относятся не к отдельным виртуальным доменам, а ко всему веб-серверу. Также данные файлы полезны для определения причин некорректной работы веб-сервера (например, превышение параметра MaxClients, а также причину невозможности запуска самого веб-сервера);

в) Журнал доступа и ошибок почтовой системы. Находится в файле:

/usr/local/psa/var/log/maillog

г) Журнал ошибок MySQL. Находится в файле:

/var/log/mysqld.log

д) Множество журналов, которые сохраняют свои данные в директории /var/log/ и иногда также имеют большие размеры. Например:

/var/log/maillog
/var/log/messages
/var/log/secure

3. Удаление любого журнала производится командой rm. Например:

rm /var/www/vhosts/domain.tld/statistics/logs/error_log

После чего соответственно веб-сервер необходимо перезапустить:

service httpd restart

или можно перезапустить сервер целиком командой:

reboot

Далее проверьте количество доступного дискового пространства повторно командой:

df -h

 

(150 голос(а))
Эта статья помогла
Эта статья не помогла