




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、rhel5.4文件系统和tar工具关于linux下面文件系统的深究和tar工具的使用讨论, 分区和文件系统磁盘驱动器被划分成分区,分区被格式化成文件系统(filesystem),从而使用户能 够去保存数据。linux下面的默认文件系统是:ext3(第三级扩展linux文件系统,third extended linux filesystem) o 其他常见的文件系统:ext2和msdos (典型用丁软盘)iso9660 (典型拥有光盘)gfs和gfs2 (典型用于san)主要用来做集群级的文件系统inodes(节点)inode(index node 索引节点)inodes table包含了 ex
2、t2和ext3文件系统的所有属性,一个文件其实是由两部分组成:节点表和数据区。节点表里面主要存放文件的类型,权限,uid, gid, link count,大小和口寸间戳, 数据存放在磁盘的什么位置。数据区里面就是存放真正的数据。一个inodes的大小大概为128b, 个文件至少要占有1个inodeso通过tune2fs -1 /dev/sda7 可以查看这个分区的 inode size, inode count, block counto我们知道,计算机在识别一个用户是通过uid来识别的,识别一个进程是通过 进程号來识别的,那么,同样,计算机识别一个文件是通过一个inode number 来
3、识别文件的。而文件名只是给人的识别的。如何查看文件的节点号呢?#ls lirootlocalhost #rootlocalhost # is -litotal 56mar 6 02:15 anaconda-ks.cfgmar 6 02:43 desktopmar 6 02:15 install.logmar 6 02:15 install.log.syslog533587 -rw1 root root 1050919063 drwxr-xr-x 2 root root 4096 524290 -rw-rr 1 root root 29302 524291 -rw-rr 1 root root
4、3738 rootlocalhost #前面的一串数字就是文件的节点号, 其实我们的节点号是在分区创建的时候就己经分配好了的。下面我们來学习复制,剪切,删除对文件inode的影响。1. 复制对文件inode的影响, 现在先来查看一下, frootlocalhost # rootlocalhost # cd /boot/rootlocalhost boot#rootlocalhost boot# is -li file6030 -rw-rr 1 root root 0 mar 6 13:26 filerootlocalhost boot#可以看到,这个文件的节点号是6030,现在我们将它复制到另
5、外一个分区,rootlocalhost #rootlocalhost # cd /boot/rootlocalhost boot#rootlocalhost boot# cp file /var/rootlocalhost boot#rootlocalhost boot# cd /var/rootlocalhost var#rootlocalhost var# is -li file2115361 -rw-rr 1 root root 0 mar 6 13:27 filerootlocalhost var#将这个文件复制到/var分区下面后,这个文件的inode number就改变了。 当一个
6、文件从一个分区复制到另外一个分区的时候,系统就分配了另外一个 inode给这个文件。刚才我们是将一个文件从一个分区复制到另外一个分区,现在我们在同一个分区 里面复制文件,文件的节点号会不会发生改变。rootlocalhost #frootlocalhost # cd /boot/rootlocalhost boot#rootlocalhost boot# is -li file6030 -rw-rr 1 root root 0 mar 6 13:26 filerootlocalhost boot#frootlocalhost boot# cp file /boot/grub/rootlocal
7、host boot#rootlocalhost boot# cd grub/rootlocalhost grub# is -li file22091 -rw-rr- 1 root root 0 mar 6 13:29 filerootlocalhost grub#可以看到,刚才这个文件的节点号是6030,现在就变成了 22091 了。在同一个分区里面复制文件,这个文件的节点号也是会发生改变的。因为在这个 分区有两份相同的文件,只是文件的内容相同,但是文件的inode ®性却是不一 样的。2. 剪切对文件inode的影响 现在先來查看一下,rootlocalhost #rootloca
8、lhost # cd /boot/rootlocalhost boot# frootlocalhost boot# is -li file6030 -rw-rr 1 root root 0 mar 6 13:26 filerootlocalhost boot#可以看到,这个文件的节点号是6030,现在我们将这个文件在同个分区里剪切 一份。rootlocalhost #rootlocalhost # cd /boot/rootlocalhost boot#rootlocalhost boot# is -li file6030 -rw-rr 1 root root 0 mar 6 13:26 fi
9、lerootlocalhost boot#rootlocalhost boot# mv file /boot/test/rootlocalhost boot#rootlocalhost boot# cd test/rootlocalhost test#rootlocalhost test# is -li file6030 -rw-rr 1 root root 0 mar 6 13:26 filerootlocalhost test#可以看到,这个文件节点号是没有改变的。当在同一个分区里面移到文件,文件的节点号没有发生改变。刚才我们是在同一个分区里面移到文件,现在我们将文件在不同的分区当屮移 到
10、,文件的节点号会不会发生改变呢。rootlocalhost #rootlocalhost # cd /boot/test/rootlocalhost test#rootlocalhost test# is -li file6030 rw-rr 1 root root 0 mar 6 13:26 filerootlocalhost test#rootlocalhost testl# mv /boot/test/file /var/ftp/pub/rootlocalhost test#rootlocalhost test# cd /var/ftp/pub/rootlocalhost pub# is
11、 -li file325584 -rw-rr 1 root root 0 mar 6 13:26 filerootlocalhost pub#可以看到,这个文件的节点号是肯定会变的。3. 删除对文件inode的影响rootlocalhost #rootlocalhost # cd /boot/rootlocalhost boot#rootlocalhost boot# is -li file6030 -rw-rr 1 root root 0 mar 6 13:44 filerootlocalhost boot#rootlocalhost boot# rm -rf filerootlocalho
12、st boot#现在我们把file这个文件给删除了,其实我们只是将file这个文件的节点表给删 除了,其实我们的数据都还在。这也就是为什么当我们删除一个文件,这个文件 还可以被找冋来的原因。当然如果我们在到这个分区里面写入数据,那么原来的 数据就会被覆盖。rootlocalhost boot#rootlocalhost boot# touch filelrootlocalhost boot#rootlocalhost boot# is -li filel6030 -rw-rr 1 root root 0 mar 6 13:49 filelrootlocalhost boot#现在我们乂新建了一
13、个文件filel,这个文件的节点号也是6030,它就已经覆盖 了以前的数据的节点号。那么以前的数据就找不回来了。总结:2制:在同一个分区,节点号改变。在不同的分区,节点号改变。剪切:在同一个分区,节点号不变。在不同的分区,节点号改变。删除:只是删除了文件的节点表,数据没有被真正删除,只有当往这个分区在写 入数据的时候,才会覆盖原來的数据。关于硬链接和软链接1. 硬链接(hard links)硬链接文件完全等同于原文件,原文件名和连接文件名都指向相同的物理地址。 不可以跨文件系统,也不可以建立目录的硬链接。如何创建硬链接呢#ln文件名链接名rootlocalhost #rootlocalhost
14、 # cd /boot/rootlocalhost boot#rootlocalhost boot# is -li inittab6033 -rw-rr 1 root root 1666 mar 6 14:06 inittabrootlocalhost boot# pwd/bootrootlocalhost boot# in inittab /boot/grub/inittab.bakrootlocalhost boot#rootlocalhost boot# cd /boot/grub/rootlocalhost grub#rootlocalhost grub# is -li inittab
15、.bak6033 -rw-rr- 2 root root 1666 mar 6 14:06 inittab.bakrootlocalhost grub#可以看到,我们给inittab这个文件创建了一个硕链接initab.bak这个文件。这两 个文件的节点号都是一样的。现在我们来修改原文件,在修改之前我们来看看这个两个文件是不是一样的,使用diffl具。rootlocalhost #rootlocalhost # diff /boot/inittab /boot/grub/inittab.bakrootlocalhost #ok,这两个文件的内容是一样的。现在我们来修改原文件,rootlocal
16、host #rootlocalhost # cd /boot/rootlocalhost boot#rootlocalhost boot# vim inittabrootlocalhost boot#我已经对原文件做了修改了。现在在来看看链接文件是否也跟着改变了rootlocalhost #rootlocalhost # diff /boot/inittab /boot/grub/inittab.bakrootlocalhost #ok,这两个文件还是一样的,也就是说我们改变了原文件的内容,链接文件也 是会跟着发牛改变的。当然,如果在链接文件里面添加内容,那么原文件也会跟着发生改变的。 现在如
17、果我们将原文件个删除了,那么链接还会存在吗?rootlocalhost #rootlocalhost # cd /boot/rootlocalhost boot#rootlocalhost boot# rm -rf inittabrootlocalhost boot#rootlocalhost boot# cd /boot/grub/rootlocalhost grub#rootlocalhost grub# is | grep inittab.bakinittab.bakrootlocalhost grub#ok,可以看到,当我们删除原文件的时候,链接文件也还是存在的。因为原文件和链接文件都
18、有节点表,这两个节点表都是指向真止的数据区的,当 我们删除原文件的时候,只是删除了原文件的节点表,而没有删除真正的数据, 而我们的链接文件也是指向真正的数据区的,所以链接文件存在也是正常的。 接下来,在做一个试验。rootlocalhost #rootlocalhost # cd /boot/rootlocalhost boot#rootlocalhost boot# is li fstab6034 -rw-r-r- 1 root root 684 mar 6 15:43 fstabrootlocalhost boot#在/boot分区下面有个fstab文件,现在我们为这个文件做一个硕链接。r
19、ootlocalhost #rootlocalhost # in /boot/fstab /tmp/in: creating hard link vtinp/fstab1 to、/boot/fstab': invalid cross-device linkrootlocalhost #但是,现在系统报错了,他提示我们硬连接是不可以跨分区的。2. 软链接(soft links)软链接文件相当于为原文件建立了一个快捷方式,可以跨文件系统,也可以为冃 录建立。软链接和硕链接不同,软链接有自己的inode,类似windows下的快捷 方式。如何创建软链接呢?#ln -s文件名链接名rootlo
20、calhost #rootlocalhost # cd /boot/rootlocalhost boot#rootlocalhost boot# is li fstab6034 -rw-r-r- 1 root root 684 mar 6 15:43 fstabrootlocalhost boot#rootlocalhost boot# in -s /boot/fstab /boot/grub/fstab.bakrootlocalhost boot#rootlocalhost boot# cd /boot/grubrootlocalhost grub#rootlocalhost grub# i
21、s -li fstab.bak22106 lrwxrwxrwx 1 root root 11 mar 6 15:56 fstab.bak -> /boot/fstabrootlocalhost grub#现在我为/boot下面的fstab文件做了一个硬链接/boot/grub/fstab.bak文件。当我们修改原文件里面的数据,我们链接文件也会发生改变。修改链接文件的数 据,原文件也会发生改变。这点和硬链接是一样的。现在我们删除原文件,链接文件述可以打开吗?rootlocalhost #frootlocalhost # rm /boot/fstabrootlocalhost #rootl
22、ocalhost # cd /boot/grubrootlocalhost grub#rootlocalhost grub# is -li fstab.bak22106 lrwxrwxrwx 1 root root 11 mar 6 15:56 fstab.bak -> /boot/fstabrootlocalhost grub#很显然,当我们删除原文件以后,我们的链接文件就坏掉了。因为软连接的节点号并没有指向真正的数据,而是指向原文件,当原文件的节点 表被删除了,我们的软连接也打不开了。刚才我们的硬链接并不能够跨分区做,但是我们的软连接没有限制。rootlocalhost #rootl
23、ocalhost # cd /boot/rootlocalhost boot#rootlocalhost boot# in s /boot/fstab /tmp/fstab.bakrootlocalhost bootl# cd /tmp/rootlocalhost tmp# is -li fstab.bak131180 lrwxrwxrwx 1 root root 11 mar 6 16:12 fstab.bak -> /boot/fstab rootlocalhost tmp#我们的软链接是可以跨分区的。总结:侖链接不可以跨分区,不可以对冃录做。但是硬链接的原文件和链接文件的节点 表都
24、指向真正的数据区。删除原文件,链接文件也可以打开。软链接可以跨分区,也可以对目录做。但是软链接的链接文件的节点表是指向原 文件的,当原文件删除后,链接文件就坏掉了。关于linux系统中文件类型 ls -i的符合文件类型常规文件d1bcps目录符号链接 块设备文件 字符特殊文件 别命名的管道套接字关于linux h面检查空闲空间#df -hroot local host -# rootlocalhost # df -hfilesystemsizeusedavailuse% mounted on/dev/sda33.9g2.3g1.5g61%/dev/sda6494m11m458m3%/home/
25、dev/sda215g11g2.7g: 81%/var/dev/sdal99m21m74m22%/boottmpfs217m0217m0%/dev/shmnone217m104k217m1 % /var/lib/xenstored/dev/hdc2.8g2.8g0100% /media/rhel_5.4 i386 dvdrootlocalhost #查看磁盘的空间用量。#du -hrootlocalhost # rootlocalhost # du h /tmp/ 4.0k/tmp/.ice-unix4.0k/tmp/.font-unix8.ok/tmp/orbit-root4.0k/tmp/
26、.x 11-unix8.0k/tmp/gconfd-root/lock12k/tmp/gconfd-root60k/tmp/rootlocalhost -# 这条命令会显示/rnip 口录下面每个文件的大小。可以加上s参数,就会汇总的意思,只显示/tmp i录的大小。root local host -#rootlocalhost # du -sh /tmp/60k /tmp/rootlocalhost #关于linux下面挂载各种设备方法挂载(mounting):意味着使外来的文件系统看起来如同是主目录树的一部分。 访问前,介质必须被挂载 摘除吋,介质必须被卸载1. 挂载光盘和dvd# mou
27、nt /dev/chrom /mediaeject命令用来卸载并弹出磁盘2. 挂载usb设备#mount /dev/sdbl /mnt在linux如何卸载呢?我们使用umount命令来卸载挂载设备,# umount /mnt(挂载点)如何使用tar工具来进行压缩打包1.在linux t面如何打包#tar-cvf/tmp/etc.tar /etc-c创建打包v查看过程-f指定打包文件或设备rootlocalhost #rootlocalhost # tar -cvf /tmp/etc.tar /etc/rootlocalhost #rootlocalhost 1#rootlocalhost #
28、cd /tmp/rootlocalhost tmp#rootlocalhost tmp# 11 etc.tar-rw-r-r- 1 root root 1095680 mar 6 17:44 etc.tarrootlocalhost tmp#这个就是我们打包岀来的文件etc.taro打包只是将这些文件打包在一起,并不压缩,也就是不会减小大小。2.在linux中进行压缩文件#gzip etc. tarrootlocalhost tmp#rootlocalhost tmp# gzip etc.tarrootlocalhost tmp# 11 h etc.tar.gz-rw-rr 1 root ro
29、ot 170k mar 6 17:44 etc.tar.gzrootlocalhost tmp#我们就将刚才打包出来的文件给压缩了,这个文件就变成了伽.gz 了,而且这个 文件的大小也明显减小了。刚才我们是使用gzip的工具来压缩的,现在我们使用bzip2工具来压缩文件,而 口这个工具比gzip的工具压缩率更高。#bzip2 etc. tarrootlocalhost #rootlocalhost # cd /tmp/rootlocalhost tmp#rootlocalhost tmp# 11 etc.tar-rw-rr 1 root root 1105920 mar 6 17:58 etc.tarrootlocalhost tmp#rootlocalhost tmp# bzip2 etc.tarrootlocalhost tmpl# 11 etc.tar.bz2-rw-r-r- 1 root root 141234 mar 6 17:58 etc.tar.bz2rootlocalhost tmp#我们将etc.tar这
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 谁的反应快课件
- 2025版科技研发合同委托管理协议
- 2025年度叉车安全检测与认证服务合同
- 2025年度高科技项目投资担保合同-高科技产业发展保障
- 2025年度智慧城市建设收购合同
- 2025版文化创意产业外包员工服务合同示范文本
- 2025版全新一致行动人协议-人工智能研发合作协议下载
- 2025版企业数字化转型与数字化转型咨询合同
- 2025版商业地产租赁合同租赁物使用限制合同
- 2025版大型钢铁企业高效铁矿粉直销服务合同
- 2025年交管12123学法减分考试题库及答案
- 轨道交通电工基本技能与实训课件 项目1 城市轨道交通供电系统及职业岗位认知
- 矿产品买卖合同
- 2025-2030年商用电磁炉系列行业跨境出海战略研究报告
- DB37-T 4382-2021 环保稳定型胶粉改性沥青及混合料施工技术规程
- 学习五线谱认识音名唱名课件
- 《当代中日关系》课件
- 大学生军事技能训练(同济大学)学习通测试及答案
- 2024年7月生化室内质控总结报告
- 消防工程常用设施三维图解
- 发电企业应急能力建设评估规范
评论
0/150
提交评论