首页 > 代码库 > Linux系统 存储

Linux系统 存储

linux系统管理

1.存储管理

  传统的磁盘分区

  RAID技术,软RAID的实现

  LVM

  文件管理系统 

   ext xfs btrfs

2.程序包管理

  rpm yum dnf

3.sed gawk 

4.进程管理

5.网络管理

  网络基础知识(Cisco CCNA+CCNP) 

  网络的属性管理

  网络的参数检测

6.Linux内核管理

  内核的编译和安装

  内核的裁剪

  定制内核

7.Linux系统启动流程

 centos5、6、7

8.系统安装

  利用kickstart、dhcp、pxe 

9.shell脚本的完善

Linux存储管理

 磁盘的接口类型

  IDE:并口  来源于ATA 133Mbps

  SCSI:并口

   UltraSCSI320:320Mbps 

   UltraSCSI640:640Mbps 

  SATA:Serial ATA 串口 

  SAS 串口

   6Gbps

   SATA能接SAS

   SAS不能接SATA

  USB

  双通道 

  IOPS 每秒IO次数

   IDE:机械硬盘 50IOPS

   SCSI:机械硬盘,100-200

    固态硬盘 400左右

   SATA:机械硬盘 100左右

    固态硬盘400左右

   SAS:机械硬盘 200

   固态硬盘800左右

  PCI-E固态硬盘 100000+ 

IDE:主板上有两个接口,4块IDE硬盘

SATS:4~6块硬盘

SCSI:窄7 宽15

SAS:16384硬盘

机械师硬盘

track:磁道,

  sector:扇区, 512Bytes 现在所说的扇区实际上是平均值

  cylinder:柱面,从磁道向所有盘片做投影

   partition:分区,分区就是基于柱面来划分的存储空间

  head:磁头,每个磁盘表面都有一个磁头;

设备文件/dev

 设备文件是关联到硬件设备的驱动程序和设备的访问入口;

设备号:

 major:主设备号,区分设备的类型,用于标明设备所需的驱动程序

 minor:次设备号,区分同种类型下的不同设备,是特定设备的访问入口

mknod命令:make block or character special files

 mknod [OPTION]... NAME TYPE [MAJOR MINOR]

 -m:

设备类型

 c字符设备:用于线性访问的设备,数据的交换单位一般是字符

 b块设备:用于随机访问的设备,数据存储和交换单位是块

设备文件名:

 /dev/

  IDE:hd[a-d]

  SCSI/SATA/USB:sd[a-z]

  RHEL6,centos6开始

  所有的接口类型的硬盘设备统一命名为sd[a-z] 

设备的引用方式:

 设备文件名

 卷标(Volume Lable)引用

 UUID:全局唯一标识符,128bit

如何使用一个新的硬盘设备

 1.分区

 2.创建文件系统(格式化)

 3.挂载分区

为何分区

 1.优化I/O性能

 2.实现磁盘空间的配额限制

 3.进行告诉修复

 4.隔离系统文件和其他程序文件

 5.安装多个操作系统

怎么分区

 MBR:硬盘空间小于2TB

  Master Boot Record 主引导记录起源于1982年,

  0磁道0扇区:512byte

   446bytes:boot loader,引导加载程序,GRUB

   64bytes:partition table 分区表每16byte表明一个分区的内容;一共有4个主分区

  注意:

   1.主分区+宽展分区最多有4个,其分区表位的编号依次为1,2,3,4

   2.逻辑分区的编号从5开始,不管前面的4个数字编号是否被占用,

   2bytes: 结束标记 55AA

 GPT:硬盘空间大于2TB

  GUID Partition Table,GUID分区表,支持128个分区,

  UEFI(统一扩展固件接口)的硬件是可以支持GPT Boot Legacy

通常使用的分区工具

 fdisk:

  用于管理和创建MBR分区,对于一块硬盘,最多只能管理15各分区

 gdisk:GNU disk

  用于创建和管理GPT分区,

如果使用fdisk或gdisk命令对于已经有分区并挂载的磁盘的剩余空间进行再次分区,分区的信息即便是保存了也不会被内核重新读取;如果要让内核识别此类分区:1.重启计算机 2.partprobe命令或者partx命令来强制内核重读分区表;

 在centos5或者7可以使用 partprobe -a [device] 如果省略了设备名,则表示重读所有磁盘的分区表

 centos6/7: partx -a [device]

            kpartx -af [device]

 parted:

  高级分区工具,实时生效

   parted [options] [device [command [options...]...]]


fdisk分区示例

 fdisk -l [device...]

 查看指定磁盘的分区表,如果省略device,则表示所有的磁盘分区

fdisk子命令

 d 删除分区

 l 列出已知分区

 m 帮助列表

 n 添加分区

  n子命令

   e 

   p 

   l

 p 交互式模式下显示分区表

 q 退出并且不保存改变

 t 改变分区ID

 w 把做的操作

echo ‘---‘ > /sys/class/scsi_host/host2/scan

强制内核识别在开机状态下插上的SCSI接口的磁盘

which -- skip-alias ls &> /dev/null  判断命令是否存在


Linux系统 存储