Linux的用户及用户组管理

Linux是个多用户多任务的分时操作系统,所有一个要使用系统资源的用户都必须先向系统管理员申请一个账号,然后以这个账号的身份进入系统。用户的账号一方面能帮助系统管理员对使用系统的用户进行跟踪,并控制他们对系统资源的访问;另一方面也能帮助用户组织文件,并为用户提供安全性保护。每个用户账号都拥有一个惟一的用户名和用户口令。用户在登录时键入正确的用户名和口令后,才能进入系统和自己的主目录。

添加用户命令示例:useradd  test_user   即可创建用户test_user

用法:useradd [选项] 登录

useradd -D

useradd -D [选项]

选项:

-d, --home-dir HOME_DIR       新账户的主目录

-D, --defaults                显示或更改默认的 useradd 配置

-g, --gid GROUP               新账户主组的名称或 ID

-G, --groups GROUPS   新账户的附加组列表

-h, --help                    显示此帮助信息并推出

-m, --create-home     创建用户的主目录

-M, --no-create-home          不创建用户的主目录

-N, --no-user-group   不创建同名的组

-p, --password PASSWORD               加密后的新账户密码

-r, --system                  创建一个系统账户

-R, --root CHROOT_DIR         chroot 到的目录

-s, --shell SHELL             新账户的登录 shell

-u, --uid UID                 新账户的用户 ID

-U, --user-group              创建与用户同名的组

-Z, --selinux-user SEUSER     为 SELinux 用户映射使用指定 SEUSER

为新建用户设置密码:passwd test_user

添加用户组:groupadd test_user

修改用户信息:usermod

修改组信息:groupmod

删除用户:userdel -r test_user

删除组:groupdel 组名

更改文件或目录所属:chown -R 所属主:所属组 文件或目录

更改文件或目录权限:chmod -R 777/a+x/g-w/o=-  文件或者目录

作业一:

1) 新建用户natasha,uid为1000,gid为555,备注信息为“master”

[root@bogon /]# useradd -u 1000 -g 555 -c master natasha

2)修改natasha用户的家目录为/Natasha

[root@bogon /]# mkdir /Natasha

[root@bogon /]# usermod -d /Natasha

[root@bogon /]# usermod -d /Natasha natasha

3) 查看用户信息配置文件的最后一行

[root@bogon /]# tail -1 /etc/passwd

4) 为natasha用户设置密码“123”

[root@bogon /]# passwd natasha

更改用户 natasha 的密码 。

新的 密码:

无效的密码: 密码少于 8 个字符

重新输入新的 密码:

passwd:所有的身份验证令牌已经成功更新。

[root@bogon /]#

5) 查看用户密码配置文件的最后一行

[root@bogon /]# tail -1 /etc/shadow

natasha:$6$wxwWQn0F$aR3nYxYj1KBGZh6z0zwudpCUF6sY7v45mZ7vq4Ji16ZlDBcssMNlhCpXoNzO4OZQE7aDt64Oz571xMbMJ05Tx0:17240:0:999    99:7:::

6) 将natasha用户账户锁定

[root@bogon /]# usermod -L natasha

7) 将natasha用户账户解锁

[root@bogon /]# usermod -U natasha

8) 新建组police,gid为999

[root@bogon /]# groupadd -g 999 police

注:此处gid为999的是另外一个组名,将其修改为其他后新建此组,修改文件为/etc/group

9) 查看组配置文件的最后一行

[root@bogon /]# tail -1 /etc/group

police:x:999:

10) 将natasha用户加入police组

[root@bogon /]# usermod  -G police natasha

[root@bogon /]# id natasha

uid=1000(natasha) gid=555(natasha) 组=555(natasha),999(police)

11) 修改police组的组名为jingcha

[root@bogon /]# groupmod -n jingcha police

12) 删除natasha用户,连家目录和邮箱一起删除

[root@bogon /]# userdel -rf natasha

13) 删除jingcha组

[root@bogon /]# groupdel jingcha

作业二:

1) 在用户的主目录下创建目录test,进入test创建空文件file1

[root@bogon ~]# cd ~

[root@bogon ~]# mkdir test

[root@bogon ~]# cd test

[root@bogon test]# touch file1

[root@bogon test]#

2)以长格式形式显示文件信息,注意文件的权限和所属用户和组

[root@bogon test]# ls -l file1

-rw-r--r--. 1 root root 0 3月  15 16:13 file1

