常见的面试题 (二)

旧巷老猫 提交于 2019-12-02 09:20:14

7. YUM 简介

什么是YUM,其作用是什么,主要支持哪几种方式提供软件源?

1. 是一种基于“C/S”结构的RPM软件更新机制,所有的软件包由集中的软件仓库提供,能够自动分析并解决软件包之间的依赖关系。

支持的软件源主要包括:

本地文件夹:file://.. ..

FTP服务器:ftp://.. ..

HTTP服务器:http://

2 客户端配置文件。

在建立 .repo 仓库配置文件时,常见的配置条目如下所示,请补充各自的作用。

[Server]:( )

name:( )

baseurl:( )

enabled:( )

gpgcheck:( )

gpgkey:( )

参考答案

自定义源的名称,具有唯一性

本软件源的描述字串

指定YUM服务端的URL地址

是否启用此频道

是否验证待安装的RPM包

用于RPM验证的密钥文件

3 客户端配置文件路径与命名。

为RHEL6服务器指定要使用的YUM源时,建立的配置文件一般应放在( )目录下,其扩展名应该是( )。

/etc/yum.repos.d、.repo

8. 编译源码包过程介绍

采用源码包编译的方式安装软件包时,有哪些基本过程、各自的作用是什么?

tar解包:解压、释放安装包内的文件

./configure配置:针对当前系统环境指定安装目录、选择功能等设置。

make编译:将源代码编译成二进制的可执行程序、库文件等数据。

make install:将编译好的程序文件、配置文档等复制到对应的安装目录。

9.  Linux目录结构介绍

Linux系统的根目录下主要包括哪些文件夹,各自的作用是什么?

/boot:存放Linux内核、引导配置等启动文件。

/bin:存放最基本的用户命令,普通用户有权限执行。

/dev:存放硬盘、键盘、鼠标、光驱等各种设备文件。

/etc:存放各种配置文件、配置目录。

/home:存放普通用户的默认工作文件夹(即宿主目录、家目录)。

/root:Linux系统管理员(超级用户)root的宿主目录。

/sbin:存放最基本的管理命令,一般管理员用户才有权限执行。

/usr:存放额外安装的应用程序、源码编译文件、文档等各种用户资料。

/var:存放日志文件、用户邮箱目录、进程运行数据等变化的文档。

/tmp:存放系统运行过程中使用的一些临时文件。

10 . find命令的扩展

在Linux中find常见的选项都有哪些?都有什么作用?

-type:按文件类型查找

-name:按文件名称查找

-size:按文件大小查找

-mtime:按内容修改的时间

-iname:根据名称查找,忽略大小写

-uid:根据uid查找,属于这个用户的文件

-gid :根据gid查找,属于这个组的文件

-user :根据用户名查找,查找属于这个用户的

-group :根据组名查找,查找属于这个组的

-nouser :查找这个文件不属于任何用户的

-nogroup :查找这个文件不属于任何组的

-maxdepth :限制目录查找的深度

-inum :根据文件i节点编号查找

11. 简述autofs服务

作用、主要配置文件、配置要点?

1)autofs的作用:

autofs即触发挂载,它是一种看守程序。如果检测到用户正试图访问一个尚未挂载的文件系统,它就会自动检测该文件系统,如果存在,那么autofs会自动将其挂载。另一方面,如果它检测到某个已挂载的文件系统在一段时间内没有被使用,那么autofs会自动将其卸载。因此一旦运行了autofs后,用户就不再需要手动完成文件系统的挂载和卸载。

2)autofs的配置文件:/etc/auto.master与/etc/auto.misc

12. 简述LVM的含义及特点

LVM的含义及优势?/boot是否可建立在LVM卷上,为什么?

1)LVM:用来整合磁盘空间和文件系统的一种逻辑机制,通过将多个物理分区/磁盘从逻辑上组合成一个更大的整体,从这个整体中划分出不同的逻辑分区,用来创建文件系统。

2)LVM的主要优势如下所述:

逻辑分区的大小可以根据需要扩大和缩减,因此生产系统上的文件系统也可以在线改变大小(在卷组容量范围内),不会导致系统中断

物理存储空间(硬盘、分区)由LVM统一组织为卷组,可以方便的加入或移走分区,以扩大或减小卷组的容量,充分利用硬盘空间

文件系统建立在LVM逻辑卷之上,可以跨越分区、跨越磁盘,方便使用

3)/boot不能建立在LVM之上,因为/boot/目录下存放着引导程序,而Linux启动不支持从LVM卷上读取引导程序。

13.  简述RAID的含义及特点

RAID的含义及优势?RAID0、RAID1、RAID5分别指什么、各自的特点?

1)RAID:廉价冗余磁盘阵列,指通过硬件/软件技术将多个较小/低速的磁盘整合成一个大磁盘使用的一种存储技术,其不仅可存储数据,还可以实现一定程度的冗余保障,具有“速度快、安全性高”的优势。

2)RAID0、RAID1、RAID5的含义及特点如下:

RAID0:条带模式,由两个或两个以上的磁盘组成,同一份文档分散在不同的磁盘中,并行写入,提高写效率。

RAID1:镜像模式,由至少两个磁盘组成,同一份文件被分别写入到不同的磁盘中,每份磁盘数据一样,实现容错,提高读效率。

