首页 > 系统相关 >linux管理命令-7

linux管理命令-7

时间:2024-09-12 16:54:05浏览次数:12  
标签:管理 passwd etc 用户 命令 tarena linux root localhost

用户账号简介

作用: 1.可以登陆操作系统 2.不同的用户具备不同的权限

唯一标识:UID(编号从0开始的编号,默认最大60000)

管理员root的UID:永远为0

普通用户的UID:默认从1000开始

组账号简介

作用: 方便管理用户

唯一标识:GID(编号从0开始的编号,默认最大60000)

原则:Linux一个用户必须至少属于一个组

组账户的分类:

基本组一般情况与用户同名,一个用户必须有基本组,基本组只能有一个

附加组(从属组)一个用户可以有多个附加组,也可以没有附加组

]# useradd  tom

组:tom   wudang   shaolin

用户配置文件

/etc/passwd:存放用户基本信息配置文件

[root@localhost ~]#head -1  /etc/passwd #显示文件第一行

root:x:0:0:root:/root:/bin/bash     

用户名:密码占位符:UID:基本组GID:用户描述信息:家目录:解释器

[root@localhost ~]# useradd  wangwu  

[root@localhost ~]# grep  wangwu  /etc/passwd

[root@localhost ~]# id  wangwu    #查看用户基本信息

useradd创建用户

• 常用命令选项

-u:指定 用户UID

-d:指定宿主目录(家目录),默认为 /home/用户名

-G:指定所属的附加组,-g指定基本组

-s:指定用户的登录解释器,默认为/bin/bash

-u:指定 用户UID

]# useradd   nsd01  

]# ls   /home/                #查看家目录的产生

]# grep  nsd01   /etc/passwd   #查看nsd01信息

]# id  nsd01                   #查看nsd01用户基本信息

]# id  gaga         

id: gaga: no such user           #无此用户   

]# useradd  -u  1314nsd02  #指定UID创建用户

]# id   nsd02                  #查看nsd02用户基本信息

]# grep   nsd   /etc/passwd   #查看用户信息

]# useradd   nsd03

]# grep   nsd    /etc/passwd

]# id   nsd03

-d:指定家目录,默认为 /home/用户名

[root@nb ~]# useradd  -d  /opt/abc07   nsd07

[root@nb ~]# ls  /opt

[root@nb ~]# ls -A /opt/abc/


[root@nb ~]# grep  nsd07  /etc/passwd



不可以事先创建家目录,家目录的父目录必须存在

[root@localhost ~]# useradd  -d  /opt/nsd04   nsd04

[root@localhost ~]# grep   nsd04   /etc/passwd

[root@localhost ~]# ls  /opt/


[root@localhost ~]# useradd   -d  /opt/haha05   nsd05

[root@localhost ~]# grep  nsd05   /etc/passwd

[root@localhost ~]# ls   /opt/


-G:指定所属的附加组   -g:指定基本组 (了解一下)

]# groupadd   stugrp    #单独创建stugrp组


]# useradd  -G   stugrp   nsd06

]# id  nsd06


]# useradd  -G   stugrp   nsd07

]# id   nsd07


]# groupadd  tmooc  #单独创建tmooc组

]# useradd  -G  stugrp,tmooc  nsd11

]# id  nsd11    


-s:指定用户的登录解释器 /bin/bash

shell:壳,解释器

用户---->解释器---->内核---->硬件

/sbin/nologin:禁止用户登录操作系统


]# useradd  -s  /sbin/nologin   nsd10

]# grep   nsd10    /etc/passwd


]# passwd  nsd10   #设置密码,密码没有屏幕显示,需要输入两次密码


]# useradd  -s  /sbin/nologin   nsd12

]# grep   nsd12   /etc/passwd



usermod命令

格式:usermod [选项]... 用户名

• 常用命令选项

-l:更改用户帐号的登录名称

-u:用户id

-d:家目录路径

-s:登录解释器

-G:附加组 #重置附加组


-l:更改用户帐号的登录名称

-u:用户id

-s:登录解释器

]# useradd   nsd13                

]# id   nsd13

]# grep  nsd13  /etc/passwd

]# usermod  -l  stu13   nsd13      #修改用户名字

]# id  stu13

]# usermod  -u  1600   stu13     #修改用户的UID

]# id  stu13

]# usermod  -s   /sbin/nologin  stu13   #修改用户的解释器程序

]# grep  stu13  /etc/passwd



