跟阿铭学linux   第三课   文件目录管理

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了跟阿铭学linux   第三课   文件目录管理相关的知识,希望对你有一定的参考价值。

2.16  umask

     文件和目录的默认权限

     目录必须有x权限 即 执行权限;

      默认  umask  为022   更改后    用当前的RWXRw-R-x减去umask  为你当前默认权限

------------------------------------------------------------------------------------

2.17  隐藏权限

  chattr   设置隐藏权限    

 (1)     <chattr +i aming/1.txt>    为 1.txt加 隐藏权限

         <lsattr   aming/1.txt>     查看隐藏权限

注 :若运行   <vi  aming/1.txt>修改      不可修改,退出时会创建一个 1.txt~文件

技术分享    技术分享

(2)   <chattr +a  aming/1.txt>  为1.txt加a权限  可追加但不可删除,移动,编辑

<tail -n2 /etc/passwd >> aming/1.txt >   将passwd前两行追加到1.txt后面  可实现

<touch      aming/1.txt>  可新建更改日期

    技术分享技术分享

(3)   <chattr +i  aming/aming2/>      为目录加i权限   不可更改、删除、新建等等,但可以修改内部文件内容

技术分享    技术分享

(4)   <chattr +a  aming/aming2/>   为目录加a权限  可以修改目录里内容,可以新建文件,可修改内部文件内容。

(5)   <lsattr   -d  aming/aming2/>  查看目录的权限

(6)   <lsattr    -R  aming/ >     查看目录的权限 包括内容的所有权限

(7)   <lsattr    -a  /root/ >     查看目录的权限 包括隐藏的文件

-----------------------------------------------------------------------------------

2.18  特殊权限set_uid

    普通用户临时拥有所属用户所有者的身份  

     <  ls -l /usr/bin/passwd>    查看 passwd指令信息 

                    指令红色背景--具有 set_uid身份权限

     <ls /etc/shadow>   用户密码文件

     <ls -l /etc/shadow >  查看密码文件信息

技术分享    技术分享

(1) 为ls命令增加 set_uid权限

     <su - iammalt>  //切换用户

     <$whoami     >  查看当前用户

    <chmod u+s /usr/bin/ls>     为ls增加set-uid权限

普通用户是无权限查看/root/  权限

技术分享    技术分享

<chmod u=rws /usr/bin/ls>     为ls增加set-uid权限,但是为大写S,因为没有了x权限

技术分享    技术分享

------------------------------------------------------------------------------------

2.19  特殊权限set_gid

      普通用户临时拥有所属用户组的身份  

    (1) <chmod g+s /usr/bin/ls >  为文件ls增加set_gid身份

    (2)<chmod g+s  aming/22 >       为目录增加set_gid身份

         <chown  :malt  /tmp/aming/22 >  修改目录的所属组

          再在22目录里创建文件,文件所属组与目录保持一直

    技术分享技术分享

----------------------------------------------------------------------------------

2.20  特殊权限stick_bit    粘滞位

      防止别人删除自己的文件 root用户除外

在 malt 创建文件aming 并编辑,在iamalt上可以编辑,但是不可以删除,但是root 除外

技术分享

若在malt上建立的文件aming为777,在malt上是可以修改和删除的

     chmod o+t xxx # 设置stick bit权限,针对目录 

-----------------------------------------------------------------------------------

2.21  软链接 

     不仅可以软链接文件也可以软链接目录,而且可以跨分区。

     软链接文件  如下:

技术分享    技术分享

(1) < ln -s /tmp/yum.log  aming/33.txt > 为 yum.log创建软链接,前面的是真正的文件,后面的软链接文件。

                    yum.log必须存在,  33.txt必须不存在   最好后面的链接为绝对路径!

    技术分享

技术分享     如果一个文件比较大且必须放在某处但是那个盘快满了 可以用软链接方式放在其它盘。


< df -h>查看磁盘空间    

技术分享    技术分享

---------------------------------------------------------------------------------

2.22  硬链接文件 

     不能为目录做硬链接,只能为文件,而且不能跨分区。(有点类似 云备份)

