
Я намеренно оставил название неопределенным, поскольку мне все равно, использовать ли конкретно FTP или gz, если какой-либо другой инструмент будет работать лучше.
У меня много данных, к которым я обращаюсь очень редко (фильмы, которые я смотрел, резервные копии и т. д.), которые я хочу хранить на домашнем FTP-сервере. Я хочу автоматически сжимать все файлы, которые я загружаю на сервер, и автоматически распаковывать их при загрузке файлов. Я знаю, что могу просто использовать cron
with gzip -r
на сервере и gzip -rd
все, что я загружаю, но я бы предпочел, чтобы сервер был настроен делать это сам, без проблем, так что я мог бы использовать его так, как будто файлы хранятся в распакованном виде.
Есть ли у FTPD или другого файлового сервера такая функция? Бонусный балл, если сервер сохраняет распакованный файл во временном хранилище до полной передачи, поэтому такие вещи, как потоковая передача по FTP (с использованием VLC), работают без проблем.
решение1
Самым простым решением было бы создать сжатую файловую систему на BTRFS или ZFS. Я думаю, что есть и другие файловые системы Linux, которые поддерживают сжатие, но я не уверен. Затем скопируйте туда свои данные. Файлы будут автоматически сжиматься и распаковываться при доступе сервером.
Вы упомянули хранение фильмов и резервных копий. Если предположить, что эти файлы уже сжаты (медиа по формату/кодеку), вы не сэкономите много места. То же самое касается многих других форматов, таких как изображения, аудио, электронные книги и т. д.
Кстати, Windows NTFS также имеет опцию сжатия.
решение2
Я использую Truenas для настройки сетевого сервера. Я собрал его из частей моего старого настольного компьютера. По умолчанию файловая система (ZFS) или «пул» имеет некоторый уровень сжатия (я думаю, что это в основном полезно для файлов журналов и т. п.).
Он также допускает более сложные «решения по сжатию», такие как дедупликация, когда вы можете заставить его просматривать таблицу дедупликации, которую вы можете хранить, например, на SSD RAID, где он будет просматривать хэши блоков данных. Я также считаю, что это решение требует, чтобы ваш NAS имел определенный объем свободной памяти для работы этой конкретной функции. Эта система имеет смысл только для очень специфических случаев использования и вводит больше частей в систему, поэтому не обязательно начинать ее использовать, если вы не уверены, что она подойдет для вашего конкретного случая использования.
Для видеофайлов я использую Tidarr. Я запускаю его на своем игровом компьютере, где он просматривает мои видеофайлы, и если я создам видеофайл не в формате H.265, он автоматически закодирует его без моих дополнительных действий после того, как я все настрою.