Как я могу сделать это без переустановки остальных файлов?
Как я могу сделать это без переустановки остальных файлов?
Ответы:
Скачайте пакет, например transmission-daemon, с
sudo apt-get --download-only install transmission-daemon
распаковать пакет с
mkdir ~/dummy
dpkg-deb -x /var/cache/apt/archives/transmission-daemon_*.deb ~/dummy
восстановить файл, например /etc/init.d/transmission-daemon
sudo cp ~/dummy/etc/init.d/transmission-daemon /etc/init.d
удалить каталог
rm -rf ~/dummy
dpkg-deb --fsys-tarfileи tar, например, так:dpkg-deb --fsys-tarfile "$package"*.deb | tar -x ./path/to/file
/tmp/dummyкажется более удобным, что ~/dummyи необходимость его удалить.
apt-get downloadпоскольку apt-get --download-only installостановится, если пакет уже установлен. Как указано в ответе Камипая.
nginx«S worker_processesустановок на ряде машин. Поэтому я придумал следующую команду: for f in /var/cache/apt/archives/nginx-common*; do dpkg-deb --fsys-tarfile "$f" | tar xO ./etc/nginx/nginx.conf | grep worker_processes; done.
Я знаю, что это немного устарело, но вот мое улучшение:
$ sudo apt-get download <package-name>
вместо того
$ sudo apt-get --download-only install <package-name>
У меня была ситуация, когда пакет уже был установлен (следовательно, предлагаемое решение не работало), и я хотел восстановить только один файл конфигурации, чтобы решить проблему.
ура
/var/cache/apt/archives/и вам не нужно его загружать.
apt-get downloadзагружается в текущий рабочий каталог.