linux关于用户和用户组的常用指令
用户:使用操作系统的人
用户组:具有相同系统权限的一组用户
前面加cat命令就可以查看
./etc/group 存储当前系统中所有用户组信息,如cat ./etc/group
Group : x : 123 : abc,def,xyz
组名称:组密码占位符:组编号:组中用户名列表
若为组名与用户名相同,且组内就一个用户的时候,是可以省略最后一个冒号后面的用户名的
root:x:0: 超级管理员
用户手动创建的用户组,最小组号是500
组密码占位符全都用x来表示
./etc/gshadow 存储当前系统中用户组的密码信息
Group: * : : abc,def,xyz
组名称:组密码 :组管理者:组中用户名列表
组密码如果为*/!/空都可以认为没有密码
cat ./etc/password 存储当前系统中所有用户的信息。
User: x : 123 : 456 : xxxxxxxx :/home/user :/bin/bash
用户名:密码占位符:用户编号:用户组编号:用户注释信息:用户主目录:shell类型
每一行对应一个用户的配置信息
Root用户编号是0
./etc/shadow存储当前系统中所有用户的密码信息
User: vf;/Zu8sdf…:::::
用户名:密码 :::::
用户组和用户的基本管理命令
groupadd sexy 添加用户组,名称为sexy
groupmod –n market sexy 修改用户组sexy 改为名称market
groupmod –g 668 market 修改用户组market的组编号为668
groupadd –g 888 boss 创建用户组boss,并给定一个组编号888
注意:删除用户组之前需要删除组里面的用户
groupdel market
与用户有关的命令
groupadd sexy #添加一个名为sexy的用户组
useradd –g sexy sdf #sexy的用户组添加名为sdf的用户
useradd –g sexy jzmb
useradd –d /home/xx immy #添加immy 用户时没有指定用户组,系统会自动给他分配一个与用户名相同的用户组
给用户添加备注:
usermod –c dgdzmx sdf
usermod –l cls sdf #将用户名sdf改为cls
usermod –d /home/cls cls
Usermod –g sexy imooc #修改用户imooc的用户组为sexy
Userdel jzmb #删除用户但不删除文件夹里的文件
Userdel –r jzmb # 删除用户并删除文件夹
服务器维护,暂时禁止普通用户登录服务器(root),只需要在etc目录下创建一个名为nologin的文件就可以了
touch /etc/nologin
passwd –l cls #锁定账户cls的命令
passwd –u cls #解锁账户cls的命令
passwd –d cls #消除账户cls的密码
gpasswd –a cls boss //把cls用户添加到boss用户组中(一个用户同时属于2个组,为cls的附属组)
newgrp boss //切换用户组
删除附属组
gpasswd –d cls boss 把cls用从boss用户组中删除(附属组)
为一个用户添加多个附属组
Useradd –g group1 –G group2,group3,…
给用户组设置组密码
Gpasswd imooc 改变imooc组密码
su username 切换到其他用户,但是需要其他用户的密码.
除非root用户切换不需要密码
whoami 我是谁?显示当前登录用户名
id imooc
显示指定用户信息,包括用户编号,用户名
主要组编号及名称,附属组列表
groups immy #显示immy用户所在的所有组
chfn 用户名 #设置用户资料,依次输入用户资料
finger 用户名 # 显示详细用户资料
Linux下临时切换用户和查看端口
https://blog.csdn.net/wade3015/article/details/90270214
临时切换用户
sudo : 暂时切换到超级用户模式以执行超级用户权限,提示输入密码时该密码为当前用户的密码,而不是超级账户的密码。不过有时间限制,Ubuntu默认为一次时长15分钟。
su : 切换到某某用户模式,提示输入密码时该密码为切换后账户的密码,用法为“su 账户名称”。如果后面不加账户时系统默认为root账户,密码也为超级账户的密码。没有时间限制。
sudo -i: 为了频繁的执行某些只有超级用户才能执行的权限,而不用每次输入密码,可以使用该命令。提示输入密码时该密码为当前账户的密码。没有时间限制。执行该命令后提示符变为“#”而不是“$”。想退回普通账户时可以执行“exit”或“logout” 。
sudo -i 直接运行sudo命令加-i参数
sudo su 运行sudo命令给su命令提权,运行su命令。
sudo -i 运行结果 PWD=/root
sudo su 运行结果 PWD=/home/用户名(当前用户主目录)
Linux如何查看端口
方法一:lsof -i:端口号 用于查看某一端口的占用情况,比如查看9092端口使用情况,lsof -i:9095
可以看到8080端口已经被nginx占用
方法二:netstat -tunlp |grep 端口号,用于查看指定的端口号的进程情况,如查看5050端口的情况,netstat -tunlp |grep 5050
-t (tcp) 仅显示tcp相关选项
-u (udp)仅显示udp相关选项
-n 拒绝显示别名,能显示数字的全部转化为数字
-l 仅列出在Listen(监听)的服务状态
-p 显示建立相关链接的程序名
可以使用passwd命令来修改用户的密码。passwd命令用于对用户的密码进行管理,可以设置、修改、删除密码。
用法示例:
修改root用户的密码
$ sudo passwd root