磁盘管理与文件系统

  关于磁盘与文件系统大致思路:要想对磁盘进行充分利用,必须要对磁盘进行分区,第二步就是要对分区进行高级格式化,也就是在分区上创建文件系统,在此过程中可以对磁盘的各种属性进行自定义。打个比方来说,创建磁盘分区好比刚买来一个毛坯房,还未装修,还不适宜人居住,那么创建文件系统就好比在光秃秃的毛坯房上进行了装修,这样才更适于人居住使用。


要想搞懂磁盘,首先就要从根上了解硬盘的组成。

    head 磁头 一个盘片正反两面对应两个磁头,有多个盘片

    track 磁道 磁头旋转一圈划分的圆环

    sector 扇区 512bytes

    cylinder 柱面 所有盘片的相同磁道


设备:ll /dev/ 可见 

    blob.png

块设备(block):支持随机访问,数据交换单位是块

字符设备(character):线性访问,数据交换单位为字符

设备文件:FHS

/dev

设备文件:关联至设备的驱动程序;设备的访问入口

设备号:

主设备号

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

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

mknod:创建块和字符设备

mknod /dev/testdev c 110 1

-m MODE:创建后的设备文件的访问权限,利用系统调用

设备文件名:ICANN

磁盘

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

并口:同一线缆可以接多块设备

SCSI:

宽带:16-1

窄带:

主分区和扩展分区表示:1-4

逻辑分区:5+

查看分区:cat /proc/partitions

通知内核强制重读磁盘分区表:

cnetos 6:partx -a [device]

元数据不包括文件名,文件名保存在目录

元数据:inode 

文件使用磁盘有不连续的块,碎片

文件元数据:inode 数据块指针

********************

inode

128bytes

block=2^n sector 

符号链接文件:存储数据指针的空间当中存储的是真实文件的访问路径

块和inode比例

需要预留一部分块空间给管理员

如何判断inode和block是否使用,0表示空,1表示使用

bitmap index:位图索引

找一空间,每一位对应block

GDT:快组描述符

元数据区域:

1.inode

2.inode位图

3.block位图

GDT:

stat查看元数据

文件名存放在目录上,与inode一一对应

低级格式化

高级格式化

******************

VFS:Virtual File System

linux文件系统:ext2-4,xfs(centos 7 defaults),relserfs,btrfs(测试阶段)

光盘:ISO9660

网络文件系统:nfs,cifs

集群文件系统,gfs2,osfs2

内核级分布式文件系统:ceph

windows的文件系统:vfat,ntfs

伪文件系统:proc,sysfs,tmpfs,hugepagefs

Unix的文件系统:UFS,FFS,JFS

交换文件系统:swap

用户空间得分布式文件系统

************************

虚拟内存

32位 4G内存可用

交换分区

创建文件系统工具

mkfs.ext4

检测及修复文件系统的工具

fsck

查看其属性的工具

dumpe2fs,tune2fs

调整文件系统特性

tune2fs

***

journal

降低磁盘碎片

日志区,在处理数据时先放在日志区,

如果遇到特殊情况要修复时,优先修复日志区中的内容

链接:指向同一文件的不同路径

硬链接:指向同一inode的多个路径

1.目录不支持硬链接

2,。不能跨文件系统,各分区inode各自管理,从0开始

3。引用次数增加

4.大小相同

符号链接:指向一个文件的指针指向另一文件路径

1.符号链接与文件时两个单独文件,有各自inode

2.可跨分区

3.文件大小为指向的路径的字符串的字节数

ls -i example.txt

ls -i命令列出整个目录文件,即文件名和inode号码:

  ls -i /etc

blob.png

理解了上面这些知识,就能理解目录的权限。目录文件的读权限(r)和写权限(w),都是针对目录文件本身。由于目录文件内只有文件名和inode号码,所以如果只有读权限,只能获取文件名,无法获取其他信息,因为其他信息都储存在inode节点中,而读取inode节点内的信息需要目录文件的执行权限(x)。

先创建分区,再创建文件系统,

内核中有相关的文件系统驱动程序,可使用lsmod查看

