Hetzner'de Arch Linux Kurulumu
Yıllar önce raptiye'yi ilk açtığımda sanal dahi olsa kendi sunucusuna sahip olması hayal gibi gelirdi; zira fiyatlar son derece pahalıydı. Derken çalışıp para kazanmaya başlayınca ayda 20$ vererek slicehost üzerinde yayınlamaya başladım. Zaman değişti; linode vb. sayısız alternatif, slicehost'un avantajlı paketlerini ezdi geçti. slicehost bu nedenle çok eleştirildi; RackSpace tarafından satın alındıktan sonra oluşturduğu topluluğun büyük bir kısmını kaybetti. Yine de sadeliği ve memnuniyetim nedeniyle 2.5 yıl boyunca daha ucuz olan alternatiflere geçmeyi reddettim. Taa ki put.io için çalışmaya başlayıp da Hetzner'i keşfedene kadar.
Hetzner Hakkında
Hetzner, barındırma, fiziksel, sanal ya da yönetilen sunucu imkanları sağlayan bir Alman servis sağlayıcısı. Sitelerinde İngilizce seçeneği olsa da, viki'de ihtiyaç duyabileceğiniz bir çok belgenin Almanca olması çok da profesyonel olmadıklarına dair bir izlenim bıraksa da put.io sunucularından gelen tecrübelerim tam tersini söylüyor.
Hetzner'in sitesine girerseniz sizi ilk vuracak şey fiyatlar oluyor. Fiziksel sunucular için istedikleri fiyatlar bir yana; neredeyse tüm sanal sunucu sağlayıcıların 256 - 512 MB belleğe sahip sunucular için (anlaşmış gibi) istedikleri 20$ fiyata karşılık Hetzner'in verdiği fiyat 7€! Üstelik bu fiyata verdikleri sunucu özellikleri ve bantgenişliği de şaşırtıcı derecede iyi. İnternet'te yapacağınız araştırmalarda da göreceksiniz ki; herkes bu fiyatların nasıl verildiğini sorguluyor.
Root Server ismi biraz kafa karıştırıcı olabiliyor ama aslında tahmin etmek güç değil: sunucunun çekirdek dahil tüm kontrolü sizde oluyor; makinenin her şeyini kontrol edebiliyorsunuz. Bu özellik sayesinde; öntanımlı olarak yalnızca Ubuntu, Fedora, Debian, CentOS, FreeBSD, OpenSuse, Windows (!) desteği olsa da, istediğiniz Linux dağıtımını yükleyebiliyorsunuz. Ben, tabii ki Arch Linux yükledim; canavar gibi de çalışıyor.
Yazının devamında izlediğim adımları takip ederek çalışan bir sistem elde edebilirsiniz. Ben sanal sunucu için izlenmesi gereken adımları anlatacağım ama fiziksel makine olursa da aynı adımları izleyebilirsiniz.
Sunucuyu Hazır Hale Getirme
7€'luk sanal sunucuyu aldığınızda, makine üzerinde biçimlendirilmemiş 20G disk alanı geliyor. Öncelikle işe bu alanı bölümlendirerek başlamak gerekiyor:
cfdisk /dev/hda
Bu adımda ben diski tek parça olarak bırakıp ext4 olarak biçimlendirerek devam ettim:
mkfs.ext4 -L ROOT /dev/hda1
-L parametresinden anlaşılabileceği gibi diske ROOT adını veriyorum. Linux'da disklere isim vererek sdX ya da uzun UUID gibi değerlerden kaçınabilirsiniz. Diski biçimlendirdikten sonra kuruluma devam etmek için sistemde bir yerlere bağlamanız gerekiyor. Benim tercihim /mnt/ dizini oluyor:
mount /dev/hda1 /mnt/
Sırada Arch Linux kurulumu için önyükleyici (bootstrap) yaratacak betiği çalıştırmak var. Arch Linux, tüm paket sisteminde XZ biçiminde sıkıştırıldığından baz sistemde (Ubuntu) ilgili paketlerin kurulu olması gerekiyor. Bu nedenle /etc/apt/sources.list dosyasında lenny'e olan tüm referansları sid olarak değiştirmeniz ve şunları yapmanız gerekiyor:
apt-get updateapt-get install xz-utils xz-lzma
chmod +x arch-bootstrap.sh
./arch-bootstrap.sh -a x86_64 -r "ftp://ftp.hosteurope.de/mirror/ftp.archlinux.org" /mnt/
mount -t proc none /mnt/procmount -t sysfs none /mnt/sysmount --bind /dev /mnt/dev
chroot /mnt
cp /var/cache/pacman/pkg/filesystem-2010.12-1-any.pkg.tar.xz ~cd /rootxz -d filesystem-2010.12-1-any.pkg.tar.xztar -xvf filesystem-2010.12-1-any.pkg.tarcp etc/passwd /etc/passwd
pacman -S kernel26 openssh vim screen git python2 python
mkinitcpio -p linux
pacman -S grubinstall-grub /dev/hda /dev/hda1
timeout 1default 0color light-blue/black light-cyan/blue# Arch Linuxtitle Arch Linuxroot (hd0,0)kernel /boot/vmlinuz-linux root=/dev/disk/by-label/ROOT ro quietinitrd /boot/initramfs-linux.img# # (1) Arch Linux# title Arch Linux Fallback# root (hd0,0)# kernel /boot/vmlinuz26 root=/dev/sda1 ro# initrd /boot/kernel26-fallback.img
pacman -S sudo ethtool mlocate wget dnsutils net-tools htop bash-completion zsh ntp
127.0.0.1 localhost78.47.167.40 raptiye.org raptiye
LOCALE="en_US.UTF-8"DAEMON_LOCALE="no"HARDWARECLOCK="UTC"TIMEZONE="Europe/Istanbul"KEYMAP="trq"CONSOLEFONT="lat5-16"CONSOLEMAP=USECOLOR="yes"MOD_AUTOLOAD="yes"MODULES=()# Scan for LVM volume groups at startup, required if you use LVMUSELVM="no"HOSTNAME="raptiye.org"eth0="dhcp"INTERFACES=(eth0)# Setting this to "yes" will skip network shutdown.# This is required if your root device is on NFS.NETWORK_PERSIST="no"DAEMONS=(syslog-ng network crond sshd)
tmpfs /tmp tmpfs nodev,nosuid 0 0LABEL=ROOT / ext4 defaults 0 0
