Como posso fazer isso sem reinstalar o restante dos arquivos também?
Como posso fazer isso sem reinstalar o restante dos arquivos também?
Respostas:
Faça o download do pacote, por exemplo transmission-daemon
, com
sudo apt-get --download-only install transmission-daemon
desembale a embalagem com
mkdir ~/dummy
dpkg-deb -x /var/cache/apt/archives/transmission-daemon_*.deb ~/dummy
restaurar o arquivo, por exemplo /etc/init.d/transmission-daemon
sudo cp ~/dummy/etc/init.d/transmission-daemon /etc/init.d
remova o dir
rm -rf ~/dummy
dpkg-deb --fsys-tarfile
e tar
, assim:dpkg-deb --fsys-tarfile "$package"*.deb | tar -x ./path/to/file
/tmp/dummy
parece mais conveniente ~/dummy
e necessário removê-lo.
apt-get download
pois apt-get --download-only install
irá parar se o pacote já estiver instalado. Conforme indicado pela resposta de camypaj.
nginx
's worker_processes
configuração em uma gama de máquinas. Então eu vim com o seguinte comando: 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
.
Eu sei que isso é um pouco antigo, mas aqui está a minha melhoria:
$ sudo apt-get download <package-name>
ao invés de
$ sudo apt-get --download-only install <package-name>
Eu tinha uma situação em que o pacote já estava instalado (portanto, a solução proposta não funcionava) e queria restaurar apenas um arquivo de configuração, a fim de corrigir o problema.
Felicidades
/var/cache/apt/archives/
e não é necessário fazer o download.
apt-get download
downloads para o diretório de trabalho atual.