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. 【THUPC 2018】赛艇

    Problem Description Lavender.Caryophyllus.Jasmine.Dianthus现在在玩一款名叫"赛艇"的游戏. 这个游戏的规则是这样的: 玩家 ...

  2. Koa 本地搭建 HTTPS 环境

    openssl 首先本地需要安装 openssl,用于生成自签名证书. $ brew install openssl 检查安装: $ openssl version LibreSSL 2.6.5 生成 ...

  3. [ERR] Node 172.16.6.154:7002 is not empty. Either the node already knows other nodes (check with CLUSTER NODES) or contains some key in database 0.

    关于启动redis集群时: [ERR] Node 172.168.63.202:7001 is not empty. Either the nodealready knows other nodes ...

  4. 服务器性能测试实时监控Linux命令

    实时监控 top -h : 查看帮助 -p : 监控指定进程,当监控多个进程时,进程ID以逗号隔开,这个选项只能在命令行下使用 top 任务区命令 M: 按内存使用率排序(大写) P:按CPU使用率排 ...

  5. mysql学习体系

    1. MySQL的安装和配置 -- 安装的步骤 -- 配置参数的设置 -- 全局变量量与会话变量量的定义及区别 -- 常⻅见参数有哪些,有何定义,影响范围是什什么 -- 如何查看参数的值 -- 配置⽂ ...

  6. selenium-server-standalone下载网站

    http://selenium-release.storage.googleapis.com/index.html

  7. 使用原生代码实现一个Events模块,可以实现自定义事件的订阅、触发、移除功能

    function Events() { // 放置所有添加的 监听事件 this._events = {} } Events.prototype = { on: function (name, fn, ...

  8. 字典树(Trie)详解

    详解字典树(Trie) 本篇随笔简单讲解一下信息学奥林匹克竞赛中的较为常用的数据结构--字典树.字典树也叫Trie树.前缀树.顾名思义,它是一种针对字符串进行维护的数据结构.并且,它的用途超级广泛.建 ...

  9. 【安富莱】V6,V5开发板用户手册,重在BSP驱动包设计方法,HAL库的框架学习,授人以渔(2019-11-04)

    说明: 1.本教程重在BSP驱动包设计方法和HAL库的框架学习,并将HAL库里面的各种弯弯绕捋顺,从而方便我们的程序设计. 2.本次工程延续以往的代码风格,从底层BSP驱动包到应用代码,变量命名,文件 ...

  10. angularjs中directive指令与component组件有什么区别?

     壹 ❀ 引 我在前面花了两篇博客分别系统化介绍了angularjs中的directive指令与component组件,当然directive也能实现组件这点毋庸置疑.在了解完两者后,即便我们知道co ...