文件系统是一个操作系统的重要组成部分,是操作系统在计算机硬盘存储和检索数据的逻辑方法。Linux通过VFS(虚拟文件系统)支持多种文件格式。Linux支持的各种常用的文件系统有以下几种。
Table 1.1. Linux文件系统类型
文件系统
类型名称
用途
Second Extended filesystem |
ext2 |
最常用的Linux文件系统 |
Three Extended filesystem |
ext3 |
ext2的升级版,带日志功能 |
Minix filesystem |
minix |
Minix文件系统,很少用 |
RAM filesystem |
ramfs |
内存文件系统,速度超快 |
Network File System(NFS) |
NFS |
网络文件系统,由SUN发明,主要用于远程文件共享 |
DOS-FAT filesystem |
msdos |
ms-dos文件系统 |
VFAT filesystem |
vfat |
Windows95/98采用的文件系统 |
NT filesystem |
ntfs |
Windows NT采用的文件系统 |
HPFS filesystem |
hpfs |
OS/2采用的文件系统 |
/proc filesystem |
proc |
虚拟的进程文件系统 |
ISO 9660 filesystem |
iso9660 |
大部份光盘所用的文件系统 |
UFS filesystem |
ufs |
Sun OS所用的文件系统 |
Apple Mac filesystem |
hfs |
Macintosh机采用的文件系统 |
Novell filesystem |
ncpfs |
Novell服务器所采用的文件系统 |
SMB filesystem |
smbfs |
Samba的共享文件系统 |
XFS filesystem |
xfs |
由SGI开发的先进的日志文件系统,支持超大容量文件 |
JFS filesystem |
jfs |
IBM的AIX使用的日志文件系统 |
ReiserFS filesystem |
reiserfs |
基于平衡树结构的文件系统 |
在Debian Administration上有篇文章,测试了ext3, reiser, xfs, jfs四种日志文件系统,XFS是综合评分最高的文件系统。网址是:http://www.debian-administration.org/articles/388
使用mount命令就可在Linux中挂载各种文件系统,如:
debian:~# mount -t vfat /dev/hda1 /mnt/hda1
上面这条命令就把/dev/hda1这个fat分区挂载到了/mnt/hda1目录下。“-t”参数指定文件系统类型,常见的文件类型见上面“Linux文件系统类型”一表的内容。在挂载硬盘时,还有一个“-o”参数,它可指定挂载文件系统时的一些选项,如:
mount命令的参数选项是很丰富的,以上介绍的只是常用一些功能,详细介绍请参考man手册。
使用mkfs命令可以创建文件系统,如:
debian:~# mkfs -t ext2 /dev/fd0 1400
这条命令在软盘上创建一个容量为1.44M的ext2文件系统。
使用fsck命令可以检查文件系统,如:
debian:~# fsck -t ext2 /dev/hda3
使用mkswap命令可以创建swap空间,如:
debian:~# mkswap -c /dev/hda4
debian:~# swapon /dev/hda4 #启用新创建的swap空间,停用可使用swapoff命令
设备文件是Linux中一种特殊的文件,它对应每种硬件设备,如硬盘、软驱等。它可以像文件一样对它进行读写操作。设备文件位于
/dev目录下,/dev/hda代表第一个IDE硬盘,/dev/fd0代表第一个软驱。/dev/null是一个虚设的设备,它就像一个无底的黑洞,
任何对/dev/null的写入都会成功,但数据会消失得无影无踪,没有任何反馈。所以我们经常把不想在屏幕显示的信息全部送到/dev/null中。下
面是一个设备文件的信息:
brw-rw---- 1 root disk 3, 0 2005-07-07 05:29 /dev/hda
大家注意文件的size列,它是由逗号分隔的两个数字(3,0),第一个值代表主设备号(major device
number),第二个值代表次设备号(minor device
number)。主设备号对应内核相应的功能,而次设备号对应由驱动程序管理的特定设备。所以同一类设备的主设备号都是相同的,次设备号则不同。内核根据
主设备号将I/O的要求导向到适当的驱动程序上,而该驱动程序以次要编号来判断出指定要使用的设备。系统安装同,默认已安装了大部份的设备文件,在
/dev目录下可查询到很多的设备文件。但有时我们也需新增一设备文件,这时我们可使用mknod命令,命令格式如下:
mknod -m permissions name type major minor
-m permissions参数可有可无,主要用于设置设备文件的权限
name是所要创建的设备名,要有完整的路径,如/dev/rhda
type是设备文件的类型,c代表字符设备,b代表块设备
major指定设备的主编号
minor指定设备的次编号
使用dumpe2fs device | more可显示文件系统的详细信息。如:
debian:/var/log# dumpe2fs /dev/hdb1 |more
dumpe2fs 1.37 (21-Mar-2005)
Filesystem volume name: <none>
Last mounted on: <not available>
Filesystem UUID: ef214b73-810a-4098-bf01-ab9a85d9c651
Filesystem magic number: 0xEF53
Filesystem revision #: 1 (dynamic)
Filesystem features: filetype sparse_super
Default mount options: (none)
Filesystem state: not clean
Errors behavior: Continue
Filesystem OS type: Linux
Inode count: 3662848
Block count: 7323624
Reserved block count: 366181
Free blocks: 428630
Free inodes: 3470727
First block: 0
Block size: 4096
Fragment size: 4096
Blocks per group: 32768 #文件系统中每个块组的大小
Fragments per group: 32768
Inodes per group: 16352
Inode blocks per group: 511
Last mount time: Thu Jul 7 20:09:57 2005
Last write time: Thu Jul 7 23:42:51 2005
Mount count: 15
Maximum mount count: 30
Last checked: Fri Jun 17 05:31:36 2005
Check interval: 2592000 (1 month)
Next check after: Sun Jul 17 05:31:36 2005
Reserved blocks uid: 0 (user root)
Reserved blocks gid: 0 (group root)
First inode: 11
Inode size: 128
superblock是每个分区中最重要的信息,如果分区的superblock信息被破坏,则分区就不能使用。所以每个分区的
superblock都被备份了。如果ext2文件系统的块组大小是32768,则superblock备份就存放在以32769开始的块组中。使用
e2fsck -f -b 32769 /dev/hdb1就可用superblock备份信息修复文件系统的superblock
分享到:
相关推荐
目 录<br>前言<br>第一部分 安装Linux操作系统<br>作为服务器软件<br>第1章 Linux发行版本与Windows NT的<br> 技术异同 1<br>1.1 Linux操作系统和Linux发行版本 1<br>1.2 “自由”软件和GNU许可证 1<br>1.2.1 什么是...
设计任务<br>(1)为Windows操作系统建立兼容的DOS命令接口,文件与目录命令<br>(2)具体命令:DIR,RD,CD,MD,DEL,MOVE,REN,XCOPY,命令格式可参考Windows的CMD.EXE或MS-DOS提供的命令格式<br>(3)设计命令的名称,参数等...
【文件格式是Linux下的gz压缩包,在Windows下可以用WinRAR解压】 本人原创的操作系统上机作业(源代码),自己编写一个简单的Linux下的shell(a simple myshell)!原题见William Stallings写的《Operating Systems...
<br><br>目录:<br>前言<br>第1章 基于ARM的μClinux简介<br>1.1 嵌入式系统<br> 1.2 嵌入式系统与Unux<br> 1.3 Linux、μClinux与ARM<br> 1.4 Make文件的学习实验环境<br> 1.5 小结<br> 1.6 习题<br>第2章 ...
的大小 82<br>7.2 虚拟文件系统 83<br>7.2.1 VFS文件系统的超级块 84<br>7.2.2 VFS文件系统的inode节点 84<br>7.2.3 注册文件系统 85<br>7.2.4 装配文件系统 85<br>7.2.5 在虚拟文件系统中查找文件 87<br>7.2.6 卸载...
<br>1.8 创建你自己的设备 <br><br>第二部分 渐入佳境 <br>2.1 如何截获系统调用 <br>2.2 一些有趣的系统调用 <br>2.2.1 发现有趣的系统调用(strace方法) <br>2.3 迷惑内核的系统表 <br>2.4 和文件系统有关的攻击 ...
<br>LINUX学习笔记--FTP服务器设置<br>Linux中文件查找技术大全<br>Linux中文件的压缩与解压缩<br>将Linux配置为代理防火墙用途<br>教你十种提高Linux系统安全性的招数<br>解析Linux操作系统文件目录<br>免费的Linux...
LINUX的引导过程 <br>Linux部分命令简介 Linux下即插即用设备的安装 <br>RedHatLinux用户管理经验点滴 如何编译Linux的内核 <br>对RedHat系统的一些概括性描述 Linux系统的简介及安装过程 <br>深入Linux的LILO ...
在 Linux上安装并运行 Oracle 40<br>3.1 引言 40<br>3.2 概念 41<br>3.2.1 系统全局区域 41<br>3.2.2 程序全局区域 42<br>3.2.3 表空间 42<br>3.2.4 数据文件 42<br>3.2.5 区 42<br>3.2.6 段 42<br>3.2.7 控制文件 ...
一部不错的电子书籍,内容有:<br/>llinux先生<br/>前言<br/>问题解决之道 <br/>操作系统简述<br/>unix系统发展史 <br/>什么是Linux <br/>常见linux介绍<br/>Linux与其他操作系统的区别 <br/>linux文件系统<br/>...
TCP/IP概述 20<br>3.1 TCP/IP的优点 20<br>3.2 TCP/IP的层和协议 21<br>...<br>3.7 网络文件系统(NFS) 26<br>3.8 简单网络管理协议(SNMP) 27<br>3.9 TCP/IP和系统结合 27<br>3.10 内部网概述 28<br>3.11 小结 28<br>第...
是我最近学习Linux VFS 虚拟文件系统时收集的,感觉是学习VFS 虚拟文件系统的好资料,特共享给和我相似的朋友们共同学习.<br>资料主要有三个:<br>1. 解析 Linux 中的 VFS 文件系统机制.doc<br>比较好,写出了文件系统的...
Linux内核修改,通过修改linux内核可以对系统的所有读写操作<br><br>进行监控,通过对这些读写操作的监控,可以获取系统中所有读<br><br>写操作的详细信息。这种做法也叫做“加塞子”,通过“加塞子<br><br>”可以...
<br><br>第1章 了解Linux及其网络结构 <br>第2章 服务器平台安装和设备管理 <br>第3章 配置TCP/IP网络 <br>第4章 Linux文件及系统管理 <br>第5章 Linux的网络设置 <br>第6章 建立Internet 站点 <br>第7章 超文本标记...
MySQL支持的操作系统<br>2.1.2. 选择要安装的MySQL分发版<br>2.1.3. 怎样获得MySQL<br>2.1.4. 通过MD5校验和或GnuPG验证软件包的完整性<br>2.1.5. 安装布局<br>2.2. 使用二进制分发版的标准MySQL安装<br>2.3. 在...
<br><br> <br><br>System monitoring 系统监控 <br><br> <br><br>Memory monitoring 内存监控 <br><br> <br><br>Cluster information 集群信息 <br><br> <br><br>Log file tailing 实时追踪log文件 <br><br> <br><br...
<br><br>第1章 了解Linux及其网络结构 <br>第2章 服务器平台安装和设备管理 <br>第3章 配置TCP/IP网络 <br>第4章 Linux文件及系统管理 <br>第5章 Linux的网络设置 <br>第6章 建立Internet 站点 <br>第7章 超文本标记...
<br><br>第1章 了解Linux及其网络结构 <br>第2章 服务器平台安装和设备管理 <br>第3章 配置TCP/IP网络 <br>第4章 Linux文件及系统管理 <br>第5章 Linux的网络设置 <br>第6章 建立Internet 站点 <br>第7章 超文本标记...