3-3 用户管理-新建用户useradd和passwd
3.用户管理 终端命令
提示:创建用户/删除用户/修改其他用户密码的终端命令都需要通过sudo执行
3.1创建用户/修改密码/删除用户
| 序号 | 命令 | 作用 | 说明 |
|---|---|---|---|
| 01 | useradd -m -g 组 新建用户名 | 添加新用户 | * -m自动建立用户家目录 * -g 指定用户所在的组,否则会建立一个和同名的组 |
| 02 | passwd 用户名 | 设置用户密码 | 如果是普通用户,直接用password 可以修改自己账户密码 |
| 03 | userdel -r 用户名 | 删除用户 | -r 选项会自动删除用户家目录 |
| 04 | cat/etc/passwd | grep 用户名 | 确认用户信息 | 新建用户后,用户信息会保存在/etc/passwd文件中 |
提示:
- 创建用户时,如果忘记添加
-m选项指定新用户的家目录--最简单的方能股份就是删除用户,重新创建 - 创建用户时,默认会创建一个和用户名同名的组名
- 用户信息保存在/etc/passwd文件中
3.2查看用户信息
| 序号 | 命令 | 作用 |
|---|---|---|
| 01 | id[用户名] | 查看用户UID和GID的信息 |
| 02 | who | 查看当前所有登录的用户列表 |
| 03 | whoami | 查看当前登录用户的账户名 |
passwd文件
/etc/passwd文件存放的是用户的信息,由6个分号组成的7个信息,列分别是
1.新建用户名
2.密码(x,表示加密的密码)
3.UID(用户标识)
4.GID(组标识)
5.用户全名或本地账号
6.家目录
7.登录使用的Shell,就是登录之后,使用的终端命令,ubuntu默认是dash


查看当前用户的信息只用输入id即可:

下图中的(:0)登录地址为当前计算机

用Shell实现多用户登录
再回到Ubuntu就可以看到多用户who,下图就是用Shell登录的张三的用户,时间以及ip地址

