Türkiye
Az konuş, çok çalış..

Forum

Bildirimler
Tümünü temizle

[Sabit] [NASIL] Kurulu Archman ve diğer Arch Linux tabanlı dağıtımları çalışan ISO haline getirme

8 Yazılar
2 Üyeler
1 Reactions
841 Görüntüleme
Ramadan Ali
(@alicavus)
Gönderiler: 115
Estimable Member Admin
Konu başlatıcı
 

Bu belgede bilgisayarımıza kurulu Arch Linux tabanlı dağıtımın çalışan ISO ortamı haline getirilmesi anlatılacaktır. Söz konusu işlem tamamen "amatör" diyebileceğimiz, yani resmi dağıtım yapımı sürecini kapsamayan kendi kullanımımıza yönelik çalışmayı kapsamaktadır. Bu belge hiç bir şekilde resmi veya gayrı resmi mesuliyet isnadı kabul etmez, herhangi garantisi tahakkukunda bulunmaz. Kendin yap (DIY, "Do It Yourself") mantığına uygun olarak çıkabilecek sorunlarla söz konusu kullanıcının az buçuk çözüm süreçlerine hakim olmalıdırlar.

Yöntem tarafımca denenmiştir.

0. Gerekli ortam:

  • En son Arch Linux kurulum ISO ortamı
  • Sabit diskimizde gerekli alan
  • rsync
  • squashfs-tools
  • git
  • libisoburn
  • qemu, virtualbox, vmware gibi sanallaştırma yazılımı
  • bolca sabır, zaman + kahve

$ işareti normal kullanıcıyı # ise yetkili kullanıcıyı temsil etmektedir.

1. İlkönce çalışma dizinlerimizi oluşturalım:

$ mkdir -p ~/workdir/{iso,myinstall}

2. Güncel Arch Linux ISO ortamını açalım:

$ bsdtar -xf archlinux-2022.10.01-x86_64.iso -C ~/workdir/iso
$ find ~/workdir/iso -type d -exec chmod 0755 {} \;
$ find ~/workdir/iso -type f -exec chmod 0644 {} \;

3. Kurulu sistemimizi çalışma dizinine kopyalayalım:

# rsync -av /* ~/workdir/myinstall --exclude=dev/*  --exclude=home/$USER/* --exclude=media/* --exclude=mnt/* --exclude=proc/* --exclude=sys/* --exclude=tmp/* --exclude=var/cache/pacman/pkg/* --exclude=var/lib/pacman/sync* --exclude=var/tmp/*

4. Çalışma dizinindeki sisteme arch-install-scripts, mkinitcpio-archiso paketlerini kuralım:

# pacman -S arch-install-scripts mkinitcpio-archiso -r ~/workdir/myinstall/

5. Kullanıcı dizinindeki ayar dosyalarını (.config, .cinnamon, .mozilla, .bashrc, .pam_environment, .bash_profile, .xinitrc vs...) ~/workdir/myinstall/home/$USER dizinine kopyalayım.

$ cp -av ~/.{config,cinnamon,mozilla,{ba,z}shrc,pam_environment,{bash_,z}profile,xinitrc} ~/workdir/myinstall/home/$USER

6. ~/workdir/myinstall/etc/mkinitcpio.conf dosyasına archiso ve archiso_loop_mnt kancalarını ekleyelim.

Not: Eğer söz konusu ayar dosyasında udev yerine systemd eklediysek eski haline çevirmeliyiz (systemd silip udev ekliyoruz), archiso malesef systemd ile düzgün çalışmıyor.

7. ISO ortamımız için initramfs dosyasını oluşturalım:

