mirror of
https://git.selfprivacy.org/SelfPrivacy/selfprivacy.org.git
synced 2024-11-09 18:33:13 +00:00
130 lines
7.4 KiB
Markdown
130 lines
7.4 KiB
Markdown
---
|
||
title: "Как вручную освободить место на сервере"
|
||
linkTitle: "Ручное освобождение места на диске"
|
||
weight: 2
|
||
date: 2023-04-21
|
||
description: >
|
||
Ручная очистка может потребоваться, если вам нужно больше свободного места на системном разделе.
|
||
---
|
||
|
||
|
||
{{% 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.
|