学习linux操作系统需要掌握那些东西呢?

发布网友 发布时间:2022-04-23 04:02

我来回答

7个回答

热心网友 时间:2022-04-08 09:48

一.为什么要学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的功力可能是不够的*/
还有,,,
反正经典书看多了是没有坏处的

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

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

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

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

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

热心网友 时间:2022-04-08 11:06

可以按照这个来学!拓展资料老男孩职场高薪思想课丨2019全新Linux云计算课程简介

第一阶段:linux基础入门

1. 开班课程介绍-规章制度介绍-破冰活动;

2. Linux硬件基础/Linux发展历史;

3. Linux系统安装/xshell连接/xshell优化/SSH远程连接故障问题排查

4. 第一关一大波命令及特殊字符知识考试题讲解

5. L inux基础优化

6. Linux目录结构知识精讲

7. 第二关一大波命令及特殊知识考试题讲解(上)

8. 第二关一大波命令及特殊知识考试题讲解(下)

9. Linux文件属性一大堆知识精讲

10. Linux通配符/正则表达式

11. 第三关一大波命令及重要知识考试题讲解(上)

12. 第三关一大波命令及重要知识考试题讲解(下)

13. Linux系统权限(上)

14. Linux系统权限(下)

15. 第一阶段结束需要导师或讲师对整体课程进行回顾

第二阶段:linux系统管理进阶

1. Linux定时任务

2. Linux用户管理

3. Linux磁盘与文件系统(上)

4. Linux磁盘与文件系统(中下)

5. Linux三剑客之sed命令

第三阶段:Linux Shell基础

1. Shell编程基础1

2. Shell编程基础234

3. Linux三剑客之awk命令

第四阶段:Linux网络基础

1. 计算机网络基础上

2. 计算机网络基础下

3. 第二阶段结束需要导师或讲师对整体课程进行回顾。

第五阶段:Linux网络服务

1. 集群实战架构开始及环境准备

2. rsync数据同步服务

3. Linux全网备份项目案例精讲

4. nfs网络存储服务精讲

5. inotify/sersync实时数据同步/nfs存储实时备份项目案例精讲

第六阶段:Linux重要网络服务

1. http协议/www服务基础

2. nginx web介绍及基础实践

3. nginx web精讲结束

4. lnmp环境部署/数据库异机迁移/共享数据异机迁移到NFS系统

5. nginx负载均衡深入透彻

6. keepalived高可用深入透彻

第七阶段:Linux中小规模集群构建与优化(50台)

1. 期中架构开战说明+期中架构部署回顾

2. 全体昼夜兼程部署期中架构并完成上台述职演讲(加上两个周末共9天)

3. kickstart cobbler 批量自动安装系统

4. pptp *与ntp服务

5. memcached原理及部署/作为缓存及session会话共享

第八阶段:Ansible自动化运维与Zabbix监控

1. SSH服务秘钥认证

2. ansible批量自动化管理集群(入门及深入)

3. zabbix监控

第九阶段:大规模集群高可用服务(Lvs、Keepalived)

1. Centos7系统自行安装/centos6与7区别

2. lvs负载均衡集群/keepalived管理LVS集群

第十阶段:Java Tomcat服务及防火墙Iptables

1. iptables防火墙精讲上

2. iptables防火墙精讲下

3. tomcat java应用服务/nginx配合tomcat服务部署及优化

第十一阶段:MySQL DBA高级应用实践

1. MySQL数据库入门基础命令

2. MySQL数据库进阶备份恢复

3. MySQL数据库深入事务引擎

4. MySQL数据库优化SQL语句优化

5. MySQL数据库集群主从复制/读写分离

6. MySQL数据库高可用/mha/keepalved

第十二阶段:高性能数据库Redis和Memcached课程

第十三阶段:Linux大规模集群架构构建(200台)

第十四阶段:Linux Shell编程企业案例实战

第十五阶段:企业级代码发布上线方案(SVN和Git)

1. GIT管理

2. 代码上线项目案例

第十六阶段企业级Kvm虚拟化与OpenStack云计算

1. KVM虚拟化企业级实战

2. OpenStack云计算企业级实战

第十七阶段公有云阿里云8大组件构建集群实战

第十八阶段:Docker技术企业应用实践

1. Docker容器与微服务深入实践

2. 大数据Hadoop生态体系及实践

第十九阶段:Python自动化入门及进阶

第二十阶段:职业规划与高薪就业指导

热心网友 时间:2022-04-08 12:41

