版本追踪

2024.10.18:初版


1 概述

1.1 计算机基础

1.1.1 CPU 架构

ARM 架构:精简指令集,多用于手机
x86 架构:复杂指令集,多用于电脑,如 Intel,AMD 等,后推出的 64 位 x86 系统简称为 x64

1.2 Linux 简介

Linux,全称 GNU/Linux,是一套开源的类 Unix 操作系统,是一个基于 POSIX 的多用户、多任务、支持多线程和多 CPU 的操作系统

1.3 Linux 与 Windows 的区别

同为计算机操作系统,但 Linux 和常见的 Windows 操作系统依然存在区别

202410182152196.png

从启动流程上来说,二者无显著差异

  1. 系统上电进入引导
  2. 在引导程序中加载操作系统
  3. 启动文件系统
  4. 执行 APP

引导程序和操作系统护卫独立,具体参考 [[BIOS和Bootloader]]

2 系统启动流程

3 文件管理

  • /: 根目录,所有文件和目录的起点。
  • /bin: 存放基本命令的可执行文件(如 lscp 等)。
  • /sbin: 存放系统管理命令的可执行文件(如 shutdownreboot)。
  • /etc: 存放系统配置文件和服务的配置目录。
  • /home: 用户的主目录,每个用户在此目录下有自己的子目录。
  • /lib: 存放系统库文件,供系统和应用程序使用。
  • /usr: 存放用户程序和数据,包括可执行文件、库文件等。
  • /var: 存放可变数据文件,例如日志文件和邮件。
  • /tmp: 临时文件存储目录,系统重启后通常会清空。
  • /dev: 包含设备文件,表示系统中的硬件设备。
  • /proc: 虚拟文件系统,提供关于系统和进程的信息。

4 内存管理

4.1 交换空间

虚拟内存

存储空间换内存空间,默认为临时操作。操作完成后交换空间内的数据会被清除

  • 新增交换空间

    1
    2
    3
    4
    5
    # 开辟一个2G的交换空间
    sudo fallocate -l 2G /swapfile
    sudo chmod 600 /swapfile
    sudo mkswap /swapfile
    sudo swapon /swapfile
  • 检查是否启用

    1
    free -h             # 在输出中,若能看到 Swap 行,显示刚刚创建的 2GB 交换空间
  • 关闭交换空间

    1
    sudo swapoff /swapfile
  • 删除交换空间内数据

    1
    sudo rm /swapfile

5 用户管理

5.1 权限管理

5.1.1 Root

树莓派系统默认 root 账户没有密码,如果需要设置 root 密码,在任意账户登陆后执行

1
sudo passwd root

输入新 root 密码即可

6 命令

6.1 文件系统

  • ls: 列出目录中的文件和目录。
  • cd: 改变当前工作目录。
  • cp: 复制文件或目录。
  • mv: 移动或重命名文件或目录。
  • rm: 删除文件或目录。
  • mkdir: 创建新目录。
  • rmdir: 删除空目录。
  • chmod: 修改文件或目录的权限。
  • chown: 修改文件或目录的所有者。

7 服务

Linux 系统中,任何软件操作都被注册为服务,通过服务来对操作应用进行管理

7.1 文本编辑

7.1.1 nano

快速删除全部内容

1
> file.txt

再次重新打开文件即可

7.2 Shell

[[Shell 脚本]]

7.3 包管理器

包管理器的功能

  • 安装软件包: 从软件源下载并安装指定的软件包。
  • 升级软件包: 更新已安装的软件包到最新版本。
  • 删除软件包: 卸载不再需要的软件包。
  • 管理依赖关系: 自动处理软件包之间的依赖关系,确保系统的完整性。
  • 配置软件源: 允许用户添加或更改软件源,从中获取软件包。

7.3.1 apt

  • 适用于 Debian 和基于 Debian 的发行版,如 Ubuntu
1
2
sudo apt update
sudo apt install <package-name>

7.3.2 yum/dnf

  • 适用于 CentOS / Fedora
    1
    sudo yum install <package-name>

7.3.3 离线安装

离线安装的执行文件放到 /usr/local/bin 目录下,在为其添加权限 sudo chmod +x /usr/local/bin/docker-compose,之后即可通过终端指令的方式执行该文件

7.4 Cron

cron 是一个用于在 Linux 系统中用于定期执行任务的服务,一般由 Linux 发行版自带,服务随系统自启

  • 打开 cron

    1
    crontab -e

    如果是第一次使用,可能会询问选择编辑器,如 nanovim

  • 添加定时任务

    1
    */30 * * * * /bin/systemctl restart frpc.service

*/30:每30分钟
*:每小时
*:每天
*:每月
*:每周的每一天

  • 检查 cron 服务状态

    1
    sudo systemctl status cron
  • 启用 cron 服务

    1
    sudo systemctl start cron

    一般情况下,cron 服务会随系统自动启动

  • 验证定时任务是否添加成功

    1
    crontab -l

该脚本服务随用户走,不同用户可以添加各自的脚本

7.5 下载

7.5.1 Wget

1
wget "url"

7.6 解压

  • .tar.gz

通过 tar -zxvf filename.tar.gz 指令进行解压

8 应用

8.1 Docker

8.1.1 部署

  • 安装相关工具

    1
    sudo apt install apt-transport-https ca-certificates curl software-properties-common
  • 添加 docker 密钥

    1
    curl -fsSL https://download.docker.com/linux/debian/gpg | sudo apt-key add -
  • 添加 apt 源

    1
    echo "deb [arch=armhf] https://download.docker.com/linux/debian $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list
  • 更新包索引

    1
    sudo apt update
  • 安装 docker

    1
    sudo apt install docker-ce
  • 配置 docker 随系统自启动

    1
    sudo systemctl enable docker

docker-compose(选装)

  • 下载 docker-compose

    1
    sudo curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
  • 赋予权限

    1
    sudo chmod +x /usr/local/bin/docker-compose
  • 验证安装

    1
    docker-compose --version

8.1.2 镜像源

8.1.3 挂载和卷

8.1.4 Docker-compose

8.2 文件传输

8.3 Clash

#嵌入式
#Linux
#操作系统
#todo