Linux学习 | 青训营笔记

126 阅读2分钟

这是我参与「第四届青训营 」笔记创作活动的第15天。

Linux系统启动过程

主要分为5个阶段:

  1. 内核的引导

    1. BIOS开机自检,一般是硬盘来启动,读入/boot目录下的内核文件
  2. 运行init

    1. 没有init进程,所有进程都不会启动
    2. 守护进程:开机的启动程序
    3. 运行级别:Linux有7个运行级别,级别不同,功能也就不同,当然启动的程序也不同,比如到Linux作为服务器或者作为桌面时的启动程序是不同的。
  3. 系统初始化

    1. 激活交换分区、检查磁盘、加载硬件模块以及其他的一些需要优先执行任务
    2. 当init改变运行级别时,所有相关的守护进程也都会重启。
    3. 守护进程可以设置
  4. 建立终端

    1. init完成后,会打开6个终端
  5. 用户登录系统

    1. 命令行登录、ssh登录、图形界面登录
  6. Linux关机

    sync  将数据由内存同步到硬盘中
    shutdown 关机指令
    shutdown -h 10/+10/now/20:25 10分钟后/立刻/20:25关机
    shutdown -r now/+10 立刻/10分钟后重启
    reboot 重启,等同于shutdown -r now
    halt 关闭系统,等同于shutdown -h now 和poweroff
    

    也可以使用halt和poweroff命令,但是halt这里只是停止了所有的CPU功能,但是仍然保持通电,系统仍然处于低层维护阶段。有些情况下会直接关机。

    可以使用shutdown -c命令来取消关机

Shell

什么是Shell

Shell是系统的用户界面,提供了用户与内核进行交互操作的一种接口。如下: image-20220824084506281

Shell命令

Shell命令分为内部命令和外部命令

内部命令是Shell本身包含的一些命令,这些内部命令的代码是整个shell代码的一个组成部分

外部命令的代码存放在一些二进制的可执行文件以及shell脚本中,处理时,shell脚本会先搜索文件,再调入内存中执行。

Shell的种类

一般为bash和bsh,bsh在bash的基础上增加了许多的特性。

chsh -l 展示/etc/shells的档案内容