linux基础之分区挂载

硬盘是电脑必有的一个硬件,因为其是数据存储的根本。而常见存储的硬盘分两种一种是固态硬盘和机械硬盘。

而centos7系统,必然也是有自己的硬盘,linux系统不像是window那样你插入就可以直接读取,linux需要进行却需要四步骤才可以用:

  • 磁盘初始化:一般是导入或激活硬盘。如果用过或者厂商回帮用户激活,所以一般用户连接硬盘的时候会感受不到。
    • 常见场景:在windos中移动硬盘USB接口插上电脑后,电脑有连接声,硬盘也在运转,但电脑中不显示。
    • 解决方式:鼠标右击“计算机”,依次左击“管理”、“磁盘管理”,显示“未初始化”
  • 磁盘分区:分区是将一个硬盘驱动器分成若干个逻辑驱动器,分区是把硬盘连续的区块当做一个独立的磁硬使用。分区表是一个硬盘分区的索引,分区的信息都会写进分区表。
  • 格式化:是对硬盘的某个分区做格式化
  • 磁盘挂载:是将硬盘的的写入和读取的接口挂载在那个文件下。

分区介绍

计算机中存放信息的主要的存储设备就是硬盘,但是硬盘不能直接使用,必须对硬盘进行分割,分割成的一块一块的硬盘区域就是磁盘分区。分区是将一个硬盘驱动器分成若干个逻辑驱动器,分区是把硬盘连续的区块当做一个独立的磁硬使用。分区表是一个硬盘分区的索引,分区的信息都会写进分区表。

在传统的磁盘管理中,将一个硬盘分为两大类分区:主分区和扩展分区。主分区是能够安装操作系统,能够进行计算机启动的分区,这样的分区可以直接格式化,然后安装系统,直接存放文件。扩展分区无法直接使用,必须在扩展分区中再次划分逻辑驱动器才可以格式化后存储数据。

在这里插入图片描述

分区命令

分区使用的命令是fdisk

格式:
fdisk  [必要参数][可选参数]

必要参数

参数 作用
-l 列出所有的分区表
-u 一般与 -l 搭配使用,显示分区数目

在这里插入图片描述

上图是:

fdisk  -l

磁盘接口

前面我说过dev 文件下是linux存放外设,自然硬盘也在其下。

目前是一个硬盘,而/dev/sda1 和/dev/sda2又有什么意义。

sd其实是一种硬盘接口,而一般会有两个:hdsd

接口符号 代表的接口
hd 代表IDE 接口的硬盘
sd 代表的是sata,sas,usb,scsi接口硬盘

sd后面一个a和一个数字又有什么意义?

字母或数字 意义
a Linux用字母表示第几个磁盘,a,代表第一块,自然第二块用b……
1或2 这个数字代表某块磁盘的第几个分区。1,2,3,4(最多可以分四个,因为MBR)

补充

MBR(主引导记录)位于硬盘第一个物理扇区(绝对扇区)柱面0,磁头0,扇区1处。由于DOS是由柱面0,磁头1,扇区1开始,故MBR不属于DOS扇区,DOS不能直接访问。MBR中包含硬盘的主引导程序和硬盘分区表。分区表有4个分区记录区。记录区就是记录有关分区信息的一张表。它从主引导记录偏移地址01BEH处连续存放,每个分区记录区占16个字节。

选择参数

参数 作用
-s<分区编号> 指定分区
-v 版本信息

因为用的是模拟器,所以很简单,添加一块硬盘scsi端口的。用fdisk -l可以看的其中

在这里插入图片描述

可以看出sdb,其中b代表的也就是第二块盘。

fdisk   /dev/sdb

在这里插入图片描述

会得到如此一个窗口。然后输入一个m。可以得到一些参数,以及意义,(这些命令是在上面出现的情况下使用的)

m :显示菜单和帮助信息
a :活动分区标记/引导分区
d :删除分区  
l :显示分区类型 比如fat16,linux交互 等
n :新建分区 ( p 为主分区(格式化后可以直接存储数据),e为扩展分区(创建一个扩展分区后,就会编程l 表示创建逻辑驱动器,其在扩展分区中进行划分,然后格式化后才可以存储数据))
p :显示分区信息 
q :退出不保存
t :设置分区号 分区号可以通过l进行查询,然后根据要求进行格式修改
v :进行分区检查
w :保存修改
x :扩展应用,高级功能

