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。通俗来讲就是在执行一些定时任务的时候会使用到的命令。
Linux学习系列--用户(组)新增、查看和删除的更多相关文章
- Linux学习之用户身份与文件权限
Linux学习之用户身份与文件权限 1 用户身份及能力 Linux系统的管理员之所以是root,并不是因为其名叫root,而是该用户身份号码数值(UID)为0. 管理员UID为0:系统的管理员用户 系 ...
- Linux学习之用户配置文件详解(十四)
Linux学习之用户配置文件详解 目录 用户信息文件/etc/password 影子文件/etc/shadow 组信息文件/etc/group 组密码文件/etc/gshadow 用户信息文件/etc ...
- c/c++ linux epoll系列2 利用epoll_wait查看是否可以送信
linux epoll系列2 利用epoll_wait查看是否可以送信 write函数本来是非阻塞函数,但是当缓存区被写满后,再往缓存区里写的时候,就必须等待缓存区再次变成可写,所以这是write就变 ...
- Linux学习之用户管理命令与用户组管理命令(十五)
Linux学习之用户管理命令与用户组管理命令 目录 用户管理命令 用户添加命令useradd 修改用户密码passwd 修改用户信息usermod 修改用户密码状态chage 删除用户userdel ...
- Linux学习系列八:操作网口
一些相对高性能的单片机会带以太网接口,网口在MCU里算是比较复杂的外设了,因为它涉及到网络协议栈,通常情况下网络协议栈会运行在一个RTOS中,所以对普通单片机开发者来说网口使用起来相对难度较大一些.在 ...
- Linux学习--4.用户和组的管理
用户和组的管理 前言 本篇文章主要讲Linux系统下用户和组的概念,还有添加用户和组,修改用户和组的基本操作,会涉及不少与之相关的配置文件与命令的介绍,几乎所有 正文 首先,简单提下概念,用户是操作系 ...
- linux学习系列三
1. 账户与账户安全 账户和组是操作系统的基本概念,linux的组有基本组和附加组之分,一个用户只可以加入到一个基本组中国,但是可以加入到多个附加组中.创建用户时,系统默认会自动创建同名的组,并设置用 ...
- linux 学习7 用户管理相关文件 r
7.1.用户配置文件 7.2.用户管理相关文件 7.3.用户管理命令 7.4.用户组管理命令 删除用户userdel [root@localhost ~]# userdel [-r] 用户名 //一定 ...
- linux基础之用户登录信息查看命令
用户登录信息查看命令 1.who命令 同一个账号通过不同终端登录也属于不同的登录信息,这里不同的终端包含虚拟终端和模拟终端,因为一个用户通过一个终端登录属于一个session 基本介绍 打印当前系统上 ...
随机推荐
- 【FAQ】分析服务导出的事件数据和概览页面展示的数据不一致该如何解决?
华为分析服务面向开发者提供两种数据展现方式:(1)事件数据下载,开发者可以将事件数据下载后导入到自有的分析系统中:(2)直接在AGC概览页面查看用户数和事件数. 问题描述 某开发者想将事件数据导入到自 ...
- 49. Group Anagrams - LeetCode
Question 49. Group Anagrams Solution 思路:维护一个map,key是输入数组中的字符串(根据字符排好序) Java实现: public List<List&l ...
- 报‘galleryElements’
是因为组件的data(){ //没有return{ }引起的 }
- CoaXPress 是如何只用一条线缆实现双向传输和供电的
这是个很有意思的事情,CoaXPress的全双工双向数据传输.且供电只需要一条同轴线缆,这个原理对其它串行接口的设计是非常有参考价值的,尤其是对线缆长度.数量有严格要求的场合,一条同轴线缆走天下,不要 ...
- 微信小程序避坑指南——echarts层级太高/层级遮挡
问题:小程序中echarts因为小程序原生的canvas层级太高,而导致弹窗这类dom元素无法遮挡住canvas,如下图: 解决方案1:(wx:if控制dom显隐,显示canvas就重新渲染echar ...
- 【爬虫+情感判定+Top10高频词+词云图】"王心凌"热门弹幕python舆情分析
目录 一.背景介绍 二.代码讲解-爬虫部分 2.1 分析弹幕接口 2.2 讲解爬虫代码 三.代码讲解-情感分析部分 3.1 整体思路 3.2 情感分析打标 3.3 统计top10高频词 3.4 绘制词 ...
- Node.js精进(2)——异步编程
虽然 Node.js 是单线程的,但是在融合了libuv后,使其有能力非常简单地就构建出高性能和可扩展的网络应用程序. 下图是 Node.js 的简单架构图,基于 V8 和 libuv,其中 Node ...
- WPF中Popup控件的使用
一.Popup控件的主要属性 Popup表示具有内容的弹出窗口,其主要属性为: Child:获取或设置 Popup控件的内容. IsOpen:获取或设置一个值,该值指示Popup 是否可见 Place ...
- .NET6 开源之JSON 2 SQL (JORM框架)
什么是JORM框架? 全称 :Json Object Relational Mapping ,它是通过JSON 对象 去实现数据库的一个关系映射 ,我理想中完整的JORM包含功能有 ·1.表权授 ...
- ABAP CDS - Language Elements
The following sections summarize the language elements of the DDL and DCL of the ABAP CDS, arranged ...