第二章linux文件系统管理.doc_第1页
第二章linux文件系统管理.doc_第2页
第二章linux文件系统管理.doc_第3页
第二章linux文件系统管理.doc_第4页
第二章linux文件系统管理.doc_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第二章:文件系统管理本章的培训内容:一、 linux文件系统概述 二、 inode number 及 inode 表 三、 复制、移动、创建、删除文件 四、 软、硬链接 五、 文件搜索 六、 检查文件系统剩余空间 七、 归档和压缩一、 LINUX文件系统概述Linux的文件及文件夹的组织结构成一个倒立置的树形结构。并以 / (slash)分隔。1、重要的文件目录用户家目录:每一个用户都有一个家目录(即用户登入到系统的默认目录),用户个人的所有文件都应该放在这里。根用户的家目录是 /root ,普通用户的家目录是 /home/用户名 。 /bin :保存用户命令,如ls等等。 /sbin :保存系统命令,如mount等等。 /usr :存放应用程序的目录,相当于windows的program files。/misc:是系统预设置的自动挂载(autofs)光盘的目录。/media:通常用来挂载可移除设备,如u盘。/mnt:在该目录下用户可以创建挂载点。 /tmp:存放系统临时文件的目录。 /boot:存放内核和grub等开机引导程序的目录。 /var :存放系统数据的目录,如log或email等。/srv :所有和server有关的服务。 /proc :虚拟目录,不占用物理空间,保存当前系统运行的一些信息。 /lib:这个目录里存放着系统最基本的动态链接共享库,其作用类似于Windows里的.dll文件。几乎所有的应用程序都须要用到这些共享库。附加: -lost+found # 不正常关机的错误文件片段,每一个分区中都有此目录2、文件和目录的命令规则可以长达255个字符。区分大小写。不推荐使用 (转义字符) , 可能遇到一些意想不到的问题。3、绝对路径和相对路径1)绝对路径:从根目录开始描述到文件位置的完整路径。 2)相对路径:当前路径到要查找文件路径的便捷路径。可以使用pwd命令查看用户所在的当前路径。4、使用cd命令改变用户的工作目录。 cd # 回当前用户家目录 cd # 也是回当前用户家目录 cd . # 回上一次所在的目录 cd /root # 使用绝对路径 cd user1 # 当前路径在/home目录下,使用相对路径进入user1目录谁告诉我用哪个用户登陆,主机名字是什么,现在在哪个目录?5、ls 命令:列出当前目录或指定目录中的内容 1)ls -l (以长列表方式显示文件,一共显示9列:文件类型、文件权限、硬连接数、文件拥有者、文件所属组、文件大小、更改时间、文件名) 注:也可以使用ll命令,其实ll命令是ls l命令的一个别名。通过alias ll命令可以查看ll对应的相关命令。第一列:共10位:第1位:代表文件类型(在linux中,所有东西都被当成文件)-:一般文件 d:目录文件 b:块设备文件 c:字符设备文件 l:链接文件 p:人工管道s:套接字第234位:代表文件所有者的权限。第567位:代表文件所属组的权限。第8910位:代表其他用户的权限。 第二列:表示的是有多少文件连接到inode(inode就文件的物理地址)。对于文件,是文件的硬链接数:对于目录,是其下子目录的数量。硬链接就是一个物理文件的多个文件名(稍候会将到)第三、四列:前面是文件的所属用户,后面是文件的所属组。 第五列:文件大小,以字节为单位。(可以使用ls lk命令以块为单位显示文件大小,linux默认块大小是1k,可以使用命令查看块大小:tune2fs -l /dev/sda1 | grep Block) 第六、七、八列:文件最后一次的更改时间 ( modify time)第九列:文件名字 2)ls -a (包括隐藏文件,隐藏文件的文件名前有一个点) 我们看到两个都是点的奇怪目录,它们代表的是什么呢?. 代表当前目录 . 代表上一级目录 3)ls -R (递归到子目录中) 4)ls -dl (显示目录信息的长列表信息) ls ld命令查看的指定目录的详细信息,而不是目录下的文件的信息。提示:可以用tab键补全你没有输完整的命令和文件名。如果补全最终带有/,证明这是个目录 。6、七种文件类型:l(软链接): b(块文件,磁盘等存储设备): C(字符文件,如键盘、鼠标、虚拟终端等) P(命名管道):用来在进程之间传输数据 S(套接字):在程序执行的时候起相互通信的作用 二、 inode number 及 inode 表 1、linux是如何存储文件的?linux中,一个文件被分为2部分存储:其中文件属性部分被记录在inode表中,文件的内容部分被存储在block区。这种将属性与内容分离的存储方式可以更灵活、更安全。2、什么是inode number?系统中每一个文件或目录都对应一个inode numbrer,用户通过文件名访问文件或目录,linux系统使用inode number访问文件或目录。 3、inode 表:1)一个分区被格式化成ext2/ext3的文件系统的过程,就是创建inode 表、划分物理储存块的过程。2)inode 表中的字段说明:文件类型(常规文件、目录、等等) 文件权限 硬链接数:和 inode number 相关联的文件名的数量 UID、GIDsize:文件的大小时间戳:包括3种时间戳access time:最后存取时间modify time:最后修改时间(修改了这种时间戳,其它2种时间戳也会变更)change time:inode表中记录最后一次被修改的时间,如权限等。指针:指明该文件被存放在哪几个物理blocks中。 3、inode与目录和文件1)新建目录时,为其分配一个inode和一个block,inode存储目录自身的属性,且通过属性的pointer字段指向block;block保存的是该目录下所有文件名、目录名与inode number的对应关系。2)新建文件时,分配一个inode number 和多个block,同时也将该文件的文件名和inode number添加到所在目录的block中。4、linux如何查找文件的?1)linux访问一个文件时,首先从根目录开始获取该文件所在目录的inode number;2)然后依据目录的inode number查inode 表,通过pointer字段找到目录对应物理块,物理块记录的是该目录下所有文件的文件名和inode number对应关系,所有我们现在就找到了所要找的文件的inode number。3)然后根据文件的inode number再次查找 inode表,通过pointer字段的值确定该文件被存储在哪些物理块中。5、可以使用 ls -li 命令查看文件的 inode number。三、复制、移动、创建、删除文件 1、cp:复制文件和目录:1)常用参数:-i (interactive):在覆盖文件前询问 -f (force):强制删除文件,不需要确认-r (recursive):递归的复制整个目录树 -p(preserve):保留权限、所有者、时间戳 2)cp 和 inode 分配一个未使用的inode号码,在inode表中添加一个新项目。 在目录中创建一个entry,关联文件名和 inode no。把数据复制到新文件中。实例1:备份/etc目录下所有文件到/root/bak/目录下,同时保留文件属性。2、rm :不可恢复式的删除文件 1)rm -i 文件(交互式) rm -r 目录(递归式) rm -f 文件(强制) 2)rm 和 inode 减少链接数量、从而释放 inode 号码,这个号码可以被重复利用 把数据块放在可用空间列表中 删除目录项目实例2:删除/root/etc-bak目录及其下的所有文件和目录,不需要确认3、创建文件或空目录1)touch:若文件存在,将文件的访问时间改为现在的时间;2)若文件不存在,系统会建立一个新的文件,但会改变文件的时间戳。touch实验1:通过touch改变已有文件的时间戳。2) mkdir:创建空目录 4、mv:剪切文件或目录:1)mv 和 cp 的区别 cp生成完全相同的两个文件;使用mv后源文件消失,只保留目标文件。 2)mv 和 inode a、如果 mv 命令的目标和源文件在同一个分区下,mv就会:使用新文件名新建目录项目 删除带有原文件名得原有目录项目 对 inode 表无影响(除了时间戳以外),对数据在磁盘上的位置也无影响(不会移动任何数据) b、若源文件和目标文件在不同的分区,mv 命令的行为相当于复制和删除。5、判断文件内容通过file命令,可以判断文件的类型,如文本文件、html、可执行的shell脚本、空文件或目录 在打开前检查文件的类型以决定使用哪种恰当的程序操作文件 四、软、硬链接1、硬链接:1)什么是硬链接:一个文件对应一个 inode number ,一个 inode number 可以对应多个不同的文件名,这些文件名就是这个文件的硬链接。硬链接是一个物理文件的多个访问点 硬链接文件不能跨分区建立。(为什么?)不允许在目录上创建硬链接。 (为什么?)2)rm 与 硬链接 rm 删除硬链接的同时,使真实文件的硬链接数减 1只要有一个硬链接存在,文件就存在 当硬链接数量减少到 0 时,文件就会被删除 3)建立硬链接 语法:ln 文件名 硬链接名 删除刚才建立的硬链接 注:可以看到passwd的硬链接数又变回12、软链接(符号链接)1)什么是软链接软链接是指向另一个文件的指针文件。当你使用 cat 或less之类的命令从软链接中读取文件时,你实际上读取的是它指向的文件的内容。事实上,除了 rm 以外的其它命令都是对它指向的文件的操作。删除软链接会删除这个链接本身,而不是它指向的文件。 软链接可以跨分区创建2)创建软链接语法:ln -s 文件名 软连接名 注:建立的软链接文件和它指向的源文件的不同点:inode 号不同:说明软链接和源文件是不同的文件 文件类型不同:软链接的文件类型标识为l,而 /etc/passwd 是一个普通文件 权限不同:软链接的权限无关紧要,它所指向的文件的权限会控制对文件的存取 大小不同:软链接内容是指向物理文件的路径名,因此它的大小就是路径名的字符总数 3) rm 与 软链接 注: rm 会删除软链接本身,而不是它指向的文件五、 文件搜索1、查找可执行文件1) which: 按照 $PATH 的顺序查找一个可执行命令的完整路径 注:上面一行的ls的别名;下面一行 /bin/ls 就是 ls 的可执行文件的完整路径。 2)whereis 搜索一个可执行命令及其相关配置、帮助文件注:/bin/ls 是可执行文件位置,后面两个就是帮助文件了2、locate命令:基于数据库的文件搜索。1) locate命令简介:首先系统通过 updatedb 命令生成一个包括文件名和路径信息的locate 数据库,locate 再在此数据库中搜索匹配记录。 rootorcl # updaedb locate命令只能搜索文件名,文件名可以模糊匹配。 搜索结果显示匹配条件包括完整路径名的多条记录。 2) 使用locate查找文件使用 locate 命名查找网卡配置文件:locate ifcfg-eth0 locate查找不到updatedb更新之后建立的文件注:数据库更新后,新建立的文件就找到了3、find命令1) find是在当前环境中查找匹配的目录和文件,有如下特点 :比locate命令慢,但比locate更精确 如果没有指定目录,默认使用当前目录 只能查找用户具备读取和执行权限的目录 2)常用参数A、-user:根据文件拥有者寻找文件 find /home -user root # 查找/home 下所有者为root的文件:、-group:根据文件所属组寻找文件 find /boot -group root、-name:根据文件名寻找文件 、-perm:根据文件权限寻找文件 find /root/tmp perm 222 # 查找权限是222的文件find /root/tmp -perm +222 # + 代表用户、组、其他3组权限只要有一组包括写权限的文件就匹配。find /root/tmp -perm +222 # - 代表用户、组、其他3组权限都有写权限的文件才能匹配。 、-size:根据文件大小寻找文件find /root -size +40M # 查找大于40M的文件大小前面用+ 表示大于这个值 - 表示小于这个值 不带符号就表示等于了 单位也有讲究:k是小写的,M和G是大写的、-type:根据文件类型寻找文件,参数对应c、b、l、f、d find /dev -type b # 查找块文件) find 命令和逻辑表达式、搜索条件默认使用 and 运算符连接 查找conf 结尾,还要是20k以上的文件 find / -name *.conf -size +20k、使用 -o 来进行或运算,或 -not 来进行否运算 要找conf 结尾或20k以上的文件 find / -name *.conf o -size +20k、逻辑运算符的优先级依次是 not、and、or,可以使用括号来改变逻辑运算的顺序,但是必须使用转义符 “ ”查找以conf结尾,但所有者不是root的文件 find / -name *.conf -not -user root在/home下查找所有者既不是root,又不是user1的文件 find /home -not ( -user root -o -user user6 ))find 和存取时间、文件的inode 时间戳有如下种类型 atime:文件最后一个被读取 mtime:文件数据最后一次被修改 ctime:文件属性最后一次被修改(通过touch、chmod等命令) 、通过stat命令查找文件的3种时间戳 stat file1查找属性修改日期少于10天的文件,+10代表大于10天 find -ctime -10 ) 使用 find 来执行命令:find 使用 -exec 或 ok 选项会对查找到的文件执行命令,通常当要删除或备份查找的文件时使用该选项。 -exec执行命令时不确认,直接执行;-ok 执行时需要确认 命令必须以(“ ”)结尾 代表前面查找到的文件名 实例:备份配置文件find /etc -name *.conf -ok cp .bak ; 实例3:提示删

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论