Fedora 29에서 새 스왑 파티션을 생성하여 확장할 때 GParted를 사용하여 기존 스왑 파티션을 삭제하고 /etc/fstab
.
하지만,이전 파티션이 /etc/fstab에 없더라도 시스템은 부팅 시 이전 파티션을 마운트하려고 시도합니다.- 결국 시간이 초과될 때까지.
어떤 항목에도 서비스가 존재하지 않습니다 systemctl status
. 나도 달려보려고 했는데
systemctl reset-failed
systemctl daemon-reload
그러나 아무 소용이 없습니다. 다음은 내 fstab 파일의 내용입니다.
# /etc/fstab
# Created by anaconda on Wed Nov 28 22:29:31 2018
#
# Accessible filesystems, by reference, are maintained under '/dev/disk/'.
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info.
#
# After editing this file, run 'systemctl daemon-reload' to update systemd
# units generated from this file.
#
UUID=8efbb12d-bd38-420c-a33e-f02205e1a6e9 / ext4 defaults 1 1
UUID=ded23a91-0e22-48f4-b1ec-169f255961b6 /boot ext4 defaults 1 2
UUID=AEA0-2099 /boot/efi vfat umask=0077,shortname=winnt 0 2
UUID=3e9f87b8-0b25-4a2f-aa21-51ea8fc58020 swap swap defaults 0 0
UUID=8743c19d-5d86-4651-a8b6-cf3477da8b13 swap swap defaults 0 0
다음 내용은 다음에서 가져온 것입니다./var/log/boot.log
[*** ] A start job is running for dev-disk-by\x2duuid-5121042f\x2de8a6\x2d41ed\x2d981e[ TIME ]
Timed out waiting for device dev-disk-by\x2duuid-5121042f\x2de8a6\x2d41ed\x2d981e\x2de9d224055ea2.device.
편집하다:Nasir Riley와 sourcejedi의 의견에 따르면 grub 파일을 확인했는데 파티션에 대한 언급이 없었고 실행했습니다 grub2-mkconfig -o /boot/grub2/grub.cfg
. 이는 이 시스템에서 이중 부팅 창을 실행하고 있다는 사실과도 관련이 있을 수 있습니다.
편집 2파티션이 /proc에 언급되어 있지만 다른 곳에서는 언급되지 않은 것 같습니다. 이 문제를 해결하기 위해 시스템을 다시 설치했습니다.
답변1
편집 후에 /etc/fstab
는 initramfs를 다시 생성해야 합니다 .
dracut --regenerate-all --force
답변2
완전한 답변을 얻으려면 다른 사람의 작업을 수집하세요.
문제의 근원
문제는 grub.cfg
파일이 생성될 때 파일을 읽는다는 것입니다 /etc/default/grub
.
시스템을 설치할 때 또는 GRUB를 마지막으로 업데이트할 때 스왑 파티션이 활성화된 경우 설정 파일에 포함됩니다. 일반적으로 다음과 같은 것
GRUB_CMDLINE_LINUX_DEFAULT="resume=dev/disk/by-uuid/5121042f-e8a6-41ed-981e-e9d224055ea2 splash=silent mitigations=auto quiet"
linux
or linuxefi
명령 에 추가된 이 행은 grub.cfg
GRUB가 지정된 파티션을 "복구" 장치로 마운트하려고 시도하도록 합니다.
스왑 파티션에 대한 참조 제거가 fstab
중지됩니다.짐을 실은시스템에서 이를 스왑으로 사용하려고 했으나 grub.cfg
시스템보다 먼저 로드되었습니다(실제로는짐체계).
OP가 지적했듯이 단순히 grub.cfg
파일 재생성을 사용하는 것만 으로는 설정이 그대로 유지되므로 grub2-mkconfig -o /boot/grub2/grub.cfg
도움이 되지 않습니다 ./etc/default/grub
해결책
주어진대로논평통과소스 제다이첫 번째 단계는 파일을 편집하여 /etc/default/grub
이전 스왑 파티션에 대한 참조를 제거하는 것입니다. 새 스왑 파티션이 있거나 스왑 파티션을 다시 포맷한 경우 이전 UUID를 새 것으로 교체하십시오. 지금 스왑 파티션이 없으면 resume=....
해당 줄 부분을 삭제하십시오. 전체 줄을 삭제하지 말고 나머지는 유지하세요. 가지고 있는 유일한 것이 이전 스왑 파티션에 대한 참조뿐이라면 행을 GRUB_CMDLINE_LINUX_DEFAULT=""
.
참조가 수정되었으므로 이제 두 번째 단계는 grub.cfg
다음 명령을 사용하여 파일을 다시 작성하는 것 입니다.
grub2-mkconfig -o /boot/grub2/grub.cfg
물론 시스템이 파일에 대해 다른 위치를 사용하는 경우 해당 위치를 이 옵션에 대한 인수 grub.cfg
로 바꾸십시오 . -o
예를 들어 iirc, Centos를 넣으면 /boot/efi/EFI/centos/grub.cfg
다음 명령이 실행됩니다.
grub2-mkconfig -o /boot/efi/EFI/centos/grub.cfg
한동안 Centos를 사용하지 않았기 때문에 틀렸을 수도 있습니다. 결론은 grub.cfg
명령을 실행하기 전에 위치를 찾는 것입니다.
노트:
파일 상단에는 /etc/default/grub
파일을 변경한 후 실행할 명령이 무엇인지 정확하게 알려줄 것입니다.
누락된 디스크에 대한 참조는 가 아닐 수도 있고 , ( 기본 파일에서) dev-disk-by\x2duuid-...
와 같은 이전 지정일 수도 있고 , ( 기본 파일에서) 와 같이 UUID 대신 레이블을 사용할 수도 있습니다 .dev-sda3
dev/sda3
dev-disk-by\x2dlabel-SWAP
dev/disk/by-label/swap
GUI 시스템 구성 편집기(예: SUSE의 Yast)를 사용하는 경우 편집기의 파일이 데이터를 다른 곳에 저장했다가 다음에 사용할 때 복원하여 시작 화면으로 돌아갈 수 있으므로 여기서 변경하는 것이 좋습니다. 위치. 예를 들어, openSUSE에서는 Yast -> 시스템 -> 부트로더 -> 커널 매개변수 -> 선택적 커널 명령줄 매개변수에서 찾을 수 있습니다.
이 아니라면논평통과소스 제다이, 댓글 대신 "답변"을 읽고 있었기 때문에 "놓쳤습니다". 그리고 여전히 질문을 따르거나 내 뒤를 쫓고 있을 것입니다.