爱程序网

linux运维笔记(4) - 变量、环境配置文件、基本权限、高级权限

来源: 阅读:

  • 一、变量
     1.环境变量 export
          特点:子进程可以继承(比如在当前终端下执行bash,即为子进程,可以访问环境变量)
     2.普通变量
          子进程不能继承
以上两种变量都不能被其他终端访问
     3.变量访问命令
        1) set: 所有的环境变量和非环境变量都记录下来
        2) env: 只能记录不包含普通变量的所有变量(包含export)

  • 二、环境配置文件
     1.用户家目录下有四个隐藏文件
          1) .bash_history 命令记录文件
          2) .bash_logout  退出时执行的命令文件
          3) .bash_rc        保存用户的别名函数、变量的文件
          4) .bash_profile  保存当前用户bin执行路径
     问: 后面两个文件作用相同互相通用,为什么还要写两个文件呢?
     答: 起到作用的时间不同, .bashrc是shell级别的,开个终端就生效
           .bash_profile 是登录级别的
     
     2. 全局配置文件,针对所有用户的配置文件
         1) /etc/bashrc 作用同用户家目录下 .bash_rc
         2) /etc/profile  作用同用户家目录下 .bash_profile
 Q1:
      在.bash_logout、.bash_rc、 .bash_profile、/etc/bashrc、/etc/profile分别echo 一段消息,然后再登录查看其加载顺序?
      答:加载顺序为:  /etc/profile、.bash_profile、.bashrc /etc/bashrc
 Q2:
       定义一个别名函数,让所有用户都可以使用?
      答: vim /etc/bashrc 加入 alias showpath="pwd"
 Q3:
       robin用户退出时,将robin用户退出的时间记录到tmp目录下?
      答: vim /home/robin/.bash_logout 加入date>>/tmp/robin.date
  Q4:
       修改robin用户的搜索命令路径,添加一个tmp路径?
      答: vim /home/robin/.bash_profile 给PATH加入:/tmp

  •  三、权限管理
      1. 基本权限
         rwx         |        rwx        |       rwx
      拥有者(u)          所属组(g)        其他人(o)
      对于文件:
         r ---- cat head more less tail
         w---- >、>>、vim
         x ---- ./文件 执行命令
       对于目录:
         r ---- ls(有rx权限才能读取详细信息)
         w---- touch rm 
         x ---- cd
  备注:root(uid=0)最高权限,其他用户需要对比uid是否相同
     2. 修改权限
               chmod 命令(change mode)
               例:chmod 777 file/dir
               例:chmod augo+-rwx file/dir
 
   Q1:写出下列文件和目录的权限
      1) /                    dr-xr-xr-x
      2) /etc                drwxr-xr-x
      3) /etc/passwd    -rw-r--r--
      4) /etc/shadow    ----------
      5) /root               r-xr---w-
      6) /boot              dr-xr-xr-x   
      7) /var                drwxr-xr-x         
      8) /tmp               drwxrwxrwt             
      9) /home/robin    drwx------
      10) root管理员创建的文件默认权限 rw-r--r--
      11) root管理员创建的目录默认权限 rwxr-xr-x
   Q2:创建文件/tmp/aaa/.txt文件,拥有者读写执行权限、所属组没有权限,其他人可以读
        答: 1.touch /tmp/aaa.txt 
             2.chmod 704 /tmp/aaa.txt
     
    3.反掩码(umask),不是减出来的,是去反做&操作得出来的
         
    Q1:请尝试写出创建文件默认权限的计算步骤 
 
                                                    
    Q2:公司财务生成一个报表cw.txt 公司老板可以读 、其他员工没权限、财务组可以读写
 
    Q3: /tmp/aa.txt 默认权限为rw-r--r-- root root
          要求: robin可以读写 uplooking组可读,其他人无权限
 
    Q4: /test rwxr-xr-x root root、/test/aa.txt rw-r--r--
          要求:robin用户可以读写 aa.txt文件 不能删除 zorro用户不可以读写可以删除
    Q5: root目录下有个 abc.txt文件
          以下条件同时满足:
          i  seker可以读写 abc.txt文件不能删除
          ii zorro可以读abc.txt文件 不能删除
          iii shrek 不可以读写abc.txt文件但是可以删除
        
     备注1.:当前所掌握的基本权限,vim工作机制会影响到shrek的操作,
           也就是说当shrek用vim写文件的时候,强行保存退出也是可以写文件的,可以做个实验尝试一下
     备注2: id命令查看用户 信息,主组用于创建文件、附加组用于权限比对,可以做个实验尝试一下
 
 
  2.高级权限
     1) suid 必须作用于文件,可执行的二进制文件(命令)
        作用:任何用户在执行拥有suid权限的命令时,都以该命令着拥有者身份执行(root身份),就像passwd命令修改shadow文件一样
        chmod u+s 文件
     2) sguid 必须作用于目录(加在文件上不会起到作用)
        chmod g+s 目录
        作用:任何用户在拥有sgid的目录下创建的文件,都要继承该目录的组
    实验:
         1. 在/tmp下创建test目录 权限为777,robin用户在test下创建aa.txt文件 所属组是什么? robin
         2. 在test目录上添加sgid权限,robin用户在test下创建tt.txt文件 所属组是什么?             root
         3. 修改test的所属组为uplooking,robin用户在test下创建yy.txt文件 所属组是什么?       uplooking.
               已经创建的文件的所属组是什么会不会改变?                                                    不会
     3) sticky t 粘帖位 冒险位 作用于目录
          作用:只能拥有者删除自己创建的文件
         chmod o+t
     实验:在/tmp 创建test目录 权限777
         1.tom在/tmp/test下创建文件aa.txt,jerry能删除吗         
         2.给test添加t权限,tom再创建一个文件jerry能删除吗   不能
         3.tom创建一个cc.txt root能删除吗                              
         4.创建用户robin修改tmp/test目录拥有者为robin,robin用户可以删除吗tom和jerry创建的文件吗 
    suid   --  4(作用于文件)
    sgid   --  2(作用于目录)
    sticky --  1(作用于目录)
    以上权限位,不可能同时出现
    4777,3777,2777,1777
 
  备注: 如果原文件有执行权限,高级权限表现为小写,否则高级权限表现为大写
         

关于爱程序网 - 联系我们 - 广告服务 - 友情链接 - 网站地图 - 版权声明 - 人才招聘 - 帮助