GNU/Linux >> Belajar Linux >  >> Linux

Apakah Linux memerlukan pembersihan sesekali?

Jika Anda cukup umur untuk menggunakan komputer pada pertengahan 2000-an (hanya satu dekade yang tepat), dan Anda kebetulan menjalankan Windows dan Linux, dan, sebagai seorang nerd, Anda juga berpartisipasi dalam diskusi tentang manfaat sistem operasi ini daripada itu. , maka Anda pasti menemukan pernyataan berikut:Anda tidak perlu melakukan pemeliharaan sistem apa pun di Linux, cukup pintar untuk menangani semuanya sendiri.

Memang, di sisi Windows, sering ada pembicaraan tentang sistem yang semakin lambat dari waktu ke waktu, kebutuhan yang mendesak untuk defragmentasi (dalam NTFS sebagai lawan Ext3), pembersihan file sementara, dan semacamnya. Linux sering disebut-sebut sebagai bebas perawatan. Sekarang, pertanyaannya adalah, seberapa benar pernyataan ini sebenarnya? Saya sebenarnya memiliki kesempatan untuk mengujinya sendiri, melalui kesempatan sementara.

Apa yang terjadi?

Saya sedang melakukan beberapa instalasi dan penghapusan paket di instance Kubuntu 18.04 di Slimbook saya, dan tiba-tiba, operasi gagal. Apt, manajer paket (baris perintah) memberi tahu saya bahwa itu tidak dapat menyelesaikan operasi, karena tidak ada ruang tersisa di perangkat [sic]. Apa.

gzip:stdout:Tidak ada ruang tersisa di perangkat
E:mkinitramfs failure find 141 cpio 141 gzip 1
update-initramfs:failed for /boot/initrd.img-4.15.0-163-generic dengan 1.
dpkg:paket pemrosesan error initramfs-tools (--configure):
paket initramfs-tools terinstal subproses skrip pasca-instalasi mengembalikan status error keluar 1
Terdapat error saat memproses:
linux-image-4.15.0-166-generik
initramfs-tools

Hal yang menarik di sini adalah:Saya bekerja dengan normal, tidak ada gangguan. Ada ruang di disk saya, meskipun relatif kecil (dan lebih kecil dari yang saya kira, tetapi masih tersisa ~20GB di SSD 500GB), dan yang lebih penting, TIDAK ADA pesan atau peringatan dari sistem bahwa ada masalah.

Tapi kemudian, saya memeriksa isi dari partisi /boot, dan lihatlah:

df -lh /boot
Ukuran Sistem File yang Digunakan Tersedia Penggunaan% Dipasang pada
/dev/sda2 705M 705M 0M 100% /boot

Apa. Untuk beberapa alasan aneh, partisi /boot saya yang tidak signifikan telah terisi penuh, yang berarti setiap operasi kernel atau initramfs mulai sekarang akan gagal. Ini bukan hal yang baik, terutama ketika saya memikirkan, hei, bagaimana jika ada pembaruan kernel?

Saya kemudian memutuskan untuk menjalankan perintah "autoremove" untuk apt, yang membersihkan paket yang tidak digunakan. Setelah beberapa menit pembersihan yang ketat, situasinya kembali normal:

df -lh /boot
Ukuran Sistem File yang Digunakan Tersedia Penggunaan% Dipasang pada
/dev/sda2 705M 155M 500M 24% /boot

Pelajarannya di sini

Ternyata, dengan pengaturan enkripsi disk penuh, yang tidak dapat saya kendalikan ketika diterapkan oleh penginstal tiga tahun yang lalu, karena ukuran partisi yang berbeda dan semacamnya diatur secara otomatis, saya akhirnya kehabisan /boot ruang setelah kira-kira 3,5 tahun penggunaan, dengan rangkaian pembaruan kernel khas keluarga Ubuntu.

