アラート!/ dev / disk / by-uuid / xxxxxxxxxは存在しません。シェルにドロップする


28

Ubuntu 14.04を使用しています。

私はターミナルで走ったsudo apt-get update。その後、システムを再起動しました。そして今、私は見ます:

ALERT! /dev/disk/by-uuid/xxxxxxxxx does not exist. Dropping to a shell
initramfs:_

USBフラッシュドライブからLIVE Ubuntuを起動できません。はい、BIOSセットアップを再確認しましたが、USBフラッシュドライブは問題なく、別のマシンで実行されます。今、DVDを購入し、別のラップトップからLive DVDを作成します。

sudo blkid 私に与えます:

/dev/loop0: TYPE="squashfs"  
/dev/sda1: UUID="xxxx" TYPE="ext4"   
/dev/sr0: LABEL="Ubuntu 14.04.1 LTS i386" TYPE="iso960"   

/etc/fstab同じUUID="xxxx"であり、次の行があります:

errors=remount-ro 0   

ブート修復を使用しようとしましたが、まだUbuntuにログインできません。

Ubuntuには多くのデータがあるため、Ubuntuを再インストールしたくありません。

これを解決する方法について何かアドバイスはありますか?


1
sudo blkidターミナルから(必要に応じてライブDVDから)実行し、UUIDをチェックし/etc/fstabます。または、両方の結果を質問に投稿してください。sudo blkidライブDVD から実行する方法:Ubuntuライブディスクから起動し、起動時に[ Ubuntu試す ]オプションをクリックします。ターミナルを開き(Ctrl + Alt + T)、sudo blkidコマンドを実行します。最後に、質問にその出力を投稿してください。
カレル・

1
わかりました@karel sudo blkid/dev/loop0: TYPE="squashfs" /dev/sda1: UUID="xxxx" TYPE="ext4" dev/sr0: LABEL="Ubuntu 14.04.1 LTS i386" TYPE="iso960" / etc / fstabに同じUUID = "xxxx"を与え 、errors = remount-ro 0 –
Marcin Gorski 14

1
ブート修復を実行した後にこれがありますブート修復ログ
Marcin Gorski 14

その後、まだ私は... Ubuntuのにログインカント
マルチンゴルスキ

3
@MarcinGorskiは、解答を回答として追加し、質問を編集する代わりに承認済みとしてマークしてください。
ムル14

回答:


25

解決策は、liveDVDからこれらのコマンドを実行することでした。それにより、sda1でそのliveDVDから操作を行うことができます(私が理解している限り)

sudo mount /dev/sda1 /mnt
sudo mount --bind /dev /mnt/dev
sudo mount --bind /proc /mnt/proc
sudo mount --bind /sys /mnt/sys
sudo chroot /mnt
update-initramfs -u
update-grub
reboot

ubuntu plフォーラムの友人がこの問題の解決を助けてくれました

彼は、カーネル更新の一部として更新する必要があるinitramfsにエラーがある可能性があることを発見しました。その更新中に何か問題が発生した場合、私のような問題が発生する可能性があります。


4
良い投稿。Ubuntuが必ずしもにインストールされているわけではないことを付け加えsda1ます。インストール先を確認するには、を実行しsudo fdisk -lます。Ubuntuをインストールしたハードドライブがわかっていると仮定すると、そのコマンドは、どのsd *がそのドライブにマップされているかを判断するのに役立ちます。
ユビキバコン

...私は(新規インストール)UbuntuのMATE 17.04でこれを試みたが、それは残念ながら助けなかった
ドミニク・ヘイズ

1
WARNING: missing /lib/modules/4.2.0-16-genericLiveCDのカーネルバージョンが異なっていたので、取得していました。だから、私はマウントしtmplibそしてlib64すべてが機能しました。
マックスマリッシュ

ext4パーティション用にマウントするファイルシステムを指定する必要がありました(mount -t ext4 /dev/sda1 /mnt)、そうでなければこれはうまく機能しました。
シェーン

-2

人々は望むならこれに眉をひそめるかもしれませんが、私は " /dev/sdX" を使うことは私の個人的なシステムのUUIDよりも私にとって確実に機能することを発見しました。エンタープライズ環境では、「/ dev /」アドレスの代わりにUUIDで動作するようにもっと努力しますが、少なくともUUID参照の代わりに/dev/sdaXin を使用して/etc/fstab、少なくとも/ etc / fstabに正しいUUIDがあるにもかかわらず、ブートが正確に失敗する理由の答えを探し続けます。

このルートを使用する場合は、次の手順を使用します。

  1. 回復シェルを起動するか、ライブUSBドライブまたはCDを起動します

  2. 起動に失敗したシステムパーティションをマウントする

  3. /etc/fstabルートとして手順2で言及したシステムパーティションのファイルを編集し、すべての関連エントリのUUID=XXXXX対応する/dev/sdXラベルに置き換え/etc/fstabます。

注:この手順は、UbuntuおよびUbuntuから派生したディストリビューションで信頼できることがわかっています(この記事の執筆時点では、今後のリリースで簡単に変更される可能性があります)。私はknoppixやArch Linuxなどの他のディストリビューションでは確実に動作しないことを知っています(これはUDEVがデバイスをスキャンして/ devファイルシステムに名前を付ける方法の違いによるものです)。Ubuntu以外から派生したディストリビューションを使用している場合は、この方法を使用しないでください。または、自己の責任において使用してください。


@MGodbyのご協力に感謝しますが、すでに解決策を見つけています。
マルシンゴル

4
お使いの方法は古い方法であり、主にドライブの番号付けが一定ではなく、予期しないドライブから起動できるという、かなりの理由で置き換えられました。これはUUIDでは不可能です。しかし、私はよく「LABEL = ___」フォーマットを使用します。何が何であるかをすぐに見ることがより明確だからです。例:LABEL=data_partition
マーティフライド14
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.