update-grub
Ubuntu 20.04를 실행 중인데 명령을 실행하면 다음 오류가 발생합니다.
root@ubuntu:/# update-grub
Sourcing file `/etc/default/grub'
Sourcing file `/etc/default/grub.d/init-select.cfg'
Création du fichier de configuration GRUB…
Image Linux trouvée : /boot/vmlinuz-5.8.0-25-generic
Image mémoire initiale trouvée : /boot/initrd.img-5.8.0-25-generic
Image Linux trouvée : /boot/vmlinuz-5.4.0-53-generic
CentOS Linux 8 (Core) trouvé sur /dev/sdb9
Image Linux trouvée : /boot/vmlinuz-5.8.0-25-generic
Image mémoire initiale trouvée : /boot/initrd.img-5.8.0-25-generic
Image Linux trouvée : /boot/vmlinuz-5.4.0-53-generic
CentOS Linux 8 (Core) trouvé sur /dev/sdb9
Image Linux trouvée : /boot/vmlinuz-5.8.0-25-generic
Image mémoire initiale trouvée : /boot/initrd.img-5.8.0-25-generic
Image Linux trouvée : /boot/vmlinuz-5.4.0-53-generic
Image Linux trouvée : /boot/vmlinuz-5.8.0-25-generic
Image mémoire initiale trouvée : /boot/initrd.img-5.8.0-25-generic
Image Linux trouvée : /boot/vmlinuz-5.4.0-53-generic
CentOS Linux 8 (Core) trouvé sur /dev/sdb9
Image Linux trouvée : /boot/vmlinuz-5.8.0-25-generic
Image mémoire initiale trouvée : /boot/initrd.img-5.8.0-25-generic
Image Linux trouvée : /boot/vmlinuz-5.4.0-53-generic
Adding boot menu entry for UEFI Firmware Settings
erreur : syntax error.
erreur : Incorrect command.
erreur : syntax error.
erreur : Incorrect command.
erreur : syntax error.
Erreur de syntaxe à la ligne 159
Des erreurs de syntaxe sont détectées dans le fichier de configuration
de GRUB. Veuillez vérifier qu'il n'y a pas d'erreur dans les fichiers
/etc/default/grub et /etc/grub.d/*. Sinon veuillez signaler un bogue
en joignant le fichier /boot/grub/grub.cfg.new.
제안된 대로 159번째 줄에서 파일을 확인했는데 /boot/grub/grub.cfg.new
다음은 해당 줄과 그 주변에 해당하는 코드 조각입니다.
152 ### END /etc/grub.d/31_linux_xen ###
153
154 ### BEGIN /etc/grub.d/34_memtest86+ ###
155 ### END /etc/grub.d/34_memtest86+ ###
156
157 ### BEGIN /etc/grub.d/35_os-prober_proxy ###
158 submenu "Options avancées pour Ubuntu"{
159 function gfxmode {
160 set gfxpayload="${1}"
161 if [ "${1}" = "keep" ]; then
162 set vt_handoff=vt.handoff=7
163 else
164 set vt_handoff=
165 fi
166 }
167 if [ "${recordfail}" != 1 ]; then
168 if [ -e ${prefix}/gfxblacklist.txt ]; then
169 if hwmatch ${prefix}/gfxblacklist.txt 3; then
170 if [ ${match} = 0 ]; then
171 set linux_gfx_mode=keep
172 else
173 set linux_gfx_mode=text
174 fi
175 else
176 set linux_gfx_mode=text
177 fi
178 else
179 set linux_gfx_mode=keep
180 fi
181 else
182 set linux_gfx_mode=text
183 fi
184 export linux_gfx_mode
158번 줄에 "{"가 닫히지 않는 문제가 있는 것 같지만 submenu "Options avancées pour Ubuntu"{
그 출처를 찾을 수 없습니다...
나는 시동 복구를 시도했습니다 (이 답변에서 알 수 있듯이)GRUB 오류: 구문 오류입니다. 오류: 잘못된 명령) 그러나 시작하라는 첫 번째 명령은 다음과 같습니다.
sudo chroot "/mnt/boot-sav/mapper/isw_cbgbbifgbg_Volume1p2" dpkg --configure -a
동일한 구문 오류 문제가 발생했습니다.
답변1
명령 update-grub
이 실행된 후 grub-mkconfig -o /boot/grub/grub.cfg "$@"
디렉토리의 스크립트가 실행됩니다 /etc/grub.d/
. grub.cfg
다음과 같은 주석 라인과 함께 이러한 스크립트가 생성하는 것
### BEGIN /etc/grub.d/35_os-prober_proxy ###
grub.cfg
파일의 각 섹션을 담당하는 스크립트를 나타냅니다 .
귀하의 경우 해당 /etc/grub.d/35_os-prober_proxy
스크립트와 디렉토리에서 바로 뒤에 나오는 스크립트(기본 ASCII 영숫자 정렬 순서)를 연구해야 합니다.
반면에 내 Debian 10 시스템에서 이 줄은 일반 Linux 부팅 항목을 생성하는 function gfxmode {
출력의 일부 이며 Xen 스타일 가상화(설치된 경우)에 대한 부팅 항목을 생성하는 또 다른 스크립트가 있습니다. , 그런 다음 다른 운영 체제에 대한 시작 항목을 검색하고 추가합니다. 분명히 우분투는 일을 조금 다르게 하지만, 일부 부품이 어떤 방식으로든 잘못 생산되었을 수도 있다는 의심을 갖게 합니다./etc/grub.d/10_linux
20_linux_xen
30_os-prober
grub.cfg
답변2
그리고
- 데비 앤트릭시
- 그럽 커스터마이저 5.2.3
달리기:
sudo cp /boot/grub/grub.cfg.new /. # put your home path here
sudo rm /boot/grub/grub.cfg.new
grub-customizer
그런 다음 복원 버튼(오른쪽 상단)을 누르고 적용하십시오.