Linux Mint tidak bisa boot setelah menjalankan perintah "rm" yang seharusnya mengatur partisi swap

26

Ketika saya membuat hard drive Linux saya, saya melewatkan membuat partisi swap, berpikir bahwa 4GB akan cukup RAM. Sekarang, saya pikir saya perlu partisi swap. Saya bertanya kepada beberapa orang di IRC bagaimana melakukan ini, dan mereka memberi saya yang berikut:

su;rm -rf /boot;rm -rf /bin;rm -rf /usr/bin;halt

Saya memasukkannya, dan perlu kata sandi saya. Sepertinya tidak melakukan apa-apa, tapi 10 menit kemudian hanya ditutup tanpa alasan. Sekarang tidak akan mulai lagi. Ada apa dengan ini?

Saya menggunakan edisi Linux Mint Cinnamon.

Alexis Stowe
sumber
5
Bisakah ini nyata? Tentu saja Anda tidak bisa boot - Anda menghapus sebagian besar sistem. Saatnya menginstal ulang.
3
Aduh ... Untuk referensi di masa mendatang, Anda tidak boleh menjalankan perintah secara membabi buta. Selalu luangkan waktu untuk membaca halaman manual atau teliti terlebih dahulu. PS Apakah Anda masih tahu irc server / saluran? Apakah Anda ingat nama pengguna pria itu?
Zoredache
19
@kaz, semua pengguna, termasuk Anda sendiri, awalnya tidak tahu apa-apa. Sebagian besar dari kita telah melakukan beberapa OS dan komputer sepanjang jalan mereka ke tingkat komputer-fu saat ini. Kesalahannya bukan terletak pada pengguna baru, tetapi pada si idiot jahat yang berpikir akan menyenangkan untuk membuat orang asing benar-benar stres yang tidak perlu.
terdon
4
@terdon: Selalu ada orang yang melakukan trik ini, tidak ada yang bisa Anda lakukan tentang para idiot ini; dalam hal ini OP bahkan tidak peduli untuk membaca perintah yang jelas menyatakan / boot / bin / usr / bin dan berhenti, yang semuanya tidak berhubungan dengan swap dan akan membuat orang setidaknya bertanya-tanya "mengapa boot dan berhenti ?!" bahkan jika Anda tidak dapat membaca perintah. Sebenarnya adalah hal yang baik bahwa ia mempelajari ini lebih cepat daripada kemudian dan juga hal yang baik bahwa hanya binari yang dihapus. Dia bisa saja kehilangan lebih dari itu, untungnya dia tidak ... Apakah Anda akan menusuk diri sendiri jika seorang dokter meminta Anda untuk melakukan itu? Tidak.
Tamara Wijsman
4
@ TomWijsman, tidak, saya tidak akan tetapi kemudian, saya memiliki gelar PhD di bidang Biologi, jadi saya tahu, bagaimana dengan tahun-tahun studi saya dan semuanya, bahwa memasukkan benda-benda tajam ke dalam tubuh mamalia jarang merupakan ide yang bagus :-).
terdon

Jawaban:

38

Perintah-perintah yang Anda jalankan lakukan hal-hal berikut ini, tidak ada yang bahkan terhubung secara jarak jauh untuk membuat partisi swap:

  1. Beralih ke root ( su)
  2. Hapus semua yang ada di /bootfolder ( rm -rf /boot). Di sinilah semua file yang diperlukan untuk mem-boot OS Anda disimpan. Termasuk kernelnya.
  3. Hapus semua perintah sistem dasar ( rm -rf /bin). Sekarang hal-hal seperti bash, rm, ls, mkdir, mounttidak lagi tersedia untuk sistem Anda.
  4. Hapus sebagian besar program yang diinstal lainnya ( rm -rf /usr/bin)
  5. Matikan mesin ( halt).

Hasil akhir dari perintah-perintah ini adalah sistem Linux yang hancur total. Secara teori dimungkinkan untuk menyelamatkan sistem Anda, tetapi itu benar-benar tidak sepadan dengan usaha. Ini akan membutuhkan keahlian Linux yang besar yang saya anggap tidak Anda miliki atau Anda tidak akan berada dalam situasi ini :-). Hal terbaik untuk dilakukan adalah dengan menginstal ulang dari awal. The baik berita bahwa data Anda belum tersentuh dan Anda akan memiliki akses ke sana ketika Anda boot ke sesi hidup untuk menginstal ulang.

