有一块新买的1T的移动硬盘。买来格式化成ntfs后简单的分了几次区。 4G的硬盘PE,100G的快速交互,剩余800多G分成了两个对等的存储盘。
插到电脑USB接口后, 桌面自动弹出了4个盘符。 打开前2个都没有什么问题, 写读都正常。后面两个一双击就会报错:
Error mounting: mount exited with exit code 1: helper failed with: Unprivileged user can not mount NTFS block devices using the external FUSE library. Either mount the volume as root, or rebuild NTFS-3G with integrated FUSE support and make it setuid root. Please see more information at http://tuxera.com/community/ntfs-3g-faq/#unprivileged
大意就是这个ntfs-3g 没权限无法挂载,不管是不是root 。
现在我们来解决掉这个问题:
首先看看挂载, 先拔掉移动硬盘 执行 再插上执行, 会发现多了sdb3,sdb5
root@debian:/# cat /etc/mtab rootfs / rootfs rw 0 0 sysfs /sys sysfs rw,nosuid,nodev,noexec,relatime 0 0 proc /proc proc rw,nosuid,nodev,noexec,relatime 0 0 udev /dev devtmpfs rw,relatime,size=10240k,nr_inodes=1015602,mode=755 0 0 devpts /dev/pts devpts rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000 0 0 tmpfs /run tmpfs rw,nosuid,noexec,relatime,size=813700k,mode=755 0 0 /dev/disk/by-uuid/4c487d8c-396c-4601-b76d-eff7118d6775 / ext4 rw,relatime,errors=remount-ro,user_xattr,barrier=1,data=ordered 0 0 tmpfs /run/lock tmpfs rw,nosuid,nodev,noexec,relatime,size=5120k 0 0 tmpfs /run/shm tmpfs rw,nosuid,nodev,noexec,relatime,size=4446660k 0 0 fusectl /sys/fs/fuse/connections fusectl rw,relatime 0 0 rpc_pipefs /var/lib/nfs/rpc_pipefs rpc_pipefs rw,relatime 0 0 binfmt_misc /proc/sys/fs/binfmt_misc binfmt_misc rw,nosuid,nodev,noexec,relatime 0 0 /dev/sdb3 /media/PE vfat rw,nosuid,nodev,relatime,uid=1000,gid=1000,fmask=0022,dmask=0077,codepage=cp437,iocharset=utf8,shortname=mixed,showexec,utf8,flush,errors=remount-ro 0 0 /dev/sdb5 /media/T1 fuseblk rw,nosuid,nodev,relatime,user_id=0,group_id=0,default_permissions,allow_other,blksize=4096 0 0
可以看到sdb是我的移动硬盘的, 但是只挂载了2个盘符。
查看下硬盘现状
fdisk -l Disk /dev/sda: 1000.2 GB, 1000204886016 bytes 255 heads, 63 sectors/track, 121601 cylinders, total 1953525168 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: 0xb73dddb4 Device Boot Start End Blocks Id System /dev/sda1 * 2048 209719295 104858624 7 HPFS/NTFS/exFAT Partition 2 does not start on physical sector boundary. /dev/sda3 1258387456 1925328895 333470720 83 Linux /dev/sda4 1925330944 1953523711 14096384 82 Linux swap / Solaris Disk /dev/sdb: 1000.2 GB, 1000204138496 bytes 255 heads, 63 sectors/track, 121601 cylinders, total 1953523708 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: 0x6b7612b3 Device Boot Start End Blocks Id System /dev/sdb1 209921355 839685419 314882032+ 7 HPFS/NTFS/exFAT /dev/sdb2 839685420 1953520064 556917322+ 7 HPFS/NTFS/exFAT /dev/sdb3 63 8401994 4200966 b W95 FAT32 /dev/sdb4 8401995 209921354 100759680 f W95 Ext‘d (LBA) /dev/sdb5 8402058 209921354 100759648+ 7 HPFS/NTFS/exFAT Partition table entries are not in disk order
但是挂载出错了。 下面报了一个错,
Partition table entries are not in disk order
说硬盘分区表不在硬盘的顺序里面,意思就是移动硬盘的分区表乱了,
既然是这样就简单了, 用fdisk来重建分区表即可, fdisk 挂载设备, 然后f w 就可以更新分区表了。
root@debian:/# fdisk /dev/sdb Command (m for help): x Expert command (m for help): f Done. Expert command (m for help): m Command action b move beginning of data in a partition c change number of cylinders d print the raw data in the partition table e list extended partitions f fix partition order g create an IRIX (SGI) partition table h change number of heads i change the disk identifier m print this menu p print the partition table q quit without saving changes r return to main menu s change number of sectors/track v verify the partition table w write table to disk and exit Expert command (m for help): p Disk /dev/sdb: 255 heads, 63 sectors, 121601 cylinders Nr AF Hd Sec Cyl Hd Sec Cyl Start Size ID 1 00 1 1 0 254 63 522 63 8401932 0b 2 00 0 1 523 254 63 1023 8401995 201519360 0f 3 00 254 63 1023 254 63 1023 209921355 629764065 07 4 00 254 63 1023 254 63 1023 839685420 1113834645 07 5 00 1 1 523 254 63 1023 63 201519297 07 Expert command (m for help): w The partition table has been altered! Calling ioctl() to re-read partition table. Syncing disks.
再次执行fdisk -l 发现已经成功挂载, 直接桌面可以直接点进去了。
Disk /dev/sdb: 1000.2 GB, 1000204138496 bytes 255 heads, 63 sectors/track, 121601 cylinders, total 1953523708 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: 0x6b7612b3 Device Boot Start End Blocks Id System /dev/sdb1 63 8401994 4200966 b W95 FAT32 /dev/sdb2 8401995 209921354 100759680 f W95 Ext‘d (LBA) /dev/sdb3 209921355 839685419 314882032+ 7 HPFS/NTFS/exFAT /dev/sdb4 839685420 1953520064 556917322+ 7 HPFS/NTFS/exFAT /dev/sdb5 8402058 209921354 100759648+ 7 HPFS/NTFS/exFAT
root@debian:/# df Filesystem 1K-blocks Used Available Use% Mounted on rootfs 328236772 10801844 300761392 4% / udev 10240 0 10240 0% /dev tmpfs 813700 972 812728 1% /run /dev/disk/by-uuid/4c487d8c-396c-4601-b76d-eff7118d6775 328236772 10801844 300761392 4% / tmpfs 5120 0 5120 0% /run/lock tmpfs 4446660 26196 4420464 1% /run/shm/dev/sdb1 4192756 578312 3614444 14% /media/usb0 /dev/sdb5 100759648 14680144 86079504 15% /media/T1/dev/sdb3 314882032 35480048 279401984 12% /media/T2 /dev/sdb4 556917320 193748248 363169072 35% /media/T3