热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

linux学习:用户管理

一、管理用户(user)主要工具命令useradd注:添加用户adduser注:添加用户passwd注:为用户设置密码usermod注:修改用户命

一、管理用户(user)

主要工具命令

useradd    注:添加用户

adduser    注:添加用户

passwd     注:为用户设置密码

usermod    注:修改用户命令,可以通过usermod 来修改登录名、用户的家目录等等;

pwcov      注:同步用户从/etc/passwd 到/etc/shadow

pwck       注:pwck是校验用户配置文件/etc/passwd 和/etc/shadow 文件内容是否合法或完整;

pwunconv   注:是pwcov 的立逆向操作,是从/etc/shadow和 /etc/passwd 创建/etc/passwd ,然后会删除 /etc/shadow 文件;

finger     注:查看用户信息工具

id         注:查看用户的UID、GID及所归属的用户组

chfn       注:更改用户信息工具

su         注:用户切换工具

sudo       注:sudo 是通过另一个用户来执行命令(execute a command as another user),su 是用来切换用户,然后通过切换到的用户来完成相应的任务,但sudo 能后面直接执行命令,比如sudo 不需要root 密码就可以执行root 赋与的执行只有root才能执行相应的命令;但得通过visudo 来编辑/etc/sudoers来实现;

visudo     注:visodo 是编辑 /etc/sudoers 的命令;也可以不用这个命令,直接用vi 来编辑 /etc/sudoers 的效果是一样的;

sudoedit   注:和sudo 功能差不多;

 

新增用户:

useradd 选项 用户名

-c comment 指定一段注释性描述。

-d 目录 指定用户主目录,如果此目录不存在,则同时使用-m选项,可以创建主目录。

-g 用户组 指定用户所属的用户组。

-G 用户组,用户组 指定用户所属的附加组。

-s Shell文件 指定用户的登录Shell。

-u 用户号 指定用户的用户号,如果同时有-o选项,则可以重复使用其他用户的标识号。

useradd –d /usr/sam -m sam    #此命令创建了一个用户sam,其中-d和-m选项用来为登录名sam产生一个主目录/usr/sam(/usr为默认的用户主目录所在的父目录)。

useradd -s /bin/sh -g group –G adm,root gem  #此命令新建了一个用户gem,该用户的登录Shell是 /bin/sh,它属于group用户组,同时又属于adm和root用户组,其中group用户组是其主组。

useradd -u 1010 user1  #指定新添加用户的UID,普通用户的UID必须大于499且不能和已存在的UID重复。

 

删除用户:

userdel 选项 用户名

userdel -r sam  #把用户的主目录一起删除。

 

修改用户:

usermod 选项 用户名

常用的选项包括-c, -d, -m, -g, -G, -s, -u以及-o等,这些选项的意义与useradd命令中的选项一样,可以为用户指定新的资源值。

usermod -a -G apache test   #将test增加到用户组apache中,使此用户组成为该用户的附加用户组,-a 参数代表 append, 也就是将用户添加到新用户组中而不必离开原有的其他用户组。不过需要与 -G 选项配合使用  

usermod -g apache test  #同时将 test 的主要用户组改为 apache,则直接使用 -g 选项

gpasswd -d user group  #将一个用户从某个组中删除(group 不能是user的主组)

 

修改用户密码:

passwd 选项 用户名

-l 锁定口令,即禁用账号。

-u 口令解锁。

-d 使账号无口令。

-f 强迫用户下次登录时修改口令。

passwd  #修改当前用户口令

passwd  adm  #修改adm用户的口令

 

二、管理用户组(group)

主要工具或命令

groupadd    注:添加用户组;

groupdel    注:删除用户组;

groupmod    注:修改用户组信息

groups      注:显示用户所属的用户组

grpck

grpconv     注:通过/etc/group和/etc/gshadow 的文件内容来同步或创建/etc/gshadow ,如果/etc/gshadow 不存在则创建;

grpunconv   注:通过/etc/group 和/etc/gshadow 文件内容来同步或创建/etc/group ,然后删除gshadow文件;

 

新增用户组

groupadd 选项 用户组

-g GID 指定新用户组的组标识号(GID)。

-o 一般与-g选项同时使用,表示新用户组的GID可以与系统已有用户组的GID相同。

groupadd group1 #新增用户组group1,新组的组标识号是在当前已有的最大组标识号的基础上加1

groupadd -g 101 group2 #增加了一个新组group2,同时指定新组的组标识号是101。

 

删除用户组

groupdel 用户组

groupdel group1   #删除用户组group1

groupmod –g 10000 -n group3 group2  #将组group2的标识号改为10000,组名修改为group3。

 

修改用户组

groupmod 选项 用户组

-g GID 为用户组指定新的组标识号。

-o 与-g选项同时使用,用户组的新GID可以与系统已有用户组的GID相同。

-n新用户组 将用户组的名字改为新名字

groupmod -g 102 group2  #将组group2的组标识号修改为102。

 

切换用户组

newgrp root  #将当前用户切换到root用户组(该用户属于多个用户组的条件下)

 

三、用户登录信息

who      #获取当前登陆的用户信息

w      #同上

users    #列出当前登录主机的用户列表

uptime   #查看系统已经通电运行了多长时间

last      #获取前一次的启动及用户登录会话的信息

last user   #获取单个用户的会话信息

inotifywait -m -r -e create,move,delete,open,close,access,modify,attrib /data/test -q >> test.log     #监视/data/test目录的创建,移动,删除,打开,关闭,访问,修改,文件元数据被修改等事件。-m持续监视,-r递归监视目录,-e需要监视的时间列表,-q简化输出

 


