用户

  • 超级管理员用户 root 0
  • 普通用户 (0-65535)
    • 系统用户:启动系统服务和进程的用户,不可以登陆. (1-999centos7)(1-499centos6)
    • 可登陆用户:能登录系统的用户(1000-65535 centos7)(500-65535 centos6)

普通用户的id是递增的,系统用户的id是递减的

用户添加useradd

创建用户
Usage: useradd [options] LOGIN
useradd taosiyu -d # 指定用户的家目录
useradd -d /文件夹/文件 用户名
ll home
ll /opt/taosiyu
cd /opt/taosiyu
# bashrc 别名
# profile -g # 指定用户组的id
useradd -g 组 用户名
id taosiyu -G # 指定用户的附加组 groups 附加组
useradd -G root,taosiyu1 taosiyu2
# 把taosiyu2 加到root, 和taosiyu1的附加组中 在组里就能使用组里的权限处理文件
id taosiyu3 cd /text/
ll /etc/skel/ -a -k # 指定复制哪个文件夹下的内容,需要和-m一起使用
-m # 创建用户的家目录
useradd -k /etc/sysconfig/metwork-scripts/ -m taosiyu
ll /home/taosiyu -c + 'message' # 创建指定用户的描述信息
useradd -c "where are your future"
vim /etc/passwd
# /etc/passwd查看描述信息"message" -N
# 不创建同名的组,以user为组 GROUP=100 默认100,
# 这里就是系统用户组
useradd -N taosiyu -r
useradd -r taosiyu
id taosiyu -s # 指定用户登录后使用的shell
cat /etc/shells
useradd -s /sbin-nogloin 用户名
passwd taosiyu
ssh taosiyu@190.198.107.133
#nologin登录后默认被系统退出 -u # 指定用户的id,创建用户时uid始终以最大uid顺延
useradd -u 2000 taosiyu
id taosiyu
useradd taosiyu
useradd taosiyu1
id taosiyu1 # uid=2001 -D 显示系统的默认配置
useradd -D # 查看系统配置
-D [option] -s可以修改系统的默认配置. 每创建一个用户都是从/etc/skel复制
  • 相关文件

    • /etc/default/useradd 创建用户的默认文件.
    • /etc/skel/*默认复制的文件
    • /etc/login.defs

用户修改usermod

usermod修改
-c # 修改描述信息
usermod -c 'taosiyu made in furtue' taosiyu
grep 'taosiyu' /etc/passwd -d # 修改家目录,默认不会创建新目录.如果向移动家目录,则需要使用-m
-m # 移动家目录,只能和-d一起使用
cd ~
ll /home
usermod -d /opt/taosiyu taosiyu
ll /home
grep 'taosiyu' /etc/passwd -g # 修改用户组
-G # 修改客户的附加组,默认情况是替换,将之前的附加组替换成新设置的(后面必须是组)
usermode -G root,taosiyu taosiyu1
id taosiyu1
username -G taosiyu2 taosiyu1 # taosiyu2替换上边的root,taosiyu附加组 -a # 修改客户的添加,默认是追加附加组 -a -G 顺序不能变
usermod -a -G root taosiyu1 -l +newname +oldname # 修改用户的登录名
usermod -l taosiyu guorui
id taosiyu -L # 锁定用户,不能登录系统,修改密码默认解锁用户锁.
passwd taosiyu
usermod -L taosiyu
ssh taosiyu@192.168.107.133 # 拒绝登录 -U # 解锁用户锁
-s # 修改用户登录后的shell
-u # 修改用户的uid
-e # 失效日期,后面加年月日,修改用户的失效时间,失效后无法登陆
usermod -e 2019-08-07 taosiyu # 后面加年月日

删除用户userdel

默认删除用户,不删除用户家目录
userdel taosiyu
id taosiyu
ll /home/taosiyu -f # 强制删除,登录状态下也能删除
# 删除用户时,默认家目录不会被删除,默认情况下,用户登录状态下不能删除用户,强制删除后用户不退出还可以使用.
-r # 删除家目录
userdel -f -r taosiyu

查看用户相关信息id

-g 只显示组id
-G 只显示附加组id
-u 只显示用户id
-n 显示名称,需要和显示id搭配使用

切换用户

su [options] [-] [USER [arg]...]

-    # 完整切换,登录式切换,环境变量等都会切换
-c # 切换用户执行命令,然后切换回原用户 echo $PATH # 查看环境变量
exit # 退出切换

切换用户的方式

  • 完整切换:su - username 登录式切换,环境变量等都会切换
  • 不完整切换:su username不会切换用户的环境变量,家目录等.
  • root切换普通用户不需要密码,非root用户切换需要密码

切换用户执行命令

su - taosiyu -c 'whoami'
ll /home/root

sudo执行本身不能执行的命令

sudo 修改配置文件为/etc/sudoers

vim /etc/sudoers
taosiyu ALL=(all) NOPASSWD:ALL
sudo useradd guorui 用户名 ALL=(ALL) NOPASSWD:ALL
# NOPASSWD,不用输入密码

/etc/passwd文件

用户名:密码,使用x占位:UID:GID:描述信息:家目录:登录后使用的shell

设置密码passwd

passwd taosiyu # 设置密码

-d # delete 删除指定用户的密码,删除之后用户不能登陆
passwd -d taosiyu -l # 锁定用户
-u # 解锁用户
-e # 在下次登陆以后强制用户修改密码
-f # 强制操作
-x maximun=Days # 密码的最长使用时间
-n minmum=DAYS # 密码的最短使用时间
-waningday # 密码过期多长时间提醒
-i --inactive=Days # 密码过期多久之后该用户不能使用
# inacticeday 密码过期多长时间以后禁用
--stdin # 从标准输入读取密码
echo '123'|passwd --stdin user # 修改密码

存放文件/etc/shadow

  • 用户名
  • 密码($6 加密方式 默认sha512)$盐$加密后的密码串$
  • : 从1970年1月1日到最后一次修改密码经过的时间
  • 密码的最短使用时间 (0表示随时可以修改)
  • 密码的最常使用时间(99999表示永不过期)
  • 密码过期多久提醒(默认是一周)
  • 密码过期多长时间锁定(

    linux之用户,用户组,软件操作的更多相关文章

    1. 通过登入IP记录Linux所有用户登录所操作的日志

      通过登入IP记录Linux所有用户登录所操作的日志 对于Linux用户操作记录一般通过命令history来查看历史记录,但是如果在由于误操作而删除了重要的数据的情况下,history命令就不会有什么作 ...

    2. Linux系统用户/用户组/文件权限相关

      目录一.Linux系统用户/用户组权限相关二.Linux系统文件权限相关 一.Linux系统用户/用户组权限相关 .命令:usermod 用法:usermod [-agGus] user args ‘ ...

    3. linux —— 学习笔记(软件操作:安装、卸载、执行)

      目录: 0.相关基本命令    1.安装软件    2.卸载软件    3.打开软件  0.相关基本命令 与软件操作相关的主要命令有:dpkg  和 apt-get . dpkg   : “dpkg ...

    4. linux普通用户提权操作

      [root@test1 ~]# vim /etc/sudoers ## Allow root to run any commands anywhere root ALL=(ALL) ALLzhouyu ...

    5. Linux:用户&用户组操作

      用户:查看用户:whoami.who am i.who mom likes创建用户:adduser dgw切换登录用户:su -l dgw退出当前用户: exit删除用户:deluser dgw -- ...

    6. Linux 创建用户 用户组 用户权限

      首先 你要有个root账号 然后才能做下面几条操作: useradd username 创建用户usernamepasswd user_pwd     给已创建的用户username设置密码 关于us ...

    7. linux 创建用户 用户组,sudo,禁止root远程ssh登录

      创建用户  useradd hanli 为新用户设置密码(在root下可以为普通用户重置密码)  passwd hanli 创建用户组  groupadd  op 将用户添加到用户组  usermod ...

    8. Linux命令--用户用户组管理

      新增用户组 : groupadd groupadd [-g GID] 组名 不加-g 则按照系统默认的gid创建组,跟用户一样,gid也是从500开始的 修改用户组信息 : groupmod grou ...

    9. 学习linux之用户-文件-权限操作

      添加用户组 添加 gropuadd 用户组名 修改 groupmod 用户组名 删除 groupdel 用户组名 添加用户 添加 useradd 用户名 设密码 passwd 密码 删除 userde ...

    随机推荐

    1. CentOS 使用 sudo 遇到 command not found 问题解决

      一般通过编译安装的软件会选择自定义路径,例如我编译安装 gvim 在 /usr/loca/bin/ 下,则使用 $ sudo gvim 的时候提示 command not found 问题. 这个问题 ...

    2. 【vs2015发布程序】

      1.选中网站右键,选择发布Web应用 2.发布目标选择自定义 3.配置文件名称 4.发布方式选择File System,选择发布的程序存放路径 5.

    3. hdu 6068 Classic Quotation

      题 QAQ http://acm.hdu.edu.cn/showproblem.php?pid=6068 2017 Multi-University Training Contest - Team 4 ...

    4. Solr full improt时遇到的问题

      安装和配置solr转载于:https://blog.csdn.net/u010510107/article/details/81051795jdk1.8 solr7.2 mysql8.0.17-bin ...

    5. java内存区域以及GC回收

      参考资料: http://www.cnblogs.com/zhguang/p/3257367.html 概要: Java GC机制主要完成3件事:确定哪些内存需要回收,确定什么时候需要执行GC,如何执 ...

    6. TTTTTTTTTTTTTT CF 95 B 构造4,7幸运数字 贪心 构造 string

      B. Lucky Numbers time limit per test 2 seconds memory limit per test 256 megabytes input standard in ...

    7. 技巧:在 C/C++中如何构造通用的对象链表[转]

      原文:技巧:在 C/C++中如何构造通用的对象链表 虚拟链表和类链表可以很好地实现这一点 您是否做过这样一个项目,它要求您在内存中保存数目不定的若干不同对象?对于某些情况,二叉树是最佳选择,但在通常情 ...

    8. 消费端ACK和重回队列

      使用场景 消费端ACK和重回队列 消费端ACK使用场景: 1.消费端进行消费的时候,如果由于业务异常我们可以进行日志记录,然后进行补偿. 2.由于服务器宕机等严重问题,那我们就需要手工进行ACK保障消 ...

    9. 代码审计之CVE-2019-9081 Laravel5.7 反序列化 RCE复现分析

      本文首发于先知社区:https://xz.aliyun.com/t/5510 环境: php7.2+apache+laravel5.7 漏洞描述: Laravel Framework是Taylor O ...

    10. C#, Java, PHP, Python和Javascript几种语言的AES加密解密实现

      特别提示:本人博客部分有参考网络其他博客,但均是本人亲手编写过并验证通过.如发现博客有错误,请及时提出以免误导其他人,谢谢!欢迎转载,但记得标明文章出处:http://www.cnblogs.com/ ...