一、Linux文件系统目录结构:
/boot :系统启动相关的文件。
/dev:设备文件
块设备:随机访问的设备,如:硬盘
字符设备:线性访问的,按字符为单位,如键盘、显示器。
/etc:配置文件
/etc/sysconfig:系统配置文件目录
/etc/init.d:系统服务脚本目录
/home:用户的家目录,通常情况下有一个和用户名名称相同的文件
/root:root用户为超级管理员,他的家目录为root,在根目录/下
/lib :库文件,分为静态库和动态库
/lib/modules 内核模块文件
/media:挂载点目录 ,挂载移动设备
/mnt:挂载点目录 ,挂载额外的临时性文件
注意:不过没有严格限制。
/misc:杂项
/opt:可选目录,安装第三方软件。
/proc:伪文件系统,运行的内核映射文件,系统调优和此文件相关。
/sys:伪文件系统,跟硬件设备相关的属性映射文件,系统调优和此文件相关。
/tmp:临时文件。
/var:可变化的文件。
/var/cache,/var/log,/var/run,/var/lock
/bin:可执行文件,所有用户可执行的命令。
/sbin:可执行文件,管理员可执行的命令。
/usr:s:shared r:read-only全局的共享的只读文件。
/usr/bin,/usr/sbin,/usr/local/bin,/usr/local/sbin,
/usr/include,/usr/lib,/usr/lib64
注意:文件系统的特性:
1、文件名可以使用除/以外的任意字符,但总长度不能超过255.
2、严格区分大小写,如abc和Abc为两个文件。
二、文件系统的基本概念:
扇区sectors:每个扇区512bytes
磁道track:有多个扇区组成。
柱面cylinders:相同盘面上的不同磁道划成为柱面,因此硬盘是按柱面划分分区的。
分区:由磁头读取磁盘数据,将多个柱面划分为同一个分区。
寻道时间:在单位的时间内,磁头划过的扇区数。
目前的机械式磁盘与留声机是一个磁带是一个原理。
三、MBR和GPT:
1、MBR:Master Boot Record 主引导记录(分区信息)(0磁道,0扇区【512bytes】)。
主引导记录上:
bootloader(引导加载器):占用446bytes,用于启动操作系统。
fat分区分配表:16bytes引导一个分区,所以最多引导4个分区,占用64bytes(以前磁盘较小,比尔盖茨认为最多不会超过4个主分区)
MBR有效性标记简称5A:占用2bytes
最多4主分区;一般1主,1扩展分区(引用额外的分区表);扩展分区只有划分为逻辑分区才可使用。
RPM:每分钟多少转,目前常用的是720rpm。
2、GPT,如果磁盘大于2T,只能使用GPT的分区格式。
四、磁盘:
1、磁盘接口:
IDE:并口,主板最多两个并口控制器可,每个控制器可以接两块硬盘,主/从(master/slave)
/dev/sd[a-z],a-z标识第几块盘。
如/dev/hda划分分区后,4个主分区/dev/hda[1-4],逻辑分区/dev/hda[5+]
注意:CentOS6后IDE为sd,CentOS5时IDE为hd
SCSI(Small Computer System Interface):小型计算机系统接口,读写容错能力强,但价格贵。
注意:一块IDE硬盘作为ftp服务器,寿命一般半年;一块SCSI硬盘作为ftp服务器,寿命一般3-5年。
对于硬盘来说,金钱换寿命,寿命换金钱看来一点不假。
SATA:串口,速率比IDE要高,读取速率要快。
USB:
2、查看硬盘、内存、cup信息:
#cat /proc/partitions
#cat /proc/meminfo
#cat /proc/cpuinfo
五、文件系统:
1、基本文件系统:Ext2,Ext3,Ext4,xfs(Unix),fat32(Win),
ntfs(新技术的文件系统,Win支持,linux支持不太好),
jfs(日志文件系统),Reiserfs(小文件的文件系统)
2、集群文件系统:GFS2(Global File System 2)
3、网络文件系统:NFS(win 上的映射),smbfs
4、光盘文件系统:iso9660
5、分布式文件系统:GFS(Google File System)
6、交换分区:swap
六、磁盘分区管理工具:fdisk,sfdisk,parted
注意:分区是按照柱面进行分区的一定切记。
1、fdisk /dev/sda 分区:
选项:
fdisk -l /dev/sda:显示当前分区信息。
帮助:
l 列出内核支持的分区类型ID:
d 删除一个分区
n 新建一个新分区
p 列出已有分区
t 调整分区类型
w 存盘并退出
q 不保存并退出
m 查看帮助
2、分区完成后,需要重读分区信息或者重启操作系统:
(1)、CentOS5:partprobe /dev/sda
(2)、CentOS6:partx,kpartx ,CentOS6有个bug,要想重读必须注意依次执行:
kpartx -l /dev/sda
kpartx -af /dev/sda
partx -a /dev/sda
七、linux创建文件系统以及与其相关的命令:
1、mkfs=mke2fs即格式化分区:
(1)、mke2fs选型:
-t FSTYPE /dev/somedevice,指定FSTYPE( ext2,ext3,ext4)
-L Label 指定卷标
-b 指定块大小{1024|2048|4096}
-i 磁盘块与inode的比例
-I 指定inode大小
-m 指定预留的比例,这些空间是仅供超级管理员使用。
(2)、注意:
A、mke2fs的配置文件/etc/mke2fs.conf
B、块:有2的N次方个扇区组成。
C、不同的文件不能保存在相同的块中,因此查看文件时会看到文件大小和占用空间不一致。
如:#mkfs -t ext2 /dev/sda3=#mke2fs -t ext2 /dev/sda3
格式化后产生的主要信息如下:
65952 inodes 共65952个inode数 , 263247 blocks 共263247 个block数,
13162 blocks (5.00%) reserved for the super user.
9 block groups. 共9个块组
This filesystem will be automatically checked every 31 mounts or
180 days, whichever comes first.
Superblock backups stored on blocks: 32768, 98304, 163840, 229376.超级块的备份块
Writing inode tables: done inode创建完成。
Writing superblocks and filesystem accounting information: done 超级块创建完成。
2、命令e2label卷标管理:
#e2label /dev/somedevice:查看卷标
#e2label /dev/somedevice LableName:设定卷标,如#e2label /dev/sda3 myData
3、blkid查看磁盘分区的文件系统类型。
#blkid /dev/sda3
结果为:/dev/sda3: LABEL="myhaha" UUID="d981733a-058f-4681-a7d3-f7a9cae76823" TYPE="ext4"
4、dumpe2fs查看元数据数据属性:
#dumpe2fs /dev/sda3
选项:
-h 仅查看超级块保存的信息。
5、tune2fs 调整文件系统相关信息,注意块大小不可调整。
#tune2fs /dev/sda3
选项:
-l 仅查看超级块保存的信息。
-L LableName=e2label LableName: 设定卷标
-m:指定预留的比例,这些空间是仅供超级管理员使用。
-o:设定其默认挂载选项。
6、fsck(file system check) 文件系统检测:比如非法关机,造成文件写失败即在写的文件不完成,检测时会删除这些不完成的文件。
选项:
-t FSTYPE
-a:自动修复错误
-r:交互式修复错误
-f:强行检测
#fsck -t FSTYPE /dev/SOMEDEVICE
如#fsck -t ext4 /dev/sda3
7、交换分区:在windows上叫虚拟内存。
在linux上交换分区必须单独分区。
对交换分区进行格式化:mkswap /dev/sda5
启用交换分区命令: swapon /dev/sda5
禁用交换分区命令: swapoff /dev/sda5
8、备注:
(1)、分区:fdisk
(2)、格式化即创建文件系统:mkfs或mke2fs
本文转自lzf0530377451CTO博客,原文链接:http://blog.51cto.com/8757576/1541241 ,如需转载请自行联系原作者