1.1 创建用户 rsync 指定 uid和gid 为 1001,将/backup 目录授权给 rsync 用户(4 分)
useradd -u 1001 -g 1001 rsync
chown rsync.rsync /backup
1.2 给/application/nginx-1.14.0 创建一个名为/application/nginx 的软连
接(3 分)
源文件路径在前
ln -s /application/nginx-1.14.0 /application/nginx
1.3 将/etc/hostname 文件推送至 10.0.0.41 backup 服务器上的/tmp 目
录(3 分)
远程模式:
rsync -avz /etc/hostsname backup@10.0.0.41:/tmp/
1.4 将 backup 服务器上的/backup/test 文件拉取至本机/tmp 目录下,
并作免交互(4 分)
rsync -avz rsync_backup@172.16.1.41::backup /tmp/ --password-file=/etc/rsync.password
1.5 发送一封标题是“hello”内容是“hello oldboy”的邮件到
1.确保postfix.service 服务开启
systemctl is-active postfix.service
active
2.vim /etc/mail.rc添加以下内容:
set from=lichenxing0430@163.com
set smtp=smtp.163.com
set smtp-auth-user=lichenxing0430
set smtp-auth-password=\\密码
set smtp‐auth=login
3.执行发送邮件命令:
echo 'hello oldboy' |mail -s "hello" testoldboy@163.com
1.6 取出本机的 IP 地址(三种方法)(6 分)
ip a s eth0|sed -nr '3s#^.\*t (.\*)/.\*#\1#gp' #用sed
ip a s eth0|awk -F"[ /]+" 'NR==3{print $3}' #用awk
ip a s eth0|sed -n '3p'|awk -F'[ /]+' '{print$3}' #sed+awk
ip a s eth0|grep 'inet '|sed -r 's#^.\*t (.\*)/.\*#\1#g' #grep+sed
ip a s eth0|grep 'inet '|awk -F'[ /]+' '{print $3}' #grep+awk
1.7 找出/etc/目录下所有以.conf 结尾的文件打包压缩到/backup 目录
下,压缩包以 IP 地址命令(4 分)
find /etc/ -type f -name '*conf' |tar zcf /backup/`ip a s eth0|awk -F"[ /]+" 'NR==3{print $3}'`
1.8 每天 00:00 找出/etc/目录下所有以.conf 结尾的文件打包压缩到
/backup 目录下,压缩包以时间命名,并推送到 backup 服务器上
1.书写脚本:/server/scripts/backup_etc.sh
#!/bin/bash
. /etc/profile
#tar
find /etc/ -type f -name '\*.conf' |xargs tar zcf /backup/`date +%F_%w`.tar.gz
#rsync
rsync -avz /backup/ rsync_backup@172.16.1.41:/backup/
2.添加定时任务
crontab -e
#/bash
#rsync\_backup
00 00 \* \* \* sh /server/scripts/backup_etc.sh >/dev/null 2>&1
1.9 将本地的/data 目录共享为 172.16.1.0/24 网段可以挂载,挂载为可
以读写,然后挂载到 backup(172.16.1.41)服务器上的/backup 目
录上(写出 nfs 配置文件内容和挂载命令)
在nfs01客户端上:
1.vim /etc/exports
#share /upload
/data 172.16.1.0/24(rw)
2.平滑重启 systemctl reload nfs
在/backup服务端上:
1.showmount -e 172.16.1.0查看可挂载的目录
2.挂载/data目录
mount -t nfs 172.16.1.41:/data /backup
3.df -h查看挂载是否成功
2.1写出用户访问网站的流程
DNS解析过程, 域名对应的ip地址
TCP/ip 三次握手, 与服务器建立链接
HTTP请求报文, 用户向服务器要东西(图片 页面)
HTTP响应报文, 把你要的内容给你
TCP/ip 四次挥手, 与服务器断开连接
2.2DNS中常见的记录类型及含义,DNS中的TTL是什么意思?
TTL:存活时间(缓存时间)
2.3nginx 访问日志中的变量及含义
$remote_addr $remote_user [$time_local] "$request" '
'$status $body\_bytes\_sent "$http\_referer" ' '"$http\_user\_agent"
$remote_addr ip地址
$remote_user 用户名
[$time_local] 时间信息
"$request" ' 请求头文件内容
'$status 状态码
$body_bytes_sent 字节大小
"$http\_referer" 跳转途径
"$http\_user\_agent" 用户浏览器信息
2.4 写出 nginx 配置文件每部分的含义
worker_processes 1; worker进程数,核心数
events {
worker_connections 1024; worker进程最大连接数量
}
http {
include mime.types; 媒体文件类型
default_type application/octet-stream; 默认类型
sendfile on; 开启高效传输模式
keepalive_timeout 65; 超时时间
server {
listen 80; 监听的端口号
server_name www.oldboy.com; 域名
location / { 默认的localhost规则
root html; 站点目录
index index.html index.htm; 指定的首页文件
}
error_page 500 502 503 504 /50x.html; 报错信息跳转到的首页文件
location = /50x.html { 精准匹配
root html; 报错信息站点目录
}
}
}
2.5 写出连不上网络排错的流程(5 分)
ip add | 显示服务器的ip地址是否正确 |
---|---|
ping公网ip | ping网关 |
ping baidu.com | 检查虚拟机是否能上网 |
telnet +服务器ip +端口号 | 本地服务是否运行中 |
/etc/sysconfig/network-scripts/ifcfg-eth0 | 检查网卡配置文件 |
关闭防火墙 | systemctl disable firewalld |
关闭selinux | setenforce 0 重启生效 |
win+r services.msc服务 | 找到VMware的服务全部启动 |
虚拟机的VMnet8 网卡 | 设置为自动获得ip地址 |
检查是否关闭NetworkManager | systemctl disable NetworkManager |
检查虚拟网络编辑器 | NAT模式的子网ip与网关ip的修改 |
检查物理设备是否损坏 | 水晶头损坏,路由器没网 |
2.6 写出 centos7 开机启动流程(5 分)
Centos6 | Centos7 |
---|---|
1.开机 | 1.开机 |
2.bios开机自检 | 2.bios开机自检 |
3.MBR引导 | 3.MBR引导 |
4.GRUB菜单 选择不同内核 CentOS6进入单用户模式 | 4.GRUB菜单 选择不同内核 CentOS6进入单用户模式 |
5.加载内核 /boot加载到内存 | 5.加载内核 /boot加载到内存 |
6.运行INIT进程 CentOS6第一个进程 | 6.运行systemd进程 读取第一个运行程序 ps -ef |
7.读取/etc/inittab运行级别 | 7.读取运行级别 /etc/systemd/system/ |
8.串行 读取/etc/rc.sysinit 初始化系统 设置主机名 ip地址 | 8.并行 初始化系统/etc/systemd/system |
9.根据运行级别启动相应脚本软件(串行) | 9.启动服务 |
10.启动minggetty登录界面 运行login | 10.启动getty登录界面 运行login |
2.7 写出/etc/fstab 每一列的含义(3 分)
UUID=a00bfd6a-3689-41c0-a343-ae53c60f849e swap swap defaults 0 0
1.设备名称,uuid号
2.挂载点
3.文件类型
4.参数类型
5.是否备份
6.是否自启动
2.8综合架构示意图:
第三章 翻译:
先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前在阿里
深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年最新Linux运维全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上运维知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新
p4uubZP8-1714206780523)]
[外链图片转存中…(img-c5QGMt5C-1714206780523)]
[外链图片转存中…(img-xYMf4MhI-1714206780524)]
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上运维知识点,真正体系化!
由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新