# Практическая работа. Чистка файловой системы.
**Цель работы**
* определить алгоритм для чистки файловой системы
---
### 1. Чистка пакетов через apt.
`sudo apt autoremove`
> Команда выполнит очистку пакетов, которые были автоматически установлены для удовлетворения зависимостей других пакетов и которые больше не нужны в качестве зависимостей
`sudo apt clean`
> Команда удаляет (очищает) оставшиеся пакеты в каталоге /var/cache/
---
### 2. Чистка рекомендуемых пакетов.
`sudo apt install aptitude`
`sudo aptitude search '?and(?automatic(?reverse-recommends(?installed)), ?not(?automatic(?reverse-depends(?installed))))'`
> Команда позволяет определить (чтобы потом самостоятельно удалить) рекомендуемые пакеты, которые вместе с зависимостями устанавливаются вслед за любой программой.
Алгоритм поиска у text-based версии пакетного менеджера основан на использовании [поисковых шаблонов](https://www.debian.org/doc/manuals/aptitude/ch02s04s05.ru.html), которые позволяют находить пакеты на основе соответствий прописываемым условиям, синтаксис которых начинается с `?`. Данный поиск подразумевает соответствие двум вложенным условиям:
?automatic(?reverse-recommends(?installed)) - пакеты, которые были установлены автоматически и которые являются рекомендованными пакетыми в отношении установленных.
?not(?automatic(?reverse-depends(?installed))) - пакеты, которые были установлены не автоматически и которые являются зависимыми пакетами в отношении установленных.
---
### 3. Удаление файлов логов.
`sudo du -h /var/log`

> Команда позволяет вывести большую часть файлов логов, которые могут занимать сотни МиБ, поэтому логи тоже нужно вовремя чистить
---
### 4. Удаление больших файлов/директорий с помощью утилиты ncdu.
`sudo apt install ncdu`
`ncdu /`

> Утилита представляет собой tui-программу, которая
позволяет в удобном интерфейсе просмотреть переполненность дискового пространства и удалить лишние файлы. Управление:
`↑` и `k` - вверх
`↓` и `j` - вниз
`→` и `etner` - перейти в каталог
`←`, `<` и `h` - выйти из каталога
`n` - сортировка по имени
`s` - сортировка по размеру
`C` - сортировка по количеству файлов
`M` - сортировка по времени модификации
`d` - удаление файлов или директорий
`t` - переключение приоритета при сортировке