现在的Ubuntu系统挂载一个设备其实很容易,因为当把插入设备后,系统会自动挂载。对于硬盘挂载,我们通常希望它挂载到制定的目录下,例如家目录下的某个目录。本文以SD内存卡为例,描述下挂载的过程。
首先通过 mount
命令就可以看到,这个SD卡已经被挂载到某个目录下
$ mount
/dev/sdc1 on /media/david/DEEPINOS type vfat (rw,nosuid,nodev,relatime,uid=1000,gid=1000,fmask=0022,dmask=0022,codepage=437,iocharset=iso8859-1,shortname=mixed,showexec,utf8,flush,errors=remount-ro,uhelper=udisks2)
现在我想把它挂载到另外一个目录,那么需要先卸载它
$ umount /dev/sdc1
如果我们想拔出一个设置,最好先卸载这个设备,因为如果向设备写入大量数据,例如拷贝一个镜像,如果我们盲目移除设备,那么会造成数据丢失。而如果我们先卸载设备,那么系统会把缓存中的数据刷新到设备,再移除设备就不会导致数据丢失。
然后再挂载到家目录下的某个目录
$ mkdir ~/sdcard
$ sudo mount -t vfat /dev/sdc1 ~/sdcard
现在,再通过 mount
命令即可看到SD卡被挂载到正确的位置
$ mount
/dev/sdc1 on /home/david/sdcard type vfat (rw,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=iso8859-1,shortname=mixed,errors=remount-ro)
然而这个挂载动作只是临时可用,当系统重启后,需要再次执行挂载的动作,但是,可以在 /etc/fstab
文件中永久挂载。
$ sudo vim /etc/fstab
通过上面命令打开文件后,添加如下命令即可完成永久挂载
/dev/sdc1 /home/david/sdcard ext4 defaults 0 0
最后一个数字最好设置为0,这样可以在开机的时候避免被 fsck
检查。这样有什么好处呢?我曾经在这个文件中写错了挂载的命令,重启后无法进入系统,就是因为挂载的命令错误。但是这个还好解决,通过 Ctrl+Alt+F4
打开一个终端,重新修改这个命令即可。