ArchLinux를 설치하려고 하는데 부팅 가능한 미디어(다행히 메인 디스크 제외)를 연결하자마자 랩톱이 작동하지 않습니다. 내가 이것을 말하는 이유는 내 노트북을 고치고 싶어서가 아니라(왜 이런 일이 발생하는지에 대한 어떤 의견이라도 환영합니다), 내가 왜 다소 복잡해 보이는 일을 하려고 하는지 설명하기 위해서입니다.
내 노트북에는 이전 버전의 Ubuntu가 실행되고 있고 ArchLinux iso는 마운트할 수 있는 디스크에 있습니다. 내 계획은 설치 과정의 반대 방향으로 ArchLinux 설치를 시작하는 것입니다.
그러나 이때부터 나의 무지가 드러나기 시작했다. 나가지다 RTM그러나 기존 설치를 종료하면 두 번째 시도를 할 가능성이 거의 없기 때문에 알아야 할 문제와 일반적인 조언을 주시면 감사하겠습니다.
답변1
Chrooting을 시작하기 전에 이 문제를 우회하는 것을 고려해 보셨나요? 옵션이 완전히 없지는 않습니다.
USB 스틱 또는 USB DVD에서 부팅(컴퓨터가 멈추지 않는 한)
또는 다른 컴퓨터가 있으면 편리하게 사용할 수 있습니다.
네트워크에서 부팅합니다(노트북이 이를 지원하는 경우). TFTP 서버를 설정하는 것은 어렵지 않습니다.
하드 드라이브를 꺼내서 다른 컴퓨터에 설치하십시오.
다음으로 고려해야 할 사항은: 정말로 chroot를 수행해야 합니까? 어떤 디렉터리에서도 설치 프로그램을 실행할 수 없나요?
이제 루트를 지정하는 중입니다. 디스크가 파티션되어 있는지 여부에 따라 많은 것이 달라집니다. 그렇지 않은 경우 위 경로 중 하나를 선택하는 것이 좋습니다(무엇이든 문제가 발생하면 실제로 대체됩니다).
파티션이 있다고 가정 해 보겠습니다.에스에 설치됨/S
설치 미디어 콘텐츠와 파티션을 배치할 수 있는 위치시간다음으로 설치됨/
시스템을 실행할 때 단계는 대략 다음과 같이 진행되어야 합니다(면책조항:나는 그것을 테스트하지 않았습니다!):
루프백은 ISO를 어딘가에 마운트합니다.
mount -o loop,ro /path/to/iso /some/where
미디어 콘텐츠를 미디어에서 다음으로 복사합니다.에스:
cp -r /some/where/* /S
단일 사용자 모드로 들어가서 모든 서비스를 닫고 제거합니다.시간그리고에스
실행 중인 시스템에서 중요한 의사 파일 시스템을 바인드 마운트합니다.
for fs in /dev /dev/pts /proc /sys; do mount -o bind ${fs} S${fs} done
ivot_root - 루트 디렉터리를 실행 중인 프로세스의 다른 디렉터리로 바꿉니다
exec chroot
(이전 디렉터리를 제거하려면 exec가 필요함/
).cd /S pivot_root . old_root exec chroot . command
이전 루트를 제거합니다.
for fs in /dev /dev/pts /proc /sys; do umount old_root${fs} done umount old_root
미디어 콘텐츠가 /
일반적으로 상주하는 가장 중요한 의사 파일 시스템으로 마운트해야 합니다. 이전 미디어를 마운트 해제하려는 경우 실제로 마운트된 미디어에 chroot할 수는 없습니다 /
. 마운트된 미디어 백업 파일은 이전 루트 디렉터리 아래에 마운트된 파일 시스템에 있어야 하며 루트에서 모든 파일을 마운트 해제해야 합니다. 디렉토리 내용. 그리고 마운트할 다른 대체 파티션이 없으면 이전 루트를 마운트 해제하려고 합니다.시간그 동안 다른 곳에 설치하는 것은 아마도 일부 프로그램이 계속 실행 중인 상태에서 문제를 야기할 뿐입니다. 특히 포맷하기로 결정한 경우.