Arch Linux’u USB Belleğe Kurmak

Bu rehberin amacı kendinize ait ve USB bellek içinde taşıyabileceğiniz, sizin özelleştirdiğiniz ve kurulumun her adımını bilerek yaptığınız bir GNU/Linux’a sahip olmak. Yani, ihtiyaçlarınız nelerse sadece onları ekleyecek, her an yanınızda taşıyabilecek ve sorunsuz bir şekilde güvenle kullanabilecek, kişiselleştirilmiş bir dağıtımınızın olması.

Herhangi bir GNU/Linux dağıtımını da USB belleğinize yazdırabilir, tüm bu aşağıda anlattığım kısımlara girmeden kolayce USB belleğinizde çalışan bir dağıtıma sahip olabilirsiniz. Fakat bu yöntemin sağlayacağı faydalara bakarsak eğer:

  • Kurulumun her aşamasını görme, yapma ve düzenleme fırsatına sahip olacaksınız.
  • Bu sizin GNU/Linux bilginizi arttıracak mükemmel bir fırsat olabilir.
  • İstemediğiniz bir sürü gereksiz uygulama yerine sadece sizin istediğiniz uygulamalardan oluşan bir sisteme sahip olma olanağı.
  • Güvenliği kendi ihtiyaçlarınız doğrultusunda sağlayabilme (iptables vs).
  • Güvenmediğimiz makinelerde kullanabilme. (Eğer internet dinleniyorsa gene güvenliğiniz tehlikede olabilir fakat Tor ve VPN seçenekleri mevcut.)

O kadar faydasını saydım peki bize zararı olabilir mi?

  • Zaman gerektirebilir.
  • Aşamalarda karşılaşabileceğiniz sorunlar sizi yıldırabilir. Ama yılmayın, arayın muhakkak yazılmış bir şeyler bulursunuz.

Karışık bir rehber gibi gözükebilir ama elimden geldiğince her şeyi çok açık olarak yazacağım. Önce, elimizde GNU/Linux kurulu bir sistem olursa (Arch olmadığı varsayılarak anlatılacak rehber) sorunsuz bir şekilde ilerleyebilirsiniz. Hemen hemen tüm işlemler root olarak gerçekleştirilecek, o yüzden dikkatli olmanızda fayda var. Komutlar “~ $” ile düzenlenecek kısımlar “#”  (başlarına # koymayın) ile gösterilmiştir.

1. USB belleği biçimlendirmek

USB belleğimizi taktık ve öncelikle bunda bir bölüm oluşturmalıyız. Bu da cfdisk’i kullanarak yapacağız. Sizin dikkat etmeniz gereken USB’nin bağlama noktasının ne olduğu. Ben /dev/sdc olarak alıyorum. Sizde bu /dev/sdb olabilir veya /dev/sd[x] (x herhangi bir değer) olabilir. Yanlışlıkla kullandığınız alanı seçerseniz bilgileriniz silinecektir.

~ $ cfdisk /dev/sdc
New -> Primary -> Linux, Write diyerek yazıyor ve Quit diyerek bu ekrandan çıkıyoruz.

2. Arch Linux Bootstrap paketi

Arch Linux’un cd imajını yazdırıp oradan da gidebilirsiniz. Fakat, bu rehberde bootstrap ile kurulumu gerçekleştireceğiz. Öncelikle Arch Linux’un bu paketini indirip arşivden çıkartmalıyız. İndireceğiniz dizinde açacağınızı varsayıyorum.

~ $ wget -c http://mirrors.kernel.org/archlinux/iso/2013.12.01/archlinux-bootstrap-2013.12.01-x86_64.tar.gz
~ $ tar xzf archlinux-bootstrap-2013.12.01-x86_64.tar.gz

Arşivi çıkarttıktan sonra elimizde root.x86_64 adında bir klasörümüz olacak. Burada chroot olmadan önce Arch Linux’un yansı dosyasını düzenlemeliyiz.

~ $ nano root.x86_64/etc/pacman.d/mirrorlist

Size en yakın olan sunucunun başındaki # işaretini kaldırın ve kaydedip çıkın. Buradan sonra şu işlemleri gerçekleştirin:

~ $ cp /etc/resolv.conf root.x86_64/etc
~ $ mount --rbind /proc root.x86_64/proc
~ $ mount --rbind /sys root.x86_64/sys
~ $ mount --rbind /dev root.x86_64/dev
~ $ mount --rbind /run root.x86_64/run

