Değerli arkadaşlar merhabalar. Bu bir geribildirimdir.
Bilgisayarımı yeni kurdum ve gerekli yazılımlarımı yükledim. Ayrı bir arşiv diskim var. İşlemlerim gereği GRUB’u güncelledim, güncellerken arşiv diskini sökmeyi unuttum. GRUB, Arşiv diskini de kaydetti.
Merhaba, Şöyle bir kaynak buldum faydalı olabilir.
1. Arşiv Diskinden GRUB Kaydını Silme
Adım 1: Arşiv Diskinin Hangi Disk Olduğunu Tespit Et
Öncelikle arşiv diskinin hangi cihaz adıyla (örneğin, /dev/sdb, /dev/sdc) bağlı olduğunu tespit edelim. Terminalde şu komutu çalıştırın:
lsblk
Bu komut, tüm bağlı diskleri ve bölümleri gösterecektir. Arşiv diskini buradan tespit edin.
Örnek çıktı:
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 500G 0 disk
├─sda1 8:1 0 512M 0 part /boot/efi
├─sda2 8:2 0 100G 0 part /
└─sda3 8:3 0 400G 0 part /home
sdb 8:16 0 1T 0 disk <-- Arşiv Disk
└─sdb1 8:17 0 1T 0 part /mnt/archive
Bu durumda arşiv diskiniz /dev/sdb.
Adım 2: GRUB Kayıtlarını Arşiv Diskinden Silme
GRUB kaydı arşiv diskinizin MBR (Master Boot Record) veya GPT (GUID Partition Table) bölgesine yazılmış olabilir. Bu kaydı temizlemek için:
Dikkat: Yanlış disk seçmek sisteminizin çalışmamasına neden olabilir. Arşiv diskinizin doğru olduğundan emin olun.
sudo dd if=/dev/zero of=/dev/sdb bs=512 count=1
Bu komut, arşiv diskinizin ilk 512 baytını (MBR) sıfırlar ve GRUB kaydını kaldırır.
2. GRUB’un Diğer Disklere Yazmasını Engelleme
Her kernel veya GRUB güncellemesinde GRUB’un yalnızca belirli diske yazmasını sağlamak için grub.cfg dosyasını düzenlemeli ve update-grub komutunun hangi diskleri dikkate alacağını belirtmelisiniz.
Adım 1: GRUB Yapılandırma Dosyasını Düzenleyin
Aşağıdaki dosyayı düzenleyin:
sudo nano /etc/default/grub
Bu dosyada aşağıdaki satırı bulun:
GRUB_DISABLE_OS_PROBER=false
Bu satırı aşağıdaki şekilde değiştirin:
GRUB_DISABLE_OS_PROBER=true
Bu, GRUB’un diğer disklerde işletim sistemi aramasını engeller.
Burada /dev/sda sistem diskinizdir. Arşiv diskinizi buraya dahil etmeyin.
Adım 3: GRUB Konfigürasyonunu Güncelleyin
Son olarak, GRUB’u güncelleyin:
sudo update-grub
3. Ekstra Önlemler
GRUB Güncelleme Sırasında Diskleri Ayırın: Kernel veya GRUB güncellemeleri sırasında arşiv diskinizi sökerek GRUB’un bu diski dikkate almasını önleyebilirsiniz.
BIOS Sırasını Düzenleyin: BIOS’tan arşiv diskinin boot sırasına eklenmesini engelleyin.
Bu adımları uyguladıktan sonra, GRUB yalnızca sistem diskinizi kullanacak ve arşiv diskinizi dikkate almayacaktır.
Yöntem HDD’nin ilk sektörlerine sıfır yazdırıyor ve içeriği uçuruyor. Çünkü MBR’nin içerisinde MFT dediğimiz bir tablo yeralır ve HDD’nin içeriği burada barındırılır. Bunu uçurursak, içerik uçar.
Yöntemi yapay zekanın bu önerisine dayanarak denedim ve her iki sistemim de açılmaz oldu. Gerek komutlarla, gerekse kurulum medyalarıyla yaptığım müdahaleler sonuçsuz kaldı ve her iki sistemimi kaybettim. Yeniden kurulum yaptım.
Ben bunun yolunu daha önceki konunun son gönderisinde yazdım. Çözüm işletim sistemlerinin kurulumu anında bilgisayarda sadece kurulum yapılan diskin bağlı olması. Sonra hepsini birden bağlayıp, kullanırkende seçimi biostan yapmak.
Mustafa bey, öyle yapıyorum zaten. Devamlı uyguladığım bir yöntemdir.
Ancak üşenir de güncelleme yaparken diskleri çıkarmazsam herşey mahvoluyor. Ben de bunu engellemenin yoluna bakıyorum. Bakın şu an diskimi çıkarmayı unutup grub güncelledim, diske kendini kaydetti. Bundan sonra nasıl oldurmayız, bunun bir ayarı yok mu, ona bakıyoruz.
Demek ki hiç kernel güncellemesi yapmıyorsunuz. Gelen bazı güncellemeler içerisinde kernel güncellemesi de yer alır. O güncellemeyi yaparken disklerinizin hepsi takılıysa, grub güncellemesi sırasında tüm diskleriniz gruba kaydedilir.
Dikkatsizlik, unutkanlık vb gibi durumlarda sizin de ayarınız bozulabilir.
Bu normalde olmuyor. Ofiste de böyle iki diskli sistemimiz var, MBR sistem. Diğer diskte işletim sistemi yok, seçince hiçbir şey açılmıyor doğal olarak. 2 senedir de aktif kullanıyoruz. Kurarken bir hata yapmışsınız muhtemelen ama düzeltilebilir.
MBR gerçekten de o diskteki ilk 512 byte daymış. Bunu normal sitelerde de söylüyorlar. Komut doğru yani. sudo dd if=/dev/zero of=/dev/sdY bs=512 count=1
Diyelim ki BIOS ise, Pardus USB canlı sistem açıp:
mount /dev/sdb3 /mnt #home dizini hangisiyse, bakıp ona göre sda filan değiştirin.
for i in /dev /dev/pts /proc /sys /sys/firmware/efi/efivars /run; do mount -B $i /mnt/$i; done
chroot /mnt
grub-install /dev/sdb
update-grub
update-initramfs -c -k all #bu çok önemli kerneli tekrar derliyor.
Yok UEFI ise:
mount /dev/sdb3 /mnt #home dizini hangisiyse, bakıp ona göre sda filan değiştirin.
mount /dev/sdb1 /mnt/boot/efi #burası da olmasını istediğiniz EFI partition.
for i in /dev /dev/pts /proc /sys /sys/firmware/efi/efivars /run; do mount -B $i /mnt/$i; done
chroot /mnt
grub-install /dev/sdb
update-grub
update-initramfs -c -k all #bu çok önemli kerneli tekrar derliyor.
Son olarak da pardus canlı sistemde başlangıç onarmada grub yeniden yükleme şeysi var.
Bu bende her zaman işe yaramıştır. Kaynaklar: https://wiki.debian.org/GrubEFIReinstall
Kernel güncellemeleride dahil olmak üzere tüm güncellemeleri yapıyorum. Sadece Pardus’da değil bu arada tüm dağıtımları bu şekilde hiç sıkıntı yaşamadan kullandım, kullanmayada devam ediyorum.
Bir dahaki kernel güncellemesinde tüm disklerin GRUB’a dahil olmaması için ne yapmam gerektiğini araştırmaya devam edeceğim.
Bu arada kurulumu DVD ile, grafik arayüzle, ve tüm diski kullan diyerek yaptım. O esnada başka bir disk takılı değildi. Yükleme bittikten sonra güncelleme yaptım ve yazılımlarımı kurdum.
Ben özellikle kurulum yaparken sadece kurulum yapılacak diski takıyorum eskiden beri. Windows kurarken de, başka bir dağıtım kurarken de.
Ama her kernel güncellemesinde disk çıkar, bilgisayarı kapat, yeniden tak, yeniden başlat… bununla uğraşmak istemiyorum. Daha önce kullandığım dağıtımlarda da kernelin güncellenmesiyle diğer diski(windows) kayıt altına alıyordu eminim. Ancak arşiv disklerini almıyordu. Nasıl bir değişiklik yaptılarsa artık arşiv diskleri de GRUB’a dahil oluyor. İyi de, ben her güncelleme geldiğinde disk çıkar-tak mı yapacağım?
etc/default/grub 'daki GRUB betiği dosyamın içeriği aşağıdaki gibi:
# If you change this file, run 'update-grub' afterwards to update
# /boot/grub/grub.cfg.
# For full documentation of the options in this file, see:
# info -f grub -n 'Simple configuration'
GRUB_DEFAULT=0
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Pardus`
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX="iommu=soft"
GRUB_THEME="/usr/share/grub/themes/dolunay/theme.txt"
# Uncomment to enable BadRAM filtering, modify to suit your needs
# This works with Linux (no patch required) and with any kernel that obtains
# the memory map information from GRUB (GNU Mach, kernel of FreeBSD ...)
#GRUB_BADRAM="0x01234567,0xfefefefe,0x89abcdef,0xefefefef"
# Uncomment to disable graphical terminal (grub-pc only)
#GRUB_TERMINAL=console
# The resolution used on graphical terminal
# note that you can use only modes which your graphic card supports via VBE
# you can see them in real GRUB with the command `vbeinfo'
GRUB_GFXMODE=auto,1024x768,640x480
GRUB_GFXPAYLOAD_LINUX=1024x768
# Uncomment if you don't want GRUB to pass "root=UUID=xxx" parameter to Linux
#GRUB_DISABLE_LINUX_UUID=true
# Uncomment to disable generation of recovery mode menu entries
#GRUB_DISABLE_RECOVERY="true"
# Uncomment to get a beep at grub start
#GRUB_INIT_TUNE="480 440 1"
Yapay zeka, şöyle bir satır eklememi ve kaydetmemi öneriyor:
GRUB_DISABLE_OS_PROBER=true
Kodu girdim ve kaydedip terminalden GRUB’u yeniledim. Daha sonra sistem açılmaz oldu.
Müsait bir zamanda sistemin imajını alacağım ve bu komutu tekrar deneyeceğim. Açılmaz olursa imajdan geri yüklerim.
Yeniden başlatarak Pardusa girebildim. Ancak masaüstünden diske erişmeye çalıştığımda, disk ışığı yanık şekilde kaldı, pardus dondu, power düğmesinden zorla kapattım.
Diski söküp windowsXP yüklü diğer bilgisayarıma takara başlattım. (Çünkü bu işi en iyi windowsXP yapıyor). Windows açılmadan evvel açık mavi ekrana düştü ve “…tutarlılık gözden geçirmesi gerekmekte…” şeklinde uyardı. İzin verdim ve 1-2dk’da bitti. Şimdi Pardus’a takıp açınca sorun ortadan kalktı.
Şunu not alalaım: GRUB’u silmek için ilk sektörlere sıfır yazdırma yaptıysanız, ardından en azından herhangi bir windows’a geçip fdisk çekin. Değilse benim gibi hata alırsınız.
Bu arada, bu GRUB yazdırma, GRUB’un işletim sistemi yükllü olmayan arşiv disklerini kapsama olayı önemli bir geribildirim. Ama pardus ekibinden en azından “sorunun nedenini bilmiyoruz” ya da “üzerinde çalışıyoruz” gibi bir yanıt beklerdim.
@kaan ? Söyleyecek birşeyin var mı? Önerin olursa değerlendirmek isterdim.
Bios’dan ahci, ide denenebilir.
Farklı bir çekirdekten açılış denenebilir.
Eski bir yöntem ama çekirdek parametresi denenebilir libata.force=3.0Gbps smartctl ile disk sağlığı kontrol edilebilir.
Gerek windows ortamında HDTune ile, gerekse linux ortamında GsmartControl ile yaptığım tüm testlerde disk sağlıklı görünüyor. Bad sector vs yok. HDTune testinde disk yüzeyi kaymak gibi görünüyor, iniş çıkış zigzag yok.
Sorun sadece bu arşiv diskinde değil. Şöyle açıklayayım: Sistemimi uçurmadan evvel, arşiv disklerimden birini çıkarınca sistemim hiç açılmaz oldu ve GRUB hata verdi. Diski yeniden takınca açılır oldu. GRUB, RAID benzeri bir yapı oluşturmuş. Disklerden biri çıkınca sorun oluşuyordu, şimdi durum nedir bilmiyorum. Sistemimi bu şekilde kullanmak zorundayım, çalışma düzenim bu benim.
BIOS ayarlarına gittim, çok anlamamakla beraber bir değişiklik yapamadım, BIOS’da herşey normal görünüyordu.