Linux 第七章

磁盘与文件系统管理

1.磁盘分区与格式化

​ 在Linux中,当现有的硬盘分区不能满足要求时,就需要对硬盘中的分区进行重新的规划与调整,有时候还需要添加新的硬盘来扩展存储空间。

1.1.磁盘及分区的表示方法

​ 操作系统中的所有数据都存储在磁盘分区中,在传统的分区中,磁盘分区包括主分区,扩展分区,逻辑分区三种类型。之所以这样分区,是因为在磁盘的主引导扇区MBR中用来存放分区信息的空间只有64字节(主引导扇区一共只有512字节空间)。而每个分区的信息都要占用16个字节,因而理论上,一块磁盘最多只能拥有4个分区,当然这4个分区都是主分区。随着后来磁盘空间越来越大,4个分区已经不能满足需求了,所以又引入了一个扩展分区的概念。扩展分区也是主分区,但它不能直接使用,它相当于是一个容器,可以在扩展分区中再创建新的分区,这些分区被称为逻辑分区。逻辑分区的空间不再受到主引导扇区的限制,像SCSI和SATA接口的磁盘再Linux中最多可以创建12个逻辑分区。

Linux中的所有磁盘以及磁盘中的每个分区都是用文件的形式来表示的。所有的设备文件都统一存放在/dev目录中。

​ 不同类型的硬盘和分区的设备文件都有统一的命名规则,具体表述形势如下:

  • 硬盘:对于SATA和SCSI接口的硬盘设备,采用"sdX"的形式命名,其中"X"为"a,b,c,d"等字母,例如,磁盘的第一款硬盘表示为"sda",第二款硬盘表示为"sdb"。

  • 分区:表示分区时,以硬盘设备的文件名作为基础,在后面加上该分区对应的数字序号。例如,第一块硬盘中的第一个分区表示为"sda1",第二个分区表示为"sda2"。

    需要注意的是:主分区的数目最多只有4个因此主分区和扩展分区的序号就限制为1-4之间而逻辑分区的序号从5开始。

​ 另外,对于所有使用USB接口的移动存储设备,都一律使用/dev/sdX的设备文件,光驱(光盘)的设备文件则一般默认为/dev/cdrom。

1.2.添加新的硬盘

添加新的硬盘需要在虚拟机的硬件设置中进行添加。

  • 设置中点击添加,选择硬盘点击下一步,然后选择硬盘接口类型SCSI;

  • 创建一个新的虚拟磁盘;

  • 磁盘大小选择默认20G,并将虚拟机磁盘存储为单个文件;

  • 下一步点击完成,新的硬盘就添加成功。

  • 添加了新的磁盘,虚拟系统还没办法进行识别,所以需要重启系统
reboot                       # 重启
shutdown -r now             # 重启

1.3.查看分区信息

​ 在Linux中最基本的磁盘及分区管理工具是fdisk。

格式:

fdisk [-l] [设备名称]
fdisk -l                     # 查看分区信息
fdisk -l /dev/sda               # 查看sda的分区信息
fdisk -l /dev/sdb               # 查看sdb的分区信息

我们可以看到/dev/sdb没有进行分区,我们就对这块磁盘进行分区:

  • 执行如下命令及步骤:

    fdisk /dev/sdb         # 对sdb分区
    n                       # 新增分区
    p                       # 采用主分区
    1                       # 分区编号
    2048                    # 起始扇区
    +10G                   # 分区大小10G
    p                       # 查看分区
    

  • 再次创建扩展分区:

继续上一步操作执行如下命令及步骤:

n                    # 新增分区
e                   # 添加扩展分区
2                   # 序号
采用默认值enter
采用默认值enter
n                   # 在创建分区
l                   # 创建逻辑分区
采用默认值enter
采用默认值enter
+8G                    # 设置8G大小
# 再次分区
n
l
默认
p                   # 查看信息

  • 最后输入w保存退出:

fdisk -l /dev/sdb                    # 查看sdb的分区信息

我们也可以通过如下命令查看分区是否生效:

