Introduction

现在是2月15日大年初六,刷B站的时候偶然发现了这一款优秀的笔记软件,再加上刷到了AliAbdaal的日记视频,我动了用日记记录生活的念头。于是在十点四十四分,我第一次在obsidian是实现了”hello world”,由于第一次使用这个软件,还不熟练他的功能模式,可能会有一些好用的功能未能实现,原本是想等到大致掌握了一些实用的功能在来创作的,可是迎面而来的界面像是有种别样的魅力似的当我敲动了键盘。

这几天我在思考使用 hexo + 服务器 的博客项目是否适合我,如今博客上好像变成了单纯的知识点汇总,仅仅点出了知识点,而没有自己的思考,这一点貌似和我建立这个博客的初衷有些许违背。于是我想在obsidian上尝试日记式的知识输出模式。正值寒假,阅读了一本经典的Linux书籍——《鸟哥的LINUX私房菜》,全书共有五部分,共计七百余页,由于看的时候同时在机器上测试,又在书上写写画画,我的阅读进度并不算快,目前为止也仅看完了第一部分——Linux的规则与安装

Linux的规则与安装

前段时间我的电脑由于硬盘空间不足,C盘常常是红彤彤的一片,相信有不少人也有同样的问题,我的解决方法就比较直接了,由于我的戴尔是单槽只能更换整个硬盘,下了好大的决心购置了硬盘盒用于存放原本的硬盘,又购置了新的硬盘。

新的硬盘到了比不可少的就是安装系统,安装驱动等等操作,而我受到了同学双系统的影响,想尝试单硬盘双系统,于是走上了各处找资料的路途。要是我在那是就读完了这本书的第一部分,可能整个过程就通顺的多了,现在想想着实后悔闲置着书不花时间读。

这一部分介绍了一些关于计算机硬件的知识、Linux的发展历史、磁盘规划以及一些常用的命令。这对于以为装机小白来说是难有的详细到小小知识点的介绍。

Linux的发展

Linux内核是由Linus Torvalds开发的,他收到了Unix操作系统的启发。Unix的最初原型Unics是由Ken Thompson使用汇编语言写成的一组内核程序。后来与Dennis Ritchie合作下用C语言重新实现了Unix,这个重新实现的版本被称为“New Unix”。目前还存在一些纯种的Unix,如System V 和 BSD 它们都是基于原始的Unix系统发展而来的,并且仍然在一定程度上保留了Unix的特性和接口。

在版权纠纷的影响下,学校不允许教授Unix源代码。这使得Andrew S. Tanenbaum教授开发了一个名为Minix的小型操作系统内核用于教学和研究。Minix内核受到了广泛的欢迎,但Tanenbaum教授却没有继续开发它。

与此同时Richard Stallman等人成立了GNU计划,旨在开发一个完全自由和开源的类Unix操作系统。GNU计划开发了许多工具和组件,但在内核方面遇到了困难。正是在这个时候,Linus Torvalds开发了Linux内核,并将其与GNU计划中的工具结合起来,形成了现代Linux操作系统。

接口对应名称

在Linux系统中所有的数据、设备都是以文件的方式存在的。我们平时使用的固态硬盘、U盘等设备是通过SATA接口和电脑相连,对应Linux中的 /dev/sd[a-p] 文件 ,a-p对应的设备是由Linux内核检测到磁盘的顺序命名的,值得注意的是,USB磁盘在系统启动后才被识别,所以一般为靠后的名称。有时我们会使用到虚拟接口,如在virtual box中搭建Linux虚拟机或是Linux中搭建虚拟机,这是虚拟设备的文件则是 /dev/vd[a-p]

磁盘格式

磁盘格式有 MBRGPT 两种类型。传统的MBR分区,可以有三种类型的分区,主要分区扩展分区逻辑分区,一块硬盘上主要分区和扩展分区的个数不能超过 4个 ,这是硬盘的限制,但是可以通过扩展分区,启用更多空间记录分区,即在扩展分区之上的逻辑分区。值得注意的是逻辑分区是从第五个盘号开始记录的。GPT分区 则是在MBR分区的基础上进行完善,突破了分区限制。GPT使用LBA分区,前后34个LBA存放相关配置。

LBA0 MBR兼容区块: 启动引导+格式标志
LBA1 GPT表头记录:分区位置+备份位置+校验码
LBA2-33 实际记录分区信息处,默认可提供128组记录

BIOS

BIOS是刻录在ROM中的程序,在开机后自动运行该程序,BIOS启动后通过MBR的启动引导完成系统的启动。传统的BIOS需要GPT磁盘格式具有兼容BIOS的功能才能启动GPT格式磁盘的电脑,而新一代BIOS——UEFI则不需要,UEFI BIOS可以直接读取GPT格式的磁盘。此外在UEFI中新增了一个安全启动(secure boot) 的功能,验证操作系统,某些时候,需要将UEFI的secure boot功能关闭,才能顺利进入Linux

文件系统类型

同时硬盘在分区时,需要指定文件系统类型,某些类型会限制文件的访问。

[!类型]

  • ext2/ext3/ext4:早期文件系统类型
  • swap:磁盘模拟为内存的交换分区,一般在1~2GB即可
  • BIOS Boot:GPT分区所需要的文件系统类型
  • xfs:目前最多用的Linux文件系统类型
  • vfat:该类型可以同时为Linux和windows使用,是双系统最佳的选择

常用快捷键

Ctrl+Alt+[F2-F6] : X window是桌面化linux的重要工具,我们可以在登录界面通过此种方式选择登录方式,默认为F1的桌面登录。
Ctrl+C :中断进程,在中断前要仔细确认是否可以进行中断,万一正在执行的操作一旦中断会对系统产生损害则得不偿失了
Ctrl+D:退出快捷键,起着exit的作用
双Tab:自动补全文件路径,自动补全指令等

常用工具

[!日常工具]
date:查看日期
cal:查看日历
bc:计算机

这三个工具在终端中时常会用到,若是你的Linux输入命令后未能执行操作,可能是因为你的Linux缺少了工具,可以尝试按照提示 sudo apt install xxx的格式进行安装。

帮助文档

在我们使用命令的时候有时会不记得相关的参数,比如查看隐藏文件的ls -a中的 -a 参数,则可以通过在线文档进行查看。

1
man ls 或者 info ls

man -f xxx(whatis):可以查看与某命令有关的文档
man -k xxx(apropos):可以根据关键字来搜索

正确关机

由于Linux时常是多用户使用,正确的关机是必须要学会的操作。可以使用 sync + systemctl poweroff的操作进行关机。sync表示将数据同步存入内存,而后者则是关机。

Summary

现在是2月16日凌晨12点40分,没想到一次使用obsidian写日记使用了如此长的时间,这一部分的内容并不是很难,但是却是入门Linux很重要的知识。这是第一篇这样以日记式记录知识的文章,希望以此为开端,我能坚持不懈的写下去。

Reference

【书籍】《鸟哥的LINUX私房菜》
Ali Abdaal - ✍️改变人生的3种日记写法