Linux用户和组管理

安装上下文:

进程以其发起者的身份运行;

进程对文件的访问权限,取决于发起此进程的用户的权限;

系统用户:为了能够让那后台进程或服务类进程以非管理员的身份运行,通常需要为此创建多个普通用户;这类用户从不用登录系统;

groupadd命令:添加组

groupadd [选项] group_name

-g GID:指定GID;默认是上一个组的GID+1;

-r: 创建系统组;

groupmod命令:修改组属性

groupmod [选项] GROUP

-g GID:修改GID;

-n new_name:修改组名;

groupdel命令:删除组

groupdel [选项] GROUP

useradd命令:创建用户

useradd [选项] 登录名

-u, --uid UID:指定UID;

-g, --gid GROUP:指定基本组ID,此组得事先存在;

-G, --groups GROUP1[,GROUP2,...[,GROUPN]]]:指明用户所属的附加组,多个组之间用逗号分隔;

-c, --comment COMMENT:指明注释信息;

-d, --home HOME_DIR:以指定的路径为用户的家目录;通过复制/etc/skel此目录并重命名实现;指定的家目录路径如果事先存在,则不会为用户复制环境配置文件;

-s, --shell SHELL:指定用户的默认shell,可用的所有shell列表存储在/etc/shells文件中;

-r, --system:创建系统用户;

注意:创建用户时的诸多默认设定配置文件为/etc/login.defs

useradd -D:显示创建用户的默认配置;

useradd -D 选项: 修改默认选项的值;

修改的结果保存于/etc/default/useradd文件中;

usermod命令:修改用户属性

usermod [选项] 登录

-u, --uid UID:修改用户的ID为此处指定的新UID;

-g, --gid GROUP:修改用户所属的基本组;

-G, --groups GROUP1[,GROUP2,...[,GROUPN]]]:修改用户所属的附加组;原来的附加组会被覆盖;

-a, --append:与-G一同使用,用于为用户追加新的附加组;

-c, --comment COMMENT:修改注释信息;

-d, --home HOME_DIR:修改用户的家目录;用户原有的文件不会被转移至新位置;

-m, --move-home:只能与-d选项一同使用,用于将原来的家目录移动为新的家目录;

-l, --login NEW_LOGIN:修改用户名;

-s, --shell SHELL:修改用户的默认shell;

-L, --lock:锁定用户密码;即在用户原来的密码字符串之前添加一个"!";

-U, --unlock:解锁用户的密码;

userdel命令:删除用户

userdel [选项] 登录

-r:删除用户时一并删除其家目录;

passwd命令:

passwd [-k] [-l] [-u [-f]] [-d] [-e] [-n mindays] [-x maxdays] [-w warndays] [-i inactivedays] [-S] [--stdin] [username]

(1) passwd:修改用户自己的密码;

(2) passwd USERNAME:修改指定用户的密码,但仅root有此权限;

-l, -u:锁定和解锁用户;

-d:清除用户密码串;

-e DATE: 过期期限,日期;

-i DAYS:非活动期限;

-n DAYS:密码的最短使用期限;

-x DAYS:密码的最长使用期限;

-w DAYS:警告期限;

--stdin:

echo "PASSWORD" | passwd --stdin USERNAME

gpasswd命令:

组密码文件:/etc/gshadow

gpasswd [选项] group

-a USERNAME:向组中添加用户

-d USERNAME:从组中移除用户

newgrp命令:临时切换指定的组为基本组;

newgrp [-] [group]

-: 会模拟用户重新登录以实现重新初始化其工作环境;

chage命令:更改用户密码过期信息

chage [选项] 登录名

-d

-E

-W

-m

-M

id命令:显示用户的真和有效ID;

id [OPTION]... [USER]

-u: 仅显示有效的UID;

-g: 仅显示用户的基本组ID;

-G:仅显示用户所属的所有组的ID;

-n: 显示名字而非ID;

su命令:switch user

登录式切换:会通过读取目标用户的配置文件来重新初始化

su - USERNAME

su -l USERNAME

非登录式切换:不会读取目标用户的配置文件进行初始化

su USERNAME

注意:管理员可无密码切换至其它任何用户;

-c 'COMMAND':仅以指定用户的身份运行此处指定的命令;

其它几个命令:chsh, chfn, finger, whoami, pwck, grpck

命令总结:groupadd, groupmod, groupdel, useradd, usermod, userdel, passwd, gpasswd, newgrp, id, su, chage

权限管理:

ls -l

rwxrwxrwx:

