发布网友 发布时间:2022-02-26 19:03
共5个回答
热心网友 时间:2022-02-26 20:33
当今世界流行的操作系统有3大类,Linux、Mac OS和Windows操作系统,Linux操作系统因其开源、免费、跨平台、良好的界面等特性,深受广大程序员们的青睐!热心网友 时间:2022-02-26 21:51
学习Linux的心得 通过这几年来对Linux的学习,一步一步摸着石头过河,到现在才刚刚上岸。我能起的作用可能可以告诉你一些学习的方法,当你遇到困难的时候有个人在旁边给予帮助。说句心里话,对于Linux的掌握我还只能算是很粗的东西,因为看了很多大师们的东西以后,发现自已离他们真得还很远。我不是要打击你的意思,是告诉你实情。但也可以告诉你,就这一点现在还是比较好混口饭吃。对她了解掌握的越深,你会发现他几乎什么都能做,有了实现自已商业机会的平台。 学习Linux分好几种层次,我个人觉得可以用中学里学的课文《疱丁解牛》来对比。说白了也就是对事物的认识一般都是由表及里的过程,学习Linux也是一样的。以前总觉的学理的人只要会数理化就行了,很多老师们由于自身的素质问题也不由自主的暗示着我们这样做。现在觉得很后悔当初没有学好文,文太重要了,很多时候他真的可以指导我们的形为和思维方式。最近看的很多管理上的书,最终上升到都是哲学方面的问题,很多东西一追踪根源到上升到哲学上来了。以前小的时候不懂事,觉得学这些东西有什么用,现在成熟一些了才发现这些东西真的不是件简单的事情。学习Linux有很多东西,我建议你首先要注意大师们在哲学上的思路。Linux是由Unix产生的,最终他的实现及他基础上很多应用软件都是基于一个哲学理念“把任务分解成一小块一小块完成”,可能现在你觉得这是件很简单的道理。但他不简单就在于所有有关Unix的东西都是基于这一理念的,看看我们常用的那些小工具吧,find,grep,gzip,tar,bash...等等,这个道理无不贯穿始终。现在IBM/MS等公司经常提到的WEB Service,实际上细想也是这样的,无非是把很多服务分散开来,然后有个总的业务逻辑来进行迅速的组合成一个新的服务,满足市场的迅速变化的需求。 结论1:首先要明白他的设计理念是缘自Unix的“把任务分解成一小块一小块完成”,建议你可以看这本电子书>。是由Eric Steven Raymond写的,在google上很容易找到。这本书编重于编程,可以根据自已的兴趣选相应章节。我也没有全看完,也在研习中:-) 从使用着手,自已装个系统。建议你从Redhat开始。现在Redhat的安装基本上都是学习MS的做法,很图形化了。只要按照图形的指示,很容易让一个系统跑起来。我觉得初学者应该从这个入手,这样会快很多。因为Linux上的软件包都是由不同的开发团队做的,所以一般人不知道如果安装,redhat公司做的事情就是把这些东西组织起来,然后把这些软件卖给大家。因为他对这一行非常的精通,所以卖软件是其次,卖服务是主业。现在redhat已停止出个人版的了,改成专做企业的了,版本发行最近有些变动。现在最后一个版本好象是RH9.1。 装好系统后从使用应用软件开始,建议你先学BASH SHELL编程。因为你将业想往Oracl DBA发展的话,精通SHELL可以在管理上给你带来很大的便利。同时对于理解Linux系统的启动和一些软件的安装很有帮助。比如说你可以很清楚的了解Linux的整个启动过程,继而知道为什么要做那一步做了这个动作,对你将来处理实际碰到的问题至少可以明白知道问题出在哪。象很多我们日常在Unix/Linux的管理和脚本都是分不开的,精通BASH是我们需要完成的第一步。我指的是精通,不是一般的了解,因为你只有精通了,用的时间越长,你会发现script可以帮我们很方便的干很多事情。这里有一本电子书提供参考,是我至今见到写BASH最全,最好的一本。名叫《Advanced Bash Scripting Guide》,你可以在www.linuxdoc.org里找到。 这里也提一下www.linuxdoc.org里的文章是你学习Linux的良师益友,里面的很多文章都是非常不错的教材。主要分为几类:1、FAQ 2、HOWTO 3、Guider 4、man手册。其中的Guider有几本都是非常不错的入门书,你基本上可以不用去买本,美国出的印刷书都奇贵,你把那里的几本书看完就差不多了。插一句,现在P2P很流行,我基本上都不买专业的书了,大部分都可以找到电子版的下载。里面的HOWTO主要讲的一些具体的问题如何处理,门类也很多很杂,你可以根据自已现在的需求去看相应的文章。有空的时候可以多看看,这里面有些很好的solution,说不定什么时候就可以用上。FAQ的文章不多,建议挑些重要的看下。对于man手册,一般系统上都有,不过那里应该是最近的,平时用的不多。 结论2:自已装个Redhat,学好shell。 你用Unix/Linux时候,熟悉一个编辑器是必不可少的。用两种建议选择Emacs&VIM。Emacs比较大些,要花些空间,功能具强,以前用过一段时间但没有深入下去,所以了解也是通过大师们文章中反复提到这个关键字和一些信息知道的,用好了功能具强,相当于一个MS下的IDE开发环境;vim比较小些,功能也很强,是vi的增强版,我现在主要是用她来编辑东西。vim支持多种语法,可以用来编脚本、C、Java,功能足够我们用,学好需要一定的时间实践。因为我们用Unix/Linux,免不了有时要用console来控制,如果用惯了MS的编辑的话,你会非常痛苦,建议如果以后想长时间使用unix/linux环境的话,学好一种这环境下的编辑器。vim也有windows的版本,开始用起来会觉得不方便,便很快你会发现用VIM可以解决很多MS下编辑器不能解决的问题,不信你可以试试看。 结论3:学会一种Unix/Linux下编辑器Emacs或Vim,建议Vim(因为我在用,可以给你些指导 ) 学习Linux有几种常用的服务软件需要会用,1) apache(http) 2) bind(dns) 3) pro-ftp(ftp) 4)samba(file share) 。需要掌握这些软件的安装和简单配置,这些软件在网上都有很详细的文档。至少apache要会安装和管理,因为这是最基本的WEB服务,今天在哪里都能用到。对于这些常用服务软件根据自已兴趣和环境要求做出选择,不一定要很精,但要会,建议精通。 结论4:学会常用服务软件的安装和配置,至少掌握apache 在Linux中还有很多小实用工具也需要掌握,这对你今后诊断问题和做相应的系统管理有很大帮助。如配置网卡地址的工具ifconfig,查找文件的工具find,行编辑的命令sed、awk,网络状态检查netstat、ping、nc等。这些工具可以在实践中慢慢学习。 结论5:在实践中学习一些常用小工具,如ifconfig netstat route等 掌握一到两种Opensource的数据库,如现在流行的两种数据库MySQL和PostgreSQL。MySQL用的人多些也比较简单,速度又快,做一些简单的数据库应用很多都用他做backend databaes server。如果你自已想学Oracle的话,可以直接学Oracle。Oracle的东西多且全,基本上所用的功能都能在Oracle找到。但如果你想更深一层学习DB的话,你可以考虑学PostgreSQL,他有源程序而且支持事务处理(trans-action)、子查询(sub-select),过程(procere)、自定义函数(function)、光标(cursor),支持了大部份SQL92和99的标准。他的文档也比较全。 结论6:建议掌握一种Opensource的DB,如MySQL 建议对TCP/IP协议层深入了解,我想你们上研究生时应该讲的很深。但我还是建议你再多复习相关的知识点,很多时候网络上的问题可以通对你对TCP/IP的了解找到问题所在。建议你买那个steven的书叫>,同时经常在身边准备好那几种状态切换的图,劳记在心,出问题的时候就可以知道是哪边网络不通,还是应用程度出了什么问题了。 结论7:建议再深入了解TCP/IP protocol 建议除了bash外,再学多一种在Unix环境下的RAD脚本语言python。我也正在学python,通过这段时间的了解发现,这个东东有很多功能而且在开发上可以比c/c++提高至少5倍效率。有时候偏向做系统管理,但掌握一本这种编程形的脚本对工作帮助很大,可以迅速的处理一些问题。BASH是侧重于人机交复的脚本,有些事情用BASH是无法完成的。Python在很多Internet应用上有很多mole&package,你可以很方便的使用已有的功能,比如说自已做个小的WEB SERVER,做测试工具,做数据库查询等等。 结论8:建议学下Python 好了,今天先罗嗦到这里,还有很多想法愧于文笔有限,改天再详谈。 水平有限,权做参考,希望对于你的学习有所帮助。 客观来说 对你毫无用处。热心网友 时间:2022-02-26 23:25
linux操作系统的全称是GNU/Linux,它是由GNU工程和linux内核两个部分共同组成的一个操作系统,虽然这个系统诞生于1992年,比windows操作系统要晚,但是与windows相比它有很多独到的优势。 首先,对于普通用户而言它有以下几个优点: 1.极高的稳定性 回顾linux的历史我们会发现,linux操作系统的架构完全沿袭了UNIX的系统架构,所以先天就具有成熟稳定的特点,在这方面不是另起炉灶的windows系列操作系统可以比拟的。大家都知道,windows系统最为人垢病的缺陷之一就是系统的稳定性差,蓝屏死机相信每个windows用户都亲身体验过。虽然1999年微软不惜花费巨资打造了win2000这个划时代的产品,系统的稳定性得到了加强,后续发布的xp和2003更进一步增强了稳定性,但是蓝屏死机的问题只是有所缓解而没能彻底的根治。反观linux系统,早在上个世纪九十年代,美国motorola公司在选择电信级的操作系统的时候就选择了linux系统,它的运行可靠性要求达到99.999%。这个可靠性所代表的含义是每年的计划外停机时间累计不得超过5分钟,由此看见 linux系统所具有的稳定性不是win系统可以望其项背的。 2.先天的安全性 可以说一个操作系统的架构就已经预先决定了它的安全性。linux系统在设计的时候就是针对多用户环境的,所以对系统文件,用户文件都做了明确的区分,每个文件都有不同的用户属性。作为一个普通用户通常只能读写自己的文件,而对一般的系统文件只能读取而不能改动,一些敏感的系统文件甚至连读取都是被禁止的。这种设计在根本上保证了系统的安全,即使一个用户文件出现了问题,也不会泱及整个系统。反观windows系统,在win2000之前的时代,用户与用户之间是没有这种差别的,几乎所有的系统用户都有管理员的权限,可以任意改动系统文件。即使后来微软意识到了这个问题,在后续的系统中区分了管理员和普通用户这两种用户,但是在权限的问题上他还是没有很好的解决这个问题,管理员能做的,普通用户还是基本都可以做,比如安装软件,修改系统设置,删除用户文件。这从而也说明了,为什么一旦windows的一个普通用户中了病毒或者木马,通常会危及整个系统的安全,而在linux世界这样的情况几乎没有出现过的原因。 3.软件安装的便利性 对于计算机初级用户来说,软件安装是个很大的问题。在windows平台下,如果你不知道软件应该安装通常只要一直用鼠标点“下一步”就可以完成安装。在linux平台下,软件安装的便利性方面曾一度落后于win,但是apt的出现使得这种局面得到了彻底的改观,用户只要告诉安装程序自己现在需要安装什么软件,安装程序就会自动去下载这个程序,然后安装,最后等待用户开始运行它。从这个意义上将,linux已经超越了win软件的安装方式,进一步降低了用户的参与程度,方便了用户。 其次,谈一下对开发人员来说linux有哪些优势 1.系统所有组件的源代码都是自由的 首先需要澄清的就是自由的含义。自由软件所指的自由不是免费使用,而是指程序的源代码是开放的,任何人都可以读,可以修改,唯一的*就是,修改后的程序必须连同源代码也一起发布。对于普通用户而言这一点也许没什么用处,但是对于开发人员来说,你们可以通过读取大量的经典程序的源代码,迅速提高自己谋嗦胨 剑 谛枰 氖焙蚩梢孕薷脑创 肜词视ψ约旱男枰 蹦阒鞒忠桓鱿钅康目 ⑹保 憧梢酝ü 毡鹑烁慕 拇 肜床欢咸岣哒飧鱿钅康闹柿浚 蹦愕某绦蛑写嬖赽ug的时候,会被读取代码的人迅速发现并提供补丁程序,使你的程序越来越安全。当你进入linux世界的时候你会发现,这里就是程序员的天堂,所有的一切你都可以主宰。而所有这些在linux平台上都是再正常不过的事,但是对于windows用户来说这些都是不可能的,源代码就是 windows的生命,任何未经授权的人想读到它都是不可能的。 2.有效保护学习成果 前面我们讲到linux的系统架构源于UNIX,这个架构从1969年诞生至今一直沿用,在可以预见的未来它仍然会使用下去。同时主力的开发语言一直是C语言,编辑器仍然是历史悠久的vi。虽然现在你可以使用任何一种语言来为linux系统贡献代码,但是它们的作用都是辅助性的,C语言作为这个系统的核心语言的地位没有发生变化。而windows平台则远远没有这么乐观。编程语言从古老的BASIC到后来的VB,C++到现在的C#,几年就一换,开发工具更是令人眼花缭乱,让人无从选择,无论你选择了哪种语言哪种开发工具,两三年后你都不得不学习新工具的使用,新平台的特点,以跟上微软变幻莫测的脚步。只有过来人才能体会到做windows平台开发的艰辛和无奈。 3.从就业的前景来看 目前做windows平台开发的程序员多如牛毛,没有研究生级别的学历和过硬的编码能力想找到一分待遇优厚的工作已经不可能了。而反观linux 平台开发,目前国内这方面的开发人员还很少,而linux应用已经在我国开始升温,广东省已经率先建立了linux的研发中心,在linux应用方面走在了全国前面。大家现在及时投身于linux平台的学习和开发,必定会为毕业后的求职增加一个有力的筹码。虽然现在广告上宣传的linux程序员月薪1万以上不能完全相信,但是它必定给我们一个信号,linux程序员在中国是大有前途的。热心网友 时间:2022-02-27 01:17
LINUX免费,并开放源码.真正资源共享,并且好多大公司的服务器都是LINUX操作系统的,它不容易被攻击下,并在LINUX下编程很有发展前途热心网友 时间:2022-02-27 03:25
可以往Linux运维工程师,系统工程师方想发展,现在市场上大部分服务器是Linux的,如果往这方面发展的话,可以学习下。老男孩的Linux就不错,网上有很多视频,你可以看看