阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

我的Linux学习笔记·Linux操作系统基础

156次阅读
没有评论

共计 2784 个字符,预计需要花费 7 分钟才能阅读完成。

今天的笔记主要是关于 Linux 操作系统根底的相关学问。那就从我面前的电脑开端讲起。

计算机和操作系统

计算机主要包括五个部分:运算器,控制器,存储器,输入设备和输出设备。通常,运算器,控制器再加上其他一些部件如寄存器等构成了我们通常所说的 CPU(central processing unit) 存储器则主要是内存。运算器,控制器和存储器可以实现数据的处理.

但是数据从何而来,运算之后的结果去往哪里?

这就需要输入设备和输出设备(I/ O 设备)。我们通常用到的输入设备包括键盘鼠标等,输出设备为屏幕,打印机等。值得一提的是,计算机中有个叫做 硬盘 的东西,它并 不是存储器,而是一个 I / O 设备。在将数据读取到内存时,它是一个输入设备;而将结果保存到磁盘时,它就变成了一个输出设备。

我的 Linux 学习笔记·Linux 操作系统基础

这么多设备整合在一起,就成了一台计算机。它可以接收我们的指令(键盘鼠标),通过运算(CPU),把结果展示给我们(屏幕,硬盘等)。

但是这么多硬件是如何协调作用,共同完成一个任务而不会我行我素地乱来呢?我们需要一个东西,它可以控制硬件有序地工作,各自执行自己的任务,这个东西就是 操作系统(Operating System)。

操作系统是一个特殊的软件,它的任务就是硬件管理—控制 CPU 的运算,控制内存的分配,控制计算机的几乎一切。假如一台电脑没有操作系统,它可能只是一个艺术品,或者一堆废铁。

一个完整的操作系统包括内核和一些辅助软件。

内核 的主要任务就是进行硬件管理,它是一个操作系统最基础最底层的东西。内核若想很好地控制硬件并使其发挥相应的功能,需要和硬件相识相知相爱,他俩可以成为完美的一对,全都仰仗于驱动的帮忙。驱动 是硬件的灵魂,它向操作系统提供了访问和使用硬件的接口,以便在某项任务中最高效地调用硬件。

什么是 Linux

Linux 就是一个操作系统,它可以管理整个计算机硬件,并且可以接收我们的指令,来指挥硬件完成相应的任务,并把结果反馈给我们。Linux 是由 Linus Torvalds 在 1991 年开发的,它稳定性高,配置要求低,而且免费。不同的发行商使用 Linux 内核,对其进行软件和管理工具的封装,形成了不同的 Linux 发行版。不同发行版之间的差别并不是太大,根据发行商的不同,各种 Linux 发行版也被分为多个系列:如红帽系列的 RedHat, CentOs, Fedora; Debian 系列的 Ubuntu, Mint 以及 Suse 系列等。

我的 Linux 学习笔记·Linux 操作系统基础

Shell:用户与内核之间的中介

操作系统除了要与硬件打交道,还要和我们人类打交道,毕竟电脑是为人民服务。而我们与系统之间的交互,仰仗于一个重要的软件—Shell。

Shell 是用户与内核之间的中介,我们可以把它当作一个命令解释器,我们输入某些命令,shell 将它解释成内核可以理解的语言,从而使内核执行后续的相关操作。

Shell 可以分为图形界面 shell(GraphicalUser Interface,GUI)和命令行 shell(Command Line Interface,GLI)。我们常用的 windows 操作系统所用的 WindowsExplorer 就是图形界面的 shell,而在 Linux 中流行的 bash 则是命令行 shell。当然,Linux 中也有图形界面的 shell,如 x -window 等。后面我们会慢慢讲到 Shell(bash)的一些特性。

我的 Linux 学习笔记·Linux 操作系统基础

Linux的根文件系统

Linux 的基本哲学之一:“一切皆文件”。

不管是普通的文件,目录还是设备,在 Linux 中都被当作文件并对其进行操作。而 Linux 对这些文件进行管理则主要依赖于它的根文件系统(root file system)。

Linux 下的每一个文件都必须处于根文件系统下的某一路径,最底层的路径为 root,我们用 / 来表示。/ 下可以延伸出其他路径,这个路径下可以有文件或者目录(目录也是一种特殊的文件)。Linux 系统的一切都处于 / 下,为了方便的大家的管理和使用,Filesystem Hierarchy Standard(文件系统层次标准,FHS)应运而生。简单地讲,FHS 定义了根下的某个特定目录必须放置特定类型文件,而不能随意更改。比如 /boot 下只能放置系统启动相关的文件,/etc 下是系统主要的配置文件,而任何设备文件都在 /dev 目录下。

我们使用 tree 命令可以显示 / 目录下的各个子目录,以及子目录下的内容。比如我们进入到根目录,看看这个目录下有哪个写子目录,可以使用

Tree –L 1;

我的 Linux 学习笔记·Linux 操作系统基础

我们会发现,根目录下有多个子目录,而这些子目录的名字以及目录下的文件都是被定义好的,下面是FHS 系统的详细说明

/boot: 系统启动相关文件,如内核、initrd,以及 grub(bootloader)

/dev: 设备文件。Linux 下一切皆文件,设备也是以文件的形式存在于这个目录中,里面存放有如 /dev/hd*,/dev/sd* 等设备文件。

/etc:配置文件。如用户的账号文件 /etc/passwd,密码文件:/etc/shadow 等都存放在这个目录中。

/home:用户的家目录。用户登陆后默认处于自己的家目录中,常用~ 代表当前用户的家目录。

/root:管理员的家目录

/lib:库文件,主要放置开机时会用到的库。库文件可以分为静态库(*.a)和动态库(*.so)。库文件不能单独执行,只能被调用

/media:挂载点目录,通常用于挂载移动设备

/mnt:额外的临时文件系统,如光盘

/opt:可选目录,早期为第三方程序安装目录

/proc:伪文件系统,内核映射文件,为内核工作的统计数据等

只有内核运行时才有文件,关机下为空的

/sys:伪文件系统,跟硬件设备相关的属性映射文件

/tmp:临时文件

/var:可变化文件

/bin:binary,可执行文件,用户命令

/sbin:管理命令

/usr:universal shared read-only,全局共享只读文件

/usr/bin

/usr/sbin

usr 下的 bin 和 sbin 是与系统提供某些功能相关的命令

根目录下的 bin 和 sbin 是和系统启动相关的命令

更详细的信息大家可以参照:

通过上面我们了解了什么是 Linux 系统以及它的根文件系统,基本都是一些理论知识,但是个人觉得了解这些知识还是挺有必要的。后面,如果我们要想真正开始使用 Linux 系统,首先还要学会一些基本的命令,如:

目录管理命令:mkdir, rmdir

文件管理命令:touch, rm, cp,mv

文本查看命令:cat, tac,more, less, head, tail

文本处理命令:cut, sort,uniq, wc, tr

以及一些其他常用命令如 ls, cd,alias, history 等。详细的运用能够参考我们之前的一些生信入门文章或者网上搜一下。

 

马哥学习交流群

马哥教育 -Linux 学习 - 1 群 485374463

马哥教育 -Linux 学习 - 2 群 339184057

正文完
星哥玩云-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-12-03发表,共计2784字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中