पैकेज से किसी एकल फ़ाइल को कैसे पुनर्स्थापित करें?


जवाबों:


21

उदाहरण के लिए 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

2
यह भी ध्यान दिया जाना चाहिए कि apt-get downloadवर्तमान कार्य निर्देशिका में डाउनलोड.

4
आप एक पाइप लाइन का उपयोग करके पूरे संग्रह को निकालने से बच सकते हैं dpkg-deb --fsys-tarfileऔर tar, जैसे:dpkg-deb --fsys-tarfile "$package"*.deb | tar -x ./path/to/file
kojiro

1
/tmp/dummyअधिक सुविधाजनक लगता है कि ~/dummyऔर इसे हटाने की जरूरत है।
कार्ल रिक्टर

पसंद करते हैं apt-get downloadक्योंकि apt-get --download-only installइच्छा रोक पैकेज पहले से स्थापित है, तो। जैसा कि कैमिपाज के जवाब से संकेत मिलता है।
जूलियन कार्सिक

Kojiro की टिप्पणी पर विस्तार करने के लिए, मैं क्या का डिफ़ॉल्ट मान है को देखने के लिए किया था nginxकी 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:।
x-yuri

12

मुझे पता है कि यह थोड़ा पुराना है, लेकिन यहाँ मेरा सुधार है:

$ sudo apt-get download <package-name>

के बजाय

$ sudo apt-get --download-only install <package-name>

मेरे पास एक ऐसी स्थिति थी जहां पैकेज पहले से ही स्थापित था (इसलिए, प्रस्तावित समाधान काम नहीं करता था), और मैं समस्या को ठीक करने के लिए सिर्फ एक कॉन्फ़िगरेशन फ़ाइल को पुनर्स्थापित करना चाहता था।

चियर्स


3
यदि आपके पास पहले से ही एक पैकेज है तो यह आम तौर पर पाया जाता है /var/cache/apt/archives/और आपको इसे डाउनलोड नहीं करना चाहिए।
अहमद मसूद

2
हां, लेकिन केवल अगर पैकेज अपेक्षाकृत हाल ही में स्थापित किया गया था, और अभिलेखागार को मैन्युअल रूप से या स्वचालित रूप से साफ नहीं किया गया है।
joeytwiddle
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.