01_常见的linux简单面试题

1. 如何看当前Linux系统有几颗物理CPU和每颗CPU的核数?

  • 答:
[root@centos6 ~ 10:55 #35]# cat /proc/cpuinfo|grep -c 'physical id'
4
[root@centos6 ~ 10:56 #36]# cat /proc/cpuinfo|grep -c 'processor'
4

2. 查看系统负载有两个常用的命令,是哪两个?这三个数值表示什么含义呢?

  • 答:
[root@centos6 ~ 10:56 #37]# w
10:57:38 up 14 min,  1 user,  load average: 0.00, 0.00, 0.00
USER     TTY      FROM              LOGIN@   IDLE   JCPU   PCPU WHAT
root     pts/0    192.168.147.1    18:44    0.00s  0.10s  0.00s w
[root@centos6 ~ 10:57 #38]# uptime
10:57:47 up 14 min,  1 user,  load average: 0.00, 0.00, 0.00

其中load average即系统负载,三个数值分别表示一分钟、五分钟、十五分钟内系统的平均负载,即平均任务数。

3. vmstat r, b, si, so, bi, bo 这几列表示什么含义呢?

  • 答:
[root@centos6 ~ 10:57 #39]# vmstat
procs -----------memory---------- ---swap-- -----io---- --system-- -----cpu-----
r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa st
0  0      0 1783964  13172 106056    0    0    29     7   15   11  0  0 99  0  0

r即running,表示正在跑的任务数
b即blocked,表示被阻塞的任务数
si表示有多少数据从交换分区读入内存
so表示有多少数据从内存写入交换分区
bi表示有多少数据从磁盘读入内存
bo表示有多少数据从内存写入磁盘
简记:
i --input,进入内存
o --output,从内存出去
s --swap,交换分区
b --block,块设备,磁盘
单位都是KB
4. linux系统里,您知道buffer和cache如何区分吗?

  • 答:
    buffer和cache都是内存中的一块区域,当CPU需要写数据到磁盘时,由于磁盘速度比较慢,所以CPU先把数据存进buffer,然后CPU去执行其他任务,buffer中的数据会定期写入磁盘;当CPU需要从磁盘读入数据时,由于磁盘速度比较慢,可以把即将用到的数据提前存入cache,CPU直接从Cache中拿数据要快的多。

5. 使用top查看系统资源占用情况时,哪一列表示内存占用呢?

  • 答:
PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
301 root      20   0     0    0    0 S  0.3  0.0   0:00.08 jbd2/sda3-8
1 root      20   0  2900 1428 1216 S  0.0  0.1   0:01.28 init
2 root      20   0     0    0    0 S  0.0  0.0   0:00.00 kthreadd
3 root      RT   0     0    0    0 S  0.0  0.0   0:00.00 migration/0

VIRT虚拟内存用量
RES物理内存用量
SHR共享内存用量
%MEM内存用量

6. 如何实时查看网卡流量为多少?如何查看历史网卡流量?

  • 答:
    安装sysstat包,使用sar命令查看。
    yum install -y sysstat#安装sysstat包,获得sar命令
    sar -n DEV#查看网卡流量,默认10分钟更新一次
    sar -n DEV 1 10#一秒显示一次,一共显示10次
    sar -n DEV -f /var/log/sa/sa22#查看指定日期的流量日志

7. 如何查看当前系统都有哪些进程?

  • 答:ps -aux 或者ps -elf
[root@centos6 ~ 13:20 #56]# ps -aux
Warning: bad syntax, perhaps a bogus '-'? See /usr/share/doc/procps-3.2.8/FAQ
USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root         1  0.0  0.0   2900  1428 ?        Ss   10:43   0:01 /sbin/init
root         2  0.0  0.0      0     0 ?        S    10:43   0:00 [kthreadd]
root         3  0.0  0.0      0     0 ?        S    10:43   0:00 [migration/0]
root         4  0.0  0.0      0     0 ?        S    10:43   0:00 [ksoftirqd/0]
……
[root@centos6 ~ 13:21 #57]# ps -elf
F S UID        PID  PPID  C PRI  NI ADDR SZ WCHAN  STIME TTY          TIME CMD
4 S root         1     0  0  80   0 -   725 -      10:43 ?        00:00:01 /sbin/init
1 S root         2     0  0  80   0 -     0 -      10:43 ?        00:00:00 [kthreadd]
1 S root         3     2  0 -40   - -     0 -      10:43 ?        00:00:00 [migration/0]
1 S root         4     2  0  80   0 -     0 -      10:43 ?        00:00:00 [ksoftirqd/0]
1 S root         5     2  0 -40   - -     0 -      10:43 ?        00:00:00 [migration/0]

8. ps 查看系统进程时,有一列为STAT, 如果当前进程的stat为Ss 表示什么含义?如果为Z表示什么含义?

  • 答:S表示正在休眠;s表示主进程;Z表示僵尸进程。

9. 如何查看系统都开启了哪些端口?

  • 答:
[root@centos6 ~ 13:20 #55]# netstat -lnp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address               Foreign Address             State       PID/Program name
tcp        0      0 0.0.0.0:22                  0.0.0.0:*                   LISTEN      1035/sshd
tcp        0      0 :::22                       :::*                        LISTEN      1035/sshd
udp        0      0 0.0.0.0:68                  0.0.0.0:*                               931/dhclient
Active UNIX domain sockets (only servers)
Proto RefCnt Flags       Type       State         I-Node PID/Program name    Path
unix  2      [ ACC ]     STREAM     LISTENING     6825   1/init              @/com/ubuntu/upstart
unix  2      [ ACC ]     STREAM     LISTENING     8429   1003/dbus-daemon    /var/run/dbus/system_bus_socket

10. 如何查看网络连接状况?

  • 答:
[root@centos6 ~ 13:22 #58]# netstat -an
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address               Foreign Address             State
tcp        0      0 0.0.0.0:22                  0.0.0.0:*                   LISTEN
tcp        0      0 192.168.147.130:22          192.168.147.1:23893         ESTABLISHED
tcp        0      0 :::22                       :::*                        LISTEN
udp        0      0 0.0.0.0:68                  0.0.0.0:*
……

11. 想修改ip,需要编辑哪个配置文件,修改完配置文件后,如何重启网卡,使配置生效?

  • 答:使用vi或者vim编辑器编辑网卡配置文件/etc/sysconfig/network-scripts/ifcft-eth0(如果是eth1文件名为ifcft-eth1),内容如下:
DEVICE=eth0
HWADDR=00:0C:29:06:37:BA
TYPE=Ethernet
UUID=0eea1820-1fe8-4a80-a6f0-39b3d314f8da
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=static
IPADDR=192.168.147.130
NETMASK=255.255.255.0
GATEWAY=192.168.147.2
DNS1=192.168.147.2
DNS2=8.8.8.8

修改网卡后,可以使用命令重启网卡:

ifdown eth0
ifup eth0

也可以重启网络服务:

service network restart

12. 能否给一个网卡配置多个IP? 如果能,怎么配置?

  • 答:可以给一个网卡配置多个IP,配置步骤如下:
cat /etc/sysconfig/network-scripts/ifcfg-eth0#查看eth0的配置
DEVICE=eth0
HWADDR=00:0C:29:06:37:BA
TYPE=Ethernet
UUID=0eea1820-1fe8-4a80-a6f0-39b3d314f8da
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=static
IPADDR=192.168.147.130
NETMASK=255.255.255.0
GATEWAY=192.168.147.2
DNS1=192.168.147.2
DNS2=8.8.8.8

(1)新建一个ifcfg-eth0:1文件

cp /etc/sysconfig/network-scripts/ifcfg-eth0 /etc/sysconfig/network-scripts/ifcfg-eth0:1

(2)修改其内容如下:vim /etc/sysconfig/network-scripts/ifcfg-eth0:1

DEVICE=eth0:1
HWADDR=00:0C:29:06:37:BA
TYPE=Ethernet
UUID=0eea1820-1fe8-4a80-a6f0-39b3d314f8da
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=static
IPADDR=192.168.147.133
NETMASK=255.255.255.0
GATEWAY=192.168.147.2
DNS1=192.168.147.2
DNS2=8.8.8.8

(3)重启网络服务:

service network restart

13. 如何查看某个网卡是否连接着交换机?

  • 答:mii-tool eth0 或者 mii-tool eth1

14. 如何查看当前主机的主机名,如何修改主机名?要想重启后依旧生效,需要修改哪个配 置文件呢?

  • 答:
    查看主机名:hostname
    centos6.5
    修改主机名:hostname centos6.5-1
    永久生效需要修改配置文件:vim /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=centos6.5-1

15. 设置DNS需要修改哪个配置文件?

  • 答:
    (1)在文件 /etc/resolv.conf 中设置DNS
    (2)在文件 /etc/sysconfig/network-scripts/ifcfg-eth0 中设置DNS

16. 使用iptables 写一条规则:把来源IP为192.168.1.101访问本机80端口的包直接拒绝

  • 答:iptables -I INPUT -s 192.168.1.101 -p tcp --dport 80 -j REJECT

17. 要想把iptable的规则保存到一个文件中如何做?如何恢复?

  • 答:
    使用iptables-save重定向到文件中:iptables-save > 1.ipt
    使用iptables-restore反重定向回来:iptables-restore < 1.ipt

18. 如何备份某个用户的任务计划?

  • 答:
    将/var/spool/cron/目录下指定用户的任务计划拷贝到备份目录cron_bak/下即可
    cp /var/spool/cron/rachy /tmp/bak/cron_bak/

19. 任务计划格式中,前面5个数字分表表示什么含义?

  • 答:依次表示:分、时、日、月、周

20. 如何可以把系统中不用的服务关掉?

  • 答:
    (1)使用可视化工具:ntsysv
    (2)使用命令:chkconfig servicename off

21. 如何让某个服务(假如服务名为 nginx)只在3,5两个运行级别开启,其他级别关闭?

  • 答:
    先关闭所有运行级别:chkconfig nginx off
    然后打开35运行级别:chkconfig --level 35 nginx on

22. rsync 同步命令中,下面两种方式有什么不同呢?
(1) rsync -av /dira/ ip:/dirb/
(2) rsync -av /dira/ ip::dirb

  • 答:
    (1)前者是通过ssh方式同步的
    (2)后者是通过rsync服务的方式同步的

23. rsync 同步时,如果要同步的源中有软连接,如何把软连接的目标文件或者目录同步?

  • 答:同步源文件需要加-L选项

24. 某个账号登陆linux后,系统会在哪些日志文件中记录相关信息?

  • 答:用户身份验证过程记录在/var/log/secure中,登录成功的信息记录在/var/log/wtmp。

25. 网卡或者硬盘有问题时,我们可以通过使用哪个命令查看相关信息?

  • 答:使用命令dmesg

26. 分别使用xargs和exec实现这样的需求,把当前目录下所有后缀名为.txt的文件的权限修改为777

  • 答:
    (1)find ./ -type f -name "*.txt" |xargs chmod 777
    (2)find ./ -type f -name "*.txt" -exec chmod 777 {} ;

27. 有一个脚本运行时间可能超过2天,如何做才能使其不间断的运行,而且还可以随时观察脚本运行时的输出信息?

  • 答:使用screen工具

28. 在Linux系统下如何按照下面要求抓包:只过滤出访问http服务的,目标ip为192.168.0.111,一共抓1000个包,并且保存到1.cap文件中?

  • 答:tcpdump -nn -s0 host 192.168.0.111 and port 80 -c 1000 -w 1.cap

29. rsync 同步数据时,如何过滤出所有.txt的文件不同步?

  • 答:加上--exclude选项:--exclude=“*.txt”

30. rsync同步数据时,如果目标文件比源文件还新,则忽略该文件,如何做?

  • 答:保留更新使用-u或者--update选项

31. 想在Linux命令行下访问某个网站,并且该网站域名还没有解析,如何做?

  • 答:在/etc/hosts文件中增加一条从该网站域名到其IP的解析记录即可,或者使用curl -x

32. 自定义解析域名的时候,我们可以编辑哪个文件?是否可以一个ip对应多个域名?是否一个域名对应多个ip?

  • 答:编辑 /etc/hosts ,可以一个ip对应多个域名,不可以一个域名对多个ip

33. 我们可以使用哪个命令查看系统的历史负载(比如说两天前的)?

  • 答:sar -q -f /var/log/sa/sa22 #查看22号的系统负载

34. 在Linux下如何指定dns服务器,来解析某个域名?

35. 使用rsync同步数据时,假如我们采用的是ssh方式,并且目标机器的sshd端口并不是默认的22端口,那我们如何做?

  • 答:rsync "--rsh=ssh -p 10022"或者rsync -e "ssh -p 10022"

36. rsync同步时,如何删除目标数据多出来的数据,即源上不存在,但目标却存在的文件或者目录?

  • 答:加上--delete选项

37. 使用free查看内存使用情况时,哪个数值表示真正可用的内存量?

  • 答:free列第二行的值

38. 有一天你突然发现公司网站访问速度变的很慢很慢,你该怎么办呢?(服务器可以登陆,提示:你可以从系统负载和网卡流量入手)

  • 答:可以从两个方面入手分析:分析系统负载,使用w命令或者uptime命令查看系统负载,如果负载很高,则使用top命令查看CPU,MEM等占用情况,要么是CPU繁忙,要么是内存不够,如果这二者都正常,再去使用sar命令分析网卡流量,分析是不是遭到了攻击。一旦分析出问题的原因,采取对应的措施解决,如决定要不要杀死一些进程,或者禁止一些访问等。

39. rsync使用服务模式时,如果我们指定了一个密码文件,那么这个密码文件的权限应该设置成多少才可以?

  • 答:600或400
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 211,265评论 6 490
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,078评论 2 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 156,852评论 0 347
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,408评论 1 283
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,445评论 5 384
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,772评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,921评论 3 406
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,688评论 0 266
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,130评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,467评论 2 325
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,617评论 1 340
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,276评论 4 329
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,882评论 3 312
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,740评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,967评论 1 265
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,315评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,486评论 2 348

推荐阅读更多精彩内容

  • linux资料总章2.1 1.0写的不好抱歉 但是2.0已经改了很多 但是错误还是无法避免 以后资料会慢慢更新 大...
    数据革命阅读 12,146评论 2 34
  • Ubuntu的发音 Ubuntu,源于非洲祖鲁人和科萨人的语言,发作 oo-boon-too 的音。了解发音是有意...
    萤火虫de梦阅读 99,201评论 9 467
  • 从三月份找实习到现在,面了一些公司,挂了不少,但最终还是拿到小米、百度、阿里、京东、新浪、CVTE、乐视家的研发岗...
    时芥蓝阅读 42,209评论 11 349
  • 摘录一段武志红的特别美的句子。 当然比起没读到好书来,还有一件事更遗憾,那就是获得不精彩。如果人生能重来,那我会好...
    大颅不大阅读 308评论 0 0
  • 三个月的实习,不知不觉就只剩下两天了。是时候对我的实习进行一个总结了,代表我的实习圆满结束。 一进台达,我们就...
    谢小芬阅读 291评论 3 0