(第二章)基于Linux平台的文件操作、用户管理、用户权限下放

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_38584262/article/details/81539538

一、Linux基础的文件操作命令

1、ls           ###显示文件信息
     -l         ##长列表显示文件信息
     -a         ##显示所有文件
     -s         ##显示文件大小
     -S         ##文件大小排序
     -d         ##显示目录
     -dl        ##显示目录属性
     -R         ##递归显示

2、##通配符##(先建立一些特殊的文件,方便做实验)
 *              ##匹配0~任意字符
 ?              ##匹配单个字符
[[:alpha:]]    ##单个字母


[[:upper:]]    ##单个大写字母
[[:lower:]]    ##单个小写字母


[[:digit:]]    ##单个数字
[[:alnum:]]    ##单个数字或字母


[[:space:]]    ##单个空格
[[:punct:]]    ##单个符号

{1..3}         ##1 2 3  精确匹配
{a..c}         ##a b c

[1-3]          ##1或2或3 模糊匹配
[ac]           ##a或c    
[^ac]          ##除了a和c
[!ac]          ##不是a也不c

剩下的这些比较简单,大家可以自己在虚拟机上练习。

二、用户管理

# 1.系统中为什么要有用户?
用户是系统最底层的安全设定,为了限制权力,也就是回收权力和支配权力的。
# 2.系统中为什么要有组?
为了共享权力。
# 3.可以决定的组成为附加组。不能决定的组称为初始组。(初始组无法更改,所有用户都有初始组,附加组是超级用户给其他组附加的)
# 4.用户和组在系统中以什么形态存在?
系统中的文字,配置文件中以行的形式存在,用来记录信息
#5.用户配置文件
/etc/passwd     ##用户信息文件

用户名称:密码:用户id:组id 用户说明:用户家目录:用户默认使用的shell
/etc/group      ##用户组信息
组名称:组密码:组id :附加组成员
/home/username  ##用户家目录

/etc/skel.*     ##用户骨文件(用户环境配置模板,在用户创建时会自动复制到家目录中)

#6用户的查看

whoami        #查看当前用户名称
id              username      ##查看用户的id信息
id       -u    username      ##查看用户的uid
         -g     username      ##查看用户的gid
         -G     username      ##查看用户所在的所有的组的id
         -n     username      ##以名称显示信息
三、用户的建立和删除和修改

userdel      username  ##删除用户身份
userdel -r   username  ##删除用户身份及用户的系统配置文件

useradd      username  ##使用默认规则建立用户(规则查看/etc/login.defs)
useradd  -u  username  ##指定用户的uid
useradd  -g  username  ##指定用户的初始组id
useradd  -G  username  ##指定用户的附加组id
useradd  -c  username  ##指定用户的说明文字
useradd  -d  username  ##指定用户的家目录
useradd  -s  username  ##指定用户的shell(系统可以用shell可在/etc/shells中查看)
groupadd -g gid groupname  创建组并给出组id  

#6.用户的管理
usermod -l  linux(新用户名称) westos(旧用户名称)    ##改变用户名称
usermod -u  uid   username  ##修改用户uid
usermod -g  21 westos         ##修改初始组id
usermod -G  25 westos         ##更改附加组
usermod -aG                          ##增加附加组
usermod -G  "" westos          ##清除所有附加组
usermod -c  test westos       ##改变用户说明文字
usermod -d  /home/username  ##改变用户存放的位置
usermod -md /home/其他名称   ##连同 家目录一起改变
usermod -s                  ##改变用户shell

7.用户切换
su - username   ##切换用户,高级用户切换到低级用户不需要密码
                ##低级用户切换到高级用户或者切换到平级用户需要后者密码
“注意:”
1、用户切换后及时退出再切换到下一个用户,不退出来回切会使shell出问题
2、su - 表示切换用户身份及用户环境(不加“-”会不改变环境变量,会出错)
echo $PATH

#8.用户的认证信息
/etc/shadow     ##记录用户的认证信息
用户名称:
用户密码:
   @@md5(对称加密) sha512
  (passwd username 是root 用户修改密码)
密码最后一次被修改的时间:
   @@当此位数字为0的用户,在登陆系统时会被强制性修改密码。
   change -d 0 westos
   passwd -e westos
密码最短有效期:
   chage  -m 1 westos
   passwd -n 3 westos
密码最长有效期:
   chage -M 40 westos
   passwd -x 40 westos
密码过期警告:(密码过期前几日进行提醒)
   chage -W 2 westos
密码非活跃期:(密码过期前几日进行提醒)
   chage -I 2 westos
   passwd -i 0 westos
帐号到期日:
   chage -E "2018-11-11" westos    
未设定用户自定义:

四、用户权力的下放
1.配置文件
/etc/sudoers
2.配置命令
visudo    ## 此命令提供语法检测

在/etc/sudoers的第100行左右,加入下列代码


用户名称  主机名称=(执行程序身份)命令        ##当执行命令时需要用户验证
linux11  dns-server.example.com = (root) /usr/sbin/useradd
用户名称  主机名称=(执行程序身份)NOPASSWD: 命令1,命令2  ##当执行命令时不要用户验证
linux11  dns-server.example.com=(root) /usr/sbin/useradd,/usr/sbin/userdel

情况1、如果有错误,则“e” 继续编辑

情况2、su -l  linux11  (跳转到普通用户)

权限下放成功。

猜你喜欢

转载自blog.csdn.net/qq_38584262/article/details/81539538