linux系统用户、组以及权限

目录

  • 项目1:用户
    • 项目2:组
      • 项目3:权限

项目1:用户

用户分为三种
root 用户 (ID 0)
在Linux系统中,root用户UID为0,root用户的权限是最高的,普通用户无法执行的操作,root用户都能完成,所以也被称为超级用户。
系统用户 (ID 1-499)
系统用户也被称为虚拟用户、伪用户或假用户,这类用户不具有登录Linux系统的能力,但却是系统运行不可缺少的用户,比如bin、daemon、adm、ftp、mail等,这类用户都是系统自身拥有的。系统用户的UID为1~499。
普通用户 (ID 500 以上)
普通用户能登录系统,在Linux系统上进行普通操作,能操作自己目录的内容,其使用系统的权限受到限制,这类用户都是系统管理员创建的,其UID为500~60000之间。

参数:

-a, --append GROUP 将用户追加至上边 -G 中提到的附加组中,
并不从其它组中删除此用户;
-b, --base-dir BASE_DIR 指定新账户的家目录;
-c, --comment COMMENT 新账户的 GECOS 字段;
-d, --home-dir HOME_DIR 新账户的主目录;
-D, --defaults 显示或更改默认的 useradd 配置;
-e, --expiredate EXPIRE_DATE 新账户的过期日期;
-f, --inactive INACTIVE 新账户的密码不活动期;
-g, --gid GROUP 新账户主组的名称或 ID;
-G, --groups GROUPS 新账户的附加组列表;
-h, --help 显示此帮助信息并推出;
-k, --skel SKEL_DIR 使用此目录作为骨架目录;
-K, --key KEY=VALUE 不使用 /etc/login.defs 中的默认值;
-l, --no-log-init 不要将此用户添加到最近登录和登录失败数据
库;
-L, --lock 锁定用户帐号;
-m, --create-home 创建用户的主目录;
-M, --no-create-home 不创建用户的主目录;
-N, --no-user-group 不创建同名的组;
-o, --non-unique 允许使用重复的 UID 创建用户;
-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
案例:
创建用户:useradd
创建新用户sls,并把新用户的组设置为songlldc
useradd -g songlldc sls
新建 edu 用户,并指定新的家目录,同时指定其登陆的 SHELL;
useradd -d /etc/edu -s /bin/bash edu
创建新用户,并未他指定主组 以及附属组
Useradd -g songlss -G slss edd
linux创建账户并自动生成主目录和主目录下的文件
useradd -d /home/test -m test

passwd [用户名] 设置密码
在这里插入图片描述

删除用户:userdel
删除
userdel 删除用户名
强制删除所有与此用户相关的文件,包括家目录和用户邮箱
userdel -r -f username
删除所有与此用户相关的文件
userdel -r username
删除的是账户和组信息,家目录和用户邮箱还在
userdel username
修改用户:usermod
usermod 禁用、启用帐号:
usermod -L [用户名] 禁用帐号
usermod -U [用户名] 启用帐号
usermod -e YYYY-MM-DD [用户名]
将 edu 用户属组修改为 edu1,edu2 附属组;
usermod -G edu1,edu2 edu
将 edu 用户加入到 edu3,edu4 附属组,-a 为添加新组,原组保留;
usermod –a -G edu3,edu4 edu
修改 edu 用户,并指定新的家目录,同时指定其登陆的 SHELL;
usermod -d /tmp/aa -s /bin/bash edu
将 edu 用户名修改为 edu1;
usermod -l edu1 edu
锁定 edu1 用户及解锁 edu1 用户方法;
usermod –L edu1;usermod -U edu1

项目2:组

所有的 Linux 或者 Windows 系统都有组的概念,通过组可以更加方便的管理用户,组
的概念应用于各行行业,例如企业会使用部门、职能或地理区域的分类方式来管理成员,映
射在 Linux 系统,同样可以创建用户,并用组的概念对其管理。
Linux 组有如下特点:
 每个组有一个组 ID;
 组信息保存在/etc/group 中;
 每个用户至少拥有一个主组,同时还可以拥有 31 个附属组。

参数