RAID5:分布式奇偶校验的独立磁盘模式,结合RAID0和RAID1的好处,同时避免它们的缺点。由至少3块以上大小相同的磁盘组成,实现冗余。

14. RHEL6.x 系统包括哪几种运行级别

各自的特点是什么?

默认包括7中运行级别:

0:关机

1:单用户模式

2:字符界面的多用户模式(不支持网络)

3:字符界面的完整多用户模式

4:未分配使用

5:图形界面的多用户模式

6:重启

15. 请描述RHEL6.x系统的引导过程

加载BIOS,检查硬件信息

读取并执行第一个开机设备内MBR

运行grub引导加载 kernel

内核启动/sbin/init程序

init 系统初始化

确定默认的运行级别

触发runlevel事件,运行/etc/rc.d/rc

最后执行/etc/rc.d/rc.local

加载终端或X-Window接口

16.  SSH协议介绍

OpenSSH服务器使用的协议  默认端口  主配置文件分别是什么?     SSH与Telnet应用的区别在哪里?

OpenSSH使用TCP协议,默认端口是22,主配置文件/etc/ssh/sshd_config。

SSH的英文全称是Secure SHell,即安全外壳。SSH会把传输过程中的数据加密,且支持压缩以提高传输速度;而Telnet在网络上以明文传送口令和数据,安全级别低,容易受到攻击。

17.  Linux常见的系统日志文件都有哪些,各自的用途?

/var/log/messages 内核及公共消息日志

/var/log/cron 计划任务日志

/var/log/dmesg 系统引导日志

/var/log/maillog 邮件系统日志

/var/log/secure 记录与访问限制相关日志

18 . 常见的Linux开机设置文件

/etc/fstab与/etc/initab、/etc/rc.local三个配置文件的作用?

/etc/fstab与/etc/initab、/etc/rc.local三个配置文件的作用?

/etc/fstab:实现开机自动挂载设备的配置文件

/etc/initab:定义开机进入默认级别的配置文件

/etc/rc.local:定义开机自定义任务的配置文件

19.  FTP协议简介

FTP服务器在传输层使用的协议是tcp

默认的端口为21

FTP主目录为/var/ftp

20.  suid ,  sgid  ,  sticky  bit 的作用?

suid ,      以属主的身份运行程序

sgid,      在目录中创建的文件继承所在目录的属主

stick  bit   用户只能修改,删除的文件

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

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

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

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

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

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

根据具体要求:

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

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

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

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

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

建议选择五个开机启动项:

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

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

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

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

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

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

24. 请描述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,去除系统及内核版本登陆前的屏幕显示。

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

0:关机模式

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

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

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

4:保留,未使用

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

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

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

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

⑵读取MBR,MBR引导。

⑶grub引导菜单(Boot Loader)。

⑷加载内核kernel。

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

28.  生产场景如何对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,看容量要求加盘即可。

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

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

30.  请描述VI编辑器的使用

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

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

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

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

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

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

31. 请简述基础正则表达式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就不需要转义了。

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

解答:

-n取消默认输出

-p 打印 

-d删除

-e允许多项编辑

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

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

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

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

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

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

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

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

finger   #用户信息查找程序

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

33. 请你描述下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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

36.  请写出下面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 执行屏幕锁定

37. 请描述服务器账户日志审计的5中解决方案

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

40. 请描述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 运行的通常二者设置大致相同,所以通常前者会调用后者。

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

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

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

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

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

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

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

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

第一种方法:使用grep和cut取值

第二种方法:使用grep和awk(默认分隔符为空格)取值

第三种方法:使用grep和awk(多分隔符)

第四种方法:使用sed和awk

第五种方法:使用grep和awk(多分隔符与加号+)

第六种方法:awk (分隔符及取行)

第七种方法:grep 网卡文件

第八种方法:head取行 awk分割

43. 请输出你知道的20个Linux的命令及作用

cp 复制 -a(drp),-r拷贝目录 -p保持属性

mv 移动文件或目录

mkdir 创建目录  -p递归创建目录 mkdir /a/b/c

touch 创建文件,

cd    切换目录(~当前用户家目录,-上一次的目录)

cat   查看文件内容  -n显示行号

ls    查看目录下文件,-l长格式,-d查看目录**********

rm    删除文件或目录 -r目录 -f强制删除(慎用,mv,find)

find  查找文件或目录 -type 类型(f,d,l,c,b),-name名字 -exec执行动作*****

alias 查看及设置别名

unalias 取消别名

seq 打印序列 -s指定分割符 -w数字前面加0补齐位数

head 查看文件前N行,默认10行,-n指定行数

tail 查看文件后N行,默认10行,-n指定行数,-f实时跟踪文件结尾的变化

sed linux三剑客老二,文件增删改查,*****

pwd打印当前工作目录

rmdir 删除空目录

echo 显示输出

xargs (配合find,ls)等查找到的内容处理,-n分组

tree -L层数  -d目录

rpm  -q query查询 -a all

uname -r内核 -m32位还是64位 -a所有信息, -n主机名(hostname)

hostname 主机名

whoami 查看当前用户

users

w

useradd 添加用户

passwd  改密码,--stdin 非交互设置密码

su     切换用户角色,-切换环境变量

 

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!