求助! Ubuntu更新后无法挂载Windows下的硬盘!

系统安装、升级讨论
版面规则
我们都知道新人的确很菜,也喜欢抱怨,并且带有浓厚的Windows习惯,但既然在这里询问,我们就应该有责任帮助他们解决问题,而不是直接泼冷水、简单的否定或发表对解决问题没有任何帮助的帖子。乐于分享,以人为本,这正是Ubuntu的精神所在。
回复
柠檬没我萌
帖子: 5
注册时间: 2016-12-19 7:41
系统: ubuntu 16.04

求助! Ubuntu更新后无法挂载Windows下的硬盘!

#1

帖子 柠檬没我萌 » 2017-02-25 1:40

Ubuntu和Windows双系统,之前一直正常,在一次更新后Ubuntu下无法挂载硬盘,显示:

Error mounting system-managed device /dev/sdb5: Command-line `mount "/media/sdb5"' exited with non-zero exit status 21: mount: according to mtab, /dev/sdb5 is already mounted on /media/sdb5

lsblk -f 显示:

代码: 全选

tao@tao-CP65S:~$ lsblk -f
NAME        FSTYPE LABEL MOUNTPOINT
sda                      
├─sda1                   
└─sda2                   
sdb                      
├─sdb1                   
├─sdb2                   
├─sdb3                   
├─sdb4                   
├─sdb5                   
├─sdb6                   
├─sdb7                   [SWAP]
├─sdb8                   /
└─sdb9                   /home
nvme0n1                  
├─nvme0n1p1              
└─nvme0n1p2   



fdisk -l 显示:

代码: 全选

tao@tao-CP65S:~$ sudo fdisk -l

WARNING: GPT (GUID Partition Table) detected on '/dev/nvme0n1'! The util fdisk doesn't support GPT. Use GNU Parted.


Disk /dev/nvme0n1: 512.1 GB, 512110190592 bytes
256 heads, 63 sectors/track, 62017 cylinders, total 1000215216 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/nvme0n1p1               1  4294967295  2147483647+  ee  GPT

WARNING: GPT (GUID Partition Table) detected on '/dev/sda'! The util fdisk doesn't support GPT. Use GNU Parted.


Disk /dev/sda: 500.1 GB, 500107862016 bytes
256 heads, 63 sectors/track, 60563 cylinders, total 976773168 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk identifier: 0x00000000

   Device Boot      Start         End      Blocks   Id  System
/dev/sda1               1  4294967295  2147483647+  ee  GPT
Partition 1 does not start on physical sector boundary.

WARNING: GPT (GUID Partition Table) detected on '/dev/sdb'! The util fdisk doesn't support GPT. Use GNU Parted.


Disk /dev/sdb: 512.1 GB, 512110190592 bytes
255 heads, 63 sectors/track, 62260 cylinders, total 1000215216 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: 0x7d88a12f

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1               1  1000215215   500107607+  ee  GPT

mtab显示:

代码: 全选

tao@tao-CP65S:~$ cat /etc/mtab
/dev/sdb9 /home ext4 rw 0 0

fstab显示:

代码: 全选

tao@tao-CP65S:~$ cat /etc/fstab
# /etc/fstab: static file system information.
#
# <file system> <mount point>   <type>  <options>       <dump>  <pass>

#Entry for /dev/sdb8 :
UUID=6e3c859b-e62a-4584-9190-93be768971f7	/	ext4	errors=remount-ro	0	1
#Entry for /dev/sdb2 :
UUID=92F3-9E91	/boot/efi	vfat	defaults	0	1
#Entry for /dev/sdb9 :
UUID=6fe13be8-b9b4-4c0a-bd71-0f3d95bd908e	/home	ext4	defaults	0	2
#Entry for /dev/nvme0n1p2 :
UUID=A4240A84240A59A6	/media/M_fM__\M_,M_eM__\M_0M_gM_#M__AM_gM__[M__X	ntfs	defaults,nls=utf8,umask=0222	0	0
#Entry for /dev/sda2 :
UUID=946E99F76E99D1FA	/media/M_fM__\M_,M_eM__\M_0M_gM_#M__AM_gM__[M__X_	ntfs	defaults,nls=utf8,umask=0222	0	0
#Entry for /dev/sdb1 :
UUID=502CF3452CF3249E	/media/Recovery	ntfs	defaults,nls=utf8,umask=0222	0	0
#Entry for /dev/sdb4 :
UUID=9212148212146E0B	/media/sdb4	ntfs	defaults,nls=utf8,umask=0222	0	0
#Entry for /dev/sdb5 :
UUID=72401AED401AB835	/media/sdb5	ntfs	defaults,nls=utf8,umask=0222	0	0
#Entry for /dev/sdb7 :
UUID=cfbc96d6-d4ec-43bd-8486-045cd04aa789	none	swap	sw	0	0


求指导如何解决?谢谢!
poloshiao
论坛版主
帖子: 18279
注册时间: 2009-08-04 16:33

Re: 求助! Ubuntu更新后无法挂载Windows下的硬盘!

#2

帖子 poloshiao » 2017-02-25 8:53

Error mounting system-managed device /dev/sdb5: Command-line `mount "/media/sdb5"' exited with non-zero exit status 21: mount: according to mtab, /dev/sdb5 is already mounted on /media/sdb5
/etc/fstab
#Entry for /dev/sdb5 :
UUID=72401AED401AB835 /media/sdb5 ntfs defaults,nls=utf8,umask=0222 0 0
暫時試試

