磁盘虚拟化系列-前奏:Linux的磁盘管理和文件系统

设备和磁盘

Linux的设备分类

块设备

  block,存储单位为“块”,磁盘

字符设备

  char,存储单位为“字符”,键盘

磁盘分类

机械硬盘(HDD)
固态硬盘(SDD)

设备文件

1、磁盘设备的设备命名为:/dev/DEV_FILE
2、不同磁盘标识:a-z,aa,ab…
  /dev/sda、/dev/sdb、…/dev/sdaa、/dev/sdab
同一设备上的不同分区:1、2、3…
/dev/sda1、/dev/sda5

Linux磁盘分区

为什么分区

1、优化I/O性能
2、实现磁盘空间配额限制
3、提高修复速度
4、隔离系统和程序
5、安装多个OS
6、采用不同的文件系统

磁盘寻址方式

CHS:
采用24bit位寻址
其中前10位标识cylinder,中间8位表示head,后面6位表示sector
LBA(logical block addressing):
LBA是一个整数,通过转换位CHS格式完成磁盘具体寻址
LBA采用48bit位寻址
最大寻址空间128
由于CHS 寻址方式的寻址空间在大概8GB 以内,所以在磁盘容量小于大概8GB 时,可以使用CHS 寻址方式或是LBA 寻址方式;在磁盘容量大于大概8GB 时,则只能使用LBA 寻址方式

分区方式

  两种分区方式:MBR、GPT
1、MBR:Master Boot Record,1982年,使用32位表示扇区数
  如何分区:按柱面
  0磁道0扇区:512bytes
  446bytes:boot loader
  64bytes:分区表
    16bytes:表示一个分区
在这里插入图片描述
2、GPT:
在这里插入图片描述

系统引导方式

https://www.zhihu.com/question/21672895

Linux上如何使用磁盘

Linux分区命令

列出块设备

lsblk
fdisk -l /dev/sda
cat /proc/partitions
创建分区
1、fdisk
2、gdisk创建GPT分区
3、parted高级分区操作(创建、复制、调节大小等等)实时性,小心使用。aix, amiga, bsd, dvh, gpt, mac, msdos, pc98, sun, loop 都能创建。

文件系统

查看支持的文件系统
在/lib/modules/xxx/kernel/fs
在这里插入图片描述
Linux的文件系统类型
ext2(Extended file system), ext3,ext4, xfs (SGI ), btrfs (Oracle ), reiserfs, jfs(AIX), swap

根据其是否支持"journal" 功能:

  日志型文件系统: ext3, ext4, xfs, …

  非日志型文件系统: ext2, vfat

光盘:iso9660

Windows :FAT32, exFAT,NTFS

Unix: FFS (fast ), UFS (unix ), JFS2

网络文件系统:NFS, CIFS

集群文件系统:GFS2, OCFS2 (oracle) 例:11.11 淘宝

分布式文件系统: fastdfs,ceph, moosefs, mogilefs,glusterfs, Lustre

RAW:未经处理或者未经格式化产生的文件系统
创建文件系统
(1)mkfs命令:
mkfs. 能创建很多类文件系统 例:mkfs.xfs /dev/sda1 给/dev/sda1创建xfs类型的文件系统
ext#   xfs   btrfs   vfa
mkfs -t 是个c写的脚本,就是调用mkfs. 命令 例:mkfs -t ext4 /dev/sda1 给/dev/sda1创建ext4类型的文件系统
-f 强制重建,如果这个设备已经分过其他格式的文件系统了
(2)mke2fs :创建文件系统,ext系列文件系统专用管理工具,例:mke2fs -t ext4 -L test /dev/sdc1 给/dev/sdc1创建ext4卷标为test的文件系统

-t {ext2|ext3|ext4} 格式

-b {1024|4096} block快大小

-L ‘LABEL’ 卷标

-j: 于 相当于 -t ext3

mkfs.ext3 = mkfs -t ext3 = mke2fs -j = mke2fs -t ext3

-i #: 为数据空间中每多少个字节创建一个inode ;此大小不应该小于block 的大小

-N # :指定分区中创建多少个inode

-I 一个inode 记录占用的磁盘空间大小,128—4096

-m #: 默认5%, 为管理人员预留空间占总空间的百分比

-O FEATURE[,…] :启用指定特性(只能开启以下特性) -O ^FEATURE 禁用指定特性

(3)tune2fs:修改文件系统信息,重新设定ext 系列文件系统可调整参数的值 例:tune2fs -o acl /dev/sdb2 开启/dev/sdb2的acl功能

-l :查看指定文件系统超级块信息;super block

-L ‘LABEL’ :修改卷标(ext)

mkfs -L ‘LABEL’ 或 mke2fs -L ‘LABEL’ 创建时设置卷标

e2label /dev/sd# 查看卷标

e2label /dev/sd# ‘LABEL’ 重命名卷标

-m # :修预留给管理员的空间百分比

-j: 将ext2 升级为ext3

-O: 文件系统属性启用或禁用, –O ^has_journal

-o: 调整文件系统的默认挂载选项,–o ^acl (centos7里默认开启acl 6 默认不开启)

-U UUID: 修改UUID号
(4)修复文件系统
一定不要在挂载状态下进行修复(centos6、7都 禁止在挂载下修复)fsck、xfs_repair

分区挂载

  当我们分完区,并做好文件系统格式化,就到了最后的挂载mount了,挂载完毕就可以使用磁盘设备了。
1、什么是挂载和卸载
挂载: 将额外文件系统与根文件系统某现存的目录建立起关联关系,进而使得此目录做为其它文件访问入口的行为(挂载的设备必须有文件系统)

卸载:为解除此关联关系的过程

2、mount
3、umount卸载
卸载时,若有正在运行的进程,不能卸载,会报错。
查看正在访问指定文件系统的进程:
lsof 设备或挂载点都可以
fuser -v 挂载点
终止所有正在访问指定文件系统的进程:
fuser -km 设备或挂载点都可以

continue…

du
df
dmesg
xfs_repaire
fsck
badblocks

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值