--- title: "Как вручную освободить место на сервере" linkTitle: "Ручное освобождение места на диске" weight: 2 date: 2023-04-21 description: > Ручная очистка может потребоваться, если вам нужно больше свободного места на системном разделе. categories: ["How-To Guides"] --- {{% pageinfo color="warning" %}} Все команды в этом руководстве выполняются от имени root через подключение SSH. Если у вас нет прав root, смотрите [это руководство](/docs/how-to-guides/root_ssh/) для получения дополнительной информации. Если у вас не осталось свободного места, вы сможете использовать только те SSH-ключи, которые вы ранее добавили. Если у вас закончилось место на диске и вы не добавили ни одного SSH-ключа, обратитесь в службу поддержки SelfPrivacy за дальнейшей помощью. {{% /pageinfo %}} Существует несколько способов очистки дискового пространства вашего сервера. Чтобы проверить, сколько у вас дискового пространства, выполните следующую команду: ```bash df -h ``` В результате будет выведена таблица следующего вида: ``` Filesystem Size Used Avail Use% Mounted on devtmpfs 97M 0 97M 0% /dev tmpfs 969M 52K 969M 1% /dev/shm tmpfs 485M 3.8M 481M 1% /run tmpfs 969M 432K 968M 1% /run/wrappers /dev/sda1 19G 8.2G 9.5G 47% / /dev/sdb 18G 62M 17G 1% /volumes/sdb tmpfs 194M 0 194M 0% /run/user/0 ``` Здесь файловая система, смонтированная на `/` - это ваш системный том. ## Удаление старых состояний NixOS {{% alert title="Предупреждение о нулевом пространстве" color="warning" %}} Этот метод не сработает, если у вас **нет свободного места** на системном томе. Сначала используйте другие методы. {{% /alert %}} NixOS позволяет вам в любое время откатиться к предыдущим состояниям системы за счет дискового пространства. Серверы SelfPrivacy настроены на восстановление дискового пространства путем автоматического удаления старых состояний системы, но удаляются только состояния старше 7 дней, поэтому вы все еще можете использовать функцию отката. Можно вручную удалить все старые состояния системы, и это может дать вам больше столь необходимого дискового пространства. Для этого просто выполните следующую команду от имени root: ```bash nix-collect-garbage -d ``` Эта операция может занять некоторое время, в зависимости от количества состояний системы. После ее завершения вы увидите, сколько места на диске освободилось. ## Удаление старых журналов Журналы иногда могут занимать довольно много места на диске. На серверах SelfPrivacy системные журналы всегда ограничены 500MiB, но это не единственные файлы журналов на вашем сервере. Чтобы проверить, сколько места на диске занимают журналы, выполните следующую команду: ```bash du -h --max-depth=1 /var/log ``` Результат будет выглядеть примерно так: ``` 4.0K /var/log/private 14M /var/log/nginx 499M /var/log/journal 587M /var/log ``` ### Системный журнал Здесь `/var/log/journal` - это системный журнал, куда обычно записывают свои журналы все приложения. Как вы можете видеть в этом примере, они соблюдают ограничение в 500MiB. Если вы хотите очистить *все* системные журналы, выполните следующую команду: ```bash journalctl --rotate && journalctl --vacuum-time=1s ``` Это обычно дает вам около 450 Мб свободного дискового пространства, но ненадолго. Однако этого может быть достаточно для выполнения некоторых команд, которые освободят больше места. ### Журналы Nginx Каталог `/var/log/nginx` содержит журналы веб-сервера Nginx. Если они стали слишком большими, вы можете очистить их, выполнив команду: ```bash rm /var/log/nginx/* && systemctl reload nginx ``` Как вы видите, мы не просто удаляем файлы, но и перезагружаем Nginx. Это происходит потому, что Nginx запутается в отсутствующих лог-файлах, и они не будут воссозданы, пока Nginx не будет перезагружен. ## Удаление старой системы {{% alert color="warning" %}} Эта операция может быть выполнена только один раз за все время существования вашего сервера. Если вы установили SelfPrivacy на собственное оборудование, это может привести к некоторой потере данных. {{% /alert %}} Когда вы устанавливаете SelfPrivacy на сервер, существующая система заменяется на NixOS. Но старая система все еще существует и занимает место на диске, поэтому вы можете откатиться к ней, если захотите. Чтобы определить, сколько места на диске занимает старая система, выполните следующую команду: ```bash du -h --max-depth=1 /old-root/ ``` Если старой системы нет, вы увидите сообщение `du: cannot access '/old-root/': No such file or directory`. Но если у вас есть старая система, вы можете удалить ее, выполнив следующую команду: ```bash rm -rf /old-root/ ``` Это обычно освобождает около 1,8 Гб дискового пространства на типичных серверах SelfPrivacy.