Linux管道和重定向

Linux存储管理

基本分区

磁盘简介

磁盘/硬盘/disk是同一个东西,不同于内存的是容量比较大

  • 原理区分
    机械硬盘:就是传统的普通硬盘,主要有:盘片,磁头,盘片转轴和控制电机,磁头控制器,数据转换器,接口,缓存等几个部分组成。
    固态驱动器:简称固态硬盘,固态硬盘是用固态电子存储芯片阵列而制成的硬盘。
    图示:

    磁盘相关的术语
  • 磁盘的命名
    kernel对不同接口硬盘的命名方式:
    RHEL7/centos7:
    IDE(并口):
    /dev/hda
    /dev/hdb
    SATA(串口):
    /dev/sda(/dev设备文件目录,s代表sata就是串口,d代表磁盘,a第一块,sda是一个文件)
    /dev/sdb
  • 磁盘的分区方式
    MBR:MBR支持最大的磁盘容量是<2TB,设计时分配4个分区。如果希望超过4个分区,需要放弃主分区,改为扩展分区和逻辑分区。
    GPT:全局唯一标识分区表(简称GPT)是一个实体硬盘的分区表的结构布局的标准,GPT支持大于2T的硬盘,支持128个分区。
磁盘管理
  • 添加磁盘
    如何给我们的虚拟机增加硬盘?

    在编辑虚拟机设置处打开

    单击添加

    选择硬盘,之后一路下一步即可。
  • 管理磁盘流程的三部曲
    分区(MBR或者GPT)——>格式化/文件系统Filesystem-——>挂载mount
  • 查看磁盘的信息
    方法一:
ls -l /dev/sd*

Linux存储管理(上)_文件系统


/dev/sdb1、/dev/sdb2、/dev/sdb5中的/dev/sdb代表的是一块磁盘,1,2,5代表的是这一块磁盘的分区。

方法二:

lsblk

查看块状设备

Linux存储管理(上)_文件系统_02

  • 创建分区
    第一步:MBR(通俗来讲就是将房子分成卧室和客厅)
    第二步:启动分区工具
fdisk /dev/磁盘名称
fdisk /dev/sdc

第三步:进入会话模式

Linux存储管理(上)_linux_03


按下n键

Linux存储管理(上)_数据_04


按下p键

按下1,敲下回车键

输入+1G(注意:输入的范围不要超过磁盘的容量,否则就会提示超出范围)

Linux存储管理(上)_linux_05


按下w并且敲下回车,保存所有的操作结果。

Linux存储管理(上)_逻辑卷_06

第四步:刷新分区表

partprobe /dev/磁盘名称

刷新准备

partprobe /dev/sbc

第五步:查看分区结果

fdisk -l /dev/sdc

Linux存储管理(上)_linux_07


或者输入lsdlk 查看结果

Linux存储管理(上)_文件系统_08

  • 创建文件系统
mkfs.ext4 /dev/sdc1

mk–>make创造

f–>file文件

s–>system系统

ext4–>extend4扩展文件系统第四代,是文件系统的类型。

/dev/sdc1第二块串口硬盘的第一个分区,准备格式化。

Linux存储管理(上)_文件系统_09


格式化完毕。

  • 挂载mount
mkdir /mnt/disk1
mount -t ext4 /dev/sdc1 /mnt/disk1

按下

df -hT
  • 查看挂载信息

逻辑卷LVM

目的

管理磁盘的一种方式,性质和基本磁盘没有区别。

特点

可以随意扩张大小。

Linux存储管理(上)_文件系统_10


和基本分区不一样的是,如果创建的逻辑卷空间已经满了,不可以再写入数据了,这样我们就可以从卷组中抽调出一些空间来给逻辑卷LVM,再次刷新逻辑卷的空间就变大了,接着就可以继续写入数据了.

术语

PV:物理卷
VG:卷组
LV:逻辑卷

创建LVM
  • 准备物理磁盘
lsblk
  • 将物理磁盘转换为物理卷pv
pvcreate /dev/sdc
  • 创建卷组
vgcreate 卷组名称 /dev/sdc
vgcreate vg1 /dev/sdc
  • 创建逻辑卷
lvcreate -L 大小 -n 逻辑卷名称 卷组名称
lvcreate -L 200M -n lv2 vg1
  • 格式化
mkfs.ext4 /dev/vg1/lv1
  • 准备一个文件夹
mkdir mnt /lv1
  • 挂载
mount /dev/vg1/lv1 /mnt/lv1
  • 验证
df -hT
  • 写入数据
dd if=/dev/zero of=/mnt/lv1/1.txt bs=1M count=4000

此时逻辑卷中已经写满了数据,那么可不可以直接对LVM进行扩展呢?答案是可以,但是前提是卷组当中要有空间,才可以调用。

VG管理

如果卷组要是没有空间怎么办?所以要对卷组进行扩容

  • 创建PV,然后加到组里面
pvcreate /dev/sdg

查看一下物理卷

pvs
  • 扩展VG
vgextend vg1 /dev/sdg

查看一下卷组

vgs
LV扩容
  • 查看VG空间
vgs
  • 扩容LV
lvextend -L +4G /dev/vg1/lv1
FS扩容
  • 观察文件系统当前的容量
df -Th
  • 文件系统扩容
resize2fs /dev/vg1/lv2

交换分区管理swap

简介
  • 作用:'提升’内存的容量,防止OOM(out of memory)
  • 图示:
  • swap大小
    建议设置交换分区大小为内存的两倍
    在生产环境下:

大于4GB而小于16GB内存的系统,最小需要4GB交换空间
大于16GB而小于64GB内存的系统,最小需要8GB的交换空间
大于64GB而小于256GB内存的系统,最小需要16GB交换空间

查看当前的交换分区
free -m

Linux存储管理(上)_文件系统_11

增加交换分区
  • 准备分区

准备将/dev/sde磁盘划分为1G分区为例
划分分区后,将类型设置为82(按t)
fdisk /dev/sdepartprobe /dev/sdels -l /dev/sd*

  • 格式化

mkswap /dev/sde1

  • 挂载

swapon /dev/sde1

  • 验证

free -m

如何删除创建了的交换分区?

swapoff /dev/sdc1
  • 重启计算机的命令
init 6

或者是

reboot
  • 如何快速写满一个磁盘?假如有一个磁盘分区为1G大小
dd if=/dev/zero of=/mnt/disk4/1.txt bs=1M count=1000

再打开一个终端

watch -n0.5 'df -hT'

观察写入磁盘的分区

Linux存储管理(上)_逻辑卷_12


再次验证一下

cp -rf /etc/ /mnt/disk4/

Linux存储管理(上)_逻辑卷_13


由于计算机的磁盘分区已经占满了,所以再次复制文件时就会进行报错。

一个磁盘写满之后会出现什么问题?

相对于云计算工程师就是一条提示性的报错,但是对于前端而言就彻底写不进去了。

Linux存储管理(上)_数据_14


所以物理磁盘的空间是限定的,不便于管理、拷贝、删除、授权。

单独依靠物理磁盘是解决不了空间增长的问题的。

linux存储管理(下)