usermod
usermod可以用来设置用户 的主组/附加组合登录Shell ,命令格式如下:- 主组:通常在新建用户是指定,在
etc/passwd的第4列GID对应的组 - 附加组:在
etc/group中最后一列表示该组的用户列表,用于指定用户的附加权限
提示:设置了用户的附加主之后,需要重新登录才能生效!
#修改用户的主组(passwd 中的GID)
usermod -g 组 用户名
#修改用户的附加组
usermod -G 附加组 用户名
#修改用户登录 Shell
usermod -s /bin/bash
*注意:默认使用useradd添加的用户是没有权限使用sudo以root usermod -G sudo 用户名`
后面的python表示用户名,而前面的附加组比如:adm,cdrom等都是python用户所具有的权限

像zhangsan的用户就没有附加组的权限:

给zhangsan添加附加组:

which(重要)
提示
/etc/passwd是用于保存用户信息的文件/usr/bin/passwd是用于修改用户密码的程序
which命令可以查看执行命令所在位置,例如:
which ls
#输出
#/bin/ls
which useradd
#输出
#/usr/sbin/useradd
执行后如下: 其中rws的s表示__可执行权限__

bin 和 sbin
- 在
Linux中,大多数可以执行文件都保存在/bin、/sbin、/usr/bin、/usr/sbin /bin(binary)是二进制执行文件目录,主要用于具体应用/sbin(system binary)是系统管理员专用的二进制存放目录,主要用于系统管理/usr/bin(user commard dor applications)后期安装的一些软件/usr/sbin(super user commands for applications)禅机用户的一些管理程序
提示:
*cd这个终端命令是内置在系统内核中的,没有独立的文件,因此用which无法找到cd命令的位置
3.3 切换用户
| 序号 | 命令 | 作用 | 说明 |
|---|---|---|---|
| 01 | su -用户名 | 切换用户,并且切换目录 | -可以切换到用户家目录,否则保持位置不变 |
| 02 | exit | 退出当前登录账户 |
su不接用户名,可以切换到root,但是不推荐使用,因为不安全exit示意图如下:

3.4 修改文件权限
| 序号 | 命令 | 作用 |
|---|---|---|
| 01 | chown | 修改拥有者 |
| 02 | chgrp | 修改组 |
| 03 | chmod | 修改权限 |
注意:操作文件夹,需要另外加R的命令
*命令格式如下:
# 修改文件|目录拥有者 “|”是或者的意思
chown 用户名 文件名|目录名
#递归修改文件|目录的组
chgrp -R 组名 文件名|目录名
#递归修改文件权限,操作文件夹
chmod -R 755 文件名|目录名
chmod在设置权限时,可以简单第使用三个数字分别对应__拥有者/组__和__其他__用户的权限
# 直接修改文件|目录的 读|写|执行 权限,但是不能精确到 拥有者|组|其他
chmod +/-rwx 文件名|目录名

- 常见数字组合有(
u表示用户/g表示组/o表示其他): 777===>u=rwx,g=rwx,o=rwx755===>u=rwx,g=rx,o=rx644===>u=rw,g=r,o=r
例子:

操作文件夹:需要有R

3-3 用户管理-新建用户useradd和passwd的更多相关文章
- Linux 用户篇——用户管理命令之useradd、passwd、userdel、usermod
一.用户重要,用户管理命令同样重要 用户是Linux系统安全的核心,每个登录Linux系统的用户都会分配相应的权限,这些权限取决于能否访问系统中各种对象.而管理这些用户的相关信息离不开用户管理命令,比 ...
- (四)Linux之用户管理(用户和用户组)
Linux之用户管理(用户和用户组) 目录 Linux之用户管理(用户和用户组) 一.概述 二.用户和组的关系 三.关于UID和GID(用户ID和组ID) 四.用户和组的数据 /etc/passwd内 ...
- 用户管理 之 用户(User)和用户组(Group)配置文件详解
用户(User)和用户组(Group)的配置文件,是系统管理员最应该了解和掌握的系统基础文件之一,从另一方面来说,了解这些文件也是系统安全管理的重要组成部份:做为一个合格的系统管理员应该对用户和用户组 ...
- linux 用户管理,用户权限管理,用户组管理
linux 用户管理,用户权限管理,用户组管理 一:ls -l 命令 解释 第个d表示是目录,如果是文件是-,如果是连接是l 第2到4个 rwx 表示创建者的操作权限 r 读,w 写,x 执行 第5到 ...
- 给Linux添加新用户,新建用户,新建帐号
给Linux添加新用户,新建用户,新建帐号 添加用户组 sudo groupadd groupname 添加用户 sudo useradd username -m -s /sbin/nologin - ...
- Linux系统 关机/重启/用户切换/注销,用户管理(用户创建/修改,用户组增加/删除),Linux中 / 和 ~ 的区别
1.关机/重启命令 shutdown命令 shutdown -h now :立即关机 shutdown -h 1 :1分钟后关机 shutdown -r now :立即重启 shutdown -r 1 ...
- 【Linux学习】Linux用户管理2—用户配置文件
Linux用户管理2-用户配置文件 /etc/passwd: 存放系统用户的文件 输入 vi /etc/passwd /etc/shadow: 保存保密文件 /etc/group: 群组文件 输入 v ...
- 【Linux学习】Linux用户管理1—用户查询指令、用户切换
Linux用户管理1-用户查询指令.用户切换 一.用户查询指令 who: 查看当前在线用户情况 -a:显示所有用户的所有信息 -m:显示运行该程序的用户名,和"who am I"的 ...
- Oracle Database XE 11gR2 自带的用户,新建用户,修改用户密码
操作系统:Windows 10 x64 第一节:下载 Oracle Database XE 11gR2 第二节:安装.验证安装 Oracle Database XE 11gR2 第三节:Oracle ...
随机推荐
- Python定做一个计算器,小而美哒~
使用qt designer ,按装anaconda后,在如下路径找到: conda3.05\Library\bin designer.exe文件,双击启动: 创建窗体,命名为XiaoDing,整个 ...
- fastjson又被发现漏洞,这次危害可能会导致服务瘫痪
0x00 漏洞背景 2019年9月5日,fastjson在commit 995845170527221ca0293cf290e33a7d6cb52bf7上提交了旨在修复当字符串中包含\\x转义字符时可 ...
- C# ThreadPool 线程池
Thread与ThreadPool Thread: .NetFramework1.0 对线程对象的一个封装 Thread方法很多很强大,但是太过强大,而且没有限制 功能繁多,反而用不好--就像给4岁 ...
- delphi使用Foxit Quick PDF Library读写pdf文本和图片
简介: Debenu Quick PDF Library(PDF编程开发工具)提供一套全方位的 PDF API 函数,帮助您快速简便地处理 PDF 文件.从文档属性的基本操作到创建您自己的 PDF 查 ...
- 打包vue文件,上传到服务器
主要步骤: 1. npm run build生成dist文件夹 2. 将dist文件夹上传到服务器上 3. 服务器上配置nginx,访问路径指向dist文件夹下的index.html,这样当访问ngi ...
- Zeus:1 Vulnhub Walkthrough
主机层面扫描: ╰─ nmap -p1-65535 -sV -A 10.10.202.14 PORT STATE SERVICE VERSION21/tcp open ftp vsftpd 2.0.8 ...
- Python读字节某一位的值,设置某一位的值,二进制位操作
Python读字节某一位的值,设置某一位的值,二进制位操作 在物联网实际应用项目开发中,为了提升性能,与设备端配合,往往最终使用的是二进制字节串方式进行的通信协议封装,更会把0和1.True和Fa ...
- Go Modules使用教程
Go Modules 不完全教程 文章转载自公众号 Golang 成神之路 , 作者 L Go Modules 是 Golang 官方最近几个版本推出的原生的包管理方式,在此之前,社区也不乏多种包管理 ...
- Web项目配置https
在java安装目录下bin目录下keytool工具 keytool -genkey -storetype PKCS12 -keysize 2048 -alias tomcat -keyalg RSA ...
- Java之Collection接口(单列集合根接口)
集合概述 集合到底是什么呢?集合:集合是java中提供的一种容器,可以用来存储多个数据 集合和数组既然都是容器,它们有啥区别呢? 区别1: 数组的长度是固定的. 集合的长度是可变的. 区别2: 数组 ...