Tek Bölüm Kurulum¶
Diskler üzerinde işlem yapabilmek için evdev veya udevd servisi çalışıyor olmalı. Ayrıca aşağıdaki modüllerin yüklü olduğundan emin olun. Anlatım boyunca /dev/sda diski üzerinden örnekleme yapılmıştır. Siz kendi diskinize göre düzenleyebilirsiniz. Disk ve isoya erişim için aşağıdaki modüllerin yüklü olduğundan emin olun.
loop
squashfs
ext4 modulleri modprobe komutuyla yüklenmeli.
Disk Hazırlanmalı(legacy)¶
Öncelikle cfdisk veya fdisk komutları ile diski bölümlendirelim. Ben bu anlatımda cfdisk kullanacağım.
cfdisk komutuyla disk bölümlendirilmeli.
$ cfdisk /dev/sda
dos seçilmeli
type linux system
write
quit
Bu işlem sonucunda sadece sda1 olur
mkfs.ext2 ile disk biçimlendirilir.
$ mkfs.ext2 /dev/sda1
Dosya sistemini kopyalama¶
Kurulum medyası /cdrom dizinine bağlanır. Kurulacak sistemin imajını bir dizine bağlayalım.
$ mkdir -p cdrom
$ mkdir -p source
$ mount -t iso9660 -o loop /dev/sr0 /cdrom/
$ mount -t squashfs -o loop /cdrom/live/filesystem.squashfs /source
Şimdi de disk bölümümüzü bağlayalım.
$ mkdir -p target
$ mount /dev/sda1 /target
$ mkdir -p /target/boot
Ardından dosyaları kopyalayalım.
# -p dosya izinlerini korur
# -r alt dizinlerle beraber kopyalar
# -f soru sormayı kapatır
# -v detaylı çıktıları gösterir
$ cp -prfv /source/* /target
Daha sonra diski senkronize edelim.
$ sync
Bootloader kurulumu¶
grub kurulumu yapmak için grub paketinini kurulu olduğundan emin olun.
$ mkdir -p /target/dev
$ mkdir -p /target/sys
$ mkdir -p /target/proc
$ mkdir -p /target/run
$ mkdir -p /target/tmp
$ mount --bind /dev /target/dev
$ mount --bind /sys /target/sys
$ mount --bind /proc /target/proc
$ mount --bind /run /target/run
$ mount --bind /tmp /target/tmp
# Bunun yerine aşağıdaki gibi de girilebilir.
for dir in /dev /sys /proc /run /tmp ; do
mount --bind /$dir /target/$dir
done
$ chroot /target
Grub Kuralım¶
$ grub-install --boot-directory=/boot /dev/sda
Grub yapılandırması¶
/boot bölümünde initrd.img-<çekirdek-sürümü> dosyamızın olduğundan emin olalım.
/boot bölümünde vmlinuz-<çekirdek-sürümü> kernel dosyamızın olduğundan emin olalım.
/boot/grub/grub.cfg konumunda dostamızı oluşturalım(vi, touch veya nano ile).
dev/sda1 diskimizim uuid değerimizi bulalım.
$ blkid | grep /dev/sda1
/dev/sda1: UUID="..." BLOCK_SIZE="4096" TYPE="ext4" PARTUUID="..."
Şimdi aşağıdaki gibi bir yapılandırma dosyası yazalım ve /boot/grub/grub.cfg dosyasına kaydedelim. Burada uuid değerini ve çekirdek sürümünü düzenleyin.
linux /boot/vmlinuz-<çekirdek-sürümü> root=UUID=<uuid-değeri> rw quiet
initrd /boot/initrd.img-<çekirdek-sürümü>
boot
Ayrıca otomatik yapılandırma da oluşturabiliriz.
$ grub-mkconfig -o /boot/grub/grub.cfg
Not: Disk bölümü konumu yerine UUID="<uuid-değeri>" şeklinde yazmanızı öneririm. Bölüm adları değişebilirken uuid değerleri değişmez.