本文有些内容是网页https://comptechdoc.org/ 的翻译加上我自己的见解,主要对象是想学linux的新手,介绍的是linux的基本概念和基本操作命令。
先说说linux的发行版和linux内核的关系。我们常说的linux实际上是linux的内核,网站是www.kernel.org,linux诞生于1991年,最初的目的是用于开源替代unix,Linux可以由任何人使用并在GPLV2的协议下进行分发,而这个内核可以安装到不同的硬件系统之上,大到超级计算机,小到微型的嵌入系统,都可以见到linux的身影,linux内核提供的一组操作系统的API函数,而使用者可以基于内核构建自己的操作系统,也就说如果只有内核你是做不了任何事的,需要在内核的基础上构建一系列的应用程序,最终的用户才可以使用。而发行版完成的就是这样的工作,在内核基础上进行二次开发,从而展现给最终用户使用。下面就是一些知名度非常高的发现版:
也就是说如果你愿意并且有能力同样可以构建自己的发行版,这也是linux的魅力所在,因为它是可以自由使用的。
因为linux的内核实际上不是真正意义的操作系统,所以要作为操作系统还要增加如下的部分才能构成真正的操作系统:
bootloader :该部分用于载入操作系统,管理系统的启动过程,因为操作系统通常上保存在一些媒体介质上,而通常情况下需要把二进制程序从这些介质上载入内存,这个载入程序为了提高载入速度和降低开发难度,通常不会做的很复杂
然后就是内核了,这个就是大家都熟悉的linux了,也是一切程序运行的核心。
对于桌面的操作系统还有两个重要的组件:
图形服务器:这个子系统主要用于提供显示界面,通常被称为x-server,(现在还有wayland,据说有可能在将来取代x-server)
桌面环境:这就是和我们打交道比较多的应用程序,比如GNOME,CINNARMON,KDE之类,用户可以通过它们和操作系统交互。
然后就是具体的应用了,这个是我们真正需要的东西,也是针对不同用户需求开发的,桌面环境其实是应用的一个特例。
linux的一个特色就是命令行操作,和windows不一样,命令行在处理大量需要重复使用并且有较少差异的命令时是有很大优势的。
下面说一些命令行中基本使用的命令:
ls 列出目前目录下的所有文件,如果不带任何参数只会列出文件名称,-l 列出文件的i详细信息。 -a 列出所有文件包括隐藏文件 -lt 按照时间排序列出
pwd 列出目前的工作路径
cd 改变工作目录。
mkdir 在当前路径下创建目录
mv 改名或者移动文件
uname 显示内核版本和操作系统版本,加上参数 -a 可以显示所有信息
cat 显示文件内容
cp 拷贝文件或者文件夹, 拷贝文件夹要加上 -r 参数
scp 远程拷贝文件,
top 显示进行运行
kill 关闭进程
ip a 显示网卡ip 地址
vi 行编辑器,如果没有 gui,可以用它来编辑文件,如果实在不习惯这种行编辑形式,也可以用nano