献给初学者:谈谈如何学习Linux操作系统

献给初学者:谈谈如何学习Linux操作系统
献给初学者:谈谈如何学习Linux操作系统

献给初学者:谈谈如何学习Linux操作系统

一、选择适合自己的linux发行版

谈到linux的发行版本,太多了,可能谁也不能给出一个准确的数字,但是

有一点是可以肯定的,linux正在变得越来越流行,面对这么多的Linux发行版,打算从其他系统转到linux系统来的初学者可能会感到困惑,即便是忠实的

Linux用户也没有时间和精力去挨个尝试,因此初学者在学习linux的之前,需

要有一个明确的方向,选择一个适合自己的系统开始学习linux至关重要!下面

我们就分类介绍。

1.1初学者入门首选-redhat系列

在学习redhat系列linux之前,首先要了解以下redhatlinux各个发行版本之

间的关系。

1.RedHatLinux

RedHatLinux是redhat最早发行的个人版本的linux,其1.0版本于1994年11月3日发行。虽然其历史不及其它linux发行版本悠久,但比起很多的Linux 发行套件,RedHat的历史悠久得多。自从RedHat9.0版本发布后,RedHat公司就不再开发桌面版的Linux发行套件,RedHatLinux停止了开发,而将全部

力量集中在服务器版的开发上,也就是RedHatEnterpriseLinux版。2004年4

月30日,RedHat公司正式停止对RedHat9.0版本的支持,标志著RedHatLinux的正式完结。原本的桌面版RedHatLinux发行套件则与来自开源

社区的Fedora进行合并,成为FedoraCore发行版本。

目前RedHat分为两个系列:由RedHat公司提供收费技术支持和更新的RedHatEnterpriseLinux,以及由社区开发的免费的FedoraCore。

2.FedoraCore

FedoraCore(缩写为FC)被红帽公司定位为新技术的实验场地,许多新的技

术都会在FC中检验,如果稳定的话红帽公司则会考虑加入RedHatEnterpriseLinux中。

FedoraCore1发布于2003年年末,而FC的定位便是桌面用户。FC提供了

最新的软件包,同时,它的版本更新周期也非常短,仅6个月。由于版本更新

频繁,性能和稳定性得不到保证,因此,一般在服务器上不推荐采用FedoraCore。

其实可以这么认为,Fedora就是RedHat发行RedHat企业版linux的一个

实验版本,以用户做测试,为RedHat企业版发布奠定基础。

3.RedHatEnterpriseLinux

RedHatEnterpriseLinux(缩写为RHEL,RedHat的企业版)。RedHat现在主要做服务器版的linux开发,在版本上注重了性能和稳定性以及对硬件的支持。由于企业版操作系统的开发周期较长,注重性能、稳定性和服务端软件支持,

因此版本更新相对较缓慢。

RedHatEnterpriseLinux又分为4个版本AdvancedServer(AS)、ESWorkstation(WS)、Desktop,它们的差别不太大,只是功能方面的差别。

4.Centos

CentOS全名为“社区企业操作系统”(CommunityEnterpriseOperatingSystem)

CentOS产生的背景:

Redhat发布Redhat9。0后,不再开发redhat10,11……,全面

转向Redhatenterpriselinux(简写为rhel)的开发,和以往不同的是,新的

redhat企业版要求用户先购买lisence,redhat同时承诺确保产品的稳定性,安全性。rhel二进制代码不再提供下载,而是作为redhat服务的一部分,但源代

码依然是开放的。在这种情况下,出现了centos、whitebox、dao等等一批opensource的企业版本,其中以centos最为活跃。

下面讲述centos是如何制作产生的:

CentOS社区将Redhat的网站上的所有源代码下载下来,进行重新编译。由于AS/ES/WS是商业产品,因此,必须将所有Redhat的Logo和标识改成自

己的CentOS标识。比如将AS4.0原版的SRPM源码编译后,换上Centos社

区的logo,这样就成为了CentOS4.0。RedhatEnterpriseLinuxAS4Update1的源码编译后,就成为了CentOS4.1。AS4Update2的源码编译后,就成为了CentOS4.2等等。CentOS就是这样产生的。

因此,可以说CentOS就是Redhat的AS/ES/WS的免费版本,使用centos

可以获得与redhat企业级linux一样的功能和性能。同时centos还提供免费的

长期升级和更新服务。因此,在众多的RHEL的克隆版本中,CentOS是很出

众很优秀的。

虽然说centos是RHEL的克隆,但并不是一模一样,所说的克隆是具有100%的互换性。对于centos其实不尽相同,RHEL的软件在CentOS上面不能保证100%的正常工作。

在了解了Redhat系列各个版本的差异后。其实我们就找到了为何选择Redhatlinux作为初学者入门学习的理由了。

首先:在国内,乃至是全世界的Linux用户最熟悉、最耳闻能详的发行版肯定

就是RedHat了。因为RedHat是linux界的“老大”,美国

RedHat公司发布的RedHatlinux是商业上运作最成功的一个Linux发行套件,因此RedHat公司发行的linux值得信任,RedHatlinux的功能和性能也毋庸置疑。

其次:Redhat现在拥有庞大的网络用户群体,网络linux资源基本90%都是

基于Redhatlinux的,如果您在学习过程中遇到任何问题,随便搜索网络,就

有成千上万的答案展示在你面前。

第三:RedHatlinux系列版本相互补充,相得益彰:如果你第一次接触linux,

那么建议你先安装FedoraCore,FedoraCore安装简单,对硬件支持很好,界

面也很华丽,同时也可以体验Redhatlinux的最新功能;如果你对linux有一定

的了解,需要深入学习,建议你使用CENTOS系统;如果你是在做linux企业

级应用,建议你使用RHEL版本。

最后:redhat应用范围广,具有典型性和代表性,很多系统(例如红旗redflag,中标linux,oracle发布的EnterpriseLinux)都是以RedHatlinux为基准的,因而,可以说学会了RedHatlinux,就能触类旁通,其它类似的linux系统也能很

快掌握;现在周围学习linux的一般也都是以redhatlinux为主,这样交流方便,学习中出现问题,更容易得到解决。同时redhatlinux的安装和使用也是最简单的,因此,基本上不会在”装系统”上浪费过多时间。

1.2企业级应用首选-suselinux

企业级的应用追求的是可靠性和稳定性,这就要求构建企业级应用的系统平

台具有高可靠性和高稳定性。企业级linux的发行版本就是解决的这个问题。

SUSE是德国最著名的Linux发行版,在全世界范围中也享有很高的声誉。2003年11月4日,Novell公司对外宣布将收购SuSE。2004年1月该收购顺

利完成,Novell同时将SuSE正式命名为SuSELinux。Novell公司收购suse,加速了suselinux的发展,suselinux无论在桌面市场还是服务器市场都更加专

业化,据不完全统计,suselinux现在欧洲linux市场占有将近80%的份额,大

部分关键性应用都是建立在suselinux下。由于suse进入中国时间较短,同时

加上suse在中国的营销模式短时间不能被国内接受,因此现在suse在中国的

市场份额还不是很大,但是这些并不影响suselinux高可靠与稳定性的事实,

随着suse的发展,相信suselinux在中国的应用会越来越多。

1.3游戏娱乐首选-UbuntuLinux

说到linux桌面市场,UbuntuLinux几乎占据了桌面linux的半壁江山,UbuntuLinux主打linux桌面之最,界面美观,简易而不失华丽,如果想在

linux下进行娱乐休闲,UbuntuLinux绝对是首选。

Ubuntu的安装非常的人性化,只须按照提示一步一步进行,安装与

