当 PC 启动时,我看到下一条消息:
the disk drive for /media/sdb1 is not ready or not presented
Continue to wait or Press S to skip mounting or M for manual recovery
我刚刚接触 ubuntu,不太了解它如何与永恒 USB 驱动器配合使用。(sdb1 就是这个)。
以下是内容sudo fdisk -l
:
Disk /dev/sda: 160.0 GB, 160041885696 bytes
255 heads, 63 sectors/track, 19457 cylinders, total 312581808 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x000e28b8
Device Boot Start End Blocks Id System
/dev/sda1 * 2048 310484991 155241472 83 Linux
/dev/sda2 310487038 312580095 1046529 5 Extended
/dev/sda5 310487040 312580095 1046528 82 Linux swap / Solaris
Disk /dev/sdb: 4009 MB, 4009754624 bytes
16 heads, 32 sectors/track, 15296 cylinders, total 7831552 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0xd8e1f237
Device Boot Start End Blocks Id System
/dev/sdb1 * 32 7831551 3915760 b W95 FAT32
Disk /dev/sdc: 993 MB, 993001472 bytes
2 heads, 1 sectors/track, 969728 cylinders, total 1939456 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000
Device Boot Start End Blocks Id System
/dev/sdc1 133 1939455 969661+ 6 FAT16
这里的内容是/etc/fstab
:
# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a
# device; this may be used with UUID= as a more robust way to name devices
# that works even if disks are added and removed. See fstab(5).
#
# <file system> <mount point> <type> <options> <dump> <pass>
proc /proc proc nodev,noexec,nosuid 0 0
# / was on /dev/sda1 during installation
UUID=5f5d330f-d5f2-4157-9496-94f1dce2f181 / ext4 errors=remount-ro 0 1
# swap was on /dev/sda5 during installation
UUID=84747ef4-6f50-49bc-9df1-fcba364ba299 none swap sw 0 0
/dev/fd0 /media/floppy0 auto rw,user,noauto,exec,utf8 0 0
/dev/sdc1 /media/sdc1 vfat uid=nazar_art 0 0
/dev/sdb1 /media/sdb1 vfat uid=nazar_art 0 0
/dev/sdd1 /media/sdd1 vfat uid=nazar_art 0 0
- 为什么会发生这种情况?
- 如何解决这个问题?
答案1
我不知道为什么你/dev/sdb1
的 fstab 中有这个错误,但我知道为什么在启动时会看到这个错误:
在启动时,内核会mount -a
查看fstab
并尝试挂载所有文件系统,但显然您的驱动器在挂载时不存在,或者您使用了错误的模块。
因此,为了防止这种情况,您可以:
删除/注释该行:
#/dev/sdb1 /media/sdb1 vfat uid=1000 0 0
添加
noauto
为挂载选项:/dev/sdb1 /media/sdb1 vfat uid=1000,noauto 0 0
更改标签或 UUID 的条目:
UUID=AA64B45A64B42AC9 /media/sdb1 vfat uid=1000 0 0
使用
auto
而不是vfat
:/dev/sdb1 /media/sdb1 auto uid=1000 0 0
您应该让用户知道/media/sdb1
目录存在。请注意,对于每一行,我都将 更改uid
为用户名的 UID。您应该使用以下命令验证自己的身份:
cat /etc/passwd | grep braiam 布拉姆:x:1000:1000:braiam,,,:/主页/braiam:/bin/bash
我的uid
是1000。
我很想问为什么 fstab 中有这么多条目,但我还是保留我的好奇心。
答案2
这用户ID应该是数字,而不是名称。
它是文件中用户名后面的第一个数字/etc/passwd
。至少,文档是这么说的。
- 在文件中查找用户的号码
/etc/passwd
,然后编辑/etc/fstab
文件,用号码替换用户名。
答案3
我在升级一堆软件包后收到此错误消息,无法完全升级内核。即向我dpkg -l | grep linux-image-
显示了linux-image-3.13.0-49-generic
,但没有相应的linux-image-extra-3.13.0-49-generic
。问题似乎是挂载我的磁盘所需的模块包含在缺失中,linux-image-extra-3.13.0-49-generic
从而停止了启动。更糟糕的是,键盘驱动程序似乎也是映像的一部分extras
,这意味着我无法跳过该错误。
最后,我决定通过启动旧内核版本并运行来删除不完整的内核apt-get purge linux-image-3.13.0-49-generic
映像update-grub2
。