(如果输入错了使用 ctrl+delete 才可以删除)

上面只是将硬盘进行分区,其中主分区不需要再次分逻辑驱动器,如果是扩展分区的话,就须臾逻辑驱动器。而分区命令除了fdisk外还有其他的命令。

fdisk命令缺点:单个分区不能超过2T 超过的话需要用parted命令
在linux 下大磁盘的分区不能再采用fdisk了,MBR分区表只支持2T磁盘,所以大于2T的磁盘必须使用GPT分区表
一般情况下很少有单个分区超过2T的,所以不在演示。

格式化

mkfs

格式化(format)是指对磁盘或磁盘中的分区(partition)进行初始化的一种操作,这种操作通常会导致现有的磁盘或分区中所有的文件被清除。格式化通常分为低级格式化和高级格式化。如果没有特别指明,对硬盘的格式化通常是指高级格式化,而对软盘的格式化则通常同时包括这两者。

而格式化的意义,其实就是赋予硬盘什么样的文件系统,而文件系统是负责管理和存储的系统。通俗的说就是存储的时候是什么格式存储,毕竟文件系统的类型有:fat,ntfs,ext2等类型。

所以格式化就是对硬盘存储数据的一种规范的定义,告诉centos这块硬盘用了什么格式的来存储文件。

而这个就需要用的格式化命令mkfs

mkfs [-V] [-t fstype] [fs-options] filesys [blocks] {device}

参数的具体意义

参数 意义
device 预备检查的硬盘分区,例如:/dev/sda1
-V 详细的显示模式
-t 给定文件系统的形式,linux默认是ext2
-c 在格式化之前检测搞partition是否有坏轨
-l bad_blocks_file 将有坏轨的block资料加到 bad_blocks_file 里面
block 给定 block 的大小

补充 什么是inode和block?

所谓的inode就是索引节点(index node)的意思,在每一个存储设备被格式化创建文件系统后,所有的文件大致被分为了两部分,分别是inode和block。

其中inode用来存储文件属性信息,其中包括了文件大小,文件的归属者,文件的归属组,权限,类型,修改时间,以及指向文件实体数据(block)的指针。

block中存储的就是文件的实际数据,比如说,照片,视频,音频等等,但是有一点需要注意!就是inode当中不包含文件名!一个文件的文件名,存储在上级目录的block中!

block越大,inode越少,适合存储大文件的文件系统;block越小,inode越多,适合存储文件多而小的文件系统。

# 在 /dev/hdb1 上建一个 msdos 的档案系统,同时检查是否有坏轨存在,并且将过程详细列出来 :
mkfs -V -t msdos -c /dev/hda5

mkswap

在分区时候可以创建Swap(交换)区,Swap分区在系统的物理内存不够用的时候,把硬盘内存中的一部分空间释放出来,以供当前运行的程序使用。那些被释放的空间可能来自一些很长时间没有什么操作的程序,这些被释放的空间被临时保存到Swap分区中,等到那些程序要运行时,再从Swap分区中恢复保存的数据到内存中。有点类似与windows中设置的虚拟内存。

其进行格式化使用的命令是

mkswap [-cf][-v0][-v1][设备名称或文件][交换区大小]

参数以及意义

参数 意义
-c 建立交换区前,先检查是否有破坏的区块
-f 在sparc电脑建立交换区时,要加上此参数
-v0 建立旧式交换区,此为预设值
-v1 建立新式交换区
交换区大小 指定交换区的大小,单位为1024字节

挂载

在这里插入图片描述

其实用一种不是很恰当的比喻来说:比如一个人买了一个新房子,初始化就是你有了钥匙,表明你可以进去了,自己的房子肯定需要装修,而分区就是将房子分成不同的功能房间,而格式化,你必然会把房子里面的以前痕迹进行大扫除,清理完,然后分配每个房间是干什么的,才可以装修吧(毕竟你不能按照厕所的要求装修卧室)。而挂载就是每间房子的门口建立在那个地方你可以放在客厅,甚至可以一层你可以向外打一个门,我们进入房间需要从这个门进去。

mount和umount

mount

而挂载就需要mount这个命令进行操作

mount [参数]  硬盘分区  挂载目的