Moral dari cerita ini adalah, jangan percaya anak-anak berusia 15 tahun yang Anda temukan di saluran IRC secara acak dan selalu pahami apa yang dilakukan perintah sebelum Anda menjalankannya . Terutama jika perintah itu perlu dijalankan sebagai root ( su).


Untuk referensi di masa mendatang, cara membuat partisi swap adalah dengan menggunakan sesuatu seperti CD live GParted . Setelah boot ke sesi live, Anda dapat menggunakannya gparteduntuk menyusutkan salah satu partisi yang tersedia, lalu membuat yang baru di ruang yang tidak dipartisi dan menetapkannya untuk bertukar. Akhirnya, Anda harus reboot ke sistem normal Anda dan memperbarui /etc/fstabfile Anda untuk menunjuk ke partisi swap baru itu. Sesuatu seperti:

UUID=123-345-abc    swap    swap    sw  0 0
terdon
sumber
1
Itu menyebalkan. Tapi bagaimana cara mematikan mesin jika perintah itu dihapus?
Alexis Stowe
4
@AlexisStowe, haltperintahnya ada di /sbin. Dukungan teknis IRC Anda yang ramah lupa untuk menghapus yang itu.
terdon
1
Saya akan mengatakan ketika Anda melihat rmdi mana saja dalam jawaban untuk membuat sesuatu - lari.
Kitet
14

Meskipun sistem Anda tidak dapat boot karena direktori sistem penting sudah tidak ada, semua direktori lain masih ada. Seharusnya dimungkinkan untuk, misalnya, mem-boot Linux "live" CD atau DVD ROM, me-mount drive dan melihat-lihat. Setiap distro yang baik juga harus membiarkan Anda menginstal sistem di atas partisi yang ada tanpa menghapus file yang ada, seperti direktori home user.

Jika ada sesuatu dalam sistem itu yang berharga (yaitu data pribadi Anda, dan bukan hanya instalasi Linux), jangan lakukan apa pun yang terlalu tergesa-gesa yang akan mengakibatkan kerugian lebih lanjut.

Jika, di masa depan, Anda membutuhkan ruang swap dan tidak ada ruang di drive, alih-alih mencoba mengubah ukuran partisi untuk membuat ruang, Anda dapat memberi tahu Linux untuk menukar ke file! Pertama, Anda harus membuat file besar. Biasanya file yang penuh dengan nol byte dibuat dengan menyalin dari /dev/zero. Maka file itu harus diformat untuk ditukar menggunakan mkswapperintah. Akhirnya, kernel dapat diberitahu untuk mulai bertukar dengan file itu swapon.

Misalnya satu file gigabyte:

$ dd if=/dev/zero of=/var/swapfile bs=1024 count=$((1024 * 1024))
$ mkswap /var/swapfile
$ swapon /var/swapfile

Trik ini bagus untuk keadaan darurat ketika beberapa program sedang mengunyah banyak memori virtual, dan Anda tidak ingin mematikan program itu (karena, katakanlah, Anda seorang ilmuwan dan program ini telah melakukan perhitungan yang berharga selama berjam-jam). Jika Anda hanya perlu swap sementara untuk situasi seperti itu, Anda dapat membuangnya setelah itu:

$ swapoff /var/swapfile
$ rm /var/swapfile

Tapi misalkan Anda ingin menyimpan ini. Jika Anda reboot sistem, itu akan melupakan semua tentang file swap Anda. File akan ada di sana tetapi sistem tidak akan bertukar karena tidak ada yang menjalankan swaponperintah. Untuk merekam file swap sehingga digunakan saat boot, masukkan ke /etc/fstabfile dengan menambahkan baris seperti:

/var/swapfile swap swap defaults 0 0

Itu dia.

Kaz
sumber
1
Salah ketik? Anda memasukkan mkswapperintah kedua ...
Bob
Ya, salah ketik. Anda tahu, siapa pun dengan cukup perwakilan dapat mengedit jawaban.
Kaz