lsmod :查看内核已经加载的驱动程序

blob.png

文件系统管理工具:由用户控件的应用程序提供

1.

mkfs -t ext2=mkfs.ext2

blkid /dev/sda6

2.

mke2fs ext专用工具

-t ext4 指定要创建的文件系统类型

-b {1024|2048|4096(MAX默认)}指定文件系统的block大小

-L 卷标

-j 创建有日志功能的文件系统的ext3

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

-i #:每多少字节一个inode,bytes-per-inode,

指明inode与字节的比率,即多少字节创建一个inode,

默认为

-N # 直接指明要给此文件系统创建的inode的数量

-O [^]FEATURE :以指定的特性创建目标文件系统,启用某种特性

-m #指定预留空间百分比:5 –>5%s

3.改变卷标

e2label 卷标的查看和设定

e2label /dev/sda8 sb

blob.png

4.tune2fs 查看修改ext系列文件的某些属性

不可修改:块大小,

修改文件系统属性

-j ext2–>ext3

-L label:修改卷标

-m #:调整预留空间百分比

-O FEATURE 启用或者关闭某种特性

-o [^]mount_options:开启或者关闭某种默认挂载选项

acl

^acl

5.dumpe2fs:显示所有块组信息,类似tune2fs

-d 只显示superblock

6.

fsck命令:用于实现文件系统检测的工具

因进程意外终止或者系统崩溃等原因导致进程非正常终止,可能造成文件损坏

此时要进行离线修复

e2fsck device

-y 对所有问题回答yes

-f 强制检测

fsck.ext4

-a:无需交互修复所有错误

-r 交互式修复

通用命令

7.

blkid

-L label 根据卷名定位分区

-U UUID  

8。

swap文件系统

linux'上的交换分区必须使用独立的文件系统

且文件系统的System ID必须为82

创建swap设备:

mkswap

-L :指明卷标

-f : 强制

9.

windows无法识别Linux的文件系统,要交叉使用时,

应该使用同时支持的文件系统

10.

根文件系统之外的其他文件爱系统想要能够被访问,都必须通过关联至根文件系统上的某个目录来实现,此关联操作即为挂载:此目录为挂载点

挂载点:用于作为另一个文件系统的访问入口

1.事先存在

2.应该使用未被或不会被其他进程使用到的目录

3.挂载点下原有的文件将不会被隐藏

11.

mount

-r 只读filesystem

-w 读写挂载

-n 默认情况下,设备挂载或卸载的操作会同步更新至/etc/fstab中

-n禁止更新同步

-t vfs :指明要挂载的设备上的文件系统的类型,多数情况下可省略,

此时mount会通过blkid来判断要挂载的设备的文件系统类型

-L label:挂载时以卷标的方式指明设备

mount -L lable dir

-U UUID 以UUID的方式指明设备

-o options:挂载选项

sync/async 同步/异步操作:

异步:先在内存写完,再写入磁盘

atime/noatime:文件或目录被访问时是否更新其访问时间戳

diratime/nodiratime:目录访问时,是否保存访问时间戳

remount:重新挂载;

acl;支持使用facl功能访问控制列表

1.mount -o acl device dir

2.tune2fs -o acl device

ro 只读

rw 读写

/dev/nodev:此设备上是否允许创建设备文件

exec/noexec 是否允许运行此设备上的程序文件

auto/noauto:自动挂载

/user/nouser:是否用户挂载此文件系统

suid/nosuid:是否允许程序上的suid和sgid特殊权限生效

default:

12。 实现将目录绑定至另一个目录上,作为临时访问入口

    mount –bind 源目录 目标目录

13.查看当前系统所有已挂载的设备

1.mount

 blob.png

2.cat /etc/mtab 

 blob.png

3.cat /proc/mounts

挂载光盘

mount -r /dev/cdrom  mount_point

挂载U盘:需事先识别U盘的设备文件

mount -r

14.

umount

注意:正在被进程访问的挂载点无法卸载

查看被哪些进程所占用

lsof mount——point

fuser -v mount_point

-km /mnt:踢出正在使用/mnt的用户

终止所有某挂载点的进程

fuser -km

