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

(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服务器,来解析某个域名?

使用dig命令:dig @DNSip domain.com

如:dig @8.8.8.8 www.baidu.com#使用谷歌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

40、给您一台最小化安装的linux机器,如何进行基础优化?

1)更新yum官方源
2)关闭不需要的服务
3)关闭不需要的TTY
4)对TCP/IP网络参数进行调整
_4.1) 优化Linux下的内核TCP参数以提高系统性能
5)设置时间同步
6)优化最大文件数限制
7)关闭SELINUX
8)修改SSH登录配置
9)清理登陆的时候显示的系统及内核版本
10)删除不必要的系统用户和群组
11)关闭重启ctl-alt-delete组合键
12)设置一些全局变量
13)设置history历史记录
14)centos6.4最小化安装后启动网卡
15)添加普通用户,设置sudo权限
16)禁止root远程用户登录
17)sed修改远程端口
18)防火墙iptables配置
19)修改默认DNS
20)安装必要软件,更新yum源 [epel源]
21)更新内核和软件到最新版本
22)去除上次登录的信息

41、请说出内核调优配置文件名字?举例几个内核需要优化的参数配置?

名字:/etc/sysctl.conf

net.ipv4.tcp_tw_recycle = 1 ##表示开启TCP连接中TIME-WAIT sockets的快速收回功能,默认为 0 ,表示关闭。
net.ipv4.tcp_tw_reuse = 1 ##表示开启重用。允许将TIME-WAIT sockets重新用于新的 TCP 连接,默认为 0 表示关闭
net.ipv4.tcp_syn_retries = 6 ## 默认6 时间为2^7-1 =127s 在内核放弃建立连接之前发送SYN 包的数量
#允许系统打开的端口范围
net.ipv4.ip_local_port_range = 1024 65000
#最大打开文件数
fs.nr_open = 10000000 ##单个进程可分配的最大文件数
fs.file-max = 11000000 ##表示系统级别的能够打开的文件句柄的数量。是对整个系统的限制,并不是针对用户的

42、 问: 当你需要给命令绑定一个宏或者按键的时候,应该怎么做呢?

