Mengganti harddisk konvensional dengan SSD untuk Linux

Hari ini pesanan saya yaitu Intel SSD series 320 dengan kapasistas 160 GB tiba. Ini adalah tipe harddisk SSD yang cukup legendaris, sekalipun kemampuannya mungkin masih kalah dibandingkan Samsung Evo.

Intel SSD Series 320 kapasitas 160 GB


Pertama, kita tentunya mempartisi harddisk sesuai dengan keperluan. Saya menggunakan GParted untuk melakukan hal ini. Pastikan bahwa yang dioperasikan adalah harddisk kedua (/dev/sdb), dan bukan harddisk dimana Linux saat ini tertanam (/dev/sda).

Langkah kedua adalah memindahkan isi dari harddisk konvensional ke SSD di Linux Slackware sulit. Prosesnya hampir sama dengan memindahkan harddisk di Windows. Cara paling mudah adalah dengan perintah rsync.

rsync -aAXv --delete --progress \
   --exclude= {"/dev/*","/proc/*","/sys/*","/tmp/*","/run/*","/mnt/*","/media/*","/lost+found"} \
   / /run/media/{myusername}/{drive_id}

Kita perlu mengeluarkan /proc, /dev, /sys, /tmp, /run, /mnt, dan /media dari daftar karena memang akan berakibat terhentinya proses rsync.

Ketiga, kita perlu mengedit /etc/fstab di SSD, karena tentu saja partisinya berbeda. 

/run/media/{myusername}/{drive_id}/etc/fstab

Ini adalah model partisi SSD saya:

/dev/sda2   swap    swap    defaults                          0   0
/dev/sda1   /       ext4    defaults,noatime                  1   0
/dev/sda5   /var    ext4    noatime,nosuid,noexec,defaults    1   0
/dev/sda6   /tmp    ext4    noatime,nosuid,nodev,defaults     1   0
/dev/sda7   /home   ext4    noatime,nosuid,nodev,noexec       0   0

Sebagai info, tab keenam (angka 0  terakhir) mengindikasikan bahwa kita tidak perlu mengaktifkan fsck, karena SSD tidak mengenal fsck.

Selanjutnya adalah menginstalasi boot loader dengan rekoveri dari DVD atau USB installer. 

boot: huge.s root=/dev/sda1

Lalu kita dapat mengaktifkan atau mounting partisi tersebut

mkdir /blah
mount /dev/sda1 /blah
cd /blah

Kernel yang saya gunakan adalah versi terbaru, sementara kernel yang terdapat di USB installer adalah versi lebih lama. Untuk itu. kita memerlukan kernel dari SSD yang baru dan lilo.conf untuk berada di partisi root.

cp /blah/etc/lilo.conf /etc/.
rm -fr /boot
cp -R /blah/boot/* /boot/.

Lalu kita dapat mengaktifkan lilo pada partisi root.

/blah/sbin/lilo -r /blah


Setelah sukses booting dari SSD, kita perlu menyesuaikan fitur pengecekan kesehatan SSD. Kita tidak perlu mengaktifkan fsck, karena SSD tidak mengenal fsck.  Untuk memastikan bahwa SSD berada dalam kondisi sehat, kita perlu mengaktifkan trim. Ada dua cara, yaitu dengan menambahkan opsi discard pada /etc/fstab, misalnya:

/dev/sda1   /  ext4   defaults,noatime,discard   1   0

Akan tetapi, menurut beberapa pengalaman, menempatkan discard dapat meyebabkan instabilitas sistem (hang).

Cara kedua adalah dengan menjalankan perintah fstrim untuk semua mount point secara periodik:

#!/bin/sh

LOG=/var/log/ssd_trim.log
echo "*** $(date -R) ***" >> $LOG

for fs in $(lsblk -o MOUNTPOINT,DISC-MAX,FSTYPE | grep -E '^/.* [1-9]+.* ' | awk '{print $1}'$
        /sbin/fstrim "$fs" >> $LOG
done

perintah ini dapat ditempatkan di cron

crontab -e


* * * * 0 /usr/local/trim.sh 1> /dev/null

Untuk memastikan sekali lagi, kita dapat mematikan counter pengaktifan/mounting dengan perintah tune2fs, contohnya:

tune2fs -c 0 -i 0 /dev/sda1

Kita dapat cek kembali dengan tune2fs.

tune2fs -l /dev/sda1 | grep -i check
Last checked:             Tue May  9 05:50:06 2017


Check interval:           0 ()


Selesai ! Lonjakan kecepatan booting dan loading program dengan SSD sudah dapat dinikmati.

Comments

Popular posts from this blog

Xeon LGA 771 di mobo LGA 775

Writing and reading float using Arduino EEPROM

LM35 Incubator with LCD 16x2 on Arduino