欢迎各位兄弟 发布技术文章

这里的技术是共享的

You are here

马哥 08_04 _磁盘及文件系统管理详解之二 有大用

链接文件: 硬链接 软链接(符号链接)


设备文件:

    b:块设备文件:按块为单位 随机访问的设备

    c:字符设备文件:按字符为单位,线性设备


    b: 硬盘(可以随机访问)

    c: 键盘 硬盘(也可以线性)


/dev 目录下

[root@ebs-22618 ~]# ls -la /dev


29 主设备号

0 次设备号


image.png


主设备号

    设备类型 (major number)

次设备号    (minor number)

    标识同一种类型中的多个不同的设备



[root@ebs-22618 backup]# ls -la /dev/

image.png



并不真正占用磁盘空间

占用 inode 号, 但并不真正占用磁盘空间  (正常情况下,普通文件,inode号应该是引用指向某个含用内容的区域)

主设备号和次设备号存在inode中 

标号段类似于软链接文件

软链接文件inode:存的的是另一文件路径

设备文件inode:存的的是主设备号和次设备号



还有管道和套接字文件


mknod [OPTION]... NAME TYPE [MAJOR MINOR] 创建设备文件

    -m MODE  777 666 等 


image.png

[root@ebs-22618 backup]# mknod mydev c 66 0


[root@ebs-22618 ~]# mknod -m 640 mydev2 c 66 1


[root@ebs-22618 ~]# ls -la

image.png


主设备号 次设备号被内核识别的

[root@ebs-22618 ~]# tty

/dev/pts/1

[root@ebs-22618 ~]#

[root@ebs-22618 ~]# echo "hello" >> /dev/pts/2

[root@ebs-22618 ~]#


另一窗口

[root@ebs-22618 ~]# tty

/dev/pts/2

[root@ebs-22618 ~]#

image.png

    

image.png

所以不要轻易的简单的发送内容到设备文件

当然发送到终端是没有什么大的损害的(顶多就是显示一段内容)


设备文件不建议随便命名的


硬盘设备的设备文件名

IDE,ATA:hd开头

SATA:sd开头

SCSI:sd开头

USB:sd开头

a,b,c 区别同一种类型下的不同设备


IDE:

第一个IDE口: 主,从分别为 /dev/hda /dev/hdb

第二个IDE口: 主,从分别为 /dev/hdc /dev/hdd


sd 开头的可以使用 UDEV 来识别区分,

通常是 sda sdb sdc ...


hda:



主分区最多4个,扩展分区最多一个,逻辑分区可以有多个

 hda1:第一个主分区

 hda2:第二个主分区(可能扩展分区)

 hda3:第三个主分区 (可能扩展分区)

 hda4:第四个主分区 (可能扩展分区)


逻辑分区从 5 开始

hd5:第一个逻辑分区

hd6:第一个逻辑分区


查看当前系统识别了几块硬盘:

fdisk -l


image.png

image.png

image.png

image.png

image.png

image.png

[root@ebs-22618 ~]# fdisk -l               可以这样理解 柱面就是磁道  

                                         63 sectors/track 应该是一个柱面的扇区数

image.png


[root@ebs-22618 ~]# fdisk -l /dev/vda  只查看这个设备

#这个盘是32.2G,有255个磁面;63个扇区;3916个磁柱;每个 cylinder(磁柱)的容量是8225280个字节(8.225280M(约为)),每个扇区大小是 512个节字;;其中16065=255(多少层磁面)*63(一个磁面上的扇区数)

Disk /dev/vda: 32.2 GB, 32212254720 bytes

255 heads, 63 sectors/track, 3916 cylinders

Units = cylinders of 16065 * 512 = 8225280 bytes

Sector size (logical/physical): 512 bytes / 512 bytes

I/O size (minimum/optimal): 512 bytes / 512 bytes

Disk identifier: 0x000bf3bd


   Device Boot      Start         End      Blocks   Id  System

/dev/vda1   *           1        3917    31456256   83  Linux


 


管理磁盘分区 (创建分区删除分区等)


linux 支持的文件系统

文件系统是一种让我们在磁盘上创建文件管理的一种软件

它是内核中的功能,与某个特定的软件没有关系

image.png




image.png


image.png


image.png


image.png



image.png


每个分区都是一个单独的文件系统,但它们都要归并在根目录下

归并的方式 叫挂载 或 关联


image.png



image.png



image.png




/etc  /bin /sbin 都不能放在其它分区


硬盘先低格(厂商完成)(自己做低格(低级格式化) 可能对硬盘有坏处)

分区 高格(高级格式化)(就是创建文件系统的),此时才能被挂载,被关联到根下面的某个目录下

作为其访问入口





image.png




管理磁盘分区

fdisk /dev/sda   (指向设备,不能指向分区)

p: 显示当前硬盘上的分区(包括新建的分区,未保存的分区) (不会立即生效,保存退出才生效)

n: 创建新分区

    e:扩展分区

    p:主分区

d: 删除一个分区

w:保存退出

q:不保存退出

t:修改分区类型(文件系统类型)

 L:(跟在t后面)

l:显示所支持的所有文件系统类型(不跟在t后面)

partprobe  重读分区表

在红帽5上可以用,红帽6上也可以用,不过6上还有其它命令可以实现这个功能



image.png


image.png

image.png

新建一个主分区

image.png


image.png

image.png

删除刚刚新建的主分区吧

image.png


扩展分区不能直接使用,它是一个指针,指向另外一个分区表的指针

所以还要 n 来创建逻辑分区


image.png

逻辑分区是自动编号的


image.png


image.png

再建一个逻辑分区


image.png

w 新建分区 就保存下来了

image.png

image.png

此时可以看到分区 但此时内核尚未识别


image.png

sda4,sda5,sda6 没有看到, 可以让内核重读一下分区表

# partprobe 通知内核重读分区表           也可以 #  partprobe /dev/sda (指定重读哪个磁盘)

# cat /proc/partitions  (查看内核所认识的分区)

image.png

sda4,sda5,sda6 可以看到了

此时(内核识别后)才能进行格式化


接下来需要格式化,挂载了



cat /proc/partitions






普通分类: