一、安装虚拟机
1. VmWare 安装下载
vmware workstation pro 16 下载

win + R 输入 ncpa.cpl 确保网卡正常

2. CentOS 系统下载
CentOS 系统下载

将 CentOS 系统安装到虚拟机


 
 



3. 查看虚拟机 IP
命令 ifconfig

4. finalShell 安装下载
finalShell 下载
输入用户名一般是 root,密码,虚拟机 ip 地址,端口不用变。

5. 虚拟机快照
保存稳定版的虚拟机状态,如果后续虚拟机宕机不可用了,可以回退状态。
在虚拟机关机状态下,保存快照,保存的速度快很多。

二、Linux 基础命令
Linux 中顶级目录只有一个 /,他表示根目录。所有的文件夹、文件都是在这个根目录下的。
Home 目录表示每个用户在 Linux 系统里属于自己的文件夹目录。路径在 /home/用户名
1. 命令基础格式
command [-options] [paramter]
示例:ls 是命令,-l 是选项,/home 是目标,表示以列表形式展示/home 下内容
ls -l /home2. 特殊路径符
cd ~/demo3. 命令总结
3.1 ls
列出目录下的内容
ls [-a -l -h] [路径]
ls -alh /home3.2 cd
切换工作目录,当没有路径参数时,表示回到用户的 home 目录
cd [路径]
cd /home3.3 pwd
展示当前工作目录
pwd3.4 mkdir
创建目录
mkdir [-p] [路径]
mkdir -p /www/pages3.5 touch
创建文件
touch 路径
touch /www/pages/index.html3.6 cat
查看文件
cat 路径
cat index.html3.7 more
查看文件,支持翻页
more 路径
more index.html3.8 cp
复制文件、文件夹
cp [-r] 被复制路径 复制去路径
cp -r /www/pages /www/page3.9 mv
移动文件、文件夹
mv 被移动文件或文件夹 移动去文件文件夹
mv /www/page /www/pages3.10 rm
删除文件、文件夹。可以使用通配符 \*,删除匹配的文件。
rm [-r -f] 路径 路径 ... 路径
rm -rf /www/pages/page3.11 which
查看命令存放在哪里
which 命令
which ls3.12 find
搜索指定文件,可是使用通配符 \* 进行搜索
find 查找路径 -name 文件名
find /www -name pagesfind 查找路径 -size +|-n[kMG]
find /www -size +10M3.13 grep
从文件中通过关键字过滤文件行
grep [-n] 关键字 路径
grep -n yqcoder demo.text3.14 wc
统计文件行数、单词数
wc [-c -m -l -w] 路径
wc -cmlw demo.text3.15 管道符
管道符:|
将管道左边命令结果作为右边命令输入
ls /usr/bin | wc -l3.16 echo
在命令行中输出指定内容
echo 输出内容
echo "hi yqcoder"3.17 tail
查看文件尾部内容,更新文件的最新更改
tail [-f -num] 路径
tail -f demo.text3.18 重定向符
echo 'hi yqcoder' >> demo.text3.19 反引号
反引号包裹的内容会当作命令指向
echo`pwd`4. vim 文本编辑器
vim 文件路径
进入 vim 文本编译器,默认是命令模式,按 i 进入输入模式,按 esc 从输入命令模式,按 shift + : 进入底线命令模式
vim demo.text4.1 命令模式
4.2 输入模式
编辑文件内容
4.3 底线命令模式
三、Linux 用户和权限
root 用户为最大权限用户,普通用户没权限的操作,它都有。
1. 切换用户
1.1 su
切换用户
su [-] [用户名]
su - ycoder1.2. exit
退回上一个用户,快捷键 ctrl + d
exit1.3. sudo
为普通命令授权,临时以 root 身份执行,需要给普通用户配置 sudo 认证。
sudo 认证:切换到 root,运行 visudo。在最后添加 ycoder ALL=(ALL) NOPASSWD:ALL
sudo 命令
sudo mkdir /ycoder1.4 查看用户列表
ls /home2. 用户/用户组权限
需要 root 用户执行
2.1 groupadd
创建用户组
groupadd 用户组名
groupadd kf2.2 groupdel
删除用户组
groupdel 用户组名
groupdel kf2.3 useradd
创建用户
useradd [-g -d] 用户名
useradd yqcoder -g kf -d /home/yqcoder/user2.4 userdel
删除用户
userdel [-r] 用户名
userdel -r yqcoder2.5 id
查看用户所属组
id [用户名]
id yqcoder2.6 usermod
修改用户所属组
usermod -aG 用户组 用户名
usermod -aG kf yqcoder2.7 getent
查看所有组
getent group查看所有用户
getent passwd3. 权限控制信息
[-dl][r-][w-][x-][r-][w-][x-][r-][w-][x-]
ls -l
4. 修改权限
4.1 chmod
修改文件权限
chmod [-R] 权限 文件或文件夹
chmod -R u=rwx,g=rwx,o=rwx demo.text4.2 快捷方式
将 r 记为 4,w 记为 2,x 记为 1,- 记为 0。那么上面的命令等同于:
chmod -R 777 demo.text4.3 chown
修改文件所属用户和用户组权限
chown [-R] [用户][:][用户组] 文件或文件夹
chmod -R yqcoder:kf demo.text四、Linux 实用操作
1. 快捷键
2. yum 软件安装
RPM 包软件管理器,用于安装 Linux 软件。需要使用 root 用户且联网操作。
yum [-y] [install | remove | search] 软件名称
yum search wget3. systemctl
控制软件的启动、关闭、开机自启,能被 systemtl 管理的软件称之为服务。比如:NetworkManager 主网络服务、network 副网络服务、firewalld 防火墙服务、sshd,ssh 服务
systemctl start | stop | status | enable | disable 服务名
systemctl status firewalld4. ln
创建软连接,将文件、文件夹连接到其他位置。类似于快捷键。
ln -s 被链接文件 连接目的地
ln -s /etc/yum.conf ~/yum.conf5. date
查看系统的时间
date [-d] [+格式化字符串]
date "+%Y-%m-%d %H:%M:%S"计算明天的日期
date -d "+1 day"6. IP 地址、主机名
6.1 IP 地址
ifconfig6.2 主机名
查看主机名
hostname修改主机名
hostnamectl set-hostname 主机名
hostnamectl set-hostname centos6.3 域名解析
域名解析流程:先看本机记录 window 在 C:\Windows\System32\drivers\etc\hosts 下、Linux 在/etc/hosts 下,如果没有,联网询问 DNS。
7. 网络传输
7.1 ping
检查指定网络服务是否联通
ping [-c num] ip 或主机名
ping -c 4 baidu.com7.2 wget
非交互式文件下载器,可以在命令行内下载网络文件
wget [-b] url
wget -b url7.3 curl
发送 http 网络请求,用于下载文件,获取信息
curl [-O] url
获取主机公网 IP
curl cip.cc7.4 端口
公认端口:1-1023,用于系统内置或知名程序预留端口,如 22 SSH 服务,443 HTTPS 服务
注册端口:1024-49151,用于松散的绑定一些程序/服务
动态端口:49152-65535,临时使用
7.5 nmap
查看端口占用情况
安装
yum -y install nmap使用
nmap 127.0.0.17.6 netstat
查看指定端口占用情况
安装
yum -y install net-toolsnetstat -anp | grep 端口号
netstat -anp | grep 227.7 新增开放端口
sudo firewall-cmd --zone=public --add-port=8080/tcp --permanent
sudo firewall-cmd --reload7.8 查看开放端口
sudo firewall-cmd --zone=public --list-ports8. 进程管理
8.1 ps
查看进程
进程信息表示:UD 所属用户 ID,PID 进程 ID,PPID 进程父 ID,C CUP 占用率,STIME 启动时间,TTY 终端序号,TIME 占用 CPU 时间,CMD 启动路径
ps [-e -f]
ps -ef8.2 kill
关闭进程
kill [-9] 进程 ID
kill -9 1239. 主机状态
9.1 top
查看 CPU、内存占用
top9.2 df
查看硬盘使用情况
df [-h]
df -h9.3 iostat
查看 CUP、磁盘相关信息
iostat [-x] [num1] [num2]
iostat -x 1 39.4 sar
查看网络相关统计
sar -n DEV num1 num2
sar -n DEV 1 310. 环境变量
10.1 env
查看环境变量
env10.2 $
获取环境变量值
echo $PATH10.3 export
临时设置环境变量
export 变量名=变量值
export name=yqcoder10.4 永久生效环境变量
针对用户:修改 ~/.bashrc
针对全部用户:/etc/profile
export PATH=$PATH:自定义路径
export PATH=$PATH:/root/myenv11. 上传、下载
安装 lrzsz
yum -y install lrzsz11.1 rz
上传
rz11.2 sz
下载
sz 文件名
sz /www/dist12. 压缩、解压
12.1 tar
归档文件,将多个文件组装到一个.tar 文件中,文件大小没多少变化。
tar [-c -v -x -f -z -C] 包名 路径...路径
将 1.txt 2.txt 压缩成 a.tar
tar -cvf a.tar 1.txt 2.txt将 1.txt 2.txt 压缩成 a.tar.gz
tar -zcvf a.tar.gz 1.txt 2.txt解压 a.tar 到 txt 文件夹
tar -xvf a.tar -C txt解压 a.tar.gz 到 txt 文件夹
tar -zxvf a.tar.gz -C txt12.2 zip
zip 压缩包
zip [-r] 路径...路径
将 dist 压缩成 dist.zip
zip -r dist.zip dist12.3 unzip
解压
unzip 压缩包 [-d] 路径
unzip dist.zip -d admin五、安装部署软件
切换到 root 用户
1. MySQL8.0
1.1 查看是否安装 mysql
rpm -qa | grep -i mysql1.2 查看 mysql 运行状态
service mysql status1.3 查看 mysql 对应文件夹
find / -name mysql1.4 删除安装包
rpm -ev mysql80-community-release-el7-7.noarch1.5 删除系统中关联文件夹
rm -rf mysql关联文件1.6 下载 mysql 安装包
wget https://dev.mysql.com/get/mysql80-community-release-el8-3.noarch.rpm1.7 安装 mysql 安装包
yum install mysql80-community-release-el8-3.noarch.rpm1.8 查看 mysql 安装
yum repolist all | grep mysql1.9 安装 mysql 服务器
yum install mysql-community-server1.10 安装服务报错执行
当执行安装 mysql 服务器报错时执行,然后再执行安装 mysql 服务器命令。
yum module disable mysql1.11 启动 mysql 服务
systemctl start mysqld1.12 检查 mysql 服务状态
systemctl status mysqld1.13 mysql 开机自启
systemctl enable mysqld
systemctl daemon-reload1.14 获取登录密码
grep 'temporary password' /var/log/mysqld.log1.15 本地登录 mysql
mysql -uroot -p1.16 修改密码
ALTER USER 'root'@'localhost' IDENTIFIED BY 'P@ssw0rd123';1.17 设置用户密码策略的安全强度
set global validate_password.policy=LOW;1.18 设置密码长度不少于 4
set global validate_password.length=4;1.19 查看密码策略
SHOW VARIABLES LIKE 'validate_password%';1.20 刷新密码生效
flush privileges;1.21 查看数据库用户
select user,host from user;1.21 更改远程连接权限
update user set host='192.168.181.128' where user='root';
update user set host='%' where user='root';1.22 授权 root 远程登录
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION;
FLUSH PRIVILEGES;2. Nginx
2.1 安装 EPEL 存储库
yum install epel-release2.2 安装 Nginx
yum install nginx2.3 启动 Nginx 服务
systemctl start nginx2.4 设置 Nginx 服务开机自启
systemctl enable nginx2.5 查看 Nginx 配置
cat /etc/nginx/nginx.conf










