如何学Linux

一.为什么要学linux?

当然最重要是爱好和兴趣!如果你这种必要学,或者根本不喜欢,请不要浪费时间,你学也学不好!

二.起步

你应该为自己创造一个学习linux的环境--在电脑上装一个linux或unix
问题1:版本的选择

北美用redhat,欧洲用SuSE,桌面mandrake较多,而debian是技术最先进的linux
开发人员中用debian的最多,其次是redhat,从全球linux各应用领域市场份额来看
无疑redhat是最多的,此外还有很多出名的发行版本,不再列举。
对于初学linux的人来说,我建议是使用redhat,原因如下:
1)现在很多书都是以redhat为例讲的,为了与书本协调一致
2)周围的人都用redhat,交流比较方便
3)redhat应用范围广,有典型性和代表性
4)它易于使用和安装,我们没有必要把时间浪费在“装系统”上
而应集中精力学习最有用的东西。

//注:现在觉得RH很死板,AS,ES等用在服务器上或许不错,
Personal desktop用mandrake,debian,suse都不错,笔者现在用Mandrake,因为她长得漂亮

如果你并不打算深入学习linux,而是有诸如适应北京市政府办公平台迁移到
linux上这种需要,那么中软,红旗等中文linux是不错的选择

我强烈建议:自己亲自动手把linux装到你的硬盘上,
你必须学会独立安装linux系统的技能,对于现在的版本来说,其实跟装WinXP一样简单

从此现在开始,请不要以windows的工作方式来考虑问题,
应该尝试挖掘linux身上的“天才unix”的气质。

三.进阶
掌握至少50个以上的常用命令
理解shell管道"|",文件流重定向">"及追加">>"等
熟悉Gnome/KDE等X-windows桌面环境操作
掌握.tgz.rpm.biz等软件包的常用安装方法
学习添加外设,安装设备驱动程序(比如modem)
熟悉Grub/Lilo引导器及简单的修复操作
熟悉系统固有目录的名称及公用
学会用mount命令访问其他文件系统
了解vi,gcc,gdb等常用编辑器,编译器,调试器
学习linux环境下的简单组网

建议:买一本不需要太厚的linux教材,大致可以满足要求
//现在的书越来越多了,还带很多图,我当时可没这么多书:)

四.高级应用

澄清一些概念:
linux的普通操作与真正的系统管理不能相提并论,后者需要很多知识

我个人认为比较重要几种linux语言
1.英语
即使你不学linux,我也强烈建议你学好英文[U.S.english]
因为实质上计算机语言就是英文和字符,所谓的多国语言只是外部包装
你必须能无障碍的阅读大量的英文技术文档
在搜索引擎找到的英文网站和网页中熟练的检索
最好能有用英文直接交流的能力,
摆脱了这个障碍,你的学习和理解速度就能快很多,你就有机会拉开和别人的差距

2.shell[sed/awk]
shell是命令解释器,是内核与用户界面交流通道,shell写的小脚本有点类似于win下的.bat
但shell比.bat强大的多,shell不只是解释命令,更是一种编程语言,有时候几百行的c用shell
几十行就能代替完成工作,因为shell的工作方式建立在系统已有的众多应用程序之上
这也是CS中的一个重要思想。
此外,shell可以实现工作自动化,这个概念也比较重要
sed,awk用来处理文本,历来很常用

3.Perl/PHP
漂亮的脚本, CGI的首选,比ASP好,应用面很广

4.C/C++
C、C++是linux/unix的核心语言,系统代码都是C写的

5.ASM
系统底层及内核,硬件,设备驱动程序,嵌入式开发都需要
//走核心路线的话,才c/c++,asm最重要

6.Java,Python,Tcl,XML

*系统管理篇
在熟悉linux的基础上还需要掌握至少一种unix
我首推Solaris,其次是FreeBSD
比如运营级系统一般是Solaris+Oracle/DB2之类的
学习apache,ssh,sendmail/Qmail,proftp/vsftp,Samba,Squid,MySQL/PostgreSQL/Oracle,Bind
等各种应用服务器的构架及电子商务的应用
熟悉TCP/IP协议族,学习诸如apache+php+proftp+mysql+quota的实现以及大型局域网,分布式集群
等各种企业级应用解决方案
熟悉多用户管理,数据库管理,文件系统,逻辑存储管理,日志分析,备份与灾难数据修复
系统补丁,内核升级,以及在此基础上的防火墙构架等以保障系统安全在内的各种系统管理技能

我觉得,如果在此基础上再掌握路由/交换设备便是一个不错的系统管理员  

