磁盘管理

linux的哲学思想:一切皆文件;

设备类型:

块(block):随机访问,交换数据单位是“块”;

字符(character):线性访问,数据交换单位是“字符”;

设备文件:FHS

/dev

    设备文件:关联至设备驱动程序;设备的访问入口;
    
    设备号:
    
    major:主设备号,区分设备类型;用于表明设备所需要的驱动程序;    
    minor:次设备号;区分同种类型下的不同设备;是特定设备访问入口;

mknod命令:

用法:mknod [选项]… 名称 类型 [主设备号 次设备号]

-m MODE :创建后的设备文件的访问权限;

磁盘:

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

分区: /dev/sda#
/dev/sda1,… 注意:CentOS6,7统统将硬盘设备文件标识为/dev/sd[a-z]

引用设备的方式:

设备文件名

卷标

UUID

磁盘分区:MBR,GPT MBR:0 sector

Master Boot Record
    分为三部分        
        446bytes:bootloader,程序,引导启动操作系统的 程序:        64bytes:分区表,每16bytes表示一个分区,一共只能有4个分区        2bytes:MBR区域的有效性标识;55AA为有效:

主分区和扩展分区的标识1-4

逻辑分区标识5+

fdisk命令;

1.查看磁盘分区情况

fidsk -l 列出所有分区及其详细使用情况

2.管理分区

fdisk device #打开交互式界面

fdisk提供了一个交互是接口来管理分区,他有许多子命令,分别用于不同的管理功能;所有操作均在内存中完成,没有同步到磁盘;直到使用W命令保存至磁盘上

[root@centous1 yum.repos.d]# fdisk /dev/sda

WARNING: DOS-compatible mode is deprecated. It's strongly recommended to
         switch off the mode (command 'c') and change display units to
         sectors (command 'u').

Command (m for help): mCommand action
   a   toggle a bootable flag
   b   edit bsd disklabel   c   toggle the dos compatibility flag   d   delete a partition
   l   list known partition types   m   print this menu   n   add a new partition
   o   create a new empty DOS partition table
   p   print the partition table
   q   quit without saving changes
   s   create a new empty Sun disklabel   t   change a partition's system id
   u   change display/entry units
   v   verify the partition table
   w   write table to disk and exit
   x   extra functionality (experts only)

常用命令;

n;创建分区

d;删除已有分区

t;修改分区类型

l;查看所有已有ID

w;保存并退出

q;不保存并退出

m;查看帮助

p;显示现有分区信息

注意:在已经分区并且已经挂载其中某个分区的磁盘设备上创建的新分区,内核可能在创建完成后无法识别

cat /proc/partitions 这个文件里显示了cpu所识别的所有分区列表

通知内核强制重读磁盘分区表: CentOS 5 :partprobe [device]

CentOS6,7: partx,kpart

partx -a [device]

kpartx -af [device]

注意重读命令有的时候需要执行两次

分区创建工具: parted,sfdisk;

创建文件系统

格式化:低级格式化(分区之前进行的,主要是用来划分磁道),高级格式化(分区之后对分区进行,创建文件系统)

元数据区,数据区 元数据区;inode 文件元数据:大小,权限,属主数组,时间戳、…

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

设备文件:存储数据指针的空间当中储存的是设备号;

程序员编写程序的时候,需要按照系统上的文件系统来编写,但是系统上的文件系统众多,那样太影响效率,所以这时候有了一个中间件,VFS虚拟文件系统,它可以跟多种文件系统来匹配,而且对外只是一中接口。

linux的文件系统:ext2,ext3,ext4,xfs,relsers,btrfs

光盘:iso9660

网络文件系统:nfs,cifs

集群文件系统:gfs2,ocfs2

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

windows的文件系统:vfat,ntfs

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

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

交换文件系统:swap

用户空间的分布式文件系统:mogilefs,moosefs,glusterfs

文件系统管理工具:

创建文件系统的工具
    
    mkfs
        mkfs.ext2,mkfs.ext3,mkfs.ext4,mkfs.xfs,mkfs.vfat,...
检测及修复文件系统的工具
    fsck
        fsck.ext2,fsck.ext3查看其属性的工具
    dumpe2fs,tune2fs
调整文件系统特性:
    tune2fs

链接文件:访问同一个文件不同路径:

硬链接:指向同一个inode的多个文件路径;
特性:
    (1)目录不支持硬链接(为了防止循环链接);
    (2)硬链接不能跨文件系统;
    (3)创建硬链接会增加inode引用计数
    
软连接:指向一个文件的另一个文件路径;
    特性:
    (1)符号链接与文件是两个人各自独立的文件,各有自己的inode
    (2)支持对目录创建符号链接,可以跨文件系统;
    (3)删除符号链接文件不影响源文件;但是删除源文件,符号指定的路径即不存在,此时会变成无效链接;

注意:软连接文件的大小时期制定的文件路径的大小

创建:

软连接 ln -s src link_file 硬链接 ln src link_file

内核级文件系统的组成部分:

文件系统驱动:有内核提供
文件系统管理工具:由用户空间的应用程序提供

如果想CentOS6支持xfs直接用yum install xfsprogs

ext系列文件系统专用工具:mke2fs

make2fs [option] device 
    
    -t {ext2|ext3|ext4}:指定文件系统类型    
    -b{1024|2048|4096}:指明块大小    
    -L :指明卷标    
    -j:创建有日志功能的文件系统ext3;    
    -N number :直接指明给此文件系统创建的inode的数量    
    -O[^]:来开启或者关闭某项功能    
    -m number :指定给root预留空间的比率

e2label:卷标的查看与设定

查看:e2label device
设定:e2label device LABEl

tune2fs:查看或者修改ext系列文件系统的某些属性(注意块大小创建后不可修改)

tune2fs -l:查看分区信息

tune2fs -j:修改指定文件系统属性ext2-->ext3

-m number :调整root预留空间大小-L:修改卷标-O选项同上-o[^]mount_options:开启或关闭某种默认挂载选项

dumpe2fs命令:显示ext系列文件系统的属性信息 dumpe2fs [-h] device

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

因进程意外中路或系统崩溃等 原因导致定稿操作非正常终止时,可能会造成文件损坏;此时,应该检测并修复文件系统;建议,离线进行

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

e2fsck [option] device
    
    -f:即使文件系统处于clean,也要强制进行检测;

fsck:check and repair a linux file linux

-t:指定文件系统类型;-r:交互式修复

blkid: blkid device blkid -L LABEl:根据LABEL定位设备 blkid -U UUid:根据UUId定位设备

swap文件系统:Linux上的交换分区必须使用独立的文件系统;且文件件系统的System ID必须为82;

创建swap设备:mkswap

-L:指明卷标-f:强制

windows无法识别linux的文件系统;因此,储蓄设备需要两种系统之间交叉使用时,应该使用windows和linux同事支持的文件系统:fat32(vfat);

mkfs.vfat device

mount命令:

mount [-nrw] [-t vfstype] [-o options] device dir

命令选项:

-r:readonly 只读挂载;-w:read and wirte ,读写挂载;-n:默认情况下,设备挂在或卸载的操作会同步更新至/etc/mtab文件中;-n用于禁止此特性;-t:指明要挂在的设备上的文件系统类型;多数情况下可省略,此时mount会通过blkid来判断要挂载的设备文件系统类型;-L (LABEL):挂载时以卷标的方式指明设备;-U UUID :挂载时以UUID的方式指明设备;

-o options:挂载选项

sysnc/async:同步/异步操作;
atime/noatime:文件或者目录在被访问时是否更新其访问时间戳;
diratime/nodiratime:目录在被访问时是否更新其访问时间戳;

umount卸载命令

umount device |dir

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

查看被那个或哪些进程所占用:

lsof MOUNT_POINT
fuser -v MOUNT_POINT

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

fuser -km MOUNT_POINT

交换分区的启用和禁用:

