Linux题目(二)

有重复内容,但肯定是重点

Linux面试((二)

一、Linux操作系统知识

1.常见的Linux发行版本都有什么?你最擅长哪一个?它的官网网站是什么?说明你擅长哪一块?

答:RHEL、CentOS、乌班图、红旗、debian等。我是从centos6.6打基础的,www.centos.org。(7月4号我去面试,面试官问我:“你对Linux内核哪部分最熟悉?”,我一时懵逼答的进程管理。我特么哪块都不擅长啊!下次再被问到说iptables)

##类Unix有:FreeBSD 、HP-UX、AIX、solaris

2.Linux开机启动流程详细步骤是什么?系统安装完,忘记密码如何破解?

答:BIOS加电自检,决定从硬盘、光驱、还是从网络中启动——读取MBR,加载boot-loader——出现grub菜单、加载内核——启动初始进程init,读取/etc/inittab文件决定从哪个运行级别驱动——侦测硬件,加载驱动程序——硬件完成后,开始执行/etc/rc.sysinit,准备系统初始化环境,如时区、网络等——执行该运行级别下的自启服务——运行/etc/rc.local自启脚本——运行mingetty程序,出现用户登录界面,验证成功便能使用操作系统啦

3.企业中Linux服务器系统分区标准是什么?(硬盘为300G,内存16G)

答:boot:200MB     swap:8G   根分区:60G(20%左右)  家分区:剩下的全部空间(/home 主要用于存放个人数据,要是服务器用户很多,这个分区得要大)

##理论上:在小于2GB物理内存的系统中,交换分区大小应该设置为内存大小的两倍,如果内存大小多于2GB,交换分区大小应该是物理内存大小加上2GB

##生产情况下,物理内存 交换分区(SWAP)

<= 4G 至少4G

4~16G 至少8G

16G~64G 至少16G

64G~256G 至少32G

4.某一天突然发现Linux系统文件只读,该怎么办呢?完整操作步骤。

答:mount -t ext4 -o romount,rw /    ###重新挂载根分区

##如果上面不成功的话,按F2设置光盘启动进入救援模式(linux rescue)修复,执行"fsck.ext4 -y /dev/sda2" (假如只读的分区类型为ext4,分区为/dev/sda2)

5.安装一台系统使用DVD光盘安装,如何安装50台Linux系统如何安装呢?思考一下。

答:kickstart无人值守安装,需要配置apache、tftp、PXE、DHCP等服务

6.用虚拟机安装了一台Linux系统,突然想克隆一台服务器,克隆后发现无法上网,如何解决?

答:首先点击VMWARE的虚拟网络编辑器,移除所有VMNET,重新添加VMNET0,设置为桥接模式,再把虚拟机操作系统的网卡设置桥接即可。(亲身感受,可能因为物理主机没有长时间关机有关,重启一下试试)

##克隆后的地址冲突也是一个原因

7.Linux网卡配置文件路径是什么?要使服务器上外网,必须满足的条件有哪些?需要配置什么?

答:在Centos 7以下是/etc/sysconfig/network-scripts/ifcfg-eth0,IP地址、子网掩码、网关、DNS服务器或者hosts文件记录

8.一般可以使用什么软件远程linux服务器?通过什么上传文件和下载文件?

答:软件:putty、secure-CRT、xshell、VNC(图形化)。  windows和Linux互传文件可以用winscp,Linux与Linux互传文件使用scp命令,也可以搭建FTP服务器

9./mnt目录主要用于什么?/root目录跟root用户有什么关系?/根目录与/boot目录有什么联系?

答:/mnt主要用来挂载外部设备,/root根目录是root用户的家目录,/boot目录是/根目录的子目录

10.某一天误操作,执行了rm??-rf??* ,会有哪些情况发生?请举例。

答:文件被彻底干掉,很难恢复。严重点系统瘫痪,数据全部丢失

二、Linux命令及文件操作

1.在/tmp/目录下创建test.txt文件,内容为: Hello,World! ,用一个命令写出来。

答:cd /tmp | echo "Hello,World" > test.txt

2.给test.txt文件除所有者之外增加执行权限,最终以数字写出文件的权限。

答:chmod 655 test.txt  ##普通文件默认权限为655

3.用vi命令编辑test.txt,如何跳转到末行,首行,行首、行末,如何在光标行下一行插入,如何复制5行,删除10行,查找jingfeng的字符、把jingfeng替换为jfedu.net

答:末行:G 首行:gg 行首:^ 行尾:$ 光标下插入一行: o 复制5行:5yy(包括当前行)

删除10行:10dd(包括当前行) 替换::%s/jingfeng/jfedu.net/g

4.查找linux系统下以txt结尾,30天没有修改的文件大小大于20K同时具有执行权限的文件并备份到/data/backup/目录下。

答:find / -name *txt -mtime +30 -type f  -size +20k -perm a=x -exec cp {} /data/backup/ \;

5.当前test.txt所属的用户为root,组为abc,请将test.txt使拥有者为abc,组为root,写出命令。

答:chown abc.root test.txt  ##或者chown abc test.txt ,chgrp root test.txt

6.如何修改Linux启动级别为字符模式并永久生效,如何临时、永久关闭selinux及防火墙,请分别写出操作方法。

答:vi /etc/inittab ;id:3:initdefault:    临时关闭selinux:setenforce 0 (permissive),永久:vi /etc/sysconfig/selinux,selinux=disabled

临时关闭防火墙:service iptables stop。永久关闭防火墙:chkconfig iptables off ##不让它开机自启

7.每次开机在/tmp目录下创建一个当天的日期文件夹(提示:当前日期表示的方法为:`date +%Y%m%d`)

答:vi /etc/rc.local ,mkdir -p /tmp/`date +%Y%m%d`

8.如何查看文件内容,命令有哪些?查看文件第1行到3行,查看文件最后一行。

答:cat 、more 、less,sed ‘1,3p‘ test.txt 或者head -3 test.txt ,最后一行:tail -1 test.txt

9.查看linux服务器IP的命令,同时只显示包含ip所在的行打印出来。

答:ifconfig ,ifconfig |grep "inet addr:"

10.将普通用户test加入root组的命令是?

答:usermod -G root test

三、Linux磁盘及软件管理操作

1.如何添加一块新的50G硬盘到linux服务器系统作为单独的分区,并正在使用?需要哪些操作步骤?

答:fdisk /dev/sdb ,p键进行分区,n划分区号,分区大小可以默认,w写入分区表,partprobe可以使kernel重新读取分区信息,从而避免重启系统

格式化mkfs.ext4 /dev/sdb ,最后vi /etc/fstab, 开机自动挂载

2.有个金士顿U盘,需要往服务器/var/www/html/目录下上传一个index.html文件,如何操作并完成。

答:fdisk -l查看U盘所属盘名,mount -t vfat /dev/sdb mnt/usb , cd /mnt/usb,cp index.html /var/www/html/  (拔优盘的时候之前要umont,否则U盘多半被损坏!)

##用winscp软件将Windows中U盘的文件,远程连接拷贝到Linux对应目录中

3.有一块移动硬盘,上面有300G数据,如何快速cp到linux服务器?

答:???不知道,有人说挂载,这不合题意啊

4.光盘里面有一个httpd-2.2.15.xx.rpm包,如何挂载并安装呢?

答:mount /dev/cdrom /mnt/cdron ,cd /mnt/cdrom/Packages,rpm -ivh httpd-2.2.15.xx.rpm

5.使用rpm命令安装、卸载、更新ntp-0.7.12.x86_64.rpm这个软包。

答:rpm -ivh ,rpm -e ,rpm -uvh

6./var/www/html/是网站的发布目录,如何每天凌晨0点30对其进行自动备份,写出操作步骤?

答:crontab -e ; 30 0 * * * /bin/cp /var/www/html/* /backup/

##或者crontab -e ;30 0 * * * /bin/tar zcvf /backup/html.tar.gz /var/www/html/* &>/dev/null

7.使用tar命令打包并压缩/root目录,然后移动到/tmp下,将其权限设置其他人只读。

答:tar zcvf /tmp/root.tar.gz /* ; chmod o=r-- /tmp/root.tar.gz

8.Yum命令与rpm命令的区别?如何使用rpm安装一个有依赖的包?

答:yum能够解决rpm包安装的依赖性问题,并且yum是在线安装,需要配置yum仓库; rpm -ivh *.rpm --nodeps

##--nodeps就是安装时不检查依赖关系,比如你这个rpm需要A,但是你没装A,这样你的包就装不上,用了--nodeps你就能装上了。--force就是强制安装,比如你装过这个rpm的版本1,如果你想装这个rpm的版本2,就需要用--force强制安装

9.在这个月内,每天的早上 6 点到 12 点中,每隔 2 小时创建一个test.txt文件,内容为ok,如何实现?

答:crontab -e ;0 6-12/2 * * * /bin/echo "ok" >>test.txt

##chkconfig crond on

10.将/usr/local/test目录下大于100K 的文件转移到/tmp 目录下。

答:find /usr/local/test -size +100k -a -type f -exec {} /tmp \;

11.简述 raid0 raid1 raid5三种工作模式的工作原理及特点。

答:raid0:将数据分布在所有磁盘中,利用率为100%,但是没有冗余能力,最少需要2块磁盘

raid1:采用镜像功能,每份数据都拷贝一份,利用率为50%,成本太高,冗余能力好,读性能佳,最少需要2块磁盘

raid5:最少需要3块磁盘,其中两块硬盘用来存放数据,另一块磁盘用来奇偶校验码,当其中一块磁盘数据丢失,可以通过奇偶校验码进行恢复数据

12.如何查看占用端口 8080 的进程。

答:lsof -i:8080   ###-i是IPv4、IPv6协议

四、Linux服务配置及管理

1.请写出 apache2.X 版本的两种工作模式,以及各自工作原理。如何查看apache 当前所支持的模块,并且查看是工作在哪种模式下?

答:prefork:一个进程处理一个请求,root主进程创建若干个子进程后,在请求到来的时候根据需要1秒钟创建2个进程,再过1秒钟创建4个子进程,直到满足最终的需要,这种预派生的模式,可以在请求到来时已经创建好处理进程,从而提高访问效率

worker:一个进程中的多个线程处理多个请求,由于线程之间共享地址空间,从而系统消耗比较小,资源利用率高,但是一个线程崩溃会牵连到其他线程

httpd -M 查看已经使用的模块,httpd -l查看工作模式(httpd -V也行)

2.Linux下nfs在客户端无法挂载,请写出排查步骤?

答:NFS是网络通信的文件系统,在服务端showmout-e查看是否服务端正常共享,客户端showmount -e IP 看是否能检测到,检查配置文件/etc/exports是否正确,

还有ping一下看是否能互通。

3.Linux下已经部署了dhcp服务器,客户端无法获取的IP,如何解决?

答:在客户端检查/etc/sysconfig/network-scripts/ifcfg-eth0看BOOTPRO=DHCP与否,ping命令测试客户端和服务端是否能互通,检查服务端的配置文件/etc/dhcpd.conf 是否有语法错误

4.常见的FTP软件有哪些?Linux最常用的是?如何共享一个资源让他人使用用户名和密码访问?

答:Serv-U,vsftpd; vi /etc/vsftpd/vsftpd.conf 使anonymous_enable=NO

5.如何禁止FTP使用匿名用户登录?命令行如何访问ftp服务器?

答: vi /etc/vsftpd/vsftpd.conf 使anonymous_enable=NO   ;ftp IP地址

6.ApacheWEB服务器的发布目录在哪里?

答:rpm包安装的httpd服务,静态网页是在/var/www/html,动态网页是在/var/www/cgi-bin

源码包安装的httpd服务,网页是在/usr/local/apache2/htdocs

7.ApacheWEB服务器有几种工作模式,每种模式的简单区别?

答:prefork和worker

8.MySQL服务器的用途是?Apache和mysql可以安装在一台机器吗?如何查看apache和mysql端口和进程?

答:数据库存储和查询数据;可以安装在同一台机器,但是负载和磁盘IO率会影响系统整体性能,ps aux |grep httpd 或者mysqld

9.如何在虚拟机上面部署4个网站,访问的域名分别为www.a1.com??test.a1.comwww.a2.com??test.a2.com?

答:基于域名的虚拟主机,在/var/www/html建立各自相应的网页目录,

vi  /etc/httpd/conf.d/vhosts.conf  ##因为在/etc/httpd/conf/httpd.conf文件中含有Include conf.d/*.conf字段,代表包含该内容

NameVirtualHost 192.168.0.6:80

<VirtualHost 192.168.0.6:80>

ServerName www.a1.com

ServerAdmin [email protected]

DocumentRoot /var/www/html/

<Directory "/a1.com/1.html">

Options Indexs FollowSymlinks

AllowOverride None

Order allow deny

Allow from all

CustomLog "/var/log/httpd/a1.com/access_log  combined"

ErrorLog "/var/log/httpd/a1.com/error_log"

</Directory>

</VirtualHost>

...

10.假设 Apache 产生的日志文件名为access_log,在 apache 正在运行时,执行命令 mv access_log access_log.bak,执行完后,请问新的 apache的日志会打印到哪里,为什么?

答:依旧会打印到access_log中(默认创建一个新文件),因为Apache的配置文件里边指定的为这个文件名,当没有的时候会自动创建

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

答:主动模式:客户端打开一个控制端口N,同时开启一个数据端口N+1,控制端口N与服务端的21端口建立连接,并发送Port命令告知对方服务端我的数据端口是N+1,于是服务端用20端口和客户端的数据端口N+1建立TCP连接,从而开始传输数据

被动模式:也是客户端打开一个控制端口N,同时开启另一个数据端口N+1,发送port命令告知服务端我的数据端口是N+1,请你连过来,然而服务端发送一个PASV命令,同时开启自己服务端的数据端口P,客户端收到这条命令后,用它的N+1端口和服务端P建立连接,完毕后即可传输数据。

12.Linux内核引导时,从哪个文件中读取要加载的文件系统。

答:/etc/fstab

13.写出下面服务的常用端口ftp http dns snmp pop3、dhcp、nfs、mysql、samba等服务。

答:ftp:21 20 http:80 dns:53 snmp:25 pop3:110 dhcp:67 nfs:111 mysql:3306 samba:137 138 139

14.Mysql创建数据库的命令,创建表的命令,插入语句的命令?

答:create database test_db; use test_db ; create table tb_name;insert into table_name values ( );

15.Mysql备份命令?Mysql如何给root用户对jfedu授权访问,密码为jfedu.net,请写出命令?

答:mysqldump -uroot -p123456 -h127.0.0.1 >> back_sql; mysql>grant all privileges on *.jfedu to [email protected]‘192.168.0.1‘ identified by jfedu.net;

16.Mysql忘记密码该如何操作呢?

答:[[email protected] log]# mysqladmin -uroot -h127.0.0.1 password "123456"

##停止mysql服务,编辑/etc/my.cnf,在mysqld选项中加一行 --skip-grant-start保存后启动mysql,此时无需密码。进去之后执行

mysql> use mysql;

mysql> update user set password=password(‘newpass‘)  where user=‘root‘;

mysql> flush privileges;

17.Linux运维工程师都需要具备哪些技能和职业品质?

答:技能:(1)足够专业的知识面储备(2)凭熟悉程度+相关文档结合配置服务,以便提高工作效率又防止漏配

品质:(1)学会去积累,网络、系统、数据库领域知识多如牛毛,以便于跟不同人士进行交流

(2)对排错过程,问题以及解决方法做好笔记,等下个问题来了的时候,能记着最好,记不着就来查看笔记,以最快速度去解决问题,而把时间精力拿来研究下一个问题

(3)谨慎,有可能误操作让公司损失惨重,个人信心受到影响

(4)责任心,主人翁意识,这片区域归我管!

时间: 2024-10-22 21:23:54

Linux题目(二)的相关文章

Linux题目-2

[删除15天以前的日志文件] 试验环境模拟: for n in `seq 30`; do date -s "2018-07-$n"; touch access_xwj_$(date +%F).log;  --注意: date 和 + 之间有空格 done 脚本的意义:创建20180701~20180730号的日志文件 三种删除方式 1.[[email protected] ~]# find /xwj/log -type f -mtime +15 -exec rm -f {} \; 2.

攻城狮在路上(叁)Linux(二十九)--- 完整备份工具:dump以及restore

一.dump命令: 该命令既可以针对整个文件系统进行备份,也可以仅针对目录来备份.还可以指定不同的备份等级(-0~-9共10个等级). dump -W:列出在/etc/fstab中具有dump设置的分区是否备份过. 命令格式: dump [-Suvj] [-level] [-f 备份文件] 待备份数据 参数说明: -S:仅列出后面的待备份数据所需要的磁盘空间大小. -u:将这次dump的时间记录到/etc/dumpdates文件中. -v:将dump的文件过程显示出来. -j:加入bzip2的支

攻城狮在路上(叁)Linux(二十五)--- linux内存交换空间(swap)的构建

swap的功能是应付物理内存不足的状况,用硬盘来暂时放置内存中的信息. 对于一般主机,物理内存都差不多够用,所以也就不会用到swap,但是对于服务器而言,当遇到大量网络请求时或许就会用到. 当swap被使用的时候,主机的硬盘灯就会闪烁不停. 本篇介绍两种方式:1.设置一个swap分区   2.创建一个虚拟内存的文件. 一.使用物理分区构建swap: 1.首先是分区: A.fdisk /dev/sda; <== 根据后续提示创建一个分区. B.修改分区的ID,因为fdisk默认将分区的ID作为文件

攻城狮在路上(叁)Linux(二十六)--- linux文件系统的特殊查看与操作

一.boot sector 与 super block的关系: 1.boot sector用于存放引导装载程序,占用1024个字节. 2.super block的大小也为1024字节. 3.若block大小为1k,则boot sector和super block各占一个block. 4.若block大于1K(2K/4K)时,则两者都位于第一个block中. 二.磁盘空间的浪费问题:暂不考虑. 三.利用GUN的parted命令进行分区行为: 因为fdisk不支持高于2TB的分区. 命令格式: pa

攻城狮在路上(叁)Linux(二十四)--- linux设置开机挂载及镜像文件挂载

虽然可以手动进行文件系统的挂载,但是每次都手动挂载就会很麻烦,开机挂载的目的就是实现文件系统的自动挂载. 一.开机挂载:/etc/fstab及/etc/mtab 主要是通过修改/etc/fstab文件的配置来实现. fstab是开机时的设置,实际文件系统的挂载是记录到/etc/mtab和/proc/mounts这两个文件中. 1.系统挂载的限制: A.根目录/必须挂载,而且一定是最先挂载的,要先于其他mount point. B.其他挂载点必须为已新建的目录,可以任意指定. C.所有挂载点在同一

攻城狮在路上(叁)Linux(二十七)--- 压缩与打包之常见的压缩命令

前面讲到,linux中的后缀名没有特殊的意义,一般是作为不同文件类型的标识而已.下面是与打包.压缩相关的后缀名介绍: *.z:compress程序压缩文件 *.gz:gzip程序压缩文件 *.bz2:bzip2压缩文件 *.tar:tar打包,未压缩 *.tar.gz:tar打包,经过gzip压缩 *.tar.bz2:tar打包,经过bzip2压缩 一般经过打包或者压缩处理的文件通过后缀名来进行区别. 一.compress:该命令比较古老,centos默认未安装,可以使用gzip代替. 二.gz

攻城狮在路上(叁)Linux(二十三)--- linux磁盘参数修改(设备代码、设备名)

一.mknod:设置设备代码 linux中,所有的设备都是用文件来表示,文件通过major与minor数值来判断. major为主设备代码,minor为设备代码(需要查询),示例如下: /dev/hda ---------major:3------minor:0~63 /dev/hdb----------major:3------minor:64~127 /dev/sda----------major:8------minor:0~15 ... 命令格式:mknod 设备名 [bcp] [maj

攻城狮在路上(叁)Linux(二十二)--- linux磁盘挂载与卸载 mount umount

挂载就是将文件系统与目录结合的操作.挂载点就是目录,该目录就是进入分区或文件系统的入口. 一.挂载前的注意事项: 1.单一文件系统不应该被重复挂载在不同的挂载点中. 2.单一目录不应该重复挂载多个文件系统. 3.即将作为挂载点的目录理论上应该都是空目录才对. 注意:对应2和3,如果要挂载的目录不为空,那么挂载了新的文件系统之后,原来的目录会暂时消失(并非覆盖掉),系统会显示最新挂载的文件系统.新分区被卸载之后,原来的文件系统会重新显示出来. 二.命令介绍 mount [-t 文件系统] [-L

攻城狮在路上(叁)Linux(二十)--- Linux磁盘格式化

磁盘完成分区之后,进行格式化,生成文件系统. 命令格式: mkfs [-t 文件系统格式] 设备文件名  <== 使用 mkfs [Tab][Tab] 可以查看linux支持的文件系统格式 示例: mkfs -t ext3 /dev/sda6; 上述命令的不足是不能够指定文件系统的卷标label.block的大小以及inode的数量,因此系统还提供了mke2fs命令. 命令格式: mke2fs [-b block大小] [-i inode大小] [-L 卷标] [-cj] 设备名 参数说明: -

攻城狮在路上(叁)Linux(二十一)--- linux磁盘检查 fsck \ badblocks

若系统掉电或磁盘发生问题,可利用fsck命令对文件系统进行检查.这一步是可选的,尽量少用. 使用前的建议:使用fsck命令时,被检查的分区务必不要挂载在系统上. 一.fsck: 命令格式:fsck [-t 文件系统] [-ACay] 设备名称; <== 一般t参数可以不用指定,linux会自动识别 参数说明: -A:根据/etc/fstab的内容,将需要的设备扫描一次,开机时会用到. -a:自动修复有问题的扇区,不再需要一步步按y确认. -y:与-a类似,某些文件系统仅支持-y. -C:检验过程