-d:家目录路径

[root@localhost ~]# useradd   nsd15     

[root@localhost ~]# grep  nsd15   /etc/passwd

[root@localhost ~]# ls   /home/

[root@localhost ~]# usermod   -d  /etc/abc   nsd15

[root@localhost ~]# grep   nsd15   /etc/passwd

[root@localhost ~]# ls  /etc/abc

ls: 无法访问/etc/abc: 没有那个文件或目录

[root@localhost ~]# useradd   nsd16     

[root@localhost ~]# grep  nsd16   /etc/passwd

[root@localhost ~]# ls   /home/

[root@localhost ~]# usermod -md/mnt/abc16  nsd16  #将用户原有的家目录进行移动,并且设置相应的权限

[root@localhost ~]# grep   nsd16   /etc/passwd

[root@localhost ~]# ls  /mnt


-G:修改用户的附加组   #重置附加组 (了解)

[root@localhost ~]# useradd   nsd17

[root@localhost ~]# id   nsd17

[root@localhost ~]# groupadd  stugrp   #创建组

[root@localhost ~]# usermod  -G  stugrp   nsd17

[root@localhost ~]# id   nsd17


[root@localhost ~]# groupadd  wudang   #创建组

[root@localhost ~]# usermod  -G  wudang  nsd17

[root@localhost ~]# id   nsd17

[root@localhost ~]# usermod  -G  wudang,stugrp  nsd17

[root@localhost ~]# id   nsd17


passwd设置用户密码


交互式:

[root@nb ~]# passwd  stu01

更改用户 stu01 的密码 。

新的 密码:

无效的密码: 密码少于 8 个字符

重新输入新的 密码:

passwd:所有的身份验证令牌已经成功更新。


非交互式设置密码:只能管理员使用

[root@nb ~]# echo  123  |  passwd  --stdin   nsd02

更改用户 nsd02 的密码 。

passwd:所有的身份验证令牌已经成功更新。


[root@nb ~]# echo redhat  |  passwd  --stdin   nsd02

更改用户 nsd02 的密码 。

passwd:所有的身份验证令牌已经成功更新。

[root@nb ~]#



[root@nb ~]# useradd   nsd18

[root@nb ~]# echo 123  |  passwd  --stdin   nsd18


[root@localhost ~]# su  -  nsd18      #临时切换用户身份

[nsd18@localhost ~]$ passwd

更改用户 nsd18的密码 。

Current password:             #输入旧密码

新的 密码:                    #输入新密码

重新输入新的 密码:            #重新输入新密码

passwd:所有的身份验证令牌已经成功更新。


[nsd18@localhost ~]$  exit    #退出。回到root用户身份





/etc/shadow,保存密码字串/有效期等信息


每个用户记录一行,以:分割为9个字段

[root@localhost ~]# grep  nsd18  /etc/shadow

nsd18:$6$NVe937Nd$B0n94XrpQ.LipQHTpYh0iV/M4jCLdccfHxzRLprdxDzwk8WDDh/TzdTfh8lA9y9WKJ.8Ls/l5.w/1W.nV6CFX/:18481:0:99999:7:::


上一次修改密码的时间:自1970-1-1到达上一次修改密码的时间,所经历的天数

字段1:用户帐号的名称

字段2:加密后的密码字符串

字段3:上次修改密码的时间

字段4:密码的最短有效天数,默认0

字段5:密码的最长有效天数,默认99999

字段6:密码过期前的警告天数,默认7

字段7:密码过期后多少天禁用此用户账号

字段8:帐号失效时间,默认值为空

字段9:保留字段(未使用)


~/.bashrc:每次进入新的Bash环境时执行(开启新的终端)


[root@localhost ~]# vim   /root/.bashrc  #定义永久别名

……

alias  hn='hostname'   #新增配置内容

……


开启新的终端进行测试:

[root@localhost ~]# hn


/etc/bashrc:全局配置文件,影响全体用户 (开启新的终端)

[root@localhost ~]# vim   /etc/bashrc

……

alias    myls='ls   -ld'      #新增配置

……

#新开一个终端验证

