do some test

1、简述TCP三次握手四次挥手过程及各过程中客户端和服务器端的状态。

    三次握手:

        a(syn-send) -> send syn -> b(listen)

        a(syn-send) <- receive syn_ack <- b(sync_recv)

        a(estabilish) -> send ack -> b(estabilish)

    四次挥手:

        a(fin_wait1) -> send fin -> b(close-wait)

        a(fin_wait2)<- receive ack <- b(close-wait)

        a(fin_wait2) <- receive fin <- b(last-ack)

        a(time_wait)-> send ack -> b(closed)

2、说说进程和线程的区别

    进程是程序运行在内存中的表现。进程都拥有独立地址空间,不同进程之间的资源访问只能通过IPC机制;线程是进程内部的不同执行路径,多个线程除了栈是独立的,其余都共享着进程的内部资源,因此线程占用着更小的内存;进程切换需要保存和切换整个内存空间开销较大,而线程切换仅需要保存和切换线程栈的上下文即可

    

3、查询file.txt以abc结尾的行

    grep 'abc$' file.txt

4、删除file.txt文件中的空行

    sed -i '/^[[:space:]]*$/d' file.txt

5、打印file.txt文件中的第10行

    sed -n '10p' file.txt

6、对MySQL数据库test进行备份和恢复

    backup:

        mysqldump –single-transation -uUSERNAME -p test > db.test.sql

    restore:

        mysql -uUSERNAME -p test < db.test.sql

7、用netstat统计系统当前tcp连接的各种状态的连接数。

    netstat -tn | awk '$1 ~ /^tcp/ {a[$NF]++;} END {for (state in a) { print state,a[state]}}'

8、linux下如何将GBK编码格式的test_gbk.txt文件转换成UTF-8编码格式,转化后的文件名为 test_utf8.txt

    iconv -f gbk -t utf-8 test_gbk.txt -o test_utf8.txt

9、说说你用过哪些监控软件,并简述其原理及适用场景

    zabbix:

        使用master、agent模式,agent负责收集被监控节点的数据,根据其设置主动或被动模式,分别由master向agent获取数据或agent上报数据给master,最终数据由master写入数据库保存,并通过web展示接口从数据库中获取数据、绘制图形并展现到用户

        应用场景:

            目前主流的统一监控,能支持分布式监控、自定义监控项及告警、监控数据的图表展现,基本上满足日常监控需要的各种场景

10、写出查看linux系统性能的命令,如cpu、内存、流量、io等

    cpu:

        top、htop

    内存:

        free

    流量:

        iftop、nethogs

    io:

        iostat

11、说说nginx的upstream支持的分配策略,并简述其原理

    rr/wrr:

        使用轮询或加权轮询后端server实现负载均衡

    lc/wlc:

        基于后端server的最少连接数来选择要转发至哪个后端server

    一致性会话:

        基于客户端source ip的hash值来选择特定的后端server,相同sip的请求会转发到同一后端server

        基于cookie,在client端植入cookie,每次接收client请求,通过此cookie判断要转发到哪台后端server,因此,同一client的请求会转发到相同的后端server

12、crontab定时:在11月份内,每天的早上6点到12点中,每隔2小时执行一次/usr/bin/httpd.sh  怎么实现

    crontab -e

    * 6-12/2 * 11 * /usr/bin/httpd.sh

13、iptables禁止 ip 10.10.10.1 访问本地80端口

    iptables -I INPUT -s 10.10.10.1/32 –dport 80 -j DROP

14、找出在文件a中但不在文件b中的内容,用命令后编写脚本实现

    command:

          grep -v -f b.txt a.txt  

    script:

        #!/bin/bash

        

        while read aline; do

            bingo=0

            while read bline; do

                if [[ "$aline" = "$bline" ]]; then

                    bingo=1

                    break

                fi

            done < b.txt

            [ $bingo -eq 0 ] && echo $aline

        done < a.txt

    

15、编写shell循环创建100个用户,用户名格式user_[0~99]

    for id in {0..99}; do useradd user_$id; done

原创文章,作者:gateray,如若转载,请注明出处:http://www.178linux.com/18164

(0)
gateraygateray
上一篇 2016-06-12 10:39
下一篇 2016-06-12 16:34

相关推荐

  • N26-第四周作业

    一、复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。 思路:先用递归操作复制文件,再用chmod改变文件及其下目录权限。 方法一: [root@promote ~]# cp -r /etc/skel /home/tuser1 #复制文件并改名 [root@promote ~]#…

    2017-05-07
  • redis主从复制(2)— replication buffer与replication backlog

    1、redis主从复制过程先不解释replication buffer和replication backlog,而先看看redis主从复制的过程。 redis的主从复制分为两个阶段: 1)同步(sync rdb snapshot):slave复制master的某时间点(t)的全量数据,t为master接收到slave的sync命令后执行rdb bgsave的…

    Linux干货 2016-04-05
  • apache自动化脚本搭建虚拟主机

    1 基于主机名实现三个虚拟主机 (1).创建网站目录与测试文件 (2).创建虚拟主机文件(目录为/etc/httpd/conf.d/下)   (3).修改测试apache主机hosts文件(就不用DNS服务器解析,方便测试),测试httpd配置文件是否有问题,重启httpd服务   (4)修改测试主机hosts文件(就不用DNS服务器解析…

    Linux干货 2016-10-09
  • 马哥教育网络班21期+第六周课程练习

    马哥教育网络班21期+第6周课程练习 [TOC] vim编辑器使用方法总结 vim编辑器: 简介: vi: visual interface,文本编辑器 vim: vi improved,vi的增强版 文本:ASCII,Unicode, 文本编辑器种类: 行编辑器:sed, 全屏编辑器:nano,vi vim:模式化的…

    Linux干货 2016-08-15
  • Linux文件目录的权限

     Linux是多用户多任务的分时操作系统,如果每个人都对文件和目录都是随便访问的话,难么你的文件很有可能会被他人删除或修改,从而丢失数据。为此系统对文件增加了权限的机制来防止这种事情的发生。对文件而言,用户被分为三类:属主(onwer)、属组(group)、和其他(other)。常规的权限分为:读(r readable)、写(w writable)…

    Linux干货 2016-08-07
  • Http请求流程

    1、http请求流程 1.连接 当我们输入这样一个请求时,首先要建立一个socket连接,因为socket是通过ip和端口建立的,所以之前还有一个DNS解析过程,把www.mycompany.com变成ip,如果url里不包含端口号,则会使用该协议的默认端口号。 DNS的过程是这样的:首先我们知道我们本地的机器上在配置网络时都会填写DNS,这样本机就会把这个…

    Linux干货 2017-02-13