Eu acidentalmente substituí /lib/modules/4.4.0-116-generic/kernel/drivers/usb/serial/usbserial.ko no Ubuntu 14.04. Como posso recuperar isso?
Responder1
Simplesmente reinstale o pacote que contém o arquivo.
Para descobrir o que o pacote contém /lib/modules/4.4.0-116-generic/kernel/drivers/usb/serial/usbserial.ko
, execute:
dpkg -S /lib/modules/4.4.0-116-generic/kernel/drivers/usb/serial/usbserial.ko
Isso deve gerar (no seu caso):
linux-image-4.4.0-116-generic: /lib/modules/4.4.0-116-generic/kernel/drivers/usb/serial/usbserial.ko
Basta reinstalar o pacote:
sudo apt-get install --reinstall linux-image-4.4.0-116-generic
Se isso não resolver o problema:
sudo apt-get purge linux-image-4.4.0-116-generic
sudo apt-get install linux-image-4.4.0-116-generic
Responder2
Como não parece que a instalação esteja ajudando, acho que você pode tentar baixar manualmente o kernel, extrair os arquivos e copiá-los manualmente.
Baixe o kernel para o /tmp
diretório:
cd /tmp
apt download linux-image-extra-4.4.0-116-generic
A seguir, extraia os arquivos do .deb
arquivo baixado:
ar -x linux-image-extra-4.4.0-116-generic_4.4.0-116.140_amd64.deb
Agora, extraia o data.tar.gz
conteúdo:
tar xvf data.tar.gz
Agora você deve conseguir copiar o arquivo ausente de volta para sua pasta.
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/
Obrigado @Olorin por um comando legal de uma string depois de baixar o arquivo do kernel usando dpkg-deb
para extrair o arquivo e colocá-lo na pasta de designação:
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 /
Em seguida, limpe sua /tmp
pasta ou uma reinicialização irá limpá-la:
Espero que isto ajude!