挂载在 /etc/fstab 中找不到设备

挂载在 /etc/fstab 中找不到设备

这是我使用 Linux 的第二天。我在安装 USB 驱动器时遇到困难。它显示此错误:

mount: can't find /dev/sdb1/mnt in /etc/fstab or /etc/mtab

我怎样才能消除这个错误?

答案1

为什么会出现这个错误?

您可能忘记了mount将驱动器安装到哪里。

Linux 使用设备文件(/dev/sda/dev/sdb1等)。与 Windows 驱动器( 、 等)不同C:D:您无法直接访问它们(cd /dev/sdb1必然会失败,告诉您它不是目录而是文件)。如果您想使用 打开驱动器mount,您需要提供一个挂载点。挂载点是一个目录,您的 USB 驱动器将在其中打开,并且您可以在其中访问您的文件。


解决方案

  1. 创建一个目录,用作驱动器的挂载点:

    mkdir /mnt/mydrive
    
  2. 使用以下命令安装您的驱动器:

    mount /dev/sdb1 /mnt/mydrive
    

    笔记:如果您不知道驱动器的设备文件,您可以运行sudo fdisk -llsblk来识别您正在寻找的分区。

  3. 现在,如果您运行ls /mnt/mydrive,它应该列出您的驱动器的文件。

  4. 完成后,别忘了卸载从电脑中移除 USB 驱动器之前,请执行以下操作:

    umount /dev/sdb1
    

有关此错误的更多信息

/etc/fstab是一个文件,您可以在其中将分区与挂载点关联起来,这样您就可以运行mount <device>而不是mount <device> <mountpoint>这就是您收到这个令人困惑的错误的原因。

文件系统还有更多用途,如在启动时安装分区等。有关更多信息文件系统在 Arch Linux wiki 上

答案2

要知道您的设备名称,请使用sudo fdisk。您的设备可以通过其大小来识别,可能看起来像/dev/sdx,其中x可以是从 a 到 z 的任何字母。(通常 a 分配给您的第一个内置硬盘)

要挂载 USB 驱动器sudo mount <Your Device Name> <Mount Position>,例如:

sudo mount /dev/sdb /mnt

要访问您刚刚安装的内容,请使用您安装的位置。在上面的例子中,我使用了/mnt,因此我将输入:

cd /mnt

答案3

sudo mkdir /mnt/spider 
sudo mount -t ntfs-3g -o remove_hiberfile /dev/sda2 /mnt/spider

记得将驱动器名称从 /dev/sda2 替换为您的驱动器名称。您可以使用命令 sudo fdisk -l 找到驱动器的名称。

答案4

也许这个问题已经得到解答了,我一直在试图弄清楚,并最终在重建 Windows 后将我的虚拟驱动器重新安装到 wsl 中。

我进入包含“ext4.vhdx”文件的目录,并将我的发行版设置为默认。然后这个命令,立即修复了它。

wsl mount --源 c: --目标 /mnt/c .\ext4.vhdx -a

相关内容