Windows一样简单!并且,Ubuntu被誉为对硬件支持最好最全面的Linux发行版之一,许多在其他发行版上无法使用,或者在默认配置时无法使用的硬件,

在Ubuntu上都能轻松搞定。因此你可以像安装windows一样轻松的安装Ubuntu。尽情体验Ubuntulinux带来的乐趣。

1.4linux作为服务器是发展趋势

在上面的章节中主要介绍了几种最常见的linux发行版本,其实linux的发行

版本还有很多很多,比较常见的还有DebianGNU/Linux,Mandriva,Gentoo,Slackware,Knoppix,MEPIS,Xandros,国产的红旗redflag,中标linux等等,这里不再一一介绍,其实纵观linux的各个发行版,linux发行版本无非是

朝着这两个方面而来,一是服务器市场,而是桌面市场。

以UbuntuLinux为代表的linux发行版走的是桌面市场路线,虽然它们给用

户带来很多惊喜,更新也很快,但是由于桌面市场有着windows这样强劲的对手,linux桌面发展举步维艰。

以redhat系列版本为代表的linux发行版现在主要面向企业级linux的服务器

市场,重点开发linux的企业版本,suselinux同样主要力量也集中在开发企业

级linux上面,其它的例如国产redhatflag,中标linux等都重点投入在了linux

服务器市场。linux两大发布厂商现在都走了linux服务器市场的路线,可见

linux作为企业级服务器有着巨大的发展前途,据权威部门统计,linux在服务器市场的占有率每年都在持续上升。

其实很多linux的应用都是针对linux服务器的,本书的讲述也是主要针对linux在服务器下的各种应用展开的。

二、养成良好的linux操作习惯

当你进入linux的学习之后,请不要用windows的工作方式来思考问题,因

为它们之间确实有很大的不同,比如它们之间的内存管理机制,进程运行机制

等都有很大不同,这些异同点将在下面章节陆续讲述,因此,抛开windows那

种思维,用全新的理念尝试去挖掘linux身上特有的潜质,对初学者至关重要。

2.1一定要习惯命令行方式

Linux是一个命令行组成的操作系统,精髓在命令行,无论图形界面发展到

什么水平,命令行方式的操作永远是不会变的,Linux命令有许多强大的功能:从简单的磁盘操作、文件存取、到进行复杂的多媒体图象和流媒体文件的制作

都离不开命令行。虽然linux也有桌面系统,但是X-window也只是运行在命令

行模式下的一个应用程序。

因此,可以这么说,命令是学习linux系统的基础,学习linux,很大程度上

就是学习命令,很多linux高手其实都是玩儿命令很熟的人。

也许对于刚刚从windows系统进入linux学习的初学者来说,立刻进入枯燥

的命令学习,实在太难,但是你一旦学会就爱不释手。因为它的功能实在太强

大了。您未来的学习之路也将会以指数增加的方式增长。

2.2理论结合实践

有很多初学者都会遇到这么一个问题,说到系统的每个命令,都很熟悉,但

是在系统出现故障的时候,面对出现问题的linux系统无从下手了。不知道在什么时候用什么命令去检查系统,这是很多linux新手最无奈的事情了。说到底,就是学习的理论没有很好的与系统实际操作相结合。

很多linux知识,例如每个命令的参数含义,在书本上说的很清楚,看起来

也很容易理解,但是一旦组合起来使用,却并不是那么容易,没有多次的动手

练习,其中的技巧是无法掌握的。

人类大脑不像计算机的硬盘一样,除非硬盘坏掉或者硬盘被格式化,否则储

存的资料将永远而且时刻的记忆在硬盘中。而在人类记忆的曲线中,必须要不

断的重复练习才会将一件事情记得比较熟。同样的,学习Linux也一样,如果

无法经常学习的话,学了后面的,忘记了前面的;还有些linux初学者也学了很多linux知识,但是由于长期不用,导致学过的东西在很短的时间内又忘记了,久而久之,失去了学习的信心。

可见,增加自己Linux的实战技能,只有勤于动手,勇于实践,这也是学好linux的根本。

2.3学会使用linux联机帮助

各个Linux的发行版本的技术支持时间都较短,这对于Linux初学者来说往

往是不够的,其实当安装了一个完整的Linux系统后其中已经包含了一个强大

的帮助,只是可能你还没有发现和使用它们的技巧。例如,对于一个linuxtar

命令的使用,你不是很熟悉,那么只要你在命令行输入mantar,就会得到tar

的详细说明和用法;

主流的linux发行版都自带了非常详细的帮助文档,包括使用说明和FAQ,

从系统的安装到系统的维护,再到系统安全,针对不同层次人群的详尽文档。

仔细阅读文档后60%的问题都可在这里得到解决。

2.4学会独立思考问题,独立解决问题

遇到问题,首先想到的应该是如何自己去解决这个问题,解决方式很多,看

书查资料,网络搜索引擎,技术论坛等等,通过这几种方式,90%的问题都能

得到解决,通过这种方式一方面锻炼了自己独立解决问题的能力。另一方面技

术上也能得到快速提高。

如果通过如上方式实在解决不了的话,可以向人询问,得到答案后要考虑为

何这么做,然后做笔记记录解决过程。最忌讳的方式是只要遇到问题,就去问人,虽然这样可能会很快解决问题,但是长久下去遇到问题就会依赖别人,技

术上也不会进步。

2.5学习专业英语

如果你想深入学习Linux,一定要尝试去看英文文档。因为,技术性的东西

写的最好的,最全面的文档都是英语写的,最先发布的高新技术也都是用英语

写的。即便是非英语国家的人发布技术文档,也都首先翻译成英语在国际学术

杂志和网络上发表。安装一个新的软件时先看README,再看INSTALL,然

后看FAQ,最后才动手安装,这样遇到问题就知道为什么。因此,学习一点专

业的英语是很有必要的。

2.6Linux学习基本步骤

到这里,我们总结一下linux的学习路线图,给各位初学者作为参考。

初级阶段:

1.命令是必须要学的,linux常用的命令大概在80个左右,这些常用命令一定要熟练掌握。

2.掌握linux软件包的常用安装方法,例如源码安装,rpm方式安装等等。

3.学习安装设备驱动程序(比如网卡、显卡驱动)

4.熟悉Grub/Lilo引导程序及简单的修复操作。

5.熟悉Linux文件系统和目录结构以及linux基本运行原理。

6.掌握vi,gcc,gdb等常用编辑器,编译器,调试器。

7.理解shell别名、管道、I/O重定向、输入和输出以及shell简单脚本编程。 8.学习Linux环境下的网络基本组建。

高级阶段:

1:尝试阅读linux内核源码:

这需要具有一定的C、C++语言基础,因为C、C++是linux/unix的核心语言,系统代码都是C写的。

2:尝试编译安装和调试自己的linux内核:

在阅读源码了解了linux底层的运行原理后,完全可以编译一个适合自己的linux系统来。

3:深入学习shell,perl,cgi等脚本语言:

这些脚本语言在linux下非常强大,它们能完成你想做的任何事情,熟练掌

握这些语言,可以让你在linux系统下游刃有余,如鱼得水。

4:构建企业级linux高可用集群系统:

linux下有很多开源免费的集群软件,利用这些免费的集群软件完全可以构建

出与商业unix系统想媲美的集群系统来。

三、用虚拟机软件学习linux

3.1什么是虚拟机软件

虚拟机软件可以在一台电脑上模拟出来若干台PC电脑,每台PC可以运行

单独的操作系统而互不干扰,可以实现一台电脑“同时”运行几个

操作系统,还可以将这几个操作系统连成一个网络。

