Если вам нужно сохранить много избыточных данных (я.е., резервные копии файлов, база данных) на вашем компьютере, то функция копирования при записи (CoW) и дедупликации файловой системы Btrfs может сэкономить огромное количество дискового пространства.
В этой статье я покажу вам, как сэкономить дисковое пространство с помощью функции дедупликации Btrfs. Итак, приступим.
Предпосылки:
Чтобы попробовать примеры из этой статьи,
- На вашем компьютере должна быть установлена файловая система Btrfs.
- У вас должен быть жесткий диск или SSD с как минимум 1 свободным разделом (любого размера).
У меня жесткий диск 20 ГБ SDB на моей машине Ubuntu. Я создал 2 раздела sdb1 а также sdb2, на этом жестком диске. Я буду использовать перегородку sdb1 в этой статье.
$ sudo lsblk -e7
Имя вашего жесткого диска или SSD может отличаться от моего, как и разделы. Так что не забудьте заменить их теперь своими.
Если вам нужна помощь по установке файловой системы Btrfs в Ubuntu, ознакомьтесь с моей статьей Установите и используйте Btrfs в Ubuntu 20.04 LTS.
Если вам нужна помощь по установке файловой системы Btrfs в Fedora, ознакомьтесь с моей статьей Установите и используйте Btrfs в Fedora 33.
Создание файловой системы Btrfs:
Чтобы поэкспериментировать со сжатием данных на уровне файловой системы Btrfs, вам необходимо создать файловую систему Btrfs.
Чтобы создать файловую систему Btrfs с меткой данные на sdb1 раздел, выполните следующую команду:
$ sudo mkfs.btrfs -L данные / dev / sdb1
Смонтируйте файловую систему Btrfs:
Создать каталог /данные с помощью следующей команды:
$ sudo mkdir -v / данные
Чтобы смонтировать файловую систему Btrfs, созданную на sdb1 раздел на /данные каталог, выполните следующую команду:
$ sudo mount / dev / sdb1 / данные
Файловая система Btrfs должна быть смонтирована, как вы можете видеть на скриншоте ниже.
$ df -h / данные
Установка инструментов дедупликации в Ubuntu 20.04 LTS:
Для дедупликации файловой системы Btrfs необходимо установить тупить программа на вашем компьютере.
Если вы используете Ubuntu 20.04 LTS, тогда вы можете установить тупить из официального репозитория пакетов Ubuntu.
Сначала обновите кеш репозитория пакетов APT с помощью следующей команды:
$ sudo подходящее обновление
Установите тупить пакет с помощью следующей команды:
$ sudo apt install duperemove -y
В тупить пакет должен быть установлен.
Установка инструментов дедупликации в Fedora 33:
Для дедупликации файловой системы Btrfs необходимо установить тупить программа на вашем компьютере.
Если вы используете Fedora 33, вы можете установить тупить из официального репозитория пакетов Fedora.
Сначала обновите кеш репозитория пакетов DNF с помощью следующей команды:
$ sudo dnf makecache
Установите тупить пакет с помощью следующей команды:
$ sudo dnf install duperemove
Для подтверждения установки нажмите Y а затем нажмите
В тупить пакет должен быть установлен.
Тестирование дедупликации в файловой системе Btrfs:
В этом разделе я собираюсь провести простой тест, чтобы показать вам, как функция дедупликации файловой системы Btrfs удаляет избыточные данные из файловой системы и экономит место на диске.
Как вы видете,
- Я скопировал файл QGIS-OSGeo4W-3.14.0-1-Настройка-x86_64.EXE к /данные каталог. Файл 407 МБ по размеру.
- Файл, хранящийся на /данные каталог имеет размер 407 МБ.
- Только файл израсходован около 412 МБ дискового пространства из файловой системы Btrfs, смонтированной на /данные каталог.
Как вы видете,
- Я скопировал тот же файл в /данные каталог и переименовал его в QGIS-OSGeo4W-3.14.0-1-Настройка-x86_64.2.EXE.
- Файл, хранящийся на /данные каталог сейчас 814 МБ по размеру.
- Файлы, использованные около 820 МБ дискового пространства из файловой системы Btrfs, смонтированной на /данные каталог.
Чтобы выполнить операцию дедупликации в файловой системе Btrfs, смонтированной на /данные каталог, выполните следующую команду:
$ sudo duperemove -dr / данные
Резервные блоки данных из файловой системы Btrfs, смонтированные на /данные каталог должен быть удален.
Как вы видете,
- У меня есть файлы QGIS-OSGeo4W-3.14.0-1-Настройка-x86_64.EXE а также QGIS-OSGeo4W-3.14.0-1-Настройка-x86_64.2.EXE в /данные каталог.
- Файл, хранящийся на /данные каталог сейчас 814 МБ по размеру.
- Файлы, использованные около 412 МБ дискового пространства из файловой системы Btrfs, смонтированной на /данные каталог.
В тупить программа удалила избыточные (повторяющиеся) блоки данных из файловой системы Btrfs, смонтированной на /данные каталог и сэкономил много дискового пространства.
Автоматическое монтирование файловой системы Btrfs при загрузке:
Чтобы смонтировать файловую систему Btrfs, которую вы создали, вам необходимо знать UUID файловой системы Btrfs.
Вы можете найти UUID файловой системы Btrfs, смонтированной на /данные каталог с помощью следующей команды:
Показать / данные файловой системы $ sudo btrfs
Как видите, UUID файловой системы Btrfs, которую я хочу смонтировать во время загрузки, равен e39ac376-90dd-4c39-84d2-e77abb5e3059. Для тебя будет иначе. Так что не забудьте заменить его теперь своим.
Открой / etc / fstab файл с нано текстовый редактор следующим образом:
$ sudo nano / etc / fstab
Введите следующую строку в конце / etc / fstab файл:
UUID = e39ac376-90dd-4c39-84d2-e77abb5e3059 / data btrfs по умолчанию 0 0ПРИМЕЧАНИЕ: Замените UUID файловой системы Btrfs своим. Также измените параметр монтирования и алгоритм сжатия по своему усмотрению.
Когда вы закончите, нажмите
Чтобы изменения вступили в силу, перезагрузите компьютер с помощью следующей команды:
$ sudo перезагрузка
После загрузки компьютера файловая система Btrfs должна быть смонтирована в / каталог данных, как вы можете видеть на скриншоте ниже.
$ df -h / данные
Автоматически выполнять дедупликацию с помощью Cron Job:
Чтобы удалить избыточные данные из файловой системы Btrfs, вы должны запустить тупить командовать время от времени.
Вы можете автоматически запустить тупить управлять ежечасно, ежедневно, еженедельно, ежемесячно, ежегодно или во время загрузки с помощью задания cron.
Сначала найдите полный путь тупить команду со следующей командой:
$ которые тупят удалить
Как видите, полный путь тупить команда / usr / bin / duperemove. Запомните путь, он понадобится вам позже.
Чтобы отредактировать файл crontab, выполните следующую команду:
$ sudo crontab -e
Выберите понравившийся текстовый редактор и нажмите
Я буду использовать нано Текстовый редактор. Итак, я наберу 1 и нажмите
Файл crontab должен быть открыт.
Чтобы запустить тупить команда на /данные каталог каждый час, добавьте следующую строку в конец файла crontab.
@hourly / usr / bin / duperemove -dr / data >> / var / log / duperemove.бревно
Чтобы запустить тупить команда на /данные каталог каждый день, добавляйте следующую строку в конец файла crontab.
@daily / usr / bin / duperemove -dr / data >> / var / log / duperemove.бревно
Чтобы запустить тупить команда на /данные каталог каждую неделю, добавляйте следующую строку в конец файла crontab.
@weekly / usr / bin / duperemove -dr / data >> / var / log / duperemove.бревно
Чтобы запустить тупить команда на /данные каталог каждый месяц, добавляйте следующую строку в конец файла crontab.
@monthly / usr / bin / duperemove -dr / data >> / var / log / duperemove.бревно
Чтобы запустить тупить команда на /данные каталог каждый год, добавляйте следующую строку в конец файла crontab.
@ год / usr / bin / duperemove -dr / data >> / var / log / duperemove.бревно
Чтобы запустить тупить команда на /данные каталог во время загрузки, добавьте следующую строку в конец файла crontab.
@reboot / usr / bin / duperemove -dr / data >> / var / log / duperemove.бревно
ПРИМЕЧАНИЕ: Я буду управлять тупить команда во время загрузки в этой статье.
Когда вы закончите, нажмите
Должно быть установлено новое задание cron.
Чтобы изменения вступили в силу, перезагрузите компьютер с помощью следующей команды:
$ sudo перезагрузка
Как тупить команда работает в фоновом режиме, вывод команды будет сохранен в / var / log / duperemove.бревно файл.
$ sudo ls -lh / var / log / duperemove *
Как видите, / var / log / duperemove.бревно файл содержит тупить данные журнала. Это означает, что cron работает нормально.
Заключение:
В этой статье я показал вам, как установить тупить Инструмент дедупликации Brtfs в Ubuntu 20.04 LTS и Fedora 33. Я также показал вам, как выполнить дедупликацию Btrfs с помощью инструмента duperemove и автоматически запустить инструмент duperemove с помощью задания cron.