一、用户管理
添加用户:添加用户需要使用adduser命令,新用户的信息会保存到系统文件中。
删除用户:删除用户需要使用deluser命令,同时也要记得删除该用户的所有文件。
修改密码:修改密码需要使用passwd命令,需要输入旧密码才能修改新密码。
用户的信息 存在 /etc/passwd
创建用户 : 创建一个新用户 ,随着创建一个 跟用户名相同的组 (基本组 类似于人一出生就带着国籍)(附属组 又称为 从属组)
唯一标识: uid (用户id) gid (组id)
管理员用户 : root
创建用户命令: useradd [选项] 用户名
查看用户信息 : id 用户名
常见的选项 : -u 用户ID
-d 家目录路径
-G 组ID
-s 解释器
组文件(每个用户有且必须有一个初始组,允许有多个附加组)
Linux中用户和组的类型
Linux下的用户可以分为三类
超级用户——用户名为root,它具有一切权限,只有进行系统维护(例如:建立用户等)
才用超级用户登录,以避免系统出现安全问题。
系统用户(伪用户)——是Linux系统正常工作所必需的用户。主要是为了满足相应的系统进程对文件属主的要求而建立的,例如:bin、daemon、adm、lp等用户。系统用户不能用来登录。
普通用户——是为了让使用者能够使用Linux系统资源而建立的,我们的大多数用户属于此类。
Linux中的组有以下两类
基本组(私有组):建立账户时,若没有指定账户所属的组,系统会建立一个和用户名相同的组,即为基本组。
附加组(公有组):可以容纳多个用户,组中的用户都具有组所拥有的权利。
Linux中用户和用户组的配置文件
在Linux中,用户账号、密码、用户组信息和用户组密码均是存放在不同的配置文件中的。
二、权限
[root@localhost ~]# ls -ld /sss //查看目录的详细属性信息 (权限)
d rwx r-x r-x. 4 root root 30 10月 14 00:06 /sss
读、写、执行的权限
[root@localhost ~]# ls -lh /opt/pfzsk.tar.gz //查看文件的详细属性信息(权限)
-rw-r--r--. 1 root root 3.0M 10月 13 23:45 /opt/pfzsk.tar.gz
基本权限 (目录)
r 读取--查看目录里的内容 ls
w 写入--目录下创建删除文件或目录
x 执行--能够使用cd切换目录
修改权限 :chmod 权限内容 目录/文件
[root@localhost ~]# ls -ld /sskk
drwxr-xr-x. 2 root root 6 10月 14 01:15 /sskk
[root@localhost ~]# chmod u-w /sskk //拥有者去掉W权限
[root@localhost ~]# ls -ld /sskk
dr-xr-xr-x. 2 root root 6 10月 14 01:15 /sskk
[root@localhost ~]# chmod g+w /sskk //所属者加入W权限
[root@localhost ~]# ls -ld /sskk
dr-xrwxr-x. 2 root root 6 10月 14 01:15 /sskk
[root@localhost ~]# chmod o-x /sskk //其他人去掉X权限
[root@localhost ~]# ls -ld /sskk
dr-xrwxr--. 2 root root 6 10月 14 01:15 /sskk
[root@localhost ~]# ls -ld /sss //查看当前 /sss目录属性详细信息
[root@localhost ~]# ls -lh /opt/pfzsk.tar.gz //查看文件大小
[root@localhost ~]# chmod u-w /sss //将目录拥有者的写入权限去除
[root@localhost ~]# ls -ld /sss //验证权限
[root@localhost ~]# chmod u+w /sss //将目录拥有者的写入权限加入
[root@localhost ~]# ls -ld /sss //验证权限
[root@localhost ~]# gpasswd -a zf root //将zf加入到root组,使zf 具有组的权限
[root@localhost ~]# chmod g+w /sss //给所属组加入写入权限 ,zf也就拥有了此组的权限
[root@localhost ~]# ls -ld /sss
[root@localhost ~]# chmod g-w /sss
[root@localhost ~]# ls -ld /sss
[root@localhost ~]# chmod o+w /sss
[root@localhost ~]# ls -ld /sss
drwxr-xrwx. 4 root root 30 10月 14 00:06 /sss
[root@localhost ~]# chmod o-w /sss
[root@localhost ~]# ls -ld /sss
[root@localhost ~]# chmod u-w,g-x,o-x /sss
[root@localhost ~]# ls -ld /sss
dr-xr--r--. 4 root root 30 10月 14 00:06 /sss
[root@localhost ~]# useradd laozong //创建laozong用户
head -n 数字 /路径/文件名称
head /路径/文件名称 --查看默认的前十行内容
[root@localhost etc]# head -n 2 /etc/passwd //查看文档的前两行
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
[root@localhost etc]# head /etc/passwd //默认查看文档的前十行
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
operator:x:11:0:operator:/root:/sbin/nologin
tail -n 数字 /路径/文件名称
tail /路径/文件名称 --默认查看后十行的内容
[root@localhost etc]# tail -n 2 /etc/passwd //查看文本内容的后两行
tcpdump:x:72:72::/:/sbin/nologin
zf:x:1000:1000:zf:/home/zf:/bin/bash
[root@localhost etc]# tail /etc/passwd //默认查看文档内容的后十行
radvd:x:75:75:radvd user:/:/sbin/nologin
pulse:x:171:171:PulseAudio System Daemon:/var/run/pulse:/sbin/nologin
gdm:x:42:42::/var/lib/gdm:/sbin/nologin
gnome-initial-setup:x:990:984::/run/gnome-initial-setup/:/sbin/nologin
sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
avahi:x:70:70:Avahi mDNS/DNS-SD Stack:/var/run/avahi-daemon:/sbin/nologin
postfix:x:89:89::/var/spool/postfix:/sbin/nologin
ntp:x:38:38::/etc/ntp:/sbin/nologin
tcpdump:x:72:72::/:/sbin/nologin
zf:x:1000:1000:zf:/home/zf:/bin/bash
三、安装mysql
1、通过wget下载mysql8
[root@VM-0-14-centos src]# wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.20-linux-glibc2.12-x86_64.tar.xz
2、解压mysql8, 通过xz命令解压出tar包, 然后通过tar命令解压出文件夹
[root@VM-0-14-centos src]# xz -d mysql-8.0.20-linux-glibc2.12-x86_64.tar.xz
[root@VM-0-14-centos src]# tar xvf mysql-8.0.20-linux-glibc2.12-x86_64.tar
3、将/usr/local/src下的mysql-8.0.20-linux-glibc2.12-x86_64文件夹内容移动到/usr/local/mysql下
[root@VM-0-14-centos src]# mkdir /usr/local/mysql
[root@VM-0-14-centos src]# mv /usr/local/src/mysql-8.0.20-linux-glibc2.12-x86_64/* /usr/local/mysql
[root@VM-0-14-centos src]# cd /usr/local/mysql
4、创建用户组及用户和密码
[root@VM-0-14-centos mysql]# groupadd mysql
[root@VM-0-14-centos mysql]# useradd -g mysql mysql
5、授权用户
[root@VM-0-14-centos mysql]# chown -R mysql.mysql /usr/local/mysql
6、编辑my.cnf文件
[root@VM-0-14-centos mysql]# vim /etc/my.cnf
按大写 i 进入修改模式 然后将下面的文本复制进去
[mysqld]
user=root
datadir=/usr/local/mysql/data
basedir=/usr/local/mysql
port=3306
max_connections=200
max_connect_errors=10
character-set-server=utf8
default-storage-engine=INNODB
default_authentication_plugin=mysql_native_password
lower_case_table_names=1
group_concat_max_len=102400
[mysql]
default-character-set=utf8
[client]
port=3306
default-character-set=utf8
复制进去后按esc退出修改模式,然后按 shift+: 然后输入wq保存文件
7、进入到bin目录下
[root@VM-0-14-centos mysql]# cd bin
8、初始化基础信息,最后一行后面会有个随机的初始密码保存下来一会登录要用(如果忘记了就删掉data重新初始化)
[root@VM-0-14-centos bin]# ./mysqld --initialize
如果提示 :./mysqld: error while loading shared libraries: libnuma.so.1: cannot open shared object file: No such file or directory
就执行下下面这个再执行初始化
[root@VM-0-14-centos bin]# yum install -y libaio
[root@VM-0-14-centos bin]# yum -y install numactl
9、添加mysqld服务到系统
先返回到mysql目录
[root@VM-0-14-centos bin]# cd ..
[root@VM-0-14-centos mysql]# cp -a ./support-files/mysql.server /etc/init.d/mysql
10、授权以及添加服务
[root@VM-0-14-centos mysql]# chmod +x /etc/init.d/mysql
[root@VM-0-14-centos mysql]# chkconfig --add mysql
11、启动mysql
[root@VM-0-14-centos mysql]# service mysql start
12、将mysql添加到命令服务
[root@VM-0-14-centos mysql]# ln -s /usr/local/mysql/bin/mysql /usr/bin
13、登录mysql
[root@VM-0-14-centos mysql]# mysql -uroot -p
14、输入刚刚初始化时生成的密码
15、更改root用户密码, 注意语句后的; 执行语句忘记写了 可以补个空的;回车也可以将语句执行
mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '你的密码';
mysql> flush privileges;
16、更改root连接权限
mysql> use mysql;
mysql> update user set host='%' where user = 'root';
mysql> flush privileges;
18、exit; 退出mysql,现在就可以通过连接工具登录root账户进行远程连接了