图1:安装了3台虚拟机的windows系统

比如图1中,是在一台电脑上安装了Windows2000Server,再在

Win2000server上安装虚拟机软件VMWare,利用VMWare模拟出来3台PC,在这3台PC上分别运行RedHatLinux、Win2000和Solaris9forx86操作系统。这4个操作系统同时在一台电脑上运行,互不干扰,并且同在一个局域网内。

听了上面的基本介绍,你可能知道虚拟机软件到底是做什么用的了。那么好,我们继续做更深入的介绍。

3.2使用虚拟机软件的好处

1、如果要在一台电脑上安装linux和windows系统,不用虚拟机的话,有两个办法:一是装多个硬盘,每个硬盘装一个操作系统。这个方法比较昂贵。二

是在一个硬盘上装双系统。这个方法不够安全,因为系统盘的MBR是操作系

统的必争之地,windows更是霸道,每次重新安装系统都要重写系统的MBR,这样的话搞不好会几个操作系统同归于尽。而使用虚拟机软件既省钱又安全,

因此,对于新手来说,利用虚拟机学习linux简直是再好不过了。

2、在虚拟机上安装linux系统,你不用担心会格式化掉自己的硬盘,你甚至

可以随意的对虚拟系统进行任何的设置和更改操作,你可以格式化虚拟系统硬盘,重新分区虚拟系统硬盘等等,因为虚拟机是你真实系统上运行的软件,对

虚拟机系统的任何操作都是对软件的操作。

3、利用虚拟机模拟出来的linux系统和真实的linux系统是一摸一样的,现

在各个公司专门的linux服务器是不会让新手随意去动的,而供测试的linux服

务器一般又很紧缺,在自己电脑上安装虚拟linux系统,可以随意的学习测试,而不受任何环境影响。

3.3虚拟机的运行环境和硬件需求

1:运行环境

VMWare可运行在Windows(WinNT以上)和Linux操作系统上。

VirtaulPC可运行在Windows(Win98以上)和MacOS上。

注:运行虚拟机软件的操作系统叫HostOS,在虚拟机里运行的操作系统叫GuestOS。

2:硬件需求

虚拟机是将两台以上电脑任务集成到一台电脑上来,因此对硬件要求比较高,主要是内存,硬盘和cpu;内存要足够大,因为每个虚拟机都会占用一定的内

存资源,内存的总大小等于各个虚拟系统的总和。可喜的是,现在内存已经很

便宜了,内存就不是问题了。同样,硬盘空间也是每个虚拟机都要占用的,

cpu现在都到了多核阶段,也不是问题。

3.4虚拟机的安装与使用

1.VMware虚拟机概述

上面章节讲到,虚拟机软件有VMWare和VirtualPC,它们各有优缺点,其

中VMWare在全球占领了80%的市场份额,因此我们也主要讲述VMWare的

安装与使用。

VMware是提供一套虚拟机解决方案的软件,主要产品分为如下3个:(1)VMware-ESX-Server:这个版本并不需要操作系统的支持。它本身就

是一个操作系统,用来管理硬件资源。所有的系统都安装在它的上面。带有远

程web管理和客户端管理功能。

(2)VMware-GSX-Server:这个版本就要安装在一个操作系统下了,这个

操作系统叫做HOSTOS。这个HOSTOS可以是Windows2000Server以上的Windows系统或者是Linux(官方支持列表中只有RH,SUSE,Mandrake很少

的几种),和VMware-ESX-Server一样带有远程web管理和客户端管理功能。

(3)VMware-WorkStation:这个版本和VMware-GSX-Server版本的机构

是一样的。也是要安装在一个操作系统下,对操作系统的要求也是

Windows2000以上或者Linux。和Vmware的区别就是没有web远程管理和客户端管理。

VmwareGSXServer不支持虚拟机双CPU,而且已经停止开发新版本,VmwareServer是Vmware公司决定将GSXServer免费后,重修代码后发布的,目前有版本更新。因此我们选择免费的GSXServer作为讲述的版本。

2.虚拟机软件的安装

我们在windows下安装windows版本的VMwareserver,然后在VMwareserver上安装linux操作系统。虚拟机软件的安装很简单,只需按照windows常规方法安装即可完成,这里不在讲述。

3.创建一个虚拟机系统

虚拟机软件安装完毕,双击桌面上的VMwareServer图标以启动应用程序,

Linux系统的安装,我们将在在后面文章中讲述,这里不在多说。

四、linux学习资源

4.1网络资源,搜索引擎,论坛

Linux的开源特性决定了linux知识的开放性和充足性。当今,linux非常流行,linux学习资源也非常之多,书店到处可见linux方面的书籍,选择一本适合自

己的慢慢去学习,再好不过。

除了书本的知识,网络里也有无限的linux学习资源,各大linux技术门户,linux社区论坛,都是学习linux的好地方;在这里,有一批无私奉献的linux狂

热爱好者,他们把自己的学习经验和学习总结无偿的发布出来;他们每天在

linux论坛的各个角落热情的回答广大网友提出的问题;他们不求回报,因为他

们热爱技术,热爱linux。

遇到学习问题,或者要查找某些linux资料,搜索引擎绝对是第一选择,例

如https://www.360docs.net/doc/0e11020806.html,和https://www.360docs.net/doc/0e11020806.html,,99%的技术资料都能在这里搜到。查找linux资料,不要错过这两个优秀的搜索引擎。

4.2有本书在身边

网络中有很多linux学习资源,丰富的学习资源,虽然给我们学习提供了很

好的便捷性,但是也造成了我们学习的盲目性,学习资源的丰富性,引出的另

一个问题是资源的混杂,刚入门的新手感觉无从下手,可能今天看了一点内存

管理的资料,明天学习了一点磁盘管理的资料,并且总是感觉自己理解了也学

会了,但是就是无法灵活的掌握,究其原因,就是没有系统的学习linux。

因此,选择一本好书在自己身边是必须的,一本好书应该是由浅入深,有点

及线,有线及面的介绍知识,选择一本好书,同时结合网络资源进行循序渐进

的学习,此时,你的学习就不会再有空洞感,进步也会飞快。你会感觉学习

linux是一件很快乐的事情。

五、linux的应用领域

很多新手都有一个很疑惑的问题:“我学习linux系统,能在上面干什

么呢,或者说linux系统具体能做什么”,有这样的疑问,也很正常,但

是随着对linux了解的加深,这些疑问就会慢慢消除,下面具体讲述下linux操

作系统的应用领域(也就是linux到底是干啥的)。

1:服务器领域

现在的服务器市场以linux、unix、windows三分天下,linux可谓后起之秀,从产生发展到现在,在服务器应用领域节节攀升,并且每年增长势头迅猛。

Linux作为企业级服务器应用广泛,利用Linux系统可以使企业构架WWW

服务器、代理服务器、邮件服务器、DNS服务器、透明网关、路由器等等,不

但给企业降低了运营成本,同时获得了linux系统带来的高稳定性和高可靠性。

随着linux在服务器领域的广泛应用,这几年来,linux已经悄悄进入政府、

教育、银行、石油等行业,同时各大unix厂商也推出在unix平台支持linux操

作系统,例如IBMAIX。这一切表明,linux在服务器市场前景光明,相信在不

久的将来,linux会渗透到社会各个领域。

2.嵌入式Linux系统

由于Linux系统开放源码,功能强大、可靠、灵活而且具有伸缩性,再加上

它广泛支持大量的微处理器体系结构、硬件设备、图形支持和通信协议,因此,

在嵌入式应用的领域里,从因特网设备到专用的控制系统,Linux操作系统的前景都很光明的。

