GNU/Linux >> Belajar Linux >  >> Ubuntu

Ubuntu - Folder Modul Lib yang Dihapus Setelah Setiap Reboot?

uname -r:4.13.0-16-generic (server ubuntu 17.10)

Saya memiliki masalah bahwa iptables tidak berfungsi setelah reboot:

iptables-apply /etc/network/iptables
[ ok ] Stopping fail2ban (via systemctl): fail2ban.service.
Applying new iptables rules from '/etc/network/iptables'... modprobe: FATAL: Module ip_tables not found in directory /lib/modules/4.13.0-16-generic
iptables-restore v1.6.1: iptables-restore: unable to initialize table 'filter'

Error occurred at line: 3
Try `iptables-restore -h' or 'iptables-restore --help' for more information.
failed.
Error: unknown error applying new iptables rules: /etc/network/iptables
Reverting to old iptables rules... done.

Saya sudah mencoba menginstal ulang kernel dan iptables:

apt install --reinstall linux-generic linux-image-4.13.0-16-generic linux-image-extra-4.13.0-16-generic linux-headers-4.13.0-16-generic iptables

ketika saya menginstal ulang (tanpa reboot) iptables berfungsi setelah layanan dimulai ulang.

ketika saya me-reboot mesin saya mendapatkan kesalahan yang sama lagi.

Saya perhatikan bahwa dengan setiap reboot folder berikut hilang:

/lib/modules/4.13.0-16-generic/kernel/net/ipv4/netfilter

hanya tersisa 2 file di folder ipv4 yaitu:
gre.ko udp_tunnel.ko

menyalin file yang hilang ke lokasi ini tidak berhasil, akan dihapus dengan reboot berikutnya.

Adakah yang tahu cara memperbaikinya?

Jawaban yang Diterima:

Saya mendapatkan hal yang sama di Ubuntu 16.04. Saya tidak memiliki perbaikan, tetapi saya memiliki beberapa wawasan tentang mengapa ini terjadi. Selama proses pembukuan, sistem awalnya melakukan booting pada sistem file berbasis RAM:initramfs. Kemudian dalam proses boot, hard disk mengambil alih, tetapi direktori modul dari initramfs dipasang pada direktori modul hard disk. Perhatikan bahwa output dari mount termasuk baris:

copymods on /lib/modules type tmpfs (rw,relatime)

Oke, jadi ada perubahan pada /lib/modules, mis. dengan mengeksekusi

sudo apt-get install --reinstall linux-image-$(uname -r)

akan hilang ketika sistem di-boot ulang. Jadi bagaimana ini seharusnya bekerja? Nah, ketika apt install perintah menambahkan modul baru, itu harus menempatkan entri yang sesuai di /usr/share/initramfs-tools/hooks . Kemudian script installer yang apt install memanggil menjalankan update-initramfs , yang menghasilkan arsip CPIO /boot/initrd.img-(uname -r) yang merupakan gambar initramfs Anda, yang sekarang seharusnya berisi modul yang diperlukan agar iptables berfungsi saat sistem di-boot ulang.

Bugnya adalah bahwa entri yang relevan tidak pernah benar-benar dibuat di /usr/share/initramfs-tools/hooks , dan karenanya entri yang relevan tidak dibuat di initramfs, dan karenanya tidak disimpan saat sistem di-boot ulang.

Pada titik ini saya terjebak.


Ubuntu
  1. Cara Menginstal SSHGuard di Ubuntu

  2. Mouse Lag Setelah Memutakhirkan Ke Ubuntu 14.04?

  3. Ubuntu 18.10 (Virtualbox tamu) - Layar Hitam Setelah Menginstal Penambahan Tamu Dan Reboot?

  1. Ubuntu 16.04 Tidak Ada Wifi Setelah Ditangguhkan?

  2. Bios Tidak Mendeteksi SSD Setelah Reboot Dari Ubuntu 16.04 (dell Xps 15)?

  3. Apa yang menyebabkan iptables memuat setiap kali setelah reboot bahkan ketika itu benar-benar dimatikan?

  1. Konfigurasi Firewall menggunakan Iptables di Ubuntu 14.04

  2. Pengaturan Server Nvidia X Hilang Saat Setiap Reboot?

  3. Ufw Tetap Dinonaktifkan Setelah Reboot Menggunakan Ubuntu Server 16.04?