Linux 运维知识总结

guiyun affiliate

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

 物理cpu个数:cat /proc/cpuinfo |grep -c ‘physical id’

 CPU一共有多少核:grep -c processor /proc/cpuinfo

 将CPU的总核数除以物理CPU的个数,得到每颗CPU的核数。


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

 两个命令分别是 w 和 uptime

 这三个系统负载值分别表示在1分钟、5分钟和15分钟内平均有多少个任务处于活动状态。


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

 r 表示运行和等待cpu时间片的进程数

 b 表示等待资源的进程数,比如等待I/O, 内存等

 si 表示由交换区进入内存的数量

 so 由内存进入交换区的数量

 bi 从块设备读取数据的量(读磁盘)

 bo 从块设备写入数据的量(写磁盘)


4. linux系统里,您知道buffer和cache如何区分吗?

 简单讲,buffer里的数据是将要写入到磁盘里的,而cache里的数据时从磁盘里读出来的。

 cache用来缓存从磁盘中读取出来的数据,以方便数据下次被访问,提高数据的访问效率,避免频繁读取磁盘操作。Linux自动地使用所有空闲的内存作为高速缓冲,当程序需要更多的内存时,它也会自动地减小缓冲的大小。

 buffer用来缓冲数据的磁盘写入操作,通过将分散的写操作集中进行,减少磁盘碎片和硬盘的反复寻道,从而提高系统性能。linux有一个守护进程定期清空缓冲内容(即写磁盘),也可以通过sync命令手动清空缓冲。


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

 RES这一列表示物理内存占用数量


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

 sar -n DEV 1 100

 sar -n DEV 可以查看当天的历史网卡流量

 sar -n DEV -f /var/log/sa/saxx 其中xx是日期


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

 ps aux


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

 Ss表示当前的进程是主进程,且处于休眠状态; Z表示僵尸进程


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

 netstat -lnp


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

 netstat -an


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

 vim /etc/sysconfig/network-scripts/ifcft-eth0 如果是eth1则文件名为ifcft-eth1

 修改网卡后,可以使用命令: ifdown eth0; ifup eth0 重启网卡,也可以重启网络服务:service network restart


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

 可以给一个网卡配置多个IP,配置步骤如下:

 1) cd /etc/sysconfig/network-scripts/ cp ifcfg-eth0 ifcfg-eth0\:1

 2) vim ifcfg-eth0\:1 #修改DEVICE和IPADDR、NETMASK以及GATEWAY的值(如果有必要)

 3) 重启网络服务


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

 mii-tool eth0 或者 mii-tool eth1


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

 输入命令 hostname 可以查看当前主机名,修改主机名可以通过命令: hostname newhostname

 要想重启后依旧生效,需要修改配置文件 /etc/sysconfig/network


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

 需要修改 /etc/resolv.conf,

 有时修改该文件后再重启网络服务dns相关设置丢失的话,需要在/etc/sysconfig/network-scripts/ifcfg-eth0中增加DNS1=xxxxx这样的设置


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 > 1.ipt

 恢复:iptables-restore < 1.ipt


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

 直接拷贝用户的cron文件 cp /var/spool/cron/username /bak/


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

 分时日月周


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

 ntsysv 工具

 或者使用chkconfig servicename off


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

 chkconfig nginx off

 chkconfig –level 35 nginx on


22. rsync 同步命令中,下面两种方式有什么不同呢?

 (1) rsync -av /dira/ ip:/dirb/ 是通过ssh方式同步的

 (2) rsync -av /dira/ ip::dirb 是通过rsync服务的方式同步的


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

 如果源中有软连接,那么需要加一个-L选项


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

 有两个日志文件:1)/var/log/secure 这个记录验证用户信息的过程 2)/var/log/wtmp 这个日志记录成功登陆的用户信息


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

 dmesg


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

 xargs: find ./ -type f -name “*.txt” |xargs chmod 777

 exec: 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=”*.txt”


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

 加 -u 选项


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

 修改 /etc/hosts 增加解析记录,或者使用curl -x


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

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


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

 sar -q -f /var/log/sa/saxx 其中xx为两天前的日期


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

 dig @DNSip domain.com


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

 rsync “–rsh=ssh -p port”


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

 –delete


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

 第二行 -/+ buffers/cache 对应的free的那一个数


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

 首先登陆服务器,先看看负载情况,使用命令w, 如果第一个数值很大,再使用vmstat 1 查看是哪些资源缺乏造成的负载高,可以通过r,b,si,so 几列的数值推算是因为哪些资源缺乏。比如r列数值很大,需要使用top命令查看是哪个进程占用CPU比较多,如果si,so两列的数值变化频繁,则说明内存不足,也可以使用top命令查看哪些进程占用较多内存。

 如果系统的负载不高,则需要查看一下网卡流量是否正常: sar -n DEV 1 10 对比平时的网络流量看是否正常。


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

 600 或者 400 总之组和其他用户都不能读不能写也不能执行。


guiyun affiliate

作者头像
南宫俊逸创始人

君子好学,自强不息~

上一篇:7 个最佳WordPress评论主题和插件
下一篇:三剑客之---Sed

发表评论