可以使用bind命令,bind可以很方便地在shell中实现宏或按键的绑定。
在进行按键绑定的时候,我们需要先获取到绑定按键对应的字符序列。
比如获取F12的字符序列获取方法如下:先按下Ctrl+V,然后按下F12 .我们就可以得到F12的字符序列 ^[[24~。
接着使用bind进行绑定。
[root@localhost ~]# bind ‘”\e[24~":“date”’
注意:相同的按键在不同的终端或终端模拟器下可能会产生不同的字符序列。
【附】也可以使用showkey -a命令查看按键对应的字符序列。

43、 问: 如果一个linux新手想要知道当前系统支持的所有命令的列表,他需要怎么做

使用命令compgen ­-c,可以打印出所有支持的命令列表。
[root@localhost ~]$ compgen -c
l.
ll
ls
which
if
then
else
elif

44、问:如果你的助手想要打印出当前的目录栈,你会建议他怎么做?

使用Linux 命令dirs可以将当前的目录栈打印出来。

[root@localhost ~]# dirs

/usr/share/X11

【附】:目录栈通过pushd popd 来操作。

45、 问: 你的系统目前有许多正在运行的任务,在不重启机器的条件下,有什么方法可以把所有正在运行的进程移除呢?

使用Linux命令 ’disown -r ’可以将所有正在运行的进程移除。

46、问: bash shell 中的hash 命令有什么作用?

linux命令’hash’管理着一个内置的哈希表,记录了已执行过的命令的完整路径, 用该命令可以打印出你所使用过的命令以及执行的次数。
[root@localhost ~]# hash

hits command

2 /bin/ls

2 /bin/su

47、 问:哪一个bash内置命令能够进行数学运算。

bash shell 的内置命令let 可以进行整型数的数学运算。
#! /bin/bash
let c=a+b

48、问:怎样一页一页地查看一个大文件的内容呢?

通过管道将命令”cat file_name.txt” 和 ’more’ 连接在一起可以实现这个需要.
[root@localhost ~]# cat file_name.txt | more

49、问:数据字典属于哪一个用户的?

数据字典是属于’SYS’用户的,用户‘SYS’ 和 ’SYSEM’是由系统默认自动创建的。

50、 问: 怎样查看一个linux命令的概要与用法?

假设你在/bin目录中偶然看到一个你从没见过的的命令,怎样才能知道它的作用和用法呢?
使用命令whatis 可以先出显示出这个命令的用法简要,比如,你可以使用whatis zcat 去查看‘zcat’的介绍以及使用简要。
[root@localhost ~]# whatis zcat
zcat [gzip] (1) – compress or expand files

51、使用哪一个命令可以查看自己文件系统的磁盘空间配额呢?

使用命令repquota 能够显示出一个文件系统的配额信息

52、查看 http 的并发请求数与其 TCP 连接状态

netstat -n | awk ‘/^tcp/ {++b[$NF]} END {for(a in b) print a, b[a]}’

53、修改系统打开最大句柄数

ulimit -n 查看 linux 系统打开最大的文件描述符,这里默认 1024,不修改这里 web 服务器修改再大也没用。
修改/etc/security/limits.conf

  • soft nofile 10240
  • hard nofile 10240

54、用 tcpdump 嗅探 80 端口的访问看看谁最高

tcpdump -i eth0 -tnn dst port 80 -c 1000 | awk -F"." ‘{print $1".“$2”.“$3”."$4}’ | sort | uniq -c | sort -nr |head -5

55、查看当前系统每个 IP 的连接数

netstat -n | awk ‘/^tcp/ {print $5}’| awk -F: ‘{print $1}’ | sort | uniq -c | sort -rn

56、shell 下 32 位随机密码生成

cat /dev/urandom | head -1 | md5sum | head -c 32 >> /pass

57.如何查看二进制文件的内容

我们一般通过 hexdump 命令 来查看二进制文件的内容。

hexdump -C XXX(文件名) -C 是参数 不同的参数有不同的意义

-C 是比较规范的 十六进制和 ASCII 码显示

-c 是单字节字符显示

-b 单字节八进制显示

-o 是双字节八进制显示

-d 是双字节十进制显示

-x 是双字节十六进制显示

等等等等

58、ps aux 中的 VSZ 代表什么意思,RSS 代表什么意思

VSZ:虚拟内存集,进程占用的虚拟内存空间
RSS:物理内存集,进程战用实际物理内存空间

59、检测并修复/dev/hda5

fsck 用来检查和维护不一致的文件系统。若系统掉电或磁盘发生问题,可利用 fsck 命令对文件系统进行检查,用法:

60.Linux 系统的开机启动顺序

加载 BIOS–>读取 MBR–>Boot Loader–>加载内核–>用户层 init 一句 inittab 文件来设定系统运行的等级(一般 3 或者 5,3 是多用户命令行,5 是界面)–>init 进程执行 rc.syninit–>启动内核模块–>执行不同级别运行的脚本程序–>执行/etc/rc.d/rc.local(本地运行服务)–>执行/bin/login,就可以登录了。

61.符号链接与硬链接的区别

我们可以把符号链接,也就是软连接 当做是 windows 系统里的 快捷方式。

硬链接 就好像是 又复制了一份.

ln 3.txt 4.txt 这是硬链接,相当于复制,不可以跨分区,但修改 3,4 会跟着变,若删除 3,4 不受任何影响。

ln -s 3.txt 4.txt 这是软连接,相当于快捷方式。修改 4,3 也会跟着变,若删除 3,4 就坏掉了。不可以用了。

62.保存当前磁盘分区的分区表

dd 命令是以个强大的命令,在复制的同时进行转换
dd if=/dev/sda of=./mbr.txt bs=1 count=512

63.FTP 的主动模式和被动模式

FTP 协议有两种工作方式:PORT 方式和 PASV 方式,中文意思为主动式和被动式。

PORT(主动)方式的连接过程是:客户端向服务器的 FTP 端口(默认是 21)发送连接请 求,服务器接受连接,建立一条命令链路。当需要传送数据时,客户端在命令链路上用 PORT 命令告诉服务器:“我打开了 XX 端口,你过来连接我”。于是服务器从 20 端口向客户端的 XX 端口发送连接请求,建立一条数据链路来传送数据。

PASV(被动)方式的连接过程是:客户端向服务器的 FTP 端口(默认是 21)发送连接请 求,服务器接受连接,建立一条命令链路。当需要传送数据时,服务器在命令链路上用 PASV 命令告诉客户端:“我打开了 XX 端口,你过来连接我”。于是客户端向服务器的 XX 端口 发送连接请求,建立一条数据链路来传送数据。

从上面可以看出,两种方式的命令链路连接方法是一样的,而数据链路的建立方法就完 全不同。

64.怎么把脚本添加到系统服务里,即用 service 来调用

在脚本里加入
#!/bin/bash

chkconfig: 345 85 15

description: httpd

65.如何将本地80端口的请求转发到8080端口,当前主机IP为192.168.16.1,其中本地网卡eth0:

#iptables-tnat -A PREROUTING -d 192.168.16.1 -p tcp –dport 80 -j DNAT –to192.168.16.1:8080

或 者:

#iptables-t nat -A PREROUTING -i eth0 -d 192.168.16.1 -p tcp -m tcp –dport 80 -j REDIRECT –to-ports 8080

66.什么是NAT,常见分为那几种,DNAT与SNAT有什么不同,应用事例有那些?

SNAT,DNAT,MASQUERADE都是NAT。
MASQUERADE是SNAT的一个特例。

SNAT是指在数据包从网卡发送出去的时候,把数据包中的源地址部分替换为指定的IP,这样,接收方就认为数据包的来源是被替换的那个IP的主机。

MASQUERADE是用发送数据的网卡上的IP来替换源IP,因此,对于那些IP不固定的场合,比如拨号网络或者通过dhcp分配IP的情况下,就得用MASQUERADE。

DNAT,就是指数据包从网卡发送出去的时候,修改数据包中的目的IP,表现为如果你想访问A,可是因为网关做了DNAT,把所有访问A的数据包的目的IP全部修改为B,那么,你实际上访问的是B

因为,路由是按照目的地址来选择的,因此,DNAT是在PREROUTING链上来进行的,而SNAT是在数据包发送出去的时候才进行,因此是在POSTROUTING链上进行的。

67.包过滤防火墙与代理应用防火墙有什么区别,能列举几种相应的产品吗?

包过滤防火墙是根据包头进行的过滤,并且是处于网络层的,根据包的源ip地址,目标ip地址,协议类型,端口号,进行过滤;代理应用防火墙工作在应用层,他使用代理服务器技术,将内网对外网的访问,变为防火墙对外网的访问,可以对包的内容进行分辨,从而过滤。
代理应用防火墙:天融信GFW4000
包过滤防火墙:华为NE 16E

68.iptables是否支持time时间控制用户行为,如有请写出具体操作步骤。

支持。需要增加相关支持的内核补丁,并且要重新编译内核。

或者使用crontab配合iptables,首先:vi /deny.bat 输入/sbin/iptables -A OUTPUT -p tcp -s 192.168.1.0/24 --dport 80 -j DROP保存退出

打开crontab-e

输入:00 21* * * /bin/sh /deny.bat

69.说出你知道的几种linux/unix发行版本。

Redhat、CentOS、Fedora、SuSE、Slackware、Gentoo、Debian、Ubuntu、FreeBSD、Solaris、SCO、AIX、HP…

70.列出linux常见打包工具并写相应解压缩参数(至少三种)

Targz bz

Tar-xvzf gzip -d bzip2 -d

71.计划每星期天早8点服务器定时重启,如何实现?

Crontab-e

0008 * * 7 /sbin/init 6

72.列出作为完整邮件系统的软件,至少二类。

Sendmail,postfix,qmail

73.当用户在浏览器当中输入一个网站,说说计算机对dns解释经过那些流程?注:本机跟本地dns还没有缓存。

a.用户输入网址到浏览器;
b.浏览器发出DNS请求信息;
c.计算机首先查询本机HOST文件,看是否存在,存在直接返回结果,不存在,继续下一步;
d.计算机按照本地DNS的顺序,向合法dns服务器查询IP结果;
e.合法dns返回dns结果给本地dns,本地dns并缓存本结果,直到TTL过期,才再次查询此结果;
f.返回IP结果给浏览器;
g.浏览器根据IP信息,获取页面;

74.我们都知道,dns既采用了tcp协议,又采用了udp协议,什么时候采用tcp协议?什么时候采用udp协议?为什么要这么设计?

这个题需要理解的东西比较的多,分一下几个方面
a,从数据包大小上分:UDP的最大包长度是65507个字节,响应dns查询的时候数据包长度超过512个字节,而返回的只要前512个字节,这时名字 解释器通常使用TCP从发原来的请求。
b,从协议本身来分:大部分的情况下使用UDP协议,大家都知道UDP协议是一种不可靠的协议,dns不像其它的使用UDP的Internet应用 (如:TFTP,BOOTP和SNMP等),大部分集中在局域网,dns查询和响应需要经过广域网,分组丢失和往返时间的不确定性在广域网比局域网上更大,这就要求dns客户端需要好的重传和超时算法,这时候使用TCP。

75.一个EXT3的文件分区,当使用touch test.file命令创建一个新文件时报错,报错的信息是提示磁盘已满,但是采用df -h命令查看磁盘大小时,只使用了,60%的磁盘空间,为什么会出现这个情况,说说你的理由。

两种情况,一种是磁盘配额问题,另外一种就是EXT3文件系统的设计不适合很多小文件跟大文件的一种文件格式,出现很多小文件时,容易导致inode耗尽了。

76.我们都知道FTP协议有两种工作模式,说说它们的大概的一个工作流程?

FTP两种工作模式:主动模式(Active FTP)和被动模式(Passive FTP)
在主动模式下,FTP客户端随机开启一个大于1024的端口N向服务器的21号端口发起连接,然后开放N+1号端口进行监听,并向服务器发出PORT N+1命令。
服务器接收到命令后,会用其本地的FTP数据端口(通常是20)来连接客户端指定的端口N+1,进行数据传输。

在被动模式下,FTP客户端随机开启一个大于1024的端口N向服务器的21号端口发起连接,同时会开启N+1号端口。然后向服务器发送PASV命令,通 知服务器自己处于被动模式。服务器收到命令后,会开放一个大于1024的端口P进行监听,然后用PORTP命令通知客户端,自己的数据端口是P。客户端收到命令后,会通过N+1号端口连接服务器的端口P,然后在两个端口之间进行数据传输。

总的来说,主动模式的FTP是指服务器主动连接客户端的数据端口,被动模式的FTP是指服务器被动地等待客户端连接自己的数据端口。
被动模式的FTP通常用在处于防火墙之后的FTP客户访问外界FTp服务器的情况,因为在这种情况下,防火墙通常配置为不允许外界访问防火墙之后主机,而只允许由防火墙之后的主机发起的连接请求通过。
因此,在这种情况下不能使用主动模式的FTP传输,而被动模式的FTP可以良好的工作。

77.编写个shell脚本将当前目录下大于10K的文件转移到/tmp目录下

Q:主要是考察awk 这些的用法

#/bin/sh
#Programm :

Using for move currently directory to /tmp

for FileName in ls -l |awk ‘$5>10240 {print $9}’
do
mv $FileName /tmp
done
ls -la /tmp
echo “Done! ”

78.apache有几种工作模式,分别介绍下其特点,并说明什么情况下采用不同的工作模式?

apache主要有两种工作模式:prefork(apache的默认安装模式)和worker(可以在编译的时候加参数–with-mpm- worker选择工作模式)
prefork的特点是:(预派生)
1.这种模式可以不必在请求到来时再产生新的进程,从而减小了系统开销
2.可以防止意外的内存泄漏
3.在服务器负载下降的时候会自动减少子进程数
worker的特点是:支持混合的多线程多进程的多路处理模块
如果对于一个高流量的HTTP服务器,worker MPM是一个比较好的选择,因为worker MPM占用的内存要比prefork要小。

79.名词解释 HDLC,VTP,OSPF,RIP,DDOS,systemV,GNU,netscreen,ssh,smartd,apache,WAIT_TIME 等等。

HDLC:高级链路控制;VTP:vlan 传输协议;OSPF:开放最短路径优先;RIP:路由信息协议;DDOS:分布式拒绝服务攻击;system V:UNIX版本V;GNU:非UNIX,开放源码软件工程;netscreen:国际著名防火墙厂家之一,04年后被juniper收购,变为其防火墙的一个系列;ssh:安全外壳,防止中间人攻击的一种连接方式;smartd:硬盘检测工具s.m.a.r.t的进程;Apache:web服务器软件;WAIT_TIME:netstat命令显示的参数,客户端正在等待。

80.编写shell脚本获取本机的网络地址。比如:本机的ip地址是:192.168.100.2/255.255.255.0,那么它的网络地址是192.168.100.1/255.255.255.0

方法一:

#!/bin/bash
#This script print ip and network
file=”/etc/sysconfig/network-scripts/ifcfg-eth0″
if [ -f $file ] ;then
IP=grep “IPADDR” $file|awk -F”=” ‘{ print $2 }’
MASK=grep “NETMASK” $file|awk-F”=” ‘{ print $2 }’
echo “IP/IP/IP/MASK”
exit 1
fi

方法二:

#!/bin/bash
#This programm will printf ip/network

IP=ifconfig eth0 |grep ‘inet ‘ |sed ’s/^.*addr://g’|sed ’s/ Bcast.*$//g’
NETMASK=ifconfig eth0 |grep ‘inet ‘|sed ’s/^.*Mask://g’
echo “IP/IP/IP/NETMASK”
exit

81.在命令行下发一邮件,发件人:123@abc.com,收信人:abc@xyz.comMail-s

“hello” abc@xyz.com

82.linux下如何改IP,主机名,DNS

使用setup 命令可以修改IP 和DNS ,修改完后重启网络:service network restart
临时修改即时生效,重启后失效

hostname主机名: 修改主机名

ifconfigeth0 IP netmask 掩码 :修改IP

永久修改主机名: 修改:/etc/sysconfig/network 文件 HOSTNAME=主机名

永久修改IP地址:修改 /etc/sysconfig/network-scripts/ifcfg-eth0 文件

修改完后重启网络:service network restart

83.linux下如何添加路由

route add –host 192.168.168.110 dev eth0

route add –host 192.168.168.119 gw 192.168.168.1

//添加到网络的路由

route add –net IP netmask MASK deveth0

route add –net IP netmask MASK gw IP

//添加默认网关

route add default gw IP

//删除路由

route del –host 192.168.168.110 dev eth0

84.简述linux下编译内核的意义与步骤

编译内核的意义在于让硬件设备更稳定的发挥其应有的效能;

内核编译:

1.内核裁减

2.打补丁

3.添加新功能/模块

步骤:

1.下载新内核源代码

2.配置内核编译参数:make menuconfig

3.选择需要添加的模块

4.开始编译

#make (代表来makebzlmage 以及 make moudles) make -j2

5.安装编译好到模块和内核

#make modules_install (将编译好到模块复制到/lib/modules/3.0.0-rc4文件夹)

#makeinstall (安装编译好的内存映像文件)

6.修改GRUB启动菜单,增加使用新内核启动到项目

85.简述DDOS攻击的原理

黑客劫持大量傀儡主机,对目标服务器进行合理的资源请求,导致服务器资源耗尽而不能进行正常的服务。

86.简述Tcp三次握手的过程

第一次握手,建立连接,客户端发送SYN包到服务器,并进入SYN_SEND状态,等待服务器确认;

第二次握手,服务器收到SYN,同时自己也发送一个SYN包和一个ACK包来确认客户端的SYN,并进入SYN_RECV;

第三次握手,客户端收到服务器发来的SYN+ACK后,回复服务器端一个ACK确认,发送完毕后,双方进入ESTABLISHED状态。

三次握手成功后,开始传输数据。

87.简述VPN,常见有哪几种?

VPN是指在公共的网络上建立专用网络的技术,但是两个节点间并没有物理上的专用的端到端链路,而是通过广域网或者运营商提供的网络平台之上的逻辑网络,用户数据在逻辑链路中传输,它可以有效的节省一般需要达到DDN专线所能达到的同样的目的,而且VPN采用身份验证和加密技术,充分保证了安全性。常见的VPN有:ipsec vpn、PPTPvpn、L2TP vpn、SSL vpn

88.解释下什么是GPL,GNU,自由软件?

GPL:(通用公共许可证):一种授权,任何人有权取得、修改、重新发布自由软件的权力。

GNU:(革奴计划):目标是创建一套完全自由、开放的的操作系统。

自由软件:是一种可以不受限制地自由使用、复制、研究、修改和分发的软件。主要许可证有GPL和BSD许可证两种。

89.如何选择Linux操作系统版本?

一般来讲,桌面用户首选Ubuntu;服务器首选RHEL或CentOS,两者中首选CentOS。

根据具体要求:

①安全性要求较高,则选择Debian或者FreeBSD。

②需要使用数据库高级服务和电子邮件网络应用的用户可以选择SUSE。

③想要新技术新功能功能可以选择Feddora,Feddora是RHEL和CentOS的一个测试版和预发布版本。

④根据现有状况,绝大多数互联网公司选择CentOS。现在比较常用的是6系列,现在市场占有大概一半左右。另外的原因是CentOS更侧重服务器领域,并且无版权约束。

3.初学者在Linux系统的开机启动项如何选择?

建议选择五个开机启动项:
①.crond: 该服务用于周期地执行系统及用户配置的计划任务。有要周期性执行的任务计划需要开启,此服务是生产场景必须要用的一个软件。

②.iptables: iptables包过滤防火墙,有外网IP时,考虑开启。

③.network: 启动系统时,若想激活/关闭启动时的各个网络接口,则应(必须)考虑开启。

④.sshd: 远程连接Linux服务器时需要用到这个服务程序,所以必须要开启,否则将无法远程连接到Linux服务器。

⑤.rsyslog: 是操作系统提供的一种机制,系统的守护程序通常会使用rsyslog将各种信息收集写入到系统日志文件中,CentOS6以前此服务的名字为syslog。

⑥.sysstat: 是一个软件包,包含监测系统性能及效率的一组工具,这些工具对于Linux系统性能数据很有帮助,比如CPU使用率、硬盘和网络吞吐数据等,这些数据的分析,有利于判断系统运行是否正常,所以它是提高系统运行效率、安全运行服务的助手。

90.请描述Linux系统优化的12个步骤。

⑴登录系统:不使用root登录,通过sudo授权管理,使用普通用户登录。

⑵禁止SSH远程:更改默认的远程连接SSH服务及禁止root远程连接。

⑶时间同步:定时自动更新服务器时间。

⑷配置yum更新源,从国内更新下载安装rpm包。

⑸关闭selinux及iptables(iptables工作场景如有wan ip,一般要打开,高并发除外)

⑹调整文件描述符数量,进程及文件的打开都会消耗文件描述符。

⑺定时自动清理/var/spool/clientmquene/目录垃圾文件,防止节点被占满(c6.4默认没有sendmail,因此可以不配。)

⑻精简开机启动服务(crond、sshd、network、rsyslog)

⑼Linux内核参数优化/etc/sysctl.conf,执行sysct -p生效。

更改字符集,支持中文,但是还是建议使用英文,防止乱码问题出现。

⑾锁定关键系统文件(chattr +i /etc/passwd /etc/shadow /etc/group /etc/gshadow /etc/inittab 处理以上内容后,把chatter改名,就更安全了。)

⑿清空/etc/issue,去除系统及内核版本登陆前的屏幕显示。

91.描述Linux运行级别0-6的各自含义

0:关机模式

1:单用户模式<==破解root密码

2:无网络支持的多用户模式

3:有网络支持的多用户模式(文本模式,工作中最常用的模式)

4:保留,未使用

5:有网络支持的X-windows支持多用户模式(桌面)

6: 重新引导系统,即重启

92.描述Linux系统从开机到登陆界面的启动过程

⑴开机BIOS自检,加载硬盘。

⑵读取MBR,MBR引导。

⑶grub引导菜单(Boot Loader)。

⑷加载内核kernel。

⑸启动init进程,依据inittab文件设定运行级别

⑹init进程,执行rc.sysinit文件。

⑺启动内核模块,执行不同级别的脚本程序。

⑻执行/etc/rc.d/rc.local

⑼启动mingetty,进入系统登陆界面。

93.描述Linux下软链接和硬链接的区别

在Linux系统中,链接分为两种,一种是硬链接(Hard link),另一种称为符号链接或软链接(Symbolic Link)。

①默认不带参数的情况下,ln创建的是硬链接,带-s参数的ln命令创建的是软链接。

②硬链接文件与源文件的inode节点号相同,而软链接文件的inode节点号,与源文件不同,

③ln命令不能对目录创建硬链接,但可以创建软链接。对目录的软链接会经常使用到。

④删除软链接文件,对源文件和硬链接文件无任何影响。

⑤删除文件的硬链接文件,对源文件及软链接文件无任何影响。

⑥删除链接文件的源文件,对硬链接文件无影响,会导致其软链接失效(红底白字闪烁状)。

⑦同时删除源文件及其硬链接文件,整个文件才会被真正的删除。

⑧很多硬件设备的快照功能,使用的就是类似硬链接的原理。

⑨软链接可以跨文件系统,硬链接不可以跨文件系统。

94.生产场景如何对linux系统进行合理规划分区?

分区的根本原则是简单、易用、方便批量管理。根据服务器角色定位建议如下:

①单机服务器:如8G内存,300G硬盘

分区: /boot 100-200M,swap 16G,内存大小8G*2,/ 80G,/var 20G(也可不分),/data 180G(存放web及db数据)

优点:数据盘和系统盘分开,有利于出问题时维护。

RAID方案:视数据及性能要求,一般可采用raid5折中。

②负载均衡器(如LVS等)

分区:/boot 100-200M,swap 内存的1-2倍,/ ,

优点:简单方便,只做转发数据量很少。

RAID方案:数据量小,重要性高,可采用RAID1

③负载均衡下的RS server

分区: /boot 100-200M,swap 内存的1-2倍,/

优点:简单方便,因为有多机,对数据要求低。

RAID方案:数据量大,重要性不高,有性能要求,数据要求低,可采用RAID0

④数据库服务器mysql及oracle如16/32G内存

分区:/boot 100-200M,swap 16G,内存的1倍,/ 100G,/data 剩余(存放db数据)

优点:数据盘和系统盘分开,有利于出问题时维护,及保持数据完整。

RAID方案:视数据及性能要求主库可采取raid10/raid5,从库可采用raid0提高性能(读写分离的情况下。)

⑤存储服务器

分区:/boot 100-200M,swap 内存的1-2倍,/ 100G,/data(存放数据)

优点:此服务器不要分区太多。只做备份,性能要求低。容量要大。

RAID方案:可采取sata盘,raid5

⑥共享存储服务器(如NFS)

分区:/boot 100-200M,swap 内存的1-2倍,/ 100G,/data(存放数据)

优点:此服务器不要分区太多。NFS共享比存储多的要求就是性能要求。

RAID方案:视性能及访问要求可以raid5,raid10,甚至raid0(要有高可用或双写方案)

⑦监控服务器cacti,nagios

分区:/boot 100-200M,swap 内存的1-2倍,/

优点:重要性一般,数据要求也一般。

RAID方案:单盘或双盘raid1即可。三盘就RAID5,看容量要求加盘即可。

95.描述Linux下文件删除的原理

Linux系统是通过link的数量来控制文件删除的,只有当一个文件不存在任何link的时候,这个文件才会被删除。一般来说每个文件两个link计数器来控制i_count和i_nlink。当一个文件被一个程序占用的时候i_count就加1。当文件的硬链接多一个的时候i_nlink也加1。删除一个文件,就是让这个文件,没有进程占用,同时i_link数量为0。

96.请简单描述VI编辑器的使用

①vi编辑器是linux系统下最最基本和最常用的标准文本编辑器。

②vi编辑器有三种工作模式:普通模式、编辑模式、命令模式。

③普通模式下的键盘输入任何字符都是当作命令来执行的,也可以输入命令进行光标的移动,字符、单词、行的复制、粘帖以及删除等操作。

④编辑模式主要用于文本的输入。在该模式下,用户输入的任何字符都被作为文件的内容保存起来。

⑤命令模式下,用户可以对文件进行一些如字符串查找、替换、显示行号等操作还是必须要进入命令模式的。

⑥在普通模式下输入冒号即可进入命令模式,此时vi窗口的状态行会显示出冒号,等待用户输入命令。“i”插入模式,即可以进行编辑。用户输入完成后,按【Esc】之后编辑器又返回到普通模式下,在命令模式下,保存退出,可以使用的命令为wq和x。前面加!表示强制退出,强制保存等。

97.请简单说出用户管理的相关命令及用途

#组管理命令

groupadd #添加组

groupdel #删除用户组

groupmod #修改用户组

groups #显示当前用户所属的用户组

grpck #检查用户组及密码文件的完整性(etc/group以及/etc/gshadow文件)

grpconv #通过/etc/group和/etc/gshadow 的文件内容来同步或创建/etc/gshadow ,如果/etc/gshadow 不存在则创建;

grpunconv #通过/etc/group 和/etc/gshadow 文件内容来同步或创建/etc/group ,然后删除gshadow文件 。

#用户管理命令

useradd #添加用户

adduser #添加用户

passwd #为用户设置密码

usermod #修改用户命令,可以通过usermod 来修改登录名、用户的家目录等等

pwcov #同步用户从/etc/passwd 到/etc/shadow

pwck #pwck是校验用户配置文件/etc/passwd 和/etc/shadow文件内容是否合法或完整

pwunconv #执行pwunconv指令可以关闭用户投影密码,它会把密码从shadow文件内,重回存到passwd文件里。

finger #查看用户信息工具(危险命令,一般不用)

id #查看用户的UID、GID及所归属的用户组

chfn #更改用户信息工具

su #用户切换工具

98.请简述基础正则表达式grep高级参数的使用

常用参数:

-v排除匹配内容,

-e支持扩展的正则表达式,

-i忽略大小写,

-o输出匹配的内容(只是一块,不是行),

–color=auto 匹配内容显示颜色,

-n 在行首显示行号。

特殊字符注意事项:

^(尖括号)word :表示搜索以word开头的内容。

word$ 表示搜索以word结尾的内容。

^$ 表示的是空行,不是空格。

. 代表且只能代表任意一个字符。非正则表达式其他功能(当前目录,加载文件)

\ 转义字符,让有着特殊身份意义的字符,脱掉马甲,还原原型。例如.只表示原始小数点意义。

  • 表示重复0个或多个前面的一个字符。不代表所有。

.* 表示匹配所有的字符。^.*表示以任意字符开头。

[任意字符如abc] 匹配字符集内任意一个字符[a-z]。 [^abc] ^在中括号里面是非的意思,不包含之意。意思就是不包含a或b或c的行。
{n,m} 表示重复n到m次前一个字符。{n}至少n次,多了不限。{n}N次,{,m}至多m次,少了不限。

注:使用grep或sed要对{}转义。即\{\}.egrep就不需要转义了。

99.请简述基础正则表达式sed高级参数的使用

解答:

-n取消默认输出

-p 打印

-d删除

-e允许多项编辑

sed取行,要特别注意sed -n ‘s###g’ filename 的使用,sed的的功能可以记住正则表达式的一部分,其中,\1为第一个记住的模式即第一个小括号中的匹配内容,\2第二记住的模式,即第二个小括号中的匹配内容,sed最多可以记住9个。

实际字符的选取最好要唯一,正则表达式是贪婪的,总是尽可能的匹配更远的符合匹配的内容。另外注意字符串中的空格。

100.请给出查看当前哪些用户在线的Linux命令

w #显示目前系统登录用户

who #显示目前已登录用户信息

last #列出目前与过去登入系统的用户相关信息

lastlog #检查某特定用户上次登录时间

whoami #打印与当前生效的用户ID关联的用户名

finger #用户信息查找程序

id #显示指定用户或当前用户的用户与组信息

101.请你描述下crontab的作用和语法,以及书写定时任务注意的要点。

设置crontab后我们可以使得Linux主动执行的在固定的间隔时间,执行指定的系统指令或 shell script脚本。生产环境可以用来日志分析或生产备份等。

语法格式:

crontab [ -u user ] file ===》-u的意思就是指定用户

crontab [ -u user ] { -l 显示文件内容| -r全部删除crontab文件 | -e 编辑crontab文件| -i删除crontab文件前确认提示}

举例:

*/5 10,12 * 3-8 * * /usr/sbin/ntpdate 10.0.0.155 >/dev/null 2>&1

前五段是时间间隔的设定,单位分别是分钟、小时、日、月、周(尽量避免使用日月和周同时出现,以免造成系统误判)。

第一个时间段 分钟 范围0-59

第二个时间段 小时 范围0-23

第三个世间段 日 范围1-31

第四个时间段 月 范围1-12

第五个时间段 周 范围0-7

*星号代表任何时间都接受命令

,逗号,表示隔开。代表分隔的时间都适用此命令。

  • 减号,两个时间段之间,代表在此时间段内执行定时任务。

/n斜线和n(数字)表示每隔n段时间执行一次。

注意要点分为:书写基本要领与书写注意事项

7个基本要领:

第一、为定时任务规则加必要的注释

第二、定时任务命令或程序最好写到脚本里执行

第三、定时任务执行的脚本要规范路径,如:/server/scripts

第四、执行shell脚本任务时前加/bin/sh

执行定时任务时,如果是执行脚本,尽量在脚本前面带上/bin/sh命名

第五、定时任务结尾加 >/dev/null 2>&1

第六、/dev/null为特殊的字符设备文件,表示黑洞设备或空设备。

第七、有关重定向的说明

或1> 输出重定向:把前面输出的东西输入到后边的文件中,会删除文件原有内容。

或1>> 追加重定向:把前面输出的东西追加到后边的文件中,不会删除文件原有内容。

<或<0 输入重定向:输入重定向用于改变命令的输入,指定输入内容,后跟文件名。

<<或<<0 输入重定向:后跟字符串,用来表示“输入结束”,也可用ctrl+d来结束输入。

2> 错误重定向:把错误信息输入到后边的文件中,会删除文件原有内容。

2>> 错误追加重定向:把错误信息追加到后边的文件中,不会删除文件原有内容。

标准输入(stdin):代码为0,使用<或<<。

标准输出(stdout):代码为1,使用>或>>。正常的输出。

标准错误输出(sederr):代码为2,使用2>或2>>。

特殊:

2>&1就是把标准错误重定向到标准输出(>&)。

/dev/null 2>&1 等价于 1>/dev/null 2>/dev/null

102.请列出Linux中你认为重要的文件夹及包含内容

① /目录下的文件夹里面分别是以下内容:

/usr 包含所有的命令和程序库、文档和其他文件及当前linux发行版的主要应用程序

/var 包含正在操作的文件,还有记录文件、加密文件、临时文件等

/home 除了root用户外的所有用户的配置文件,个性化文件和主目录,即家目录

/proc 虚拟目录,该目录实际上指向内存而不是硬盘

/bin 系统执行文件(二进制文件)普通用户可以使用

/sbin 系统执行文件(二进制文件)不能被普通用户使用,通常由root用户使用

/etc 操作系统的配置文件

/root root用户的家目录

/dev 系统设备文件,linux所有设备都是以文件的形式被处理,该目录不包含驱动程序

/lib 程序和核心模块共享库(仅限于/下的程序)

/boot 系统引导、启动文件,通常grub也在这里

/opt 可选应用程序目录

/tmp 临时文件,系统会自动清理

/lost+found 恢复文件(类似回收站)

/media 所有的磁盘(有时有光盘)将以文件夹的形式挂载,光盘镜像也可以挂载

/cd-rom 挂载光盘的地方

② /usr目录下的文件比较重要,其作用下面分类列出:

/usr/X11 X-windows桌面环境

/usr/doc linux系统的文档资料

/usr/share 独立于当前计算机的数据结构,如字典中的词

/usr/bin 类似/bin但是不参与启动,大部分命令都在这里

/usr/local 本地管理员安装的应用程序

/usr/local/bin 用户安装的应用程序(部分)

③ /proc目录的内容

/proc/cpuinfo 处理器的信息

/proc/devices 当前运行内核的所有设备清单

/proc/dma 当前正在使用中的DMA通道

/proc/filesystem 当前运行内核所配置的文件系统

/proc/interrupts 当前使用的中断和曾经有多少个中断

/proc/ioports 正在使用的I/O端口

103.给出正确的关机和重启服务器的命令

⑴shutdown

[-t] 指定在多长时间之后关闭系统 [-r] 重启系统 [-k] 并不真正关机,只是给每个登录用户发送警告信号 [-h] 关闭系统(halt)
⑵halt

halt是最简单的关机命令,其实际上是调用shutdown -h命令。halt执行时,杀死应用进程,文件系统写操作完成后就会停止内核。

halt命令的部分参数如下:

[-f] 没有调用shutdown而强制关机或重启 [-i] 关机或重新启动之前,关掉所有的网络接口 [-p] 关机时调用poweroff,此选项为缺省选项
⑶reboot

reboot工作过程与halt类似,作用是重新启动,而halt是关机。其参数与halt类似。

⑷init

init是所有进程的祖先,其进程号始终为1。init用于切换系统的运行级别,切换的工作是立即完成的。init 0命令用于立即将系统运行级别切换为0,即关机;init 6命令用于将系统运行级别切换为6,即重新启动。

104.请简述修改/etc/sudoers配置文件的注意事项

①别名的名称可以包含大写字母。数字、下划线。如果是字母必须要大写,(别名为一群拥有相同属性的集合)。

②一个别名下面可以有多个成员,成员间通过半角(,)逗号隔开。成员必须有效实际存在。

别名成员受别名类型 Host_Alias、User_Alias、Runas_Alias、Cmnd_Alias制约,定义什么类型的别名,就要有相什么类型的成员匹配。

③用户组前面必须加%号。命令别名下的成员必须是文件或目录的绝对路径。

④指定切换用户要用()括号括起来,如果省略,则默认root用户,如果括号里是ALL,则代表能切换到所有用户。

⑤命令路径要使用全路径。

⑥别名规则每行算一个规则,一行容不下时用\续行。另外超过一行,用反斜线换行。

⑦一般不建议先给all权限,后面排除。用什么权限,就给什么权限。(注意权限,语法)。

如果不需要密码直接运行命令的应该加NOPASSWD参数。

⑧禁止某类程序或命令执行,要在命令动作前面加上“!”号,并放在允许执行命令之后。

105.请描述如何实现linux系统集权分治的权限分级精细管理?

① 收集以及制定用户和权限的匹配信息,原则是给于最小权限,但是又能完成所承担的工作职责。

② 各个用户组设置对应权限,用什么给什么,精细到每一条指令上根据分组情况。

③ 创建规划权限分组的用户.添加相关用户组。并修改etc/sudoers配置文件。

④ 增加sudo的权限开放,确定相关用户加入如soduers权限列表,并详细设置所开放权限内容,并选择是否需要密码的相关执行权限开放。(注意ALL权限,以及密码修改权限设置)。

⑤ 不建议先给all权限,后面排除。建议使用白名单。

⑥实战调试测试相关权限是否正确配置完成。

⑦编写操作说明,及相关注意事项。

⑧调试完毕,邮件周知所有相关人员系统权限设置生效,并附带操作说明及相关注意事项。

106.请写出下面Linux SecureCRT命令行快捷键命令的功能?

Ctrl + a 光标到开头

Ctrl + c 中断当前程序

Ctrl + d 退出当前窗口或当前用户

Ctrl + e 光标到结尾

Ctrl + l 清屏 相当与clear

Ctrl + u 剪切、删除(光标以前的)内容

Ctrl + k 剪切、删除(光标以后的)内容

Ctrl + r 查找(最近用过的命令)

tab 所有路径以及补全命令

Ctrl+shift+c 命令行复制内容

Ctrl+shift+v 命令行粘贴内容

Ctrl + q 取消屏幕锁定

Ctrl + s 执行屏幕锁定

107.请描述服务器账户日志审计的5种解决方案。

⑴通过环境变量syslog对全部全部日志进行审计(信息量太大,不推荐)

⑵sudo配合syslog服务,进行sudo操作日志进行审计(信息较少,效果不错)

⑶在bash解释器嵌入一个监视器,让所有用户使用修改过的bash程序,作为解释程序。

⑷齐治的堡垒机(商业产品)。

108.如果一台办公室内主机无法上网(打不开网站),请给出你的排查步骤?

①首先确定物理链路是否联通正常。

②查看本机IP,路由,DNS的设置情况是否达标。

③telnet检查服务器的WEB有没有开启以及防火墙是否阻拦。

④ping一下网关,进行最基础的检查,通了,表示能够到达服务器。

⑤测试到网关或路由器的通常情况,先测网关,然后再测路由器一级一级的测试。

⑥测试ping公网ip的通常情况(记住几个外部IP),

⑦测试DNS的通畅。ping出对应IP。

⑧通过以上检查后,还在网管的路由器上进行检查。

109.描述Linux shell中单引号、双引号及不加引号的简单区别

单引号:所见即所得,即将单引号内的内容原样输出,或者描述为单引号里面看到的是什么就输出什么。

双引号:把双引号里面的内容给输出出来,如果内容中有命令、变量等,会先把,变来那个、命令解析出结果,然后输出最终内容。

双引号内的命令或者变量写法’命令或变量’或$(命令或变量)

无引号:把内容输出出来,可能不会键含有空格的字符串,视为一个整体输出,如果内容中有命令、变量等,会先把变量、命令解析出来,然后输出最终内容,如果字符串中带有空格等特殊字符,则不能完整输出,需要改加双引号。一般连续的字符串,数字,路径等可以用,不过最好用双引号,替代之。

110.请简述Linux启动过程中几个重要配置文件的执行过程

Linux 登录后,配置执行顺序为(Debian Serials Capable):

/etc/environment -> /etc/profile -> (~/.bash_profile | ~/.bash_login | ~/.profile) -> ~/.bashrc -> /etc/bashrc -> ~/.bash_logout

关于各个文件的作用说明:

(1)/etc/environment:此配置文件设置基本的PATH变量,及系统当前语言变量,虽然比较短,但却在系统启动中占据举足轻重的作用,比如如下是我的系统中的内容:

(2)/etc/profile: 此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行. 并从/etc/profile.d目录的配置文件中搜集shell的设置。

(3)/etc/bash.bashrc: 为每一个运行bash shell的用户执行此文件.当bash shell被打开时,该文件被读取。

(4)~/.bash_profile: 每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时,该文件仅仅执行一次!默认情况下,他设置一些环境变量,执行用户的.bashrc文件。

(5)~/.bashrc: 该文件包含专用于你的bash shell的bash信息,当登录时以及每次打开新的shell时,该该文件被读取。

(6)~/.bash_logout: 当每次退出系统(退出bash shell)时,执行该文件. 另外,/etc/profile中设定的变量(全局)的可以作用于任何用户,而~/.bashrc等中设定的变量(局部)只能继承 /etc/profile中的变量,他们是"父子"关系。

(7)~/.bash_profile 是交互式、login 方式进入 bash 运行的~/.bashrc 是交互式 non-login 方式进入 bash 运行的通常二者设置大致相同,所以通常前者会调用后者。

111.请描述下列路径的内容是做什么的?

/var/log/messages 系统日志文件

/var/log/secure 系统安全文件(显示登录信息的文件)

/var/spool/clientmqueue 例行性任务回执邮件存放文件

/proc/interrupts 当前系统中断报告文件

/etc/fstab 开机自动挂载磁盘的配置文件

/etc/profile 环境变量存放的文件

112.请给出Linux中eth0的IP地址和广播地址的指令,需使用cut、awk、grep、sed指令。

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数软件测试工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年软件测试全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
img
img
img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上软件测试开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新

如果你觉得这些内容对你有帮助,可以添加V获取:vip1024b (备注软件测试)
img

一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

统启动中占据举足轻重的作用,比如如下是我的系统中的内容:

(2)/etc/profile: 此文件为系统的每个用户设置环境信息,当用户第一次登录时,该文件被执行. 并从/etc/profile.d目录的配置文件中搜集shell的设置。

(3)/etc/bash.bashrc: 为每一个运行bash shell的用户执行此文件.当bash shell被打开时,该文件被读取。

(4)~/.bash_profile: 每个用户都可使用该文件输入专用于自己使用的shell信息,当用户登录时,该文件仅仅执行一次!默认情况下,他设置一些环境变量,执行用户的.bashrc文件。

(5)~/.bashrc: 该文件包含专用于你的bash shell的bash信息,当登录时以及每次打开新的shell时,该该文件被读取。

(6)~/.bash_logout: 当每次退出系统(退出bash shell)时,执行该文件. 另外,/etc/profile中设定的变量(全局)的可以作用于任何用户,而~/.bashrc等中设定的变量(局部)只能继承 /etc/profile中的变量,他们是"父子"关系。

(7)~/.bash_profile 是交互式、login 方式进入 bash 运行的~/.bashrc 是交互式 non-login 方式进入 bash 运行的通常二者设置大致相同,所以通常前者会调用后者。

111.请描述下列路径的内容是做什么的?

/var/log/messages 系统日志文件

/var/log/secure 系统安全文件(显示登录信息的文件)

/var/spool/clientmqueue 例行性任务回执邮件存放文件

/proc/interrupts 当前系统中断报告文件

/etc/fstab 开机自动挂载磁盘的配置文件

/etc/profile 环境变量存放的文件

112.请给出Linux中eth0的IP地址和广播地址的指令,需使用cut、awk、grep、sed指令。

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数软件测试工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年软件测试全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
[外链图片转存中…(img-EajXXrTy-1712976082122)]
[外链图片转存中…(img-SluUTt1w-1712976082123)]
[外链图片转存中…(img-o3hOghjF-1712976082124)]
[外链图片转存中…(img-Qh2f3bd1-1712976082124)]
[外链图片转存中…(img-5BmRX9uj-1712976082125)]

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上软件测试开发知识点,真正体系化!

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新

如果你觉得这些内容对你有帮助,可以添加V获取:vip1024b (备注软件测试)
[外链图片转存中…(img-kYDv0PTz-1712976082125)]

一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