10. sed将文件test.txt中的所有”/opt/tmp”改为”/root/tmp”,并删除所有空行。
解答:
sed -i ‘s#/opt/tmp #/root/tmp #g’test.txt|sed -i ‘/^\s*$/d’
11. 将192.168.16.3这台Windows的server文件夹挂载到linux本地/mnt/server目录,Windows的账户为:administrator,密码为:123456
解答:
1、先在windows下面共享需要挂载的目录server。
2、确保linux与windows是在同一个局域网当中。
3、在linux下面创建一个需要挂载到的目录/mnt/server。
4、利用mount命令进行挂载。
挂载命令:mount -t cifs -o username=administrator,password=123456//192.168.16.3/server /mnt/server
12. 写一个防火墙配置脚本,只允许远程主机访问本机的80端口。(linux iptables)
解答:
#!/bin/bash
#this is a server firewall
#updated by yehaifeng
#qq:769358362
#define var
IPT=/sbin/iptables
#Remove any existing rules
$IPT -F
$IPT -X
$IPT -Z
#setting default firewallpolicy
$IPT --policy OUTPUT ACCEPT
$IPT --policy FORWARD DROP
$IPT -P INPUT DROP
#setting for loopback interface
$IPT -A INPUT -i lo -j ACCEPT
$IPT -A OUTPUT -o lo -j ACCEPT
#accept 80 port only
$IPT -A INPUT -p tcp --dport 80 -j ACCEPT
#save iptables
/etc/init.d/iptables save
13. 编写个shell脚本将/logs目录下3天前的文件转移到/tmp目录下。
解答:
#!/bin/bash
#this is to move file 3 yearago from /logs to /tmp
#updated by yehaifeng
#qq:769358362
#define var
FILE_FROM=/logs
FILE_TO=/tmp
DAY_AGO=3
cd $FILE_FROM
for file in `find $FILE_FROM-type f -mtime +3`
do
/bin/mv $FILE_FROM/$file $FILE_TO/$file
done
14. 每天1:00备份/var/log目录下前一天的日志文件并存放到当前目录的btslog目录中,并删除15天前的log备份文件,请使用shell脚本完成。(日志格式为:btsvr.log.2016-01-01,打包备份文件格式为:btsvr.log.2016-01-01.tar.gz)
解答:
cat bak_logs.sh
#!/bin/bash
#this is to backup logs
#updated by yehaifeng
#qq:769358362
#define var
YESTERDAY=`date +%F -d '-1 day'`
LOG_DIR=/var/log
BAK_DIR=/var/log/btslog
LOG_FILE=btsvr.log
cd $LOG_DIR/
if [ -f $LOG_DIR/$LOG_FILE.$YESTERDAY] ;then{
tar zcf $LOG_DIR/$LOG_FILE.$YESTERDAY.tar.gz$LOG_DIR/$LOG_FILE.$YESTERDAY
/bin/mv $LOG_DIR/$LOG_FILE.$YESTERDAY.tar.gz/BAK_DIR/
}
else
echo “the file is not exist.”
fi
使用定时任务每天1点执行该脚本:0001 * * * /bin/bash bak_logs.sh
15. 写一个脚本进行nginx日志统计,得到访问ip最多的前10个(nginx日志路径:/nginx/default/access.log)
解答:
cat bak_logs.sh
#!/bin/bash
#this is to backup logs
#updated by yehaifeng
#qq:769358362
#define var
LOG_FILE=/nginx/default/access.log
awk '{print $1}'/application/nginx/logs/access.log |sort|uniq -c|sort -r|head -10>/tmp/ip_max.txt
echo /tmp/ip_max.txt
Linux公社的RSS地址:https://www.linuxidc.com/rssFeed.aspx