一、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