[root@localhost ~]# useradd  nsd21

[root@localhost ~]# su  -  nsd21   #相当于开启新的终端

[nsd21@localhost ~]$ myls  /opt

[nsd21@localhost ~]$ exit

登出

[root@localhost ~]#



删除用户

userdel命令

格式:userdel [-r] 用户名

添加 -r 选项,家目录/用户邮件也一并删除


]# userdel  -r   nsd18  #连同家目录一并删除


]# userdel nsd20  #不删除家目录,只删除用户信息



组管理

存放所有组信息的配置文件:/etc/group

[root@localhost ~]# groupadd    tarena  #新建一个组

[root@localhost ~]# grep  tarena  /etc/group#查看组信息

tarena:x:1607:

组名字:密码占位符:GID:组成员列表      


[root@localhost ~]# useradd  kaka

[root@localhost ~]# useradd  nb   

[root@localhost ~]# useradd  jack

[root@localhost ~]# useradd  kenji



gpasswd命令(添加附加组)

格式:gpasswd [选项]... 组名

•常用命令选项

-a:添加组成员,每次只能加一个

-d: 删除组成员,每次只能删一个

-M:定义(重置)组成员用户列表,可设置多个用户



]# gpasswd  -a  kaka  tarena  #添加用户kaka到tarena组

]# grep   tarena   /etc/group     #查看组信息

]# id   kaka

]# gpasswd   -a   nb   tarena   #添加用户nb到tarena组

]# grep    tarena   /etc/group     

]# gpasswd  -M  'jack,kenji'   tarena    #定义组成员列表

]# grep   tarena   /etc/group


]# gpasswd   -a   nb   tarena   #添加用户nb到tarena组

]# grep  tarena   /etc/group

]# gpasswd  -d  nb  tarena #将nb用户从tarena组中删除

]# grep   tarena    /etc/group   


]# gpasswd   -M  ''      tarena    #删除组中所有成员

]# grep  tarena   /etc/group



-A:定义组管理员列表(组管理员可以属于此组也可以不属于此组)

[root@localhost ~]# su  -  nb

[nb@localhost ~]$ gpasswd  -a  kaka  tarena

gpasswd:没有权限。

[nb@localhost ~]$ exit


[root@localhost ~]# gpasswd  -A  nb  tarena  #设置组管理员

[root@localhost ~]# su  -  nb

[nb@localhost ~]$ gpasswd  -a  kaka  tarena

正在将用户“kaka”加入到“tarena”组中

[nb@localhost ~]$ exit

[root@localhost ~]#



/etc/gshadow:组的管理信息配置文件

[root@localhost ~]# grep   tarena  /etc/gshadow

tarena:!:nb:     

组名:密码加密字符串:组的管理员列表:组成员列表


]# gpasswd   -A   'nb,kenji'  tarena  #设置多个组管理员

]# grep  tarena  /etc/gshadow


]# gpasswd   -A   ''   tarena    #删除所有的组管理员

]# grep  tarena   /etc/gshadow



用户基本信息/etc/passwd

用户密码信息/etc/shadow

组基本信息/etc/group

组管理信息/etc/gshadow


用户基本信息

A/etc/passwd  B/etc/psaswd  

C/etc/pasawd  D/etc/pwasswd


删除组账号:删除组的时候,不可以删除基本组

[root@localhost ~]# groupdel   tarena    

[root@localhost ~]# groupdel   tmooc


[root@localhost ~]# grep   tmooc  /etc/group

[root@localhost ~]# grep  tarena  /etc/group


总结:Linux系统执行useradd命令,会完成那些操作?

1.会在/etc/passwd增加一行信息

2.会在/etc/shadow增加一行信息

3.会在/home新增用户家目录

4.会在/var/spool/mail增加用户邮件文件

5.会在/etc/group增加一行组信息

6.会在/etc/gshadow增加一行组的管理信息


总结:Linux系统执行userdel -r命令,会完成那些操作?

1.会在/etc/passwd删除一行信息

2.会在/etc/shadow删除一行信息

3.会在/home删除用户家目录

4.会在/var/spool/mail删除用户邮件文件

5.会在/etc/group删除一行组信息

6.会在/etc/gshadow删除一行组的管理信息