各种基于linux的解决方案可参考相关书籍和文献,必要时用google或各大linux站点站内
搜索引擎寻找最新文档,以避免错误和漏洞
有几本技术大全和技术内幕我认为都是这方面不错的书

*深入学习linux

我个人理解的读linux内核需要的基础:
在此之前,希望先把应用层的东西学一下,那样会比较好理解
1.C
如果学过潭浩强的大学教科书(除了编几个数学模型好像什么也做不了的那种),
建议再看一下
《The C Programming Language》Second Edition这本圣经
/*如果想学缓冲区溢出,这点C的功力可能是不够的*/
还有,<C陷阱与缺陷>,<C专家编程>,<C/C++深层探索>
反正经典书看多了是没有坏处的

2.asm (AT&T语法,保护模式)
保护模式下的比较复杂,基本上每本讲内核的书都会有介绍
有80x86 Intel语法的基础就行,
有兴趣可以看看Intel的官方****

3.数据结构(离散数学)
计算机专业的核心课程,重要性我就不说了

4.操作系统原理
看懂这个再去读linux吧

5.微机原理/组成原理(数字电路)
底层直接和硬件打交道,所以这个也要

6.了解linux/unix
我想至少你要会操作吧,了解unix的API

7.软件工程/编译原理

这方面的经典书去www.china-pub.com可以搜到很多
我觉得APUE这种书不适合初学者,还是先看看UPE之类的吧

APUE:
《advanced programming in the unix environment》
《unix环境高级编程》
作者:W.Richard.Stevens共有6本经典书,尊为“圣经”
他的书为全世界黑客所拜读!

UPE:《unix programming environment》
《unix编程环境》比较适合初学者的,深入浅出,
其中有一些比较重要的思想
另外,介绍linux下应用层编程的书也有很多,比如
<GNU/Linux编程指南>,redhat,redflag出的书...........
经典书还有很多很多......
操作系统:设计与实现 //交大的考研参考书目,讲Minix的
unix操作系统设计
4.4BSD操作系统设计与实现
昂莱氏unix源代码分析
ulk:understanding the linux kernel (2nd)深入理解linux内核
linux设备驱动程序 (2nd)
linux内核源代码情景分析
保护方式下的80386及其编程(次书已绝版,只有超星的电子版,如果谁能搞到纸书,清一定告诉我一下,非常感激!!!)

在这里你能明白"黑客"及"haching"一词所代表的真正意义
希望我写的这篇文章能造就更多的黑客,而不是骇客

五.一些资源 www.linuxforum.net //国内最高水平GNU站点 www.chinaunix.net //unix、系统管理的不错 www.linuxeden.com //下载软件不错 www.linuxaid.com.cn www.linuxsir.org

其实还有很多,包括国外的

 

Pflop意为千万亿次
BSD是"Berkely Software Distribution"的缩写,意思是"伯克利软件发行版"。
UI就是指用户界面(user interface)
POSIX:
     The Portable Operating System Interface (POSIX) standardization effort used to be run by the POSIX standards committee. During a major overhaul of the names and numbers used to refer to this project, PASC (Portable Applications Standards Committee) came into being. So now the POSIX standards are written and maintained by PASC, just so that you know.

 

 

 


第一部分:Linux基础应用

1、《Linux从入门到精通》
http://www.gouhuo.com/study/linuxbook.zip

2、 Linux 系统安全与优化中文版
这本书的英文版“Get Acquainted with Linux Security and Optimization System”(简称LinuxSOS)是Linux文档计划(Linux Document Project)中比较新的一本指南。这本书不是Linux的入门书籍,读这本书需要有Linux或者Unix的背景知识。如果你已经安装过Linux而且能够使用一些简单的Unix命令,那么这本书会对你有很大的帮助。
http://www.linuxaid.com.cn/download/training/linuxsos-cn.pdf

3、Linux安装与配置简明手册 13-Aug-2002 16:14 20M
http://cpss.zz.ha.cn/study/linux/Linux%b0%b2%d7%b0%d3%eb%c5%e4%d6%c3%bc%f2%c3%f7%ca%d6%b2%e1.zip

4、Linux编程白皮书.zip 13-Aug-2002 16:14 16M
http://cpss.zz.ha.cn/study/linux/Linux%b1%e0%b3%cc%b0%d7%c6%a4%ca%e9.zip

5、Linux网站建设技术指南 13-Aug-2002 16:14 9.2M
http://cpss.zz.ha.cn/study/linux/Linux%cd%f8%d5%be%bd%a8%c9%e8%bc%bc%ca%f5%d6%b8%c4%cf.zip