linux读书笔记

12.29 Linux系统 Linux是真正的多用户、多任务操作系统。它继承了UNIX系统的主要特征,具有强大的信息处理功能,特别在Internet和Intranet的应用中占有明显优势。是一个完整的UNIX类操作系统。它允许多个用户同时在一个系统上运行多道程序。真正的32位操作系统。 用户接口 用户接口定义了用户和计算机交互作用的方式。Linux操作系统提供4种不同的用户接口。命令行接口 命令行是为具有操作系统使用经验,熟悉所用命令和系统结构的人员设计的。功能强大,使用方便的命令行是UNIX/Linux系统的一个显著特征。支持命令行的系统程序是命令解释程序。它的主要功能是接收用户输入的命令,然后予以解释并执行。 “$ ”是系统提示符。 在UNIX/Linux系统中,通常将命令解释程序称为shell。各种Linux环境下都安装了多种shell。这些shell由不同的人编写并得到一部分用户的青睐,各有其优势,最常用的几种是Bourne shell(sh),C shell(csh),Bourne Again shell(bash)和Korn shell(ksh)。红旗Linux 的默认shell是bash。 Bash 菜单 图形用户接口 程序接口 程序接口也称为系统调用接口。用户在自己的C程序中使用系统调用,从而获得系统提供的更基层的服务。 系统调用是操作系统内核与用户程序,应用程序之间的接口。在UNIX/Linux系统中,系统调用以C函数的形式出现。例如:fd=fopen(“file1.c”,2);其中,open是系统调用。 所有内核之外的程序都必须经由系统调用才能获得操作系统的服务。系统调用只能在C程序中使用,不能作为命令在终端上执行。由于系统调用能直接进入内核执行,所以其执行效率高。 Linux的版本 Linux有两种版本:核心(Kernel)版本和发行(Distribution)版本。 核心版本 核心版本主要是Linux的内核。Linux内核的官方版本由Linus Torvalds本人维护着。核心版本的序号由三部分数字构成,其形式为:major.minor.patchlevel 其中,major是主版本号,minor是次版本号,二者共同构成了当前核心版本好;patchlevel 表示对当前版本的修订次数。例如:2.6.34表示对2.6核心版本的第34次修订。

Linux操作系统基础教程

Linux操作系统基础教程 清华大学信息学院计算机系 目录 前言 (2) 第一讲 Linux基础 (2) 一.什么是Linux? (2) 二.安装Linux的好处? (3) 三.如何得到Linux? (3) 四.如何得到Linux的最新消息? (3) 五.Linux操作系统上有什么应用? (4) 六.在那里可以找到讨论区? (5) 七.安装过程 (5) 第二讲 Linux基础进阶 (5) 一.Linux的文件系统结构 (6) 二. 文件类型 (7) 三.Linux基本操作命令 (8) 四.基本的系统管理命令 (14) 五.关於 Process 处理的指令 (16) 六. 关於字串处理的指令 (17) 七. 网路上查询状况的指令 (17) 八. 网路指令 (18) 九. 关於通讯用的指令 (21) 十. 编译器( Compiler ) (22) 十一. 有关列印的指令 (22) 第三讲 Linux下的网络服务,配置问题和常用工具 (24) 一.Linux下的网络服务 (24) 二.几种重要的配置文件 (26) 三.Linux下常用的工具软件 (28) 尾语 (31)

前言 Linux是在1991年发展起来的与UNIX兼容的操作系统,可以免费使用,它的源代码可以自由传播且可任人修改、充实、发展,开发者的初衷是要共同创造一个完美、理想并可以免费使用的操作系统。 我们并不能使同学们通过这次系列讲座成为一个UNIX类操作系统的高手,这次系列讲座的目的就是在同学们中间普及Linux基础知识,为今后我们更加接近的了解Linux做一个好的开端。 第一讲 Linux基础 在这一讲中,我们主要是了解一下Linux的概况,以及对Linux有一个初步的感性认识。 一.什么是Linux? Linux是一个以Intel系列CPU(CYRIX,AMD的CPU也可以)为硬件平台,完全免费的UNIX兼容系统,完全适用于个人的PC。它本身就是一个完整的32位的多用户多任务操作系统,因此不需要先安装DOS或其他的操作系统(MS Windows, OS2, MINIX..)就可以进行直接的安装。Linux的最早起源是在1991年10月5日由一位芬兰的大学生Linux Torvalds (Torvalds@kruuna.helsinki.fi)写了Linux核心程序的0.02版开始的,但其后的发展却几乎都是由互联网上的Linux社团(Linux Community)互通交流而完成的。Linux不属于任何一家公司或个人,任何人都可以免费取得甚至修改它的源代码(source code)。Linux上的大部分软件都是由GNU倡导发展起来的,所以软件通常都会在附着GNU Public License(GPL)的情况下被自由传播。GPL是一种可以使你免费获得自由软件的许可证,因此Linux使用者的使用活动基本不受限制(只要你不将它用于商业目的),而不必像使用微软产品是那样,

习题答案-Linux操作系统原理实践教程-崔继-清华大学出版社

第1章 1、在VMwane中安装CentOS 7的基本步骤有哪些? (1)新建虚拟机 (2)虚拟机设置 (3)启动虚拟机 (4)设置安装信息,包括软件选择,安装位置,分区等 (5)完成最后安装 2、安装Linux时可以设置哪些分区?有哪些分区是必须的? 能够设置的分区可以根据安装系统时提示,主要包括:/,/boot,swap,/home,/opt 等等;其中/(根)分区是必须的。 第2章 1、针对Linux 系统启动运行,有哪些运行目标?每个运行目标的含义是什么? CentOS 从7.0 开始使用systemd 代替init 作为系统启动和服务器守护进程的管理器,负责在系统启动或运行时,激活系统资源,管理服务器进程。systemd 用目标(target)替代了运行级别的概念,提供了更大的灵活性,比如可以继承一个已有的目标,并添加其他服务来创建自己的目标。CentOS 7.0 之前的运行级别和systemd 目标之间的对应关系如下表所示。 2、Linux 有几种关机方法,每种关机操作有何异同? 关闭系统的命令有: shutdown(最安全的方式),halt,init,telinit,poweroff,reboot,具体含义可以参考

帮助手册页。 第3章 more、less、cat、wc 命令有什么区别? 这几个命令可用于对文本文件的处理显示,主要区别在:more命令以分页(一次一屏)显示文本信息;less类似于more,但增加了回滚功能;cat本意是连接文件并在标准输出上输出,也就是将文件一次全部输出;wc用于统计输出文件中的行数、单词数、字节数等。 第4章 (1)发出命令显示行号。 底端命令方式下 :set nu (2)保存到文件AboutLinux,并不退出。 底端命令方式下 :w AboutLinux (3)删除一句“It is this kernel that forms the base around which a Linux operating system is developed.”。 在命令方式下,先把光标移到It处,再按d$。(从当前光标处到行末的所有字符删除)(4)查找单词“Finland”。 命令方式下输入/Finland,回车后会在第一个Finland处停下来。 (5)把第一段的“Finland”单词后的内容换行,使其变成三段内容。 插入方式下,将光标移到Finland后,按回车键即可。(vi的换行标志是回车符) (6)将第二段的内容复制到文档的最后。 命令方式下:先用yy命令,然后移到文档最后,再按p键。 (7)删除第三段的内容。 命令方式下,光标移到第三段,用dd命令。(注,这里的段实际上是第3行。) (8)恢复被删除的一段内容。 命令方式下,用u命令。 (9)查找所有的“Minix”单词,并全部改为“MINIX”。 底端命令方式下,:1,$s/Minix/MINIX/g (10)不保存修改,退出vi。 底端命令方式下,:q! (11)使用vi再次打开文件AboutLinux,在第二段后插入“He began his work in 1991 when he released version 0.02 and worked steadily until 1994 when version 1.0 of the Linux Kernel was released.”。 shell命令提示符下输入:vi AboutLinux(打开保存的文件)

