比如用户chenyirong
,希望超级管理员备份自己的数据。假设该用户希望备份文件夹/home/chenyirong/data
下的所有文件。他首先需要修改该文件夹的读取权限:
chmod -R 777 /home/chenyirong/data
该操作的目的是为了避免待会使用cp
命令进行复制时产生错误Permission denied
。
需要注意的是,在插上移动硬盘/U盘等存储设备之前,需要使用以下命令查看目前的硬盘及分区信息:
sudo fdisk -l
插上存储设备后,同样使用该命令查看硬盘及分区信息:
sudo fdisk -l
如下图所示,为我插入移动硬盘后新增的设备:
需要注意的是,Disk表示磁盘,Device表示设备,我们待会挂载的时候,是挂载Device,而不是挂载Disk。也就是,我们需要挂载/dev/sdc1
而不是/dev/sdc
。
刚才已经确认了新插入的设备为/dev/sdc1
,因此,我们需要使用mount命令把该设备挂载到指定的路径。
为了安全起见,我们在/mnt下创建一个叫做/cp_chenyirong的目录,
sudo mkdir /mnt/cp_chenyirong
然后,我们把设备/dev/sdc1
挂到目录/mnt/cp_chenyirong
。这里需要注意,挂载会受文件系统类型限制,假如你要挂载一个当前系统不支持的文件系统,它是没办法工作的。因此,我们需要查看当前系统具体都支持哪些文件系统,使用以下命令:
cat /proc/filesystems
通常而言,在Ubuntu系统当中,是不支持exfat
文件系统的,因此,我们在使用mount进行挂载时,会提示如下错误:
Mount error: “unknown filesystem type 'exfat'”
翻译过来就是:Mount错误:未知的文件系统类型’exfat’,因此,我们需要先安装文件系统支持:
sudo apt-get install exfat-fuse exfat-utils
最后,我们就可以使用mount -t type [-o options] device dir
命令进行挂载了,一般而言,可以忽略-t 和 -o这两个参数,也就是使用以下语句实现把设备/dev/sdc1
挂到目录/mnt/cp_chenyirong
:
sudo mount /dev/sdc1 /mnt/cp_chenyirong
挂载完毕后,使用命令查看是否挂载成功:
mount
cp /home/chenyirong/data /mnt/cp_chenyirong -r
这里,-r
参数实现递归拷贝,避免出现错误:cp: omitting directory
。
使用以下命令取消挂载:
sudo umount /dev/sdc1
在拔出移动设备前,使用mount确保设备已经取消挂载:
mount
至此,可以拔出移动设备了。
【作者简介】陈艺荣,男,目前在华南理工大学电子与信息学院广东省人体数据科学工程技术研究中心攻读博士,担任IEEE Access、IEEE Photonics Journal的审稿人。两次获得美国大学生数学建模竞赛(MCM)一等奖,获得2017年全国大学生数学建模竞赛(广东赛区)一等奖、2018年广东省大学生电子设计竞赛一等奖等科技竞赛奖项,主持一项2017-2019年国家级大学生创新训练项目获得优秀结题,参与两项广东大学生科技创新培育专项资金、一项2018-2019年国家级大学生创新训练项目获得良好结题,发表SCI论文3篇,授权实用新型专利8项,受理发明专利13项。
我的主页
我的Github
我的CSDN博客
我的Linkedin