查看硬盘分区信息

在Linux中使用lsblk命令查看硬盘以及分区信息

[root@192 ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 25G 0 disk
├─sda1 8:1 0 1G 0 part /boot
└─sda2 8:2 0 24G 0 part
├─centos-root 253:0 0 22G 0 lvm /
└─centos-swap 253:1 0 2G 0 lvm [SWAP]
sr0 11:0 1 1024M 0 rom

可以看到列出了硬盘分区情况,这里介绍下打印的内容

NAME列为磁盘名称,Linux支持IDE和SCSI两种硬盘,他们在Linux中的标识符分别为hd和sd,sda就证明该硬盘为第一块SCSI硬盘(a代表排序),基于硬盘延展出来的sda1、sda2就是硬盘分区,结尾的sr0代表的是光驱,目前没有插入任何光驱,所以sr0后面什么都没有

RM列用来查看该设备是否为可移动设备,如果RM列显示的值为1表示该设备为可以移动设备

SIZE列代表当前分区容量的大小

TYPE列表示当前磁盘类型,disk代表硬盘、part代表分区、rom代表只读存储

MOUNTPOINT列代表该分区挂载的位置

查询硬盘分区UUID

[root@192 ~]# lsblk -f
NAME FSTYPE LABEL UUID MOUNTPOINT
sda
├─sda1 xfs 7297e57b-f917-4392-93e1-cd40cc843f62 /boot
└─sda2 LVM2_member TQ8fPI-obaJ-DPCt-iYXx-F9WV-kUEg-XuDtem
├─centos-root xfs 523bbbbc-fc24-4b94-85cf-9edd337a3ffd /
└─centos-swap swap ac7fe4f7-bd1a-44d0-86d0-b283da59879c [SWAP]
sr0

FSTYPE列表示每块分区的文件系统类型,是在安装系统时选择的,可以回看第一篇笔记内容

UUID列顾名思义,代表该分区的唯一ID

使用情况查询

系统整体磁盘使用情况

查看目录使用情况可以使用df命令,配合-h参数可以更好的查看容量信息

[root@192 ~]# df -h
文件系统 容量 已用 可用 已用% 挂载点
devtmpfs 475M 0 475M 0% /dev
tmpfs 487M 0 487M 0% /dev/shm
tmpfs 487M 7.7M 479M 2% /run
tmpfs 487M 0 487M 0% /sys/fs/cgroup
/dev/mapper/centos-root 22G 3.1G 19G 15% /
/dev/sda1 1014M 137M 878M 14% /boot
tmpfs 98M 0 98M 0% /run/user/0

也可以查看指定目录对应挂载点的使用情况

[root@192 /]# df -h /home
文件系统 容量 已用 可用 已用% 挂载点
/dev/mapper/centos-root 22G 3.1G 19G 15% /

指定目录磁盘占用情况

df命令是查看磁盘整体使用情况的,如果想查看某个目录在磁盘中的使用情况可以使用du命令

[root@192 ~]# du -h --max-depth=0 /root
147M /root

--max-depth代表的是深度,设置为0表示只显示该目录本身的使用情况,可以将深度放大

[root@192 ~]# du -h --max-depth=1 /root
44K /root/app-log
8.0K /root/.java
0 /root/.pki
147M /root/eiss
147M /root

-s 指定目录占用大小汇总

-h 带计量单位

-a 含文件

--max-depth 子目录深度

-c 列出明细的同时,增加汇总值

硬盘分区及挂载

我这里在VMWare上添加了1GB的硬盘作为测试,添加新硬盘后需要重启才可以使用

重启后再次输入lsblk命令,可以看到新硬盘已经加进来了,名称为sdb

[root@192 ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 25G 0 disk
├─sda1 8:1 0 1G 0 part /boot
└─sda2 8:2 0 24G 0 part
├─centos-root 253:0 0 22G 0 lvm /
└─centos-swap 253:1 0 2G 0 lvm [SWAP]
sdb 8:16 0 1G 0 disk
sr0 11:0 1 1024M 0 rom

想要使用该硬盘需要给硬盘分区,接下来使用fdisk命令对硬盘进行分区操作,尝试将sdb划分为两个分区,其中一个300MB,另一个使用剩余空间

[root@192 ~]# fdisk /dev/sdb
欢迎使用 fdisk (util-linux 2.23.2)。 更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。 Device does not contain a recognized partition table
使用磁盘标识符 0xc0f746ab 创建新的 DOS 磁盘标签。 命令(输入 m 获取帮助):n
Partition type:
p primary (0 primary, 0 extended, 4 free)
e extended
Select (default p): p
分区号 (1-4,默认 1):
起始 扇区 (2048-2097151,默认为 2048):
将使用默认值 2048
Last 扇区, +扇区 or +size{K,M,G} (2048-2097151,默认为 2097151):+300M
分区 1 已设置为 Linux 类型,大小设为 300 MiB 命令(输入 m 获取帮助):n
Partition type:
p primary (1 primary, 0 extended, 3 free)
e extended
Select (default p): p
分区号 (2-4,默认 2):
起始 扇区 (616448-2097151,默认为 616448):
将使用默认值 616448
Last 扇区, +扇区 or +size{K,M,G} (616448-2097151,默认为 2097151):
将使用默认值 2097151
分区 2 已设置为 Linux 类型,大小设为 723 MiB 命令(输入 m 获取帮助):w
The partition table has been altered! Calling ioctl() to re-read partition table.
正在同步磁盘。

解释一下上面命令的含义:

1.  首先使用fdisk工具对/dev/sdb硬盘进行分区操作
2. 接下来进入fdisk分区向导,输入指令执行下一步操作,不熟悉指令可以输入m 查看帮助,这里输入n 新建分区
3. 接下来工具会询问创建的分区为主分区还是逻辑分区,这里可以直接回车,默认选择p 主分区
4. 接下来会询问使用什么驱动号,回车顺延即可
5. 接下来询问分区的起始扇区,如果把硬盘比作一根香蕉,这就好比问你在哪里下口,直接回车使用最靠前的位置,防止中间遗漏容量
6. 接下来询问分区的结束扇区,起始扇区到结束扇区内的长度,就代表该分区的容量,这里输入 +300M 表示在起始分区位置扩展300MB
7. 这样就已经创建好一个分区了,然后向导会回到步骤2的位置,这里选择n 继续创建分区下一个分区,后面步骤相同就缩写了
8. 回车,默认主分区
9. 回车,顺延驱动号
10. 回车,起始扇区 使用靠前位置(紧挨着上一个分区结尾的位置)
11. 回车,结束扇区 这里与之前不同,没有输入容量直接进行回车,表示使用剩余所有空间
12. 第二个分区创建完毕,再次回到步骤2,此时分区已经编辑完成,但还没有将操作写入到硬盘,输入w 将变更保存到硬盘,工具会自动退出,如果放弃变更的话直接Ctrl+C强退即可

接下来运行一下lsblk -f命令,查看磁盘分区情况

[root@192 ~]# lsblk -f
NAME FSTYPE LABEL UUID MOUNTPOINT
sda
├─sda1 xfs 7297e57b-f917-4392-93e1-cd40cc843f62 /boot
└─sda2 LVM2_member TQ8fPI-obaJ-DPCt-iYXx-F9WV-kUEg-XuDtem
├─centos-root xfs 523bbbbc-fc24-4b94-85cf-9edd337a3ffd /
└─centos-swap swap ac7fe4f7-bd1a-44d0-86d0-b283da59879c [SWAP]
sdb
├─sdb1
└─sdb2
sr0

可以看到分区已经创建完成,现在的分区因为没有格式化所以还不能使用,接下来使用mkfs命令将分区格式化

mkfs代表格式化分区,-t ext4表示分区文件系统为ext4,格式化的分区为/dev/sdb1

[root@192 ~]# mkfs -t ext4 /dev/sdb1
mke2fs 1.42.9 (28-Dec-2013)
文件系统标签=
OS type: Linux
块大小=1024 (log=0)
分块大小=1024 (log=0)
Stride=0 blocks, Stripe width=0 blocks
76912 inodes, 307200 blocks
15360 blocks (5.00%) reserved for the super user
第一个数据块=1
Maximum filesystem blocks=33947648
38 block groups
8192 blocks per group, 8192 fragments per group
2024 inodes per group
Superblock backups stored on blocks:
8193, 24577, 40961, 57345, 73729, 204801, 221185 Allocating group tables: 完成
正在写入inode表: 完成
Creating journal (8192 blocks): 完成
Writing superblocks and filesystem accounting information: 完成 [root@192 ~]# mkfs -t ext4 /dev/sdb2
......

分区已经格式化完成了,再运行一下lsblk -f命令查看磁盘分区情况

[root@192 ~]# lsblk -f
NAME FSTYPE LABEL UUID MOUNTPOINT
sda
├─sda1 xfs 7297e57b-f917-4392-93e1-cd40cc843f62 /boot
└─sda2 LVM2_member TQ8fPI-obaJ-DPCt-iYXx-F9WV-kUEg-XuDtem
├─centos-root xfs 523bbbbc-fc24-4b94-85cf-9edd337a3ffd /
└─centos-swap swap ac7fe4f7-bd1a-44d0-86d0-b283da59879c [SWAP]
sdb
├─sdb1 ext4 e238f7ce-8874-4e32-924b-3fc2589a4b64
└─sdb2 ext4 aa3a5b33-5f51-4ad0-ae3a-32e3d00c4f8b
sr0

可以看到,分区格式化后就有了唯一的UUID,接下来将分区挂载到目录上

创建text和video文件夹
[root@192 ~]# mkdir /text
[root@192 ~]# mkdir /video 编辑配置文件进行挂载(后面解释)
[root@192 ~]# vim /etc/fstab 配置文件修改完成后更新配置,让分区挂载生效
[root@192 ~]# mount -a

在文件结尾设置分区挂载

# 第一列为分区,可以使用UUID也可以使用分区所在位置的路径
# 第二列为挂载的目标位置
# 第三列为文件系统
# 第四列是挂载选项,defaults默认即可
# 第五列为Dump备份选项,0为不备份,1为每天备份,2为不定期备份
# 第六列为扇区检查,0为不要检查,1为最早检查(适合根目录),2的检查顺序在1后面,适合其他目录
/dev/sdb1 /text ext4 defaults 0 0
/dev/sdb2 /video ext4 defaults 0 0

操作完成后再运行一下lsblk -f命令查看磁盘分区情况,可以看出分区已经挂载完成了

[root@192 /]# lsblk -f
NAME FSTYPE LABEL UUID MOUNTPOINT
sda
├─sda1 xfs 7297e57b-f917-4392-93e1-cd40cc843f62 /boot
└─sda2 LVM2_member TQ8fPI-obaJ-DPCt-iYXx-F9WV-kUEg-XuDtem
├─centos-root xfs 523bbbbc-fc24-4b94-85cf-9edd337a3ffd /
└─centos-swap swap ac7fe4f7-bd1a-44d0-86d0-b283da59879c [SWAP]
sdb
├─sdb1 ext4 e238f7ce-8874-4e32-924b-3fc2589a4b64 /text
└─sdb2 ext4 aa3a5b33-5f51-4ad0-ae3a-32e3d00c4f8b /video
sr0

除了修改配置文件挂载目录之外,还可以直接通过mount命令行进行目录挂载,不过这是临时的,重启系统就会失效,mount命令适用于U盘一类的移动设备

取消挂载的话可以通过umount命令,但对于配置文件挂载的分区来说,重启系统后仍然会挂载,需要编辑配置文件,将刚刚挂载两行配置注释掉,然后重启系统

CentOS7学习笔记(七) 磁盘管理的更多相关文章

  1. MongoDB学习笔记七:管理

    [启动和停止MongoDB]『从命令行启动』执行mongod,启动MongoDB服务器.mongod有很多可配置的启动选项:在命令行运行mongod --help可以查看所有选项.一些主要选项如下: ...

  2. Linux学习笔记12—磁盘管理

    一.查看磁盘或目录的容量 1.  df命令 作用:查看已挂载磁盘的总容量.使用容量.剩余容量等,可以不加任何参数,默认是按k为单位显示的 参数: -I : 查看inodes使用状况 -h: 使用合适的 ...

  3. (转)Qt Model/View 学习笔记 (七)——Delegate类

    Qt Model/View 学习笔记 (七) Delegate  类 概念 与MVC模式不同,model/view结构没有用于与用户交互的完全独立的组件.一般来讲, view负责把数据展示 给用户,也 ...

  4. linux kernel学习笔记-5内存管理_转

    void * kmalloc(size_t size, gfp_t gfp_mask); kmalloc()第一个参数是要分配的块的大小,第一个参数为分配标志,用于控制kmalloc()的行为. km ...

  5. Linux学习笔记(五) 账号管理

    1.用户与组账号 用户账号:包括实际人员和逻辑性对象(例如应用程序执行特定工作的账号) 每一个用户账号包含一个唯一的用户 ID 和组 ID 标准用户是系统安装过程中自动创建的用户账号,其中除 root ...

  6. Linux学习笔记(六) 进程管理

    1.进程基础 当输入一个命令时,shell 会同时启动一个进程,这种任务与进程分离的方式是 Linux 系统上重要的概念 每个执行的任务都称为进程,在每个进程启动时,系统都会给它指定一个唯一的 ID, ...

  7. Linux学习笔记(七) 查询系统

    1.查看命令 (1)man 可以使用 man 命令名称 命令查看某个命令的详细用法,其显示的内容如下: NAME:命令名称 SYNOPSIS:语法 DESCRIPTION:说明 OPTIONS:选项 ...

  8. Linux内核学习笔记-2.进程管理

    原创文章,转载请注明:Linux内核学习笔记-2.进程管理) By Lucio.Yang 部分内容来自:Linux Kernel Development(Third Edition),Robert L ...

  9. Learning ROS for Robotics Programming Second Edition学习笔记(七) indigo PCL xtion pro live

    中文译著已经出版,详情请参考:http://blog.csdn.net/ZhangRelay/article/category/6506865 Learning ROS forRobotics Pro ...

  10. Typescript 学习笔记七:泛型

    中文网:https://www.tslang.cn/ 官网:http://www.typescriptlang.org/ 目录: Typescript 学习笔记一:介绍.安装.编译 Typescrip ...

随机推荐

  1. 庖丁解InnoDB之REDO LOG

    ​简介: 数据库故障恢复机制的前世今生一文中提到,今生磁盘数据库为了在保证数据库的原子性(A, Atomic) 和持久性(D, Durability)的同时,还能以灵活的刷盘策略来充分利用磁盘顺序写的 ...

  2. WPF 对接 Vortice 调用 D2D 使用 IWICBitmap 离屏渲染

    通过 Vortice 库可以使用非常底层的方式调用到 Direct2D1 进行渲染,本文将使用 D2D 离屏渲染到 IWICBitmap 上,再使用一点点反射黑科技,直接将此 IWICBitmap 对 ...

  3. SAP Adobe Form 教程五 图片

    前文: SAP Adobe Form 教程一 简单示例 SAP Adobe Form 教程二 表 SAP Adobe Form 教程三 日期,时间,floating field SAP Adobe F ...

  4. SHELL脚本获取域名对应的IP地址

    单个获取 编写角本pingip.sh #!/bin/sh ADDR=qq.com TMPSTR=`ping ${ADDR} -c 1 | sed '1{s/[^(]*(//;s/).*//;q}'` ...

  5. Ubuntu的apt-get/yarm/wget命令详解

    目录 一.查看本机是否安装软件 二.apt-get 三.yum 四.wget apt-cache和apt-get是apt包的管理工具, 他们根据/etc/apt/sources.list里的软件源地址 ...

  6. DNS(1) -- DNS服务及dns资源类型

    目录 1.1 DNS服务概述 1.2 DNS域名结构 1.3 DNS解析原理 1.3.1 DNS查询类型 1.3.2 解析答案 1.4 DNS资源记录类型 1.1 DNS服务概述 DNS(Domain ...

  7. XML Schema(XSD)详解:定义 XML 文档结构合法性的完整指南

    XML Schema描述了 XML 文档的结构.XML Schema语言也称为 XML Schema Definition(XSD). <?xml version="1.0" ...

  8. nginx相关报错

    # openresty -s reloadnginx: [warn] conflicting server name "community-gw.xxx.cn" on 0.0.0. ...

  9. Azure Service Principals ----- Azure 上最好保守的秘密的服务

    一,引言 Azure Service Principals 是 Azure Active Directory (AAD) 中的一种标识,代表应用程序,服务,自动化流程.Service Principa ...

  10. containerd 源码分析:启动注册流程

    0. 前言 containerd 是一个行业标准的容器运行时,其强调简单性.健壮性和可移植性.本文将从 containerd 的代码结构入手,查看 containerd 的启动注册流程. 1. 启动注 ...