达内linux基本操作笔记

登陆服务器时输入公帐号openlab-open123 telnet 192.168.0.23 自己帐号sd08077-you0 ftp工具192.168.0.202 tools-toolss 老师测评网址http://172.16.0.198:8080/poll/ 各个shell 可互相切换 ksh:$ sh:$ csh:guangzhou% bash:bash-3.00$ 一、注意事项 命令和参数之间必需用空格隔开,参数和参数之间也必需用空格隔开。 一行不能超过256个字符;大小写有区分。 二、特殊字符含义 文件名以“.”开头的都是隐藏文件/目录,只需在文件/目录名前加“.”就可隐藏它。 ~/ 表示主目录。 ./ 当前目录(一个点)。 ../ 上一级目录(两个点)。 ; 多个命令一起用。 > >> 输出重定向。将一个命令的输出内容写入到一个文件里面。如果该文件存在,就将该文件的内容覆盖; 如果不存在就先创建该文件,然后再写入内容。 输出重定向,意思就是说,将原来屏幕输出变为文件输出,即将内容输到文件中。 < << 输入重定向。本来命令是通过键盘得到输入的,但是用小于号,就能够使命令从文件中得到输入。 \ 表示未写完,回车换行再继续。 * 匹配零个或者多个字符。 ? 匹配一个字符。 [] 匹配中括号里的内容[a-z][A-Z][0-9]。 !事件。 $ 取环境变量的值。 | 管道。把前一命令的输出作为后一命令的输入,把几个命令连接起来。 |经常跟tee连用,tee 把内容保存到文档并显示出来。 三、通用后接命令符 -a 所有(all)。 -e 所有(every),比a更详细。 -f 取消保护。 -i 添加提示。 -p 强制执行。

linux基础篇之常用命令(一)

Linux常用命令(一) 虽然Linux发行版支持各种各样的饿GUI(graphical user interfaces),但在某些情况下,Linux的命令行接口(bash)仍然是简单快速的。Bash和Linux Shell需要输入命令来完成任务,因而被称为命令行接口。 命令是计算机执行任务的指令。可以使用命令去关闭计算机,或者列出当前目录的文件列表,或当前文本的内容,或者屏幕显示一条消息。 如果你是一个新手,并尝试使用命令行接口,我们收集了各种基本的Linux命令来供你学习,帮你在各种Linux发行版中完成各种任务。虽然不是很详细,但是对Linux初学者,或普通用火,或管理员都是很有用的。 1.Is-List ls会列举出当前工作目录的内容(文件或文件夹),就跟你在GUI中打开一个文件夹去看里面的内容一样。 2.mkdir —Make Directory mkdir 用于新建一个新目录 3.pwd —Print Working Directory pwd显示当前工作目录 4.cd—Change Directory 对于当前在终端运行的会中中,cd 将给定的文件夹(或目录)设置成当前工作目录。

5.rmdir—Remove Directory rmdir 删除给定的目录。 6.rm—Remove rm 会删除给定的文件或文件夹,可以使用rm -r 递归删除文件夹 7.cp—Copy cp 命令对文件或文件夹进行复制,可以使用cp -r 选项来递归复制文件夹。 8.mv—Move mv 命令对文件或文件夹进行移动,如果文件或文件夹存在于当前工作目录,还可以对文件或文件夹进行重命名。

xlib库基本图形编程技术文档新手入门linux时代开源、自由、共享...

xlib库基本图形编程技术文档新手入门linux时代开源、自 由、共享... Xlib库基本图形编程 Basic Graphics Programming With The Xlib Library http://users.actcom.co.il/~choo/lupg/tutorials/xlib-programming/ xlib-programming.html 1. Preface 2. The Client And Server Model Of The X Window System 3. GUI programming - the Asynchronous Programming Model 4. Basic Xlib Notions 1. The X Display 2. The GC - Graphics Context 3. Object Handles 4. Memory Allocation For Xlib Structures 5. Events 5. Compiling Xlib-Based Programs 6. Opening And Closing The Connection To An X Server 7. Checking Basic Information About A Display 8. Creating A Basic Window - Our "hello world" Program 9. Drawing In A Window

1. Allocating A Graphics Context (GC) 2. Drawing Primitives - Point, Line, Box, Circle... 10. X Events 1. Registering For Event Types Using Event Masks 2. Receiving Events - Writing The Events Loop 3. Expose Events 4. Getting User Input 1. Mouse Button Click And Release Events 2. Mouse Movement Events 3. Mouse Pointer Enter And Leave Events 4. The Keyboard Focus 5. Keyboard Press And Release Events 5. X Events - A Complete Example 11. Handling Text And Fonts 1. The Font Structure 2. Loading A Font 3. Assigning A Font To A Graphics Context 4. Drawing Text In A Window 12. Windows Hierarchy 1. Root, Parent And Child Windows 2. Events Propagation 13. Interacting With The Window Manager

2016操作系统原理在线作业

窗体顶端 您的本次作业分数为:100分单选题 1.【第01~04章】以下描述中,()并不是多线程系统的特长。 A 利用线程并行地执行矩阵乘法运算。 B web服务器利用线程请求http服务 C 键盘驱动程序为每一个正在运行的应用配备一个线程,用来响应相应的键盘输入。 D 基于GUI的debugger用不同线程处理用户的输入、计算、跟踪等操作。 正确答案:C 单选题 2.【第01~04章】现代操作系统的基本特征是()、资源共享和异步性。 A 多道程序设计 B 中断处理 C 实现分时与实时处理 D 程序的并发执行 正确答案:D 单选题 3.【第01~04章】操作系统的进程管理模块并不负责()。 A 进程的创建和删除 B 提供进程通信机制 C 实现I/O设备的调度 D 通过共享内存实现进程间调度。 正确答案:C 单选题 4.【第01~04章】下列选择中,()不是操作系统必须要解决的问题。 A 提供保护和安全机制 B 管理目录和文件 C 提供应用程序接口

D 提供C++语言编译器 正确答案:D 单选题 5.【第01~04章】用户在程序中试图读存放在硬盘中某文件的第10逻辑块,使用操作系统提供的接口是()。 A 进程 B 系统调用 C 库函数 D 图形用户接口 正确答案:B 单选题 6.【第01~04章】操作系统的管理部分负责对进程进行调度。 A 主存储器 B 控制器 C 运算器 D 处理机 正确答案:D 单选题 7.【第01~04章】下面关于进程的叙述不正确的是()。 A 进程申请CPU得不到满足时,其状态变为就绪状态。 B 在单CPU系统中,任一时刻有一个进程处于运行状态。 C 优先级是进行进程调度的重要依据,一旦确定不能改变。 D 进程获得处理机而运行是通过调度而实现的。 正确答案:C 单选题 8.【第01~04章】下列选项中,操作系统提供给应用程序的接口是()。 A 系统调用 B 中断 C 库函数

linux笔记