创建交换分区的命令:mkswap
启用:swapon
禁用:swapoff

设定除根文件系统以外的其他文件系统能够开机时自动挂载:/etc/fstab文件

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

6个字段:

(1)要股灾的设备:
    设备文件;
    LABEL
    UUID
    伪文件系统:如sysfs,proc,tmpfs等
(2)挂载点
    swap类型的设备的挂载点为swap;
(3)文件系统类型;
(4)挂载选项
    defaults:使用默认选项;
如果要同时指明多个挂载选项,彼此间以逗号隔开;
defaults,acl,noatime
(5)转储频率    0:从不备份;    1:每天备份;    2:每隔一天备份;
(6)自检次序    0:不自检    1:首先自检,通常只能是根文件系统可用1
    2:次级自检
    ...

mount -a : 可自动挂在定义在此文件中的所支持自动挂在的设备;

文件系统:

目录:文件
    元数据:inode,inode table
    数据:data blocks        下级目录或文件的文件名与其inode对应关系
        注意:文件不会储存自己的文件名文件名存在上局目录里边

删除文件:将文件指向的所有data block标记为未使用状态;将文件的inode标记为未使用;

移动和复制:

复制:新建文件;
移动文件:在同一文件系统,仅是其路径;不在同一文件系统:复制数据至目标文件,并删除源文件;

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

(0)
forestforest
上一篇 2016-08-30
下一篇 2016-08-30

相关推荐

  • 常用linux命令小计(1)

    关于linux那些事儿—常用命令小结(1) 系统相关信息 Uname –m显示处理器的架构 Uname –r显示正在使用的内核版本 cat /proc/cpuinfo显示cpu的具体信息 cat /proc/version显示内核的版本 cat /proc/swaps显示哪些分区被使用 data显示系统日期 cal –y显示当年的日历 date 021920…

    Linux干货 2017-02-19
  • AWK

    GNU awk 全称:Aho,Weiberger,Kernighan,是三个作者的名字,所以简称为awk awk:报告生成器,主要用来格式化文本输出的,它能够实现在处理文本文件时对文档中的字段有条件的显示,而且将显示的结果用非常美观的文本形式给予输出。我们所用的awk其实就是gawk,他是一个符号链接指向gawk的。 gawk – pattern…

    Linux干货 2016-09-23
  • 查找 -数据结构

    几种查找算法:顺序查找,折半查找,分块查找,散列表 一、顺序查找的基本思想:  从表的一端开始,向另一端逐个按给定值kx 与关键码进行比较,若找到,查找成功,并给出数据元素在表中的位置;若整个表检测完,仍未找到与kx 相同的关键码,则查找失败,给出失败信息。 说白了就是,从头到尾,一个一个地比,找着相同的就成功,找不到就失败。很明显的缺点就是查找效…

    Linux干货 2015-07-28
  • 文本处理工具

    文件 查看命令:cat, tac,revcat [OPTION]… [FILE]…-E: 显示行结束符$-n: 对显示出的每一行进行 编号-A :显示所有控制符-b: : 非空行编号-s :压缩连续的空行成一行 分页查看文件内容more: 分页查看文件more [OPTIONS…] FILE…-d: 显示翻页及…

    Linux干货 2017-03-17
  • N25期—第一周作业

    计算机的组成及其功能 Linux发行版介绍 Linux哲学思想 Linux系统几个常用命令介绍 Linux系统获取帮助信息介绍 Linux基础目录介绍 计算机组成         计算机分为中央处理器,主存储器,辅助存储器,输入输出设备,总线等5个部分    &nbsp…

    Linux干货 2016-12-05
  • GRUB——防止root密码被破解

    GRUB(Boot Loader): ·grub:GRand Unified Bootloader          grub 0.x:grub leagacy          grub 1.x:g…

    Linux干货 2016-09-11

评论列表(1条)

  • 马哥教育
    马哥教育 2016-09-01 13:28

    对磁盘管理工具用法总结的很完善,建议多操作,熟练运用。