UUID=72401AED401AB835 /media/sdb5 ntfs defaults,nls=utf8,umask=0222 0 0
前面 加上 #
# UUID=72401AED401AB835 /media/sdb5 ntfs defaults,nls=utf8,umask=0222 0 0
儲存
sudo systemctl reboot

結果如何 請再貼文
#Entry for /dev/sdb2 :
UUID=92F3-9E91 /boot/efi vfat defaults 0 1
確認 你的開機模式 是 UEFI enabled
sudo fdisk -l
WARNING: GPT (GUID Partition Table) detected on '/dev/nvme0n1'! The util fdisk doesn't support GPT. Use GNU Parted.
如果確認是 UEFI enabled 開機
改用
sudo gdisk -l

sudo parted -l print

請提供 Ubuntu 版本
早期版本 fdisk 指令 不支持 GPT 分割表型態
/dev/nvme0n1
如果你的主板 有上面的裝置 請詳細閱讀下述文章
https://en.wikipedia.org/wiki/NVM_Express
http://askubuntu.com/questions/696999/u ... n-dev-nvme

如果是 UEFI enabled 開機
查一下 需要不需要額外安裝該裝置驅動
https://en.wikipedia.org/wiki/NVM_Expre ... re_support
UEFI
An open source NVMe driver for UEFI is available on SourceForge

這是較新的裝置
歡迎分享使用心得
柠檬没我萌
帖子: 5
注册时间: 2016-12-19 7:41
系统: ubuntu 16.04

Re: 求助! Ubuntu更新后无法挂载Windows下的硬盘!

#3

帖子 柠檬没我萌 » 2017-02-28 0:47

1.
暫時試試

UUID=72401AED401AB835 /media/sdb5 ntfs defaults,nls=utf8,umask=0222 0 0
前面 加上 #
# UUID=72401AED401AB835 /media/sdb5 ntfs defaults,nls=utf8,umask=0222 0 0
儲存
sudo systemctl reboot

結果如何 請再貼文
依然显示不能挂载

2.
如果確認是 UEFI enabled 開機
改用
sudo gdisk -l

sudo parted -l print

請提供 Ubuntu 版本
早期版本 fdisk 指令 不支持 GPT 分割表型態
是UEFI enabled 开机
ubuntu 版本为14.04

sudo parted -l print 显示:

代码: 全选

tao@tao-CP65S:~$ sudo parted -l print
Model: ATA ST500LM021-1KJ15 (scsi)
Disk /dev/sda: 500GB
Sector size (logical/physical): 512B/4096B
Partition Table: gpt

Number  Start   End    Size   File system  Name                          Flags
 1      17.4kB  134MB  134MB               Microsoft reserved partition  msftres
 2      135MB   500GB  500GB  ntfs         Basic data partition          msftdata


Model: ATA PLEXTOR PX-512M6 (scsi)
Disk /dev/sdb: 512GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt

Number  Start   End     Size    File system     Name                          Flags
 1      1049kB  316MB   315MB   ntfs            Basic data partition          hidden, diag
 2      316MB   420MB   105MB   fat32           EFI system partition          boot
 3      420MB   555MB   134MB                   Microsoft reserved partition  msftres
 4      555MB   71.8GB  71.3GB  ntfs            Basic data partition          msftdata
 5      71.8GB  292GB   220GB   ntfs            Basic data partition          msftdata
 6      292GB   292GB   300MB   fat32                                         boot
 7      292GB   300GB   8193MB  linux-swap(v1)
 8      300GB   428GB   128GB   ext4
 9      428GB   512GB   83.7GB  ext4