cat /proc/partitions
# /proc存放的是内存的数据
-----------
# 如果没有生效可以执行强制刷新命令
partprobe /dev/sdb
  • 删除分区用d选项
fdisk /dev/sdb
d                       # 默认是从后往前删
q                       # 不保存退出

1.4.Linux的文件系统

​ 文件系统是操作系统的重要组成部分,它决定了向磁盘分区中存放、读取文件数据的方式和效率。对于一块新的磁盘,在向其中存放数据之前必须先创建文件系统。文件系统在对磁盘分区进行格式化时创建,在系统中存在很多不同类型的文件系统,可以根据情况选择合适的文件系统类型。

​ 在windows系统中,硬盘分区都是采用的都是FAT32或NTFS系统,而在Linux系统中,硬盘分区大都是采用ext系列或xfs文件系统。在CentOS7版本之前的系统都是采用ext系列文件系统,**从CentOS7开始则转向了xfs文件系统,这种系统通常被认为是更适合大数据环境。**Linux不支持NTFS的文件系统,如果一定要使用,需要安装一个ntfs-3g的软件。

​ 在文件/etc/filesystems中存放的就是Linux中的文件类型。其中"iso9660"是指光盘所采用的文件类型:

cat /etc/filesystems

​ 另外,在Linux中还有一种文件系统叫swap,swap文件系统是专门给交换分区使用的。交换分区类似于windows系统中的虚拟内存,能够在一定程度上解决物理内存不足的问题。不同的是,在windows系统中采用的是pagefile.sys的系统文件作为虚拟内存使用,而在Linux 系统中则是采用了一个单独的分区作为虚拟内存,这个分区就被称之为交换分区。交换分区的大小一般设置为主物理分区的两倍,如主机物理内存大小为1GB,,交换分区大小设置为2GB则可。由于现在的服务器普遍配置的是大容量的内存,因而对于内存容量在8GB以上的服务器,交换分区的大小统一的设置为8GB即可。在安装Linux系统时,如果选择系统自动对内存分区,那么系统会自动创建swap分区,并为其分配适当的磁盘空间,我们一般也无需再分配。

swapon -s                                    # 查看交换分区
free -h                                     # 查看交换分区的大小

1.5.格式化分区

​ 分区创建好后,还必须经过格式化才能使用,格式化的主要目的是在分区中创建文件系统。CentOS7使用的文件系统时XFS,另外也支持EXT的文件系统。

​ 格式化分区的命令是mkfs,使用**-t选项**是指明所要格式化文件系统的类型。

​ mkfs=make filesystem

格式:

mkfs -t 文件系统类型 分区设备
mkfs -t xfs /dev/sdb1                        # 将/dev/sdb1格式化为xfs的文件系统
mkfs -t ext4 /dev/sdb5                      # 将/dev/sdb5格式化为ext4的文件系统

需要注意的是:格式化时会清除分区中的所有数据,所以执行格式化操作前要做好备份操作。

1.6.挂载存储设备

​ 通过之前的操作,我们已将磁盘进行分区,但是/dev/sdb2作为扩展分区是无法使用的,而其他的分区也无法直接被使用,要想使用这些分区,还必须完成最后 一步操作——挂载。挂载是Linux系统与Windows在存储设备操作方式上一个非常重要的区别。

​ 在Linux系统中,对各种存储设备中的资源访问(如保存、读取等)都是通过目录结构进行的虽然系统核心可以通过设备文件的方式操纵各种设备,但是对于用户来说还需要一个挂载的过程,才能正常访问存储设备中的资源。

​ **挂载就是将指定系统中的一个目录作为一个挂载点,用户通过访问这个目录来实现对硬盘分区的数据存取操作,作为挂载点的目录就相当于是一个访问硬盘分区的入口。**挂载这个操作就是用来告诉Linux系统:现在有一个磁盘空间,请你把它放在某一个目录中, 好让用户可以调用里面的数据。挂载时,必须以设备文件指定所要挂载的设备。