左三位:定义user(owner)的权限

中三位:定义group的权限;

右三位:定义other的权限

进程安全上下文:

进程对文件的访问权限应用模型:

进程的属主与文件的属主是否相同;如果相同,则应用属主权限;

否则,则检查进程的属主是否属于文件的属组;如果是,则应用属组权限;

否则,就只能应用other的权限;

权限:

r:readable, 读

w:writable, 写

x:excutable,执行

文件:

r:可获取文件的数据;

w: 可修改文件的数据;

x:可将此文件运行为进程;

目录:

r:可使用ls命令获取其下的所有文件列表;

w: 可修改此目录下的文件列表;即创建或删除文件;

x: 可cd至此目录中,且可使用ls -l来获取所有文件的详细属性信息;

mode:rwxrwxrwx

ownership:user, group

权限组合机制:

--- 000 0

--x 001 1

-w- 010 2

-wx 011 3

r-- 100 4

r-x 101 5

rw- 110 6

rwx 111 7

练习:rw-rw-r--, rwxrwxr-x, rwxr-x---, rw------, rwxr-xr-x

664, 640, 600, 775, 750, 755

权限管理命令:

chmod命令:

chmod [OPTION]... MODE[,MODE]... FILE...

chmod [OPTION]... OCTAL-MODE FILE...

chmod [OPTION]... --reference=RFILE FILE...

三类用户:

u:属主

g:属组

o:其它

a: 所有

(1) chmod [OPTION]... MODE[,MODE]... FILE...

MODE表示法:

赋权表示法:直接操作一类用户的所有权限位rwx;

u=

g=

o=

a=

授权表示法:直接操作一类用户的一个权限位r,w,x;

u+, u-

g+, g-

o+, o-

a+, a-

(2) chmod [OPTION]... OCTAL-MODE FILE...

(3) chmod [OPTION]... --reference=RFILE FILE...

选项:

-R, --recursive:递归修改

注意:用户仅能修改属主为自己的那些文件的权限;

从属关系管理命令:chown, chgrp

chown命令:

chown [OPTION]... [OWNER][:[GROUP]] FILE...

chown [OPTION]... --reference=RFILE FILE...

选项:

-R:递归修改

chgrp命令:

chgrp [OPTION]... GROUP FILE...

chgrp [OPTION]... --reference=RFILE FILE...

注意:仅管理员可修改文件的属主和属组;

思考:用户对目录有写权限,但对目录下的文件没有写权限时,能否修改此文件内容?能否删除此文件?

模拟之;

umask:文件的权限反向掩码,遮罩码;

文件:

666-umask

目录:

777-umask

注意:之所以文件用666去减,表示文件默认不能拥有执行权限;如果减得的结果中有执行权限,则需要将其加1;

umask: 023

666-023=644

777-023=754

umask命令:

umask:查看当前umask

umask MASK: 设置umask

注意:此类设定仅对当前shell进程有效;

install命令:

install - copy files and set attributes

单源复制:

install [OPTION]... [-T] SOURCE DEST

多源复制:

install [OPTION]... SOURCE... DIRECTORY

install [OPTION]... -t DIRECTORY SOURCE...

创建目录:

install [OPTION]... -d DIRECTORY...

常用选项:

-m, --mode=MODE:设定目标文件权限,默认为755;

-o, --owner=OWNER:设定目标文件属主;

-g, --group=GROUP:设定目标文件属组;

mktemp命令:

mktemp - create a temporary file or directory

mktemp [OPTION]... [TEMPLATE]

常用选项:

-d:创建临时目录

注意:mktemp会将创建的临时文件名直接返回,因此,可直接通过命令引用保存起来;

