综合架构之全网备份项目实践_mtime 180(1),2024年最新含面试题+答案

先自我介绍一下,小编浙江大学毕业,去过华为、字节跳动等大厂,目前阿里P7

深知大多数程序员,想要提升技能,往往是自己摸索成长,但自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年最新Linux运维全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。
img
img
img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,涵盖了95%以上运维知识点,真正体系化!

由于文件比较多,这里只是将部分目录截图出来,全套包含大厂面经、学习笔记、源码讲义、实战项目、大纲路线、讲解视频,并且后续会持续更新

如果你需要这些资料,可以添加V获取:vip1024b (备注运维)
img

正文

max connections = 200
timeout = 300
pid file = /var/run/rsyncd.pid
lock file = /var/run/rsync.lock
log file = /var/log/rsyncd.log
ignore errors
read only = false
list = false
hosts allow = 172.16.1.0/24
hosts deny = 0.0.0.0/32
auth users = rsync_backup
secrets file = /etc/rsync.password
[backup]
comment = “backup dir by oldboy”
path = /backup


###### 3.创建rysnc服务的虚拟用户:



[root@backup ~]# useradd -s -M /sbin/nologin rsync


###### 4.创建备份服务认证密码文件:



[root@backup ~]# echo “rsync_backup:oldboy123” > /etc/rsync.password
[root@backup ~]# chmod 600 /etc/rsync.password


###### 5.创建backup备份目录并修改其属主属组信息:



[root@backup ~]# ll -d /backup/
drwxr-xr-x 2 root root 6 Aug 17 15:28 /backup/
[root@backup ~]# chown rsync.rsync /backup


###### 6.重启并自启服务:



[root@backup ~]# systemctl restart rsyncd
[root@backup ~]# systemctl enable rsyncd


  

  

## 客户端部署(以web服务器为例,nfs01相同)


###### 1.分别在三台服务器上创建/backup目录:



[root@web01 ~]# mkdir -p /backup/172.16.1.7
[root@nfs01 ~]# mkdir -p /backup/172.16.1.31
[root@backup ~]# mkdir /backup


###### 2.将web01本地文件按照规定的格式进行打包备份:



[root@web01 ~]# tar zchf /backup/172.16.1.7/system_backup_KaTeX parse error: Expected 'EOF', got '#' at position 120: … [root@web01 ~]#̲ tar zchf /back…(date +%F_%A).tar.gz /var/www/html/
[root@web01 ~]# tar zchf /backup/172.16.1.7/wwwlog_backup_$(date +%F_%A).tar.gz /app/logs/