15

挂载本地回环设备

mount -o loop /path/to/some_loop mount_point

16

交换分区

创建交换分区:mkswap

启动禁用

swapon 

-a:定义在/etc/fstab文件中的所有swap设备

swapoff

/etc/fstab

设备除根文件系统以外的其它文件系统能够开机时的挂载

每行定义一个要挂载的文件系统及相关属性

6个字段:

1.要挂载的设备

label

UUID伪文件系统

2.挂载点

swap 类型的设备的挂载点为swap

3.文件系统类型

4.挂载选项

defaults:默认

如果使用多个挂载选项,彼此间以逗号分隔

defaults,acl,noatime,noexec

5.转储频率

0:从不备份

1.每天备份

2.隔天备份

6.自检持续

0:不自检

1.首先自检,通常只能是根文件系统可用

2.次级自检

mount -a:可自动挂载定义在/etc/fstab中的所有支持自动挂载的设备

16

df:disk free

-h 人类可读

-l 本地可读

-i inode的使用状态

blob.png

du:显示文件大小

-s :sumary

-h human-readable

blob.png


原创文章,作者:000,如若转载,请注明出处:http://www.178linux.com/41618

(0)
000000
上一篇 2016-08-29
下一篇 2016-08-30

相关推荐

  • Linux 性能监控、测试、优化工具

    Linux 平台上的性能工具有很多,眼花缭乱,长期的摸索和经验发现最好用的还是那些久经考验的、简单的小工具。系统性能专家 BrendanD. Gregg 在最近的 LinuxCon NA 2014 大会上更新了他那个有名的关于 Linux 性能方面的 talk (Linux Performance Tools) 和幻灯片。    和 Br…

    Linux干货 2015-03-03
  • N27_第二周作业。

    linux上的文件管理类命令都有哪些?其常用的使用方法及其相关示例演示。 答: 有cp、mv、rm cp  复制命令 常用选项: cp -i        #交互式 cp -r       #递归复制目录及其子目录的内容 cp -a      # 归档,相当于dR –preserve=all cp -d     #表示不跟踪符号链接所指向的原文件…

    2017-10-09
  • Linux误删大文件的一个可能解救办法

    描述:某个网友说他在进行md5指纹对比某文件的时候,另外一个同事在另外一个窗口删除了该文件,然后顺嘴跟他说了下,这时候他意识到同事可能是误删除了,于是,他利用了以下办法来进行解救: 操作顺序如下: 1)网友的操作: [root@C67-X64-A0 ~]# ls -l /test.img  -rw-r–r-…

    Linux干货 2016-08-02
  • 用户及权限管理

     今天是学习马哥教育第四天,也是第一个博客作业,写一篇关于用户及权限管理的简介型的博客文章,作文水品有限,所以写出来有可能有病句或者意境有问题,请大家多多包涵。  首先,用户及权限管理,需要从2方面入手来说,首先来说用户管理。  何谓用户,这是马哥一上来就提到的问题,我简单的理解,用户其实就是一个人机交互的接口,人机交互的接口是…

    Linux干货 2016-09-15
  • 使用groupmems -l -g 组名选项遇到的问题

    groupmems -l -g 组名 显示的不是附加组的成员,而是显示的是/etc/group文件的最后一个字段的内容

    Linux干货 2017-11-23
  • 第十七周作业

    1、结合图形描述LVS的工作原理; 工作方式: LVS由前端的负载均衡器(Load Balancer,LB)和后端的真实服务器(Real Server,RS)群组成。RS间可通过局域网或广域网连接。LVS的这种结构对用户是透明的,用户只能看见一台作为LB的虚拟服务器(Virtual Server),而看不到提供服务的RS群。当用户的请求发往虚拟服务器,LB根…

    2017-05-27

评论列表(1条)

  • 马哥教育
    马哥教育 2016-08-30 10:09

    文章对磁盘管理各方面知识整理的很全面,层次结构也很清晰,但是对于硬盘基础我们能够给出一些图片来叙述各个硬盘的各个组件会更好,同时,也希望作者能通过差资料,将笔记中的关键字组织成通顺的话。