Skip to content

Instantly share code, notes, and snippets.

@tomwhoiscontrary
Last active August 13, 2020 22:34
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save tomwhoiscontrary/a933ecc5b1b3a4dc399bd3a001b9c02b to your computer and use it in GitHub Desktop.
Save tomwhoiscontrary/a933ecc5b1b3a4dc399bd3a001b9c02b to your computer and use it in GitHub Desktop.
Fixing MacBook Fedora boot partition again
[liveuser@localhost-live ~]$ sudo fsck /dev/sda1
We trust you have received the usual lecture from the local System
Administrator. It usually boils down to these three things:
#1) Respect the privacy of others.
#2) Think before you type.
#3) With great power comes great responsibility.
fsck from util-linux 2.35.1
** /dev/sda1
Executing fsck_hfs (version 540.1-Linux).
** Checking non-journaled HFS Plus Volume.
The volume name is Linux HFS+ ESP
** Checking extents overflow file.
Unused node is not erased (node = 1)
** Checking catalog file.
** Checking multi-linked files.
** Checking catalog hierarchy.
** Checking extended attributes file.
** Checking volume bitmap.
Volume bitmap needs minor repair for orphaned blocks
** Checking volume information.
Invalid volume free block count
(It should be 44798 instead of 43182)
** Repairing volume.
** Rechecking volume.
** Checking non-journaled HFS Plus Volume.
The volume name is Linux HFS+ ESP
** Checking extents overflow file.
** Checking catalog file.
** Checking multi-linked files.
** Checking catalog hierarchy.
** Checking extended attributes file.
** Checking volume bitmap.
** Checking volume information.
** The volume Linux HFS+ ESP was repaired successfully.
[liveuser@localhost-live ~]$ sudo fsck /dev/sda1
fsck from util-linux 2.35.1
** /dev/sda1
Executing fsck_hfs (version 540.1-Linux).
** Checking non-journaled HFS Plus Volume.
The volume name is Linux HFS+ ESP
** Checking extents overflow file.
** Checking catalog file.
** Checking multi-linked files.
** Checking catalog hierarchy.
** Checking extended attributes file.
** Checking volume bitmap.
** Checking volume information.
** The volume Linux HFS+ ESP appears to be OK.
[liveuser@localhost-live ~]$
[liveuser@localhost-live ~]$ sudo -i
[root@localhost-live ~]# cd
[root@localhost-live ~]# pwd
/root
[root@localhost-live ~]# mkdir efi
[root@localhost-live ~]# mount /dev/sda1 efi
[root@localhost-live ~]# diff -rq /boot/efi /root/efi
Only in /root/efi: 3c43f7a201054aebabbcb9e6107a1e16
Only in /root/efi/EFI/fedora: .disk_label
Files /boot/efi/EFI/fedora/gcdia32.efi and /root/efi/EFI/fedora/gcdia32.efi differ
Only in /root/efi/EFI/fedora: gcdia32.efi.bak
Files /boot/efi/EFI/fedora/gcdx64.efi and /root/efi/EFI/fedora/gcdx64.efi differ
Only in /root/efi/EFI/fedora: gcdx64.efi.bak
Only in /root/efi/EFI/fedora: grub.cfg
Only in /root/efi/EFI/fedora: grub.cfg.orig
Only in /root/efi/EFI/fedora: grubenv
Files /boot/efi/EFI/fedora/grubia32.efi and /root/efi/EFI/fedora/grubia32.efi differ
Only in /root/efi/EFI/fedora: grubia32.efi.bak
Files /boot/efi/EFI/fedora/grubx64.efi and /root/efi/EFI/fedora/grubx64.efi differ
Only in /root/efi/EFI/fedora: grubx64.efi.bak
Only in /root/efi: .fseventsd
Only in /root/efi: .HFS+ Private Directory Data
Only in /root/efi: .Spotlight-V100
Only in /root/efi/System/Library/CoreServices: boot.cfg
Only in /root/efi/System/Library/CoreServices: boot.efi
Only in /root/efi/System/Library/CoreServices: .disk_label
Only in /root/efi/System/Library/CoreServices: .disk_label_2x
Only in /root/efi/System/Library/CoreServices: .disk_label.contentDetails
Only in /root/efi: .Trashes
Only in /root/efi: .VolumeIcon.icns
[root@localhost-live ~]# diff -rq /boot/efi /root/efi | grep differ | tr ' ' '\n' | grep /efi/ | sort -u | xargs cksum
2669304285 1583432 /boot/efi/EFI/fedora/gcdia32.efi
2381972754 2500936 /boot/efi/EFI/fedora/gcdx64.efi
2530681163 1583432 /boot/efi/EFI/fedora/grubia32.efi
1608039898 2500936 /boot/efi/EFI/fedora/grubx64.efi
1226003682 1587528 /root/efi/EFI/fedora/gcdia32.efi
4294967295 0 /root/efi/EFI/fedora/gcdx64.efi
4294967295 0 /root/efi/EFI/fedora/grubia32.efi
4294967295 0 /root/efi/EFI/fedora/grubx64.efi
[root@localhost-live ~]# diff -rq /boot/efi /root/efi | grep differ | tr ' ' '\n' | grep /efi/ | sort -u | xargs sha1sum
b87aa602ca2113dd0ae7e1a6794987603fc2dad1 /boot/efi/EFI/fedora/gcdia32.efi
3cd879ee7e62c03304bf7f4675a519f3a2b47237 /boot/efi/EFI/fedora/gcdx64.efi
40cb15be2f8dd302b02c4f2c83ef68d67232e8d4 /boot/efi/EFI/fedora/grubia32.efi
5da07491376fbab89f7a1f135ea14ba296809f0b /boot/efi/EFI/fedora/grubx64.efi
711eaf39b0ae63036d35133d75a5870da674a0d0 /root/efi/EFI/fedora/gcdia32.efi
da39a3ee5e6b4b0d3255bfef95601890afd80709 /root/efi/EFI/fedora/gcdx64.efi
da39a3ee5e6b4b0d3255bfef95601890afd80709 /root/efi/EFI/fedora/grubia32.efi
da39a3ee5e6b4b0d3255bfef95601890afd80709 /root/efi/EFI/fedora/grubx64.efi
[root@localhost-live ~]#
[root@localhost-live ~]# diff -rq /boot/efi /root/efi | grep differ | cut -d ' ' -f 2 | xargs install --backup --suffix .bak2 --target-directory /root/efi/EFI/fedora
[root@localhost-live ~]# diff -rq /boot/efi /root/efi | grep differ
[root@localhost-live ~]#
Should probably add a --mode a=,u=rwx to the install command.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment