4、linux建组

一 手动创建用户流程

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

vim /etc/passwd

natasha:x:1000:555:master:/home/Natasha:/bin/bash

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

[[email protected] ~]# vim /etc/passwd
[[email protected] ~]# vim /etc/shadow
[[email protected] ~]# vim /etc/group
[[email protected] ~]# vim /etc/gshadow
[[email protected] ~]# mkdir /home/Natasha
[[email protected] ~]# ls -a /home/Natasha/
. ..

[[email protected] ~]# cp -r /etc/skel/.[!.]* /Natasha/

[[email protected] ~]# touch /var/spool/mail/Ntasha

[[email protected] ~]# id natasha
uid=1000(natasha) gid=555(natasha) 组=555(natasha)

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

[[email protected] ~]# tail -1 /etc/passwd
natasha:x:1001:555:master:/home/Natasha:/bin/bash

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

[[email protected] ~]# passwd natasha
更改用户 natasha 的密码 。
新的 密码:
无效的密码: 密码少于 8 个字符
重新输入新的 密码:
passwd:所有的身份验证令牌已经成功更新。

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

[[email protected] ~]# tail -1 /etc/shadow
natasha:$6$J9U/RNhi$YKp4XbjYxqhZo1QdFbS62hRzN5wGXxfUcGx80iJBIFuNcJSXeSZQ.Q2m8X/FeEECzK5EEQ0ooo3ivKymyL2Az0:17310:0:99999:7:::

6)  将natasha用户账户锁定

[[email protected] ~]# usermod -L natasha

7)  将natasha用户账户解锁

[[email protected] ~]# usermod -U natasha

8)  新建组police,gid为999

[[email protected] ~]# groupadd -g 999 police

police:x:999:

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

[[email protected] ~]# tail -1 /etc/group
police:x:999:

10) 将natasha用户加入police组

[[email protected] ~]# usermod natasha -G police
[[email protected] ~]# id natasha
uid=1000(natasha) gid=555(natasha) 组=555(natasha),999(police)

11) 修改police组的组名为jingcha

[[email protected] ~]# groupmod -n jingcha police
[[email protected] ~]# tail -1 /etc/group
jingcha:x:999:natasha

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

userdel -r natasha

13) 删除jingcha组

[[email protected] ~]# groupdel jingcha
id[[email protected] ~]# tail /etc/group
sshd:x:74:
avahi:x:70:
slocate:x:21:
postdrop:x:90:
postfix:x:89:
stapusr:x:156:
stapsys:x:157:
stapdev:x:158:
tcpdump:x:72:
love:x:1000:love

二 创建目录test

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

[[email protected] ~]# mkdir test
[[email protected] ~]# cd test
[[email protected] test]# touch file1

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

[[email protected] test]# ll
总用量 0
-rw-r--r--. 1 root root 0 5月 25 04:07 file1

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

[[email protected] test]# chmod o+w file1

4)  查看设置结果,

[[email protected] test]# ll
总用量 0
-rw-r--rw-. 1 root root 0 5月 25 04:07 file1

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

[[email protected] test]# chmod g=- file1
[[email protected] test]# ll
总用量 0
-rw----rw-. 1 root root 0 5月 25 04:07 file1

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

[[email protected] test]# chmod 733 file1
[[email protected] test]# ll
总用量 0
-rwx-wx-wx. 1 root root 0 5月 25 04:07 file1

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

[[email protected] test]# chmod 400 file1
[[email protected] test]# ll
总用量 0
-r--------. 1 root root 0 5月 25 04:07 file1

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

[[email protected] test]# cd ..
[[email protected] ~]# ll d test
ls: 无法访问d: 没有那个文件或目录
test:
总用量 0
-r--------. 1 root root 0 5月 25 04:07 file1

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

[[email protected] ~]# chmod o+w test/

[[email protected] ~]# ll -d test
drwxr-xrwx. 2 root root 19 5月 25 04:07 test

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

1、[[email protected] ~]# vim /etc/passwd   ----->1,2 ---->编辑用户文件2、[[email protected] ~]# tail -1 /etc/passwd            添加新用户,查看操作      alex:1111:1111::/home/alex:/bin/bash

3、[[email protected] ~]# vim /etc/shadow   ----->3,4 ---->编辑用户密码

4、[[email protected] ~]# tail -1 /etc/shadow           文件,查看操作
        alex:!!:17310:0:99999:7:::

5、[[email protected] ~]# vim /etc/group  ------->5,6 ----->编辑组文件

6、[[email protected] ~]# tail -1 /etc/group                       查看操作

alex:x:1111:

7、[[email protected] ~]# vim /etc/gshadow  ---->7,8 --->编辑组密码文件

8、[[email protected] ~]# tail -1 /etc/gshadow                  查看操作

        alex:!::

9,10,11------>常见文件,把用户模板复制给alex用户

9、[[email protected] ~]# mkdir /home/alex

10、[[email protected] ~]# cp -r /etc/skel/.[!.]* /home/alex

11、[[email protected] ~]# ls -a /home/alex
         . .. .bash_logout .bash_profile .bashrc .mozilla

12,13,14---->由于用户alex是‘root’用户创建,更改用户属主与属组,

                          改为alex

12、[[email protected] ~]# ll -d /home/alex

drwxr-xr-x. 3 alex alex 78 5月 25 06:47 /home/alex

13、[[email protected] ~]# chown -R alex:alex /home/alex

14、[[email protected] ~]# touch /var/spool/mail/alex

15,16,17----->创建用户邮箱,由于用户alex是‘root‘用户创建,更改属主与属组分别为alex、mail

15、[[email protected] ~]# chown -R alex:mail /var/spool/mail/alex

16、[[email protected] ~]# ll -d /var/spool/mail/alex
         -rw-r--r--. 1 alex mail 0 5月 25 06:56 /var/spool/mail/alex

17、[[email protected] ~]# id alex
         uid=1111(alex) gid=1111(alex) 组=1111(alex)

四 验证权限

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

[[email protected] ~]# mkdir -p /test/dir
[[email protected] ~]# ll -d /test/dir
drwxr-xr-x. 2 root root 6 5月 25 22:26 /test/dir

[[email protected] ~]# useradd tom

[[email protected] ~]# groupadd group1

[[email protected] ~]# chown tom:group1 /test/dir/
[[email protected] ~]# ll -d /test/dir
drwxr-xr-x. 2 tom group1 6 5月 25 22:26 /test/dir

[[email protected] ~]# chmod 777 /test
[[email protected] ~]# ll -d /test
drwxrwxrwx. 3 root root 17 5月 25 22:26 /test

2) [[email protected] tmp]# mkdir test

[[email protected] ~]# cd /tmp
[[email protected] tmp]# mkdir test
3) [[email protected] tmp]# ll -d test

[[email protected] tmp]# ll -d test

4) drwxr-xr-x. 2 root root 6 5月 25 08:32 test

drwxr-xr-x. 2 root root 6 5月 25 22:40 test
2) 新建用户jack,切换到jack用户下,验证jack用户对dir目录的rwx权限(开启另外一个终端,依次修改dir目录的others权限)

[[email protected] tmp]# useradd jack

[[email protected] tmp]# id jack
uid=1009(jack) gid=1011(jack) 组=1011(jack)

[[email protected] tmp]# su - jack
[[email protected] ~]$ ll /test/dir/
总用量 0

[[email protected] ~]# chmod o+w /test/dir/

[[email protected] ~]$ touch /test/dir/a.txt
[[email protected] ~]$ ll -d /test/dir/a.txt
-rw-rw-r--. 1 jack jack 0 5月 25 22:52 /test/dir/a.txt

[[email protected] ~]$ cd /test/dir/
[[email protected] dir]$ cd -
/home/jack

[[email protected] ~]# echo "date" > /test/dir/a.txt

[[email protected] ~]# chmod o-x /test/dir/
[[email protected] ~]# chmod o-r /test/dir/

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

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

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

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

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

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

时间: 2024-08-28 16:16:20

4、linux建组的相关文章

分析Linux的组和用户

1.前言 这一周,学习了LINUX的用户和组管理,接触到了很多新的东西,脑袋里面的知识有点乱,准备写一篇博客,理一理思路. 2.一些观点 第一,无论是WINDOWS的GUI,还是LINUX的COMMAND LINE,用户的请求最终将这样实现: USER-->PROCESS-->KENEL 也就是说,进程将代理用户的请求,和操作系统打交道.每一个进程应该带有一个用户标示. 第二,我们知道,一旦启动操作系统,即便我们不登陆,很显然有些进程(或者说服务)也会在后台运行的.那么这些进程的用户标示是什么

linux文件组、权限等

文件所有者.所在组合其他组  --改变用户所在组    组和在oa系统中的组差不多,用户代表的好像是个体,组有点像角色的意思.不过权限的话并不是个体从组中获得,组仅仅是一个机制,进行部分文件控制与共享,管理权限的机制,有点类似一个容器.            如何在linux中添加组    groupadd policeman       在添加用户时,指定将某个用户添加到哪个组中    useradd -g 组名 用户名 root权限改变某个用户所在的组:    usermod -g 组名 用

Linux进程组和会话

Linux的进程相互之间有一定的关系.比如说,每个进程都有父进程,而所有的进程以init进程为根,形成一个树状结构.我们在这里讲解进程组和会话,以便以更加丰富的方式了管理进程. 进程组 (process group) 每个进程都会属于一个进程组(process group),每个进程组中可以包含多个进程.进程组会有一个进程组领导进程 (process group leader),领导进程的PID成为进程组的ID (process group ID, PGID),以识别进程组. $ps -o pi

Linux用户,组和权限管理

用户,组,权限 一.了解什么是用户,组和权限 1.对于linux系统来说,简单明了的特点就是多用户,多任务,也就是说一台linux系统的主机上面可以同时允许多个用户登录,当通过多个终端登录时可以同时使用这台linux的系统,然而对于linux习题来说,一切皆文件,别人和自己的工作任务都是以文件的形式存在的,不同的用户之间岂不是没有隐私或者安全而言,其实在linux上不是这样的,我们可以理解linux把每一个用户分配一间屋子,没有钥匙即权限我们是进不去浏览以及修改文件的,但是既然是一间屋子,那当然

linux 进程组 作业 会话

   进程组,作业,会话1. 进程组      每个进程除了有一个进程ID之外,还属于一个进程组.进程组是一个或多个进程的集合.      通常,它们与同一作业相关联,可以接收来自同一终端的各种信号. 每个进程组有一个唯一的进程组ID.每个进程组都可以有一个组长进程.组长进程的标识是其进程组ID等于其进程ID.组长进程可以创建一个进程组,创建该组中的进程,然后终止. 只要在某个进程组中一个进程存在,则该进程组就存在,这与其组长进程是否终止无关.2.作业     Shell分前后台来控制的不是进程

Linux 两组信号对比(关闭和停止进程信号)

之前看信号的时候,没有太注意不同信号的对比.今天再次看到的时候,突然感觉对一些信号,非常相似,乃至非常容易混淆.今天周末就抽空总结一下. 一.关闭进程信号 常见的4中关闭进程信号是SIGKILL,SIGINT,SIGTERM,SIGQUIT. SIGKILL,就是为了关闭进程用的,无法捕获以及忽略.场景是,管理员把一些占用资源的进程或者无法掌控的孤儿进程杀死. SIGINT,interrupt(中断)进程,这个是可以捕获以及忽略.可以使用ctrl+c发出信号,直接发给父进程以及子进程,这样的话就

Linux中组 与 用户的管理

在linux中建立组的指令是 groupadd 组名 相应的,删除组的指令: groupdel 组名 查看自己用户的组: groups 用户管理: useradd -s/bin/bash -g 组名 用户名 -s表示用户登陆后打开的终端, 这里是/bin/bash,如果想禁止登陆,可设置为/sbin/nologin -M 不建立用户的主文件夹,用户登陆会跑到 / 去.可手工建立,如果是禁止登陆,建议加这个参数 既然有useradd指令,当然有对应的userdel... users是用来查看当前有

Linux 根据组名查询出该组内所有成员

目前linux中没有直接根据组名查询组员的命令. 目前系统提供的查找组员和组之间的关系的方法有两种, 一种是:查找/etc/passwd和/etc/group目录,根据/etc/group目录里面的组的id,在/etc/passwd中查找到组内成员. 另一种是:通过groups命令,根据组员查找该组员所属组 我用grep和cut命令实现了通过组名查找出其内组员的功能,命令如下 # gid=`grep '组名' /etc/group | cut -d ':' -f 3` && grep &q

linux 的组groups综合用法

groups命令---groups [选项] 用户名 例:某公司有sales.tech这两个部门,sales部门有2位职员lucy.lily.tech部门有3位职员alice.jack.peter.要求在linux服务器上采用用户和组来管理公司的这两个部门和员工账号例1.创建gp1.gp2.gp3这三个组.删除gp3这个组,查看组账号文件的最后5行内容 2.创建u1.u2.u3这三个用户,依次查看3个用户的id信息.将u1.u2.u3加入到gp1组中,将u2.u3加入到gp2组中.查看/etc/