Linux入门基础:文件系统


Linux入门基础:文件系统
 
Linux文件系统结构
 
 
/bin      存放二进制文件(可执行命令rm,cd,cp等),所有用户都有权限
 
/dev     (device设备的缩写)存放设备文件
在Linux中,所有的硬件设备都被抽象成一个文件
 
/boot    存放内核与启动程序相关文件
最主要的是文件vmlinuz-3.2.0-23-generic-pae,是操作系统的内核
还有所有跟引导和系统启动相关的东西
 
/etc  几乎所有的操作系统相关的配置文件。多数是以.conf .cnf结尾的
 
/home  用户家目录 
 
/lib      存放系统库文件
 
/media  挂载U盘,光盘等自动挂载,在这里,有些系统没有
 
/mnt    也是挂载,所有系统一定有,以前都是挂载这里
 
/opt  通常用来安装一些大软件。但放在哪里不是强制的,约定俗成在这里。
 
/proc    不存在硬盘上,只存在于内存中的文件系统,是虚拟的文件系统。保存操作系统的实时信息
ll查看相关文件。例如显示cpuinfo, meminfo可以查看相关信息.
数字的文件夹是进程信息
 
/sbin    存放特权级二进制文件(特权级可执行命令,而/bin是所有人都有权限)
/sys 是系统底层的东西
/tmp  临时的目录,会自动删除
/usr     一般存放默认安装程序(大型的软件是在/opt),
/var     一般存放经常变化的数据,如服务数据、日志文件等
/root    特权用户(root)家目录
 
 
 
文件系统
 
操作系统通过文件系统管理文件及数据, 磁盘或分区需要创建文件系统之后才能够为操作系统使用,创建文件系统的过程又称为格式化.
没有文件系统的设备又称之为裸(raw)设备
常见的文件系统由fat32, NTFS, ext2, ext3, ext4, xfs, HFS等
文件系统之间的区别: 日志, 支持的分区大小, 支持的单个文件大小,  性能等
 
windows下的主流文件系统是: NTFS
Linux的主流文件系统是: ext3, ext4
 
 
不同的文件系统性能是有区别的
 
 
 
Linux支持的一些文件系统:
ext2
ext3
ext4
fat(msdos)
vfat
nfs
iso9660
proc
gfs
jfs
 
 
 
 
命令mke2fs用来创建文件系统
 
$ mke2fs  -t  ext4  /dev/sda3
 
常用参数:
-b  blocksize  指定文件系统块的大小
-c     建立文件系统时检查坏损块
-L  label  指定卷标
-j      建立文件系统日志(ext3,ext4默认是带日志的,不需要带这个参数)
 
 
命令mkfs
也可用于创建文件系统,相较于mke2fs简单,但支持的参数较少,不能进行精确控制
$ mkfs.ext3  /dev/sda3
$ mkfs.ext4  /dev/sda4
$ mkfs.vfat   /dev/sda3
 
 
命令dumpe2fs
可以用来查看分区的文件系统信息
$ dumpe2fs  /dev/sda2
 
 
 
journal日志
带日志的文件系统(ext3, ext4)拥有较强的稳定性, 在出现错误时可进行恢复
使用带日志的文件系统,文件系统会使用一个叫做"两阶段提交"的方式进行磁盘操作,当进行磁盘操作时,文件系统进行以下操作:
1. 文件系统将准备执行的事务的具体内容写入日志
2. 文件系统进行操作
3. 操作成功后,将事务的具体内容从日志中删除
 
这样做的好处是,当事务执行的时候如果出现意外(如断电或磁盘故障), 可以通过查询日志进行恢复操作.缺点是会丧失一定的性能(额外的日志读写操作)
 
 
命令e2label
查看和设置文件系统的标签
$ e2label  /dev/sda2   显示sda2的系统标签
$ e2label  /dev/sda2  SHUANGDE   把sda2标签设置为SHUANGDE ,  标签一般都用大写字母组成
 
 
命令fsck
用来检查并修复损坏的文件系统
$ fsck  /dev/sda2     检查sda2. .要检查一个文件系统,必须要先卸载那个文件系统
 
使用-y参数不提示而直接进行修复
默认fsck会自动判断文件系统类型, 如果文件系统损坏较严重, 最好用-t参数指定文件系统类型
对于识别为文件的损坏数据(文件系统无记录), fsck会将该文件放入lost + found目录. 每个格式化的磁盘都会有lost + found目录, 一般这个目录都是空的
系统启动时会对磁盘进行fsck操作
 

相关内容

    暂无相关文章