mount有很多参数,但是只会列举一些常用的的。

参数 意义
-a 挂载所有文件系统,参考文件 /etc/fstab
-l 显示当前挂载
-t 文件系统类型
-o 指定挂载的权限
# 挂载 格式化后的 /dev/sdb1 到/opt/test下,同时赋予其rw权限

mount -o rw -c  /dev/sdb1 /opt/test  (其中的-o的权限不止有rw还有很多其他的,如果需要自己查询一下资料)

umount

既然可以挂载自然也可以卸除,而umount就是卸除文件系统的命令

umount [参数][-t <文件系统类型>][文件系统]

参数以及意义

参数 意义
-a 卸除/etc/mtab中记录的所有文件系统
-h 显示帮助
-n 卸除时不要将信息存在/etc/mtab文件中
-r 若无法成功卸除,则尝试以只读的方式重新挂入文件系统。
-t<文件系统类型> 仅卸除选项中所指定的文件系统
-v 执行时显示详细的信息
-V 显示版本信息。
[文件系统] 除了直接指定文件系统外,也可以用设备名称或挂入点来表示文件系统
#卸载 /dev/sdb1
umount -v /dev/sdb1   也可以通过节点进行卸载  umount -v /opt/test

swapon 和swapoff

swapon

前面说过swap进行挂载的时候,使用mount时没有用的,只能通过swapon进行挂载

swapon [参数]  [文件系统]
参数 意义
-h 帮助
-V 显示版本讯息
-s 显示简短的装置讯息
-a 自动启动所有SWAP装置
-p 设定优先权,你可以在0到32767中间选一个数字给他。或是在 /etc/fstab 里面加上 pri=[value] ([value]就是0~32767中间一个数字),然后你就可以很方便的直接使用 swapon -a 来启动他们,而且有优先权设定。
# 挂载交换区/dev/sdb2
swapon /dev/sdb2

swapoff

swapoff命令用于关闭系统交换区.

swapoff [参数] [设备]
参数 意义
-a 将/etc/fstab文件中所有设置为swap的设备关闭
-h 帮助
-V 版本信息
##关闭交换区/dev/sdb2
swapoff /dev/sdb2

自动挂载

前面如果都理解了,然后可以说一句恐怖的话,因为用命令挂载的设备,然后系统重启后,就没了。所以就需要自动挂载了,这个需要在/etc/fstab文件中进行配置

在这里插入图片描述

每列的具体字段,以及意义

设备 挂载点 文件系统 权限 备份 检测
设备源文件或者uui 设备的挂载点 文件系统类型 对这个挂载的权限(下面详解) 备份设置(下面详解) fsck磁盘检查设置(下面详解)
  • 第四列 权限

    • auto:系统自动挂载,fstab默认就是这个选项。
    • defaults: rw, suid, dev, exec, auto, nouser, and async.
    • noauto:开机不自动挂载
    • nouser:只有草鸡用户才可以挂载
    • ro: 按只读权限挂载
    • rw: 按可读可写权限挂载
    • user: 任何用户都可以挂载
  • 第五列备份: 当其值设置为1时,将允许dump备份程序备份;设置为0时,忽略备份操作

  • 第六列fsck磁盘检查设置:其值是一个顺序。当其值为0时,永远不检查;而 / 根目录分区永远都为1。其它分区从2开始,数字越小越先检查,如果两个分区的数字相同,则同时检查

    文件设置完毕后,需要使用mount -a 后立即生效,swap区需要用 swapon -a

补充

查看挂载命令

lsblk 或者 lsblk -f (当然还有很多参数,本章不在赘述,可以man lsblk 查看,当然sfdisk -l命令也可以)

在这里插入图片描述

查看硬盘或者目录大小

# 显示目录或者文件所占空间
du

在这里插入图片描述

前两个0,代表各自文件目录下的大小,而第三个0代表一种占了多少空间

# 显示文件t.txt占领的大小
du test.txt

#方便阅读的格式显示t.txt文件(目录也可以用)所占空间情况:

在这里插入图片描述

# 显示文件系统的磁盘使用情况统计
df 或者 df --total

#上面的也可以就方便查看空间数字
df -h 

在这里插入图片描述

# df也可以显示磁盘使用的文件系统信息比如test:
df test

Guess you like

Origin blog.csdn.net/u011863822/article/details/120436199