​ 例如把/dev/sdb5挂载到/tmp目录中,当用户在/tmp目录下执行数据存取操作时,Linux就知道要到/dev/sdb5上执行相关操作。

​ 挂载使用命令mount,命令格式为:

mount [-t 文件系统类型] 设备文件名 挂载点目录

​ 其中,文件类型可以省略-由系统自动识别,设备文件名应区分开每种设备所对应的名字,也可以是网络资源的路径,挂载点则是用户指定挂载的目录。挂载点的目录必须是事先已经存在的目录。

​ 需要注意的是:如果挂载点是一个有文件或目录的目录,那么里面的数据会自动转移到分区中。

​ 卸载使用的命令是umount,需要指定挂载点目录或对应设备文件名作为参数,格式为:

umount 设备文件名|挂载点目录
mkdir /data                              # 创建/date目录
mount /dev/sdb1 /data                   # 将/date作为/dev/sdb1的挂载点
df
-----------
ls /home                                # 查看/home里的数据
mount /dev/sdb5 /home                   # 将/dev/sdb5挂载到/home下
ls /home                                # 此时/home下没有数据
umount /home                            # 取消挂载,恢复数据
df
ls /home

查看当前系统挂载的设备用命令df命令

df

1.7.自动挂载

我们使用mount命令实现挂载可以立即生效,但是无法永久生效。一旦将系统挂机或重启功能就失效了,而如果通过修改配置文件的方式来实现该功能就可以实现永久有效,但是无法立即生效。

​ 修改/etc/fstab文件实现自动挂载。

blkid /dev/sda1                              # 查看sda1的UUID及文件系统类型

2.练习

1.找到ls命令的程序文件路径,并人性化显示该文件的详细信息 which+ll -h
2.将/var/log/messages文件设置为只能向其中追加写入数据,但不能删除原有属性 chattr +a
3.找出/etc目录中1年没变更过的文件 find /etc -ctime +365
4.查看/etc/shadow文件被设置的扩展属性  lsattr
5.找出/etc目录中的所有文件 find /etc -type f
6.在整个文件中查找所属者是张三的用户并过滤错误信息 find / -user 2>
7.创建一个磁盘分区,并设置2个主分区,1个扩展分区,2个逻辑分区
8.将1主分区格式化文件格式为xfs,2主分区文件类型为xfs,并将它们分别挂载到/abc,/xyz

能删除原有属性 chattr +a
3.找出/etc目录中1年没变更过的文件 find /etc -ctime +365
4.查看/etc/shadow文件被设置的扩展属性 lsattr
5.找出/etc目录中的所有文件 find /etc -type f
6.在整个文件中查找所属者是张三的用户并过滤错误信息 find / -user 2>
7.创建一个磁盘分区,并设置2个主分区,1个扩展分区,2个逻辑分区
8.将1主分区格式化文件格式为xfs,2主分区文件类型为xfs,并将它们分别挂载到/abc,/xyz