3)为文件file1设置权限,使其他用户可以对此文件进行写操作。

[root@bogon test]# chmod o+w file1

4)查看设置结果,

[root@bogon test]# ll

总用量 0

-rw-r--rw-. 1 root root 0 3月  15 16:13 file1

5)取消同组用户对文件file1的读取权限,并查看设置结果。

[root@bogon test]# chmod g-r file1

[root@bogon test]# ll

总用量 0

-rw----rw-. 1 root root 0 3月  15 16:13 file1

[root@bogon test]#

6)用数字表示法为文件file设置权限,所有者可读、可写、可执行,所属组用户和其他用户只具有读和执行的权限。设置完成后查看设置结果。

[root@bogon test]# chmod 755 file1

[root@bogon test]# ll

总用量 0

-rwxr-xr-x. 1 root root 0 3月  15 16:13 file1

7)用数字形式更改文件file1的权限,使所有者只能读取此文件。其他任何用户都没有权限。查看设置结果。

[root@bogon test]# chmod 400 file1

[root@bogon test]# ll

总用量 0

-r--------. 1 root root 0 3月  15 16:13 file1

[root@bogon test]#

8)回到上层目录,查看test的权限

[root@bogon ~]# ls -dl test

drwxr-xr-x. 2 root root 19 3月  15 16:13 test

9)为其他用户添加对此目录的写权限

[root@bogon ~]# chmod o+w test

[root@bogon ~]# ls -dl test

drwxr-xrwx. 2 root root 19 3月  15 16:13 test

[root@bogon ~]#

作业三:

以操作文件的方式,新建一个用户alex

[root@bogon ~]# mkdir /home/alex                      #创建家目录

[root@bogon ~]# cp -r /etc/skel/.[!.]* /home/alex     #拷贝默认初始文件

[root@bogon ~]# tail -1 /etc/passwd

oprofile:x:16:16:Special user account to be used by OProfile:/var/lib/oprofile:/sbin/nologin

[root@bogon ~]# echo "alex:x:1005:1005::/home/alex:/bin/bash" >>/etc/passwd  #以追加的方式在用户文件末尾增加账号信息

[root@bogon ~]# tail -1 /etc/passwd

alex:x:1005:1005::/home/alex:/bin/bash

[root@bogon ~]# vim /etc/shadow                         #修改账号密码文件

文件末尾追加alex:!!:17240:0:99999:7:::然后退出保存

[root@bogon ~]# vim /etc/group                          #修改组文件

文件末尾追加alex:x:1007:然后保存退出

[root@bogon ~]# vim /etc/gshadow                        #修改组密码

文件末尾追加alex:!::然后保存退出

[root@bogon ~]# chown -R alex:alex /home/alex           #改变alex家目录的所属主和所属组

[root@bogon ~]# touch /var/spool/mail/alex              #为新账号新建邮箱

[root@bogon ~]# chown -R alex:mail /var/spool/mail/alex #修改alex的邮箱所属主是alex组是mail

作业四:

1) 新建目录/test/dir,属主为tom,数组为group1,/test目录的权限为777

[root@bogon ~]# mkdir -p /test/dir

[root@bogon ~]# groupadd group1

[root@bogon ~]# useradd tom

[root@bogon ~]# chown -R tom:group1 /test/dir

[root@bogon ~]# ls -al /test/dir

总用量 0

drwxr-xr-x. 2 tom  group1  6 3月  15 16:44 .

drwxr-xr-x. 3 root root   17 3月  15 16:44 ..

[root@bogon ~]# ls -al /test

总用量 0

drwxr-xr-x.  3 root root    17 3月  15 16:44 .

dr-xr-xr-x. 20 root root   277 3月  15 16:44 ..

drwxr-xr-x.  2 tom  group1   6 3月  15 16:44 dir

[root@bogon ~]#

[root@bogon ~]# chmod 777 /test

[root@bogon ~]# ls -dl /test

drwxrwxrwx. 3 root root 17 3月  15 16:44 /test

2) 新建用户jack,切换到jack用户下,验证jack用户对dir目录的rwx权限(开启另外一个终端,依次修改dir目录的others权限)

[jack@bogon test]$ ls -dl dir

drwxr-xr-x. 2 tom group1 6 3月  15 16:44 dir

3)将jack加入group1组,验证jack用户对dir目录的rwx权限(开启另外一个终端,依次修改dir目录的group权限)

[root@bogon ~]# usermod -a -G group1 jack

[root@bogon ~]# id jack

uid=1008(jack) gid=1008(jack) 组=1008(jack),10000(group1)

[root@bogon ~]# su - jack

上一次登录:三 3月 15 16:49:55 CST 2017pts/0 上

[jack@bogon ~]$ cd /test

[jack@bogon test]$ ls

dir

[jack@bogon test]$ ls -dl dir

drwxr-xr-x. 2 tom group1 6 3月  15 16:44 dir

[jack@bogon test]$ cd dir

[jack@bogon dir]$ ls

[jack@bogon dir]$

4)切换到tom用户,验证tom用户对dir目录的rwx权限(开启另外一个终端,依次修改dir目录的user权限)

[root@bogon ~]# su - tom

Attempting to create directory /home/tom/perl5

[tom@bogon ~]$ cd /test

[tom@bogon test]$ ls

dir

[tom@bogon test]$ cd dir

[tom@bogon dir]$ ls

[tom@bogon dir]$

5)在dir目录内新建文件tom.txt,属主为tom,属组为group1,/test目录的权限为777

[root@bogon ~]# cd /test/dir

[root@bogon dir]# ls

tom.txt

[root@bogon dir]# ls

tom.txt

[root@bogon dir]# ls -l

总用量 0

-rw-rw-r--. 1 tom tom 0 3月  15 17:01 tom.txt

[root@bogon dir]# chown tom:group1 tom.txt

[root@bogon dir]# ls -l

总用量 0

-rw-rw-r--. 1 tom group1 0 3月  15 17:01 tom.txt

[root@bogon dir]#

6)新建用户rose,切换到rose用户下,验证rose用户对tom.txt的rwx权限(开启另外一个终端,依次修改tom.txt的others权限来配合验证过程)

[root@bogon /]# useradd rose

[root@bogon /]# passwd rose

更改用户 rose 的密码 。

新的 密码:

无效的密码: 密码少于 8 个字符

重新输入新的 密码:

抱歉,密码不匹配。

新的 密码:

无效的密码: 密码少于 8 个字符

重新输入新的 密码:

passwd:所有的身份验证令牌已经成功更新。

[jack@bogon dir]$ su - rose

密码:

最后一次失败的登录:三 3月 15 11:30:40 CST 2017tty2 上

最有一次成功登录后有 1 次失败的登录尝试。

Attempting to create directory /home/rose/perl5

[rose@bogon ~]$

[rose@bogon ~]$ cd /test/dir

[rose@bogon dir]$ ls

tom.txt

[rose@bogon dir]$ cat tom.txt

[rose@bogon dir]$ id rose

uid=1009(rose) gid=1009(rose) 组=1009(rose)

[rose@bogon dir]$ cat tom.txt

this is tom write

[rose@bogon dir]$

[root@bogon /]# chmod o+w /test/dir/tom.txt

[rose@bogon dir]$ vim tom.txt

[rose@bogon dir]$ cat tom.txt

this is tom write

this is rose write

7)将rose加入group1组,在rose用户下,验证rose用户对tom.txt的rwx权限(开启另外一个终端,依次修改tom.txt的group1权限来配合验证过程)

[root@bogon /]# usermod -a -G group1 rose

[rose@bogon dir]$ cat tom.txt

this is tom write

this is rose write

[root@bogon /]# chmod 600 /test/dir/tom.txt

[rose@bogon dir]$ cat tom.txt

cat: tom.txt: 权限不够

8)切换到tom用户,验证tom用户对tom.txt的rwx权限(开启另外一个终端,依次修改tom.txt的user权限来配合验证过程)

[tom@bogon ~]$ cd /test/dir

[tom@bogon dir]$ ls

tom.txt

[tom@bogon dir]$ cat tom.txt

this is tom write

this is rose write

[tom@bogon dir]$ vim tom.txt

[tom@bogon dir]$ cat t

cat: t: 没有那个文件或目录

[tom@bogon dir]$ cat tom.txt

this is tom write

this is rose write

test over

[tom@bogon dir]$

[root@bogon /]# chmod 000 /test/dir/tom.txt

[tom@bogon dir]$ cat tom.txt

cat: tom.txt: 权限不够

总结:至此关于文件和目录的权限操作步骤已经练习完成,之所以说Linux是一个安全性较高的系统,就是因为Linux对系统文件的权限管理比较完善,在linux系统中一切皆文件,目录也可以看成是一个文件,跟文件一样,也可以修改其所属主和所属组的读写以及执行权限。关于文件及目录权限的管理在今后的生产环境中会经常遇到,希望大家细心处理不要弄错了!