推荐阅读
  • 在Docker中,将主机目录挂载到容器中作为volume使用时,常常会遇到文件权限问题。这是因为容器内外的UID不同所导致的。本文介绍了解决这个问题的方法,包括使用gosu和suexec工具以及在Dockerfile中配置volume的权限。通过这些方法,可以避免在使用Docker时出现无写权限的情况。 ... [详细]
  • imx6ull开发板驱动MT7601U无线网卡的方法和步骤详解
    本文详细介绍了在imx6ull开发板上驱动MT7601U无线网卡的方法和步骤。首先介绍了开发环境和硬件平台,然后说明了MT7601U驱动已经集成在linux内核的linux-4.x.x/drivers/net/wireless/mediatek/mt7601u文件中。接着介绍了移植mt7601u驱动的过程,包括编译内核和配置设备驱动。最后,列举了关键词和相关信息供读者参考。 ... [详细]
  • 在CentOS/RHEL 7/6,Fedora 27/26/25上安装JAVA 9的步骤和方法
    本文介绍了在CentOS/RHEL 7/6,Fedora 27/26/25上安装JAVA 9的详细步骤和方法。首先需要下载最新的Java SE Development Kit 9发行版,然后按照给出的Shell命令行方式进行安装。详细的步骤和方法请参考正文内容。 ... [详细]
  • 本文介绍了Linux Shell中括号和整数扩展的使用方法,包括命令组、命令替换、初始化数组以及算术表达式和逻辑判断的相关内容。括号中的命令将会在新开的子shell中顺序执行,括号中的变量不能被脚本余下的部分使用。命令替换可以用于将命令的标准输出作为另一个命令的输入。括号中的运算符和表达式符合C语言运算规则,可以用在整数扩展中进行算术计算和逻辑判断。 ... [详细]
  • mac php错误日志配置方法及错误级别修改
    本文介绍了在mac环境下配置php错误日志的方法,包括修改php.ini文件和httpd.conf文件的操作步骤。同时还介绍了如何修改错误级别,以及相应的错误级别参考链接。 ... [详细]
  • 本文介绍了使用readlink命令获取文件的完整路径的简单方法,并提供了一个示例命令来打印文件的完整路径。共有28种解决方案可供选择。 ... [详细]
  • 本文介绍了在RHEL 7中的系统日志管理和网络管理。系统日志管理包括rsyslog和systemd-journal两种日志服务,分别介绍了它们的特点、配置文件和日志查询方式。网络管理主要介绍了使用nmcli命令查看和配置网络接口的方法,包括查看网卡信息、添加、修改和删除配置文件等操作。 ... [详细]
  • 本文介绍了三种方法来实现在Win7系统中显示桌面的快捷方式,包括使用任务栏快速启动栏、运行命令和自己创建快捷方式的方法。具体操作步骤详细说明,并提供了保存图标的路径,方便以后使用。 ... [详细]
  • Linux批量复制并重命名和批量复制文件到多个文件夹的方法
    本文介绍了在Linux系统下批量复制并重命名文件以及批量复制文件到多个文件夹的方法。通过使用模式匹配功能,可以方便地实现文件的批量操作。同时,还提供了有关shell语法中的()和{}的参考资料。 ... [详细]
  • Ubuntu安装常用软件详细步骤
    目录1.GoogleChrome浏览器2.搜狗拼音输入法3.Pycharm4.Clion5.其他软件1.GoogleChrome浏览器通过直接下载安装GoogleChro ... [详细]
  • 本文讨论了在Linux系统中,使用chown命令将django项目目录下的static目录的拥有者从root改为eureka的问题。作者尝试了多种命令,包括chown和sudo chown等,但都没有成功修改拥有者。文章提供了相关目录的权限信息,并补充了项目所在磁盘和操作系统的信息。 ... [详细]
  • 本文总结了Linux下多线程执行shell脚本的4种方法,包括切换到工作目录执行、使用绝对路径执行、直接使用bash或sh执行。同时介绍了为什么需要加上"./"来执行脚本的原因。 ... [详细]
  • 本文介绍了5个基本Linux命令行工具的现代化替代品,包括du、top和ncdu。这些替代品在功能上进行了改进,提高了可用性,并且适用于现代化系统。其中,ncdu是du的替代品,它提供了与du类似的结果,但在一个基于curses的交互式界面中,重点关注占用磁盘空间较多的目录。 ... [详细]
  • Apache Shiro 身份验证绕过漏洞 (CVE202011989) 详细解析及防范措施
    本文详细解析了Apache Shiro 身份验证绕过漏洞 (CVE202011989) 的原理和影响,并提供了相应的防范措施。Apache Shiro 是一个强大且易用的Java安全框架,常用于执行身份验证、授权、密码和会话管理。在Apache Shiro 1.5.3之前的版本中,与Spring控制器一起使用时,存在特制请求可能导致身份验证绕过的漏洞。本文还介绍了该漏洞的具体细节,并给出了防范该漏洞的建议措施。 ... [详细]
  • 本文介绍了在Ubuntu系统中清理残余配置文件和无用内容的方法,包括清理残余配置文件、清理下载缓存包、清理不再需要的包、清理无用的语言文件和清理无用的翻译内容。通过这些清理操作可以节省硬盘空间,提高系统的运行效率。 ... [详细]
author-avatar
小变态徒
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有