Linux文件系统及磁盘管理

硬盘在Linux系统中编码规范:

识别硬盘设备:/dev/sd

标记不同的硬盘设备:/dev/sd[a-z]

标记同一设备上的不同分区:/dev/sd[a-z][1-]

1-4: 主或扩展分区标识

5+:逻辑分区标识

设备文件:特殊文件

设备号:

major, minor

major: 设备类型

minor: 同一类型下的不同设备

“块”:block,随机设备

“字符”:character,线性设备

分区工具:

fdisk, parted, sfdisk

fdisk工具的使用:

最多支持在一块硬盘上的15个分区;

分区管理子命令:

p: 显示

n: 创建

d: 删除

t: 修改分区ID

l: 列出所有支持ID类型

w: 保存退出

q: 放弃修改并退出

m: 获取帮助

创建完成之后,查看内核是否已经识别新的分区:

# cat /proc/partitions

有三个命令可以让内核重读磁盘分区表:

CentOS 5: partprobe [DEVICE]

CentOS 6,7:

partx

kpartx

partx命令:

partx DEVICE

partx -a DEVICE

partx -a -n M:N DEVICE

M

M:

:N

kpartx命令:

kpartx -af DEVICE

Linux文件系统管理

文件系统:

VFS:Virtual File System

Linux:ext2, ext3, ext4, reiserfs, xfs, btrfs, swap

光盘:iso9660

Windows: fat32(vfat), ntfs

Unix: ffs, ufs, jfs, jfs2

网络文件系统:nfs, cifs

集群文件系统:ocfs2, gfs2

分布式文件系统:ceph,

moosefs, mogilefs, hdfs, gfs, glusterfs

(1) 日志型文件系统

非日志型文件系统:ext2

日志型文件系统:ext3

(2) swap:交换分区

相当于Windows系统中的虚拟内存

创建文件系统:

在分区上执行格式化(高级格式化)

要使用某种文件系统,满足两个条件:

内核中:支持此种文件系统

用户空间:有文件系统管理工具

创建工具:mkfs (make filesystem)

mkfs -t type DEVICE

mkfs.type DEVICE

[[email protected] ~]# mkfs.

mkfs.cramfs   mkfs.ext2     mkfs.ext3     mkfs.ext4     mkfs.ext4dev  mkfs.msdos    mkfs.vfat

ext系列文件系统的专用管理工具:

mke2fs -t {ext2|ext3|ext4} DEVICE

-b BLOCK: 1024, 2048, 4096

-L ‘LABEL‘: 设定卷标

blkid命令:显示块设备信息

blkid DEVICE

LABEL, UUID, TYPE

[[email protected] ~]# blkid /dev/sda1

/dev/sda1: UUID="d308ea7e-c4f0-41bf-983d-b2425e6c1c2d" TYPE="ext4"

Linux文件系统管理:

mkfs, mkfs -t type = mkfs.type

ext:mke2fs

创建文件系统:

mke2fs [OPTION]... DEVICE

-t {ext2|ext3|ext4}

-b {1024|2048|4096}  块大小

-L ‘LABEL‘  卷标

-j: mke2fs -t ext3  日志选项

-i #: inode大小

-N #: inode数量

-m #: 预留磁盘空间占据多大百分比的空间为后期管理使用;

-O FEATURE[,...]  设定文件系统特性

-O ^FEATURE       关闭特性

has_journal

文件系统属性查看及调整工具:

e2label

e2lable DEVICE [LABEL]

[[email protected] ~]# e2label /dev/sda1 system

[[email protected] ~]# e2label /dev/sda1

system

[[email protected] ~]# blkid /dev/sda1

/dev/sda1: UUID="d308ea7e-c4f0-41bf-983d-b2425e6c1c2d" TYPE="ext4" LABEL="system"

tune2fs

显示ext系列文件系统的属性,或调整其属性;

-l:显示超级块中的信息;显示整个文件的属性及布局等相关信息;

-L ‘LABEL‘:修改卷标;

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

-j: ext2 --> ext3

-O:文件系统属性的启动或关闭

-o:文件系统默认挂载选项的启用或关闭

dumpe2fs:

-h: 仅显示超级块信息;

文件系统检测:

fsck: Filesystem check

fsck -t type

fsck.type

-a: 自动修复错误

-r: 交互式修复错误

-f: 强制检测

e2fsck:ext系列文件系统专用的检测修复工具;

-y: 自动回答为“yes”

-f:force

文件系统的挂载和使用:

kernel --> rootfs(分区)

rootfs分区:

bin, sbin, etc, lib, lib64, dev, tmp, proc, sys

将额外文件系统与根文件系统某现存的目录建立起关联关系,进而使得此目录做为其它文件系统访问入口的行为,称之为挂载;

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

挂载点:mount point, 设备挂载至目录;

注意:挂载点在挂载在之后,其内部原有的文件会被暂时隐藏;建议使用空目录做为挂载点;

挂载方法:

