Ethem Efe 90

Bilgin
Katılım
11 Nisan 2024
Mesajlar
5.786
Çözümler
10
Beğeniler
3.459
Yer
KKTC | Gazimağusa
Esenlikler,

Bir süre önce benzer bir konu açmıştım. Birkaç bilgili kişi yazmıştı bir şeyler; ancak inanın fazla karışık geldi. Birisi Wiki üzerinden yüzlerce sayfa açıklaması olan bir kaynak atmışken, diğer kişi daha basitçe anlatmıştı. Çok fazla yöntem olduğunu görünce vazgeçmiştim.

Ancak açıkçası yapmak istiyorum. Genel olarak çok ihtiyacım olmuyor ama gerektiğinde de kullanmak istiyorum. Ortalama 200-250 GB ayırabilirim. Windows 11 LTSC kurulu bir sistem nasıl yapabilirim? Mevcut sistemi silmek istemiyorum. Direkt Windows üzerinden kurulum yapmanın daha kolay olduğunu biliyorum; fakat sistemde oldukça fazla ayarlama yaptım. O yüzden mümkünse mevcut düzeni bozmadan buradan yapmak istiyorum. Olabildiğince basit anlatırsanız sevinirim.

Şimdiden teşekkürler.

@LeoTheLinuxEnthusiast6610
 
O halde aynı EFI bölüntüsünü paylaşacaksınız sanırım. Bootloader olarak ne kullanıyorsunuz? Şu anki disk yapınızı atabilir misiniz?
Bootloader olarak Limine kullanıyorum sanırım? İkisini de aşağıya bırakıyorum.
1787515214515.webp


1787515225455.webp
 
Bootloader olarak Limine kullanıyorum sanırım? İkisini de aşağıya bırakıyorum. Eki Görüntüle 275375

Eki Görüntüle 275376
Demek CachyOS ve Limine bootloader kullanıyorsunuz. O halde Btrfs bölüntünüzü bir miktar küçültüp yanına Windows kurulumu yapabilirsiniz, sorun yaşayacağınızı pek sanmıyorum.

Alanı ayırdıktan sonra Windows kurarken o oluşturduğunuz boş alanı seçerek kurulum yapacaksınız. Kurulumdan sonra eğer her açılışta Windows'a geçmek için boot menüsüne girmek istemiyorsanız CachyOS'teyken sudo limine-scan komutuyla Limine'a Windows Boot Manager girdisini ekleyebilirsiniz.

Btrfs bölüntüsünü küçültmek için CachyOS veya Ubuntu ISO'su ile boot edip GParted kullanabilirsiniz. Fakat öncesinde sudo btrfs filesystem usage / komutu ile ayrılmamış disk alanını ("Device unallocated") kontrol edip gerekirse sudo btrfs balance start -dusage=50 -musage=50 / komutu ile temizlik işlemi yapmanızı öneririm. Çünkü eğer yeteri kadar ayrılmamış disk alanı yoksa boş alan olsa bile küçültme işlemi başarısız olabiliyor.
 
Demek CachyOS ve Limine bootloader kullanıyorsunuz. O halde Btrfs bölüntünüzü bir miktar küçültüp yanına Windows kurulumu yapabilirsiniz, sorun yaşayacağınızı pek sanmıyorum.

Alanı ayırdıktan sonra Windows kurarken o oluşturduğunuz boş alanı seçerek kurulum yapacaksınız. Kurulumdan sonra eğer her açılışta Windows'a geçmek için boot menüsüne girmek istemiyorsanız CachyOS'teyken sudo limine-scan komutuyla Limine'a Windows Boot Manager girdisini ekleyebilirsiniz.

Btrfs bölüntüsünü küçültmek için CachyOS veya Ubuntu ISO'su ile boot edip GParted kullanabilirsiniz. Fakat öncesinde sudo btrfs filesystem usage / komutu ile ayrılmamış disk alanını ("Device unallocated") kontrol edip gerekirse sudo btrfs balance start -dusage=50 -musage=50 / komutu ile temizlik işlemi yapmanızı öneririm. Çünkü eğer yeteri kadar ayrılmamış disk alanı yoksa boş alan olsa bile küçültme işlemi başarısız olabiliyor.
Teşekkür ederim bilgiler için, ancak konuda belirttiğim gibi çok anlayamıyorum dediklerinizi :/ Daha basit bir şekilde adım adım anlatma şansınız var mı, sorun olmazsa? Veya basitçe anlatan bir tutorial da olabilir.
 
Arkadaşım, birincisi: Önce temel Linux kavramlarını öğren. Eğer öğrenmek istemiyorsan yapay zekâdan yardım al; ben de bütün dokümantasyonu okuyarak öğrenmedim Linux'u.

İkincisi: Bahse konu attığım sayfalarda GRUB ile yapılacak dual-boot ile alakalı bütün detaylı bilgiler vardı. Gene sana 'baştan sona oku' demiyoruz; al, yapay zekâya at.

