1. Nabootujte z instalačního zdroje (live CD, instalační DVD nebo síť).
2. Až se zobrazí nabídka zavaděče jádra, vyberte položku „rescue“ pomocí kláves se šipkami nahoru/dolů.
3. Vyberte možnost 1 (Continue) a stisknutím klávesy „Enter“ připojte systém pod „/mnt/sysimage“.
4. Stisknutím klávesy „Enter“ otevřete shell.
5. Změňte kořenový souborový systém na „/mnt/sysimage“:
sh-4.4# chroot /mnt/sysimage
6. Přeinstalujte zavaděč jádra GRUB 2 do MBR bootovacího zařízení:
sh-4.4# grub2-install /dev/sda
nebo přeinstalujte balíčky „grub2-efi“ a „shim“:
sh-4.4# yum reinstall grub2-efi shim
7. Ukončete chroot a rescue shell:
sh-4.4# exit sh-4.4# exit
(Systém se restartuje, provede úplné přenastavení bezpečnostního kontextu SELinuxu a poté se znovu restartuje.)
1. Restartujte systém.
2. Až se zobrazí nabídka zavaděče jádra, vyberte položku „rescue“ pomocí kláves se šipkami nahoru/dolů.
3. Přihlaste se do záchranného režimu.
4. Vytvořte nový konfigurační soubor pro GRUB 2:
# grub2-mkconfig -o /boot/grub2/grub.cfg
(na systému s firmwarem BIOS)
nebo
# grub2-mkconfig -o /boot/efi/EFI/${ID}/grub.cfg
(na systému s firmwarem UEFI)
5. Restartujte systém:
# reboot
1. Restartujte systém.
2. Až se zobrazí nabídka zavaděče jádra, stiskněte libovolnnou klávesu pro přerušení bootovacího procesu, kromě klávesy „Enter“.
3. Vyberte jádro pomocí kláves se šipkami nahoru/dolů.
4. Stiskněte klávesu „c“ pro spuštění GRUB 2 shellu.
5. Zaveďte XFS a LVM moduly:
grub> insmod xfs grub> insmod lvm
6. Zobrazte dostupná zařízení:
grub> ls (lvm/vg00-home_lv) (lvm/vg00-tmp_lv) (lvm/vg00-var_lv) (lvm/vg00-usr_lv) (lvm/v g00-root_lv) (lvm/vg00-swap_lv) (hd0) (hd0,msdos2) (hd0,msdos1)
7. Zobrazte informace o prvním diskovém oddílu na prvním disku:
grub> ls (hd0,msdos1) Partition hd0,msdos1: Filesystem type xfs, UUID a5eeb5e9-9cd4-437c-b8bb-3d928a0daf5e - Partition start at 1024KiB - Total size 524288KiB
8. Zobrazte obsah potenciálního bootovacího oddílu:
grub> ls (hd0,msdos1)/ efi/ grub2/ grub/ System.map-4.18.0-305.7.1.el8_4.x86_64 config-4.18.0-305.7.1. el8_4.x86_64 vmlinuz-4.18.0-305.7.1.el8_4.x86_64 initramfs-0-rescue-73a3b006041 74b4f9843524821768b43.img vmlinuz-0-rescue-73a3b00604174b4f9843524821768b43 ini tramfs-4.18.0-305.7.1.el8_4.x86_64.img initramfs-4.18.0-305.7.1.el8_4.x86_64kdu mp.img
9. Nastavte bootovací oddíl:
grub> set root=(hd0,msdos1)
10. Zaveďte jádro a zadejte kořenový souborový systém:
grub> linux (hd0,msdos1)/vmlinuz-4.18.0-305.7.1.el8_4.x86_64 root=/dev/mapper/v g00-root_lv
(Pro doplnění cesty k jádru použijte klávesu „Tab“.)
11. Zaveďte prvotní obraz RAM disku:
grub> initrd (hd0,msdos1)/initramfs-4.18.0-305.7.1.el8_4.x86_64.img
(Pro doplnění cesty k obrazu initramfs použijte klávesu „Tab“.)
12. Spusťte systém:
grub> boot
13. Vytvořte nový konfigurační soubor pro GRUB 2:
# grub2-mkconfig -o /boot/grub2/grub.cfg
(na systému s firmwarem BIOS)
nebo
# grub2-mkconfig -o /boot/efi/EFI/${ID}/grub.cfg
(na systému s firmwarem UEFI)
14. Restartujte systém:
# reboot
1. Restartujte systém.
2. Až se zobrazí nabídka zavaděče jádra, stiskněte libovolnnou klávesu pro přerušení bootovacího procesu, kromě klávesy „Enter“.
3. Vyberte jádro pomocí kláves se šipkami nahoru/dolů.
4. Stiskněte klávesu „e“ pro upravení položky.
5. Pomocí kurzorových kláves přejděte na řádek začínající slovem „linux“, „linux16“ či „linuxefi“.
6. Stisknutím klávesy „End“ přesuňte kurzor na konec řádku.
7. Doplňte „systemd.unit=emergency.target“ pro bootování do nouzového režimu.
8. Stiskněte klávesy Ctrl+x pro spuštění systému s upraveným nastavením.
9. Přihlaste se do nouzového režimu.
10. Zkontrolujte, které souborové systémy jsou aktuálně připojeny:
# mount
11. Připojte kořenový souborový systém v režimu čtení a zápisu:
# mount -o remount,rw /
12. Připojte všechny souborové systémy uvedené v /etc/fstab:
# mount -a
13. Upravte /etc/fstab v případě chyb (neexistující UUID / přípojný bod či nesprávné volby připojení):
# vi /etc/fstab
14. Připojte znovu všechny souborové systémy a ověřte, zda je /etc/fstab v pořádku:
# mount -a
15. Restartujte systém:
# reboot
1. Restartujte systém.
2. Až se zobrazí nabídka zavaděče jádra, stiskněte libovolnnou klávesu pro přerušení bootovacího procesu, kromě klávesy „Enter“.
3. Vyberte jádro pomocí kláves se šipkami nahoru/dolů.
4. Stiskněte klávesu „e“ pro upravení položky.
5. Pomocí kurzorových kláves přejděte na řádek začínající slovem „linux“, „linux16“ či „linuxefi“.
6. Stisknutím klávesy „End“ přesuňte kurzor na konec řádku.
7. Doplňte „rd.break“ pro přerušení bootovacího procesu a získání příkazového řádku.
8. Stiskněte klávesy Ctrl+x pro spuštění systému s upraveným nastavením.
9. Po spuštění shellu z initramfs připojte souborový systém „/sysroot“ v režimu čtení a zápisu:
switch_root:/# mount -o remount,rw /sysroot
10. Změňte kořenový souborový systém na „/sysroot“ a spusťte nový shell:
switch_root:/# chroot /sysroot
11. Nastavte heslo uživatele root:
sh-4.4# passwd
12. Povolte obnovu bezpečnostního kontextu SELinuxu při příštím spuštění systému (pokud se SELinux používá):
sh-4.4# touch /.autorelabel
13. Ukončete shell:
sh-4.4# exit switch_root:/# exit
(Systém pokračuje v bootování, provede úplné přenastavení bezpečnostního kontextu SELinuxu a poté se znovu restartuje.)
1. Restartujte systém.
2. Až se zobrazí nabídka zavaděče jádra, stiskněte libovolnnou klávesu pro přerušení bootovacího procesu, kromě klávesy „Enter“.
3. Vyberte jádro pomocí kláves se šipkami nahoru/dolů.
4. Stiskněte klávesu „e“ pro upravení položky.
5. Pomocí kurzorových kláves přejděte na řádek začínající slovem „kernel“.
6. Stiskněte znovu klávesu „e“ pro upravení položky.
7. Doplňte „s“ nebo „single“ na konec řádku.
8. Stiskněte klávesu „Enter“ pro potvrzení změn a poté stisknutím „b“ spusťte systém s upraveným nastavením.
9. Nastavte heslo uživatele root.
10. Ukončete shell.
"Kernel panic"
=>
# yum reinstall kernel
"Yum Error: database disk image is malformed"
=>
# yum clean dbcache
nebo
# yum clean all
"Depsolving loop limit reached" / "<package_name-versionX> is a duplicate with <package_name-versionY>"
(duplicitní balíčky z neúspěšné yum transakce)
=>
# yum-complete-transaction
nebo
# package-cleanup --cleandupes # yum update
nebo
# tar -cvzf /tmp/rpm_db.tar.gz /var/lib/{rpm,yum} # yum check duplicates 2> /dev/null | awk '/duplicate/ {print $NF}' | xargs rpm -e --justdb --nodeps # yum update
"error: rpmdbNextIterator: skipping h#..."
(poškozená RPM databáze)
=>
# lsof | grep /var/lib/rpm # rm -f /var/lib/rpm/__db* # tar -cvzf rpmdb.tar.gz /var/lib/rpm # /usr/lib/rpm/rpmdb_verify /var/lib/rpm/Packages # mv /var/lib/rpm/Packages{,.broken} # /usr/lib/rpm/rpmdb_dump /var/lib/rpm/Packages.broken | /usr/lib/rpm/rpmdb_load /var/lib/rpm/Packages # /usr/lib/rpm/rpmdb_verify /var/lib/rpm/Packages # rm -f /var/lib/rpm/Packages.broken # rpm --rebuilddb # rpm -qa > /dev/null
"No execute permissions for /bin/chmod"
=>
# setfacl -m u::rwx,g::rx,o::rx /bin/chmod
nebo
# cp /bin/chmod /bin/chmod.broken # install -m 0755 /bin/chmod.broken /bin/chmod # rm -f /bin/chmod.broken
nebo
# perl -e 'chmod 0755, "/bin/chmod"'
nebo
# /lib64/ld-linux-x86-64.so.2 /bin/chmod +x /bin/chmod
nebo
# rpm -qf /bin/chmod coreutils-8.30-8.el8.x86_64 # yum reinstall coreutils
nebo
# cp /bin/ls /bin/ls.old && cat /bin/chmod > /bin/ls.old && /bin/ls.old 755 /bin/chmod && rm -f /bin/ls.old
nebo zkopírujte soubor z jiného serveru:
# scp <uzivatel>@<IP>:/bin/chmod /tmp # mv /tmp/chmod /bin # chown root:root /bin/chmod