![在这里插入图片描述](https://img-blog.csdnimg.cn/2020081715451592.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2hlcmVfaXNfeGl6,size_16,color_FFFFFF,t_70#pic_center)


###### 4.将最近一天的文件生成摘要信息并重定向至finger文件中,以备服务器端做完整性检查:



[root@web01 ~]# find /backup/ -type f -mtime -1 | xargs md5sum > /backup/172.16.1.7/finger.txt


![在这里插入图片描述](https://img-blog.csdnimg.cn/20200817154941303.png#pic_center)


###### 5.将web01本地的备份文件上传到备份服务器中:



[root@web01 ~]# rsync -avz /backup/172.16.1.7 rsync_backup@172.16.1.41::backup --password-file=/etc/rsync.password



> 
> 注意1:此处上传路径172.16.1.7后面不可以加“/”,否则不会上传172.16.1.7这个目录,而只会上传目录下的文件;  
>  注意2:如果执行此命令报错permission denied,首先检查服务器端的/backup目录的属主属组是否更改为rsync,其次再检查配置文件中是否添加fake super=yes;任然不能解决的话就检查下防火墙是否关闭!
> 
> 
> 


![在这里插入图片描述](https://img-blog.csdnimg.cn/20200817161921693.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2hlcmVfaXNfeGl6,size_16,color_FFFFFF,t_70#pic_center)


###### 6.删除本地7天前的数据:



[root@web01 ~]# find /backup/ -type f -mtime +7 | xargs rm


![在这里插入图片描述](https://img-blog.csdnimg.cn/2020081716222821.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2hlcmVfaXNfeGl6,size_16,color_FFFFFF,t_70#pic_center)


## 客户端脚本汇总编写



#!/bin/bash
#变量定义
backup_dir=“/backup/10.0.0.7”

#创建目录
mkdir -p $backup_dir

#在本地创建备份压缩文件
tar zchf KaTeX parse error: Expected group after '_' at position 26: …r/system_backup_̲(date +%F_%A).tar.gz /var/spool/cron/root /etc/rc.local /server/scripts /etc/sysconfig/iptables.config
tar zchf KaTeX parse error: Expected group after '_' at position 23: …_dir/www_backup_̲(date +%F_%A).tar.gz /var/www/html
tar zchf KaTeX parse error: Expected group after '_' at position 20: …up\_dir/www_log_̲(date +%F_%A).tar.gz /app/logs

#将每天的文件,生成摘要信息,并重定向到finger文件中
find $backup_dir/ -type f -mtime -1 | xargs md5sum > /finger.txt

#将其他文件和finger文件一同上传到备份服务器
rsync -avz $backup_dir rsync_backup@172.16.1.41::backup --password-file= /etc/rsync.password

#删除本地7天前的数据
find /backup/ -type f -mtime +7 | xargs rm


  

  

  

## 服务端部署


###### 1.只保留六个月以前的周一的数据,其他的全部删除:



[root@backup ~]# find /backup/ -mtime +180 ! -name “*Monday.tar.gz”
/backup/172.16.1.7/oldfile2_backup_2020-01-02_Thursday.tar.gz
/backup/172.16.1.7/oldfile3_backup_2020-01-03_Friday.tar.gz
/backup/172.16.1.7/oldfile4_backup_2020-01-04_Saturday.tar.gz
/backup/172.16.1.7/oldfile5_backup_2020-01-05_Sunday.tar.gz
[root@backup ~]# find /backup/ -mtime +180 ! -name “*Monday.tar.gz” | xargs rm


###### 2.进行校验,并将校验结果写入check文件中,以备发送邮件:



[root@backup ~]# find /backup/172.16.1.7/ -type f -name “finger.txt” | xargs md5sum -c &> /tmp/check.txt


![在这里插入图片描述](https://img-blog.csdnimg.cn/20200817164119139.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2hlcmVfaXNfeGl6,size_16,color_FFFFFF,t_70#pic_center)


###### 3.部署邮件通知:


![在这里插入图片描述](https://img-blog.csdnimg.cn/20200817164212602.png#pic_center)  
       a.打开163邮箱设置IMAP/POP3/SMTP,并记住自己的授权码!  
 ![在这里插入图片描述](https://img-blog.csdnimg.cn/2020081716423832.png#pic_center)  
       b.编写邮件相关配置文件:  
 ![在这里插入图片描述](https://img-blog.csdnimg.cn/20200817164423858.png#pic_center)  
       c.发送完整性校验结果邮件



mail -s “Confrim Result” 162xxxxxx9@qq.com < /tmp/check.txt


![在这里插入图片描述](https://img-blog.csdnimg.cn/20200817165052762.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2hlcmVfaXNfeGl6,size_16,color_FFFFFF,t_70#pic_center)  
   
  
   
  
   



## 服务端脚本汇总编写



> 
> 服务端的脚本文件仍需完善,可以将hostip变量的值写入文件中,使用for循环进行遍历执行
> 
> 
> 



backup_dir=“/backup”
hostip=“10.0.0.7”

#只保留六个月以前周一的数据,其他周二~周日的全部删除
find $backup_dir/ -type f -mtime +180 ! -name “*Monday.tar.gz” | xargs rm

#进行校验,并写入check文件中
find $backup_dir/ -type f -name “finger.txt” | xargs md5sum -c &> /tmp/check.txt

#发送邮件
mail -s 备份服务器完整性检查_$(date +%F) 1623300919@qq.com < /tmp/check.txt


## 设置定时任务



为了做好运维面试路上的助攻手,特整理了上百道 **【运维技术栈面试题集锦】** ,让你面试不慌心不跳,高薪offer怀里抱!

这次整理的面试题,**小到shell、MySQL,大到K8s等云原生技术栈,不仅适合运维新人入行面试需要,还适用于想提升进阶跳槽加薪的运维朋友。**

![](https://img-blog.csdnimg.cn/img_convert/899d36c0d887c8e056af89286a692429.png)

本份面试集锦涵盖了

*   **174 道运维工程师面试题**
*   **128道k8s面试题**
*   **108道shell脚本面试题**
*   **200道Linux面试题**
*   **51道docker面试题**
*   **35道Jenkis面试题**
*   **78道MongoDB面试题**
*   **17道ansible面试题**
*   **60道dubbo面试题**
*   **53道kafka面试**
*   **18道mysql面试题**
*   **40道nginx面试题**
*   **77道redis面试题**
*   **28道zookeeper**

**总计 1000+ 道面试题, 内容 又全含金量又高**

*   **174道运维工程师面试题**

> 1、什么是运维?

> 2、在工作中,运维人员经常需要跟运营人员打交道,请问运营人员是做什么工作的?

> 3、现在给你三百台服务器,你怎么对他们进行管理?

> 4、简述raid0 raid1raid5二种工作模式的工作原理及特点

> 5、LVS、Nginx、HAproxy有什么区别?工作中你怎么选择?

> 6、Squid、Varinsh和Nginx有什么区别,工作中你怎么选择?

> 7、Tomcat和Resin有什么区别,工作中你怎么选择?

> 8、什么是中间件?什么是jdk?

> 9、讲述一下Tomcat8005、8009、8080三个端口的含义?

> 10、什么叫CDN?

> 11、什么叫网站灰度发布?

> 12、简述DNS进行域名解析的过程?

> 13、RabbitMQ是什么东西?

> 14、讲一下Keepalived的工作原理?

> 15、讲述一下LVS三种模式的工作过程?

> 16、mysql的innodb如何定位锁问题,mysql如何减少主从复制延迟?

> 17、如何重置mysql root密码?

**网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。**

**需要这份系统化的资料的朋友,可以添加V获取:vip1024b (备注运维)**
![img](https://img-blog.csdnimg.cn/img_convert/f7e4af999b258e2ef5777a020d6c79d9.jpeg)

**一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**
讲述一下LVS三种模式的工作过程?

> 16、mysql的innodb如何定位锁问题,mysql如何减少主从复制延迟?

> 17、如何重置mysql root密码?

**网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。**

**需要这份系统化的资料的朋友,可以添加V获取:vip1024b (备注运维)**
[外链图片转存中...(img-hoCK05Fv-1713638635526)]

**一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**
  • 15
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值