对于Linux的学习,可以重点学习以下内容:
一、linux基础
Linux基础入门主要包括: Linux硬件基础、Linux发展历史、Linux系统安装、xshell连接、xshell优化、SSH远程连接故障问题排查、L inux基础优化、Linux目录结构知识、Linux文件属性、Linux通配符、正则表达式、Linux系统权限等
二、linux系统管理进阶
linux系统管理进阶包括:Linux定时任务、Linux用户管理、Linux磁盘与文件系统、Linux三剑客之sed命令等。
三、Linux Shell基础
Linux Shell基础包括:Shell编程基础、Linux三剑客之awk命令等。
四、Linux网络基础
五、Linux网络服务
Linux网络服务包括:集群实战架构开始及环境准备、rsync数据同步服务、Linux全网备份项目、nfs网络存储服务精讲、inotify/sersync实时数据同步/nfs存储实时备份项目等。
六、Linux重要网络服务
Linux重要网络服务包括:http协议/www服务基础、nginx web介绍及基础实践、nginx web、lnmp环境部署/数据库异机迁移/共享数据异机迁移到NFS系统、nginx负载均衡、keepalived高可用等。
七、Ansible自动化运维与Zabbix监控
Ansible自动化运维与Zabbix监控包括: SSH服务秘钥认证、ansible批量自动化管理集群、 zabbix监控等。
八、大规模集群高可用服务(Lvs、Keepalived)
九、Java Tomcat服务及防火墙Iptables
十、MySQL DBA高级应用实践
MySQL DBA高级应用实践包括:MySQL数据库入门基础命令、MySQL数据库进阶备份恢复、MySQL数据库深入事务引擎、MySQL数据库优化SQL语句优化、MySQL数据库集群主从复制/读写分离、MySQL数据库高可用/mha/keepalved等。
学完以上内容,基本上可以成为Linux工程师,想要进一步深造,就需要在实践中摸索并提升,一般3至5年才可精通Linux运维,因此,贵在坚持!

热心网友 时间:2022-04-08 14:32

1、需要掌握linux系统启动顺序
2、内核
3、脚本语言,shell、python(推荐)、正则表达式
4、系统搭建,LNMP、LAMP等
5、监控
6、数据库
7、优化

热心网友 时间:2022-04-08 16:40

学习Linux操作系统需要掌握一些基本的命令,我建议如果没有什么基础话,最好报班学习一下,这样更加高效。

热心网友 时间:2022-04-08 19:05

1. linux 操作系统是必不可少的
Linux系统如果是学习可以选用redhat或者centos,特别是centos在企业中用得最多,当然还会有其它版本的,比如ubuntu,suse, debian等在企业当中也用的相当多系统的基本使用、磁盘管理、软件包管理、进程管理、用户管理等等这些都是学习的重点
2.最常见的一些简单服务

服务的种类繁多,每家公司都会用到的服务个不相同,但基础的服务肯定要掌握,比如ssh,apache,at,crontab,ftp,dns,nfs,nginx等等,不光是部署,还要很熟悉里面的配置才行,因为公司最关键的绝对是Web服务器,所以nginx和apache要特别熟悉,有些公司还会用tomcat,这个也需要会。
3.bash脚本编程

shell是运维人员必须具备的,不懂这个连入职都不行,至少也要写出一些系统管理脚本,最简单也得写个监控CPU,内存比率的脚本!这是最最最基本了,别以为会写那些猜数字和计算什么数的,这些没什么作用,只作学习意义,写系统脚本才是最有意义
sed和awk是脚本编程过程当中的重中之重, 必须要掌握,在掌握这两个工具同时,还要掌握正则表达式,正则是最难学的表达式,但结合到sed和awk中会很强大,在处理文本内容和过滤Web内容时十分有用,不过在学shell的同时一般会经常结合用到的。

4.文本处理命令

各种小命令,比如sort , tr , cut, paste, uniq, tee等是必学的
5.数据库

MySQL,linux用得最多绝对是MySQL,增删改查必学,特别要学熟查,其它方面可能不太需要,因为运维人员使用最多还是查,哪些优化和开发语句不会让你弄的。
6.防火墙

不学不行,防火墙也算是个难点,说难不难,说易不易,最重要弄懂规则,如果学过CCNA的朋友可能会比较好学,因为iptables也有NAT表,原理是一样的,而FILTER表用得最多,反正不学就肯定不合格。
7.监控工具

十分重要,zibbix、prometheus暂时可以2选1,但是企业用得最多是zibbix,因为prometheus是新一代监控,具体什么时候成熟应用还是不那么确定的,现在确定的是它在容器监控中绝对是重中之重。
8.集群和热备

很重要,必须要懂,集群工具很多,LVS、nginx等等,还有热备,这个就更多工具能实现了,比如keepalived、rhcs等等
9.数据备份

工具有很多,但至少要把RAID的原理弄懂,特别是企业最常用的1+0或0+1,自己做实验也要弄出来,备份工具有很多,如tar, mp, rsync等
10.自动化运维工具

ansible,puppet,saltstack等等都是非常流行的自动化运维工具,但是比较难掌握
11.云平台

Openstack,cloudstack等等,尤其是openstack是现在绝大部分公司采用的公有云或者私有云底层平台,在一个满世界都是云的it时代,不懂点云的东西还真是不行
12.容器平台

继云之后的又一新兴技术,现在火的一塌糊涂,docker,kubernetes等等,几乎可以说是现在想拿高薪,必学的东西。知道需要掌握的东西了,接下来就是好好学习掌握了,给你推荐一本书《Linux就该这么学》。

热心网友 时间:2022-04-08 21:46

linux学习知识点

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com