运维项目考核笔记

📂 运维学习

运维项目考核笔记

业务的访问模式
B/S端 浏览器与服务端
C/S端

ip地址有32位
192.168.147.0/24
24是子网掩码相当于 255.255.255.0

  • 代表前24位(即前3组数字)是网络号,最后 8位 是主机号。

  • 因此,这个网段包含的 IP 地址范围是:192.168.147.1 到 192.168.147.254

  • 网络地址192.168.147.0(这个地址本身代表整个网段,不能分配给设备使用)。

  • 可用主机范围192.168.147.1 ~ 192.168.147.254(共 254 个可用 IP)。

  • 广播地址192.168.147.255(这个地址用于向网段内所有设备发送消息,也不能分配给设备)。

NAT模式 虚拟机向外发出请求

CentOS 源:192.168.147.134  目标:百度IP
        ↓ 交给VMware网关192.168.147.2(这是虚拟网关 )
【VMware NAT转换】源IP改写为 → 192.168.147.1
        ↓ 交给Windows操作系统
Windows把包从WLAN网卡发出,包源IP现在是192.168.147.1
        ↓ 到达家用路由器
【家用路由器第二次NAT】源IP改写为家庭公网IP
        ↓ 互联网

部署一个虚拟系统centos7.9
阿里云镜像失效
注意磁盘分区 /下要分尽可能多的空间 利于后于操作

ssh是一种加密通信

网卡配置文件地址 网卡一般是ens开头
/etc/sysconfig/network-scripts/ifcfg-ens33
关于ip地址分为动态ip和静态ip 默认是动态分配
作为服务器需要自行配置静态ip 防止访问失败

这里用vi编辑文件
image.png
DNS可以使用企业或公共的
例如DNS1 223.5.5.5 223.6.6.6

配置好静态ip需要: systemctl restart network
ip route可以查看网关的ip地址
防火墙拦截icmp包会导致无法联网
systemctl status firewalld 可以查看防火墙状态

关于服务的关闭 stop是临时的 disable是永久的

reboot重启服务器

selinux是centos独有的守护进程功能可以修改配置文件增加SELINUX=disabled关闭

timedatectl可以查看当前时区

date查看时间

必配 文件打开数限制

临时改 ulimit -n 查看
ulimit -n 65535 修改

永久修改 vi /etc/security/limits.conf

内核调优 修改etc/sysctl.conf
sysctl -p 重新加载

最后配置软件仓库源
更新yum update -y

yun remove删除软件可以恢复

增加nginx官方源 然后yum clean all yum makeache

把系统 base 源替换为阿里云归档源

#备份旧源
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak

#下载阿里云centos7归档源
curl -o /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo

#清理并重建yum缓存
yum clean all
yum makecache

yum可以自动解决依赖冲突
验证nginx安装
rpm -qa | grep nginx

  1. chown -R nginx:nginx /data/www
  • chown:修改文件 / 目录的所有者、所属用户组
  • -R 递归:目录里面所有子文件、子文件夹全部一起改权限
  • nginx:nginx用户:用户组,把归属设置给 nginx 运行账号
  • /data/www:目标目录

Nginx虚拟机部署宿主机无法访问问题笔记

1、可以直接cat创建文件包括内容

cat >/etc/nginx/conf.d/server.conf<<'eof'
server {
    listen        8080;
    server_name  localhost;
    charset utf-8;
    root   /data/www;
    index  index.html index.htm;
    location / {
        autoindex on;
        try_files $uri $uri/ /index.html; # SPA history路由刷新404解决方案
    }
}
eof

⚠️ <<'eof' 单引号不能去掉,否则$uri变量会被Shell解析破坏Nginx配置。
eof 只是自定义分界符号,换成 abcEND 都行,首尾必须一致

2、创建网站目录 & 权限处理

mkdir -p /data/www
# 修改目录归属,解决403权限拒绝
chown -R nginx:nginx /data/www 默认权限是创建者的
chmod -R 755 /data/www

每次更新前端dist文件(root复制进去),文件属主会变回root,需要重新执行 chown,否则再次403。

3、校验并重载Nginx

nginx -t                 # 校验配置语法,出错不要重载
systemctl reload nginx

故障排查流程:虚拟机本地curl正常,宿主机浏览器访问失败

第一步:确认Nginx监听状态

ss -tulpn | grep 8080

✅正确:*:8080 / 0.0.0.0:8080,监听全部网卡 ❌错误:127.0.0.1:8080,仅本机可访问,外部机器无法连接。

第二步:403 Forbidden 报错排查(虚拟机curl就返回403)

  1. 查看文件属主:ll /data/www,文件不能全是root:root
  2. 修复命令:chown -R nginx:nginx /data/www
  3. SELinux:getenforce,返回Enforcing时,执行chcon -R -t httpd_sys_content_t /data/www 或者设置setenforce 0临时关闭。
  4. 上级目录/data权限必须755。

第三步:Linux防火墙 firewalld(最常见坑!list‑ports为空代表没有放行端口)

# 永久放行端口
firewall-cmd --add-port=8080/tcp --permanent
firewall-cmd --reload
# 验证
firewall-cmd --list-ports

不写--permanent,重启服务器配置丢失;写完必须reload才生效。

常见踩坑备忘录

  1. cat > file <<'eof' 的单引号'eof'不要丢,防止shell吃掉nginx $uri变量。
  2. 前端dist包root身份上传后,文件所有者变成root,直接403,记得重新chown。
  3. firewalld --permanent 永久参数 + reload,缺一不可。
  4. NAT模式≠桥接模式,NAT只能宿主机访问,桥接才允许局域网全部设备访问。
  5. try_files $uri $uri/ /index.html; 专门解决Vue history路由模式刷新404。

nginx.conf是全局配置 conf.d下的配置文件是一个个网站的配置

chcon -R -t httpd_sys_content_t /data/www

让sslinux放行```
setenforce 0 临时关闭

nginx有两个日志
access.log访问日志 error.log错误日志
tail -f /var/log/nginx/access.log 实时查看日志 -n 50 (查看前50)

grep有很多进阶操作精准查询日志

查看当前目录大小分布
du -sh

关于crontab
-e是编写
-l是查看
-r是全部删除

free -h 查看内存

find / -name mysqld 查找指定文件或目录

centos安装mysql
安装插件
检查 rpm -qa | grep
image.png
https://downloads.mysql.com/archives/get/p/23/file/mysql-5.7.44-linux-glibc2.12-x86_64.tar.gz
可以复制下载链接到 服务器上 /tmp/去下载
md5sum进行完整性检查

tar -zxvf 进行解包
创建安装目录 /user/local/mysql
mv 移到安装目录
rm -f删除临时文件

image.png