
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/
カーネル ファイルをダウンロードした後、dpkg-deb
1 つのファイルを抽出して指定のフォルダーに配置するために使用する、クールな 1 つの文字列コマンドを教えてくれた @Olorin に感謝します。
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
か、再起動するとクリーンアップされます。
お役に立てれば!