在linux里面,一切皆文件。
现在我们来看一下磁盘分区
通常划分名字,规则是:
sda (a硬盘) s代表sata或者scsi型的硬盘
sda1 (a硬盘的1分区)
sda2 (a硬盘的2分区)
sda3 (a硬盘的3分区)
sdb (b硬盘)
sdb1 (b硬盘的1分区)
linux的设备文件默认安装在/dev
下
fdisk -l /dev/sda #查看硬盘a的分区信息
#包含硬盘的大小,扇区sectors的大小,一次读写量等
fdisk /dev/sda #按指令操作进行分区操作,比如在command里面输
#入n即是增加一个分区partition,硬盘最多只能4个主分区
#如果你想要建立超过4个主分区,那么可以定义3个主分区和
#1个扩展分区,而扩展分区则是提供扩展之用,如果定义了一个
#扩展分区,那么再建立分区就会在扩展分区里面,这些分区称为
#逻辑分区,扩展分区里面可以建立多个逻辑分区
#系统引导必须要主分区
一旦你重新划分了分区,则需要更新,然后格式化分区
partprobe #更新分区表
mkfs.ext4 /dev/sdb1 #格式化b盘1分区,制作文件系统为ext4格式,扩展分区不
#能格式化,如sdb4是扩展分区,sdb5是扩展分区里面的逻
#辑分区,则只能格式化sdb5,不能格式化sdb4。
#mkfs == make filesystem
挂载操作
我们在操作时对象一般是目录,当我们往目录里面存取时,其实质是向分区里面进行存取操作,所以目录和分区有映射关系,简单点就是我们对目录操作的是逻辑上的,但是真正内容的写入硬盘其实是物理层面的,由于逻辑操作更加容易,所以我们必须按将二者建立联系,这个关系的建立就是挂载。
# mount 物理设备 逻辑目录
mount /dev/sdb2 /sdb2 #将物理设备/dev/sdb2挂载到目录/sdb2下
#举例:
cd /sdb2
touch a.txt #在目录/sdb2里面写入文件a.txt,其实就相当于向设备/dev/sdb2写入
#a.txt,这个写入的动作由系统代劳,这里的设备是一个硬盘里面其中一
#个分区,注意扩展分区只是为了扩展更多的分区,只是一个概念,不能
#进行挂载。一个设备允许多个挂载点。
卸载
#umount 逻辑目录
#umount 设备目录 按顺序卸载,而不是将所有挂载在此设备上的目录都卸载
umount /sdb2
df #查看所有的挂载信息
df -h
df -i #查看分区的inodes信息
mount
du -sh /etc #统计一个目录多大
假如我们卸载了一个挂载点,但是这个目录还是存在的,只不过是取消了源设备A和目标目录a的映射关系,我们再次对这个目标目录a操作,系统首先会去找源设备A,但是挂载点被我们取消掉了,所以系统找不到A,之后系统就会默认继续找到根目录/
,而根目录是挂载在另外一个设备B之上,所以最终我们的目标目录a和另外一个设备B建立了联系,对该目录a进行操作,相当于对另外一个设备B进行操作。
挂载镜像
初始的时候,镜像并没有被挂载到系统里面,虚拟机光盘亮着只是代表镜像被放入cdrom而已 ,你如果没挂载的话 你无法读取里面的的任何信息,所以先手动挂载。
一般镜像文件都在/dev/sr0
下面,如果没经过挂载我们使用df
是看不到镜像文件的挂载信息的,所以我们要事先进行挂载。
注意/dev/cdrom
指向/dev/sr0
,所以挂载前者就相当于挂载后者。
mkdir centos.iso #要挂载到一个目录之前,必须先创建这个文件夹
mount /dev/srO /media/centos.iso #这样我们df就可以查看到镜像被挂载了
ls /media/centos.iso #被挂载后就可以查看镜像里面的文件内容了