Linux命令学习3—Linux磁盘与文件系统管理
2012-05-21 16:04
1031 查看
一. 各种接口的磁盘在Linux中的文件名
/dev/sd[a-p][1-15]:为SCSI,SATA,USB,Flash等接口的磁盘名
/dev/hd[a-d][1-63]:为IDE接口的磁盘文件名
二. 文件信息再磁盘中的记录
Linux操作系统的档案权限(rwx)与文件属性(拥有者、群组、时间参数等)。文件系统通常将这两部分数据放在不同的区块中,权限与属性放置到inode区块中,实际数据则放置到data block区块中。还有个超级区块(superblock)会记录整个文件系统的整体信息,包括inode与block的总量、使用量、剩余量等。
·superblock:记录此filesystem的整体信息,包括inode/block的总量,使用量,剩余量,以及文件系统的格式与相关信息等。
·inode:记录档案的属性,一个档案占用一个inode,该inode中将记录档案数据所在的block号码。
·block:记录档案的实际数据,如果档案过大,会占用多个block。
-->Linux正统的文件系统为Ext2(Linux second extended file system, ext2fs)
三. 磁盘信息查询指令
3.1 使用df 指令
[root@localhost ~]# df 查询当前系统挂载的装置
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/mapper/VolGroup00-LogVol00
11046136 8611048 1864928 83% /
/dev/sda1 101086 11823 84044 13% /boot
tmpfs 257736 0 257736 0% /dev/shm
.host:/ 53841812 52895444 946368 99% /mnt/hgfs
3.2 使用dumpe2fs [-bh]指令查询当前系统文件系统信息:
选项与参数:
-b:列出保留为坏轨的部分
-h:仅列出superblock的数据,不列出其他区段信息
[root@localhost ~]# dumpe2fs /dev/sda1
四. 文件系统概念与实际的目录树关系
4.1 目录
在Linux的ext2文件系统建立一个目录时,ext2会分配一个inode与至少一块block给该目录。其中,inode记录该目 录的相关权限与属性,并记录分配的block号码;而block记录在这个目录下的文件名与该文件名占用的inode号码数据。
使用命令#ls -i查看root家目录内档案所占用的inode号码:
[root@localhost ~]# ls -li
total 104
1083444 drwxr-xr-x 3 root root 4096 May 14 19:48 a
1083347 -rw------- 1 root root 2724 Mar 1 2011 anaconda-ks.cfg
1083446 drwxr-xr-x 3 root root 4096 May 14 19:48 b
1279584 drwxr-xr-x 2 root root 4096 May 8 16:04 Desktop
1081346 -rw-r--r-- 1 root root 51427 Mar 1 2011 install.log
1081347 -rw-r--r-- 1 root root 6589 Mar 1 2011 install.log.syslog
1083353 -rw-r--r-- 1 root root 770 Jun 9 2011 minicom.log
1083348 -rw-r--r-- 1 root root 227 Feb 28 2011 scsrun.log
4.2 文件
在Linux下ext2文件系统建立一个档案时,ext2会分配一个inode与相对应于档案大小的block数量给该档案
五. Linux支持的文件系统
5.1 使用如下命令查看系统支持的文件系统:
[root@localhost ~]# ls -l /lib/modules/$(uname -r)/kernel/fs
total 200
drwxr-xr-x 2 root root 4096 Mar 1 2011 autofs4
drwxr-xr-x 2 root root 4096 Mar 1 2011 cachefiles
drwxr-xr-x 2 root root 4096 Mar 1 2011 cifs
drwxr-xr-x 2 root root 4096 Mar 1 2011 configfs
drwxr-xr-x 2 root root 4096 Mar 1 2011 cramfs
drwxr-xr-x 2 root root 4096 Mar 1 2011 dlm
drwxr-xr-x 2 root root 4096 Mar 1 2011 exportfs
drwxr-xr-x 2 root root 4096 Mar 1 2011 ext3
drwxr-xr-x 2 root root 4096 Mar 1 2011 fat
drwxr-xr-x 2 root root 4096 Mar 1 2011 freevxfs
drwxr-xr-x 2 root root 4096 Mar 1 2011 fscache
drwxr-xr-x 3 root root 4096 Mar 1 2011 gfs2
drwxr-xr-x 2 root root 4096 Mar 1 2011 hfs
drwxr-xr-x 2 root root 4096 Mar 1 2011 hfsplus
drwxr-xr-x 2 root root 4096 Mar 1 2011 jbd
drwxr-xr-x 2 root root 4096 Mar 1 2011 jffs2
drwxr-xr-x 2 root root 4096 Mar 1 2011 lockd
drwxr-xr-x 2 root root 4096 Mar 1 2011 msdos
drwxr-xr-x 2 root root 4096 Mar 1 2011 nfs
drwxr-xr-x 2 root root 4096 Mar 1 2011 nfs_common
drwxr-xr-x 2 root root 4096 Mar 1 2011 nfsd
drwxr-xr-x 2 root root 4096 Mar 1 2011 nls
drwxr-xr-x 2 root root 4096 Mar 1 2011 squashfs
drwxr-xr-x 2 root root 4096 Mar 1 2011 udf
drwxr-xr-x 2 root root 4096 Mar 1 2011 vfat
5.2 查询系统目前已加载到内存中支持的文集系统
[root@localhost ~]# cat /proc/filesystems
nodev sysfs
nodev rootfs
nodev bdev
nodev proc
nodev cpuset
nodev binfmt_misc
nodev debugfs
六. 文件系统的操作
磁盘的总体数据是在superblock区块中,而具体的档案容量则在inode中记载。
6.1 df(列出文件系统的整体磁盘使用量)--显示的是superblock信息
格式:df [-ahikHTm] [目录或文件名]
选项与参数:
-a:列出所有的文件系统,包括/proc等文件系统
-h:以较已阅读的GBytes,MBytes,KBytes等格式显示
-i:不用硬盘容量,而以inode的数量来显示
·du:评估文件系统的磁盘使用量
示例:
[root@localhost ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/VolGroup00-LogVol00
bbea
11G 8.3G 1.8G 83% /
/dev/sda1 99M 12M 83M 13% /boot
tmpfs 252M 0 252M 0% /dev/shm
.host:/ 52G 51G 925M 99% /mnt/hgfs
列出/home所在磁盘容量以易读的容量格式显示
[root@localhost ~]# df -h /home
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/VolGroup00-LogVol00
11G 8.3G 1.8G 83% /
6.2 du [-ahakm] 档案或目录名称
选项与参数:
-a:列出所有的档案与目录容量,默认仅统计目录下的档案
-h:以较已阅读的GBytes,MBytes,KBytes等格式显示
-s:列出总量而已,而不列出每个各别的目录占用的容量
示例:
列出当前目录下的所有档案容量
[root@localhost ~]# du
4 ./.redhat/esc
8 ./.redhat
4 ./.gnome2_private
8 ./.gconf/apps/panel/applets/window_list/prefs
12 ./.gconf/apps/panel/applets/window_list
8 ./.gconf/apps/panel/applets/clock/prefs
12 ./.gconf/apps/panel/applets/clock
8 ./.gconf/apps/panel/applets/workspace_switcher/prefs
12 ./.gconf/apps/panel/applets/workspace_switcher
.......................
七. 实体链接与符号链接:ln
格式:ln [-sf] 来源文件 目标文件
选项与参数:
-s:如果不加任何参数就进行链接,为hard link,添加-s为symbolic link
-f:如果目标文件存在,将该文件清除后再建立
7.1 Hard Link(实体链接,硬链接)
hard link是在某个目录下新增一个档案名,链接到某inode号的关联记录
示例:
建立/etc/crontab的实体链接:
[root@localhost ~]# ln /etc/crontab .
查看二者的inode记录:
[root@localhost ~]# ll -i /etc/crontab /root/crontab
2457767 -rw-r--r-- 3 root root 255 Jul 15 2006 /etc/crontab
2457767 -rw-r--r-- 3 root root 255 Jul 15 2006 /root/crontab
两个档案连接到的inode号都为2457767
-->hard link的限制:
·不能跨filesystem
·不能link目录(否则二者随时需要同步,浪费系统开销)
7.2 Symbolic link(符号链接,即是快捷方式)
Symbolic link是建立一个独立的档案,而这个档案会让数据的读取指向其link的那个档案
示例:
建立一个符号链接文件链接到/etc/crontab:
[root@localhost ~]# ln -s /etc/crontab crontab2
查看信息:
[root@localhost ~]# ll -i /etc/crontab /root/crontab2
2457767 -rw-r--r-- 3 root root 255 Jul 15 2006 /etc/crontab
1083449 lrwxrwxrwx 1 root root 12 May 21 14:32 /root/crontab2 -> /etc/crontab
-->符号链接可以链接目录
例如:ln -s /bin /root/bin
在进入/root/bin这个目录时,实际进入的是/bin目录
删除链接档:
# rm /root/bin
7.3 关于目录的link数量
新建目录时,存在.与..这两个目录,因此,如果建立名为/tmp/aa时,会有三个目录:
/tmp/aa
/tmp/aa/.
/tmp/aa/..
其中,/tmp/aa与/tmp/aa/.是一样的,指的都是aa目录;/tmp/aa/..则代表/tmp目录,因此,新建一个目录时,新建目录链接数为2(分别是/tmp/aa和/tmp/aa/.);而上层目录会增加1(因为/tmp/aa/..链接到上层目录)
示例:
[root@localhost ~]# ls -ld /tmp
drwxrwxrwt 60 root root 4096 May 21 14:02 /tmp
目录/tmp初始链接数为60
新建目录:
[root@localhost ~]# mkdir /tmp/aa
再查看/tmp链接数
[root@localhost ~]# ls -ld /tmp
drwxrwxrwt 61 root root 4096 May 21 14:44 /tmp
查看/tmp/aa链接数
[root@localhost ~]# ls -ld /tmp/aa/
drwxr-xr-x 2 root root 4096 May 21 14:44 /tmp/aa/
/dev/sd[a-p][1-15]:为SCSI,SATA,USB,Flash等接口的磁盘名
/dev/hd[a-d][1-63]:为IDE接口的磁盘文件名
二. 文件信息再磁盘中的记录
Linux操作系统的档案权限(rwx)与文件属性(拥有者、群组、时间参数等)。文件系统通常将这两部分数据放在不同的区块中,权限与属性放置到inode区块中,实际数据则放置到data block区块中。还有个超级区块(superblock)会记录整个文件系统的整体信息,包括inode与block的总量、使用量、剩余量等。
·superblock:记录此filesystem的整体信息,包括inode/block的总量,使用量,剩余量,以及文件系统的格式与相关信息等。
·inode:记录档案的属性,一个档案占用一个inode,该inode中将记录档案数据所在的block号码。
·block:记录档案的实际数据,如果档案过大,会占用多个block。
-->Linux正统的文件系统为Ext2(Linux second extended file system, ext2fs)
三. 磁盘信息查询指令
3.1 使用df 指令
[root@localhost ~]# df 查询当前系统挂载的装置
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/mapper/VolGroup00-LogVol00
11046136 8611048 1864928 83% /
/dev/sda1 101086 11823 84044 13% /boot
tmpfs 257736 0 257736 0% /dev/shm
.host:/ 53841812 52895444 946368 99% /mnt/hgfs
3.2 使用dumpe2fs [-bh]指令查询当前系统文件系统信息:
选项与参数:
-b:列出保留为坏轨的部分
-h:仅列出superblock的数据,不列出其他区段信息
[root@localhost ~]# dumpe2fs /dev/sda1
四. 文件系统概念与实际的目录树关系
4.1 目录
在Linux的ext2文件系统建立一个目录时,ext2会分配一个inode与至少一块block给该目录。其中,inode记录该目 录的相关权限与属性,并记录分配的block号码;而block记录在这个目录下的文件名与该文件名占用的inode号码数据。
使用命令#ls -i查看root家目录内档案所占用的inode号码:
[root@localhost ~]# ls -li
total 104
1083444 drwxr-xr-x 3 root root 4096 May 14 19:48 a
1083347 -rw------- 1 root root 2724 Mar 1 2011 anaconda-ks.cfg
1083446 drwxr-xr-x 3 root root 4096 May 14 19:48 b
1279584 drwxr-xr-x 2 root root 4096 May 8 16:04 Desktop
1081346 -rw-r--r-- 1 root root 51427 Mar 1 2011 install.log
1081347 -rw-r--r-- 1 root root 6589 Mar 1 2011 install.log.syslog
1083353 -rw-r--r-- 1 root root 770 Jun 9 2011 minicom.log
1083348 -rw-r--r-- 1 root root 227 Feb 28 2011 scsrun.log
4.2 文件
在Linux下ext2文件系统建立一个档案时,ext2会分配一个inode与相对应于档案大小的block数量给该档案
五. Linux支持的文件系统
5.1 使用如下命令查看系统支持的文件系统:
[root@localhost ~]# ls -l /lib/modules/$(uname -r)/kernel/fs
total 200
drwxr-xr-x 2 root root 4096 Mar 1 2011 autofs4
drwxr-xr-x 2 root root 4096 Mar 1 2011 cachefiles
drwxr-xr-x 2 root root 4096 Mar 1 2011 cifs
drwxr-xr-x 2 root root 4096 Mar 1 2011 configfs
drwxr-xr-x 2 root root 4096 Mar 1 2011 cramfs
drwxr-xr-x 2 root root 4096 Mar 1 2011 dlm
drwxr-xr-x 2 root root 4096 Mar 1 2011 exportfs
drwxr-xr-x 2 root root 4096 Mar 1 2011 ext3
drwxr-xr-x 2 root root 4096 Mar 1 2011 fat
drwxr-xr-x 2 root root 4096 Mar 1 2011 freevxfs
drwxr-xr-x 2 root root 4096 Mar 1 2011 fscache
drwxr-xr-x 3 root root 4096 Mar 1 2011 gfs2
drwxr-xr-x 2 root root 4096 Mar 1 2011 hfs
drwxr-xr-x 2 root root 4096 Mar 1 2011 hfsplus
drwxr-xr-x 2 root root 4096 Mar 1 2011 jbd
drwxr-xr-x 2 root root 4096 Mar 1 2011 jffs2
drwxr-xr-x 2 root root 4096 Mar 1 2011 lockd
drwxr-xr-x 2 root root 4096 Mar 1 2011 msdos
drwxr-xr-x 2 root root 4096 Mar 1 2011 nfs
drwxr-xr-x 2 root root 4096 Mar 1 2011 nfs_common
drwxr-xr-x 2 root root 4096 Mar 1 2011 nfsd
drwxr-xr-x 2 root root 4096 Mar 1 2011 nls
drwxr-xr-x 2 root root 4096 Mar 1 2011 squashfs
drwxr-xr-x 2 root root 4096 Mar 1 2011 udf
drwxr-xr-x 2 root root 4096 Mar 1 2011 vfat
5.2 查询系统目前已加载到内存中支持的文集系统
[root@localhost ~]# cat /proc/filesystems
nodev sysfs
nodev rootfs
nodev bdev
nodev proc
nodev cpuset
nodev binfmt_misc
nodev debugfs
六. 文件系统的操作
磁盘的总体数据是在superblock区块中,而具体的档案容量则在inode中记载。
6.1 df(列出文件系统的整体磁盘使用量)--显示的是superblock信息
格式:df [-ahikHTm] [目录或文件名]
选项与参数:
-a:列出所有的文件系统,包括/proc等文件系统
-h:以较已阅读的GBytes,MBytes,KBytes等格式显示
-i:不用硬盘容量,而以inode的数量来显示
·du:评估文件系统的磁盘使用量
示例:
[root@localhost ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/VolGroup00-LogVol00
bbea
11G 8.3G 1.8G 83% /
/dev/sda1 99M 12M 83M 13% /boot
tmpfs 252M 0 252M 0% /dev/shm
.host:/ 52G 51G 925M 99% /mnt/hgfs
列出/home所在磁盘容量以易读的容量格式显示
[root@localhost ~]# df -h /home
Filesystem Size Used Avail Use% Mounted on
/dev/mapper/VolGroup00-LogVol00
11G 8.3G 1.8G 83% /
6.2 du [-ahakm] 档案或目录名称
选项与参数:
-a:列出所有的档案与目录容量,默认仅统计目录下的档案
-h:以较已阅读的GBytes,MBytes,KBytes等格式显示
-s:列出总量而已,而不列出每个各别的目录占用的容量
示例:
列出当前目录下的所有档案容量
[root@localhost ~]# du
4 ./.redhat/esc
8 ./.redhat
4 ./.gnome2_private
8 ./.gconf/apps/panel/applets/window_list/prefs
12 ./.gconf/apps/panel/applets/window_list
8 ./.gconf/apps/panel/applets/clock/prefs
12 ./.gconf/apps/panel/applets/clock
8 ./.gconf/apps/panel/applets/workspace_switcher/prefs
12 ./.gconf/apps/panel/applets/workspace_switcher
.......................
七. 实体链接与符号链接:ln
格式:ln [-sf] 来源文件 目标文件
选项与参数:
-s:如果不加任何参数就进行链接,为hard link,添加-s为symbolic link
-f:如果目标文件存在,将该文件清除后再建立
7.1 Hard Link(实体链接,硬链接)
hard link是在某个目录下新增一个档案名,链接到某inode号的关联记录
示例:
建立/etc/crontab的实体链接:
[root@localhost ~]# ln /etc/crontab .
查看二者的inode记录:
[root@localhost ~]# ll -i /etc/crontab /root/crontab
2457767 -rw-r--r-- 3 root root 255 Jul 15 2006 /etc/crontab
2457767 -rw-r--r-- 3 root root 255 Jul 15 2006 /root/crontab
两个档案连接到的inode号都为2457767
-->hard link的限制:
·不能跨filesystem
·不能link目录(否则二者随时需要同步,浪费系统开销)
7.2 Symbolic link(符号链接,即是快捷方式)
Symbolic link是建立一个独立的档案,而这个档案会让数据的读取指向其link的那个档案
示例:
建立一个符号链接文件链接到/etc/crontab:
[root@localhost ~]# ln -s /etc/crontab crontab2
查看信息:
[root@localhost ~]# ll -i /etc/crontab /root/crontab2
2457767 -rw-r--r-- 3 root root 255 Jul 15 2006 /etc/crontab
1083449 lrwxrwxrwx 1 root root 12 May 21 14:32 /root/crontab2 -> /etc/crontab
-->符号链接可以链接目录
例如:ln -s /bin /root/bin
在进入/root/bin这个目录时,实际进入的是/bin目录
删除链接档:
# rm /root/bin
7.3 关于目录的link数量
新建目录时,存在.与..这两个目录,因此,如果建立名为/tmp/aa时,会有三个目录:
/tmp/aa
/tmp/aa/.
/tmp/aa/..
其中,/tmp/aa与/tmp/aa/.是一样的,指的都是aa目录;/tmp/aa/..则代表/tmp目录,因此,新建一个目录时,新建目录链接数为2(分别是/tmp/aa和/tmp/aa/.);而上层目录会增加1(因为/tmp/aa/..链接到上层目录)
示例:
[root@localhost ~]# ls -ld /tmp
drwxrwxrwt 60 root root 4096 May 21 14:02 /tmp
目录/tmp初始链接数为60
新建目录:
[root@localhost ~]# mkdir /tmp/aa
再查看/tmp链接数
[root@localhost ~]# ls -ld /tmp
drwxrwxrwt 61 root root 4096 May 21 14:44 /tmp
查看/tmp/aa链接数
[root@localhost ~]# ls -ld /tmp/aa/
drwxr-xr-x 2 root root 4096 May 21 14:44 /tmp/aa/
相关文章推荐
- Linux学习命令汇总六——磁盘分区,磁盘挂载,文件系统管理,压缩及归档命令
- 鸟哥的Linux私房菜 基础学习篇读书笔记(10):Linux磁盘与文件系统管理(3)
- linux 学习之九、Linux 磁盘与文件系统管理(1)
- Linux系统中vim、find、bash环境变量、文件系统权限及磁盘管理相关命令
- itercast.com学习笔记-Linux磁盘及文件系统管理
- Linux入门五:磁盘及文件系统管理命令
- Linux系统磁盘管理及文件系统管理中各类命令使用
- linux 学习之九、Linux 磁盘与文件系统管理(1)
- Linux入门六:磁盘及文件系统管理命令
- linux 学习之九、Linux 磁盘与文件系统管理(2)
- <Linux 私房菜>基础学习篇学习记录(2)磁盘与文件系统管理
- linux 学习之九、Linux 磁盘与文件系统管理(3)
- linux 学习之九、Linux 磁盘与文件系统管理(2)
- 学习鸟哥私房菜(三)之linux磁盘与文件系统管理
- Linux学习-05-磁盘与文件系统管理-1
- 鸟哥的Linux私房菜 基础学习篇读书笔记(8):Linux磁盘与文件系统管理(1)
- linux 学习之九、Linux 磁盘与文件系统管理(1)
- 鸟哥的Linux私房菜 基础学习篇读书笔记(9):Linux磁盘与文件系统管理(2)
- 【Linux学习记录】Linux磁盘与文件系统管理
- Linux鸟哥私房菜学习笔记_第八章Linux磁盘与文件系统管理