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添加的用户是没有权限使用sudoroot 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

执行后如下: 其中rwss表示__可执行权限__

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=rwx
  • 755===>u=rwx,g=rx,o=rx
  • 644===>u=rw,g=r,o=r

例子:

操作文件夹:需要有R

3-3 用户管理-新建用户useradd和passwd的更多相关文章

  1. Linux 用户篇——用户管理命令之useradd、passwd、userdel、usermod

    一.用户重要,用户管理命令同样重要 用户是Linux系统安全的核心,每个登录Linux系统的用户都会分配相应的权限,这些权限取决于能否访问系统中各种对象.而管理这些用户的相关信息离不开用户管理命令,比 ...

  2. (四)Linux之用户管理(用户和用户组)

    Linux之用户管理(用户和用户组) 目录 Linux之用户管理(用户和用户组) 一.概述 二.用户和组的关系 三.关于UID和GID(用户ID和组ID) 四.用户和组的数据 /etc/passwd内 ...

  3. 用户管理 之 用户(User)和用户组(Group)配置文件详解

    用户(User)和用户组(Group)的配置文件,是系统管理员最应该了解和掌握的系统基础文件之一,从另一方面来说,了解这些文件也是系统安全管理的重要组成部份:做为一个合格的系统管理员应该对用户和用户组 ...

  4. linux 用户管理,用户权限管理,用户组管理

    linux 用户管理,用户权限管理,用户组管理 一:ls -l 命令 解释 第个d表示是目录,如果是文件是-,如果是连接是l 第2到4个 rwx 表示创建者的操作权限 r 读,w 写,x 执行 第5到 ...

  5. 给Linux添加新用户,新建用户,新建帐号

    给Linux添加新用户,新建用户,新建帐号 添加用户组 sudo groupadd groupname 添加用户 sudo useradd username -m -s /sbin/nologin - ...

  6. Linux系统 关机/重启/用户切换/注销,用户管理(用户创建/修改,用户组增加/删除),Linux中 / 和 ~ 的区别

    1.关机/重启命令 shutdown命令 shutdown -h now :立即关机 shutdown -h 1 :1分钟后关机 shutdown -r now :立即重启 shutdown -r 1 ...

  7. 【Linux学习】Linux用户管理2—用户配置文件

    Linux用户管理2-用户配置文件 /etc/passwd: 存放系统用户的文件 输入 vi /etc/passwd /etc/shadow: 保存保密文件 /etc/group: 群组文件 输入 v ...

  8. 【Linux学习】Linux用户管理1—用户查询指令、用户切换

    Linux用户管理1-用户查询指令.用户切换 一.用户查询指令 who: 查看当前在线用户情况 -a:显示所有用户的所有信息 -m:显示运行该程序的用户名,和"who am I"的 ...

  9. Oracle Database XE 11gR2 自带的用户,新建用户,修改用户密码

    操作系统:Windows 10 x64 第一节:下载 Oracle Database XE 11gR2 第二节:安装.验证安装 Oracle Database XE 11gR2 第三节:Oracle ...

随机推荐

  1. Python定做一个计算器,小而美哒~

    使用qt designer ,按装anaconda后,在如下路径找到: conda3.05\Library\bin designer.exe文件,双击启动: ​ 创建窗体,命名为XiaoDing,整个 ...

  2. fastjson又被发现漏洞,这次危害可能会导致服务瘫痪

    0x00 漏洞背景 2019年9月5日,fastjson在commit 995845170527221ca0293cf290e33a7d6cb52bf7上提交了旨在修复当字符串中包含\\x转义字符时可 ...

  3. C# ThreadPool 线程池

    Thread与ThreadPool Thread: .NetFramework1.0  对线程对象的一个封装 Thread方法很多很强大,但是太过强大,而且没有限制 功能繁多,反而用不好--就像给4岁 ...

  4. delphi使用Foxit Quick PDF Library读写pdf文本和图片

    简介: Debenu Quick PDF Library(PDF编程开发工具)提供一套全方位的 PDF API 函数,帮助您快速简便地处理 PDF 文件.从文档属性的基本操作到创建您自己的 PDF 查 ...

  5. 打包vue文件,上传到服务器

    主要步骤: 1. npm run build生成dist文件夹 2. 将dist文件夹上传到服务器上 3. 服务器上配置nginx,访问路径指向dist文件夹下的index.html,这样当访问ngi ...

  6. Zeus:1 Vulnhub Walkthrough

    主机层面扫描: ╰─ nmap -p1-65535 -sV -A 10.10.202.14 PORT STATE SERVICE VERSION21/tcp open ftp vsftpd 2.0.8 ...

  7. Python读字节某一位的值,设置某一位的值,二进制位操作

    Python读字节某一位的值,设置某一位的值,二进制位操作   在物联网实际应用项目开发中,为了提升性能,与设备端配合,往往最终使用的是二进制字节串方式进行的通信协议封装,更会把0和1.True和Fa ...

  8. Go Modules使用教程

    Go Modules 不完全教程 文章转载自公众号 Golang 成神之路 , 作者 L Go Modules 是 Golang 官方最近几个版本推出的原生的包管理方式,在此之前,社区也不乏多种包管理 ...

  9. Web项目配置https

    在java安装目录下bin目录下keytool工具 keytool -genkey -storetype PKCS12 -keysize 2048 -alias tomcat -keyalg RSA ...

  10. Java之Collection接口(单列集合根接口)

    集合概述 集合到底是什么呢?集合:集合是java中提供的一种容器,可以用来存储多个数据 集合和数组既然都是容器,它们有啥区别呢? 区别1: 数组的长度是固定的. 集合的长度是可变的. 区别2:  数组 ...