爱极客专注分享-好玩的docker应用-源码分享

Linux命令手册:用户管理和权限控制

Linux命令手册:用户管理和权限控制

用户管理和权限控制命令目录

  1. 用户账户管理
    useradd、usermod、userdel
  2. 组管理
    groupadd、groupmod、groupdel、getent
  3. 文件权限和所有权
    chmod、chown、chgrp

01用户账户管理

  1. useradd:创建新用户账户。
sudo useradd [用户名] #会创建一个名为[用户名]的新用户。
sudo useradd -m [用户名] #创建用户的主目录。
sudo useradd [用户名]  #会创建一个名为[用户名]的新用户。
sudo useradd -m [用户名]  #创建用户的主目录。
sudo useradd [用户名] #会创建一个名为[用户名]的新用户。 sudo useradd -m [用户名] #创建用户的主目录。
  1. usermod:修改现有用户的账户属性。

基本语法:usermod [options] username

#[options]常用选项
sudo usermod -d /new/home/dir username #更改用户主目录
sudo usermod -p newpassword username #更改用户密码
sudo usermod -s /bin/bash username #更改用户的登录Shell
sudo usermod -L username #锁定用户密码,使其无法登录。
sudo usermod -U username #解锁用户密码,使其可以登录。
#[options]常用选项
sudo usermod -d /new/home/dir username  #更改用户主目录
sudo usermod -p newpassword username  #更改用户密码
sudo usermod -s /bin/bash username  #更改用户的登录Shell
sudo usermod -L username  #锁定用户密码,使其无法登录。
sudo usermod -U username  #解锁用户密码,使其可以登录。
#[options]常用选项 sudo usermod -d /new/home/dir username #更改用户主目录 sudo usermod -p newpassword username #更改用户密码 sudo usermod -s /bin/bash username #更改用户的登录Shell sudo usermod -L username #锁定用户密码,使其无法登录。 sudo usermod -U username #解锁用户密码,使其可以登录。
  1. userdel:删除用户账户。
sudo userdel [用户名] #会删除[用户名]账户。
sudo userdel -r [用户名] #同时删除用户的主目录和邮件目录。
sudo userdel [用户名]  #会删除[用户名]账户。
sudo userdel -r [用户名]  #同时删除用户的主目录和邮件目录。
sudo userdel [用户名] #会删除[用户名]账户。 sudo userdel -r [用户名] #同时删除用户的主目录和邮件目录。

使用 id 命令检查用户名是否已删除。

id [用户名]
id [用户名]
id [用户名]

使用 ls 命令检查主目录是否已删除。

ls -ld /home/[用户名]
ls -ld /home/[用户名]
ls -ld /home/[用户名]

02组管理

  1. groupadd:创建新用户组。
sudo groupadd [组名称] #会创建一个名为[组名称]的新组。
sudo groupadd [组名称]  #会创建一个名为[组名称]的新组。
sudo groupadd [组名称] #会创建一个名为[组名称]的新组。
  1. groupmod:修改用户组名称。
sudo groupmod -n [新组名] [旧组名] #更改组名
sudo groupmod -n [新组名] [旧组名]  #更改组名
sudo groupmod -n [新组名] [旧组名] #更改组名
  1. groupdel:删除用户组。
sudo groupdel [组名称] #删除名为[组名称]的组。
sudo groupdel [组名称]  #删除名为[组名称]的组。
sudo groupdel [组名称] #删除名为[组名称]的组。
  1. getent:查看用户组信息。
getent group #查看所有组信息
getent group [组名称] #查看指定[组名称]信息
getent group  #查看所有组信息
getent group [组名称] #查看指定[组名称]信息
getent group #查看所有组信息 getent group [组名称] #查看指定[组名称]信息

03文件权限和所有权

  1. ls -l:查看文件或者目录的当前权限。
ls -l [文件名或目录名]
ls -l [文件名或目录名]
ls -l [文件名或目录名]
  1. chmod:更改文件或目录的权限。这个命令很重要,很常用。我这里篇幅有限,建议大家自行拓展学习一下。

三种用户类别:所有者用户u、组用户g、其他用户o。
三种用户权限:读、写、执行
用符号标记为:r , w , x
用数字标记为:4 , 2 , 1

(1)符号法设置权限。

#将[文件]的权限设置为所有者可读写,组可读,其他用户无权限。
chmod u=rw,g=r,o= [文件]
#添加[文件]所有用户类别(所有者、组、其他)的执行权限。
chmod a+x [文件] # a表示所有用户类别,x表示执行权限
#移除[文件]组用户的写权限。
chmod g-w [文件] # g表示组用户,w表示写权限
#将[文件]的权限设置为所有者可读写,组可读,其他用户无权限。
chmod u=rw,g=r,o= [文件]
#添加[文件]所有用户类别(所有者、组、其他)的执行权限。
chmod a+x [文件]  # a表示所有用户类别,x表示执行权限
#移除[文件]组用户的写权限。
chmod g-w [文件]  # g表示组用户,w表示写权限
#将[文件]的权限设置为所有者可读写,组可读,其他用户无权限。 chmod u=rw,g=r,o= [文件] #添加[文件]所有用户类别(所有者、组、其他)的执行权限。 chmod a+x [文件] # a表示所有用户类别,x表示执行权限 #移除[文件]组用户的写权限。 chmod g-w [文件] # g表示组用户,w表示写权限

(2)数字法设置权限。

chmod 761 script.sh
chmod 761 script.sh
chmod 761 script.sh

这条命令使用数字761标记权限:7=4+2+1,代表用户拥有读、写、执行三种权限;6=4+2,代表用户组拥有读、写两种权限;1代表其他用户只拥有执行一种权限。依此类推,一共有0、1、2、3、4、5、6、7等八种权限,最高权限是777。

(3)递归地修改权限

chmod -R 761 mydir #递归地更改目录及其内容的权限。
chmod -R 761 mydir  #递归地更改目录及其内容的权限。
chmod -R 761 mydir #递归地更改目录及其内容的权限。
  1. chown:更改文件或目录的所有者。
#将[文件或目录]的所有者更改为[用户名]
sudo chown [用户名] [文件或目录]
#递归将[文件或目录]及其所有子文件和子目录的所有者更改为[用户名]
sudo chown -R [用户名] [文件或目录]
#将[文件或目录]的所有者更改为[用户名]
sudo chown [用户名] [文件或目录]


#递归将[文件或目录]及其所有子文件和子目录的所有者更改为[用户名]
sudo chown -R [用户名] [文件或目录]
#将[文件或目录]的所有者更改为[用户名] sudo chown [用户名] [文件或目录] #递归将[文件或目录]及其所有子文件和子目录的所有者更改为[用户名] sudo chown -R [用户名] [文件或目录]
  1. chgrp:更改文件或目录的所属组。
sudo chgrp [新组名] [文件或目录] #所属组更改为[新组名]。
sudo chgrp -R [新组名] [文件或目录] #递归更改目录及其内容的所属组
sudo chgrp [新组名] [文件或目录]  #所属组更改为[新组名]。
sudo chgrp -R [新组名] [文件或目录]  #递归更改目录及其内容的所属组
sudo chgrp [新组名] [文件或目录] #所属组更改为[新组名]。 sudo chgrp -R [新组名] [文件或目录] #递归更改目录及其内容的所属组
© 版权声明
THE END
喜欢就支持一下吧
点赞6赞赏 分享
Change your thoughts and you change your world.
改变你的思想,你就能改变自己的命运
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片快捷回复

    暂无评论内容