文章目录
Linux(里纽克斯,利奇才,里纳克斯)是一款开源、安全、高效、稳定的操作系统,内核最初是由李纳斯•托瓦兹(LinusTorvalds)在慕尼黑学院读书时出于个人爱好而编撰的,当时他认为教学用的迷你版UNIX操作系统Minix太难用了,于是决定自己开发一个操作系统。第1版本于1991年9月发布,当时仅有10000行代码。
在目前主流的服务器端操作系统中,UNIX诞生于20世纪60年代末软件最多的linux版本,Windows诞生于20世纪80年代中期,Linux诞生于20世纪90年代初,可以说UNIX是操作系统中的”老大哥”,后来的Windows和Linux都参考了UNIX。
为何
在编程世界中,Linux就是主流,不会Linux你才会格格不入。这些火得不行的技术,哪些云估算、虚拟化、容器、大数据、人工智能,几乎都是基于Linux技术的。这些牛得不行的团购、电商、打车等也几乎都是布署基于Linux技术服务端。所以说,假如你想进大公司,想学新技术,Linux一定是一道绕不过去的坎。只有步入Linux操作系统这扇门,你就能成为合格的软件工程师。
Linux提供了一个生态,上面丰富多彩。好多大牛都是基于Linux来开发各类各样的软件。可以如此说,只要你能想像到的技术领域,几乎都能在上面找到Linux的身影。数据库MySQL、PostgreSQL,消息队列RabbitMQ、Kafka,大数据Hadoop、Spark,虚拟化KVM、Openvswitch,容器Kubernetes、Docker,这种软件就会默认提供Linux下的安装、使用、运维指南,就会默认先适配Linux。
发行版本
在Linux内核的发展过程中,各类Linux发行版本起了巨大的作用,它们使用的是同一个Linux内核,因而在内核层不存在哪些兼容性问题,每位版本有不一样的觉得,只是在发行版本的最内层(由发行商整合开发的应用)才有所彰显。常见发行版有RedHat,Ubuntu等。其中,RedHat是在我国国外使用人群最多的Linux版本,资料丰富,假如你有哪些不明白的地方linux空间,则容易找到人来讨教,但是大多数Linux教程是以RedHat为例来进行讲解的。本教程以我国国外互联网公司常用的Linux发行版本CentOS为例进行讲解,它是基于RedHatEnterpriseLinux源代码重新编译、去除RedHat商标的产物软件最多的linux版本,完全免费。缺点是不向用户提供技术支持,也不负任何商业责任。有实力的公司可以选择付费版本。
怎样学习linux
好多人认为Linux操作系统刚开始学上去很难,主要是由于我们平常办公或则学习用的都是Windows系统,而Windows和Linux的使用模式是完全不一样的。Windows的基本使用模式是“图形化界面+菜单”。也就是说,无论我们做哪些事情,首先要找一个图形化的界面。在这儿面,“开始”菜单是统一的入口,无论是运行程序,还是做系统设置,你都能找到一个界面,界面上会有各类各样的输入框和菜单。我们只要逐个儿看过去,总能找到想操作的功能。实在不行,还有杀手锏,就是右键菜单,逐个儿一项一项看下去,最终也能实现想做的操作。假如你刚才上手Linux,都会发觉,情况完全不一样。你基本是这也找不着linux makefile,那也找不着,认为Linux非常难用,因而“从入门到舍弃”。Linux上手难,学习曲线崎岖,所以它的学习过程更像一个爬坡模式。这种坡看上去都很陡,但是一旦爬上一阶,都会一马平川。你会惊讶Linux的设计之美,而Linux的灵活性也会促使你有N多种方式解决问题,因而事半功倍,你还会有一切尽在把握的觉得。
上手Linux的第一步,要先从Windows的思维习惯,切换成Linux的“命令行+文件”使用模式。在Linux中,无论我们做哪些事情,还会有相应的命令工具。其实这种命令通常会在bin或则sbin目录下边,然而这种命令的数目太多了。假如你事先不晓得该用那个命令,很难通过枚举的方法找到。为此,在这样没有统一入口的情况下,就须要你对最基本的命令有所把握。一旦找到某个命令行工具,取代输入框的是各类各样的启动参数。那些参数如何填,通常可以通过-h查看help,逐个儿看过去,才能找到相应的配置项;还可以通过man命令,查看文档。无论是哪些命令行工具,最终的配置通常会落到一个文件上,只要找到了哪个文件,文件中会有注释,也可以逐个儿看下去,基本就晓得怎样配置了。这个过程可能十分苦闷,在没有足够熟练地把握命令行之前,你会发觉干个特别小的事情都须要搜索半天,读好多文档,即使这么还不一定能得到期望的结果。这个时侯你一定不要灰心,坚持下去,继续看文档、查资料,渐渐你才会发觉,大部份命令的行为模式都很像,你几乎不须要搜索才能完成大部份操作了。
总结(Summary)
本章节主要对linux系统做了一个概要性介绍,通过本章节的学习可以了解linux系统的一个发展史,linux的重要性,linux发行版本以及liunx该怎样学习。