Linux鸟叔的私房菜基础学习篇(第四版)课后习题答案_第1页
Linux鸟叔的私房菜基础学习篇(第四版)课后习题答案_第2页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Linux鸟叔的私房菜基础学习篇(第四版)课后习题答案答案仅供参考,来源于本⼈和⽹上,并⾮绝对正确,请酌情参考!⽂章⽬录第零章计算机概论:(1)系统名称;(2)所在位置;(3)使⽤的CPU型号与规格;(4)总共使⽤的CPU数量;(5)全功率运⾏1天时,可能使⽤的电费。解:(1)Summit;(2)美国;(3)IBMPower9,22核⼼,主频为3.07GHZ,总计使⽤了103752颗,核⼼数量达到2282544个;(4)2CPU+6GPU;(5)Summit的功耗为8805.5kw,按照0.5/度的电价,每⽇需要花费105666元。2.利⽤软件:假设你不想拆开主机机箱,但想了解你的主机内部各组件的信息时,该如何是好呢?如果使⽤的是Windows操作系统,可使⽤CPU-Z这个软件,如果是Linux环境下,可以使⽤cat/proc/cpuinfo及使⽤lspci等命令来查看各项组件的型号。解:硬件信息如下。CPU:InterCorei75500U;2.4GHZ内存:8GBytes;DDR3显卡:PCIExpress3.0;2GBytes主板:ASUSTEKCOMPUTERINC;IntelBroadwell-u(北桥),IntelBroadwell-uPCHL-P(南桥);AmericanMegatrendsInc;集成了⽹卡和声卡。硬盘:SATA3;128GB;读483MB/S,写136MB/S;6GBPS找出第四代Inteli74790CPU的:(1)与南桥沟通的DMI带宽有多⼤?(2)⼆级缓存的容量有多⼤?(3)最⼤PCIe通道数量有多少?并据以说明主板上⾯PCIe插槽的数量限制。解:(1)DMI256T/S;(2)三级缓存8MB;(3)16条PCIe通道。找出IntelSSD520固态硬盘相关的功能列表,了解:(1)连接接⼝;(2)最⼤读写速度,以及(3)最⼤随机读写数据(IOPS)等信息。解:(1)SATA3(6Gbps);(2)读:280MB/S(SATA2),550MB/S(SATA3);写:260MB/S(SATA2),520MB/S(SATA3);(3)IOPS的值为:6187(读),17740(写)。第⼀章Linux是什么与如何学习实践题部分吉祥物企鹅的名字,以及最原始的图形⽂件。解:企鹅的名字为TUX(tuxedo)3.请上⽹找出Andriod与Linux内核版本间的关系。解:关系如下AndroidVersion|APILevel|LinuxKernelinAOSP1.5Cupcake|3|2.6.271.6Donut|4|2.6.292.0/1Eclair|5-7|2.6.292.2.xFroyo|8|2.6.322.3.xGingerbread|9,10|2.6.353.x.xHoneycomb|11-13|2.6.364.0.xIceCreamSan|14,15|.xJellyBean|16|3.0.314.2.xJellyBean|17|3.4.04.3JellyBean|18|3.4.394.4KitKat|19,20|3.105.xLollipop|21,22|Marshmallow|23|Nougat|24|Nougat|25|4.4.1(Tobeupdated)简答题部分②⽹卡过新,原有⽹卡驱动程序版本⽼旧导致系统⽆法识别,更新驱动程序即可;③⽹卡驱动未安装,安装驱动即可。2.⼀个操作系统⾄少要能够完整控制整个硬件,请问操作系统应该要控制硬件的哪些单元?CPU、内存、输⼊输出设备及⽂件系统,因此操作系统要控制的就是这些硬件的内部单元。3.我在Windows上⾯玩的游戏可不可以拿到Linux去玩?解:不能。游戏软件也是个应⽤程序,应⽤程序是参考操作系统提供的开发接⼝所开发出来的软件,与操作系统的关系相当密切。5.UNIX是谁写出来的?GUN项⽬是谁发起的?解:UNIX是Thompson与Ritchie写出,与1973年正式发布;GUN项⽬由RichardMathewStallman在1984年发起。6.GUN的全名为何?它主要由哪个基⾦会⽀持?解:GUN全名为GUN’snotUNIX。主要由FSF基⾦会⽀持。7.何谓多⽤户(Multi-user)多任务(Multi-task)?CPU在⼀个时间内仅能进⾏⼀个程序,多任务,即计算机对于多个任务,会在不同的程序间切换,让⽤户感觉多个任务是在同步进⾏(现在的多核⼼计算机可以实现真正的多任务同时处理)。Linux是⼀个真实的、完整的多⽤户多任务操作系统,可以在Linux上建⽴多个⽤户,⽽多个⽤户可以在同⼀时间内登录同⼀个系统执⾏不同的任务⽽互不影响。8.简单说明GUNGeneralPublicLicense(GPL)与OpenSource的精神。解:1.GPL的授权之软件,乃为⾃由软件(Freesoftware),任何⼈皆可拥有他;2.开发GPL的团体(或商业企业)可以经由该软件的服务来取得服务的费⽤;3.经过GPL授权的软件,其属于Opensource的情况,所以应该公布其原始码;4.任何⼈皆可修改经由GPL授权过的软件,使符合⾃⼰的需求;5.经过修改过后Opensource应该回馈给Linux社群。9.什么是POSIX?为何说Linux使⽤POSIX时对于开发有很好的影响?解:POSIX是⼀种标准规范,主要针对在Unix操作系统上⾯跑的程序来进⾏规范。若你的操作系统符合POSIX,则符合POSIX的程序就可以在你的操作系统上⾯运作。Linux由于⽀持POSIX,因此很多Unix上的程序可以直接在Linux上运作,因此程序的移植相当简易!也让⼤家容易转换平台,提升Linux的使⽤率。10.简单说明Linux成功的因素第⼆章主机划分与磁盘分区实践题部分解:(1)总⽡数:300w(2)运⾏的时间:3h/day(3)电费:0.6/度(4)⼀年⼤约要花365度电,⼤约花费为219元。简答题部分CPU够快,整体速度就会提⾼?解:不是。在性能⽅⾯并⾮只考虑CPU的能⼒⽽已,速度的快慢与整体系统的最慢的那个设备有关。CPU再快,其他硬件⽆法配合CPU的⾼速处理能⼒,也⽆法发挥CPU的最佳性能,计算机整体性能就会卡在最慢的硬件的瓶颈上。2.Linux对于硬件的要求需要考虑的是什么?是否⼀定要很⾼的配置才能安装Linux?解:Linux对于硬件的要求因计算机的⽤途⽽定,且Linux对于硬件的最低要求较其它系统都低。所以配置不⼀定要⾼,因地制宜即可。3.⼀台好的主机在安装之前,最好先进⾏规划,哪些是必定需要注意的Linux主机规划事项?4.请写下下列配置在Linux中的设备⽂件名:IDE硬盘、CDROM、打印机、软驱、⽹卡。解:IDE硬盘:/dev/hd[a-d];CDROM:/dev/cdrom;打印机:25针为/dev/lp[0-2],USB为/dev/usb/lp[0-15];软驱:/dev/fd[0-1];⽹卡:/dev/eth[0-n]。5.⽬前在个⼈计算机上⾯常见的硬盘与主板的连接接⼝有哪两个?解:IDE和SATA。IDE为⽼式接⼝,⽬前市⾯上的计算机基本都采⽤了SATA接⼝。第三章安装CentOs7.x(partition)则需要与树状⽬录相配合!请问,在默认的情况下,在安装的时候系统会要求你⼀定要分出来的两个分区是什么?解:/和swap两个分区。SATA磁盘中,划分六个有⽤的分区(具有⽂件系统),ft外,已知有两个主分区,请问六个分区的⽂件名?。(2)/dev/sdb1/dev/sdb2/dev/sdb5/dev/sdb6/dev/sdb7/dev/sdb83.什么是GMT时间?它与北京时间差⼏个⼩时?。解:GMT为格林尼治时间,与北京时间差8⼩时。4.软件磁盘阵列的设备⽂件名是什么?解:/dev/md[0-15]5.如果我的磁盘分区是使⽤MBR分区⽅式,且设置了4个主分区,但是磁盘还有空间,请问我还能不能使⽤这些空间?第四章⾸次登陆与在线求助情景仿真题1.我们在命令⾏界⾯,例如tty2⾥⾯看到的欢迎界⾯,就是在那个login:之前的页⾯(CentOSLinux7…)是怎么来的?⽬标:了解到终端的欢迎信息是怎么来的?前提:欢迎信息的内容,记录在/etc/issue当中的。需求:利⽤man找到该⽂件当中的变量内容。情景仿真题的解决步骤:欢迎界⾯是在/etc/issue⽂件中,你可以使⽤【nano/etc/issue】看看该⽂件的内容(注意,不要修改这个⽂件内容,看完就离开),这个⽂件的内容有点像下⾯这样:\SKernel\ronan\m2.与tty3⽐较之下,发现到内核版本使⽤的是\r⽽硬件等级则是\m来取代,这两者代表的意义是什么?由于这个⽂件的⽂件名是issue,所以我们使⽤【manissue】来查看这个⽂件的格式;通过上⼀步的查询我们会知道反斜杠(\)后⾯接的字符是与agetty(8)及mingetty(8)有关,故进⾏【managetty】这个命令的查询。/escape】来查找各反斜杠后⾯所接字符所代表的意义是什么。】与【tty号码(如tty1,tty2的号码)】的话,应该要找到哪个字符来表⽰(通过反斜杠的功能)?解:\t与\l。简答题部分1.简单查询⼀下,Physicalconsole、Virtualconsole、Terminal的说明是什么?解:(1)基于物理设备的连接,称为物理终端(PysicalTerminal),也可以称为物理控制台(Pyhsicalconsole)。⼀个物理终端(物理控制台),可以⽀持多个虚拟终端(或虚拟控制台virtualconsole)。随着X视窗系统的⼴泛使⽤,虚拟控制台的使⽤需求也越来越少,控制台程序可以在终端模拟器(terminalemulator)中运⾏,这些被称为伪终端(PseudoTerminal)。2.请问如果我以命令⾏模式登录Linux主机时,我有⼏个终端接⼝可以使⽤?如何切换各个不同的终端接⼝?1ty3.在Linux系统中,/VBird与/vbird是否为相同的⽂件?解:不同。Linux系统区分⼤⼩写。4.我想要知道date如何使⽤,应该如何查询?解:两种⽅式:mandate(UNIXlike通⽤),infodate(Linux)。5.我想要在今天的1:30让系统⾃⼰关机,要怎么做?解:shutdown-h1:306.如果Linux的XWindow突然发⽣问题⽽挂掉,但Linux本⾝还是好好的,那么我可以按下哪三个按键来让XWindow重启?解:[Ctrl]+[Alt]+[Backspace]7.我想要知道2010年5⽉2⽇是星期⼏?该怎么做?解:cal52010;调出2010年5⽉⽇历查看。使⽤mandate找出显⽰⽬前的⽇期与时间的参数,显⽰⽅式类似:2015/10/16-20:03。解:date+%Y/%m/%d-%H:%M若以XWindow为默认的登录⽅式,那请问如何进⼊Virtualconsole呢?解:[Ctrl]+[Alt]+[F1~F6]。简单说明在bashshell的环境下,[Tab]按键的⽤途?[Tab]接在⼀串命令的第⼀个命令的后⾯为“命令补全”,接在⼀串命令的第⼆个命令以后时则为“⽂件补齐”。?(利⽤按键,⾮利⽤kill命令)解:[Ctrl]+[C]Linux提供相当多的在线查询,称为manpage,请问,我如何知道系统上有多少关于passwd的说明?可以使⽤其他的程序来替代man的这个功能吗?解:利⽤man-fpasswd来查询。在Linux上可以⽤infopasswd命令来替代man的在线查询passwd的功能。在manpage显⽰的内容中,命令(或⽂件)后⾯会接⼀组数字,这个数字若为1,5,8,表⽰该查询的命令(或⽂件)意义是什么?解:代表意义为:1)⽤户在shell环境中可以操作的命令或可执⾏⽂件;5)配置⽂件或者是某些⽂件的格式8);系统管理员能够使⽤的管理命令。manpage显⽰的内容的⽂件是放置在哪些⽬录中?解:不同的Linuxdistributions可能会有所不同,通常是放在/usr/share/man这个⽬录⾥。请问【foo1-foo2foo3foo4】这⼀串命令中各代表什么意义?解:foo1⼀定是指令,-foo2则是foo1这个指令的选择项⽬参数,foo3与foo4则不⼀定,可能是foo1的参数设定值,也可能是额外加⼊的parameters。当我输⼊mandate时,在我的终端却出现⼀些乱码,请问可能的原因是什么?如何修正?解:乱码是由语系导致。可以在终端输⼊echo&LANG命令查看当前使⽤的语⾔,再输⼊LANG=en_CN.UTF-8修改语⾔(临时修改)即可。我输⼊这个命令“ls-al/vbird”,系统回复我这个结果:“ls/vbirdNosuchfileordirectory”,请问发⽣了什么事?解:没有/vbird这个⽂件或⽬录。bz为开头的,可以怎么做?解:输⼊bz[Tab][Tab]查看。19.承上题,在出现的许多命令中,请问bzip2是⼲嘛⽤的?解:使⽤manbzip2命令查看可以知道是⽤来压缩与解压缩⽂件⽤的。20.在终端⾥⾯登录后,看到的提⽰符KaTeXparseerrorExpected'EOF'gotatposition221.我使⽤dmtsai这个账号登录系统了,请问我能不能使⽤reboot来重启?若不能,请说明原因,若可以,请说明命令如何执⾏?解:理论上reboot仅能让root运⾏。不过,如果dmtsai是在主机前⾯以图形接⼝登陆时,则dmtsai还是可以透过图形接⼝功能来关机。第五章Linux的⽂件权限与⽬录配置14个字符,⽽新的UNIX与Linux系统中,⽂件名最多可以容许⼏个字符?解:由于使⽤Ext2/Ext3⽂件系统,单⼀档名可达255字符,完整⽂件名(包含路径)可达4096个字符。2.当⼀个⼀般⽂件权限为-rwxrwxrwx则表⽰这个⽂件的意义是什么?解:任何⼈皆可读取、修改或编辑、可以执⾏,但不⼀定能删除。-rwxr-xr—,请问该如何执⾏命令?解:chmod754filename或chmodu=rwx,g=rx,o=rfilename4.若我需要更改⼀个⽂件的所有者与⽤户组,该⽤什么命令?解:chown,chgrp5.请问下⾯的⽬录主要放置什么数据?/etc/,/etc/init.d,/boot,/usr/bin,/bin,/usr/sbin,/sbin,/dev,/var/log解:/etc/:系统主要的配置⽂件⼏乎都放置在这个⽬录内,例如⼈员的账号密码⽂件、各种服务的起始⽂件等;/etc/init.d:所有服务的默认启动脚本都是放在这个⽬录中;/boot:主要放置在开机会使⽤到的⽂件,包括Linux内核⽂件以及开机菜单与开机所需配置⽂件等;/usr/bin:绝⼤部分的⽤户可使⽤命令都在这⾥,与/bin不同的是这些命令与开机过程⽆关;/bin:主要放置在开机时,以及进⼊单⽤户维护模式后还能够被操作的命令;/usr/sbin:⾮系统正常运⾏所需要的系统命令,最常见的就是某些⽹络服务器软件的服务命令;/sbin:主要放置开机过程中所需要的命令,⾥⾯包括了开机、修复、还原系统所需要的命令,只有系统管理员能使⽤;/dev:在Linux系统上,任何设备与接⼝设备都是以⽂件的形式存在与这个⽬录当中;/var/log:主要放置登录⽂件,记录登录信息。6.若⼀个⽂件的⽂件名开头为“.”,例如.bashrc这个⽂件,代表什么?另外,如何显⽰出这个⽂件名与它的相关属性?解:有“.”为开头的为隐藏⽂件,需要使⽤ls-a这个-a的选项才能显⽰出隐藏⽂件的内容,⽽使⽤ls-al才能显⽰出属性。第六章Linux⽂件与⽬录管理1.什么是绝对路径与相对路径?解:对于Linux,绝对路径的写法为由/开始写,相对路径则不由/开始写。ft外,相对路径为相对于⽬前⼯作⽬录的路径。2.如何更改⼀个⽬录的名称?例如由/home/test变为/home/test2?解:mv/home/test/home/test2。3.PATH这个环境变量的意义是什么?解:这个是⽤来指定运⾏档运⾏的时候,命令搜寻的⽬录路径。4.umask有什么⽤处与优点?解:umask⽤来指定⽬前⽤户在新建⽂件或⽬录时候的权限默认值,因ft它可以增减⼀些权限,因ft,适当的定义umask有助於系统的安全,因为他可以⽤来创建默认的⽬录或⽂件的权限。5.当⼀个⽤户的umask分别为033与044,它所建⽴的⽂件与⽬录的权限是什么?umask033groupotherw(2)x(1)权限,因ft-rw-r–r--;drwxr–r-044时,则拿掉r的属性,因ft就成为“⽂件-rw–w--w-,⽬录drwx-wx-wx”。6.什么是SUID?权限仅对⼆进制程序有效;执⾏者对于该程序需要具有x的可执⾏权限;本权限仅在执⾏改程序的过程中有效;执⾏者将具有该程序所有者的权限。这个⽂件的(1)传统权限、(2)⽂件类型与(3)⽂件的隐藏属性,可以使⽤什么命令来查询?解:(1)(2)ll-d/usr/bin/passwd(3)chattr/usr/bin/passwd8.尝试⽤find找出⽬前Linux系统中所有具有SUID的⽂件有哪些?解:find/-perm/4000-print。9.找出/etc下⾯,⽂件⼤⼩介于50KB到60KB之间的⽂件,并且将权限完整地列出(ls-l)解:find/etc-size+50k-a-size-60k-execls-l{};10.找出/etc下⾯,⽂件容量⼤于50KB且⽂件所有者不是root的⽂件名,且将权限完整地列出(ls-l)解:find/etc-size+50k-a!-userroot-execls-ld{};11.找出/etc下⾯,容量⼤于1500KB以及容量等于0的⽂件解:find/etc-size+1500k-o-size0第七章Linux磁盘与⽂件系统管理1.我们常常说,启动的时候,【发现硬盘有问题】,请问,这个问题的产⽣是【⽂件系统的损坏】,还是【硬盘的损坏】?解:如果某个filesystem⾥⾯,由于操作不当,可能会造成Superblock数据的损毁,或者是inode的架构损毁,或者是blockarea的记录遗失等等,这些问题当中,其实硬盘还是好好的,不过,在硬盘上⾯的⽂件系统则已经⽆法再使⽤。⼀般来说,我们的Linux很少会造成(reinstall)即可,不需要换掉硬盘。2.当我有两个⽂件,分别是file1与file2,这两个⽂件互为硬链接的⽂件,请问,若我将file1删除,然后再以类似vi的⽅式重新新建⼀个名为file1的⽂件,则file2的内容是否会被修改?file1file2inodeblockftfile1inodeblockfilesystemmetadata,inodeblockfile1并file1file2。第⼋章⽂件与⽂件系统的压缩(答案暂缺)第九章vim程序编辑器34⾏向右移动15个字符,应该在⼀般模式中执⾏什么命令?解:先按下34G移动光标到第34⾏,再执⾏15[→]或15j。2.在vi打开的⽂件中,如何去到该⽂件的页⾸或页尾?解:执⾏1G或gg去往页⾸,执⾏G去往页尾。3.在vi打开的⽂件中,如何在光标所在⾏中,移动到⾏头及⾏尾?解:0或功能键[home]移动到⾏头,$或[end]移动到⾏尾。4.vi的⼀般模式情况下,按下“r”有什么功能?解:进⼊替换模式(Replacemode),且只会替换光标所在的那⼀个字符⼀次。5.在vi的环境中,如何将⽬前正在编辑的⽂件另存新⽂件名为newfilename?解:wnewfilenamevi,请问如何进⼊编辑模式?解:在⼀般模式下按下i,I,a,A,o,O,r,R任意⼀个都可以进⼊编辑模式。7.在vi软件中,如何由编辑模式跳回⼀般模式?解:按下[ESC]键。9.在vi的⼀般模式中,如何删除⼀⾏、n⾏;如何删除⼀个字符?解:dd删除光标所在的那⼀整⾏,ndd删除光标所在的向下n⾏;x或X删除⼀个字符。10.在vi的⼀般模式中,如何复制⼀⾏、n⾏并加以粘贴?解:yy复制光标所在的那⼀⾏,nyy复制光标所在的向下n⾏,然后p或P粘贴。11.在vi的⼀般模式中如何查找string这个字符串?解:/string向后查找,?string向前查找。12.在vi的⼀般模式中,如何替换word1成为word2,⽽若需要使⽤确认机制,⼜该如何?解:1,s/word1/word2/g替换,若需要使⽤确认机制,则为:1,s/word1/word2/gc13.在vi⽬前的编辑⽂件中,在⼀般模式下,如何读取⼀个⽂件filename进⼊当前的⽂件?解::rfilename15.在vi下⾯做了很多的编辑操作之后,却想还原成原来的⽂件内容,应该怎么进⾏?解:c!16.我在vi这个程序当中,不想离开vi,但是想执⾏ls/home这个命令,vi有什么额外的功能可以达到这个⽬的?解:[Ctrl]+Z或:!ls/home第⼗章认识与学习BASH1.在Linux上可以找到哪些shell(举出三个)?哪个⽂件记录可⽤的shell是什么?⽽Linux默认的shell是什么?解:/bin/bash、/bin/ksh、/bin/csh;/etc/shells;/bin/bash。3.在shell环境下,有个提⽰符(prompt),它可以修改吗?要改什么?默认的提⽰符内容是什么?解:命令提⽰符可以通过环境变量PS1来修改,改环境变量的内容即可,默认的提⽰符内容是[\u@\h\W]$。4.如何显⽰HOME这个环境变量?解:echo$HOME。5.如何得知⽬前的所有变量与环境变量的设置值?解:set显⽰⽬前所有的变量(包括环境变量),env显⽰⽬前所有环境变量的值。6.我是否可以设置⼀个变量名称为3myhome?解:不可以,变量名称的开头不能为数字。7.在这样的练习中:【A=B】且【B=C】,若我执⾏“unset$A”,则取消的变量是A还是B?解:取消的变量是B。因为$A的指向为B,若想取消变量A,命令应为unsetA。8.如何取消变量与命令别名的内容?解:unset取消变量,unalias取消命令别名。9.如何设置⼀个变量名称为name内容为It’smyname?解:name=“It’s\my\name”10.bash环境配置⽂件主要分为哪两种类型的读取?分别读取哪些重要⽂件?11.CentOS7.x的manpage的路径配置⽂件是什么?解:/etc/main.config12.试说明【’】、【"】、与【’】这些符号在变量定义中的⽤途。13.转符号\有什么⽤途?解:转义特殊字符(如空格、换⾏、$等)。14.连续命令中,【;】、【&&】、【||】有何不同?,||为前⼀个命令正确执⾏则不执⾏下⼀个命令,否则执⾏|cut-d-f1|sort|uniq16.请问foo1&&foo2|foo3foo4,这个命令串当中,foo1、foo2、foo3、foo4是命令还是⽂件?整串命令的意义是什么?foo1正确执⾏时则执⾏foo2,否则不执⾏,然后foo2若没有正确执⾏则执⾏foo3,并将结果作为stdin输出到foo4中。17.如何列出在/bin下⾯任何以a为开头的⽂件⽂件名的详细数据?解:ls-l/bin/a*18.如何显⽰/bin下⾯⽂件名为四个字符的⽂件?解:ls-l/bin/19.如何显⽰/bin下⾯⽂件名开头不是a-d的⽂件?解:ls-l/bin/[^a-d]*第⼗⼀章正则表达式与⽂件格式化处理XYZ三个字符的任何⼀个字符的那⼀⾏就列出来,要怎样进⾏?解:grep[XYZ/etc/*2.将/etc/termcap内容取出后,去除开头为#的⾏、去除空⽩⾏、取出开头为英⽂字母的那⼏⾏以及最终统计总⾏数该如何进⾏?解:grep-v‘^#’/etc/termcap|grep-v‘^$’|grep‘^]]’|wc-l第⼗⼆章学习shell脚本#!/bin/bashecho-e"Yournameis==>$(whoami)"echo-e"Thecurrentdirectoryis==>$(pwd)"#!/bin/bashecho-e"Yournameis==>$(whoami)"echo-e"Thecurrentdirectoryis==>$(pwd)"#!/bin/bashread#!/bin/bashread-p"Pleasinputyourbirthday(MMDD,ex>0709):"birnow=`date+%m%d`if["$bir"=="$now"];thenecho"HappyBirthdaytoyou"elif["$bir"-gt"$now"];thenyear=`date+%Y`total_d=$(($((`date--date="$year$bir"+%s`-`date+%s`))/60/60/24))echo"Yourbirthdaywillbe$total_dlater"elseyear=$((`date+%Y`+1))total_d=$(($((`date--date="$year$bir"+%s`-`date+%s`))/60/60/24))echo"Yourbirthdaywillbe$total_dlater"fi#!/bin/bashread#!/bin/bashread-p"Pleaseinputanintegernumber:"numberi=0s=0while["$i"!="$number"]doi=$(($i+1))s=$(($s+$i))doneecho"theresultof'1+2+3+...$number'is==>$s"4.编写⼀个程序,它的作⽤是:(1)先查看⼀下/root/test/logical这个名称是否存在;(2)若不存在,则创建⼀个⽂件,使⽤touch创建,创建完成后退出;(3)如果存在的话,判断该名称是否为⽂件,若为⽂件则将之删除后新建⼀个⽬录,⽬录名为logical,之后离开;(4)如果存在的话,⽽且该名称为⽬录,则删除ft⽬录。解:#!/bin/bash#!/bin/bashif[!-elogical];thentouchlogicalecho"Justmakeafilelogical"exit1elif[-elogical]&&[-flogical];thenrmlogicalmkdirlogicalecho"removefile==>logical"echo"andmakedirectorylogical"exit1elif[-elogical]&&[-dlogical];thenrm-rflogicalecho"removedirectory==>logical"exit1elseecho"Doesherehaveanything?"fi/etc/passwd的第⼀列取出,⽽且每⼀列都以⼀⾏字符串【The1accountis“root】来显⽰,那个1表⽰⾏数。解:#!/bin/bashaccounts=`cat#!/bin/bashaccounts=`cat/etc/passwd|cut-d':'-f1`foraccountin$accountsdodeclare-ii=$i+1echo"The$iaccountis\"$account\""done第⼗三章Linux账号管理与ACL权限设置1.root的UID与GID是多少?⽽基于这个理由,我要让test这个账号具有root的权限,应该怎么做?test这个账号具有root的权限,只要把test的UID和GID都改为0即可2.假设我是⼀个系统管理员,有⼀个⽤户最近不乖,所以我想暂时将他的账号停掉,让他近期⽆法进⾏任何操作,等到将来他乖顺⼀点之后,我再将他的账号启⽤,请问:我可以怎么做⽐较好?即可以让该账号暂时⽆法登录主机;⼆是将/etc/shadow内的⼝令字段添加⼀个*号在最前⾯;三是将/etc/shadow的第⼋个字段关于账号取消⽇期的改成⼩于当前⽇期的数字3.我在使⽤useradd的时候,新增的账号⾥⾯的UID与GID还有其他相关的密码管理,都是在哪⼏个⽂件⾥⾯设置的?答:在/etc/login.defs还有/etc/default/useradd⾥⾯4.我希望我在设置每个账号的时候(使⽤useradd),默认情况中,他们的家⽬录就含有⼀个名称为www答:使⽤useradd的时候系统会⾃动以/etc/skel为默认home⽬录,所以在这个⽬录⾥新建⼀个名称为www的⼦⽬录即可5.简单说明系统账号与⼀般⽤户账号的区别?答:从UID来说,UID为1~499的就是系统账号,往后为⼀般⽤户账号。系统账号拥有的权限⼀般⽐⼀般⽤户账号⼤,系统账号可以调⽤某些系统资源6.简单说明,为何CentOS新建⽤户时,它会主动帮⽤户新建⼀个⽤户组,⽽不是使⽤/etc/default/useradd的设置?答:不同的Linuxdistributions对于user的group创建机制不同,主要有两种。⼀种是Publicgroupschemes:⽤户将会直接得到⼀个系统指定的群组,⼀般来说是users;另⼀种是Privategroupschemes:系统会创建⼀个与账号相同的群组。CentOS就属于后者。7.如何新建⼀个⽤户,名称alex,他所属⽤户组为alexgroup,预计使⽤csh,他的全名为“AlexTsai”,且还得要加⼊users⽤户组当中?答:groupaddalexgroupuseradd-c“AlexTsai”-galexgroup-Gusers-malex先创建群组再创建使⽤者8.由于种种因素,导致你的⽤户家⽬录以后都需要被放置到/account这个⽬录下。请问,我该如何做,才可以在使⽤useradd时,默认的主⽂件夹就指向/account?答:修改变量。编辑/etc/default/useradd,将HOME=/home改成HOME=/account即可。这三个⽤户组,且不影响dmtsai原本已经⽀持的次要⽤户组,该如何操作?答:usermod-a-Gvbird1,vbird2,vbird3dmtsai第⼗四章磁盘配额(Quota)与⾼级⽂件系统管理soft/hard各为40MB/50MB的容量时,应该如何修改这个shell脚本?答:先将/home制作好quota的环境然后再do…done内的最后⼀⾏,新增⼀⾏内容为setquota-u$username400005000000/homeRAID等级可能有哪些(请以本章谈到的等级来思考即可)?答:RAID-1,RAID-5,RAID-6LVM能否具有【备份】的功能?答:snopshot快照功能可以进⾏数据备份4.如果你的计算机主机有提供RAID0的功能,你将你的三块硬盘全部在BIOS阶段使⽤RAID芯⽚整合成⼀块⼤硬盘,则ft硬盘在Linux系统当中的⽂件名是什么?答:/dev/sda第⼗五章计划任务(crontab)。我想要让系统每三分钟执⾏这个⽂件⼀次,但是偏偏这个⽂件会有很多的信息显⽰出来,所以我的root账号每天都会收到差不多四百多封的信件,光是收信就差不多快要疯掉了。那么请问应该怎么设置⽐较好呢?*th>l2.您预计要在2016年的2⽉14⽇寄出⼀封Email给kiki,只有该年才寄出,该如何执⾏命令?答:at1am2016-02-143.执⾏crontab-e之后,如果输⼊这⼀⾏,代表什么意思?**15**1-5/usr/local/bin/tea_time.sh1~5360/usr/local/bin/tea_time.sh1~5的3点都会进⾏60次!很⿇烦,是错误的写法,应该是要写成:2500**0root/usr/local/bin/backup.sh4.请问,你的系统每天、每周、每个⽉各有进⾏什么⼯作?答:以CentOS系统为例,默认的例⾏性命令都放置在/etc/cron.*⾥⾯,所以,你可以⾃⾏去:/etc/cron.daily/,/etc/cron.week/,/etc/cron.monthly/的任何⽂件,并将结果输出到/rmp/uidgid.files中。答:vi/etc/crontab第⼗六章进程管理与SELinux初探1.简单说明什么是程序(program)⽽什么是进程(process)?答:程序(program)是系统上⾯可以被运⾏的⽂件,由于Linux的完整⽂件路径(由/写起)仅能有⼀个,所以program的档名具有单⼀性。当程序被运⾏后,就会启动成程序(process),⼀个program可以被不同的使⽤者或者相同的使⽤者重复的运⾏成为多个程序,且该程序所造成的程序还因为不同的使⽤者,⽽有不同的权限,且每个process⼏乎都是独⽴的2.我今天想要查询/etc/crontab与crontab这个进程的⽤法与写法,请问我该如何在线查询?答:查询/etc/crontab可以⽤man5crontab,查询crontab可以⽤mancrontab或infocrontab3.我要如何查询crond这个daemon的PID与它的PRI值?答:psaux|grepcrond4.我要如何修改crond这个PID的优先执⾏顺序?答:先以psaux找到crond的PID后,再以renice-nnumberPID来调整5.我是⼀般⾝份⽤户,我是否可以调整不属于我的程序的nice值?ft外,如果我调整了我⾃⼰的进程的nice值到10,是否可以将它调回5呢?PIDnice10之后,就不能降回56.我要怎么知道我的⽹卡在启动的过程中有没有被识别?答:⽤dmesg来观察第⼗七章认识系统服务(daemon)使⽤netstat-ful与netstat-tunl有什么差异?为何会这样?nnetstat(hostname&service_name)IPportnumber来显⽰的。IP/etc/hosts/etc/resolv.confportnumber/etc/services有关2.你能否找出来,启动3306这个端⼝的服务是什么?/etc/servicesport3306mysqlmysql为⼀种⽹络数据库系统软件。3.你可以通过哪些命令查询到⽬前系统默认开机会启动的服务?答:⽤chkconfig或ntsysv都可以4.承上,那么哪些服务【⽬前】是在启动的状态?service--status-all,netstat-anlpstreedaemon就得要个别查询了第⼗⼋章认识与分析⽇志⽂件1.如果你想要将auth这个服务的⽇志中,只要信息等级⾼于warn就发送邮件l到root的信箱,该如何完成?答:利⽤vim去编辑/etc/syslog.conf⽂件,内容为auth.warnroot2.启动系统⽇志信息时,需要启动哪两个daemon?答:syslogd记录系统软件,klogd记录核⼼资讯3.rsyslogd以及logrotate通过什么机制来执⾏?答:syslogd为standalonedaemon的机制;logrotate则是透过crontab来运⾏的,只是个命令⽽已第⼗九章启动流程、模块管理与Loader的内核识别,但是偏偏这个内核明明就有⽀持该模块,我要让该模块在启动的时候就被加载,那么应该写⼊哪个⽂件?答:应该写⼊/etc/modprobe.conf(kernel2.6.x)或者是/etc/modules.conf(kernel2.4.x)这个⽂件,他是模块加载相关的地⽅。也可以写⼊/etc/sysconfig/modules/*⾥⾯。如果你不⼩⼼先安装Linux再安装Windows导致bootloader⽆法找到Linux的启动菜单,该如何挽救?答:1.借助第三⽅软件安装类似于spfdisk的软件到MBR⾥⾯。2.使⽤类似KNOPPIX的LiveCD以光盘启动进⼊Linux之后,再以chroot软件切换根⽬录(/),然后重新安装grub等bootloader第⼆⼗章基础系统设置与备份策略1.如果你想要知道整个系统的周边硬件设备,可以使⽤哪个命令查询?答:lspciUSB设备呢?⼜该如何查询?答:lsusb3.如果你的⽹络设置妥当了,但是却⽼是发现⽹络不通,你觉得应该如何进⾏测试?答:(1)先检查硬件,每个环节(⽹卡、hub/switch、路由器等)的灯号是否有亮?有亮再进⾏下个动作;(2)使⽤ifconfig检查IP与netmask的数据是否正确,若正确才可进⾏下⼀步;(3)routedefaultgatewaypingc3[gatewayIP(5)pingc3IP,IPgatewaydigIP/etc/resolv.conf第⼆⼗⼀章基础系统设置与备份策略(答案暂缺)答案暂缺(以后若找到会补上)第⼆⼗⼆章软件安装PRM、SPRM与YUM1.如果你曾经修改过yum设置⽂件内的容器设置(/etc/yum.repos.d/*.repo),导致下次使⽤yum进⾏安装时⽼是发现错误,ft时你该如何是好?答:先确认你的配置⽂件确实是正确的,如果没问题,可以将yum的缓存清除,使⽤『yumcleanall』即可。事实上,yum的所有缓存、下载软件、下载软件的表头数据,都放置于/var/cache/yum/⽬录下2.简单说明RPM与SRPM的异同答:RPMdistributionbinaryprogram的数据,并将该数据制作成为RPM的格式,以⽅便相同软、硬件平台的使⽤者之安装使⽤。在安装时显的很简单,因为程序打包者的平台与使⽤者所使⽤的平台默认为相同。⾄於SRPMRPMSRPMSRPMRPM并提供使⽤者安装3.假设我想要安装⼀个软件,例如pkgname.i386.rpm,但却总是发⽣⽆法安装的问题,请问我可以加⼊哪些参数来强制安装它?答:可以加⼊--nodeps等参数。例如rpm-ivh--nodeps

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论