总结一下遇到的面试题:   如有错误,请读者指出,感谢!


1、使用iptbales如何将本地80端口的请求转发到8080端口,当前主机ip为192.168.2.1
 1)、DNAT实现:
  iptables  -t  nat  -A PREROUTING  -d 192.168.2.1 -p tcp -m tcp  --dport 80  -j  DNAT  --to-destination  192.168.2.1:8080
 2)、SNAT实现:
  iptables  -t  nat  -A  POSTROUTING  -d  192.168.2.1 -p tcp  -m tcp --dport 8080 -j SNAT  --to-source 192.168.2.1:80


2、使用iptables只开放22端口给192.168.200.1

  iptables -I INPUT -s 192.168.200.1/24 -p tcp --dport 22 -j ACCEPT

3Mysql忘记密码如何解决?

  1、在centos6.5中安装mysql5.5.38版本,忘记密码如何解决?

1)、先关闭mysqld服务

         service  mysqld  stop

2)、使用mysqld_safe安全模式启动mysql,使用两个参数:

--skip-grant-tables:跳过授权表

--skip-networking: 跳过网络,防止其他用户对数据库进行读写操作,待密码恢复后可正常开启

  执行命令:  

mysqld_safe  --skip-grant-tables  --skip-networking  &

3)、无密码登录:

mysql  -u  root

4)、修改密码:

mysql>  use  mysql;    ###使用mysql数据库

mysql>  update user set password=password(‘新密码’)  where user=’root’

mysql>  flush  privileges;

mysql>  quit   //退出数据库

5)、重新启动mysql服务

service  mysqld  restart

6)、使用新密码登录mysql

mysql  -uroot  -p新密码

2、在centos7中安装mysql5.7.13版本中忘记root密码,如何解决?

1)、修改主配置文件my.cnf  

vim  /etc/my.cnf

###在[mysqld]中添加

skip-grant-tables

保存,退出

2)、重启mysql服务

systemctl  mysql  restart

3)、使用root用户登录(密码为空,直接回车进入)

mysql -u root -p

4)、在mysql中执行命令:

mysql>  use  mysql;

mysql>  update user  set  authentication_string=password(‘新密码’)  where  user=’root’;

注释:在mysql5.7版本中,不存在password字段,使用authentication_string字段

mysql>  flush  privileges;

mysql>  quit  //退出数据库

(5)、将原先my.cnf配置文件中添加的skip-grant-tables参数,删除,重启服务

sed -i ‘s/skip-grant-tables/   /g   /etc/my.cnf’

systemctl  restart  mysqld

(6)、使用新密码登录数据库测试:

mysql  -u  root  -p新密码

 

4、执行ifconfig命令只显示ip地址

  OS:centos6.5

  ifconfig eth0 | grep inet addr | awk {print $2} | awk -F: {print $2}


wKiom1kpXIrj1URjAARy0bPR7Wk280.png


5、简述python元祖,字典,列表的区别?

列表:

  使用 [] 定义,有序的对象集合类型,列表中的元素是可变的

元祖:

  使用 ()定义,也是有序组合,元祖中的元素是不可变的

字典:

  使用 {} 定义,使用key value的方式存储元素,key必须是唯一值。

6、使用python写出一个99乘法表?

for i in range(1,10):

  for j in range(1,i+1):

print %d*%d=%d%(j,i,i*j),

  print \n

结果如下:

7、统计出apacheaccess.log中访问量最多的5ip

cat access.log | awk {print $1} | sort | uniq -c | sort -r | head -5