Linux学习系列--用户(组)新增、查看和删除
在实际的工作中,在接触Linux的用户组管理的时候,一般来说都是在系统开建设的时候设置好,root权限由特定的负责人保管用户密码,避免误操作带来不必要的麻烦。
在具体使用的时候,会利用相关的命令设置一些对应的用户,给与一些合适的权限进行管理。
用户的新增和修改
-
在使用的时候,可以通过这几个命令去查看用户、用户组和在线的用户
id
、groups
、who
-
使用命令
cat /etc/passwd
和cat /etc/shadow
,查看系统登录的用户名和密码 -
使用命令
useradd name
,会在/etc/passwd和/etc/shadow末尾追加一条记录,同时会分配给该用户一个UID,完成一个用户的新增。
-
创建一个UID为555的账号
useradd -u 555 user01
-
创建一个用户user02所属的group是user01
useradd -g user02 user01
-
创建一个user 3,可以指定/home/mydir3作为user3用户的家目录
useradd -d /home/mydir3 user3
-
修改用户的usermode
-
删除用户userdel
userdel name(用户名)
新增和删除用户组
- 新增用户组
groupadd 组名
- 查看用户组信息
cat /etc/group
- 删除用户组
groupdel 组名
检查用户信息
- 使用命令,
users
、who
、w
,这几个命令都还是可以查看用户信息,并且所能查看的信息也是递增关系的。 - finger命令在不加任何参数的情况下,同样会显示系统的登录用户
- 使用命令
finger 用户名
可以直接查看用户的具体信息
切换用户
- 在Linux中,实际使用root用户的情况会比较少,基本都是使用权限相对较低的用户,减少在使用中带来的不安全的问题。
- 主要使用su 和 sudo 这两个命令来切换根用户(root),普通用户,系统用户。使用exit可以退出当前登陆的用户,切换用户进行登陆。
su
默认情况下就是切换到root用户,在su-
这里,还可以加参数,这样做和直接输入命令的区别在于前者是只切换了用户到root,后者不仅用户切到了root,还把对应的环境也是切换到了root之中。- 在使用su命令的过程中,root用户切换到其他用户都是不需要的,其他用户切换到root是必须要知道root密码,这可能会带来不必要的麻烦
- 在sudo这个命令中,可以使用方式是在sudo后跟上需要执行的命令,比如说sudo passwd user1,即使用root的身份修改user1的密码。运行该命令时,系统首先检查/etc/sudoers,判断该用户是否有执行sudo的权限,在确定有执行权限后,系统要求用户输自己的密码,如果密码输入正确,则会以root用户的身份运行passwd user1命令。
## Sudoers allows particular users to run various commands as
## the root user,without needing the root password.
##
## Examples are provided at the bottom of the file for collections
## of related commands,which can then be delegated out to particular
## users or groups.
##
## This file must be edited with the 'visudo' command.
......(略去内容)......
## Allow root to run any commands anywhere
root ALL=(ALL) ALL
john ALL=(ALL) ALL #复制上一行的内容,并修改用户名为john
## Allows members of the 'sys' group to run networking,software,
## service management apps and more.
# %sys ALL = NETWORKING,SOFTWARE,SERVICES,STORAGE,DELEGATING,PROCESSES,LOCATE,DRIVERS
## Allows people in group wheel to run all commands
# %wheel ALL=(ALL) ALL
## Same thing without a password
# %wheel ALL=(ALL) NOPASSWD: ALL
## Allows members of the users group to mount and unmount the
## cdrom as root
# %users ALL=/sbin/mount /mnt/cdrom,/sbin/umount /mnt/cdrom
## Allows members of the users group to shutdown this system
# %users localhost=/sbin/shutdown-h now
具体的使用是在使用之前设置文件/etc/sudousers的配置,命令visudo
,,可以直接对文件进行修改主要anywhere附近的用户,添加一个控制的用户,以后可以使用这个用户进行间接控制,从而不咋在使用root用户。
在配置文件中的root下设置这种配置,表示使用用户名为John的用户,切换用户权限的时候不需要输入密码,可以控制服务器的启动和关闭
``john ALL=(ALL) NOPASSWD: /sbin/shutdown,/usr/bin/rebboot
例行执行任务管理
Linux中也有处理这两种任务的方法。如果任务是周期性执行的,其命令为cron;如果只是在某一个特定的时间执行一次,其命令为at。通俗来讲就是在执行一些定时任务的时候会使用到的命令。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南