virtualbox의 Ubuntu 10.04에서 다음 오류가 발생합니다. 대상 파일 시스템에 /sbin/init가 없습니다. \ No init를 찾을 수 없습니다. init= bootarg를 전달해 보세요.

virtualbox의 Ubuntu 10.04에서 다음 오류가 발생합니다. 대상 파일 시스템에 /sbin/init가 없습니다. \ No init를 찾을 수 없습니다. init= bootarg를 전달해 보세요.

저는 Linux 초보자이고 이를 설치한 유일한 이유는 Ruby on Rails에서 Windows 비호환성 문제가 발생하는 것을 막기 위해서입니다. 그러고 보니 확실히 좋았고 훨씬 빨랐으며 조만간 Winrails 관련 작업을 수행하지 않을 것 같습니다.

그래서 저는 virtualbox를 사용하여 가상머신을 만들고 지난 3주 동안 그것에 우분투를 사용해왔습니다. 최근 우분투에서 몇 가지 사항을 업데이트할 수 있는지 물었고 '확인'을 클릭했습니다.

이제 부팅되지 않고 다음 오류가 발생합니다. *mount: /root/dev에 /dev 마운트 실패: 해당 파일 또는 디렉터리 없음 mount: /root/sys에 /sys 탑재 실패: 해당 파일 또는 디렉터리 없음 ... 대상 파일 시스템에 /sbin/init가 없습니다. 초기화를 찾을 수 없습니다. init= bootarg를 전달해 보세요.

비지박스 v1.13.3...

(initramfs) _ *

그래서 포럼을 둘러보니 다양한 솔루션이 있지만 모두 라이브 CD에서 부팅하는 것과 관련이 있습니다. (처음에 우분투를 설치할 때 사용한 ISO 이미지라고 가정합니다). 하지만 해당 CD로 부팅하면 우분투 화면에 멈춰 있고 작은 점이 계속 흰색에서 빨간색으로 순환하는데 한 시간 동안 멈춰 있어서 멈춰 있는 것 같아요. 내가 무엇을 할 수 있는지 잘 모르겠습니다. 문제를 해결하기 위해 비지박스 쉘(또는 그 무엇이든)에서 무엇이든 할 수 있나요?

문제는 모든 보석과 기타 등등을 포함하여 필요한 모든 것을 얻는 데 약 10시간이 걸렸다는 것입니다. 그리고 제가 수정한 내용을 제대로 적지 않았고, 중년이라 이제 그런 정보가 다 유출됐고 다시는 하고 싶지 않습니다. 기존 설치를 복구하고 싶습니다.

당신이 가질 수 있는 한 가지 질문은 ISO에 문제가 있습니까?입니다. 나는 그렇게 생각하지 않습니다. 왜냐하면 새로운 가상 머신을 만들고 동일한 iso 파일을 사용하여 새로운 우분투를 설치했기 때문입니다.

도움을 주시면 감사하겠습니다.

답변1

부트로더 프롬프트에서는 모든 것이 정상적으로 보입니다. 그래서 파일 시스템이 손상되었을까 두렵습니다.

나는 다음과 같은 과정을 제안합니다.

  1. 새 가상 머신을 생성하고 Ubuntu를 새로 설치하십시오.
  2. 패키지를 설치 etckeeper하고 etckeeper init. 그러면 /etc버전 관리가 적용됩니다. Bazaar, Darcs, Git 및 Mercury 중에서 선호하는 버전 제어 도구가 있는 경우 /etc/etckeeper/etckeeper.conf실행하기 전에 해당 도구를 선택하세요 etckeeper commit.
  3. 아래의 변경 사항은 /etc패키지 관리 작업 전후에, 그리고 하루에 한 번 자동으로 커밋됩니다. etckeeper commit기본 버전 제어 도구를 직접 실행하거나 호출하여 수동으로 커밋할 수 있습니다 .
  4. 이제 이전 VM을 저장해 볼 차례입니다. 새 VM을 종료한 다음 이전 VM의 디스크를 새 VM에 추가하고 새 VM을 부팅합니다.
  5. 마운트해 보세요 /dev/sdb2. 를 실행하라는 메시지가 나타나면 fsck실행하세요.
  6. 이전 VM에서 가능한 것을 복구하세요.
  7. 백업 설정에는 의 리포지토리 /etc뿐만 아니라 VM 내에서 /usr/local수행 할 수 있는 모든 작업을 포함해야 합니다./home

답변2

나는 비슷한 것을 가지고 있습니다 - Ubuntu 10.10 게스트가 있는 Ubuntu 10.10 호스트.

게스트 FS가 손상되어 위와 동일한 오류가 발생했습니다.

이 문제는 vdi 파일에서 파티션을 마운트하고 이에 대한 파일 검사를 실행하여 해결되었습니다.

sudo vdfuse -g -f /media/ssdext4/UbuntuGuest.vdi /mnt/

이제 "sudo ls -l /mnt/"를 사용하여 vdi 파일의 파티션을 나열할 수 있습니다.

이제 전체 경로를 사용하여 FS 검사를 실행하십시오. sudo fsck.ext4 /mnt/파티션1

나는 vdfuse가 기본 설치의 일부가 되어야 한다고 생각합니다. vdfuse가 없으면 이러한 문제를 해결하는 방법을 알 수 없습니다.

답변3

가장 정교하지는 않지만 아마도 가장 빠른 접근 방식: 손상된 VM의 디스크 이미지를 새로 설치된 VM에 추가하고 거기에서 마운트한 다음 $HOME, /etc 및 /var/{lib,db, ..에서 무언가를 복사합니다. .} (또는 적어도 복사본을 보관) 한 시간 이내에 빠르게 백업을 완료할 수 있습니다.

실제 문제는 초기 램디스크가 가상 디스크 장치를 제대로 검색하고 마운트할 수 없기 때문에 발생하는 것 같습니다. 따라서 손상된 VM의 파일 시스템에 어떻게든 액세스할 수 있다면 시도해 볼 수도 있는 방법은 다음과 같습니다.

mount /dev/sdbroken1 /mnt/brokendisk
for i in dev dev/pts proc sys; do
  mount --bind /$i /mnt/brokendisk/$i
done
chroot /mnt/brokendisk
update-initramfs -u -k all # regenerate initial ramdisk - look for errors
^D
reboot

답변4

나도 똑같은 문제가 있습니다. 라이브 ISO의 이상한 동작도 포함됩니다.

문제는 그럽이 어떻게든 엉망이 되는 것으로 나타났습니다. 아마도 호스트 시스템이 잠자기 상태가 되었기 때문일 것입니다. [나는 Christis Bergeles가 동일한 호스트(mac OSX)에서 나와 동일한 문제를 설명하기 때문에 이렇게 말합니다.http://christos.bergeles.net/blog/files/tag-grub.html]

문제가 있는 가상 HD를 작동 중인 다른 우분투 VM에 연결하세요.

해당 VM으로 부팅

(다음 두 줄에서는 이 VM의 /dev/sdb에 문제가 있는 디스크가 있다고 가정합니다.)

sudo 마운트 /dev/sdb1 /mnt

sudo grub-install --root-directory=/mnt/ /dev/sda

이 문제의 두 가지 개별 사례에서 나를 위해 일했습니다.

팀.

관련 정보