概述
Linux 简介
对于初学者而言,你需要明白的一个概念就是,操作系统并不仅仅是只有 windows,个人常用的操作系统还有 macOS,只不过这个操作系统只能跑在苹果电脑上,另外还有一个使用非常广泛的操作系统是 Linux,有些人会把 Linux 装到个人电脑上,再配合图形化界面来使用,但是由于软件应用没有 windows 和 macOS 丰富,所以个人电脑上使用 Linux 的人数相对于 windows 和 macOS 来说,要少很多,但是在服务器领域,主流的就是 Linux,不管是作为软件开发人员还是软件测试人员,都必须掌握 Linux 的相关知识。
Linux 和 window 以及 macOS 不一样的一点是 Linux 属于开源的操作系统,全球大约有数百款的 Linux 系统版本,每个系统版本都有自己的特性和目标人群,我们这里说的各种 Linux 系统版本,实际上是由 Linux 系统内核+各种常用的软件的集合组成的产品,你也可以在 Linux 内核的基础上定制自己的版本。
Linux 的发型版本大概可以分为 2 类,一类是商业公司维护的发行版本,另一类是社区维护的发型版本,商业公司主要以以著名的 Red Hat(RHEL 红帽)为代表,社区维护版以 Debian 为代表。
下面我们来介绍一些常用的版本。
Redhat 系列,包括:
RHEL (Redhat Enterprise Linux,也就是所谓的 Redhat Advance Server,收费版本,稳定性非常好,适合服务器使用)
Fedora Core (由原来的 Redhat 桌面版本发展而来,免费版本,稳定性较差,最好只用于桌面应用)
CentOS (RHEL 的社区克隆版本,免费版本,稳定性非常好,适合服务器使用)
Debian 系列,包括 Debian 和 Ubuntu 等,分为三个版本分支(branch):
unstable,为最新的测试版本,其中包括最新的软件包,但是也有相对较多的 bug,适合桌面用户。
testing,经过 unstable 中的测试,相对较为稳定,也支持了不少新技术。
stable,一般只用于服务器,上面的软件包大部分都比较过时,但是稳定和安全性都非常的高。
我比较常用的两个版本一个是 centos,一个 ubuntu。
先说 Centos,社区企业操作系统(Community Enterprise Operating System,Centos),来自于 Red Hat Enterprise Linux 依照开放源代码规定释出的源代码所编译而成。由于出自同样的源代码,因此有些要求高度稳定性的服务器以 CentOS 替代商业版的 Red Hat Enterprise Linux 使用。两者的不同,在于 CentOS 并不包含封闭源代码软件。
再说一下 Ubuntu,Ubuntu 是一款基于 Debian 派生的操作系统,对新款硬件具有极强的兼容能力,界面非常友好,容易上手,个人电脑上使用非常多,在 windows 操作系统中可以开启 ubuntu 子系统,同时 Ubuntu 也可以应用于服务器领域。
Linux 目录
学习 Linux 首先要搞清楚 Linux 的目录,因为 Linux 和我们平时用到的个人桌面系统不一样,Linux 本身没有图形化的操作界面,我们操作 Linux 通常是通过命令行的形式来操作,当你通过命令来操作 Linux 的时候,当前的操作在哪个命令下执行,我需要去操作的目录是哪个,这就变得非常重要,如果不搞清楚 Linux 的目录,肯定是学不好 Linux 的。
下面是 Linux 各个目录和具体的作用,简单的记住就行。
Linux 以一种树状结构来组织目录,所有目录都挂载到一个根目录下。
目录 | 作用 |
---|---|
/ | 根目录 |
/lib64 | 给 64 位操作系统提供的,存放一些库 |
/run | 一个临时文件系统,存储系统启动依赖的信息,当系统重启时,这个目录下的文件应该被删除 |
/srv | 存放一些服务启动之后需要提取的数据 |
/mnt | 让用户挂载别的文件系统,例如,挂载一个光驱就放在这个目录下 |
/media | 系统会自动识别一些设备,例如 u 盘,识别后,Linux 会吧识别的设备挂载到这个目录下 |
/sbin | 存放超级管理员使用的系统管理程序 |
/etc | 存放所有的系统管理所需要的配置文件和子目录 |
/dev | 存放 Linux 的外部设备 |
/lost+fount | 一般情况下时空的,当系统非法关机后,这里会存放一些文件 |
/proc | 存储的时当前内核运行状态的一系列特殊文件,这个目录时一个虚拟的目录,它时系统内存的映射,我们可以通过直接房屋这个目录来获取系统信息 |
/sys | 该目录下安装了 linux2.6 内核中新出现的一个文件系统 sysfs |
/var | 这个目录中存放着在不断扩充着的东西,经常被修改的目录或者文件可以放到这个目录下,例如:日志文件 |
/tmp | 存放一些临时文件 |
/usr | unix shared resourse 的缩写,表示共享资源,用户的很多应用程序和文件都放在这个目录下,类似于 windows 下的 program files 目录 |
/home | 用户的主目录 |
/root | 超级管理员的用户主目录 |
/boot | 存放启动 Linux 时使用的一些核心文件 |
/lib | 存放系统最基本的动态连接共享库 |
/opt | 给主机额外安装软件摆放的目录,例如你安装一个额外的数据库软件就可以放到这个目录下 |
/bin | 存放最常用的命令,一些二进制文件 |