Как найти наибольшие файлы и освободить место на хостинге Linux

Когда в 9 классе мне купили ПК, в нем стоял винчестер на всего-то 60 Гб. Сейчас мобильные имеют памяти больше! И 1 Тб винчестер на домашнем ПК сейчас занять — дело не сложное. Но хостинг — дело совсем другое, за гигабайты там приходится солидно доплачивать. Повысить тариф или найти мусорные файлы? С такой же проблемой столкнулся и я.

Ищем наибольшие файлы в директории

Если у вас Linux-хостинг (а это подавляющее большинство хостингов), то все, что вам нужно сделать — это подключиться по SSH и ввести 1 команду к консоли. Некоторые нюансы, которые стоит учесть:

  • В некоторых хостингах SSL может быть отключен, его стоит включить
  • Если у вас не шаред хостинг, а vps, то подключаться стоит под пользователем root. Если кто-то будет выполнять команды, то пароль от root лучше не отдавать, а такую простую операцию можно сделать и самому
  • Нужно будет скачать/установить простую и в общем-то несложную программу Putty под Windows.

Видео о том, как подключаться через Putty.

Команда, которая покажет 10 самых тяжеловесных файлов может выглядеть так:

find /PATH/TO/folder -printf «%k %p\n» | sort -g -k 1,1 | awk ‘{if($1 > 500) print $1/1024 «MB» » » $2 }’ |tail -n 10

/PATH/TO/folder — это путь к директории сайта относительно корневой. Этот путь может быть не такой очевидный, это не просто www/domain.com. Этот путь можно подсмотреть в файле config.php если у вас магазин на Opencart это путь после строки // DIR define(‘DIR_APPLICATION’

В моем случае этот путь был /var/www/domain.com.ua/data/www/domain.com.ua/

tail -n 10 — отвечает за то, сколько наибольших файлов выводить. В примере 10.

Больше интересных команд можно найти тут или погуглив команды сервера linux

Мой опыт

В моем случае наибольшими файлами оказались файл ошибок магазина Opencart /system/storage/logs/error.log, а также архив с картинками во вложенной директории, который я забыл удалить, когда заливал в магазин.

Если бы я их не удалил, то еще пришлось бы долго платить за «воздух». Ну и как оказалось — не все так сложно, не обязательно привлекать программистов, чтобы решить простую и тривиальную задачу.

UPDATE

В комментариях посоветовали способ попроще — утилиту ncdu.