mount:通过读取/etc/mtab文件来显示当前系统所有已经挂载的设备;

mount -a:挂载/etc/fstab文件中的所有支持自动挂载的文件系统;

mount [options] [-o options] DEVICE MOUNT_POINT

[options]:命令选项

[-o options]:挂载选项

DEVICE: 要挂载的设备

(1) 设备文件:/dev/sda5

(2) 卷标:-L ‘LABEL‘

(3) UUID:-U ‘UUID‘

(4) 伪文件系统名称

MOUNT_POINT: 挂载点

常用选项:

-t type:文件系统类型

-r: 以“只读”方式挂载此文件系统

-w: 以“读写”方式挂载此文件系统

-n:每个文件系统在挂载时都会自动更新/etc/mtab文件,-n用于禁止此功能;

此时,如果想查看挂载的所有文件系统:cat /proc/mounts

-a: 自动挂载所有支持自动挂载的设备;

-B:绑定目录至另一个目录上;

-o 挂载选项:

async:异步模式

sync: 同步模式

atime/noatime:是否更新访问时间戳;

diratime/nodiratime:是否更新目录的访问时间戳;

auto/noauto: 是否允许此设备被自动挂载;

exec/noexec:是否允许执行此文件系统上应用程序;

dev/nodev:是否支持在此设备上使用设备文件;

suid/nosuid:

remount:重新挂载

ro

rw

user/nouser: 是否允许普通挂载此设备;

acl:是否支持此设备上使用facl;

defaults:rw, suid, dev, exec, auto, nouser, and async

umount:卸载命令

# umount DEVICE

# umount MOUNT_POINT

查看正在访问指定挂载点的进程:

# fuser -v MOUNT_POINT

终止所有正在访问指定的挂载点的进程:

# fuser -km MOUNT_POINT

交换分区

free命令:

查看memory和swap的使用状态

-m: 以MB为单位

-g: 以GB为单位

mkswap:创建交换分区

mkswap [option] DEVICE

-L ‘LABEL‘

swapon:启用交换分区

swapon [option] [DEVICE]

-a: 激活所有交换分区

-p PRIORITY: 设定其优先级;

swapoff:禁用交换分区

swapoff [option] [DEVICE]

文件系统等空间占用信息的查看工个:

df: disk free

-h: human-readable

-i: inode数量

-P: 以Posix兼容的格式输出

du: disk usage

-h: human-readable

-s: summary

文件系统相关挂载配置文件:/etc/fstab

每行定义一个文件系统;

要挂载的设备或伪文件系统  挂载点 文件系统类型 挂载选项 转储频率  自检次序

要挂载的设备:

设备文件、LABEL=、UUID=、伪文件系统名称

挂载选项:

defaults

转储频率:

0: 不转储

1: 每天转储

2: 每隔一天转储

自检次序:

0:不自检

1:首先自检,通常只有/才为1

2:

...

链接文件

硬链接:

两个路径指向同一个inode

不能对目录进行;

不能跨分区进行

指向同一个inode的多个不同路径; 创建文件的硬链接会增加inode的引用计数;删除硬链接         仅是删除其一个访问路径,只到最后一个路径被删除;

符号链接:

链接文件的数据指向另一个文件路径,相当于Windows系统中的快捷方式;

可以对目录进行;

可以跨分区;

指向的是另一个文件路径;而非inode;

对文件创建符号链接不会增加其引用计数;删除原文件,符号链接文件也将无法;

ln [-s] SRC DEST

-s:symbolic link

-v:verbose

练习:创建一个10G文件系统,类型为ext4,要求开机可自动挂载至/mydata目录;

fdisk /dev/sda

n

p

+10G

w

kpartx -af /dev/sda

partx -a /dev/sda

mke2fs -t ext4 /dev/sda3

mount /dev/sda3  /mydata

vi /etc/fstab

添加如下行:

/dev/sda3               /mydata                 ext4    defaults        0 0

时间: 2024-08-16 07:22:04

Linux文件系统及磁盘管理的相关文章

Linux文件系统与磁盘管理学习笔记

文件系统和磁盘分区 对于一个存储空间来讲,文件系统是独占的,所以要进行分区(每一个分区都可以实现一个文件系统,即每一个分区都是一个独立的文件系统) 每一种文件系统都是工作在内核中的,通过系统调用提供文件的管理功能.所以,同一个操作系统的不同文件系统的系统调用一般是不一致的 Linux操作系统支持N种文件系统,Linux提供一个统一的接口,屏蔽了这些文件系统的差异,而这个接口叫VFS(Virtual File System虚拟文件系统) 文件系统是一种工作在内核中的软件,能够将某个分区中的数据以文

linux 文件系统及磁盘管理