标签:管理,passwd,etc,用户,命令,tarena,linux,root,localhost
From: https://blog.51cto.com/u_17015151/11992124

相关文章

  • 基于Node.js+vue中心医院药品管理系统的设计与实现(开题+程序+论文) 计算机毕业设计
    本系统(程序+源码+数据库+调试部署+开发环境)带文档lw万字以上,文末可获取源码系统程序文件列表开题报告内容研究背景随着医疗技术的不断进步和人们对健康需求的日益增长,中心医院作为医疗服务的重要载体,其运营效率和管理水平直接影响到患者的治疗效果与满意度。药品作为医疗......
  • 基于Node.js+vue基于springboot的影视资讯管理系统(开题+程序+论文) 计算机毕业设计
    本系统(程序+源码+数据库+调试部署+开发环境)带文档lw万字以上,文末可获取源码系统程序文件列表开题报告内容研究背景随着互联网的飞速发展,影视行业迎来了前所未有的繁荣期。海量影视资源的涌现,使得用户对于高效、便捷地获取影视资讯的需求日益增长。传统的影视资讯管理方式......
  • 详解新规|逐条分析《电子认证服务管理办法(征求意见稿)》修订重点
    近日,工信部就《电子认证服务管理办法(征求意见稿)》公开征求意见。来源|公开资料图源|Pixabay编辑|公钥密码开放社区《电子认证服务管理办法》(以下简称《办法》)于2009年2月18日由中华人民共和国工业和信息化部发布,并在2015年4月29日进行了修订。该《办法》包括总则、电子认证服务机构、......
  • windowsXP中所有DOS命令
    winver---------检查Windows版本wmimgmt.msc----打开windows管理体系结构(WMI)wupdmgr--------windows更新程序wscript--------windows脚本宿主设置write----------写字板---------系统信息wiaacmgr-------扫描仪和照相机向导winchat--------XP自带局域网聊天mem.exe------......
  • linux字体安装
    fc-cache命令安装fc-cache是字体配置的一部分,它是fontconfig包的一部分。fc-cache命令用于建立字体信息的缓存,这有助于提高系统识别已安装字体的速度。如果你需要安装fc-cache命令,通常意味着你需要安装fontconfig包。具体安装方法取决于你的操作系统。yuminstallfontconfig涮新......
  • Linux指令记不住的笔记
    ls查看当前路径下内容cd下一级路径名称或者别的路径进入下一级或别的路径cd..退回上一级路径rm文件名删除文件,文件名可以带路径rmdir文件夹名删除文件夹chmod更改文件或目录的权限rwx分别是读(read)、写(write)和执行(execute)ugoa分别是所有者(owner)、所在组(gr......
  • python基于django框架医院管理系统设计与实现mysql数据库
    随着信息技术的快速发展和医疗卫生事业的不断进步,医院信息化管理已成为提高医疗服务质量和效率的重要手段。本文设计并实现了一个基于PythonDjango框架的医院管理系统,旨在为医院提供一个全面、高效、易用的信息化管理平台。本系统采用Django框架作为后端开发框架,利用其强大......
  • Linux环境C语言pthread多线程
    pthread线程库介绍pthread库是POSIX线程(PortableOperatingSystemInterfaceforuniXthreads)库的简称,它提供了一套创建和管理线程、以及线程间同步的机制。pthread库是UNIX系统上实现多线程编程的一个标准接口,也被广泛支持在类UNIX系统(Linux和macOS)中。头文件#in......
  • Java学习1:命令行窗口执行.java程序(自用)
    编写源代码:编译与执行:1、普通方法:生成了.class文件(字节码)2、从Java11开始,由单个文件构成的java程序,无需编译,可以直接执行。使用这种方法也不产生.class文件。该方法可快速测试程序。但源文件必须是单个的.java文件。问题:文件名与public类名是否必须相同?答:不一定......
  • 基于springboot+vue的师生健康信息管理系统(源码+数据库+文档)
    师生健康信息|师生健康信息管理系统目录基于springboot+vue的师生健康信息管理系统一、前言二、系统设计三、系统功能设计 四、数据库设计 五、核心代码 六、论文参考七、最新计算机毕设选题推荐八、源码获取:博主介绍:✌️大厂码农|毕设布道师,阿里云开发社区乘风......