
我不小心在 Ubuntu 14.04 上覆蓋了 /lib/modules/4.4.0-116-generic/kernel/drivers/usb/serial/usbserial.ko 。我怎麼才能拿回這個?
答案1
只需重新安裝包含該文件的軟體包即可。
若要尋找套件包含的內容/lib/modules/4.4.0-116-generic/kernel/drivers/usb/serial/usbserial.ko
,請執行:
dpkg -S /lib/modules/4.4.0-116-generic/kernel/drivers/usb/serial/usbserial.ko
這應該輸出(在你的情況下):
linux-image-4.4.0-116-generic: /lib/modules/4.4.0-116-generic/kernel/drivers/usb/serial/usbserial.ko
只需重新安裝軟體包:
sudo apt-get install --reinstall linux-image-4.4.0-116-generic
如果這不能解決問題:
sudo apt-get purge linux-image-4.4.0-116-generic
sudo apt-get install linux-image-4.4.0-116-generic
答案2
由於安裝似乎沒有幫助,我想您可以嘗試手動下載內核,提取文件,然後手動複製文件。
下載核心到目錄/tmp
:
cd /tmp
apt download linux-image-extra-4.4.0-116-generic
接下來,從下載的文件中提取文件.deb
:
ar -x linux-image-extra-4.4.0-116-generic_4.4.0-116.140_amd64.deb
現在,提取data.tar.gz
內容:
tar xvf data.tar.gz
現在您應該能夠將遺失的檔案複製回您的資料夾。
sudo cp /tmp/lib/modules/4.4.0-116-generic/kernel/drivers/usb/serial/usbserial.ko /lib/modules/4.4.0-116-generic/kernel/drivers/usb/serial/
感謝@Olorin 在下載內核檔案後提供了一個很酷的一串命令,用於dpkg-deb
提取一個檔案並將其放入指定資料夾中:
dpkg-deb --fsys-tarfile linux-image-extra-4.4.0-116-generic_4.4.0-116.140_amd64.deb | sudo tar xv ./lib/modules/4.4.0-116-generic/kernel/drivers/usb/serial/usbserial.ko -C /
然後清理您的/tmp
資料夾或重新啟動將清理它:
希望這可以幫助!