Önemli noktaları bağladıktan sonra chroot için artık hazırız:

~ $ chroot root.x86_64 /bin/bash

Kuruluma geçmeden önce son adım olarak Arch Linux paket yöneticisi pacman‘in anahtarları kurması gerekmektedir.

~ $ pacman-key --init
~ $ pacman-key --populate archlinux

İlk bölümde USB belleğimizde bir alan oluşturmuş fakat bunu biçimlendirmemiştik. Şimdi bu oluşturduğumuz alanı biçimlendirelim:

~ $ mkfs.ext4 /dev/sdc1 -L /

Görüldüğü üzere “-L /” ile biçimlendirdiğim bu alana “/” etiketini verdim. Bu seçenek size kalmış. Ext4 yerine farklı bir dosya sistemi de seçebilirsiniz. Daha sonra USB belleğimizi bootstrap altında bağlamalıyız:

~ $ mount /dev/sdc1 /mnt

Her şey buraya kadar yolunda gittiyse rahatça kuruluma geçebebiliriz.

3. Arch Linux kurulumu

Önce, temel Arch Linux kurulumu gerçekleştirip Grub yerine Syslinux’u tercih edeceğiz. Grub’la devam etmek isteyen varsa kurulumu yapıp Grub ayarları için Arch Linux’un wikisine bakabilir. Biraz sıkıntılı olduğu için ben Grub’u atladım. Syslinux hiç sıkıntı çıkartmadı bana. Temel kurulum:

~ $ pacstrap /mnt base syslinux

Bu işlem biraz sürebilir. Yaklaşık 150mb kadar paket indirip kuracak. USB belleğinizin yazma hızı da önemli. Kurulum tamamlandıktan sonra fstab‘ı oluşturalım:

~ $ genfstab -p /mnt >> /mnt/etc/fstab

Burada /dev/sdc1 olarak değil de UUID üzerinden gitmeliyiz. Çünkü farklı makinelere taktığımız zaman bağlama noktası farklılık gösterebilir ve sistemimiz açılmayabilir. USB belleğinizin UUID numarası fstab içinde var. Eğer yoksa:

~ $ ls -l /dev/disk/by-uuid/
total 0
lrwxrwxrwx 1 root root 10 Dec 31 17:09 6c27259c-bff8-42a2-b14a-df16aad78ba4 -> ../../sdc1

UUID numaranız 6c27259c-bff8-42a2-b14a-df16aad78ba4, fstab ise:

~ $ nano /etc/fstab

# UUID=6c27259c-bff8-42a2-b14a-df16aad78ba4 / ext4 defaults,noatime 0 1

Şeklinde düzenlemeniz yeterli. Buradan sonra syslinux’u kurarak ayarlarını gerçekleştireceğiz:

~ $ syslinux-install_update -i -a -m
~ $ nano /boot/syslinux/syslinux.cfg

Syslinux’un ayar dosyasını açtıktan sonra LABEL Arch kısmını bulun ve USB belleğinizin UUID numarasını yazın:

LABEL Arch
MENU LABEL Arch Linux
LINUX ../vmlinuz-linux
APPEND root=UUID=6c27259c-bff8-42a2-b14a-df16aad78ba4 ro
INITRD ../initramfs-linux.img

Kaydedin ve çıkın. Şimdi sıra Arch Linux içinde chroot olmaya geldi:

~ $ arch-chroot /mnt

Hostname –diğer deyişle bilgisayarınızın adı– oluşturalım:
~ $ nano /etc/hostname

Hosts dosyamızı düzenleyelim (localhost’u bilgisayarınızın adıyla değiştirin):
~ $ nano /etc/hosts

Vconsole dosyamızı –klavye, yazı tipi düzeni– oluşturalım:
~ $ nano /etc/vconsole.conf
# KEYMAP=trq
# FONT=iso09.08

Locale dosyamızı –sistem dilini– oluşturalım:
~ $ nano /etc/locale.conf
# LANG=tr_TR.UTF-8

Yerel saatimizi belirleyelim:
~ $ ln -s /usr/share/zoneinfo/Europe/Istanbul /etc/localtime