Sekarang, tentu saja, obatnya sudah jelas - bersihkan paket yang tidak digunakan sesekali. Agar adil, apt SELALU memberi tahu Anda ini ketika Anda menjalankan perintah pemeliharaan apa pun. Ini memberitahu Anda bahwa ada banyak hal yang dapat dihapus, yang seharusnya memangkas penggunaan disk. Di baris perintah.

Tetapi. Tetapi. Tidak ada pesan seperti itu yang pernah ditampilkan saat menjalankan manajer paket GUI seperti say Discover. Ini berarti bahwa orang biasa yang menggunakan Linux dengan gaya desktop klasik, yaitu TIDAK ADA sihir baris perintah, pada akhirnya akan berakhir dengan masalah yang tidak terlalu bebas perawatan pada mesin Linux mereka, jika mereka terus menggunakannya cukup lama.

Sebagai bagian dari pembersihan saya, saya juga menjalankan ncdu, dan menemukan segala macam kerusakan pada disk, termasuk banyak sisa di bawah /var, wadah dan mesin virtual yang sudah lama tidak digunakan dan tidak pernah dibersihkan oleh layanan masing-masing. Sekali lagi, sesuatu yang dapat diperbaiki dengan pemikiran ke depan, yang akan mencakup:a) pemisahan yang lebih baik dari direktori sistem inti dari file pengguna (tidak menyimpan mesin virtual di bawah /var) b) pembersihan otomatis yang lebih baik c) peringatan dan pemberitahuan aktual kepada pengguna akhir .

Saya telah menyoroti masalah keseluruhan dari kesadaran lintas layanan yang terbatas di Linux sejak lama. Tidak ada kohesi sejati. Jika sistem Anda macet di loop boot, tidak ada yang akan memutus loop ini kecuali Anda campur tangan secara manual. Jika ada layanan yang memperlambat sistem, potongan kode yang bermasalah, sesuatu yang tidak terintegrasi dengan baik dengan sistem, tidak ada yang perlu diberitahukan kepada Anda. Semuanya hidup di ruangnya sendiri, dan lebih buruk lagi, tanpa mekanisme pemeriksaan diri atau penyembuhan diri.

Kesimpulan

Ini adalah cerita anekdot kecil saya. Untuk pertama kalinya, saya mengalami masalah. Sebelumnya, saya akan menggunakan partisi root tunggal untuk sistem saya, tanpa enkripsi disk, yang berarti bahwa /boot dapat diperluas seperti sistem itu sendiri, sehingga ruang setelah pembaruan tidak pernah menjadi masalah. Tapi di sini, saya menemukan sesuatu yang bisa dan akan menggigit orang yang menggunakan sistem mereka dengan cara yang tidak kutu buku (melalui GUI) dan tidak melakukan pekerjaan pemeliharaan manual.

Solusi sebenarnya adalah membuat sistem Linux lebih tangguh dan memiliki manajemen kesalahan yang jauh lebih baik, untuk setiap layanan atau programnya sendiri, dan kemudian di seluruh sistem. Itu juga akan membantu menyelesaikan banyak masalah dan bug lain yang sering tidak terdeteksi atau tidak dilaporkan, karena orang tidak memiliki alat untuk mencari tahu apa yang salah, atau bagaimana komponen yang berbeda berinteraksi. Nah, itu dia. Mungkin Anda akan menemukan ini menarik. Sampai jumpa.


Linux
  1. Memecahkan masalah WiFi lambat di Linux

  2. Linux – Bagaimana Cara Memeriksa Informasi Struktur Direktori File Unix/linux?

  3. Linux – Apakah Kernel Perlu Dikompilasi di Lingkungan Dev yang Sama Dengan Userspace?

  1. Kisah Linux keluarga saya

  2. Apa itu server Linux dan mengapa bisnis Anda membutuhkannya?

  3. Perencanaan kapasitas Linux:5 hal yang perlu Anda lakukan

  1. 3 rilis Linux favorit saya

  2. Dasar-dasar perintah Linux:printf

  3. Laptop yang rusak:Pemulihan Linux