1.ls:查看当前路径下的文件以及文件夹的名字 2.ls /bin:查看根目录下的bin文件夹的东西 3.cd Desktop进入到Desktop文件夹 4.cd ..跳转到当前路径的上一层 5.pwd:显示当前操作的路径(绝对路径) 6.clear:清屏 7.绝对路径:/home/python 8.相对路径:cd downloads 9..表示当前路径 10...表示上一层路径 11.c d -:跳转到上一层所在的路径 12.t ab自动补全 13.t ouch 1.txt 创建文件 14.l s * 表示显示所有文件 15.l s *.txt 表示显示以所有.txt结尾的文件 16.l s*.t[xn]t 表示显示以txt或者tnt结尾的所有文件 17.m ore 查看文件的内容 18.l s–alh | more 查看文件的内容并以管道符号进行连接 19.c d ~切换到当前用户的主目录 20.m kdir 创建文件夹 21.m kdira/b/c –p 连续创建文件夹 22.t ree 以目录数的方式显示

23.r mdir 删除文件夹(必须是空目录) 24.实物图操作的文件不会被删除直接进回收站 25.用命令删除的文件是不会进入回收站的 26.r m 删除文件/文件夹 27.r m haha.txt –r 直接删除文件夹(-r表示递归的删除) 28.r m haha.txt –i 给将删除的文件一个删除提示 29.r m haha.txt –f 强制删除 30.l inux建立链接影响(相当于创建windows下的快捷方式) 31.l n 01.txt 创建快捷方式 32.g edit 01.txt 编辑文件的内容 33.c at 01.txt 查看所编辑的内容 34.c at 01.txt > 02.txt 合并文件 35.g rep–n ‘a’grep.txt 搜素文件当中带a的文件 36.g rep–i ‘a’grep.txt搜素文件当中带a的文件(忽略大小写) 37.–-help 查找帮助文档 38.f ind 查找文件 39.c p a b 将a文件下的内容整体复制到b文件夹下(无效的文 件无法复制) 40.c p a/* b 将a文件夹下的所有内容复制到b文件夹下 41.m v a b 将a文件夹整体移动到b文件夹下 42.–v 显示移动进度 43.–I 表示操作的时候显示的提示(y表示确定)

西安交大网络教育秋操作系统原理在线作业习题答案100分

《操作系统原理》习题答案 一、单项选择题 1、(信号量)是一种只能进行P、V操作的特殊变量。 2、一个进程是(PCB结构与程序和数据的组合)。 3、操作系统中,当(时间片完),进程从执行状态转变为就绪状态。 4,设有三个作业J1,J2,J3同时到达,运行时间分别为T1,T2,T3,且T1≤T2 ≤ T3。若它们在一台处理机上按单道运行,采用短作业优先算法,则平均周转时间为(T1+ 2/3T2 + 1/3T3)。 5、在操作系统中,死锁出现是指(若干进程因竞争资源而无限等待其他进程释放已占有的资源) 6.若系统有三个并发进程,都需要同类资源4个,试问该系统不会发生死锁的最少资源数是( 10 ) 。 7、预防死锁的论述中,(可以通过破坏产生死锁的四个必要条件之一或其中几个的方法,来预防发生死锁)条是正确的论述。 8、关于死锁与不安全状态的关系,下列描述正确的有(死锁是一种不安全状态): 9、银行家算法是一种(死锁避免)算法。 10、以下哪种算法不属于多个分区的可变分区存储管理方式的主存分配算法(最后适应分配算法) 11、在固定分区管理方式中,处理器执行作业时,对每条指令中的地址要求满足(下限地址≤绝对地址≤上限地址) 12、以下叙述中,不正确的是(采用动态和静态重定位的系统都支持“程序浮动”) 13、在页式存储管理中,假定地址用m个二进制位表示,其中页内地址部分占用了n个二进制位,那么最大的作业允许有(2(m-n) )个页面。 14、关于一个分区的存储管理,以下叙述不正确的是(一个分区的存储管理中,必须采用动态重定位的方式进行地址转换) 15、下面哪种算法不属于页式虚拟存储管理中的页面调度算法(优先数调度算法) 16、缺页中断率与哪个因素无关(作业的逻辑地址) 17、很好地解决了“零头”问题的存储管理方法是(页式存储管理) 18、在存储管理中,(可变分区管理)可与覆盖技术配合. 19、虚拟存储器的最大容量(由计算机的地址结构决定) 20、下述(先进先出)页面淘汰算法会产生BELADY现象. 21、计算机系统的二级存储包括(主存储器和辅助存储器) 22、以下关于主存空间的说法中正确的是(操作系统与硬件的接口信息、操作系统的管理信息和程序等存放在主存储器的系统区) 23、联想存储器在计算机系统中是用于(地址变换) 24、以下有关可变分区管理中采用的主存分配算法说法中错误的是(最佳适应算法是最好的算法,但后过的较大作业很难得到满足)

传智 韩顺平 linux 课程笔记1(吐血整理)

Linux视频教程(韩顺平)听课笔记1 (RedHat) 1、老师联系方式:hanshunping@https://www.360docs.net/doc/0e11020806.html, 2、linux for工作 (1)linux系统管理员——linux系统的维护、配置等 (2)linux程序员——需c/c++、java,php、jsp等 ①linux软件工程师(pc) ②linux嵌入式开发(单片机、芯片) 3、学习linux的步骤 (1)第一阶段:linux平台上的开发,包括vi,gcc,gdb,make,jdk,tomcat,mysql...和linux基本操作 (2)第二阶段:加厚c语言功底《c专家编程》或是java语言 (3)第三阶段:学习unix环境高级编程《unix环境高级编程》 (4)第四阶段:linux应用系统开发/linux嵌入式开发 4、计算机学习的正确道路 5、推荐书籍 -《鸟哥的Linux的私房菜基础学习篇》鸟哥、许伟、林彩娥等编著 -《Linux编程从入门到精通》宫虎波编著 -《Linux内核完全剖析》赵炯编著 6、关机命令 shutdown -h now立即进行关机 shutdown -r now现在重新启动计算机 -t sec : -t后面加秒数,即”过几秒后关机” -k: 不是要真的关机,只是发送警告信息

-r: 在将系统的服务停掉之后就重新启动 -h: 将系统服务停掉后,立即关机 -n: 不经过init程序,直接以shutdown关机 -f: 关机并启动之后,强制略过fsck的磁盘检查 -F: 系统重新启动之后,强制进行fsck的磁盘检查 -c: 取消已经在进行的shutdown命令内容 reboot 现在重新启动计算机 7、用户登录 登录时尽量少用root账户登录,因为它是系统管理员,最大的权限,难免操作失误。可以利用普通用户登录,登录后再用“su -”命令来切换成系统管理员身份。 8、进入桌面(命令行界面进入图形界面) startx 9、用户注销 在提示符下输入logout即可。 10、vi进行开发java和c/c++程序 -java程序 -vi Hello.java -输入i,进入到插入模式,写好代码 -输入Esc键,进入命令模式 -输入冒号:[wq 表示退出保存,q!表示退出不保存] -编译javac Hello.java -运行java Hello -c程序 -gcc o自定义文件名Hello.cpp[参数o表示可自定义生成的out文件名,否则默认为a. out]

献给初学者:谈谈如何学习Linux操作系统

献给初学者:谈谈如何学习Linux操作系统 一、选择适合自己的linux发行版 谈到linux的发行版本,太多了,可能谁也不能给出一个准确的数字,但是 有一点是可以肯定的,linux正在变得越来越流行,面对这么多的Linux发行版,打算从其他系统转到linux系统来的初学者可能会感到困惑,即便是忠实的 Linux用户也没有时间和精力去挨个尝试,因此初学者在学习linux的之前,需 要有一个明确的方向,选择一个适合自己的系统开始学习linux至关重要!下面 我们就分类介绍。 1.1初学者入门首选-redhat系列 在学习redhat系列linux之前,首先要了解以下redhatlinux各个发行版本之 间的关系。 1.RedHatLinux RedHatLinux是redhat最早发行的个人版本的linux,其1.0版本于1994年11月3日发行。虽然其历史不及其它linux发行版本悠久,但比起很多的Linux 发行套件,RedHat的历史悠久得多。自从RedHat9.0版本发布后,RedHat公司就不再开发桌面版的Linux发行套件,RedHatLinux停止了开发,而将全部 力量集中在服务器版的开发上,也就是RedHatEnterpriseLinux版。2004年4 月30日,RedHat公司正式停止对RedHat9.0版本的支持,标志著RedHatLinux的正式完结。原本的桌面版RedHatLinux发行套件则与来自开源 社区的Fedora进行合并,成为FedoraCore发行版本。 目前RedHat分为两个系列:由RedHat公司提供收费技术支持和更新的RedHatEnterpriseLinux,以及由社区开发的免费的FedoraCore。 2.FedoraCore FedoraCore(缩写为FC)被红帽公司定位为新技术的实验场地,许多新的技 术都会在FC中检验,如果稳定的话红帽公司则会考虑加入RedHatEnterpriseLinux中。 FedoraCore1发布于2003年年末,而FC的定位便是桌面用户。FC提供了 最新的软件包,同时,它的版本更新周期也非常短,仅6个月。由于版本更新 频繁,性能和稳定性得不到保证,因此,一般在服务器上不推荐采用FedoraCore。 其实可以这么认为,Fedora就是RedHat发行RedHat企业版linux的一个 实验版本,以用户做测试,为RedHat企业版发布奠定基础。 3.RedHatEnterpriseLinux RedHatEnterpriseLinux(缩写为RHEL,RedHat的企业版)。RedHat现在主要做服务器版的linux开发,在版本上注重了性能和稳定性以及对硬件的支持。由于企业版操作系统的开发周期较长,注重性能、稳定性和服务端软件支持, 因此版本更新相对较缓慢。

操作系统原理-Linux下的内存分配与回收的管理

广州大学学生实验报告 开课学院及实验室:计算机科学与工程实验室2014年11月19日 学院计算机科学与 教育软件学院 年级/专 业/班 姓 名 学号 实验课 程名称 操作系统实验成绩 实验项目名称Linux下的内存分配与回收的管理 指导 老师 张艳玲 一、实验目的 在Linux环境下利用下列系统调用malloc(),free()编写一段程序实现内存分配与回收的管理。 二、实验器材 1、计算机一台。 2、Linux 三、实验内容 1.返回已分配给变量的内存地址; 2.返回释放后的内存地址; 3.释放已分配的内存空间后,返回释放内存后未使用内存的大小。 四、实验步骤、记录和结果 源代码有错,不能正常运行,使用纯C语言,修改正如下。 黄色底色的为新增代码新增注释为绿色底色 #include /* For _MAX_PATH definition */ #include //#include //#include #include //void main() int main() { // int *string; char *string; // string =(int*) malloc(10 ); string = (char*) malloc(sizeof(char)*10); if( string == NULL )