linux的安装组和管理组的区别吗,Linux用户和组管理相关推荐

  1. 如何显示计算机中本地用户和组,win10电脑管理界面如何显示出“本地用户和组”功能...

    win10电脑管理界面如何显示出"本地用户和组"功能 有些小伙伴在电脑管理界面中没有看到"本地用户和组"功能,其实是我们没有显示出来而已.今天小编跟大家分享下w ...

  2. linux常用指令介绍_软件包管理_VIM编辑器的使用_用户和组账户管理_文件权限管理

    1.1. 文件目录操作命令 ls 显示文件和目录列表 -l 列出文件的详细信息 -a 列出当前目录所有文件,包含隐藏文件 mkdir 创建目录 删除?rmdir  非空 -p 父目录不存在情况下先生成 ...

  3. win7计算机本地用户和组,Win7旗舰版找不到本地用户和组如何解决

    win7系统用户点击鼠标右键可以直接打开计算机管理,计算机管理中用户可找到一个本地用户和组的选项,通过本地用户和组选项,用户可设置登陆账号的权限.但是有用户反馈说Win7旗舰版找不到本地用户和组,感觉 ...

  4. star ccm linux版本安装教程,StarCCM+ V5.02.009安装指南(PC Linux 32).doc

    StarCCMV5.02.009安装指南(PCLinux32) STAR-CCM+ V5.02.009 安装 2010年月日 目 录 第一章 安装指南1 第二章 启动License8 第一章 安装 [ ...

  5. windows当中python的安装和环境部署,和数据类型,并且在linux当中安装python是windows当中的pycharm基于linux可以运行

    一windows当中的安装 1>首先安装python解释器 安装途径可以从官网下载Welcome to Python.orgThe official home of the Python Pro ...

  6. ccm linux中安装教程,StarCCM+ V5.02.009安装指南(PC Linux 32)

    第一章安装指南 [适用版本] Linux x86_32 [安装文件] 安装文件: STAR-CCM+5.02.009_01_linux-x86.tar.gz [安装流程] 在本安装指南中,所需的应用程 ...

  7. 解压安装包linux,Linux 下载安装 rar 并解压rar压缩包(Linux下如何解压.zip和.ra

    Linux 下载安装 rar 并解压rar压缩包(Linux下如何解压.zip和.ra Linux 下载安装 rar 并解压rar压缩包(Linux下如何解压.zip和.rar文件) Linux下如何 ...

  8. linux winrar 安装目录,WinRAR 5.61发布,提供Linux版本下载,附安装方法

    压缩及解压缩工具WinRAR 5.61已经发布下载,提供WinRAR (32/64 bit) 5.61.RAR 5.61 for Linux.RAR for Android.RAR 5.61 for ...

  9. linux iis安装教程,易企秀源码在linux、win主机下的安装教程和详细步骤(含伪静态设置)...

    1.源码完整上传至服务器空间,并解压 2.修改数据库配置文件Application/Common/Conf/systemConfig.php,将里面的数据库信息修改成你自己的,推荐使用Notepad+ ...

  10. Linux免费安装VMware免费版本和CentOs镜像实现Linux环境

    Linux的下载使用需要用到VMware虚拟机和CentOs Window和Linux两大系统显然是不能同时运行的,所以需要用到虚拟机和CentOs镜像来代替Linux系统学习和使用 VMware W ...

最新文章

  1. ORA-00257: archiver error. Connect internal only, until freed.
  2. C++:20---成员变量初始化方式
  3. 新版《谷歌搜索引擎优化初学者指南》
  4. Spring Boot jar方式打包发布
  5. 求余运算转换为位运算
  6. c 标签 foreach里面套choose做判断
  7. android studio for android learning (二十八) android基础知识
  8. [android] fragment的动态创建
  9. 景观指数分析 - 初识FragStats4.2
  10. Windows NT 内核版本号对应的操作系统版本号
  11. Your local changes to the following files would be overwritten by merge
  12. 一个TCP FIN_WAIT2状态细节引发的感慨
  13. JVM-内存与垃圾回收篇!女朋友看了都想当架构师的超详细保姆级笔记!呕心沥血之作!看完还不会你砍我!
  14. 接入Google Sdk 遇到的坑
  15. NLP初学-文本预处理
  16. Excel转xml简单方法
  17. 读书笔记 | 牧羊少年奇幻之旅
  18. 关于python字符编码以下选项中错误的是_关于Python文件打开模式的描述,以下选项中错误的是...
  19. 如何提问,提问技巧,如何有效的获取问题的答案
  20. WebGL入门(八)-通过旋转矩阵实现图形(三角形)绕Z轴的旋转

热门文章

  1. Cypress 启动本地浏览器的学习笔记
  2. StackBlitz里无法重命名项目的问题
  3. SAP Spartacus breakpoint的决定逻辑
  4. SAP Spartacus B2B功能,只渲染BodyContent position里的UI
  5. SAP Spartacus CmsService的CmsActions.LoadCmsComponent
  6. SAP Spartacus当前产品主数据数据格式的一个例子
  7. 让outlook邮件里默认不显示发送方的头像
  8. ant build.xml文件将使用到的属性放到一个额外的build.properties文件里
  9. 如何将CSDN的博客同步到网易号平台上去
  10. 利用S_MEMORY_INSPECTOR分析内存泄漏问题