目录
2.1、用root账号连接虚拟机,如用普通用户连接虚拟机,后续某些操作将无法获得权限
一、Linux系统的了解
- Linux是一个真实的、完整的多用户多任务操作系统,多用户多任务就是可以在系统上建立多个用户,而多个用户可以在同一时间内登录同一个系统执行各自不同的任务,而互不影响,例如某台linux服务器上有4个用户,分别是root、www、ftp和mysql,在同一时间内,root用户可能在查看系统日志,管理维护系统,www用户可能在修改自己的网页程序,ftp用户可能在上传软件到服务器,mysql用户可能在执行自己的SQL查询,每个用户互不干扰,有条不紊的进行着自己的工作,而每个用户之间不能越权访问,比如www用户不能执行mysql用户的SQL查询操作,ftp用户也不能修改www用户的网页程序,因此可知,不同用户具有不同的权限,每个用户是在权限允许的范围内完成不同的任务,linux正是通过这种权限的划分与管理,实现了多用户多任务的运行机制。
二、Linux用户操作
1、用户与用户组文件
- 在Linux系统当中,默认情况下所有用户信息保存在/etc/passwd文件内(包括root用户),用户密码信息保存在/etc/shadow文件内;所有用户组信息保存在/etc/group文件内,用户组密码信息保存在/etc/gshadow文件内。这四个文件非常重要,不要轻易做变动。
2、用户操作
2.1、用root账号连接虚拟机,如用普通用户连接虚拟机,后续某些操作将无法获得权限
2.2、用户之间的切换
- 命令:su <用户名>
- 切换到普通用户:su ren-01,无需输入密码,提示符由
#
变成$
符号,就由管理员账号切换到普通用户
- 切换到管理员账户:su root ,需要输入密码
- 或者执行两次exit(返回)命令,回到最开始的root用户环境
2.3、查看环境变量
- 命令:env,查看环境变量
- 切换到普通用户,在查看环境变量
- 使用exit命令,退出普通用户环境
2.4、查看用户
- 查看全部用户:cat /etc/passwd
- 用户各字段作用:
:ren-01:用户名
:x :密码
:1000:用户uid
:1000:用户组GID
:centos 7:用户说明
:/home/ren-01:用户家目录
:/bin/bash::shell解释器
- 系统内置用户与新增用户
- root用户的用户id是
0
,bin用户的用户id是1
,daemon用户的用户id是2......
- 命令:
cat /etc/passwd | head -3
- head -3,表示显示前3条记录
-
新增用户的id必然大于或等于
1000,ren-01的用户id是1000,不是系统内置用户,而是新增用户
- |是管道命令,加上tail -3,表示显示末尾3条记录
-
查看不能登录的伪用户
-
命令:cat /etc/passwd | grep nologin
|
是 管道命令,grep
是抓取命令 (可使用通配符*),合在一起就是抓取前一个命令的结果中满足条件的信息。
- 查看指定某个用户信息
- 命令:
cat /etc/passwd | grep ren-01
2.5、添加用户
- 命令:useradd [选项] 用户名
- 说明
- 创建用户mike,主目录为
/home/mike
,用户id为1010
,密码为12345
,注释my workmate
- 命令:
useradd -d /home/mike -u 1010 -p 12345 -c 'my workmate' mike
- 查看新用户mike信息
- 查看mike用户的主目录
2.6、修改用户
- 语法格式
- usermod [选项] 用户名,mod是单词modify的前三个字母
- 说明
- 修改用户mike
-
修改用户mike,主目录改为
/home/dear-mike
,密码改为903213
,注释改为my friend
-
命令:
usermod -m -d /home/dear-mike -p 903213 -c 'my friend' mike
(注意一定要加-m,否则主目录名不会被修改)
- 在
/etc/passwd
和etc/shadow
文件里查看更改后的用户信息
-
可以看到,mike用户的主目录、注释和密码都被修改了。
-
查看mike用户的主目录
2.7、删除用户
- 语法格式:userdel [选项] 用户名
- 说明:del是单词delete的前三个字母
- 强制彻底删除用户mike命令:userdel -rf mike
- 查看mike用户是否还存在
-
可以看到,四个文件里都没有mike的踪迹,该用户被彻底删除了。
-
再次执行删除mike的命令,会提示用户“mike”不存在。
-
因为是彻底删除,mike用户的主目录也被删除掉了的,
/home
目录里没有dear-mike
目录
- 因后续操作需要,我们再一次创建mike用户
三、Linux用户组的操作
1、说明:
2、用户组操作
2.1创建用户组并添加用户
- 创建一个用户组
lzy
,组id是666
- 将已有用户
mike
添加到该用户组
- 添加用户
altic
,密码123456
,主目录/home/alice
,加入lzy
组
- 查看组
lzy
的情况,目前该组有两个用户:mike和altic
- 查看
/home
目录下的三个用户目录
2.2、建一个新用户组,用户实现组迁移
- 创建一个组
luzhou
,组编号777
- 将用户
mike
从lzy
组迁移到luzhou
组
- 查看两个用户组里的用户情况,用户alice在lzy用户组里,用户mike在luzhou用户组里
2.3、创建新用户,同时加入两个组
- 创建一个用户
smith
,密码111111
,加入lzy
组和luzhou
组 - 注意:逗号后面不能有空格
- 查看用户smith的情况,lzy与luzhou两个组里都有smith
- 说明:用户smith属于一个主组smith,另外还属于两个附加组lzy和luzhou
- 创建mike用户时,设置了用户id -
1010
,然后创建alice时,没有设置用户id,那就自动编号1011
,最后创建smith时,也没有设置用户id,那也是自动编号1012
2.4、 已有用户同时加入另一个组
- 让
lzy
组的altic
同时加入luzhou
组,注意有两个选项参数:-a -G
- 查看altic用户的情况,可以看出来两个用户组都有altic用户
- 说明:用户altic属于一个主组altic,另外还属于两个附加组lzy和luzhou
2.5、从组里移除用户
- 让用户
mike
从luzhou
组里移除
- 查看用户组
luzhou
,看还有没有mike
用户
- 从组里删除一个不存在的用户
2.6、删除用户组
- 删除
luzhou
用户组
- 删除用户组
luzhou
,并不会连带删除里面的用户smith
和altic
四、课后练习
- 涉及的命令比较多,但都比较好记,所以也需要在课后多多练习,并自主学习Linux系统中其它的一些简单命令操作