printf( "Insufficient memory available\n" ); else { printf( "Memory space allocated for path name\n" ); /*printf ("string=%d\n",string);*/ // cout<<"string="< #include int main(){ char *string = (char*) malloc(sizeof(char)*10);

南开18秋学期(1703)《操作系统原理》在线作业

(单选题) 1: 当进程执行中需要等待从磁盘上读取数据时,进程的状态将()。 A: 从就绪变为运行态 B: 从运行变为就绪态 C: 从阻塞变为就绪态 D: 从运行变为阻塞态 正确答案: (单选题) 2: 在操作系统分类中对于可靠性和安全性要求较高的是()。 A: 批处理系统 B: 分时处理系统 C: 实时处理系统 D: 个人机操作系统 正确答案: (单选题) 3: 在设备管理中引入I/O缓冲机制是为了缓和()之间的速度不匹配问题。A: 内存与处理器 B: 内存与外设 C: 处理器与外设 正确答案: (单选题) 4: 在页式存储管理中,其虚地址存储空间是() A: 一维的 B: 二维的 C: 三维的 正确答案: (单选题) 5: UNIX文件系统采用( )逻辑结构对文件进行管理。 A: 网状文件 B: 记录式文件 C: 索引文件 D: 3流式文件 正确答案: (单选题) 6: 在文件系统中,使用( )信息实现对文件的管理。 A: 文件存储位置 B: 文件目录 C: 文件内容 正确答案: (单选题) 7: 进程所具有的()及并发性是两个很重要的属性。 A: 动态性 B: 易用性 C: 顺序性 D: 静态性 正确答案: (单选题) 8: 所谓进程调度,其调度的对象和任务分别是( )。 A: 进程,从就绪队列中按一定的调度策略选择一个进程占用CPU B: 数据,将程序中使用的数据调入内存 C: 指令,将指令从外存储空间调入内存 正确答案: (单选题) 9: 计算机系统采用多道并发技术将会() A: 缩短每个程序的执行时间 B: 使系统效率随着并行道数的增加成正比增加 C: 使用设备时不发生冲突 D: 提高了系统的整体执行效率 正确答案: (单选题) 10: 在系统中增加cache可以缓解()之间的速度不匹配性。 A: 硬盘与内存

Linux 操作系统shell学习笔记 (linux系统)

Linux 操作系统shell学习笔记(linux系统) linux软件开发 No.001 文件安全与权限 1. umask 决定了新建文件的权限 2. 软链接(符号链接) ln -s source_path target_path No.002 find和xargs 1. find pathname -options [-print -exec -ok] 其中exec参数的命令格式:'command-' {} \; 注意必须包含【{} \;】 -perm 按权限来查找ex. find . -perm 755 -print -mtime 按修改时间来查找ex. find / -mtime -5 -print 更改时间5天以内 find / -mtime +5 -print 更改时间5天以前 2. xargs与-exec和-ok类似,但是限制更少,也更快 3种参数的命令:find . -name "*.c" -exec wc -l {} \; find . -name "*.c" -ok wc -l {} \; 每次执行命令前有提示 find . -name "*.c" | xargs wc -l No.003 后台执行命令 1. [crontab] [at] [&] [nohup]四种

No.004 文件名置换 1. 列出隐藏文件ex. ls .* No.005 shell输入与输出 1. echo输出时加上-n 参数不换行,ex. echo -n "aaaa" 2. tee 命令可以同时输出到屏幕和文件中ex. ls | tee file.out 3. 标准输入0 标准输出1 标准错误2 4. 将标准输出和标准错误输入到一个文件ex. command >file.out 2>&1 No.006 命令执行顺序 1. 命令1 && 命令2 命令1执行成功后才会执行命令2 2. 命令1 || 命令2 命令1执行失败后才会执行命令2 No.007 正则表达式 1. 正则表达式元字符及含义 ^ 只匹配行首 $ 只匹配行尾

linux基础教程考试及答案

linux基础教程考试及答案 1 / 8

————————————————————————————————作者:————————————————————————————————日期: 2 / 8

(由于大部分内容是本人做的,如果答案有疑问 或错误的请和我联系) 一、填空题 1、某文件的权限为:drw-r--r--,用数值形式表示该权限,则该八进 制数为:( 644 ) 2、使用vi编辑器后,在指令模式下输入( wq )保存编辑的文件 后离开vi编辑环境。 3、在控制台登陆后,可以通过键入( sartx )或 xinit来启动图形 化桌面。 4、在终端上假设当前登陆的用户是Test,切换登陆的用户为Student 的命令是( su student )。 5、启动Apache服务器的命令是( service httpd start )。 6、查看文件sneakers.txt开始的十行( head sneakers.txt )。 7、显示所有文件的命令是( ls -a ) 8、挂载U盘(设U盘设备名为sda2,具体用fdisk –l命令查看U盘 设备名)中的内容,至/mnt/usb/sda下的命令是(ls -a mount /dev/sda2 /mnt/usb/sda ) 9、在linux系统上做备份可以有两种类型:(用户备份) 和(系统备份)。 10、链接分为:(硬链接)和(符号链接)。 11、安装Linux系统对硬盘分区时,必须有两种分区类型:(文件 系统分区)和(交换分区)。 12、vi编辑器具有两种工作模式:(命令模式)和(输入 模式)。 13、Sendmail邮件系统使用的两个主要协议是:(SMTP )和( POP),前者用来发送邮件,后者用来接收邮件。 14、mv 命令可以(移动文件和目录),还可以(重命名文件、目录)。 15、shell不仅是(用户命令的解释器),它同时也是一种功能强大的编程语言。(bash )是Linux的缺省shell。 16、增加一个用户的命令是:(adduser )或(useradd )。 二、单项选择题(30分,每题2分) 1、在命令: [root@teacher root]# rpm -qa|grep vsftpd的功能是( A )。 A. 安装vsftpd B. 启动vsftpd C. 检查系统是否已安装vsftpd D. 运行vsftpd程序 2、删除文件命令为:( D )。 A. mkdir B. rmdir C. mv D. rm 3、关闭linux系统(不重新启动)可使用( A )命令。 A.power off B. ctrl+alt+del C. shutdown -r D. reboot 4、对名为fido的文件用chmod 551 fido 进行了修改,则它的许可权是( D )。 A. -rwxr-xr-x B. -rwxr--r— C. -r--r--r— D. -r-xr-x—x 5、下面不是对Linux操作系统特点描述的是(B ) A、良好的可移植性 B、单用户 C、多用户 D、设备独立性 6、下面哪个命令不能用来显示文本的内容(C) A、more B、less C、find D、cat 3 / 8

一篇非常好的linux学习笔记分享(Linux入门绝佳)

作者:佚名字体:[增加减小] 来源:互联网时间:03-06 21:54:44我要评论 一篇非常好的linux学习笔记分享,对于常用命令整理的比较详细,推荐使用。 linux目录架构 / 根目录 /bin 常用的命令binary file 的目錄 /boot 存放系统启动时必须读取的档案,包括核心(kernel) 在内 /boot/grub/menu.lst GRUB设置 /boot/vmlinuz 内核 /boot/initrd 核心解壓縮所需RAM Disk /dev 系统周边设备 /etc 系统相关设定文件 /etc/DIR_COLORS 设定颜色 /etc/HOSTNAME 设定用户的节点名 /etc/NETWORKING 只有YES标明网络存在 /etc/host.conf 文件说明用户的系统如何查询节点名 /etc/hosts 设定用户自已的IP与名字的对应表 /etc/hosts.allow 设置允许使用inetd的机器使用 /etc/hosts.deny 设置不允许使用inetd的机器使用 /etc/hosts.equiv 设置远端机不用密码 /etc/inetd.conf 设定系统网络守护进程inetd的配置 /etc/gateways 设定路由器 /etc/protocols 设定系统支持的协议 /etc/named.boot 设定本机为名字服务器的配置文件 /etc/sysconfig/network-scripts/ifcfg-eth0 设置IP /etc/resolv.conf 设置DNS /etc/X11 X Window的配置文件,xorg.conf 或XF86Config 這兩個X Server 的設定檔/etc/fstab 记录开机要mount的文件系统 /etc/inittab 设定系统启动时init进程将把系统设置成什么样的runlevel /etc/issue 记录用户登录前显示的信息 /etc/group 设定用户的组名与相关信息 /etc/passwd 帐号信息 /etc/shadow 密码信息 /etc/sudoers 可以sudo命令的配置文件 /etc/securetty 设定哪些终端可以让root登录 /etc/login.defs 所有用户登录时的缺省配置

Ubuntu Linux 入门

Ubuntu Linux 入门 安装Ubuntu Linux 前的准备工作 1. 确认电脑是否可以安装Ubuntu 如今Ubuntu 的硬件支持已经相当完善,只要不是特别少见的硬件都可以正常使用。而且Ubuntu 可以自动侦测安装硬件驱动程序,除了少数硬件需要安装版权受限的附加驱动之外,大多数硬件都不需要手动安装驱动程序。如果不能确定硬件是否能够正常工作,可以尝试使用Wubi 安装Ubuntu 进行测试,具体步骤可参阅Ubuntu Linux 入门(二):安装Ubuntu Linux 。 Ubuntu 的系统配置要求不高,以Ubuntu 11.04 桌面版本为例,最低硬件需求如下:CPU:主频1 GHz 以上 内存:384 MB 以上 硬盘:5 GB 以上 对于目前主流的个人计算机来说,达到上述配置并不困难,主要需要保证的是有足够的硬盘空间,推荐保留给Ubuntu 的自由空间为20 GB 以上。 2. 下载Ubuntu 光盘镜像 推荐大家到 Ubuntu 官方网站下载Ubuntu 光盘镜像,推荐大家下载最新版本的Ubuntu 11.04 Desktop CD光盘镜像。 访问https://www.360docs.net/doc/0e11020806.html,/download/ubuntu/download,页面中会有两个选项可供选择: 版本:目前可供下载的版本有“Ubuntu 11.04 –Latest version”和“Ubuntu 10.04 LTS –Long-term support”。前者是当前的最新版本,后者则是当前最新的长期支持版版本。对于普通使用者来说,推荐大家选择最新版本。 架构:Ubuntu 支持32 位和64 位的计算机,Linux 的可移植性强于Windows,所以使用64 位Ubuntu 所出现的兼容性问题较Windows 少,但是部分专有软件如Adobe Flash Player 对64 位Linux 的支持仍然不甚完美,因此推荐大家下载32 位版本。 设置完毕之后点击Download 按钮就可以开始下载,Ubuntu 网站会自动寻找距离你较近的服务器提供下载。 3. 选择安装方式 Ubuntu 有两种安装方式,一种是将Ubuntu 安装到某个Windows 分区,也就是所谓的Wubi 安装;另一种则是将Ubuntu 安装到独立的Linux 分区之中。 Wubi 是Windows-based Ubuntu Installer 的缩写,意为基于Windows 的Ubuntu 安装程序。就如字面所说,Wubi 是一个建基于Windows 的Ubuntu 安装程序,是将Ubuntu 以一个软件的形式安装在Windows 系统之中。 对于新手来说,Wubi 安装较为简便,可以直接在Windows 中安装,不需要准备可启动的安装介质,也不涉及调整分区的操作。Wubi 还有一个有趣的功能,就是用户可以在Windows 的“添加或删除程序”中卸载Ubuntu。 不过,采用Wubi 安装的Ubuntu 不支持休眠,性能上有一些损失,Wubi 的文件系统也比普通的文件系统更脆弱。而且,Wubi 在某些计算机上会出现不明的错误而无法正常安装。因此,建议大家使用Wubi 安装作为测试体验之用。对于希望深入学习Linux 的朋友来说,我认为最好还是将Ubuntu 安装到独立的Linux 分区之中,以获得一个稳定性更强、性能更好的操作系统。 Wubi 安装和将Ubuntu 安装到独立的Linux 分区的具体步骤请参阅 Ubuntu Linux 入门(二):安装Ubuntu Linux 。 4. 准备安装介质

相关文档
最新文档