大家好,我是浪雨,最近开始了linux的同步学习,Linux的学习广且杂,有很多的命令需要自己去探索发现,因此Linux的学习不能局限于课本和课堂中,多学习大佬们的写法,多阅读博客,多敲多练,效果更好。笔者也是初学者,此博客内容是笔者学习Linux时的总结,因知识有限,视野有局限,错误难以避免,有问题可以私信我或在评论下留言
1.Linux的发展史以及linux与unix的关系
unix是众多操作系统的鼻祖,这个操作系统在1973年正式诞生,一开始是开源免费的,因此被很多的同行借鉴修改,很多也发展成了至今都闻名的操作系统,后来unix开始商业化,源代码也不再开源 ,但Unix的收费不是一般人能负担的起的。因此一位大学教授Andrew Tanenbaum,为了方便教学,根据Unix上的功能,自己编写了一个Unix like系统,也就是Minux,这个系统售价低,能够兼容Unix,并且购买后会附上源代码,但老教授只是为了教学,不愿意增加其他功能。
而我们的Linux之父Linus Torvalds(托瓦兹)在使用Minux之后感觉很好用,但觉得其功能太少,不够用,于是他参照Minux的源码,想自己编写一个操作系统,于是Linux就诞生了,但他编写的Linux只是系统的核心,没有配套软件可用,他将这个核心加入到GNU计划(自由软件计划,该计划内的软件都是开源免费的),而GNU计划中围绕着Unix开发了很多的免费软件,就差一个系统核心,而Linux的到来填补了这个空白,于是越来越多的人开始使用Linux系统,Linux发展飞速。
下面是一张简易的操作系统的发展图
2.Linux的发行版本
因为Linux只是操作系统的核心层,所以将其配备不同的软件库就衍生出了很多的发行版本,发行版本很多,但都是使用Linux的内核,常见的发行商有Red Hat ,SUSE ,Mandriva ,Debian等等
其中红帽的enter price是商业收费版,非常稳定,fedora和CentOS是免费使用的,centos稍稳定一些,Debian的ubuntu和SUSE图形化界面做的很不错,国内一般用ubuntu和centos的比较多,往后的内容,我用的是centos7以及红帽8版本,两者区别很小,事实上centos已经被红帽收购,并且几年后就不再更新维护了。
3.Linux的文件概念以及常见的文件作用
windows系统的磁盘分区,可以将磁盘分为C,D,E,F等,然后将文件存储到你想放置的磁盘中,各个磁盘是分隔开的,不同于windows,Linux没有磁盘分区的概念,Linux一切皆文件,Linux有一个根目录,其他所有的文件都是在根目录之下的。
我们打开windows的此电脑,会出现各个磁盘分区,我的就是C,D盘
而Linux打开计算机,你会发现都是一些文件夹,但这些文件是没有逻辑关系的,不能按照windows的想法把他们理解在一个磁盘空间中。
Linux有挂载的概念,简单来说就是把某一块空间接到指定文件夹下面,通过这个文件夹,你就能找到这块空间。例如,你接入了一块硬盘,插入电脑后,Linux会默认把这块硬盘空间挂载到media文件下,也就是说你想找到接入的硬盘中的内容,去media文件夹找就可,而windows呢,会弹出类似C,D盘的一个分区,进入该分区就能找到硬盘的全部内容
在进行Linux的空间分配时,一般要考虑swap文件,你可以自行分配一块空间挂载到该文件下,这个空间只需比内存大一点就好,因为该文件的作用就是当内存满了的时候,可以把暂时用不到的东西放到该空间下面,防止爆内存导致卡死。导航文件夹,这个可以稍微小一点,这个用来放置开机启动的一些文件。剩下的全部空间都可挂载到根目录下面,根目录是你使用其他所有文件的根源,根目录下面的tmp是用来存放临时文件和内容的,根目录下的media一般挂载着接入的硬盘,bin里放着的是一些二进制文件,很多的操作指令就放在里面,最好不要随意更改,etc放着系统文件,也最好不要乱改,其余有兴趣大家可自行查阅
文章参考内容:《鸟哥的Linux私房菜》,B站视频UP:尚硅谷