f, --force 如果组已经存在则成功退出;
并且如果 GID 已经存在则取消 –g;
-g, --gid GID 为新组使用 GID;
-h, --help 显示此帮助信息并推出;
-K, --key KEY=VALUE 不使用 /etc/login.defs 中的默认值;
-o, --non-unique 允许创建有重复 GID 的组;
-p, --password PASSWORD 为新组使用此加密过的密码;
-r, --system 创建一个系统账户;
groupmod 用法
-g, --gid GID 将组 ID 改为 GID;
-h, --help 显示此帮助信息并推出;
-n, --new-name NEW_GROUP 改名为 NEW_GROUP;
-o, --non-unique 允许使用重复的 GID;
-p, --password PASSWORD 将密码更改为(加密过的) PASSWORD;
groupdel 用法
groupdel edu4 删除 edu4 组 要想删除成功edu4得是空的组

案例

groupdel
groupdel edu4 删除 edu4 组 要想删除成功edu4得是空的组
创建组:groupadd
groupadd 创建 edu 组
groupadd edu
groupadd 创建 edu 组,并指定 GID 为 800;
groupadd -g 800 edu
groupadd 创建一个 system 组,名为 edu 组
groupadd -r edu
修改组:groupmod
groupmod 修改组名称,将 dzqcedu 组名,改成 dzqcedu1;
groupmod -n dzqcedu1 dzqcedu
groupmod 修改组 GID 号,将原 dzqcedu1 组 gid 改成 gid 1000;
groupmod –g 1000 dzqcedu1
删除组:groupdel
groupdel abb 删除 abb组 要想删除成功abb得是空的组

项目3

Linux 权限是操作系统用来限制对资源访问的机制,权限一般分为读、写、执行。系统
中每个文件都拥有特定的权限、所属用户及所属组,通过这样的机制来限制哪些用户或用户
组可以对特定文件进行相应的操作。
Linux 每个进程都是以某个用户身份运行,进程的权限与该用户的权限一样,用户的权
限越大,则进程拥有的权限就越大。
Linux 中所有的文件及文件夹都有至少权限三种权限
r(读取) 可读取文件内容 可列出目录内容
w(写入) 可修改文件内容 可在目录中创建删除内容
x(执行) 可作为命令执行 可访问目录内容
目录必须拥有 x 权限,否则无法查看其内容
Linux 权限授权,默认是授权给三种角色,分别是 user、group、other,Linux 权限与用
户之间的关联如下:
 U 代表 User,G 代表 Group,O 代表 Other;
 每个文件的权限基于 UGO 进行设置;
 权限三位一组(rwx),同时需授权给三种角色,UGO;
 每个文件拥有一个所属用户和所属组,对应 UG,不属于该文件所属用户或所属组使用 O 来表示;在 Linux 系统中,可以通过 ls –l 查看 jfedu.net 目录的详细属性
ls -l中显示的内容如下:

-rwxrw-r‐-1 root root 1213 Feb 2 09:39 abc
  • 10个字符确定不同用户能对文件干什么

    扫描二维码关注公众号,回复: 6214007 查看本文章
  • 第一个字符代表文件(-)、目录(d),链接(l)

  • 其余字符每3个一组(rwx),读(r)、写(w)、执行(x)

  • 第一组rwx:文件所有者的权限是读、写和执行

  • 第二组rw-:与文件所有者同一组的用户的权限是读、写但不能执行

  • 第三组r–:不与文件所有者同组的其他用户的权限是读不能写和执行

也可用数字表示为:r=4,w=2,x=1 因此rwx=4+2+1=7

  • 1 表示连接的文件数

  • root 表示用户

  • root表示用户所在的组

  • 1213 表示文件大小(字节)

  • Feb 2 09:39 表示最后修改日期

  • abc 表示文件名

改变权限的命令

chmod 改变文件或目录的权限

chmod 755 abc:赋予abc权限rwxr-xr-x

chmod u=rwx,g=rx,o=rx abc:同上u=用户权限,g=组权限,o=不同组其他用户权限

chmod u-x,g+w abc:给abc去除用户执行的权限,增加组写的权限

chmod a+r abc:给所有用户添加读的权限

【参考】

  • groupadd 组名,在linux中添加组

  • vi /etc/group,查看linux中所有组信息,可以看可以编辑

  • cat /etc/group,查看linux中所有组信息,只可以看不可以编辑

  • useradd ‐g 组名 用户名,创建用户的同时指定将该用户分配到哪个组下

  • vi /etc/passwd,查看linux中所有用户信息,可以看可以编辑

  • cat /etc/passwd,查看linux中所有用户信息,只可以看不可以编辑

猜你喜欢

转载自blog.csdn.net/songlldc/article/details/89296643