问题描述
我最近在我的Ubuntu 10.0.4盒子里安装了一个新硬盘。我用过System – >管理 – > Disk Utils格式化磁盘(ext4文件类型) – 但没有创建分区(这是可取的吗?)。
我已将驱动器手动安装为/mydata。
我想让机器在启动/重启时自动挂载设备。我怎么能这样做?
[[更新]]
这是在我的系统上运行sudo fdisk -l
的输出:
Disk /dev/sda: 500.1 GB, 500107862016 bytes
255 heads, 63 sectors/track, 60801 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x000858bf
Device Boot Start End Blocks Id System
/dev/sda1 * 1 59334 476595200 83 Linux
/dev/sda2 59334 60802 11789313 5 Extended
/dev/sda5 59334 60802 11789312 82 Linux swap / Solaris
Disk /dev/sdb: 500.1 GB, 500107862016 bytes
255 heads, 63 sectors/track, 60801 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x00000000
Disk /dev/sdb doesn't contain a valid partition table
Disk /dev/sdc: 16.0 GB, 16026435072 bytes
254 heads, 63 sectors/track, 1956 cylinders
Units = cylinders of 16002 * 512 = 8193024 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 1 1955 15641929 c W95 FAT32 (LBA)
最佳解决思路
首先,您的/dev/sdb
未分区。我假设这是你要挂载的磁盘。
警告:这将破坏您的目标磁盘上的任何数据
运行sudo fdisk /dev/sdb
-
按
O
并按Enter
(创建一个新表) -
按
N
并按Enter
(创建一个新分区) -
按
P
并按Enter
(进行主分区) -
然后按
1
并按Enter
(将其创建为第一个分区) -
最后,按
W
(这会将任何更改写入磁盘)
好的,现在你有了一个分区,现在你需要一个文件系统。
-
运行
sudo mkfs.ext4 /dev/sdb1
-
现在您可以将其添加到fstab
您需要使用您喜欢的文本编辑器将其添加到
/etc/fstab
请小心使用此文件,因为它很容易导致系统无法启动。
为驱动器添加一行,格式如下所示。
这假设分区的格式为ext4,符合上面的mkfs
#device mountpoint fstype options dump fsck /dev/sdb1 /home/yourname/mydata ext4 defaults 0 1
然后在下次重启时它会自动挂载。
这个网页上有很多关于fstab的有用信息
次佳解决思路
我的GUI解决方案是gnome-disks
sudo gnome-disks
然后使用配置按钮可以“编辑挂载选项”,随意给出挂载点的目标,它将自动保存到/etc /fstab中
第三种解决思路
每次启动计算机时将驱动器设置为自动装入
你需要编辑/etc /fstab:
只需按键盘上的Ctrl
+ Alt
+ T
即可打开终端。打开时,运行以下命令。
gksudo gedit /etc/fstab
将此行添加到结尾:
/dev/sdaX /media/mydata ext4 defaults 0 0
注意:确保使用适合您情况的正确值替换X.
或者您可以使用存储设备管理器from the software centre.
第四种思路
你可以通过/etc/fstab来做到这一点。
例如,如果添加
/dev/hda2 /myfiles ext2 defaults 0 0
这意味着位于/dev /hda2的设备/分区将使用文件系统ext2挂载到/myfiles,具有默认挂载选项且没有转储且未启用error-checking。
第五种思路
fstab文件让系统知道要挂载哪些驱动器(或至少如何安装它们)。
sudo edit /etc/fstab
然后添加一行如下:
/dev/sdb1 /mydata ext4 defaults 0 0
当然,替换值以适合您的实际位置:
-
/dev/sdb1
应该是要安装的磁盘的设备和分区。 -
/mydata
是您要安装它的地方。 -
ext4
是它正在使用的文件系统类型。如果您不确定,请在安装驱动器时发出不带参数的mount
命令(即使您手动安装它),它也会告诉您文件系统类型。 (在12.04中,您只需键入auto
即可在启动时为您确定文件系统) -
其他值(
defaults 0 0
)就像我展示它们一样。
如果您想了解更多信息,可以阅读man fstab
。
第六种思路
如果您使用以下内容使用FAT32或NTFS文件系统:
对于NTFS:
/dev/sda3 /media/entertainment ntfs-3g rw,auto,user,fmask=0111,dmask=0000,noatime,nodiratime 0 0
/dev/sda4 /media/other ntfs-3g rw,auto,user,fmask=0111,dmask=0000,noatime,nodiratime 0 0
noatime
和nodiratime
是一些优化。如果你想要你可以删除它们。
对于FAT32,用vfat
替换ntfs-3g
。
第七种思路
fstab肯定会帮到你。
对于那些想要使用简单和self-explanatory GUI的懒惰和谨慎的人,有一个名为存储设备管理器(pysdm)的工具。这里的教程将基本上与此线程建议的其他答案相同,但该工具只需点击几下即可完成,无需手动将配置输入到fstab配置文件中。
sudo apt-get install pysdm
(Ubuntu)或sudo yum install pysdm
(Fedora)
什么都不应该出错,但为了以防万一,备份fstab conf:sudo cp /etc/fstab /etc/fstab.old
现在运行存储设备管理器并选择首选分区,单击”Assistant”:
用于自动挂载EXT4分区的PySDM助手设置:
用于自动挂载NTFS分区的PySDM助手:
重新启动并看到您的驱动器现在自动安装。
您可以从this article了解有关助手设置的更多信息,因为它详细解释了该过程,我的答案就是基于它。
更新:pysdm
已从Ubuntu档案(AskUbuntu page)中删除,sudo apt-get install pysdm
不再起作用。
Avoid using pysdm for now.
It’s been removed from the Ubuntu archives for a reason:
please remove Pysdm from Ubuntu repositories. It is obsolete (not updated since June 2006 !!), buggy (https://bugs.launchpad.net/ubuntu/+source/pysdm) , doesn’t handle UUIDs (which is now fstab standard in all supported Ubuntu versions !!!) and it has already been removed from Debian repositories.