$ sudo ~/workdir/myinstall/usr/bin/arch-chroot ~/workdir/myinstall mkinitcpio -P
$ sudo cp ~/workdir/myinstall/boot/vmlinuz-linux* ~/workdir/myinstall/boot/initramfs-linux*.img ~/workdir/iso/arch/boot/x86_64/
$ sudo rm -f ~/workdir/iso/boot/arch/x86_64/*fallback*

Not: Kullandığımız çekirdeğe(-klere) göre ~/workdir/myinstall/boot dizininde oluşan dosyaların isimleri farklılık gösterebilir (örn. vmlinuz-linux-lts, vmlinuz-linux-zen gibi), bunları ~/workdir/iso/arch/boot/x86_64/ dizinine kopyalayınca önyükleyici ayarlarına düzgün biçimde eklemeliyiz.

8. ISO ortamımız için güncel paket listesini ekleyelim:

$ pacman -Q -r ~/workdir/myinstall > ~/workdir/iso/arch/pkglist.x86_64.txt 

9. Gereksiz dosya ve dizinleri temizleyelim

~/workdir/myinstall dizininde:

    • /var/cache, /var/log, /var/spool, /var/db/sudo/lectured dizinlerinde gereksiz dosyaları siler ya da içeriğini sıfırlayabiliriz.
    • /home dizininde diğer yerel kullanıcılara ait dizinleri silmeliyiz:
$ sudo ~/workdir/myinstall/usr/bin/arch-chroot ~/workdir/myinstall userdel -fr kullanici
    • /etc dizininde kişisel verileri silmeliyiz (örn. Ağ şifreleri), gereksiz systemd servislerini devre dışı bırakmalıyız.
    • /etc/fstab dosyasını sıfırlamalıyız, varsa /etc/crypttab silmeliyiz:
# truncate -s 0 ~/workdir/myinstall/etc/fstab
    • /boot dizininin içeriğini silmeliyiz:
# rm -rfv ~/workdir/myinstall/boot/*

~/workdir/iso dizininde eski önyükleyici yapılandırmalarını kaldırmalıyız:

$ rm -rfv ~/workdir/iso/{syslinux,EFI,arch/grubenv}

10. Sistem airootfs imajı ve sağlama dosyası oluşturma:

$ rm ~/workdir/iso/arch/x86_64/airootfs.*
$ sudo mksquashfs ~/workdir/myinstall ~/workdir/iso/arch/x86_64/airootfs.sfs -b 1M -comp xz -Xbcj x86 -Xdict-size 1M
$ cd ~/workdir/iso/arch/x86_64/
$ sha512sum airootfs.sfs > airootfs.sha512 

11. ~/workdir/iso dizini erişimleri ayarlama:

$ sudo find ~/workdir/iso -exec chown $USER:$USER {} \;
$ sudo find ~/workdir/iso -type d -exec chmod 0755 {} \;
$ sudo find ~/workdir/iso -type f -exec chmod 0644 {} \;

12. Önyükleyici kurma ve ayarlama:

git clone  https://github.com/limine-bootloader/limine.git  --branch=v4.x-branch-binary --depth=1 ~/workdir/limine-bin
cp ~/workdir/limine-bin/limine*{sys,bin} ~/workdir/iso
cat << EOF > ~/workdir/iso/limine.cfg
DEFAULT_ENTRY=1
TIMEOUT=30
VERBOSE=yes
INTERFACE_BRANDING=My Custom Arch ISO
INTERFACE_BRANDING_COLOUR=2
TERM_BACKGROUND=88000000
:Custom Arch ISO
    COMMENT=Boot custom Archiso
    PROTOCOL=linux
    KERNEL_PATH=boot:///arch/boot/x86_64/vmlinuz-linux
    MODULE_PATH=boot:///arch/boot/intel-ucode.img
    MODULE_PATH=boot:///arch/boot/x86_64/initramfs-linux.img
    CMDLINE=archisobasedir=arch archisolabel=CUSTOMISO
:UEFI shell (UEFI only)
    COMMENT=Run UEFI shell
    PROTOCOL=chainload
    IMAGE_PATH=boot:///shellx64.efi
:Boot next
    COMMENT=Boot next available boot option
    PROTOCOL=chainload_next
EOF

Farklı çekirdekler için yeni girdiler ekleyebilir veya mevcut olanı düzenleyebilirsiniz.

Not: limine önyükleyicisi 4 GiB ve üzeri ISO dosyalarını çalıştıramaz.

13. ISO kalıbı oluşturma:

$ xorriso -as mkisofs -eltorito-boot limine-cd.bin -no-emul-boot -boot-load-size 4 -boot-info-table --efi-boot limine-cd-efi.bin -iso-level 3 -full-iso9660-filenames -joliet -joliet-long -rational-rock -volid CUSTOMISO -output ~/workdir/mycustom.iso ~/workdir/iso

Çalışma dizininde mycustom.iso oluştulunca, sanallaştırma yazılımıyla test edebiliriz. İşlem başarıyla bittiğinde ISO dosyamızı taşıyıp çalışma dizini ~/workdir komple kaldırabiliriz:

$ sudo rm -rf ~/workdir
 
Gönderildi : 14/10/2022 12:08 pm
tulliana reacted
tulliana
(@tulliana)
Gönderiler: 3512
Famed Member Admin
 

Güzel bir archiso belgesi olmuş, eline sağlık kardeşim. Bende geleneksel olarak Arch kurulum videosu hazırlayacağım müsait zamanda. Son aylarda hayli yoğundum.

 

Arch Linux Türkiye ortamına da eklersen sevinirim.

https://archlinux.org.tr/forum/

Bu ileti 2 yıl önce tarafından tulliana tarihinde düzenlendi

archman.org - Bizi bilen iyi bilir, bilmeyen de kendi gibi bilir.!

 
Gönderildi : 04/11/2022 3:26 pm
Ramadan Ali
(@alicavus)
Gönderiler: 115
Estimable Member Admin
Konu başlatıcı
 

Arch Linux Türkiye ortamına da eklersen sevinirim.
https://archlinux.org.tr/forum/

Demiray hocam malesef archlinux.org.tr giriş yapamıyorum, kayıt oldum, onay e-postası gelmedi, dolayısıyla şifrem de belirlenemedi, birkaç defa şifre sıfırlamaya çalıştım iki keresinde şema (template) e-postası aldım:

Merhaba! [User_login] e-posta adresini kullanarak hesabınız için şifrenizi sıfırlamamızı istediniz. Bu bir hataysa veya şifre sıfırlama istemediyseniz, bu e-postayı dikkate almayın; hiçbir işlem yapılmayacaktır. Şifrenizi sıfırlamak için aşağıdaki adresi ziyaret edin: [Reset_password_url] Teşekkürler!

Şimdi ise şifre sıfırlamak için herhangi e-posta dahi almıyorum. (spam klasörüne baktım)

Konuyla ilgili size e-posta iletisi göndermiştim, spam filtrelerine takılmış, yahut diğer iletiler arasında kaybolduğunu varsaymaktayım.

 
Gönderildi : 05/11/2022 10:23 am
tulliana
(@tulliana)
Gönderiler: 3512
Famed Member Admin
 

Yeni kayıt yaparsak uygun olur. Oraya kullanıcı aktarmadık, sıfırdan inşa olmaya başlasın dedik

archman.org - Bizi bilen iyi bilir, bilmeyen de kendi gibi bilir.!

 
Gönderildi : 06/11/2022 10:47 pm
Ramadan Ali
(@alicavus)
Gönderiler: 115
Estimable Member Admin
Konu başlatıcı
 

Şu an kullanıcı adım alicavus ve e-posta adresim zaten kayıtlı olduğu için archlinux.org.tr kayıt ol kısmından yeni kayıt yapamıyorum. İlk kaydı yaptığımda onay e-postası gelmedi, halihazırda şifremi de sıfırlayamıyorum.

 
Gönderildi : 07/11/2022 5:53 am
tulliana
(@tulliana)
Gönderiler: 3512
Famed Member Admin
 

Etkinleştirdim giriş yapmayı deneyin

archman.org - Bizi bilen iyi bilir, bilmeyen de kendi gibi bilir.!

 
Gönderildi : 07/11/2022 11:18 am
Ramadan Ali
(@alicavus)
Gönderiler: 115
Estimable Member Admin
Konu başlatıcı
 

Demiray hocam archlinux.org.tr sisteminin e-posta göndermesinde sorun yaşanıyor sanırsam. Şifremi unutulan parola kısmından sıfırlamaya çalıştım, malesef sıfırlama linkini alamadım (ilk belirlenen şifre bana iletilmediği için şu an giriş yapamıyorum).

Eğer uygun olursa sizin belirlediğiniz şifreyi sistemde kayıtlı e-posta adresime gönderebilir misiniz?

PS: Ne "Inbox", ne de "Spam" klasöründe archlinux.org.tr'den gelen ileti yok.

 
Gönderildi : 07/11/2022 5:32 pm
tulliana
(@tulliana)
Gönderiler: 3512
Famed Member Admin
 

Gönderdim 😉 

archman.org - Bizi bilen iyi bilir, bilmeyen de kendi gibi bilir.!

 
Gönderildi : 09/11/2022 10:50 am
Paylaş:
Translate »