Linux操作系统之___文件与目录管理篇
发布时间:2022-11-22 11:18:13 所属栏目:Linux 来源:
导读: Linux文件与目录的管理是非常重要的概念,尤其是权限的概念对于用户来说是非常重要的,因为它限制了用户能不能读取/新建/删除/修改文件的权限。在这里重点说下什么命令在什么样的权限下才能够运行。小小的部分总
Linux文件与目录的管理是非常重要的概念,尤其是权限的概念对于用户来说是非常重要的,因为它限制了用户能不能读取/新建/删除/修改文件的权限。在这里重点说下什么命令在什么样的权限下才能够运行。小小的部分总结如下: 文件目录的权限和属性 让用户能进入某目录成为 “可工作目录” 的基本权限是: * 可使用的命令如:cd等 * 目录所需权限: 用户至少对这个目录具有 x (execute)的权限 * 注明: 如果用户想要在这个目录内利用 ls 查阅文件名称,则还需要 r (read)的权限 用户在某个目录内读取一个文件的基本权限是: * 可使用的命令如:cat , more, less等 * 目录所需权限:用户至少对这个目录具有 x 权限 * 文件所需权限:用户至少对这个文件具有 r 权限 让用户可以修改一个文件的基本权限是: * 可使用的命令如:vi, vim, nano, gedit 等等 * 目录所需权限:用户在该文件所在的目录至少需要 x 的权限 * 文件所需的权限: 用户对该文件只少要具有 r,w(write)的权限 让一个用户可以创建一个文件的基本权限是: * 目录所需权限: 用户在该目录要具有 w,x 的权限 让用户进入某个目录并执行该目录下的某个命令的基本权限是: * 目录所需的权限:用户在该目录至少具有 x 的权限 * 文件所需的权限:用户的文件至少需要具有 x 的权限 文件的默认权限:umask 文件的默认权限是由umask来决定的,umask可以进行相关的设置,这个概念可以用在任何的Linux的服务器上面,尤其是未来你架设服务器的时候是很重要的,例如Samba Server或者 FTP Server都是很重要的概念,你可以在命令行输入umask来查看,在这里就不具体讨论了 文件的隐藏属性:chattr , lsattr 语法: chattr [+-=] [-Asacdistu] 文件或者目录的名称 解释: a : 当设置a之后,这个文件将只能增加数据,而不能删除也不能修改数据,只有root才能设置这个属性 i : 当设置i 之后,它可以叫一个文件“不能被删除,改名,即使设置连接也无法写入或者添加数据”。"对于系统安全很有帮助" 举例如下: cd /tmp touch attrtest chattr +i attrtest rm attrtest ----->提示出现错误,操作不被允许,因为文件设置了chattr +i 这样的属性(只有root可以使用),赶紧去掉 chattr -i attrtest rm atrrtest----->提示是否删除,然后根据用户操作删除文件 lsattr用来查看用户文件的隐藏属性: 语法:lsattr [-adR] 文件或者目录 参数:-a 将隐藏文件的属性也输出 -d 如果接的是目录,仅列出目录本身的属性而非目录内的文件名 -R 连同子目录的数据也一并列出来 举例如下: chattr +ai attrtest lsattr attrtest ----ia------- attrtest-------> 输出的结果为这,显示出文件attrtest具有ia两个特殊的隐藏属性 文件的特殊权限位 文件的特殊权限包括: SetUID,SetGID,和SBIT(黏着位), SetUID包含的意义如下:(只对文件有用) * SetUID 对二进制程序有用 * 程序执行者对于该程序来说,需要具备 x 的权限 * 执行者在执行的过程中将以该程序所有者的身份来执行(重点) SetGID包含的意义如下:(只对目录有用) * SetGID 对二进制程序有用 * 程序执行者对于该程序来说,需要具备 x 的权限 * 执行者在执行的过程中将会获得该程序用户组的支持(重点) SBIT的含义如下:(只对目录有用) * 该目录的权限一定是777的权限,也就是 drwx-rwx-rwx 的权限 * 目录一但具有SBIT,代表在该目录下用户创建的文件只有自己与root能够删除,其它人不能删除 基本的要点归纳: 1,绝对路径“一定由根目录 / 写起”;相对路径“不是由 根目录 / 写起”; 2,特殊的目录有.,..,-,~,~wei.ming需要注意 3,与目录相关的命令有cd,mkdir,rmdir,pwd rm等等 4,用户能使用的命令是依据PATH变量所规定的目录去查找的 5,不用的身份(root与一般帐号)系统默认的PATH并不相同。差异较大的地方在于/sbin和/usr/sbin 6,ls可以查看文件的属性,尤其是-d, -a, -l等参数很重要 7,文件的复制,删除Linux 文件与目录管理,移动可以分别使用cp ,rm , mv等常用的命令 8, 查看文件的内容基本命令包括cat, tac, nl, more, less, head, tail, od等等 9,touch的目的在修改文件的时间参数,但是可以用来创建空文件 10,cat -n与nl 都可以显示行号,但是在默认的情况下,空白行是不会编号进行显示的 11, 一个文件记录时间参数的方法分别是 accesstime (atime),statustime(ctime),modificationtime(mtime),ls默认显示的是mtime 12,Linux除了传统的rwx权限外,在Ext2/Ext3文件系统中,还可以使用chattr与lsattr设置及查看隐藏属性 13,新建文件/目录时,新文件的默认权限是使用umask来规定的,我的机器是Linux_CentOS5.5(Kernel:2.6.x)所以默认创建的文件权限是644(-rw-r--r--),默认创建的目录的权限是755(drwx-r-x-r-x) 14,利用find可以加入许多参数来直接查询文件系统,以获得自己想要知道的文件名。 15,查找命令的完整名可以用which或者type,这两个命令都是通过PATH环境变量来查找文件名的 16,要查找文件的完整文件名可以用whereis或者locate命令到mlocate数据库里面进行查找,而不是实际查找硬盘数据。所以速度较快 17,locate查找的原理是: /etc/updatedb.conf-->/var/lib/mlocate/mlocate 好了,敲的我手都累了,就写这么多吧,这里只是把Linux文件与目录当中的重点举例说明了下,其中的内容还有很多,我这里就不一一举例了,如果大家有兴趣可以自己学习Linux的文件与目录管理,尤其是find查找文件,里面可以根据-user, -name,-size,-group等等来进行查询,如果有兴趣可以深入研究下。下面我还将继续写点关于Linux的东西,以期和大家分享. (编辑:应用网_阳江站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
站长推荐