一个新的磁盘盘需要经过分区.格式化(创建文件系统),挂载之后才能正常使用.关于磁盘的分区表有两种格式:MBR(Master Boot Record)和GPT(GUID Partition Table)     MBR:      也称为主引导扇区,是计算机开机后访问硬盘时必须读取的首个扇区,也就是0柱面0磁头1扇区,MBR由bootload(446字节).分区表(64字节).MBR结束标志(2字节)共512字节组成.最大支持2TB的分区.MBR格式的分区表支持3个主分区和1个扩展分区. GPT:

Linux入门之磁盘管理(2)文件系统

Linux入门之磁盘管理(2)文件系统 linux分区构成完成之后,一般需要进行对其创建指定的文件系统,也就是我们常说的格式化,然后对其进行分区挂载,提供指定分区的访问点.不同的分区格式会在文件系统内部提供不同的对该分区的数据存储的格式分配,以及其内部模块会支持不同的分区的接口及方法调用,例如对一个文件的打开.读取.写入.关闭等功能,每个文件系统都会有各种不同的特点. 常见的系统文件系统: linux: ext2.ext3.ext4:xfs(SGI):btrfs(Oracle):reiserfs

Linux系统管理之磁盘管理与文件系统

Linux系统管理之磁盘管理与文件系统 一.前言 管理磁盘是管理员的重要工作内容,本文主要介绍以下几个方面 磁盘结构及分区表示 管理磁盘及分区 管理文件系统 二.磁盘(无尘环境制造)结构及分区 1.物理结构 盘片:硬盘有多个盘片,每盘片2面 磁头:每面有一个磁头 2.数据结构 扇区:盘片被分为多个扇形区域,每个扇区存放512字节的数据 磁道:同一盘片不同半径的同心圆 柱面:不同盘片相同半径构成的圆柱面 多个扇区组成磁道,多个相同直径的磁道组成柱面 笔记本的磁盘一般是2.5英寸,7mm厚度和9.5

Linux基础之磁盘管理

 Linux基础之磁盘管理         关于Linux中磁盘管理我们应该从以下四个方面入手,去了解和学习磁盘管理的知识. 第一点 磁盘的结构--硬盘         硬盘的参数 结构:磁盘的盘片,磁头,马达(机械键盘) 类型:固态硬盘(SSB)和机械硬盘 接口:早期的IDE接口,现在的SATA,SCSI,SAS 还有容量,转速,传输速度,缓存等. 硬盘存储术语 head: 磁头 track: 磁道 cylinder: 柱面 secotr: 扇区  512bytes(字节) 第二点 磁盘的分区

Linux入门之磁盘管理(1)分区管理

Linux入门之磁盘管理(1)分区管理 无论是windows还是linux,目前支持的分区结构只有两种,一种是基于blos检查启动的mbr结构,另一种是基于uefi(统一扩展固件接口)的opt分区结构.当然,目前广泛的还是使用的mbr结构. linux中有很多不同的文件系统,当使用安装光盘安装的readhat类的linux系统默认一般支持的主要格式为ext类(ext2.ext3.ext4),当然这些是redhat或者centos5.6所使用的默认设备,且安装centos7时默认使用的分区格式为x

Linux入门之磁盘管理(9)LVM逻辑卷案例

Linux入门之磁盘管理(9)LVM逻辑卷案例 案例介绍阶段(1): 创建一个由两个物理卷组成的大小未20G的卷组myvg,要求其PE大小为16M:而在此卷组中创建一个大小未5G的逻辑卷lvtest,此逻辑卷要能在开机后自动挂载至/mnt/lvtest目录,且支持ACL功能. 1.准备工作 #这里我们分别从两个磁盘选择10G来准备组合为PV [[email protected] ~]# fdisk -l | grep -o '/.*B' /dev/sda: 21.5 GB /dev/sdb: 2

Linux系统的磁盘管理及分区应用

要求: 第一部分:磁盘分区 1)为虚拟机添加一块80GB.SCSI接口的硬盘 2)划分2个10GB的EXT4主分区,剩余的作为扩展分区 3)划分一个2G的swap交换分区 4)划分一个10G的FAT32的VFAT逻辑分区 第二部分:新磁盘分区的应用 a)将系统中的普通用户king的宿主目录迁移到所添加的新硬盘的其中一个主分区上 并能实现开机自动挂载,不影响开机时用户king的正常登陆(修改fstab配置文件) b)实现新添加交换分区的开机自动挂载(修改fstab配置文件) c)实现先添加另一个主

linux下的磁盘管理

前言:本文记录笔者在学习linux下磁盘管理时的总结,仅做学习记录使用. 要想了解linux下的磁盘管理方式,首先,得对硬盘及linux下硬盘的表述方式有个清晰的了解,下面来介绍一下linux下对硬盘的表述方式. 1.关于硬盘?硬盘一般分为IDE硬盘.SCSI硬盘和SATA硬盘(串口硬盘).现如今使用大多硬盘为SCSI和SATA硬盘.2.Linux下对硬盘及其分区的表述是怎样的呢?(1)在linux下,IDE接口的设备被称为hd,SCSI和SATA接口的设备则被称为sd.(现如今用的是SCSI或