Mengganti nomor partisi (/dev/sda) di Linux

Sudah lama tidak posting, dan sekarang saya akan sharing hal ekstrem lagi yang bisa di Lakukan di Linux dan mungkin hal ini tidak bisa dilakukan pada Sistem Operasi lain (contoh kali ini pada Linux OpenSuse 13.1).
Hal ekstrem apakah yang saya maksud itu?

Ok masalahnya seperti ini, saat saya sedang melakukan partisi terjadi sesuatu yaitu nomor partisi /dev/sda tidak berurutan. Lihat contohnya seperti berikut ini:


linux-yr22:/home/aim # su
linux-yr22:/home/aim # fdisk -l

Disk /dev/sda: 320.1 GB, 320072933376 bytes, 625142448 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0x00050839

Device Boot Start End Blocks Id System
/dev/sda1 2048 416245759 208121856 83 Linux
/dev/sda3 416245760 621045759 102400000 83 Linux
/dev/sda4 621045760 625141759 2048000 82 Linux swap / Solaris

Lihat disana pada bagian Device Boot, disana nomor partisi saya tidak berurutan yang mana setelah /dev/sda1, maka langsung melompat ke /dev/sda3 dan /dev/sda4.

Lalu kemana /dev/sda2-nya?

Mungkin bagi sebagian orang awam dan orang yang tidak mau berusaha dengan Linux-nya, mungkin akan melakukan install ulang supaya nomor partisinya berurutan kembali.
Oke sedikit penjelasan dari saya mengenai tampilan dari perintah “fdisk -l” diatas:

  1. /dev/sda1 adalah partisi /home saya
  2. /dev/sda3 adalah partisi / (Linux sistem)
  3. /dev/sda4 adalah partisi swap

Mungkin anda juga para pembaca bertanya-tanya kepada saya, pengaruh dari tidak berurutannya nomor partisi ini apa?

Oke saya akan jelaskan, misal suatu saat anda mengalami Linux anda crash (misal hang/kernel panic) dan disaat anda mematikan PC/Laptop anda atau melakukan restart, maka saat Linux anda restart itu, Linux akan melakukan perintah fsck. Untuk apa perintah fsck itu? Silahkan baca sendiri ya di google. Nah karena nomor partisi anda yang tidak berurutan, maka perintah fsck yang dijalankan oleh Linux secara otomatis akan berlangsung lama, masih untung apabila anda masih bisa masuk login ke desktop, tapi apabila tidak seperti kasus saya fscknya error dan disaat mencapai 50%, maka fsck akan mengulang dari awal dan begitu seterusnya.

Sebenarnya untuk mengatasi hal itu, kila bisa mengabaikan perintah fsck saat Linux booting, tapi menurut saya hal ini kurang efisien dan kurang saya anjurkan. Oke berikut ini adalah caranya:

  1. Saat anda memsauki tampilan grub di Linux, contoh seperti ini:

    Maka jangan langsung tekan enter, tapi tekanlah huruf “E” pada keyboard anda dan akan muncul tampilan seperti ini (tampilan ini berbeda-beda tergantung Linux yang anda gunakan):


    insmod part_msdos
    insmod ext2
    set root='hd0,msdos2'
    search --no-floppy --fs-uuid --set=root --hint-bios=hd0,msdos2 --hint-efi=hd0,msdos2 --hintbaremetal=ahci0,msdos2 --hint='hd0,msdos2' 67174f13-1f38-4d6f-b783-71d490e40fa4
    echo 'Loading Linux 3.15.1-11-desktop ...'
    linux /boot/vmlinuz-3.15.1-11-desktop root=UUID=67174f13-1f38-4d6f-b783-71d490e40fa4 quiet resume=/dev/disk/by-id/ata-ST9320325AS_S2WPGHE8-part3 splash=silent quiet showopts
    echo 'Loading initial ramdisk ...'
    initrd /boot/initrd-3.15.1-11-desktop

    Lalu rubahlah menjadi seperti ini:


    linux /boot/vmlinuz-3.15.1-11-desktop root=UUID=67174f13-1f38-4d6f-b783-71d490e40fa4
    quiet resume=/dev/disk/by-id/ata-ST9320325AS_S2WPGHE8-part3 splash=silent
    quiet showopts fastboot

    Lihatlah pada perintah di atas, jadi untuk mengabaikan perintah fsck, maka anda harus menambahkan perintah fastboot di akhir perintah vmlinuz/kernel Linux anda.

  2. Lalu setelah itu, silahkan anda menekan tombol “CTRL + X“.

