鸟叔Linux学习笔记:第一章 Linux是什么与如何学习

第一章 Linux是什么与如何学习

1Linux是什么?

 Linux 就是一套Open Source 的操作系统! 如同下图所示, Linux 就是核心与系统呼叫接口那两层。

鸟叔Linux学习笔记:第一章 Linux是什么与如何学习_第1张图片

 Linux 提供了一个完整的操作系统当中最底层的硬件控制与资源管理的完整架构, 这个架构是沿袭Unix 良好的传统来的,所以相当的稳定而功能强大!

 操作系统(Operation System)主要在管理与驱动硬件,因此必须要能够管理内存、管理装置、 负责行程管理以及系统呼叫等等。因此,只要能够让硬件准备妥当(Ready)的情况, 就是一个阳春的操作系统了。

2Linux 之前,Unix 的历史
    Unix 的前身是由贝尔实验室(Bell lab.)的 Ken Thompson 利用汇编语言写成的, 后来在 1971-1973 年间由Dennis Ritchie 以 C 程序语言进行改写,才称为 Unix
 1977 年由 Bill Joy 释出 BSD (Berkeley Software Distribution),这些称为 Unix-like 的操作系统。(Unix重要分支)
 1984 年由 Andrew Tanenbaum 开始制作 Minix 操作系统,该系统可以提供原始码以及软件。
 1984 年由 Richard Stallman 提倡 GNU 计划,倡导自由软件(Free software), 强调其软件可以『自由的取得、复制、修改与再发行』,并规范出 GPL 授权模式, 任何 GPL(General Public License)软件均不可单纯仅贩卖其软件,也不可修改软件授权。

3Linux 的发展

 1991 年由芬兰人 Linus Torvalds 开发出 Linux 操作系统。简而言之, Linux 成功的地方主要在于: Minix(Unix),GNU, Internet, POSIX 及虚拟团队的产生。
  Linux 本身就是个最阳春(好的意思)的操作系统,其开发网站设立在 http://www.kernel.org,我们亦称 Linux 操作系统最底层的数据为『核心(Kernel)』。

 从 Linux kernel 3.0 开始,已经舍弃奇数、偶数的核心版本规划,新的规划使用主线版本 (MainLine) 为依据, 并提供长期支持版本 (longterm) 来加强某些功能的持续维护。

4Linux distributions(Linux可完全安装套件或发布商套件)

 Linux distributions 的组成含有:『Linux Kernel + Free Software + Documentations(Tools) + 可完全安装的程序』所制成的一套完整的系统。
 常见的 Linux distributions 分类有『商业、社群』分类法,或『RPM、DPKG』分类法

鸟叔Linux学习笔记:第一章 Linux是什么与如何学习_第2张图片

    Distributions 主要分为两大系统:

                    (1)使用 RPM 方式安装软件的系统,包括 Red Hat,Fedora, SuSE 等都是这类;

                    (2)使用 Debian 的 dpkg 方式安装软件的系统,包括 Debian, Ubuntu,B2D 等等。

    建议:如果是要装在个人计算机上面做为桌面计算机用的,建议使用社群版, 包括 Fedora, Ubuntu, OpenSuSE 等。    如果是用在服务器上面的,建议使用商业版本,包括 Red Hat, SuSE 等。

5Linux 当前应用的角色

 企业环境的利用:网络服务器(支持度比较广的是Red Hat 以及SuSU)

         关键任务的应用(金融数据库、大型企业网管环境)

         学术机构的高效能运算任务(Linux 有强大的运算能力,有支持度相当广泛的 GCC 编译软件)

 

 个人环境的使用:桌面计算机

         手持系统(PDA、手机) Android 其实就是 Linux 核心的一支,只是专门用来针对手机/平板这类的                       ARM 机器所设计的

         嵌入式系统(路由器,防火墙,手机、交换器、机器人控制芯片、家电用品的微电脑控   制器等)

 云端运用:云程序,云程序的底层就是 Linux ,而云程序搭建出来的虚拟机,内容也是 Linux 操作系统

      端设备:树莓派 (Raspberry Pi) 与香蕉派(Banana Pi)


6Linux 该如何学习

 建议:

(1) 计算器概论与硬件相关知识:
因为既然想要走 Linux 这门路,信息相关的基础技能也不能没有啊! 所以先理解一下基础的硬件知识,不用一定要全懂啦!又不是真的要你去组计算机~^_^, 但是至少要『听过、有概念』即可;
(2)先从 Linux 的安装与指令学起:
没有 Linux 怎么学习 Linux 呢?所以好好的安装起一套你需要的 Linux 吧!虽然说 Linux distributions 很多,不过基本上架构都是大同小异的,差别在于接口的亲和力与软件的选择不同罢了! 选择一套你喜欢的就好了,倒是没有哪一套特别好说~
(3)Linux 操作系统的基础技能:
这些包含了『使用者、群组的概念』『权限的观念』『程序的定义』等等,尤其是权限的概念, 由于不同的权限设定会妨碍你的使用者的便利性,但是太过于便利又会导致入侵的可能! 所以这里需要了解一下你的系统呦!

(4)务必学会 vi 文书编辑器:
Linux 的文书编辑器多到会让你数到生气!不过,vi 却是强烈建议要先学习的! 这是因为 vi 会被很多软件
所呼叫,加上所有的 Unix like 系统上面都有 vi,所以你一定要学会才好!
(5)Shell 与 Shell Script 的学习:
其实鸟哥上面一直谈到的『文字接口』说穿了就是一个名为 shell 的软件啦!既然要玩文字接口,当然就是要会使用 shell 的意思。 但是 shell 上面的数据太多了,包括『正规表示法』『管线命令』与『数据流重导向』等等,真的需要了解比较好呦! 此外,为了帮助你未来的管理服务器的便利性,shell scripts 也是挺重要的!要学要学!
(6) 一定要会软件管理员:
因为玩 Linux 常常会面临得要自己安装驱动程序或者是安装额外软件的时候,尤其是嵌入式设备或者是学术研究单位等。 这个时候 Tarball/RPM/DPKG/YUM/APT 等软件管理员的安装方式的了解,对你来说就重要到不行了!
(7) 网络基础的建立:
如果上面你都通过了,那么网络的基础就是下一阶段要接触的咚咚,这部份包含了『IP 概念』『路由概念』等等;
(8) 如果连网络基础都通过了,那么网站的架设对你来说,简直就是『太简单啦!』


你可能感兴趣的:(Linux学习)