6、Linux系统分析与高级编程 13-Aug-2002 16:14 11M
http://cpss.zz.ha.cn/study/linux/Linux%cf%b5%cd%b3%b7%d6%ce%f6%d3%eb%b8%df%bc%b6%b1%e0%b3%cc%bc%bc%c a%f5.zip

7、Linux系统管理白皮书.zip 13-Aug-2002 16:14 6.8M
http://cpss.zz.ha.cn/study/linux/Linux%cf%b5%cd%b3%b9%dc%c0%ed%b0%d7%c6%a4%ca%e9.zip

8、Linux应用程序开发指南 13-Aug-2002 16:14 9.1M
http://cpss.zz.ha.cn/study/linux/Linux%d3%a6%d3%c3%b3%cc%d0%f2%bf%aa%b7%a2%d6%b8%c4%cf%a3%ba%ca%b9%d 3%c3Gtk+%20Gnome%bf%e2.zip

9、Linux 24学时教程.zip 13-Aug-2002 16:14 34M
http://cpss.zz.ha.cn/study/linux/Linux%2024%d1%a7%ca%b1%bd%cc%b3%cc.zip

10、Red Hat Linux 6大全.zip 13-Aug-2002 16:15 33M
http://cpss.zz.ha.cn/study/linux/Red%20Hat%20Linux%206%b4%f3%c8%ab.zip

11、Red Hat Linux 6管理工具 13-Aug-2002 16:15 13M
http://cpss.zz.ha.cn/study/linux/Red%20Hat%20Linux%206%b9%dc%c0%ed%b9%a4%be%df.zip

12、http://www.linuxsir.org/pdf/ebook1.rar
http://www.linuxsir.org/pdf/ebook2.rar
具体文章如下:
基础建设讨论专版:
Linux管理员手册
linux入门教程
linux指令大全

红旗版区的:
红旗桌面4正式版最新使用方法和问题解答100例

Linux shell进阶应用与shell编程
命令大集合
TCSH shell 编程
Bourne Shell及shell编程
Linux Shell简介
脚本精华欣赏
使用 Bash shell 脚本进行功能测试

Linux 发行版SuSE专题
SuSE 解决方案

13、Debian的中文FAQ 600k pdf
http://linuxdoc.51.net/download/Debian_cn_FAQ.pdf

14、Linux Kernel 核心手册(中文)552k zip
http://linuxdoc.51.net/download/Linux_Kernel_cn.zip

15、Linux + Solaris 48k pdf
http://linuxdoc.51.net/download/LinuxSolaris.pdf

16、Linux SOS 1.1 1.3M pdf
http://linuxdoc.51.net/download/linuxsos-11.pdf

17、SuSE官方汉化手册 1.4M pdf
http://linuxdoc.51.net/download/suse_guanfang_hanhua.pdf

18、Linux Kernel 1.3M pdf
http://linuxdoc.51.net/download/linux_kernel.pdf

19、Linux程序员指南 337k zip
http://linuxdoc.51.net/download/linux_program.zip

20、Linux高级技巧集 72k zip
http://linuxdoc.51.net/download/linux_gaoji_jiqiao.zip

21、OReilly Unix超级工具(第三版)
http://bbs.itebook.net/attachment.php?aid=621
http://bbs.itebook.net/attachment.php?aid=622

22、FreeBSD使用大全(Chm格式)
是王波写的一本专门介绍Freebsd的书籍,共94章,图文并茂,是不可多得的FreeBSD方面的教材。
http://www.linuxdby.com/downloadlink.php?id=15

23、Redhat 9.0 官方中文安装指南
http://www.fcitx.org/flysail/rhl-ig-x86-zh_CN-9.tar.gz

Redhat 9.0 官方中文入门指南
http://www.fcitx.org/flysail/rhl-gsg-zh_CN-9.tar.gz

Redhat 9.0 官方中文定制指南
http://www.fcitx.org/flysail/rhl-cg-zh_CN-9.tar.gz

24、《Linux 新手管理员指南》
本书《Linux 新手管理员指南》是英文版LINUX NEWBIE ADMINISTRATOR GUIDE 的完整中文译本,共237页,PDF格式。
原版:http://linux-newbie.sunsite.dk/
下载:http://www.linuxdby.com/downloadlink.php?id=51

25、Linux高级配置详解(PDG)
讲述在Linux操作系统下的软、硬件配置、网络应用配置、X Window系统配置以及内核的配置和编译等知识。
http://www.mycodes.net/down.asp?id=793&no=1
http://www.mycodes.net/down.asp?id=793&no=2 

 
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值