Dan selamat anda telah mengabaikan perintah fsck, tetapi seperti yang sudah saya bilang sebelumnya bahwa hal ini tidak saya anjurkan, jadi marilah kita coba hal ekstrim yang saya maksud sebelumyanya.
Pertama-tama siapkanlah OS Linux Live/bootable yang siap pakai, contoh saya menggunakan Ubuntu Live yang saya burn ke Flashdisk menggunakan unetbootin. File Ubuntu dan Unetbootin bisa didapatkan disni dan disini
Setelah itu bootinglah PC/Laptop anda menggunakan Linux live tersebut dan setealah berhasil masuk (masuk ke tampilan desktop Linux), bukalah terminallnya dan ketikkan perintah berikut ini:


ubuntu@ubuntu:~$ sudo sfdisk -d /dev/sda > sda.bkp
ubuntu@ubuntu:~$ sudo cp sda.bkp sda.new
ubuntu@ubuntu:~$ sudo gedit sda.new

Maka akan muncul seperti ini:


# partition table of /dev/sda
unit: sectors

/dev/sda1 : start= 2048, size=416243712, Id=83
/dev/sda2 : start= 0, size= 0, Id= 0
/dev/sda3 : start=416245760, size=204800000, Id=83
/dev/sda4 : start=621045760, size= 4096000, Id=82

Tampilan ini berdasarkan perintah “fdisk -l” diatas yang mana hanya ada /dev/sda1, /dev/sda3, dan /dev/sda4. Oke lalu rubahlah menjadi seperti ini:


# partition table of /dev/sda
unit: sectors

/dev/sda1 : start= 2048, size=416243712, Id=83
/dev/sda2 : start=416245760, size=204800000, Id=83
/dev/sda3 : start=621045760, size= 4096000, Id=82
/dev/sda4 : start= 0, size= 0, Id= 0

Lihatlah di sana saya menukar partisi /dev/sda2 yang kosong menjadi /dev/sda4 dan menaikan /dev/sda3 menjadi /dev/sda2 dan /dev/sda4 menjadi /dev/sda3. Gampang kan? Orang tinggal cut dan paste aja kok.
Setelah itu restart-lah ubuntu live anda dan masuklah kembali ke ubuntu live anda. Setelah masuk, buka kembali terminal dan ketikkanlah perintah berikut ini:


ubuntu@ubuntu:~$ sudo fdisk -l

Disk /dev/sda: 320.1 GB, 320072933376 bytes, 625142448 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk label type: dos
Disk identifier: 0x00050839

Device Boot Start End Blocks Id System
/dev/sda1 2048 416245759 208121856 83 Linux
/dev/sda2 416245760 621045759 102400000 83 Linux
/dev/sda3 621045760 625141759 2048000 82 Linux swap / Solaris

Dan lihat sekarang partisi saya sudah berurutan.. Keren kan..
Oke selanjutnya memberbaiki file fstab. Pertama-tama jalankanlah perintah berikut ini (dalam hal ini partisi / (sistem Linux saya ada pada /dev/sda2):


ubuntu@ubuntu:~$ sudo mount /dev/sda2 /mnt
ubuntu@ubuntu:~$ sudo mount --bind /dev /mnt/dev
ubuntu@ubuntu:~$ sudo mount --bind /dev/pts /mnt/dev/pts
ubuntu@ubuntu:~$ sudo mount --bind /proc /mnt/proc
ubuntu@ubuntu:~$ sudo mount --bind /sys /mnt/sys

Lalu sekarang masuklah dengan user root ke partisi system Linux tadi (/dev/sda2):


ubuntu@ubuntu:~$ sudo chroot /mnt

Lalu sekarang rubahlah file fstab-nya dengan perintah berikut ini:


root@imron:~$ sudo nano /mnt/etc/fstab

Dan rubahlah menjadi seperti ini:


/dev/sda2 / ext4 acl,user_xattr 1 1
/dev/sda3 swap swap defaults 0 0
/dev/sda1 /home ext4 defaults 1 2

Perubahan ini disesuaikan dengan hasil dari fsdisk -l di atas ya..
Oke langkah terakhir adalah melakukan penginstalan grub dan update grub2-nya.
Perintah ini dijalankan pada Distro Ubuntu


root@imron:~$ sudo grub2-install /dev/sda
root@imron:~$ sudo update-grub2

Perintah ini dijalankan pada Distro Opensuse 13.1


root@imron:~$ sudo grub2-install /dev/sda
root@imron:~$ sudo grub2-mkconfig -o /boot/grub2/grub.cfg

Dan sekarang restartlah Linux anda dan SELAMAT MENIKMATI linux anda kembali… Catatan: Segala bentuk kerusakan pada Linux anda bukan tanggung jawab penulis, tulisan ini dibuat berdasarkan pengalaman pribadi penulis
Sumber: http://unix.stackexchange.com

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s