Karakter desteği (başlarındaki # işaretini kaldırın):
~ $ nano /etc/locale.gen
# tr_TR.UTF-8 UTF-8
# tr_TR ISO-8859-9

~ $ locale-gen/

Initramfs imajını oluşturmadan önce mkinitcpio.conf dosyası içinde küçük bir yer değişikliği yapacağız (block görüldüğü üzere udev’den sonra gelecek):

~ $ nano /etc/mkinitcpio.conf
# HOOKS="base udev block autodetect modconf filesystems keyboard fsck"
~ $ mkinitcpio -p linux

Root şifremizi belirleyelim:
passwd

Kullanıcı (kullanici yerine kendi kullanıcı adınızı seçin) ve kullanıcı şifresi oluşturalım:
~ $ useradd -m -g users -G audio,video,wheel,storage,optical,power,network,log -s /bin/bash kullanici
~ $ passwd kullanici

4. Xorg kurulumu

Şimdi Xorg kuracağız. Farklı makinelerde çalışan bir sistem hazırladığımız için Xorg’u tüm sürücüleriyle kurmalıyız (all diyin).

~ $ pacman -S xorg

5. ALSA kurulumu

Ses için gerekli olan ALSA paketini kurmamız gerekmekte:

~ $ pacman -S alsa-utils alsa-firmware

6. NetworkManager kurulumu

Ben NetworkManager’ı seçtim. Wicd veya başka alternatifler size kalmış. NetworkManager’ı seçmemdeki neden OpenVPN. Kuruluma bunu da dahil edeceğiz:

~ $ pacman -S networkmanager networkmanager-openvpn network-manager-applet
~ $ systemctl enable NetworkManager

7. Masaüstü ortamının kurulması

USB belleğinizin boyutu ne kadar bilmiyorum. Tavsiye olarak ben pencere yöneticisi ya da LXDE gibi hafif masaüstü ortamlarını tercih ederdim. Rehberde LXDE’yi seçtim. Bu seçim size kalmıştır, istersenix XFCE, istersenix Openbox vs. de kurabilirsiniz. Fakat seçimlerinizin yanında bir tane de giriş yöneticisi seçmeli ve ayarlamalısınız. LXDE’de lxdm var o yüzden farklı bir şey seçmemize gerek yok.

~ $ pacman -S lxde ntfs-3g dosfstools
~ $ systemctl enable lxdm

8. Basit bir kişiselleştirme

Buradan sonra kullanmak istediğimiz programların kurulumu var. Ben basit bir örnek üzerinden göstereceğim. Tarayıcı seçiminden ofis ortamına kadar her şey size kalmıştır.

~ $ pacman -S firefox pidgin pidgin-otr abiword abiword-plugins gnumeric transmission-gtk icedtea-web-java7 gimp epdfview tor vlc ttf-dejavu
~ $ systemctl enable tor.service

Kurulumda indirilen paketleri yer kaplamaması için temizlemek isterseniz:
~ $ pacman -Scc
~ $  exit

9. Son adımlar

Buraya kadar da her şey sorunsuz bir şekilde kurulmuşsa artık bağlama noktalarını kaldırabilir ve chroot’tan çıkabiliriz.

~ $ umount /mnt
~ $ exit
~ $ umount -lf root.x86_64/proc
~ $ umount -lf root.x86_64/sys
~ $ umount -lf root.x86_64/dev
~ $ umount -lf root.x86_64/run

Artık bilgisayarınızı USB belleğinizden başlatabilir ve Arch Linux’unuzu kullanmaya başlayabilirsiniz. Kurulumun 5, 6, 7 ve 8. adımları kuracak kişiye kalıyor. Burada her adımı kendinize göre özelleştirebilir ve istekleriniz doğrultusunda kurulum yapabilirsiniz. Hepinize kolay gelsin, iyi yıllar.

Tagged , , , , , , , , , , , , , , , , , , , , , , , , , ,

3 thoughts on “Arch Linux’u USB Belleğe Kurmak

  1. Ufuk says:

    Selam Kus,

    Ben de sizin tavsiyelerinize uyarak Linux Minte geçtim. Umarım pişman olmam:)

  2. Yardımcı Uye Dost says:

    Arkadaşlar şöyle bir hata mesajı alırsanız:(benim gibi :D )

    ” chroot: failed to run command `/bin/sh’: Exec format error ”

    muhtemelen sisteminizi uyumlu olmayan Archlinux indirmişsinizdir.
    yani sisteminiz i686 yerine x86_x64 indirmiş olabilirsiniz.

    ben bu hatayı alıyordum. sonra i686 indirdim.Sorun çözüldü :))

Leave a Reply

Your email address will not be published.