Linux 第七章-磁盘分区和格式化相关推荐

  1. Linux磁盘管理——df、du、磁盘分区、格式化、挂载、LVM

    2019独角兽企业重金招聘Python工程师标准>>> Linux磁盘管理 一. df命令 df命令参数功能:检查文件系统的磁盘空间占用情况.可以利用该命令来获取硬盘被占用了多少空间 ...

  2. linux 格式化 目录,Linux 磁盘分区、格式化、目录挂载

    实验环境: Citrix虚拟化, RHEL6.4系统环境 本文目的: 熟悉Linux的基本磁盘分区.格式化.目录挂载. 1.显示当前主机目录 2.磁盘分区 3.磁盘格式化 4.挂载目录 1. 显示当前 ...

  3. linux格式化ext4分区工具,linux学习笔记-磁盘分区、格式化与挂载

    磁盘分区.格式化与挂载 磁盘分区.格式化与挂载 一.给磁盘分区 分区工具介绍 fdisk:分区时只修改分区表信息:操作简单:不支持大于2T的分区:只能使用交互式来分区. parted:直接将分区信息写 ...

  4. linux格式化磁盘命令(磁盘分区及格式化)

    Ubuntu下挂载一个新硬盘的基本步骤是: 给硬盘创建分区; 给硬盘创建文件系统; 挂载移动硬盘. 需要用到的命令: lsblk #查看所有硬盘情况 df -lh #查看硬盘占用情况,以及挂载位置 s ...

  5. Linux 命令学习 -磁盘分区和格式化

    Linux 命令学习 -磁盘分区和格式化 磁盘分区操作 创建逻辑卷 调整逻辑卷大小 创建VDO卷 在计算机上使用磁盘空间的过程: 识别磁盘----分区----格式化----挂载----访问挂载点 fd ...

  6. Linux小实验——设备挂载、磁盘分区、格式化、RAID的配置、LVM配置、磁盘配额的配置方法和验证

    小实验--设备挂载.磁盘分区.格式化.RAID的配置.LVM配置.磁盘配额的配置方法和验证 一.实验目的 二.要求 三.实验开始 1.加入新磁盘,创建分区,并把分区类型改成'8e'的RAID 2.创建 ...

  7. linux磁盘分区、格式化并挂载

    1.查看磁盘分区状态 1.1. 查看分区挂载情况 df -h 1.2.查看服务器挂载的磁盘 fdisk -l fdisk -l /dev/vdb 2.磁盘分区 2.1.对vdb磁盘进行分区 fdisk ...

  8. linux 下对u盘分区吗,linux对中毒u盘分区和格式化

    linux对中毒u盘分区和格式化 发布时间:2008-08-29 10:36:49来源:红联作者:aibss 原创人:a3563 u盘情况是4G,分2个区,分别为2G.其中一个分区在windows下& ...

  9. linux(ubuntu)下分区和格式化sd卡

    我的手机sd卡需要分成两个分区,在windowxp下面死活搞不成. 主要的问题是,window只认识sd卡的第一个分区. 有人用修改驱动程序,让windows把sd卡认成日立的microdisk,分区 ...

最新文章

  1. Matlab稀疏矩阵
  2. JavaScript、jQuery、HTML5、Node.js实例大全-读书笔记3
  3. sql server mysql 同步_SQL Server 用链接server 同步MySQL
  4. 推荐两份学习 Kotlin 和机器学习的资料
  5. APUE学习笔记——信号
  6. android+tv+直播源diy,目前HDP直播自定义节目源
  7. QQ for linux(ubuntu) 下载安装教程
  8. ECShop Discuz 和帝国CMS
  9. 数据仓库与数据挖掘实践期末复习总结
  10. android和电脑共享文件,安卓手机怎么访问电脑共享文件
  11. Linux 创建无线热点
  12. mysql5.5手册读书日记(2)
  13. Milk Measurement
  14. matlab r2020b百度网盘下载链接及安装过程
  15. 云计算-Linux-云计算是啥.什么是Linux-小白
  16. 城市交通拥堵问题matlab,深圳市交通拥堵问题分析---数学建模论文.doc
  17. spss为什么有python插件_为什么数据分析会用 Python
  18. 独立IP、PV、UV、DAU含义
  19. 关于Microsoft Virtual WiFi Miniport Adapter的添加删除
  20. Keil魔术棒上已经设置了ST_Link下载了,但是烧进STM32时却被提示找不到JLink

热门文章

  1. 333-SQL实现网页的插入更新登录
  2. 交通预测论文阅读与总结
  3. jps jstat命令用法
  4. 给初学者的RxJava2.0教程(二):【线程控制】
  5. C语言枚举enum基本用法
  6. 销量突破2000台!东芝雾语冰箱火爆上市引领外资高端品牌新选择
  7. ubuntu18.04谷歌浏览器 无法拖拽安装插件
  8. CVE-2013-4547(Nginx文件名逻辑漏洞)
  9. mackbook14自带linux系统,华为MateBook D 14笔记本预装linux改win10系统
  10. 策略模式解决多重if-else