Linux:磁盘管理
1,挂载光盘到新建目录
sudo mkdir /mnt/cdrom ##新建文件夹
sudo mount /dev/cdrom /mnt/cdrom/ ##将光盘挂载到新建的文件夹; mount命令:将分区挂接到linux的一个文件夹下
cd /mnt/cdrom ##打开挂载光盘的文件夹
ls ##查看光盘内容
cd / ##卸载光盘前,需要从挂载光盘的文件夹退出
sudo umount /dev/cdrom ##卸载光盘
2,Linux中,每个设备都会被表示为文件,这些设备文件都放在/dev目录下,可以通过如下方式查看系统设备:
cd /dev/
ls
这些设备文件大部分是 块设备文件 和 字符设备文件,块设备文件 如:磁盘,字符设备文件 如:打印机。
硬盘在linux中遵循一定的命名规则,用户不能直接通过设备文件来访问存储设备,所有存储设备在使用前必须首先被挂载到一个目录下,然后就可以像操作目录一样使用这个存储设备了。具体使用方法如下实例:
sudo mkdir /mnt/vista ##新建一个目录
sudo mount /dev/sda3 /mnt/vista/ ##将sda3分区 挂载到 新建目录上
#sudo mount -r /dev/sda3 /mnt/vista/ ## mount的选项 -r:以 只读形式挂载分区
#sudo mount -w /dev/sda3 /mnt/vista/ ##mount的选项 -w:以 可读写的形式挂载分区
cd /mnt/vista/ ##打开新建目录 等同于 打开硬盘分区sda3
ls ##浏览sda3内的内容
touch new_file ##在分区sda3中新建一个文件
3,linux通过配置文件/etc/fstab 来确定 系统在开机时 以何种方式 挂载硬盘;以及 有哪些分区是需要挂载的;
4,在卸载文件系统之前,按下光驱面板上的出仓按钮,系统不会弹出光盘,要想弹出光盘,必须先卸载文件系统。
前文讲过,存储设备必须挂载到一个目录才能被使用,那么 在卸载该存储设备时,我们首先要从 挂载目录 退出,然后才能进行卸载文件系统的操作,否则,无法正常卸载文件系统。
sudo mkdir /mnt/vista ##新建一个目录
sudo mount /dev/sda3 /mnt/vista/ ##将sda3分区 挂载到 新建目录上
#sudo mount -r /dev/sda3 /mnt/vista/ ## mount的选项 -r:以 只读形式挂载分区
#sudo mount -w /dev/sda3 /mnt/vista/ ##mount的选项 -w:以 可读写的形式挂载分区
cd /mnt/vista/ ##打开新建目录 等同于 打开硬盘分区sda3
ls ##浏览sda3内的内容
touch new_file ##在分区sda3中新建一个文件
##卸载文件系统 正确操作
cd / ##从挂载目录中退出
sudo unmount -r /dev/sda3 ##-r选项:在unmount无法卸载文件系统时,将文件系统以只读方式重新载入
5,查看磁盘的使用情况:df
df命令会收集和整理 当前已挂载的文件系统 的一些重要的统计数据:
df ##显示全部
df -t ext3 ##显示特定类型的文件系统的 统计数据
6,检查和修复文件系统:fsck
文件系统发生异常时,fsck可以对其进行检查,并将文件回滚到上次正常的状态。
note that:fsck修复存在风险,特别是文件系统发生严重损坏时,提前备份才是王道。
sudo fsck /dev/sda1 ##fsck可以接受分区编号来指定要检查的文件系统
sudo fsck -p ##-p选项:fsck会读取fstab文件来确定检查哪些文件系统,并进行修复
7,在磁盘上建立文件系统:mkfs
所有的磁盘在使用前都必须经过格式化,格式化就是在目标盘上建立文件系统的过程。需要注意的是,如果磁盘已经被挂载到某一文件系统上,需要先对磁盘执行unmount操作,之后,方可进行格式化。
在目标盘上建立文件系统,可以用命令mkfs来完成,其本身并不执行建立文件系统的工作,而是调用相关的程序(这些程序包括: mkdosfs,mke2fs,mkfs.minix)。mkfs通过参数-t,可以指定 建立的文件系统类型。
下面命令将第2个硬盘的第一个分区格式化为ext4格式:
sudo mkfs -t ext3 /dev/sdb1 ##通过建立ext3类型的文件系统,将硬盘/dev/sdb1 格式化
sudo mkfs -t ext4 -c /dev/sdb1 ##通过参数-c,检查指定设备上损坏的块
8,使用USB设备
一般来说,linux会自动挂载接入USB接口的设备,这点和光盘非常相似。
如果由于某些原因,系统没有识别到该USB设备,那么可以进行手动挂载。USB设备在Linux系统中被认为是SCSI设备,因此,可以从/dev/sd[a-z][1-…]挂载。
下面为挂载USB设备的一个示例,该示例中,USB设备被识别为系统中第2个硬盘的第1个分区/dev/sdb1:
sudo mkdir /mnt/usb ##新建一个目录用于挂载usb设备
sudo mount /dev/sdb1 /mnt/usb ##挂载USB设备
cd /mnt/usb/ ##打开USB设备
ls ##浏览USB设备内容
cd / ##离开挂载USB设备的文件系统,返回根目录
sudo unmount /dev/sdb1 ##卸载USB设备
lsusb ##使用该命令可以列出当前内核中已经发现的USB设备
9,压缩工具