1.2:centos6和centos7怎么将源码安装的程序添加到开机自启动?
通用方法:编辑/etc/rc.d/rc.local文件,在文件末尾添加启动服务命令
Centos6:
进入到/etc/rc.d/init.d目录下
新建一个服务启动脚本,脚本中指定chkconfig参数
添加执行权限
执行chkconfig --add 添加服务自启动
Centos7:
进入到/usr/lib/systemd/system目录下
新建自定义服务文件,文件中包含[unit][Service][install]相关配置,然后添加下执行权限
执行systemctl enable 服务名称
1.3:简述lvm,如何使用lvm的/分区扩容
添加磁盘
使用fdisk命令对新增加的磁盘进行分区
分区完成后修改分区类型为lvm
使用pvcreate创建物理卷
使用vgextend命令将新增加的分区加入到根目录分区中
使用lvextend命令进行扩容
使用xfs_growfs调整卷分区大小
1.4:为何du和df统计结果不一致?
用户删除了大量的文件被删除后,在文件系统目录中已经不可见了,所以du就不会在统计它
然而如果此时还有运行的进程持有这个已经被删除的文件句柄,那么这个文件就不会真正在磁盘中被删除,分区超级块中的信息也就不会更改,df仍会统计这个被删除的文件
可通过lsof命令查询处于deleted状态的文件,被删除的文件在系统中被标记为deleted,如果系统有大量deleted状态的文件,会导致du和df统计结果不一致
1.5:nginx日志访问量前10怎么统计?
awk ‘{print $1}’ /var/log/nginx/access.log | sort | uniq -c | sort -nr | head -n 10
awk '{print $1}' /var/log/nginx/access.log:awk是一个文本处理工具,'{print $1}'是一个awk脚本,表示打印每一行的第一个字段。在Nginx的访问日志中,第一个字段通常是客户端的IP地址。/var/log/nginx/access.log是Nginx访问日志文件的路径。
|:这是一个管道符号,用于将前一个命令的输出作为下一个命令的输入。
sort:这个命令用于对输入进行排序。
uniq -c:uniq命令用于报告或省略重复的行,-c选项表示在每行前加上该行在输入中出现的次数。
sort -nr:这个命令再次对输入进行排序,-n表示按数字排序,-r表示按降序排序(即从大到小)。
head -n 10:这个命令用于输出输入的前10行
1.6:如何删除/var/log下.log结尾的30天前创建的文件
find /var/log -type f -name *.log -ctime +30 exec rm -rf {} \;
1.7:ansible有哪些模块,功能是什么
copy //拷贝文件到被控端
cron //定时任务
fetch //拷贝被控端文件到本地
file //文件模块
group //用户组模块
user //用户模块
hostname //主机名模块
script //脚本模块
service //服务启动模块
command //远程执行命令模块
shell //远程执行命令模块,command高级用法
yum //安装包组模块
setup //查看主机系统信息
1.8:nginx为什么比apache快?
nginx使用epoll模型,而apache使用多线程或者多进程,在高并发的情况下,nginx的epoll模型具有更好的性能,而apache的多线程或者多进程在处理大量连接时,由于线程或者进程的创建,切换等操作需要消耗大量资源,因此性能会下降
nginx是异步非阻塞的,在高并发的情况下,nginx可以同时处理大量连接,而且不会因为某个连接阻塞而导致其他连接也阻塞,而apache在处理大量连接时,由于其多线程或者多进程是阻塞的,因此一旦某个连接被阻塞,就会影响到其他连接的性能
1.9:四层负载和七层负载区别是什么?
四层负载均衡基于IP+端口,七层负载均衡基于WEB请求、URL等应用信息。四层负载均衡会通过一个虚拟IP+端口接收请求,然后再分配到真实的服务器;七层负载均衡通过一个虚拟主机名或者URL接收请求,再根据一些规则分配到真实的服务器。
四层负载均衡和七层负载均衡处理数据包的方式不同。四层负载均衡不会检查数据包的内容,只能通过检查TCP流中的前几个包来做有限的路由决策;七层负载均衡会处理每个消息的实际内容,可以根据消息内容做出负载均衡策略
1.11:tomcat各个目录含义,如何修改端口,如何修改内存数?
bin 存放tomcat命令
conf 存放tomcat配置文件