首页 > 代码库 > 4.2权限管理

4.2权限管理

权限管理:

r:

w:

x:

三类用户

u

g


chown 改变文件属主的(只有管理员可以使用此命令)

# chown USENAME FILE,...

         (属主)

#chown -ld /tmp/hi  (查看目录要加d选项)

   -R 修改目录及其内部文件的属主

   --reference=/path/to/somefile file,... 把file的属主和属组改为参考

                                          文件一样

chown USERNAME:GRPNAME file,...

chown :GRPNAME file,...

chown USERNAME.GRPNAME file,...


chgrp GRPNAME file,...

    -R

    --reference=/path/to/somefile file,... 


chmod:修改文件的权限

修改三类用户的权限

chmod MODE file,...

     -R

     --reference = /path/somefile file,...

chmode 750 /tmp/abc


修改某类用户或某些类用户权限

u,g,o,a

chmod 用户类型=MODE file,...

chmod u=rwx /tmp/abc

chmod go=rw /tmp/abc

修改某类用户的某位或某些位权限

u g o a 

chmod  用户类别+/-MODE file...

chmode u-x /tmp/abc

chmode u-x,g-x /tmp/abc

chmode +x /tmp/abc = chmode a+x /tmp/abc

chmode u-wx /tmp/abc


练习:

1 新建一个没有家目录的用户openstack

 useradd -M openstack

2 复制/etc/skel为/home/openstack

 cp -r /etc/skel /home/openstack

3 改变/home/openstack及其内部文件的属主属组均为openstack

 chown -R openstack:openstack /home/openstack

4 /home/openstack及其内部的文件,属组和其它用户没有任何访问权限

 chmod -R go= /home/openstack



umask:遮罩码

666-umask 文件

777-umask 目录


022 root

002 普通

# umask

# umask 022


文件默认不能有执行权限,如果算得的结果中有执行权限,则将其权限加1

# umask 023

文件:666 - 023 =643 =》644

目录:777 - 023 =754


# umask 027

文件:666 - 027 =640 

目录:777 - 027 =750


站在用户登录的角度来说,SHELL的类型:

登录式shell

    正常通过某终端登录

    su - USERNAME

    su -l,USERNAME 切换过去


非登录式shell

    su USERNAME

    图形终端下打开命令窗口

    自动执行的shell脚本


bash的配置文件

全局配置

  /etc/profile  /etc/profile.d/*.sh  /etc/bashrc

个人配置

  ~/.bash_profile  ~/.bashrc


profile类的文件

  设定环境变量

  运行命令或脚本


bashrc类的文件

  设定本地变量

  定义命令别名


登录式shell如何读取配置文件?

/etc/profile ---> /etc/profile.d/*.sh --> ~/.bash_profile  --> ~/.bashrc --> /etc/bashrc


非登录式shell如何读取配置文件?

~/.bashrc --> /etc/bashrc --> /etc/profile.d/*.sh

   帮忙读取/etc/bashrc


bash 脚本解释器


手动添加用户 hive 基本组为hive (5000) 附加组为mygroup

nano /etc/group

最后添加

  hive :x:5000:

  group后添加hive


nano /etc/passwd

hive:x:5000:5000:Hive:/home/hive:/bin/bash


nano /etc/shadow

hive:!!:15765:0:999999:7:::

(bc计算器命令date +%s) quit  scale=2 保留2位精度


提供家目录:

cp -r /etc/skel/ /home/hive

修改属主和属组

chown -R hive.hive /home/hive/

让go没权限

chmod -R go= /home/hive/


su - hive


openssl passwd -1(数字) -salt ‘12345678‘



4.2权限管理