一、用户与权限
[root@aa ~]# ls /etc/passwd -l //系统用户的基本信息
[root@aa ~]# ls /etc/shadow -l //系统用户的密码相关信息(影子文件)
[root@aa ~]# ls /etc/group -l //系统用户组的相关配置
[root@aa ~]# ls /etc/gshadow -l //用户组的密码
[root@aa ~]# ls -al /etc/skel/ //以长格式并显示隐藏文件的方式查看 /etc/skel/ 目录的内容。当创建新用户时,此目录中的文件会被复制到新用户的家目录中
[root@aa ~]# ls -l /var/spool/mail/ //邮件相关文件的详细信息
[root@aa ~]# ls -al /home/ //存放用户的家目录
1、用户基本信息
[root@aa ~]# vim /etc/passwd
1-499 系统用户不能删除 500以后是普通用户
所有账户有且只有一个组,但可以有多个附加组
2、影子文件/etc/shadow,只能被root用户修改
[root@aa ~]# head -1 /etc/shadow MD5加密 不会因为两个密码相同而产生相同的加密串
root:$6$2cDQJ8pAi/2uF2xT$NquV9XaW9HR6pwdwsK4AKij/5lhjn7Ue.zvsSSt53VQSGyf.SkqAR3JS1zxNwLjQurCKpUnyCJlWPePJTAvLK.::0:99999:7:::
3、组文件 /etc/group
[root@aa ~]# tail -2 /etc/group
postfix:x:89:
chrony:x:996:
每个用户有且必须有一个初始组,允许有多个附加组
4、用户的初始操作环境 .bash/profile .bashrc .gnome2
[root@aa ~]# useradd user1
[root@aa ~]# ls /home/
user1
[root@aa ~]# ls -l /home/
总用量 0
drwx------. 2 user1 user1 62 7月 11 10:17 user1
[root@aa ~]# ls -l /home/user1
[root@aa ~]# ls -la /home/user1 //a显示隐藏信息
[root@aa ~]# passwd user1
[root@aa ~]# rm -rf /home/user1/*
[root@aa ~]# ls /home/user1 -a
. .. .bash_logout .bash_profile .bashrc
[root@aa ~]# rm -rf /home/user1/.bash_logout
[root@aa ~]# rm -rf /home/user1/.bash_profile
[root@aa ~]# rm -rf /home/user1/.bashrc
[root@aa ~]# ls /home/user1 -a
[root@aa ~]# ls -a /etc/skel/ */etc/ske是家目录的模板
. .. .bash_logout .bash_profile .bashrc
创建用户以后家目录里会自动添加初始文件
[root@aa ~]# vim /etc/skel/notice.text
[root@aa ~]# yum -y install tree
[root@aa ~]# ls /etc/skel/ -a
. .. .bash_logout .bash_profile .bashrc notice.text
[root@aa ~]# useradd user
[root@aa ~]# ls /home/user/ -a
. .. .bash_logout .bash_profile .bashrc notice.text
5、用户环境默认设置
.bash_logout 用户退出登录时执行
.bash_profile 用户登录时执行,一般做用户个性化环境配置
.bashrc 进入新bash环境时执行,一般做用户个性化环境配置
.bash_history: 记录存放上次注销前使用的历史命令
该文件不是用户一开始建好就有的,得使用该用户输入过命令后才会产生.bash_history
下面这两个文件,对所有用户都生效
/etc/bashrc # 系统全局环境配置文件
/etc/profile # 系统全局环境配置文件
/etc/目录下的环境配置修改,属于全局配置
家目录下的环境配置修改,属于个人用户配置
二、用户管理命令
1.root 添加账号 修改密码 删除用户
2.普通用户 uid(500-65535)
3.系统用户 1-499
新增和删除用户对什么文件有影响
删除以下文件所对应的信息可以创建相同名称用户
root@aa ~]# vim /etc/passwd
[root@aa ~]# vim /etc/shadow
[root@aa ~]# vim /etc/group
[root@aa ~]# vim /etc/gshadow
[root@aa ~]# rm -rf /home/user
[root@aa ~]# rm -rf /var/spool/mail/user
[root@aa ~]# useradd user //可以再次创建
默认文件:[root@aa ~]# vim /etc/login.defs
1.用户管理命令
1.1新建用户useradd
useradd 【选项】 用户名
选项 | 说明 |
-u | 指定uid |
-s | 指定登录的shell类型 |
-M | 不建立主目录 |
-d | 指定主目录里位置,(可以不存在的目录) |
-e | 格式是YYYY-MM-DD,禁用账户的日期 |
-g | 指定基本组 |
-p | 设置密码 |
-G | 指定附加组 |
-r | 随机生成一个uid 1-999的用户,并且不建立家目录 |
-G | 添加备注信息 |
1.2删除用户userdel
使用语法:userdel 【选项】 用户名
选项 | 说明 |
-r | 连家目录一起删除 |
1.3设置用户账户口令
passwd命令
选项 | 说明 |
-l | 锁定用户账户 |
-u | 口令解锁 |
-d | 将用户口令设置为空(可以登录系统),与未设置口令不同(无法登录系统) |
1.4修改用户账户
使用语法:usermod 【选项】 用户名
选项 | 说明 |
-g | 变更所属用户组(基本组) |
-G | 变更附加组 |
-u | 指定UID |
-s | 指定登录的shell类型 |
-L | 锁定用户 |
-U | 解锁用户(用户要有密码) |
-p | 设置密码 |
2.管理组
2.1创建组
使用语法:groupadd 【选项】 组名
选项 | 说明 |
-g | 指定组ID |
2.2删除组
使用语法:groupdel 组名
2.3修改组
使用语法:groupmod 【选项】 组名
选项 | 说明 |
-g | 修改组ID |
-n | 修改组名称 |
-o | 强制 |
2.4为组添加用户
使用语法:gpasswd 【选项】用户名 组名
选项 | 说明 |
-a | 将用户添加到组中 |
-d | 把用户从组中删除 |
3.chown改变属主和属组
chown [-R] 用户名称 文件或目录
chown [-R] 用户名称:用户组组名称 文件或目录
-R : 进行递归式的权限更改,也就是将目录下的所有文件、子目录都更新成为指定的用户组权限。常常用于变更某一目录的情况。
4.chmod改变访问权限
4.1字符设定法
使用语法为:chmod [who] [+ | - | =] [mode] 文件名
who表示操作对象,可以是下面字母中的任何一个或者它们的组合。
u 表示 用户(user),即文件或目录的所有者。
g 表示 用户组(group),即文件或目录所属的用户组。
o 表示 其他(others)用户。
a 表示 所有(all)用户。它是系统默认值。
操作符号含义如下: “+”表示添加某个权限。“-”表示取消某个权限。“=”表示赋予给定的权限,同时取消文档以前的所有权限。
mode表示可以执行的权限,可以是r(只读)、w(可写)和x(可执行),以及它们的组合。
4.2数字设定法
使用语法为:chmod [属主权限的数字组合] [用户组权限的数字组合] [其它用户权限的数字组合] 文件名
0表示没有任何权限
1表示有可执行权限,与上面字符表示法中的x有相同的含义。
2表示有可写权限,与w对应
4表示有可读权限,对应与r
三、安装mysql
1、查看系统版本
[root@wanghan local]# cat /etc/redhat-release
CentOS Linux release 7.5.1804 (Core)
2、新建mysql文件夹
[root@aa ~]# mkdir mysql
3、将mysql压缩包解压至mysql文件夹中
[root@aa ~]# tar -xvf mysql-8.0.28-1.el7.x86_64.rpm-bundle.tar -C mysql
4、检查是否有mariadb,有则卸载
[root@aa mysql]# rpm -qa | grep mariadb
[root@aa mysql]# rpm -e --nodeps mariadb-libs
[root@aa mysql]# rpm -qa | grep mariadb
5、安装mysql所需要的rpm依赖包
[root@aa mysql]# rpm -ivh mysql-community-common-8.0.28-1.el7.x86_64.rpm
[root@aa mysql]# rpm -ivh mysql-community-client-plugins-8.0.28-1.el7.x86_64.rpm
[root@aa mysql]# rpm -ivh mysql-community-libs-8.0.28-1.el7.x86_64.rpm
[root@aa mysql]# rpm -ivh mysql-community-client-8.0.28-1.el7.x86_64.rpm
[root@aa mysql]# rpm -ivh mysql-community-icu-data-files-8.0.28-1.el7.x86_64.rpm
[root@aa mysql]# rpm -ivh mysql-community-server-8.0.28-1.el7.x86_64.rpm
6、查看已安装的 MySQL 的版本
[root@wanghan local]# mysql -V
mysql Ver 8.0.38 for Linux on x86_64 (MySQL Community Server - GPL)
[root@wanghan local]# mysql --version
mysql Ver 8.0.38 for Linux on x86_64 (MySQL Community Server - GPL)
[root@wanghan local]#
7、初始化mysql
[root@aa mysql]# mysqld --initialize --console
8、修改mysql权限并启动
[root@aa mysql]# chown -R mysql:mysql /var/lib/mysql/
[root@aa mysql]# systemctl start mysqld
9、查看mysql默认密码并使用默认密码登录
[root@aa mysql]# cat /var/log/mysqld.log | grep localhost
2024-07-11T08:54:29.581481Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: r&,ih;U(r0l0 *密码
[root@aa mysql]# mysql -uroot -p
Enter password: 输入密码
mysql>
10、修改mysql密码并登录
mysql> alter user 'root'@'localhost'identified by '123456';
Query OK, 0 rows affected (0.00 sec)
mysql> exit
Bye
[root@aa mysql]# mysql -uroot -p123456
mysql> exit
Bye