我是python初学者的书籍,请找一本Linux书籍。当然也是为了考试?

求推荐一本Linux入门的书籍,最好是能针对红帽认证的_红帽吧_百度贴吧
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&签到排名:今日本吧第个签到,本吧因你更精彩,明天继续来努力!
本吧签到人数:0成为超级会员,使用一键签到本月漏签0次!成为超级会员,赠送8张补签卡连续签到:天&&累计签到:天超级会员单次开通12个月以上,赠送连续签到卡3张
关注:579贴子:
求推荐一本Linux入门的书籍,最好是能针对红帽认证的收藏
红帽认证,达内与linux红帽公司强强联合,致力于打造高端红帽linux系统运维工程师.达内红帽认证培训,5名红帽RHCA讲师,红帽认证考前模拟,保障通过率;
《Linux就该这么学》是一本注重实用性的Linux技术自学书籍,自基础篇公布后日常阅读量已经超过5000多人(每天),以后基础篇和进阶篇都将会一如既往免费完整的提供给亲爱的读者们,并且我们正在全球各地部署书籍的镜像站点,想用最迅猛的访问速度满足您心中那颗求知的小宇宙,不仅如此,我们的团队成员在完善更新书籍与配套工具的同时,还在为您收集整理着值得每天看一看的“新闻资讯”和“技术干货”
Linux的知识体系非常庞大,你要记住的命令都是一大堆。如果你从实际工作出发,以考证为目的的话,建议你看《Linux就该这么学》针对新的学习考试中的知识点,对具体的命令和操作讲解详细。
登录百度帐号推荐应用学习C语言不是一朝一夕的事情,但也不需要花费十年时间才能精通。如何以最小的代价学习并精通C语言是本文的主题。请注意,即使是“最小的代价”,也绝不是什么捷径,而是以最短的时间取得最多的收获,同时也意味着你需要经历艰苦的过程。
一、要读就读好书,否则不如不读
所有初学者面临的第一个问题便是:如何选择教材。好的开始是成功的一半,选择一本优秀的教材是事半功倍的关键因素。不幸的是,学校通常会帮你指定一本很差劲的C语言课本;而幸运的是,你还可以再次选择。
大名鼎鼎的谭浩强教授出了一本《C语言程序设计》,据说发行量有超过400万,据我所知,很多学校都会推荐这本书作为C语言课本。虽然本人的名字(谭浩宇)跟教授仅仅一字之差,但我是无比坚定地黑他这本书的。这本书不是写给计算机专业的学生的,而是给那些需要考计算机等级考试的其它专业学生看的。这本书的主要缺点是:例子程序非常不专业,不能教给你程序设计应该掌握的思考方式;程序风格相当地不好,会让你养成乱写代码的恶习;错误太多,曾经有人指出过这本书的上百个错误,其中不乏关键的概念性错误。好了,这本书我也不想说太多了,有兴趣大家可以百度一下:)
Kernighan和 Ritchie的《The C Programming Language》(中译名《C程序设计语言》)堪称经典中的经典,不过旧版的很多内容都已过时,和现在的标准C语言相去甚远,大家一定要看最新的版本,否则不如不看。另外,即使是最经典最权威的书,也没有办法面面俱到,所以手边常备一本《C语言参考手册》是十分必要的。《C语言参考手册》就是《C Reference Manual》,是C语言标准的详细描述,包括绝大多数C标准库函数的细节,算得上是最好的标准C语言的工具书。顺便提一句,最新的《C程序设计语言》是根据C89标准修订的,而《C语言参考手册》描述的是C99标准,二者可能会有些出入,建议按照C99标准学习。还有一本《C和指针》,写得也是相当地不错,英文名是《Pointers on C》,特别地强调指针的重要性,算是本书的一个特点吧。不过这本书并不十分适合初学者,如果你曾经学过C语言,有那么一些C语言的基础但又不是很扎实,那么你可以尝试一下这本书。我相信,只要你理解了指针,C语言便不再神秘。
如果你已经啃完了一本C语言教材,想要更进一步,那么有两本书你一定要看。首先是《C Traps and Pitfalls》(中译名《C陷井与缺陷》),很薄的一本小册子,内容非常非常地有趣。要注意一点,这本书是二十多年前写成的,里面提到的很多C语言的缺陷都已被改进,不过能够了解一些历史也不是什么坏事。然后你可以挑战一下《Expert C Programming》(中译名《C专家编程》),书如其名,这本书颇具难度,一旦你仔细读完并能透彻理解,你便可以放心大胆地在简历上写“精通C语言”了。
切记一个原则,不要读自己目前还看不懂的书,那是浪费生命。如果你看不懂,那你一定是缺失了某些必需基础知识。此时,你要仔细分析自己需要补充哪些内容,然后再去书店寻找讲述的这些内容的书籍。把基础知识补充完毕再回头来学习,才会真正的事半功倍。
二、Unix/Linux还是Windows,这是个很大的问题
不同的编程环境会造就出不同思维的程序员。Windows的程序员大多依赖集成开发环境,比如Visual Studio,而Unix程序员更加钟爱Makefile与控制台。显而易见,集成开发环境更容易上手,在Windows上学习C语言,只需要会按几个基本的Visutal C++工具栏按钮就可以开始写Hello, World!了,而在Unix下,你需要一些控制台操作的基本知识。有人也许认为Unix的环境更简洁,但习惯的力量是很大的,大家都很熟悉 Windows的基本操作,而为了学习C语言去专门装一个Unix系统,似乎有点不划算。
对于一个只懂得Windows基本操作、连 DOS是什么都不知道的新手而言,尽快做一些有趣而有意义的事情才是最重要的。用C语言写一个小程序远比学习ls、cat等命令有趣,况且我们要专注于C 语言本身,就不得不暂时忽略一些东西,比如编译链接的过程、Makefile的写法等等等等。
所以我建议初学者应该以Visual C++ 6.0(不是VisualC++ .NET)或者Dev C++作为主要的学习环境,而且千万不要在IDE的使用技巧上过多纠缠,因为今后你一定要转向Unix环境的。Visual C++ 6.0使用很方便,调试也很直观,但其默认的编译器对C标准的支持并不好,而Dev C++使用gcc编译器,对C99的标准都支持良好。使用顺带提一下,很多大学的C语言课程还在使用Turbo C 2.0作为实验环境,这是相当不可取的,原因其一是TC 2.0对C标准几乎没有支持,其二是TC 2.0编译得到的程序是16位的,这对今后理解32位的程序会造成极大的困扰(当然,用djgpp之类的东西可以使TC 2.0编译出32位程序,不过那过于复杂了)。
等你学完一本C语言的教材,你一定要转向Unix平台继续学习,几乎所有的C语言高级教程都是基于Unix平台的(比如《C专家编程》)。转变的过程是痛苦的,你需要面对的是各种纷繁复杂的命令,完全不同于Windows平台的思考方式,但是这种痛苦是值得的。Unix与C是共生的,Unix的思考方式和习惯更加符合C语言的思考方式和习惯。在Unix下,你可以找到无数优秀的源代码供你尽情阅读,你可以方便地查看某个库函数的联机手册,还可以看到最优秀的代码风格(说到代码风格,我会专门写一篇文章详细叙述)。
归结起来就是一句话:初学C语言,建议使用Windows系统和集成开发环境,在准备向“高手”方向努力时,请先转向Unix平台。
三、万事俱备,你就是东风
书已选定,环境配置完成,正所谓万事俱备,只欠你自己的努力了。请从书的前言开始,仔细地阅读手头的教材,很多人看书喜欢直接从第一章开始看,这是错误的做法。前言是作者对整本书的大体介绍,作者一般会告诉你需要什么基础才能够顺利阅读本书,这可以帮助你检验自己的基础知识是否已经具备。看完前言,还要浏览一下目录,了解一下书的整体结构,顺便给自己安排一下学习计划。
学习C语言,必需注意每一个细节,书上的例子代码一定要自己亲自敲一遍,编译执行输出都跟书上说的一致才能算是学完了一个例子,如果不一致,就要仔细找原因。出了书本上有的例子,自己还要“创造”一些例子,比如学习运算符优先级的时候,可以写几个相同的表达式,在不同的位置加上括号,看看有哪些不同的行为,比如*p++和(*p)++,又比如a = b == c、(a = b) == c和a = (b == c)等等。自己抄的书上的例子以及改造之后的例子,还有自己“创造”的例子,都应该仔细地归类保存,并且要在源代码中写上简短的注释,阐述这个例子的意图。
例子之后就是习题了,我建议初学者把所有的习题都独立做一遍,然后对照答案的代码,看看自己的代码有那些不足,再试着修改自己的代码。很多人不重视习题,这是极大的错误,因为作者通常会在习题中说明一些重要的道理,而不是单纯地检验前面的知识。
也许你认为这样学习太慢,其实不然。学得细致就不用走回头路,等你学到后面才发现自己前面没搞清楚,那才是真的得不偿失。一般说来,整本书读完,你应该完成数千行乃至上万行的代码,无论是原封不动照抄书上的,还是自己心血来潮写就的,都是今后继续学习的一笔财富。以我自己举例,阅读《Windows核心编程》时(我只阅读了3/4的内容),除了抄书上的代码,还自己写了很多例子,一共有5574行(用unix下的wc工具统计),时隔多日,我早已记不清 Windows的系统编程了,但只要花几分钟翻出以前的代码看看,便会重新了然于胸。所谓好记性不如烂笔头,就是这个道理。
仔细读书、认真抄写源代码、独立完成习题外加更进一步的实验,最后将所有的代码留下,成为自己的经验和财富,绝对的辛苦,也绝对的事半功倍。当然,这种方式只适合学习需要精通的技术,如果不是学习C语言,你还要具体情况具体分析。
写到最后,还有非常非常重要的一点没有提及──代码风格,从最开始学习就必须强迫自己模仿最优秀的代码风格。因为代码风格太重要内容也太多,我会用专门的一篇文章来详细讨论,请大家关注《程序员之路──关于代码风格》。
QQ技术交流群';
$("body").append(kefuhtml);
var xstime=200;
var bk = getCookie("bk");
$(".close").click(function(){
$(".im-box").hide(xstime);
$(".open-im").show(xstime);
setCookie("bk",1);
$(".open-im").click(function(){
$(this).hide(xstime);
$(".im-box").show(xstime);
setCookie("bk",2);
function setCookie(name, value) {
var exp = new Date();
exp.setTime(exp.getTime() + 7 * 24 * 60 * 60 * 1000);
document.cookie = name + "=" + escape(value) + ";expires=" + exp.toGMTString()+";path=/";
function getCookie(name) {
reg = new RegExp("(^| )" + name + "=([^;]*)(;|$)");
if (arr = document.cookie.match(reg)) return (arr[2]);
else return null
if (bk == 1 && bk != null) {
$(".im-box").hide();
$(".open-im").show();
if(bk == 2 && bk != null) {
$(".open-im").hide();
$(".im-box").show();
$(".wx-con").mouseenter(function(){
$(".wx-show").show(xstime);
$(".wx-con").mouseleave(function(){
$(".wx-show").hide(xstime);
$(".go-top").click(function () {
$("html,body").animate({ scrollTop : '0' }, xstime*2);鸟哥的 Linux 私房菜
底下尚未更新
Linux 的学习曲线,一个老人家的建议!
最近更新日期:
学习 Linux 的过程并不简单!因为我们过去一直都是在某些特定软体的支配之下,
所以对于这个由一群素眛谋面的工程师因为『兴趣』而发明出来的作业系统,
其实开始时候的接受度并不是很好的。
然而因为 Linux 的学习会使用到很多的基础观念,因此,
对于想要更深入认识您所使用的作业系统的朋友来说,
其实 Linux 真的是一套很棒很棒的作业系统喔!
这个网站的内容,是由鸟哥在刚刚接触 linux 的时候就开始写起的,
简单的来说,这个网站的内容基本上就是『鸟哥的 Linux 血泪史~』
因为鸟哥在新手的时候遇到相当多的问题,虽然一步一步的找出问题,并且解决他,
不过,刚开始时,并不是那么容易就可以解决一个小问题的。
因为很多的知识都是来自于 Internet 上面的,所以也就回馈这样的一个网站给朋友们了。
请大家看一看鸟哥是如何学习 Linux 的吧!
1. VBird 与 Linux
在开始给 Linux 的新手建议前,得先让您晓得的是,为什么鸟哥要这样的建议新手学习呢?
所以,先交代一下 VBird 学习 Linux 的心路历程啰,好让您瞭解到,
为何 VBird 会比较熟悉 Linux 这门艺术!
数年前 VBird 因工作的需要,『被迫』得去学习 Unix 系统,
那个时候我们使用的 Unix 系统是 Sun 这家公司的机器,
当时的 Sun Unix 可不是一般人玩的起的,当然,
VBird 也是一般人,所以当然也就玩不起 Sun Unix 啰!然而工作的案子还是需要进行的,
那怎么办呢?这个时候就得要想一些替代方案啦!
咦!听说有另外一种可以在个人电脑 ( Personal Computer, PC ) 跑的 Unix-Like 系统,叫做 Linux 的,
他的介面啦、功能啦、以及基本的档案架构都跟 Unix 差不多,
甚至连系统稳定性也可以说是一模一样,而且对于硬体配备的要求并不高。
嗯!既然玩不起几十万起跳的 Unix 系统,
那么使用一些即将废弃的电脑配备来架设一部 Linux 主机吧!
在经过了一些时候的努力之后,呵呵!竟然真的给我架起来了(当时的版本是 Red Hat 6.1)!
哇!好高兴!那么就赶快先来熟悉他,然后等到有了一定的经验值『升级』成老手级之后,
再来玩 Unix 吧,以免玩坏了几十万的大电脑!嗯!这似乎是不错的方式,
所以就开始了 VBird 的 Linux 学习之路啦!
2. VBird 的 Linux 学习之路
由于 VBird 之前从未玩过 Linux 这套作业系统,而且听说还需要使用到指令列模式!
刚开始碰还真的有点紧张。还好,VBird 玩电脑的历史可以追溯之前的 DOS 年代,
所以对于指令列模式多多少少还有点概念,或许应该可以撑上一阵子吧!?
但是没想到 Linux 的指令真是『博大精深』吶!早期的 DOS 概念简直就是不够用啊~
因此,为了偷懒,一开始 VBird 就捨弃指令列模式,直接在 X-Window 上面玩起来了!
在还没有安装 Linux 之前,VBird 买了两三本书,每本都看了 N 遍,发现到每一本书的前半段,
在 Linux 的基础方面的介绍谈的不多,了不起就是以一些工具教你如何设定一些很重要的参数档案,
但偏偏没有告诉你这些工具到底做了什么事情或修改了哪些档案?
不过书的后半段却放上了很多的架站文件,然而却都有点『点到为止』,
所以当时总觉得 Linux 很有点朦朦胧胧的感觉,而且在当时最严重的现象是
『只要一出现问题,身为使用者的 VBird 完全无法解决,
所以只好重新安装,选择设定与书本教的内容完全一模一样!』不过,即使如此,
很多时候仍然解决不了发生问题的窘境!
在当时,由于知道 Linux 可以用来做为很多功能的伺服器,而 VBird 的研究室当时又需要一部 mail server ,
所以就很高兴的藉由书上的说明,配合 Linux distribution 提供的一些工具程式,例如:
Linuxconf, netcfg 等等的工具来架设。然而由于工具程式的整合度并不见得很好,
所以常常修改一个小地方会搞上一整天!
好不容易使用了所有的知道的工具来架设好了我的 mail server ,哈哈!真高兴,
请注意呦!这个时候我的 Linux 主机上面开了多少的 ports/services 其实 VBird 并不清楚,
当时认为『我的机器就只有我认识的一些朋友知道而已,
所以反正机器能跑就好了,其他的设定似乎也就不这么重要』。
然而事实上,这种学习心态却造成了后来 VBird 恶梦的开端!
怎么说呢?首先,虽然 Linux 号称需要的硬体等级不高,不过 X-Window 却是很耗系统资源的一项软体,
因为只要涉及到图形介面的话,需要亲和力嘛!就需要多一点 RAM 啦、多一些硬碟空间啦、
显示卡与 CPU 要好一点啦等等的,且早期的图形介面整合度不是很高,
所以造成 X-Window 死掉的机会是很高的。
在 VBird 当时安装的 Linux 主机当中,
使用的是旧旧的电脑,系统的配备并不高,在跑了 X-Window 之后,剩下可以使用的实体记忆体其实已经不多了,
再跑其他的服务,例如 mail server ,实际上有点很吃力!
所以当时的一些同仁常常抱怨我们的机器怎么老是服务不良?怪怪!
这个 Linux 怎么跟『号称稳定』的名号不符?而在 VBird 进入系统检查之后,才发现,哇!
X-Window 又挂了?当时还不清楚原来可以使用 ps 及 kill 等指令将 X-Window 杀掉即可让 Linux 恢复正常,
竟然是用 reset 的方式来重新启动 Linux ,现在想起来,当时真糗....
后来再重新安装一次 ( 嗄?由图形介面转到文字介面要重新安装?不要怀疑,当初没有学好的时候,
就是以为需要重新安装,因为 Windows 的经验告诉我这样做是『对的!』 ) 选择了文字介面登入系统,
呵呵!果然系统是稳定多了!服务上面似乎也就安定了许多。
不过,您以为恶梦这样就解决了吗?当然不是!
在我的机器服务了一阵子之后,我老闆竟然接到上层单位的来信,
信中说明『贵单位的主机可能有尝试入侵国外主机之嫌,敬请妥善改善!』
哇!这不就是警告信吗?还好不是律师存证信函~还好,
当时至少还知道有所谓的系统登录档案可以分析确切日期有谁在线上,没想到一登入之后才发现,
搞了老半天,原来我们的机器被入侵了!而身为管理者的 VBird 竟然还茫然不知~这真是一大败笔....
在赶快重新安装,并且重新参考很多文件,架设好了防火墙之后,以为终于从此就可以高枕无忧了!
唉~结果还是不尽然的,因为我们的 mail server 早就被当成垃圾转信站,
造成区域网路内网路流量的大量提高,导致常常会无法连上 Internet .....
在经过了这么多的事件之后,终于发现,如果想要 Linux 帮我做好我想要达成的工作,
则 Linux 的学习并不是只要『会用就好』,
这样的心态会造成相当大程度的伤害,不论是针对您自己还是您服务的单位,
君不见上头的警告信函吗?
所以,在经过了这多灾多难的一年多之后,终于还是痛定思痛,
定下心来重新的再出发,将 Linux 的概念完整的建立起来,包括 Linux 最最基础的档案架构、
指令模式与脚本(Shell and shell scripts)、套件管理方式和资源与帐号管理等等,
而在将这些基础的架构理解之后,再回头看一下各式各样的 server 启动服务与相关的技巧,
发现『哇!原来如此呀!怎么这么简单的东西当初搞了我几天几夜睡不好!』
尤其最重要的登录资讯的追踪,帮 VBird 避免了很多不必要的系统伤害行为。
此外,而为了方便 VBird 本身的管理,于是开始了一些脚本 (shell scripts) 的编写,
他可以化繁为简,让日常的管理变的更轻松而有效率!当然,这些工作几乎都是在文字介面底下完成的,
图形介面之下的工作毕竟还是有限的。
经过上面 VBird 学习之路的经验分享之后,我想,您应该也慢慢的瞭解 VBird
想要提出这本经验谈的书籍最主要的目的了,
那就是想『让想要学习 Linux
的玩家可以快速且以较为正确的心态来进入 Linux 的世界!』而不要像
VBird 在 Linux 的环境中打转了一年之后才来正确的建立概念。说到这里要跟大家谈一谈目前的
Linux 学习心态。
3. 学习心态的分别
大家都知道 Linux 最强项的地方在于网路,而 Windows 是赢在使用者介面较为亲善。
然而很多使用者还是常常会比较 Linux 与 Windows 这两套相当流行的作业系统,
初次接触 Linux 的人比到最后的结果都是
『Linux 怎么都要使用文字介面来架站,怎么这么麻烦,还是Windows 比较好用』,
事实上这么比较实在是有点不公平且没有意义,为什么呢?基本上,
Windows 是很普及的一个作业系统,这点我们都无法否认,但是,一般使用 Windows 的使用者用 Windows 来做什么?
上网聊天打屁
无可否认的,用 Windows 来上网浏览资讯与聊天对于一般使用者来说是很重要的!^_^
不过,这点在 Linux 底下的 X-Window 就能做到啦!请问您,需要用到文字介面吗?不需要对不对!
而且 X-window 越来越美丽(例如 GNOME/KDE 等等),能使用的空间越来越大!
使用者想要使用 Linux 来上网打屁,没有问题啰!
打打文书工作、做做电子试算表
文书工作也是目前电脑族群最重要的课题了。这个工作目前在 X-Window 也有相当多的免费软体!
例如 KDE 的 Koffice, 例如 Open office , 呵呵!同样的,在 X-Windows 底下,
很棒对不对!!是的!真的很容易学习!尤其介面都是图形化的!这也没有问题!
打打 game、做做休闲娱乐
玩一些较新的3D 游戏可能在 Linux 底下稍微麻烦一点, 因为目前游戏对于
Linux 的支援度还不是很足够! 但是如果是一般上班族群的话,那么 Linux 内附的小游戏是相当多的!
让您玩不完,所以,这一点对于大部分的上班族来说,也应该还好!
当然啦,Windows 的工作环境还有很多可以发展的空间,不过这里我们主要以一般使用者的角度来看。
OK!好了,说了上面这几个工作,请问一下,
『一般使用者谁有在使用 Windows 玩架站!』?很少对不对!
是的!真的是很少人在玩 Windows 的架站!那么如何可以说 Linux 无法普及是文字介面惹的祸呢?!
VBird 相信,如果是一般使用者,应该不至于想要使用 Linux 来架设网站,
所以美美的 X-Window 对于一般使用者已经相当的好用了,实在没有必要来学习架站的原理与过程,
还有防火墙的注意事项等等的。
话再说回来,那么您干嘛要使用 Linux 架站呢?『因为 Linux 的网路功能比较强呀!』
说的没错,但是,相对的,比较强的项目可能也具有比较『危险』的指数,
当您一开始学习 Linux 就只想满脑子的玩架站,却又不好好的弄懂一点点 Linux 与网路基础的话,
呵呵!在 Windows 底下了不起是被攻击到您的 Windows 死掉,但是在 Linux 底下,
却有可能让您吃上官司的!像上面提到的 VBird 之前的经验。
而如果您已经习惯以 图形化介面 来管理您的 Linux 主机时,
请特别留意,因为 Linux 的套件是由多个团队研发出来的,( NFS, SAMBA, Sendmail...)
图形介面也仅是一个团队的研发成果,您认为,一个团队的东西可以将所有团队的内容都完整无缺的表现出来吗?
想必肯定可能会有一些问题发生,这个时候怎么办?如果您依赖图形久了,呵呵!
看来就只能求助于外面的工程师了,如此一来,有学跟没有学有何不同?!
曾经有个朋友问我说『唉! Linux 怎么这么麻烦?架设一个 DNS 真是不容易呀!不像
Windows ,简单的很,按几个按钮就搞定了!』这个时候 VBird 就回答了一句话『不会呀!如果您只是想要安装
DNS 的话,网路上面一大堆按部就班的设定方式教学,照着做,一样可以在十分钟之内就完成一个
DNS 主机的设定呀!』他想一想,确实有道理!同时 VBird 又反问的一件事:『您以为学
Windows 就不需要瞭解 DNS 的概念吗?您有尝试过使用 Windows 架设 DNS 却无法让他实地跑的问题吗?
果真如此的话,这个时候你怎么解决?』他愣住了!因为在
Windows 上面他确实也没有办法解决!所以说,不论是学哪一套系统,
『基础的理论都是不变的』,也只有瞭解了基础的咚咚之后,
其他的技能才能够『触类旁通』呀!
网路上一些老手不太喜欢搞图形介面,是因为觉得他预设的设定常常不合他们的意,
尤其是,因为图形化介面管理为了方便使用者,常常自己加入一些设定,
但是这些设定却往往是因地制宜的,所以反而常常会导致架设的网站无法正常工作!
这点在网路新闻群组上面讨论的已经相当清楚了!与其如此,何不一开始就玩文字介面,去弄懂他呢?
此外,很多玩过 Linux 的朋友大概都会碰到这样的一个问题,
就是 Linux 的 distribution ( 发展厂商 ) 事实上是非常多的!而每个 distribution
所提供的套件内容虽然大同小异,然而其整合的工具却都不一样,同时,每种套件在不同的
distribution 上面摆放的目录位置虽然也是大同小异,然而某些设定档就是摆在不同的目录下,
这个时候您怎么找到该资讯?难道非得来一套
distribution 就学他的主要内容吗?这么一来,市面上少说也有数十套 Linux distribution
,每一套都学?如果您时间多到如此地步,那 VBird 也不知道该说什么好了!
如果是我的话,那么我会干脆直接学习一些 Linux 的基本技巧,
可以让我很轻易的就找到不同版本之间的差异性,而且学习之路也会变的更宽广呢!
VBird 的观念不见得一定适合您,不过就只是以一个过来人的身份给个小建议,要么就不要拿 Linux
来架站,跟 Windows 一样,玩玩 X-Window 就很开心了,要嘛真的得花一点时间来玩一玩比较深入的东西,
中国话不是说过吗:『要怎么收穫就怎么栽』虽然努力不一定有成果,但最起码,
有成果的时候,成果肯定是自己的!
4. 基本的学习流程
由上面鸟哥的经验谈,你不难瞭解到,学习 Linux 还是需要按部就班是比较好的!
常常我们会看到初学者最常问的问题就是:『我已经安装好了
Linux 了,接下来要干嘛?!』呵呵!老师们最常讲的一句话就是:
『那就开始学习如何"开机"跟"关机"呀!』不要笑喔!
说真的,安装好了 Linux 之后,最先要学习的就是正确与安全的开机与关机方法!
否则由于不正常的开关机造成硬碟的损害怎么办!?好了!那么我也会开机关机了,
那接下来要干嘛?哈!建议买本书来看看吧!
基本上,由于 Linux 是一个开放的架构,所以根本没有所谓的『规格品!』,
也就是说,每个人所安装好并且设定好的主机都不是相同的!加上 Linux 的历史差不多十多年左右而已,
并且,他的发展并不是由一家公司所主导的,而是由一群热血青年相互研究开发的!
也就是如此,所以一些操作方法与 HOW-TO 的文章并不是十分的多,尤其是中文译本更是少的可怜!
因此,要学习好 Linux 的话,最好手边有一本『工具书』,
那么要选择什么型式的工具书呢?!就鸟哥的看法而言,基本上,如果你对于
Linux 的基础操作指令与他的档案架构、工作方法、安全防火墙设定等有一定的瞭解时,那么开启网路服务如
WWW、FTP、Mail、DNS 等等的服务就真是太简单了!所以,选择较为基础的工具书作为你第一本的
Linux 参考书会比较好!早期不要急着买跟架站有关的书籍啦!那方面的文章太简单了!
还是建立基础的功力比较有用呢!也有朋友这样建议,找一天有空的时间,然后一整天泡在书店,
好好的选择一本入门书籍,嗯!蛮不错的建议!鸟哥也好想找一天泡在书店呀~
因此,这里建议想要学习 Linux 的朋友们,基础的功夫要学好,往后就不需要太麻烦人家啰!:
先从 Linux 的安装与指令学起:
没有 Linux 怎么学习 Linux 呢?所以好好的安装起一套你需要的 Linux 吧!虽然说
Linux 的 distributions 很多,不过基本上架构都是大同小异的,
差别在于介面的亲和力与套件的选择不同罢了!所以,选择一套你喜欢的就好了,
倒是没有哪一套特别好说~~
瞭解 Linux 的档案架构与权限概念:
这个重要!由于不同的权限设定会妨碍你的使用者的便利性,但是太过于便利又会导致入侵的可能!
所以这里需要瞭解一下你的系统呦!
多接触文字介面:
尽量以文字介面学习一些基本的 Linux 使用技巧,虽然一开始进度较慢,但是熟悉之后,
您未来的学习之路将是以指数增加的型态来增长您的 Linux 技术呦!
认识与 BASH 相关的咚咚:
既然要玩文字介面,那么 BASH shell 这个玩意儿,与里面的『正规表示法』、
『管线命令』与『命令重导向』等等,真的需要瞭解比较好呦!此外,为了帮助您未来的管理,
shell scripts 也是挺重要的!
学习一下如何使用 Shell 与 Shell scripts 的写法:
这个是稍微进阶了点,不过也建议学一学呢!对于管理 Linux 主机的用途很大呦!
至少一定要瞭解套件管理员:
记得将最重要的套件管理员,亦即 RPM 与 Tarball 的技巧完整的建立概念,
这将是您相当重要的一门课!
实作的重要性:
在看过书本或者网路上的相关介绍之后,请千万记得自己实作看看,
没有任何事情比自己实作学的更快的!此外,不要尽信书本或者网路上的教学,
自己亲身去理解,才能体会箇中的含意与技巧。
在进入网路的世界之前,先将基础打稳,那么进入网路的世界将一点都不困难!
另外,这里还要建议大家,就鸟哥观察一些现象的结果来看(喔!这是结果论啦!),
常常在网路上发问的朋友们都是一遇到问题就想要马上得到一些老手的帮助的朋友,不过,
其实这些朋友遇到的问题的解决方案都已经显示在萤幕上啦!
因为 Linux 的错误讯息本来就含有相当大量的解决方案的说明在内!此外,在 /var/log
这个目录中的错误讯息也常常提供大量的解决方案!这些都是可以帮你自己节省时间的参考工具!
5. 基本的架站流程表
好了,既然 Linux 的网路功能很强,那么当然很多朋友的目的即是利用
Linux 来达成架站的目的啰!呵呵!没错!因此,接下来,就是要玩架站啦!不过,
除非您对于 Linux 已经够熟悉,或者是没办法,
真的有公司的压力在,否则,在认识整个 Linux 架构之前,真的不要玩架站!!
因为,架设不成功那就算了,万一被入侵并且被用来做坏事,那可就太划不来啦!
此外,鸟哥常常发现一件事情,就是朋友们常常会问一些很怪异的问题,这些问题提出后,
一看就晓得大概这个朋友没有架站的经验啦!任何事情都有先后之分,在你尚未学到的咚咚前,
先放着不动也没有关系!但千万不要跳着学习!!这是大忌讳~例如:不要连
Apache 都还不会架设,就想要架设一个在 NAT 后面的 Apache 主机,
那根本就是一个很难完成的任务!即使完成了,可能也会衍生出更多的小问题来困扰你!
与其如此,不如一步一步的慢慢建置你的网站,不要想着一步登天啦!很困扰的!
说实在的,通常每个人都有特别喜好的架站方法,当然鸟哥也不例外,
如果您对于鸟哥还有点信心的话,那么你可以依照底下的方式一步一步的建立起属于你的 Linux 工作环境喔!
这里有一篇 果正兄 给 Linux 新手的建议,非常建议你看一下,
学一学概念性的东西。另外,里头说的『常用指令』是一定要学会的喔!此外,
man 与 info
这两个指令请一定要会使用!
认识选择硬体配备:Linux 与硬体的关系是『极为重要的』!
所以你一定要知道你的硬体等级!你应该要知道即将装 Linux 的硬体是什么?
所以你要瞭解你手边的硬体是否可以支援 Linux ,或者说,是否可以满足你的 Linux 需求。
进行安装:
这一部分就视你的需求而定,每个人所喜好的 Linux 版本不见得相同!
不过,如果是新手的话,当然就比较建议使用 Mandrake 或 Red Hat 系统,因为他会比较简单!
瞭解 Linux 的基础:
这部份包含了 Linux 的群组与使用者概念、档案的权限问题、磁碟与硬体的管理、资源管理的问题、
quota 与帐号管理、还有很多很多基本的资料,这些『一定要学会!』
不然,就不要玩架站啦!
认识与编译核心:
其实安装完了 Linux 之后的第一件事,就是将你的核心重新编译一次,以符合你的需求。
不过,目前市面上的书籍大多将核心编译摆在最后面才说,这是顾及到新手通常不知道何为核心,
当然也就不知道核心的功能以及编译核心所带来的稳定性啦!
认识网路:
在实际进入架站的阶段之前,鸟哥希望大家能够对于网路基础有一定程度的认识!尤其是
这个观念!!如果对于网路有一定程度的认识之后,对于您自己的网路除错一定能有长远的帮助的!!
架设区域网路:
通常在一个区域中,不太可能仅有一部 PC ,所以,为了分享彼此的资讯,或者说是多部电脑的资料分享,
呵呵!这就需要用到区域网路的概念。
连上网际网路:
既然是要架站,当然就要连上 Internet 啦,如果使用的是学术网路,就必须要晓得
gateway 与您的 IP 及 Netmask ,而如果使用 ADSL 的话,使用 rp-pppoe 即可搞定网路拨接的问题!那么如果是
Cable 的话,嗯! DHCP 的设定就得给他知道一下啰!
为你的主机申请一个名字啦:
架站就是要连上 Internet ,所以当然要申请一些必备的资料啰!除非您要自掏腰包去註册固定的
DNS 名称,否则动态 IP 应该够您使用的啰!
架设 NAT:
既然要分享网路频宽的话,当然就是要架设 NAT 啦,架设完了之后,区域内所有的电脑都可以连线了!
架设 Proxy :
而既然所有的电脑都是透过这一台 NAT 主机来对外连线,当然,设定一个 Proxy
将对你的内部网路的浏览速度应该会有所帮助的!
架设 Mail:
架设 Linux 主机的附属功能,就是可以拥有并控管自己的信箱,以及自己的网页!这时,就需要来架设
E-Mail 了!
架设 WWW :
如同 mail server , WWW server 也是很重要的一环, Linux 可以提供给你相当不错的网页空间喔!
更重要的是,设定上很方便很方便....
架设 SAMBA :
另外一个需要的服务就是 samba 服务了,这个软体让你的 Linux 可以在 Windows
系统的『网路上的芳邻』被看到!很不错的优!因为,Linux 是一套很稳定的系统,而且不容易受到类似
『红色警戒』 这一类的攻击型病毒,因此,你可以使用『网路上的芳邻』将你在
Windows 的资料直接备份,或者直接取用于 Linux 主机中,如此还可具有备份文件的功能!
基本上,鸟哥所架设的主机大概就只有上面几个服务,不过,
有上面的几项服务也足够应付你所需要的网路资讯啰!如果还有需要的话,才建议去研究
DHCP、DNS 与 FTP 等服务啦!
6. 简易的安全防护
其实在架设网站的过程就应该要注意到这方面的技巧了!『网站安全』
真的是很重要的一环!那一天跟一些朋友在聊天的时后聊到了某天
VBird 在报纸上看到的消息!话说美国几乎是全世界骇客最喜欢去入侵的国家(像是微软啦,FBI
啦, CIA 啦等等的!),毕竟他号称是强者,而强者最容易遭到对现实不满或者被欺压者的报复了!
但是这些骇客总不希望自己的行踪被发现而使自己的国家蒙受委屈吧!所以他们总是会透过
Internet 找寻合适的『中继跳板』站作为入侵的门口,
您晓得吗,在该篇报导中指出,美国最不满的国家之一就是台湾(唉~可怜的台湾,
动不动就要被不满!我们要自立自强才行!!咦!我可不是叫大家去做骇客呦!
我是说我们需要正本清源!从本身做起!好好的注意自己的网站安全呢!),为什么呢?
因为台湾的很多网站普遍缺乏『安全』概念,
甚至有些大型的网站几乎没有安全防护机制!这就容易成为骇客的目标了!
因为大型网站的流量通常够大,足够骇客们进行任何网路破坏行为了!
想想看,如此一来不只美国,其他国家甚至可能会对于台湾的网路流量进行减缩的动作,
以防止不良的连线封包进入!那么我们以后想要连到国外去不就很龟速了吗?!
是呀!所以安全的网站也是相当重要的呀!
那么您认为『嗯!反正我的流量又不大,只是
56 kbps 的 ADSL 流量罢了,骇客总不会想要入侵我这种小站吧?!』错!!进行网路骇客的行为根本不需要大流量!
只要能连线就能进行任何的破坏行为了!而且这些连线的讯息通常不会运用来传输资料,
而是用来下达一些简单的指令而已!所以流量也根本就不需要太大的!要知道,如果被骇客侵入后,
将可能变成骇客攻击的中继站!也就是说,后门程式将会帮助骇客经由你的主机去攻击他想要攻击的目标!
那就够严重的了!因为如果对方追查该封包得最后结果是您的网站,呵呵!可是要吃上官司的!!
所以呢,当然要对于你的 Linux 做一些手术,让他变的更安全才行啦!
在安装完了主机之后,请确认一下:
架设安全的 Linux 主机;
限制 Linux 主机的连线电脑;
更改 wu-ftp 成为 proftp 系统;
简单的防火墙设置;
Linux 的套件升级;
2001/xx/xx:不知道是什么时候完成的第一篇内容;
:将原本的资料,配合 VBird 的 Linux 学习之路,完成这一篇短文。
:将风格改写为最近设定的样式!
相关推荐:

我要回帖

更多关于 股市初学者入门的书籍 的文章

 

随机推荐