Linux面试实战问题

linux命令小结:

1)more 查看文件但是不能向上回滚
2)less 查看文件能向上回滚
3)chkconfig 查看设置开机自启动软件的命令  --list 程序名 -add/
4)tar gzip 打包组合zcvf,解包组合zxfv z(gzip),c(create),v(verbose),file,x(extract),j(bzip) --exclude -X(--exclude-from),-C指定目录解压。
5)cut 按列切割 -d 指定分隔符,-f数字选列,-c 按字符切割  

1.如何过滤出已知目录下oldboy中的所有一级目录?

ls -l|grep ^d  //^ 以什么开头,正则 [^oldboy] 非oldboy
ls -F|grep /$  //以/结尾的文件
ls -p|grep /$  //p 给目录加/
grep -Ev "^#|^$" /etc/ssh/sshd_config 把以#开头和以$结尾的去掉,E匹配多个字符
find ./ -type d -maxdepth 1 ! -name "." //查找类型为d的目录
tree -Ld 1   //-d List directories only. -L level Descond only level directories deep ,相当于find -maxdepth level。
ls -l|sed -n '/^d/p'
ls -l|awk '/^d/'

·
2. 如何切回上一次的访问目录?

cd -

环境变量OLDPWD始终记录当前路径的前一个路径内容,而执行cd -命令正可以进入到这个变量保留的前一个目录。

3.一个目录中有很多文件,想最快速度看到最近更新的文件,如何看?

ls -lrt /etc #==>执行这个命令后最新的文件会在最下面
  -r,--reverse 翻转排序
  -t 按照修改时间排序
  -l 使用要给长的列表格式

.
4. 在配置apache时,执行了./configure –prefix=/application/apache2.217 来编译apache,在make install完成后,希望用户的访问路径更简单,需要给application/apache2.2.17目录做一个软链接/application/apahce,使得内部开发或管理人员通过/application/apache就可以访问到apache的安装目录/application/apache2.2.17下的内容,请给出你的实现命令。

ln -s /application/apache2.2.17 /application/apache #-s参数表示为创建软链接。

5.删除当前目录下的所有修改时间在7天以前的文件。

find /app/logs/ -type f -mtime +7|xargs rm -f

6.调式系统服务时,希望能实时查看系统日志/var/log/messages的更新,如何做?

tail -f /var/log/messages
tailf /var/log/messages
tail -F /var/log/messages //和-f多一个retry功能

7.打印配置文件nginx.conf内容的行号及内容,该如何做?

1)nl nginx.conf
2)cat -n nginx.conf  //这个最常用
3)less -N nginx.conf
4)vi 文件 然后执行:set nu,:set nonu 为取消行号
5)grep -n . /etc/services

8.装完系统后,希望让网络文件共享服务NFS,仅在3级别上开机自启动,该如何做?

1)chkconfig nfs off  //全部关掉后然后开启需要的级别的服务
2)chkconfig --level 3  nfs on
3)chkconfig --level 245 nfs off //把默认的2,4,5关闭即可
4)chkconfig --lish nfs //查看
ls /etc/rc.d/rc3.d/ |grep nfs 原理来源

9.口头描述linux系统开机到登陆界面的启动过程。
1)开机BIOS自检;
2)MBR引导;
3)grup引导菜单;
4)加载内核kernel;
5)启动init进程;
6)读取inittab文件,执行rc sysinit,rc等脚本;
7)启动mingetty,进入系统登陆界面。

10.linux系统查看中文乱码,请问如何解决乱码问题?
1)export LANG=”zh_CN.GB18030” #执行此法,仅在当前窗口生效 echo $LANG
2)echo ‘LANG=”zh_CN.GB18030” >/etc/sysconfig/i18n #写到配置文件中永久生效
source /etc/sysconfig/i18n #如需让配置立即生效需要执行此步。
4)echo ‘export LANG=”ZH_CH.GB18030” >>/etc/profile(全局系统环境变量配置文件)
source /etc/profile(生效)
5)工作场景中使用的脚本,为避免中文乱码,有时候也会在脚本里更改字符集:

!bin/sh

export LANG=”ZH_CH.GB18030”
6)ssh工具需要和linux的字符集保持一致。
7)服务端和客户端字符集对应,乱码就可以有效避免。

11.如何优化linux系统?
1)不用root,添加普通用户,通过sudo授权管理。
2)更改默认的远程链接SSH服务端口及禁止root用户远程链接。
3)定时自动更新服务器时间。
4)配置yum更新源,从国内更新源下载安装rpm包。
5)关闭selinux及iptables(iptables工作场景如果有wan ip 一般要打开,高并发除外)。
6)调整文件描述符的数量,进程及文件的打开都会消耗文件描述符。
7)定时自动清理/var/spool/clientmquene/目录垃圾文件,防止inodes的节点被占满。
8)精简开机自启动服务(crond,sshd,network,rsyslog)。
9)linux内核参数优化/etc/sysctl.conf,执行sysctl -p 生效。
10)更改字符集,支持中文,但建议还是用英文字符集,防止乱码问题,不要使用中文。
11)锁定系统关键文件。chattr +i /etc/passwd /etc/shadow /etc/group /etc/gshadow /etc/inittab。
12)清空etc/issue,清除系统及内核版本登陆前的屏幕显示。
13)清楚无用的默认系统账号或组(非必须)。

12./etc/目录为linux系统的默认的配置文件及服务启动命令的目录。
a.请用tar打包/etc/整个目录(打包及压缩)
b.请用tar打包/etc整个目录(需排除/etc/services文件)
c.请把a点命令的压缩包,解压到/tmp指定的目录下

a. tar zcvf /tmp/etc.tar.gz ./etc
tar zcvf test.tar.gz ./test #gz打包命令 =》tar zxvf test.tar.gz 解压
tar jcvf test.tar.bz ./test #bz打包命令 =》tar jxvf test.tar.bz 解压
b. tar zcvf /tmp/etc.tar.gz ./etc --exclude=/etc/services/

13.如何查看/etc/services的文件有多少行?

1)wc -L /etc/services 直接查看文件行数
2)cat -n /etc/services|tail -1 所有查行号都可以类似
3)sed -n '$=' /etc/services

生产场景中经常会通过计算wc-l计算服务进程个数,然后通过脚本判断进程个数来监测服务是否正常。如进程数大于一个,说明进程还存在,服务一般就是正常的。
ps -ef |grep syslog|grep -v grep|wc -l (grep -v grep 排除自身进程)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值