本文转自 AltBoy 51CTO博客,原文链接:http://blog.51cto.com/altboy/1906952

Python学习第四天----Linux之用户与用户组权限相关推荐

  1. 2019/12/11学习内容摘要(Linux系统用户与用户组管理①)

    一,认识/etc/passwd和/etc/shadow 1. /etc/passwd :文件中保存系统中所有的用户和用户的主要信息. 在命令行输入 cat /etc/passwd  | head  ( ...

  2. LINUX学习基础篇(十七)用户与用户组

    LINUX学习基础篇(十七)用户与用户组 用户相关文件 /etc/passwd 用户信息文件 /etc/shadow 影子文件 /etc/group 组信息文件 其他用户有关文件 用户管理命令 use ...

  3. linux管理用户和文件权限

    第四章:管理用户和文件权限实验报告 1           实验案例一:用户和文件权限管理 1.1          实验环境: 公司的Linux主机即将提供给技术部作为开发服务器使用,根据部门内项目 ...

  4. linux系统用户,组和权限的管理

    PS: {最近一直在做毕业设计,前面博客也记录过我的一些过程.其中需要在Ubuntu上搭建一个FTP服务器,此处我选择Vsftpd,但是在我对vsftpd的配置文件vsftpd.conf设置正确后(对 ...

  5. Linux查看用户所属用户组

    1.查看当前用户所属用户组 [oracle@serverhl ~]$ groups oinstall dba 2.查看<user1>, <user2> 和 <user3& ...

  6. MySQL学习笔记07【事务、用户管理和权限管理】

    MySQL 文档-黑马程序员(腾讯微云):https://share.weiyun.com/RaCdIwas 1-MySQL基础.pdf.2-MySQL约束与设计.pdf.3-MySQL多表查询与事务 ...

  7. linux新建用户,用户组,以及权限的分配(摘自博客园)

    linux新建用户,用户组,以及权限的分配 原文url:https://www.cnblogs.com/clicli/p/5943788.html Linux 系统是一个多用户多任务的分时操作系统,任 ...

  8. Linux的用户和用户组管理(转)

    Linux系统是一个多用户多任务的分时操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统.用户的账号一方面可以帮助系统管理员对使用系统的用户进行跟 ...

  9. linux中用户组和用户,linux中用户和用户组

    一.用户和组原理 一个用户可以属于多个组,一个组有多个用户 在Linux中操作系统必须依赖组和用户进行管理 二.与用户和组相关的配置文件 1.组相关配置文件 1)/etc/group :管理用户组信息 ...

最新文章

  1. git的常用操作(个人整理使用)
  2. 算法基础知识(考试复习)
  3. form中的fieldset标签应用
  4. Effective Python笔记
  5. PostgreSQL主要优势
  6. JQuery easyui (1) Draggable(拖动)组件
  7. 电脑端微信多开操作方法
  8. little VGL Visual Studio 模拟器仿真
  9. C语言,最新猴子摘桃(递归方法)
  10. Windows系统的重要文件目录
  11. 服务器显示ipv4有两个ip地址,ipconfig命令后为什么出现两个IPV4地址?
  12. 3DMAX游戏角色装备腿部护甲建模教程(二)
  13. 牛客剪刀石头布Java 模拟+贪心
  14. 计算机无法u盘启动,uefi模式下U盘启动不了解决方法
  15. 安卓与“Proguard”——安卓的代码混淆
  16. 有个问题,win10系统,网络诊断,将来会自动连接到jinling,什么意思?
  17. 软件测试|最全的Python for循环和while循环使用介绍
  18. python3__深度学习__受限玻尔兹曼机
  19. 苹果android怎么升级,微信系统大升级,苹果安卓手机如何升级更新为最新版微信8.0?...
  20. 7-35 城市间紧急救援 (25 分)

热门文章

  1. [Asp.net]绝对路径和相对路径
  2. 民族、学历学位、所学专业、、专业技术职务 对应表
  3. 北信源IPO,拟筹资开发企业级云安全管理平台
  4. 互联网公装企业“inDeco领筑智造”完成A+B轮近1.1亿元融资
  5. Learun对快速开发平台的基本认知与设定
  6. CSS如何修改placeholder样式
  7. pm2常用的命令用法介绍
  8. bzoj-1026 windy数
  9. valgrind的说明使用和原理
  10. virtualbox添加slic2.