Arch Linux - BUG FS#38041 Workaround

ამ პოსტში განვიხილავ FS#38041-ის workaround-ს.














რამდენიმე თვის წინ განვაახლე GRUB-ი და მეთქი თავიდან დავაგენერირებ კონფიგს და მივიღე Syntax Error-ი გრაბისგან. ეს ყოფილა ბაგი FS#38041, რომელიც არის FS#37904-ის დუპლიკატი.
Syntax Error-ის მიზეზი ადვილი გასაგებია მიღებული output-იდან, რომელიც დაახლოებით ასეთია:

Generating grub configuration file ...
Found theme: /boot/grub/themes/Archxion/theme.txt
Found linux image: /boot/vmlinuz-linux
Found initrd image: /boot/initramfs-linux.img
error: out of memory.
error: syntax error.
error: Incorrect command.
error: syntax error.
Syntax error at line 179
Syntax errors are detected in generated GRUB config file.
Ensure that there are no errors in /etc/default/grub
and /etc/grub.d/* files or please file a bug report with
/boot/grub/grub.cfg.new file attached.done

მოკლედ 179-ე ხაზის ბოლოს აკლებს ფიგურულ ფრჩხილს(}). აქედან გამომდინარე პრობლემა უკვე კაი ხნის გამოსწორებული უნდა იყოს, მაგრამ ბაგი დღემდე მოქმედია.
Workaround მარტივია. გახსენით /etc/default/grub* ფაილი სასურველი Text Editor-ით და ბოლოში მიუ-paste-ეთ ეს ხაზი:

GRUB_DISABLE_SUBMENU=y

დაა-save-ეთ ფაილი და ახლა უკვე შეძლებთ კონფიგის გენერირებას (ბრძანება მუშაობს მხოლოდ BIOS-იან სისტემებზე):

# ~> grub-mkconfig -o /boot/grub/grub.cfg

* Grub-mkconfig-ი GRUB2-ის კონფიგურაციის გენერირებისას ითვალისწინებს /etc/default/grub ფაილში არსებული ინსტრუქციას და /etc/grub.d/-ში არსებული ფაილებს.
;-)

ამ პოსტის დასაწერად გამოვიყენე:
  1. FS#38041 - grub 1:2.00.1282.g5ae5c54-1 will not generate grub.cfg file syntax errors
  2. FS#37904 - [grub] 10_linux generates submenu without closing bracket with grub-mkconfig
  3. GRUB - ArchWiki

Comments