Я хочу обновить файл .deb с последним содержимым из доступного обновления. Я искал и нашел apt-sync
программу, однако, этоapt-синхронизацияпроект, похоже, мертв.
Есть ли какая-то альтернатива? Или это перенесено в другое место? Или как мне добиться того же результата?
решение1
В настоящее время я следую этой процедуре.
- Войти в мойКодированиеоблачное пространство.
- Запустите терминал и загрузите deb-файл пакета с помощью
apt-get download
. - Извлеките загруженный файл .deb, используя
dpkg-deb -R <deb-file> .
для получения содержимого файла. - Переместите содержимое в подходящий каталог. Например,
/home/anwarshah/contents
- На локальном компьютере извлеките содержимое старого deb-файла в каталог, желательно в каталог с тем же удаленным именем, например
contents
. Используйте
rsync
для синхронизации содержимогоrsync -a -i -h -v -c <myusername@myusername>.koding.io:/home/<myusername>/contents/ /home/anwar/contents/
Теперь соберите новый синхронизированный пакет, используя
dpkg-deb
dpkg-deb --build /home/anwar/contents
Будет создан новый файл .deb с именем
contents.deb
. Переименуйте его в стандартный формат пакета, используяdpkg-name
dpkg-name contents.deb
Теперь у меня есть файл .deb с последним содержимым без необходимости загружать дополнительные избыточные данные. Это было очень полезно для больших пакетов с мультимедийными данными, такими как
kde-wallpapers
и т. д.
Альтернативный способ
- Найдите облачную виртуальную машину, с которой можно загрузить файлы .deb.
- Используйте
zsyncmake
для создания файла .deb.zsync - Используйте
zsync
для загрузки файла .deb после того, как сделаете файл доступным для загрузки. Обязательно прочтитеруководство по zsync.
Zsync — это программа, похожая на rsync, которая направлена на сокращение объема данных, необходимых для загрузки сжатых файлов. По сути, она обновляет большой сжатый файл последним содержимым этого сжатого файла из Интернета. Ubuntu предоставляет .iso.zsync для своих ISO, что эффективно для экономии некоторой (около 35%) пропускной способности, если у вас уже есть локальный ISO.