(1) <ln aming/1.txt   aming/1_hard.txt > 创建一个硬链接,相互为硬链接

          硬链接即两个都为皮,真正的内容在inode中,仅有一份,删除时是删的皮。

  <ls -i aming/>   查看 inode    

   技术分享       技术分享

-----------------------------------------------------------------------------------

2.23  Find 指令

     (1) <which  ls >   去环境变量中找

    

     (2) <locate ls >  模糊搜索

          <yum  install -y mlocate>  安装包 支持 locate 指令

技术分享    技术分享

     (3) <whereis ls>

技术分享    技术分享

     (4) Find

       --1. -name  按名字搜索

          <find /etc/   -name   "sshd_config">   在etc/下搜索文件名  "sshd_config"

          <find /etc/   -name   "sshd*">  模糊搜索

      --2. -type   按类型搜索

            <find /etc/   -type   d  -name     "sshd*"> 搜索文件目录名

            <find /etc/   -type   f  -name     "sshd*"> 搜索文件名

            同理还有 类型     l  s   c   b     

       --3. -mtime  -atime  -ctime    按time搜索     最小单位 一天

            <find /etc/   -type   f  -mtime  -1 >    一天以内更改过的文件     +1:一天以前             <find /etc/   -type   f -name   "sshd_config" -o -mtime  -1 >   -o  或者

技术分享    技术分享

       --4.-inum     按inod号所有文件

            <find -inum 231231231  >按inod号搜索

      --5. -mmin  分钟内修改过的   

            <find /root/   -type f -mmin -120>   两小时以内

    技术分享

            <find /root/ -type f -mmin -120 -exec  ls -l {} \; >  查到的信息列出来

    技术分享

<find /root/ -type f -mmin -120 -exec  mv {} {}.bak \;  >   查到的信息输出到文件中  一个{}   注意空格

    技术分享

技术分享     --6. -size   大小

           <find /root/ -type f -size  +10k -exec  ls -lh {} \;  >    大于10k的文件    注意 k 要小写     M要用大写  b要小写

技术分享    技术分享

(5) state     查看文件的3个time 

          <state aming/1.txt>  查看文件详细信息  

         更改文件权限、大小、内容、组等    <chown  777 aming/1.txt>       最近改动:2017-08-12 即为 ctime

         更改文件内容   <echo "123132" aming/1.txt>                                最近更改:2017-08-10 即为 mtime

         访问文件内容   <cat  aming/1.txt>                                                  最近访问:2017-08-10 即为 atime

         修改 mtime 时,ctime一定变了  ;改了 ctime时,mtime不一定变;

技术分享    技术分享

常用快捷键:

ctrl  +L 清屏

ctrl + d 命令行无字符时 退出

ctrl + c 取消

ctrl + u 删除 光标前面的行内容

ctrl + k 删除光标后面的行内容

ctrl + d 命令行有字符时往后删一个

ctrl + e 将光标挪到命令行尾

ctrl + a 将光标挪到命令行首

-----------------------------------------------------------------------------------

2.26  文件后缀

linux下  后缀名 并不代表它是什么文件

-----------------------------------------------------------------------------------

2.27  linux 与windows 文件互传

---在Xshell 可以用,或 securect  ;    putty不能用  ,然后需要一个工具包

  <yum install -y  lrzsz>  安装包支持工具  

  <sz a.txt>  从linux传输到windows

  <rz > 从windows传输到 linux    传到 当前目录      还可以在 Xshell点击工具栏的【新建文件传输】快捷键是ctrl+alt+f。这可能需要用的xshell包含xftp组件才行


本文出自 “Malt's Sky” 博客,转载请与作者联系!

以上是关于跟阿铭学linux   第三课   文件目录管理的主要内容,如果未能解决你的问题,请参考以下文章

跟阿铭学linux   第四课   Linux磁盘管理

跟阿铭学linux   第五课   VIM工具

跟阿铭学linux   第二课   Linux 文件和目录管理

跟阿铭学Linux习题答案

跟阿铭学linux   第二课   Linux 文件和目录管理-指令

《跟阿铭学Linux》第10章 shell基础知识:课后习题与答案