Model: Unknown (unknown)
Disk /dev/nvme0n1: 512GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt

Number  Start   End    Size   File system  Name                          Flags
 1      17.4kB  134MB  134MB               Microsoft reserved partition  msftres
 2      135MB   512GB  512GB  ntfs         Basic data partition          msftdata

3.
/dev/nvme0n1
电脑里有三块硬盘,其中一块是nvme ssd,在更新之前的使用中可以被挂载,没有安装额外驱动




PS:目前暂时的解决方法是开机后删除/etc/mtab,所有硬盘立刻可以正常打开,但是重启后又会出现相同的问题,mtab也会重置。。
poloshiao
论坛版主
帖子: 18279
注册时间: 2009-08-04 16:33

Re: 求助! Ubuntu更新后无法挂载Windows下的硬盘!

#4

帖子 poloshiao » 2017-02-28 19:11

Ubuntu和Windows双系统
1. 登入 Windows 系統 的 磁碟管理程式
把 /dev/sdb 擷圖貼上來
UUID=72401AED401AB835 /media/sdb5 ntfs defaults,nls=utf8,umask=0222 0 0
2. 把下面的指令 複製 貼進 Ubuntu 終端機 執行
2-1. sudo ls -al /dev/disk/by-uuid/* | grep sdb5
2-2. sudo ls -al /dev/disk/by-partuuid/* | grep sdb5
2-3. sudo ls -al /dev/disk/by-label/* | grep sdb5
把結果全部直接 選取/複製/貼上來
目前暂时的解决方法是开机后删除/etc/mtab,所有硬盘立刻可以正常打开,但是重启后又会出现相同的问题,mtab也会重置。。
3. 看看 /etc/mtab 內容 是否改變
3-1. 正常使用 關機或重啟前
把下面的指令 複製 貼進終端機 執行
sudo cat /etc/mtab
把結果全部直接 選取/複製/貼上來
3-2. 重启后又会出现相同的问题
把下面的指令 複製 貼進終端機 執行
sudo cat /etc/mtab
把結果全部直接 選取/複製/貼上來
柠檬没我萌
帖子: 5
注册时间: 2016-12-19 7:41
系统: ubuntu 16.04

Re: 求助! Ubuntu更新后无法挂载Windows下的硬盘!

#5

帖子 柠檬没我萌 » 2017-03-01 6:22

poloshiao 写了:
Ubuntu和Windows双系统
1. 登入 Windows 系統 的 磁碟管理程式
把 /dev/sdb 擷圖貼上來
UUID=72401AED401AB835 /media/sdb5 ntfs defaults,nls=utf8,umask=0222 0 0
2. 把下面的指令 複製 貼進 Ubuntu 終端機 執行
2-1. sudo ls -al /dev/disk/by-uuid/* | grep sdb5
2-2. sudo ls -al /dev/disk/by-partuuid/* | grep sdb5
2-3. sudo ls -al /dev/disk/by-label/* | grep sdb5
把結果全部直接 選取/複製/貼上來
目前暂时的解决方法是开机后删除/etc/mtab,所有硬盘立刻可以正常打开,但是重启后又会出现相同的问题,mtab也会重置。。
3. 看看 /etc/mtab 內容 是否改變
3-1. 正常使用 關機或重啟前
把下面的指令 複製 貼進終端機 執行
sudo cat /etc/mtab
把結果全部直接 選取/複製/貼上來
3-2. 重启后又会出现相同的问题
把下面的指令 複製 貼進終端機 執行
sudo cat /etc/mtab
把結果全部直接 選取/複製/貼上來



1
捕获.PNG
截图在附件

2

代码: 全选

tao@tao-CP65S:~/Desktop$ sudo ls -al /dev/disk/by-uuid/* | grep sdb5
lrwxrwxrwx 1 root root 10 Feb 28 16:18 /dev/disk/by-uuid/72401AED401AB835 -> ../../sdb5
tao@tao-CP65S:~/Desktop$ sudo ls -al /dev/disk/by-partuuid/* | grep sdb5
lrwxrwxrwx 1 root root 10 Feb 28 16:18 /dev/disk/by-partuuid/2a9c02e8-c829-4449-82e2-54a2ebfa2104 -> ../../sdb5
tao@tao-CP65S:~/Desktop$ sudo ls -al /dev/disk/by-label/* | grep sdb5
tao@tao-CP65S:~/Desktop$ 
3

打开ubuntu后

代码: 全选

tao@tao-CP65S:~$ sudo cat /etc/mtab
/dev/sdb2 /boot/efi vfat rw 0 0
/dev/sdb9 /home ext4 rw 0 0
systemd /sys/fs/cgroup/systemd cgroup rw,noexec,nosuid,nodev,none,name=systemd 0 0
正常挂载windows下硬盘需要删除/etc/mtab,所以

代码: 全选

tao@tao-CP65S:~$ sudo cat /etc/mtab
cat: /etc/mtab: No such file or directory
重启后

代码: 全选

tao@tao-CP65S:~/Desktop$ sudo cat /etc/mtab
/dev/sdb2 /boot/efi vfat rw 0 0
/dev/sdb9 /home ext4 rw 0 0
systemd /sys/fs/cgroup/systemd cgroup rw,noexec,nosuid,nodev,none,name=systemd 0 0
poloshiao
论坛版主
帖子: 18279
注册时间: 2009-08-04 16:33

Re: 求助! Ubuntu更新后无法挂载Windows下的硬盘!

#6

帖子 poloshiao » 2017-03-01 11:58

cat /etc/fstab
#Entry for /dev/sdb5 :
UUID=72401AED401AB835 /media/sdb5 ntfs defaults,nls=utf8,umask=0222 0 0
捕获.PNG
1. /dev/sdc5 是 /boot/efi fat32 掛載應該使用 vfat 參數 而非 ntfs
1-1. https://help.ubuntu.com/community/Mount ... ions#FAT32
FAT32
The vfat driver is used in linux to read and write FAT32
1-2. https://help.ubuntu.com/community/Mount ... figuration
FAT32 Partition
UUID=<UUID> /media/<mountpoint> vfat defaults,user,exec,uid=1000,gid=100,umask=000 0 0
sudo cat /etc/mtab
/dev/sdb2 /boot/efi vfat rw 0 0
2. 還有一個 efi 分割區 在 /dev/sdb2 ?
2-1. 同一個硬盤 不要有兩個以上的 efi 系統分割區
會引起混淆
2-2. 你需要在 /dev/sdb2 /dev/sdb5 之間 刪除一個 保留一個 就好
2-3. 要注意 你是否 將 Windows 的 efi 開機檔案 安裝在 /dev/sdb2 卻把 Ubuntu 的 efi 的開機檔案 安裝在 /dev/sdb5 ?
意思是 要移除以前要先補救 以免影響開機

3. 補充
windows 開機是 /dev/sdc
Ubuntu 開機是 /dev/sdb
是正常現象
UUID=72401AED401AB835 /media/sdb5 ntfs defaults,nls=utf8,umask=0222 0 0
sudo ls -al /dev/disk/by-uuid/* | grep sdb5
lrwxrwxrwx 1 root root 10 Feb 28 16:18 /dev/disk/by-uuid/72401AED401AB835 -> ../../sdb5
sudo ls -al /dev/disk/by-partuuid/* | grep sdb5
lrwxrwxrwx 1 root root 10 Feb 28 16:18 /dev/disk/by-partuuid/2a9c02e8-c829-4449-82e2-54a2ebfa2104 -> ../../sdb5
4. /etc/fstab 掛載指令中
UUID=72401AED401AB835 /media/sdb5 ntfs ...
應該 改為
UUID=72401AED401AB835 /boot/efi vfat ... (參見 1-2)

PARTUUID=2a9c02e8-c829-4449-82e2-54a2ebfa2104 /boot/efi vfat ... (參見 1-2)
4-1. UUID 需要隨者重新格式化而變更 PARTUUID 則 需要隨著重新分割而變更
poloshiao
论坛版主
帖子: 18279
注册时间: 2009-08-04 16:33

Re: 求助! Ubuntu更新后无法挂载Windows下的硬盘!

#7

帖子 poloshiao » 2017-03-01 18:38

cat /etc/fstab
#Entry for /dev/sdb2 :
UUID=92F3-9E91 /boot/efi vfat defaults 0 1
重看一下 發現你的 /boot/efi 掛載在 /dev/sdb2
所以你應該把 /dev/sdb5 的 efi system partition 標籤改變一下
改變以前 確認 Windows 的 efi 開機檔案 是安裝在 /dev/sdb2 不是在 /dev/sdb5
回复