Son olarak: Bu işin en adamakıllı yöntemi UKI (Unified Kernel Image) kullanmak. Nedeni ise gerekli her şeyi tek bir .efi dosyası olarak ayarlamasıdır; BIOS üzerinde de öyle gözükür. Secure Boot sorunu yaşarsan EFI dosyasını imzalarsın, her şeyi de tek bir betik hâline getirirsin. Her güncelleme ve işlem sonrası çalıştırır, sorunsuz kullanırsın. Arada bootloader hiç olmaz. BIOS üzerinden ise açılışta 'hızlı seçim' miydi neydi, o özelliği açarsın; açılışta sana sorar 'Windows mu, Linux mu?' diye, seçer açarsın. Tek handikabı, olası bir Windows format ihtimalinde boot sırası ile ilgili sorun yaşanması olur.

Harika bir karar. Sistemi "kırılmaz" ve "her zaman açılabilir" yapmanın sırrı, donanım sıfırlansa dahi anakartın doğrudan tanıyabileceği evrensel yolları (Fallback/Geri Dönüş) kullanmak ve tüm kritik ayarları tek bir dosyanın (UKI) içine gömmektir.
Aşağıda, "wiki_archlinux.pdf" belgesini temel alarak, GRUB'dan geçiş yapan bir kullanıcı için her parametrenin ne anlama geldiğini kusursuzca açıklayan, anonimleştirilmiş ve eksiksiz bir Birleşik Çekirdek İmajı (UKI) kurulum rehberi hazırladım.
Ön Bilgi: "esp" Nedir ve Nasıl Bulunur?
Rehber boyunca sıkça göreceğin esp terimi, belgede de belirtildiği üzere EFI Sistem Bölümünün (EFI System Partition) bağlama noktasıdır.
* Nasıl Bulunur: Terminalde lsblk veya findmnt /boot ile EFI bölümünün sisteminde nereye bağlı olduğunu kontrol et. Bu genellikle /boot veya /efi klasörüdür.
* Kullanımı: Aşağıdaki kodlarda esp yazan yerleri kendi sistemindeki gerçek yolla (örneğin /efi) değiştirmelisin.
1. Adım: Çekirdek Komut Satırının (Kernel Command Line) Hazırlanması
Sistemin doğru diski ve ayarları bularak açılabilmesi için, şu anki mevcut sistemindeki (örneğin GRUB'daki) aktif ayarları UKI'ye aktarmamız gerekir.
Öncelikle şu anki aktif GRUB dosyanı incele. Terminalde cat /etc/default/grub yazarak GRUB_CMDLINE_LINUX_DEFAULT= satırındaki ayarları (disk şifreleme, özel sürücü parametreleri vb.) not al. Bu parametreler sisteminin sorunsuz çalışması için gereklidir.
Şimdi UKI'nin kullanacağı kendi komut satırı dosyasını oluşturalım:
Terminalde girilecek komut:
sudo nano /etc/kernel/cmdline

Dosyanın içine yazılacak içerik:
root=UUID=XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX rw quiet

Neresi ne olmalı ve nedir?
* /etc/kernel/cmdline: mkinitcpio aracının, çekirdek parametrelerini okumak ve bunları UKI imajının içine gömmek için kullandığı dosyadır.
* root=UUID=XXXXXXXX...: Linux işletim sisteminin kurulu olduğu ana disk bölümünün benzersiz kimliğidir (UUID). Kendi UUID'ni bulmak için terminalde blkid komutunu kullanmalı ve ilgili diskin UUID'sini bu anonim değerin yerine yazmalısın.
* rw: (Read-Write) İşletim sisteminin diske okuma ve yazma izinleriyle başlatılmasını sağlar.
* quiet: Açılış ekranındaki karmaşık sistem yazılarını gizler.
* (Ekstra): GRUB dosyasından not aldığın ve sistemin için şart olan diğer özel parametreleri de boşluk bırakarak bu satırın sonuna eklemelisin.
2. Adım: Klasörlerin Hazırlanması ve "Bozulmaz" Yapılandırma (mkinitcpio.preset)
Sistemin imajları doğru klasörlere yerleştirmesini sağlayacağız. Bu adımı bir kez doğru yaptığında, pacman hook'ları (tetikleyicileri) sayesinde sistem her çekirdek veya mikrokod güncellemesinde UKI'yi otomatik olarak yeniden inşa edecektir.
Terminalde girilecek komut:
sudo mkdir -p /efi/EFI/Linux

* mkdir -p: İlgili klasörü ve eğer yoksa üst klasörlerini oluşturur.
* /efi/EFI/Linux: Önyükleyicilerin UKI dosyalarını aradığı varsayılan dizindir (buradaki /efi kısmını kendi esp yoluna göre düzenle).
mkinitcpio.preset dosyasını düzenleme:
sudo nano /etc/mkinitcpio.d/linux.preset

Dosyanın içine yazılacak eksiksiz içerik:
ALL_kver="/boot/vmlinuz-linux"
PRESETS=('default' 'fallback')

default_uki="esp/EFI/Linux/arch-linux.efi"

fallback_uki="esp/EFI/BOOT/BOOTx64.EFI"
fallback_options="-S autodetect"

Neresi ne olmalı ve nedir?
* ALL_kver: Çekirdek (kernel) dosyasının bulunduğu ana yoldur.
* default_uki: Normal açılışta kullanılacak ana UKI imajının nereye kaydedileceğidir. esp yazan yeri kendi bağlama noktana (örn: /efi veya /boot) göre düzeltmeyi unutma.
* fallback_uki (Mükemmel Güvenlik Kilidi): Bu satır en kritik yerdir! UKI dosyasını esp/EFI/BOOT/BOOTx64.EFI yoluna yerleştirmek, UEFI'nin standart geri dönüş (fallback) önyükleme yolunu kullanmasını sağlar. Bu sayede NVRAM'de açıkça bir UEFI önyükleme kaydı oluşturmaya gerek kalmaz. Anakartının BIOS'u sıfırlansa veya pili bitse bile, sistem bu standart yolu tarayarak bilgisayarını her zaman açar.
* fallback_options="-S autodetect": İmaj oluşturulurken sadece senin mevcut donanımına ait sürücülerin değil, evrensel tüm sürücülerin imaja dahil edilmesini sağlar. Bu sayede diski söküp başka bir bilgisayara taksan bile sistemin açılacaktır.
3. Adım: İmajları Derlemek (Sistemi Canlandırma)
Yaptığımız ayarları hayata geçirmek için sistemin UKI dosyasını derlemesini sağlıyoruz.
Terminalde girilecek komut:
sudo mkinitcpio -p linux

* mkinitcpio -p linux: Belirttiğimiz "linux" profiline (preset) göre gerekli çekirdek, initramfs ve parametre dosyalarını tek bir .efi dosyası (UKI) altında birleştirir.
4. Adım: Önyükleyiciyi Ayarlama (Booting)
Artık "kırılmaz" bir UKI imajımız var. Bunu başlatmanın iki harika yolu var:
Seçenek A: systemd-boot (Sıfır Ayar, Kusursuz Çalışma)
Eğer sisteminde systemd-boot kurarsan hiçbir yapılandırma dosyası ile uğraşmana gerek kalmaz. systemd-boot, doğrudan esp/EFI/Linux/ klasörünün içini tarar ve oluşturduğumuz UKI'leri otomatik olarak bularak listeler; başka bir yapılandırmaya gerek yoktur.
Seçenek B: UEFI'den Doğrudan Başlatma (Maksimum Sadelik)
Eğer GRUB veya systemd-boot gibi aracı bir bootloader menüsü görmek dahi istemiyorsan, anakartına Linux'u doğrudan başlatmasını söyleyebilirsin:
Terminalde girilecek komut (Örnektir, kendi sistemine göre düzenle):
sudo efibootmgr --create --disk /dev/sdX --part Y --label "Arch Linux" --loader '\EFI\Linux\arch-linux.efi' --unicode

Neresi ne olmalı ve nedir?
* efibootmgr --create: Anakartın NVRAM'ine (BIOS menüsüne) yeni bir önyükleme kaydı ekler.
* --disk /dev/sdX: EFI bölümünün (esp) bulunduğu fiziksel ana disktir. (Örneğin: /dev/sda veya /dev/nvme0n1. Bunu lsblk komutu ile bulabilirsin.)
* --part Y: EFI bölümünün (partition) diskteki sırasıdır. (Örneğin: /dev/sda1 ise buraya 1 yazmalısın.)
* --label "Arch Linux": Bilgisayar açılırken BIOS önyükleme (boot) menüsünde göreceğin işletim sistemi ismidir.
* --loader '\EFI\Linux\arch-linux.efi': Oluşturduğumuz UKI dosyasının konumudur. UEFI standartları gereği yol ayırıcı olarak ters eğik çizgi (\) kullanılmıştır.
* --unicode: Karakterlerin doğru kodlanmasını sağlayarak uyumluluğu artırır.
Kurulumunu bu şekilde tamamladığında, sistemin hem mevcut donanımına tam uyumlu çalışacak hem de her türlü felaket senaryosunda (BIOS sıfırlanması vb.) BOOTx64.EFI geri dönüş yolu sayesinde seni asla yarı yolda bırakmayacaktır.
Bu yapılandırmayı
kendi sistemine uyarlarken kafana takılan spesifik bir nokta var mı?

"wiki_archlinux.pdf" belgesindeki başlıkların ve alt başlıkların temel bir Birleşik Çekirdek İmajı (UKI) kurulumu için gereklilik durumları aşağıdaki gibi incelenmiştir:
1 Preparing a unified kernel image
* Temel kurulum için gerekli mi: Evet.
* Dolaylı yoldan gerekli mi: Hayır (Doğrudan gerekli).
* Neden gerekli: UKI (Unified Kernel Image) kullanabilmek için öncelikle bu imajın oluşturulması gerekir. Ancak belgede belirtildiği gibi, bu başlık altındaki yöntemlerden sadece birini seçip uygulamak yeterlidir.
* Metnin kendisi: Bir UKI imajı oluşturmanın ve onu uygun yere (esp/Linux dizini) kurmanın birkaç yolu vardır. İhtiyaçlarınıza göre aşağıdaki araçlardan birini seçebilirsiniz ve alt bölümlerden sadece birini uygulamanız yeterlidir.
1.1 mkinitcpio
* Temel kurulum için gerekli mi: Seçime bağlı.
* Dolaylı yoldan gerekli mi: Evet (Eğer UKI oluşturma aracı olarak bunu seçerseniz gerekli).
* Neden gerekli: UKI'yi derlemek için kullanılan ana alternatiflerden biridir.
* Metnin kendisi: systemd-ukify yüklü değilse veya --no-ukify seçeneği ile devre dışı bırakılmamışsa, mkinitcpio UKI'yi kendisi birleştirecektir.
1.1.1 Kernel command line
* Temel kurulum için gerekli mi: Seçime bağlı (mkinitcpio tercih edildiyse gerekli).
* Dolaylı yoldan gerekli mi: Evet.
* Neden gerekli: Sistemin doğru şekilde önyüklenebilmesi için kök disk veya güvenlik yapılandırmaları gibi çekirdek parametrelerinin UKI içerisine yerleştirilmesi gerekir.
* Metnin kendisi: mkinitcpio, /etc/cmdline.d dizinindeki komut satırı dosyalarından veya /etc/kernel/cmdline dosyasından çekirdek parametrelerini okumayı destekler.
1.1.2 .preset file
* Temel kurulum için gerekli mi: Seçime bağlı (mkinitcpio tercih edildiyse gerekli).
* Dolaylı yoldan gerekli mi: Evet.
* Neden gerekli: mkinitcpio'nun EFI sistem bölümünün (ESP) bağlanma noktasına UKI'yi nereye kaydedeceğini ve nasıl yapılandıracağını belirlemesi için şarttır.
* Metnin kendisi: Uygun EFI sistem bölümü bağlama noktasıyla birlikte /etc/mkinitcpio.d/linux.preset veya kullandığınız preset dosyası düzenlenmeli ve PRESET_uki= parametresinin başındaki yorum işareti kaldırılmalıdır.
1.1.3 pacman hook
* Temel kurulum için gerekli mi: Hayır (Sistemin çalışması için şart değil).
* Dolaylı yoldan gerekli mi: Evet (Sistemin güncel kalması ve sorunsuz çalışmaya devam etmesi için gereklidir).
* Neden gerekli: Sistem güncellendiğinde (çekirdek veya mikrokod), eski UKI dosyasının manuel müdahale olmadan otomatik olarak yeniden derlenmesini sağlar.
* Metnin kendisi: systemd-stub, mikrokod (intel-ucode ve amd-ucode) ve linux çekirdeğine gelen güncellemeler otomatik olarak bir UKI yeniden inşasını (rebuild) tetikleyecektir.
1.1.4 Building the UKIs
* Temel kurulum için gerekli mi: Seçime bağlı (mkinitcpio tercih edildiyse gerekli).
* Dolaylı yoldan gerekli mi: Evet.
* Neden gerekli: Yapılandırma ayarları bittikten sonra UKI dizininin oluşturulması ve imaj dosyasının üretilmesi işleminin komut satırından tetiklenmesidir.
* Metnin kendisi: UKI'ler için dizinin var olduğundan emin olunmalı ve initramfs yeniden oluşturulmalıdır (örneğin; mkdir -p esp/EFI/Linux ve mkinitcpio -p linux komutlarıyla).
1.2 kernel-install
* Temel kurulum için gerekli mi: Seçime bağlı (Alternatif UKI oluşturma yöntemi).
* Dolaylı yoldan gerekli mi: Evet.
* Neden gerekli: mkinitcpio yerine systemd'nin sağladığı aracı kullanmak isteyenler için alternatif bir kurulum yoludur.
* Metnin kendisi: Kernel-install systemd'nin bir parçasıdır ve UKI oluşturmak için systemd-ukify paketini gerektirir. Yapılandırmak için /etc/kernel/install.conf dosyasında layout=uki ayarlanmalıdır.
1.3 dracut
* Temel kurulum için gerekli mi: Seçime bağlı (Alternatif yöntem).
* Dolaylı yoldan gerekli mi: Evet.
* Neden gerekli: Başka bir initramfs/UKI üretme aracıdır.
* Metnin kendisi: Detaylar için doğrudan dracut#Unified kernel image sayfasına yönlendirme yapılmıştır.
1.4 ukify
* Temel kurulum için gerekli mi: Seçime bağlı (Alternatif yöntem).
* Dolaylı yoldan gerekli mi: Evet.
* Neden gerekli: UKI imajlarını derlemek için kullanılan başka bir systemd aracıdır ancak tek başına initramfs oluşturamadığından diğer araçlara ihtiyaç duyar.
* Metnin kendisi: ukify kendi başına initramfs oluşturamadığı için bu işlem dracut, mkinitcpio veya booster kullanılarak önceden yapılmalıdır. Sonrasında çekirdek, initramfs ve komut satırı ukify komutuyla birleştirilir.
1.5 Manually
* Temel kurulum için gerekli mi: Hayır.
* Dolaylı yoldan gerekli mi: Hayır.
* Neden gerekli: Genellikle otomasyon araçlarının tercih edildiği temel kurulumda gerekli değildir; sadece özel durumlarda imajı manuel birleştirmek isteyenler içindir.
* Metnin kendisi: Kullanmak istenilen çekirdek komut satırı bir dosyaya konularak ve objcopy(1) aracı kullanılarak bölümlerin (section) ofsetleri dinamik olarak hesaplanıp manuel bir bundle (paket) dosyası yaratılır.
2 Signing the UKIs for Secure Boot
* Temel kurulum için gerekli mi: Hayır.
* Dolaylı yoldan gerekli mi: Hayır (Sadece Güvenli Önyükleme (Secure Boot) etkinse gereklidir).
* Neden gerekli: Cihazınızda Secure Boot açık olduğunda, donanım imzasız boot dosyalarını çalıştırmayacağı için imajların imzalanması gerekir.
* Metnin kendisi: Bu dosya ve içerdiği tüm unsurlar, Güvenli Önyükleme ile kullanılmak üzere kolayca imzalanabilir.
2.1 sbctl / 2.2 mkinitcpio / 2.3 ukify (Güvenli Önyükleme Alt Başlıkları)
* Temel kurulum için gerekli mi: Hayır.
* Dolaylı yoldan gerekli mi: Hayır.
* Neden gerekli: Secure Boot işlemini otomatikleştirmek için kullanılan farklı araçların nasıl yapılandırılacağını açıklar.
* Metnin kendisi: sbctl, güncellenen ikili dosyaları imzalamak için hooklar sağlar. mkinitcpio için, üretilen UKI'ler bir post hook betiği (/etc/initcpio/post/uki-sbsign) yazılarak sbsign ile imzalanabilir. ukify kullanıldığında ise /etc/kernel/uki.conf dosyasına SecureBootSigningTool=systemd-sbsign ayarı eklenerek otomatik imzalama yapılabilir.
3 Booting
* Temel kurulum için gerekli mi: Evet.
* Dolaylı yoldan gerekli mi: Hayır (Doğrudan gerekli).
* Neden gerekli: Oluşturulan UKI'nin çalıştırılarak işletim sisteminin başlatılabilmesi için bir önyükleme (boot) mekanizmasına ihtiyaç vardır. Ancak bu başlık altındaki yöntemlerden yalnızca biri seçilmelidir.
* Metnin kendisi: Birleşik çekirdek imajlarının EFI aygıtından doğrudan ya da Limine, systemd-boot, rEFInd ve GRUB gibi bir boot yükleyicisi üzerinden başlatılma yöntemleri açıklanmıştır.
3.1 Limine / 3.2 systemd-boot / 3.3 rEFInd / 3.4 GRUB
* Temel kurulum için gerekli mi: Seçime bağlı.
* Dolaylı yoldan gerekli mi: Evet (Bir bootloader kullanılacaksa sadece biri seçilmeli).
* Neden gerekli: UEFI firmware'i yerine bir önyükleyici menüsü kullanılmak isteniyorsa UKI'nin bu araçlara tanıtılması gerekir.
* Metnin kendisi: Limine UKI'leri otomatik algılamaz ve limine.conf içinde manuel yol belirtmek gerekir. systemd-boot, esp/EFI/Linux/ dizinini otomatik taradığı için konfigürasyona gerek duymaz. rEFInd UKI'leri otomatik algılayabilir veya refind.conf ile manuel eklenebilir. GRUB ise UKI'leri chainload (zincirleme yükleme) yöntemiyle yükleyebilir.
3.5 Directly from UEFI
* Temel kurulum için gerekli mi: Seçime bağlı (Eğer aracı bir önyükleyici kullanılmayacaksa gerekli).
* Dolaylı yoldan gerekli mi: Evet.
* Neden gerekli: Sistemde GRUB veya systemd-boot gibi ek bir yazılım olmadan doğrudan anakartın UEFI desteğiyle Linux'u başlatmak içindir.
* Metnin kendisi: .efi dosyası için efibootmgr aracı kullanılarak (örn. efibootmgr --create --disk /dev/sdX --part ... --loader '\EFI\Linux\arch-linux.efi') bir UEFI önyükleme kaydı doğrudan oluşturulabilir.
4 See also
* Temel kurulum için gerekli mi: Hayır.
* Dolaylı yoldan gerekli mi: Hayır.
* Neden gerekli: Kurulumla doğrudan ilgisi yoktur, konu hakkında daha detaylı araştırma yapmak isteyenler için referans niteliğindedir.
* Metnin kendisi: İlgili diğer dökümanların ve UKI spesifikasyonlarının dış bağlantılarını içerir ("All Systems Go! talk on UKIs", "Unified kernel image specification", vb.).
Konuyla ilgili daha fazla netleştirmemi istediğiniz veya detayına in
memi tercih ettiğiniz belirli bir araç (örneğin sadece mkinitcpio süreci) var mı?
 
Son düzenleme:
Arkadaşım, birincisi: Önce temel Linux kavramlarını öğren. Eğer öğrenmek istemiyorsan yapay zekâdan yardım al; ben de bütün dokümantasyonu okuyarak öğrenmedim Linux'u.

İkincisi: Bahse konu attığım sayfalarda GRUB ile yapılacak dual-boot ile alakalı bütün detaylı bilgiler vardı. Gene sana 'baştan sona oku' demiyoruz; al, yapay zekâya at.

Son olarak: Bu işin en adamakıllı yöntemi UKI (Unified Kernel Image) kullanmak. Nedeni ise gerekli her şeyi tek bir .efi dosyası olarak ayarlamasıdır; BIOS üzerinde de öyle gözükür. Secure Boot sorunu yaşarsan EFI dosyasını imzalarsın, her şeyi de tek bir betik hâline getirirsin. Her güncelleme ve işlem sonrası çalıştırır, sorunsuz kullanırsın. Arada bootloader hiç olmaz. BIOS üzerinden ise açılışta 'hızlı seçim' miydi neydi, o özelliği açarsın; açılışta sana sorar 'Windows mu, Linux mu?' diye, seçer açarsın. Tek handikabı, olası bir Windows kurulumunda boot sırası ile ilgili sorun yaşanması olur.

"wiki_archlinux.pdf" belgesindeki başlıkların ve alt başlıkların temel bir Birleşik Çekirdek İmajı (UKI) kurulumu için gereklilik durumları aşağıdaki gibi incelenmiştir:
1 Preparing a unified kernel image
Temel kurulum için gerekli mi: Evet.
Dolaylı yoldan gerekli mi: Hayır (Doğrudan gerekli).
Neden gerekli: UKI (Unified Kernel Image) kullanabilmek için öncelikle bu imajın oluşturulması gerekir. Ancak belgede belirtildiği gibi, bu başlık altındaki yöntemlerden sadece birini seçip uygulamak yeterlidir.
Metnin kendisi: Bir UKI imajı oluşturmanın ve onu uygun yere (esp/Linux dizini) kurmanın birkaç yolu vardır. İhtiyaçlarınıza göre aşağıdaki araçlardan birini seçebilirsiniz ve alt bölümlerden sadece birini uygulamanız yeterlidir.
1.1 mkinitcpio
Temel kurulum için gerekli mi: Seçime bağlı.
Dolaylı yoldan gerekli mi: Evet (Eğer UKI oluşturma aracı olarak bunu seçerseniz gerekli).
Neden gerekli: UKI'yi derlemek için kullanılan ana alternatiflerden biridir.
Metnin kendisi: systemd-ukify yüklü değilse veya --no-ukify seçeneği ile devre dışı bırakılmamışsa, mkinitcpio UKI'yi kendisi birleştirecektir.
1.1.1 Kernel command line
Temel kurulum için gerekli mi: Seçime bağlı (mkinitcpio tercih edildiyse gerekli).
Dolaylı yoldan gerekli mi: Evet.
Neden gerekli: Sistemin doğru şekilde önyüklenebilmesi için kök disk veya güvenlik yapılandırmaları gibi çekirdek parametrelerinin UKI içerisine yerleştirilmesi gerekir.
Metnin kendisi: mkinitcpio, /etc/cmdline.d dizinindeki komut satırı dosyalarından veya /etc/kernel/cmdline dosyasından çekirdek parametrelerini okumayı destekler.
1.1.2 .preset file
Temel kurulum için gerekli mi: Seçime bağlı (mkinitcpio tercih edildiyse gerekli).
Dolaylı yoldan gerekli mi: Evet.
Neden gerekli: mkinitcpio'nun EFI sistem bölümünün (ESP) bağlanma noktasına UKI'yi nereye kaydedeceğini ve nasıl yapılandıracağını belirlemesi için şarttır.
Metnin kendisi: Uygun EFI sistem bölümü bağlama noktasıyla birlikte /etc/mkinitcpio.d/linux.preset veya kullandığınız preset dosyası düzenlenmeli ve PRESET_uki= parametresinin başındaki yorum işareti kaldırılmalıdır.
1.1.3 pacman hook
Temel kurulum için gerekli mi: Hayır (Sistemin çalışması için şart değil).
Dolaylı yoldan gerekli mi: Evet (Sistemin güncel kalması ve sorunsuz çalışmaya devam etmesi için gereklidir).
Neden gerekli: Sistem güncellendiğinde (çekirdek veya mikrokod), eski UKI dosyasının manuel müdahale olmadan otomatik olarak yeniden derlenmesini sağlar.
Metnin kendisi: systemd-stub, mikrokod (intel-ucode ve amd-ucode) ve linux çekirdeğine gelen güncellemeler otomatik olarak bir UKI yeniden inşasını (rebuild) tetikleyecektir.
1.1.4 Building the UKIs
Temel kurulum için gerekli mi: Seçime bağlı (mkinitcpio tercih edildiyse gerekli).
Dolaylı yoldan gerekli mi: Evet.
Neden gerekli: Yapılandırma ayarları bittikten sonra UKI dizininin oluşturulması ve imaj dosyasının üretilmesi işleminin komut satırından tetiklenmesidir.
Metnin kendisi: UKI'ler için dizinin var olduğundan emin olunmalı ve initramfs yeniden oluşturulmalıdır (örneğin; mkdir -p esp/EFI/Linux ve mkinitcpio -p linux komutlarıyla).
1.2 kernel-install
Temel kurulum için gerekli mi: Seçime bağlı (Alternatif UKI oluşturma yöntemi).
Dolaylı yoldan gerekli mi: Evet.
Neden gerekli: mkinitcpio yerine systemd'nin sağladığı aracı kullanmak isteyenler için alternatif bir kurulum yoludur.
Metnin kendisi: Kernel-install systemd'nin bir parçasıdır ve UKI oluşturmak için systemd-ukify paketini gerektirir. Yapılandırmak için /etc/kernel/install.conf dosyasında layout=uki ayarlanmalıdır.
1.3 dracut
Temel kurulum için gerekli mi: Seçime bağlı (Alternatif yöntem).
Dolaylı yoldan gerekli mi: Evet.
Neden gerekli: Başka bir initramfs/UKI üretme aracıdır.
Metnin kendisi: Detaylar için doğrudan dracut#Unified kernel image sayfasına yönlendirme yapılmıştır.
1.4 ukify
Temel kurulum için gerekli mi: Seçime bağlı (Alternatif yöntem).
Dolaylı yoldan gerekli mi: Evet.
Neden gerekli: UKI imajlarını derlemek için kullanılan başka bir systemd aracıdır ancak tek başına initramfs oluşturamadığından diğer araçlara ihtiyaç duyar.
Metnin kendisi: ukify kendi başına initramfs oluşturamadığı için bu işlem dracut, mkinitcpio veya booster kullanılarak önceden yapılmalıdır. Sonrasında çekirdek, initramfs ve komut satırı ukify komutuyla birleştirilir.
1.5 Manually
Temel kurulum için gerekli mi: Hayır.
Dolaylı yoldan gerekli mi: Hayır.
Neden gerekli: Genellikle otomasyon araçlarının tercih edildiği temel kurulumda gerekli değildir; sadece özel durumlarda imajı manuel birleştirmek isteyenler içindir.
Metnin kendisi: Kullanmak istenilen çekirdek komut satırı bir dosyaya konularak ve objcopy(1) aracı kullanılarak bölümlerin (section) ofsetleri dinamik olarak hesaplanıp manuel bir bundle (paket) dosyası yaratılır.
2 Signing the UKIs for Secure Boot
Temel kurulum için gerekli mi: Hayır.
Dolaylı yoldan gerekli mi: Hayır (Sadece Güvenli Önyükleme (Secure Boot) etkinse gereklidir).
Neden gerekli: Cihazınızda Secure Boot açık olduğunda, donanım imzasız boot dosyalarını çalıştırmayacağı için imajların imzalanması gerekir.
Metnin kendisi: Bu dosya ve içerdiği tüm unsurlar, Güvenli Önyükleme ile kullanılmak üzere kolayca imzalanabilir.
2.1 sbctl / 2.2 mkinitcpio / 2.3 ukify (Güvenli Önyükleme Alt Başlıkları)
Temel kurulum için gerekli mi: Hayır.
Dolaylı yoldan gerekli mi: Hayır.
Neden gerekli: Secure Boot işlemini otomatikleştirmek için kullanılan farklı araçların nasıl yapılandırılacağını açıklar.
Metnin kendisi: sbctl, güncellenen ikili dosyaları imzalamak için hooklar sağlar. mkinitcpio için, üretilen UKI'ler bir post hook betiği (/etc/initcpio/post/uki-sbsign) yazılarak sbsign ile imzalanabilir. ukify kullanıldığında ise /etc/kernel/uki.conf dosyasına SecureBootSigningTool=systemd-sbsign ayarı eklenerek otomatik imzalama yapılabilir.
3 Booting
Temel kurulum için gerekli mi: Evet.
Dolaylı yoldan gerekli mi: Hayır (Doğrudan gerekli).
Neden gerekli: Oluşturulan UKI'nin çalıştırılarak işletim sisteminin başlatılabilmesi için bir önyükleme (boot) mekanizmasına ihtiyaç vardır. Ancak bu başlık altındaki yöntemlerden yalnızca biri seçilmelidir.
Metnin kendisi: Birleşik çekirdek imajlarının EFI aygıtından doğrudan ya da Limine, systemd-boot, rEFInd ve GRUB gibi bir boot yükleyicisi üzerinden başlatılma yöntemleri açıklanmıştır.
3.1 Limine / 3.2 systemd-boot / 3.3 rEFInd / 3.4 GRUB
Temel kurulum için gerekli mi: Seçime bağlı.
Dolaylı yoldan gerekli mi: Evet (Bir bootloader kullanılacaksa sadece biri seçilmeli).
Neden gerekli: UEFI firmware'i yerine bir önyükleyici menüsü kullanılmak isteniyorsa UKI'nin bu araçlara tanıtılması gerekir.
Metnin kendisi: Limine UKI'leri otomatik algılamaz ve limine.conf içinde manuel yol belirtmek gerekir. systemd-boot, esp/EFI/Linux/ dizinini otomatik taradığı için konfigürasyona gerek duymaz. rEFInd UKI'leri otomatik algılayabilir veya refind.conf ile manuel eklenebilir. GRUB ise UKI'leri chainload (zincirleme yükleme) yöntemiyle yükleyebilir.
3.5 Directly from UEFI
Temel kurulum için gerekli mi: Seçime bağlı (Eğer aracı bir önyükleyici kullanılmayacaksa gerekli).
Dolaylı yoldan gerekli mi: Evet.
Neden gerekli: Sistemde GRUB veya systemd-boot gibi ek bir yazılım olmadan doğrudan anakartın UEFI desteğiyle Linux'u başlatmak içindir.
Metnin kendisi: .efi dosyası için efibootmgr aracı kullanılarak (örn. efibootmgr --create --disk /dev/sdX --part ... --loader '\EFI\Linux\arch-linux.efi') bir UEFI önyükleme kaydı doğrudan oluşturulabilir.
4 See also
Temel kurulum için gerekli mi: Hayır.
Dolaylı yoldan gerekli mi: Hayır.
Neden gerekli: Kurulumla doğrudan ilgisi yoktur, konu hakkında daha detaylı araştırma yapmak isteyenler için referans niteliğindedir.
Metnin kendisi: İlgili diğer dökümanların ve UKI spesifikasyonlarının dış bağlantılarını içerir ("All Systems Go! talk on UKIs", "Unifie
d kernel image specification", vb.).
Konuyla ilgili daha fazla netleştirmemi istediğiniz veya detayına inmemi tercih ettiğiniz belirli bir araç (örneğin sadece mkinitcpio süreci) var mı?

Neresi ne olmalı ve nedir?
efibootmgr --create: Anakartın NVRAM'ine (BIOS menüsüne) yeni bir önyükleme kaydı ekler.
--disk /dev/sdX: EFI bölümünün (esp) bulunduğu fiziksel ana disktir. (Örneğin: /dev/sda veya /dev/nvme0n1. Bunu lsblk komutu ile bulabilirsin.)
--part Y: EFI bölümünün (partition) diskteki sırasıdır. (Örneğin: /dev/sda1 ise buraya 1 yazmalısın.)
--label "Arch Linux": Bilgisayar açılırken BIOS önyükleme (boot) menüsünde göreceğin işletim sistemi ismidir.
--loader '\EFI\Linux\arch-linux.efi': Oluşturduğumuz UKI dosyasının konumudur. UEFI standartları gereği yol ayırıcı olarak ters eğik çizgi (\) kullanılmıştır.
--unicode: Karakterlerin doğru kodlanmasını sağlayarak uyumluluğu artırır.
Kurulumunu bu şekilde tamamladığında, sistemin hem mevcut donanımına tam uyumlu çalışacak hem de her türlü felaket senaryosunda (BIOS sıfırlanması vb.) BOOTx64.EFI geri dönüş yolu sayesinde seni asla yarı yolda bırakmayacaktır.
Bu yapılandırmayı kendi sistemine uyarlarken kafana takılan spesifik bir nokta var mı?
Windows kurulumu yapıp yeniden CachyOS yükledim. Teşekkür ederim yine de.
CachyOS üzerinden Windows kurulumu yapmanın pek sağlıklı olmadığını gördüm; nereye baksam, riske atmak istemedim. O kadar uğraşmak da istemedim açıkçası.