Debian快速入门

Copyright © Quectel Wireless Solutions Co., Ltd. 2026. All rights reserved.


本系列教程面向 Quectel Pi M1/L1 智能主控板的初学者,帮助您快速上手 Debian 系统中的常见操作与开发任务。内容涵盖基础命令、文件管理、文本编辑、软件包管理、输入法配置等。后续快速入门及相关操作会使用部分 Linux 基础命令,如您第一次接触 Linux 或不熟悉 Linux 命令行,建议先阅读本章节。

文件属性与权限

了解 Linux 文件的类型、所有者、权限位结构,学习使用 ls -l 查看文件属性,以及通过 chown、chmod 命令管理文件的所有者和访问权限。

在 Linux 中,文件不仅仅有“文件名”和“大小”,还包含所有者、所属组、访问权限、类型和修改时间等属性。理解这些属性后,您才能判断为什么某个脚本无法执行、为什么某个目录无法写入,或者为什么修改系统配置文件时需要 sudo。

文件属性查看方法

最常用的查看方式是:

ls -l

如果需要同时显示隐藏文件,并以更易读的方式显示文件大小,可以使用:

ls -lah

典型输出如下:

-rwxr-xr-- 1 pi pi 2048 Jun 22 10:30 demo.sh

这一行信息可以拆分为以下几个部分:

字段

示例

说明

文件类型与权限

-rwxr-xr--

第 1 位表示文件类型,后 9 位表示权限

链接数

1

有多少个目录项指向该文件

所有者

pi

谁拥有这个文件

所属组

pi

该文件归属的用户组

大小

2048

文件大小,单位通常为字节

修改时间

Jun 22 10:30

最后修改时间

文件名

demo.sh

文件名称

文件类型识别

权限串的第 1 位表示文件类型:

例如:

  • drwxr-xr-x 表示目录。

  • -rw-r--r-- 表示普通文件。

  • lrwxrwxrwx 表示符号链接。

权限位结构说明

第 2 到第 10 位一共 9 个字符,分成 3 组:

rwx r-x r--
|   |   |
|   |   +-- 其他用户(others)权限
|   +------ 所属组(group)权限
+---------- 所有者(owner)权限

每组权限中:

符号

含义

r

可读

w

可写

x

可执行

-

没有该权限

例如:

  • rw-r--r--:所有者可读可写,组用户只读,其他用户只读。

  • rwxr-xr-x:所有者可读可写可执行,其他人可读可执行。

chown:所有者与所属组管理

当文件属于错误的用户或用户组时,可以使用 chown。

基本语法:

sudo chown [选项] 用户[:组] 文件或目录

常用示例:

将文件所有者改为 pi:

sudo chown pi demo.sh

同时修改所有者和所属组:

sudo chown pi:pi demo.sh

递归修改整个目录:

sudo chown -R pi:pi /home/pi/project

只修改所属组:

sudo chown :pi /home/pi/project/config.json

典型应用场景

  • 通过 sudo 解压或复制文件后,文件所有者变成了 root,普通用户 pi 无法继续编辑。

  • 项目目录从外部设备拷贝后,权限与当前用户不一致,需要统一调整。

chmod:访问权限管理

当文件“能看不能改”或“脚本不能执行”时,通常需要使用 chmod。

基本语法:

chmod [选项] 权限 文件或目录

符号模式

格式如下:

[ugoa][+-=][rwx]

其中:

  • u 表示所有者

  • g 表示所属组

  • o 表示其他用户

  • a 表示所有用户

常用示例:

给当前用户增加执行权限:

chmod u+x demo.sh

给所有用户增加读权限:

chmod a+r demo.txt

移除其他用户写权限:

chmod o-w demo.txt

数字模式

权限也可以写成数字,例如:

chmod 755 demo.sh
chmod 644 notes.txt

这里的 3 位数字分别对应:

chmod 754 demo.sh
    | | |
    | | +-- 其他用户(others)权限
    | +---- 所属组(group)权限
    +------ 所有者(owner)权限

每一组 rwx 权限都可以看成 3 个开关位:

  • r 是否开启

  • w 是否开启

  • x 是否开启

这 3 个开关既可以理解成“加法权重”,也可以理解成一个 3 位二进制数:

对应关系如下:

权限位

二进制位

十进制权重

r

100

4

w

10

2

x

1

1

因此,一组权限的数字,本质上就是把开启的权限位相加:

  • r-- = 100 = 4

  • rw- = 110 = 4 + 2 = 6

  • r-x = 101 = 4 + 1 = 5

  • rwx = 111 = 4 + 2 + 1 = 7

  • --- = 000 = 0

操作示例

为脚本添加执行权限

chmod u+x start.sh
./start.sh

保护私有配置文件

chmod 600 ~/.ssh/config

文件与目录管理

掌握 Linux 中最常用的文件与目录操作命令:pwd、cd、ls、mkdir、rmdir、cp、rm、mv,以及 cat、tail 等文件内容查看工具。

在 Linux 中,大多数日常操作都围绕“路径”和“目录”展开。无论是查看日志、切换项目目录、复制模型文件,还是删除无用资源,都离不开常用的文件与目录命令。

路径与目录基础概念

当前工作目录

终端始终会有一个“当前所在目录”。很多命令默认都作用于当前目录,因此先知道自己在哪里非常重要。

查看当前目录:

pwd

路径表示方式

  • 绝对路径:从根目录 / 开始,例如 /home/pi/project。

  • 相对路径:相对于当前目录,例如 project/src。

常见特殊写法:

  • . 表示当前目录

  • .. 表示上一级目录

  • ~ 表示当前用户主目录,例如 /home/pi

常用系统目录

在 Debian 系统中,您会经常接触以下目录:

目录

作用

/etc

系统配置文件

/opt

第三方应用或自定义程序

/var/log

系统日志

/tmp

临时文件

常用命令

ls:目录内容查看

ls 命令用于显示指定工作目录下之内容(列出目前工作目录所含的文件及子目录)

示例:

#当前目录内容查看
ls

#查看当前目录所有文件,包括隐藏文件
ls -l
ls -la

#查看更易读的文件大小
ls -lh

#按时间排序查看文件
ls -ltr

cd:目录切换

cd 命令用于改变当前工作目录的命令,切换到指定的路径。

cd [dirName]
# dirName:要切换的目标目录,可以是相对路径或绝对路径。

示例:

#切换到 usr 目录
cd /usr

#回到上一级目录
cd ..

#回到用户家目录
cd ~

#回到上一次所在目录
cd -

mkdir 与 rmdir:目录创建与删除

mkdir 命令用于创建目录,rmdir 命令用于删除空目录。

# -p 确保目录名称存在,不存在的就建一个
mkdir [-p] dirName

#-p 是当子目录被删除后使它也成为空目录的话,则顺便一并删除
rmdir [-p] dirName

示例:

#在当前目录下创建 logs 目录
mkdir logs

#自动创建不存在的父目录 project/data
mkdir -p project/data/raw

#删除 logs 目录,logs目录需为空
rmdir logs

cp:文件与目录复制

通过 cp 命令,用户可以将文件或目录从一个位置复制到另一个位置。

cp [选项] 源文件 目标文件

示例:

#将文件 source.txt 复制为 backup.txt
cp source.txt backup.txt

#复制目录
cp -r project project_backup

mv:移动与重命名

mv 命令用来为文件或目录改名、或将文件或目录移入其它位置。

#将 app.log 移动到 /tmp/目录下
mv app.log /tmp/

#将 old_name.txt 文件 重命名为 new_name.txt
mv old_name.txt new_name.txt

#重命名目录,将 dataset 目录重命名为 dataset_old
mv dataset dataset_old

rm:文件与目录删除

rm 命令用于删除一个文件或者目录。

#删除文件 demo.txt
rm demo.txt

#将 demo_dir 目录及子目录都删除
rm -r demo_dir

#强制删除并且不提示
rm -rf demo_dir

注意

rm -rf 是高风险命令,不会进入回收站。执行前建议先用 pwd 和 ls 再确认一次目标路径。

cat 与 tail:文件内容查看

cat 命令

cat 命令用于连接文件并打印到标准输出设备上,它的主要作用是用于查看和连接文件。

#查看 README.md 文件内容
cat README.md

#配合行号显示查看:
cat -n app.py

tail 命令

tail 命令可用于查看文件的内容。

# 默认显示最后10行系统日志
tail /var/log/syslog

#查看系统日志 /var/log/syslog 末尾50行
tail -n 50 /var/log/syslog

#实时跟踪日志
tail -f /var/log/syslog

基础操作示例

创建项目目录并进入

mkdir -p ~/project/demo
cd ~/project/demo
pwd

备份配置文件

cp -i /etc/hosts ~/hosts.bak

清理临时目录

rm -r ~/project/demo/tmp

文本编辑

在使用 Quectel Pi M1 进行开发时,您经常需要修改配置文件、编辑脚本或调整服务参数。终端环境下常用的文本编辑器有 Vim 和 nano。本文分别介绍这两款编辑器的使用方法,您可以根据需要选择适合自己的工具。

Vim 编辑器

Vim 是 vi 编辑器的增强版本,支持语法高亮、搜索替换、批量编辑等能力,适合在本地终端、串口终端和 SSH 会话中使用。

如果系统提示找不到该命令,可以先安装:

sudo apt update
sudo apt install Vim

Vim 基本工作模式

根据常见使用方式,可以把 Vim 理解为三个核心模式:

模式

作用

如何进入

命令模式

移动光标、复制、删除、保存、退出

打开文件后默认进入

输入模式

输入和修改文本

在命令模式按 i、a、o

命令行模式

执行保存、退出、查找替换等命令

在命令模式按 :

这三个模式之间的关系可以简单理解为:

  • 打开文件后先进入命令模式。

  • 需要输入内容时,切换到输入模式。

  • 需要保存、退出或执行查找替换时,切换到命令行模式。

基础操作流程

1. 打开或创建文件

Vim notes.txt

如果文件不存在,Vim 会新建该文件。

2. 进入输入模式

在命令模式按以下任意一个键:

按键

作用

i

在光标当前位置开始输入

a

在光标后一个位置开始输入

o

在当前行下方新增一行并输入

3. 文本录入

进入输入模式后,就可以像普通编辑器一样输入字符。

4. 返回命令模式

按 Esc 键返回命令模式。

5. 保存与退出

在命令模式下输入 : 进入命令行模式,然后执行:

命令

作用

:w

保存

:q

退出

:wq

保存并退出

:q!

不保存,强制退出

常用操作指令

命令模式常用指令

按键

作用

h j k l

左、下、上、右移动光标

x

删除当前字符

dd

删除当前行

yy

复制当前行

p

在下方粘贴

u

撤销

Ctrl+r

重做

/关键字

向下搜索

n

跳转到下一个匹配

命令行模式常用指令

命令

作用

:set nu

显示行号

:set nonu

取消行号

:%s/old/new/g

全文替换

:1,10s/old/new/g

替换第 1 到第 10 行

操作示例

下面以创建一个简单脚本为例:

Vim hello.sh

按 i 进入输入模式,写入:

#!/bin/bash
echo "Hello Quectel Pi M1"

按 Esc 返回命令模式,输入 :wq 保存退出。

随后给脚本增加执行权限:

chmod u+x hello.sh
./hello.sh

编辑系统文件

编辑普通用户目录下的文件,可以直接执行:

Vim ~/notes.txt

编辑系统配置文件时,通常需要 sudo:

sudo Vim /etc/hostname

建议先备份原文件:

sudo cp /etc/hostname /etc/hostname.bak
sudo Vim /etc/hostname

常见问题排查

无法退出 Vim

大多数情况是因为还处于输入模式。先按 Esc,再输入 :q 或 :wq。

保存时提示权限不足

说明当前文件需要管理员权限,请退出后使用 sudo Vim 文件名 重新打开。

中文显示或缩进异常

通常与终端字体或文件编码有关。优先使用 UTF-8 编码,并在图形终端中确认字体支持中文。

Nano 编辑器

概述

nano 是一款轻量级的终端文本编辑器,操作简单直观,没有模式切换的概念,适合快速编辑配置文件或对 Vim 不熟悉的用户使用。

如果系统未预装 nano,可以先安装:

sudo apt update
sudo apt install nano

基础操作

  1. 打开或创建文件

nano notes.txt

如果文件不存在,nano 会新建该文件。打开后即可直接输入和编辑文本,无需切换模式。

  1. 编辑文本

打开文件后,光标所在位置即可直接输入字符。使用方向键移动光标。

  1. 保存文件

按 Ctrl+O(字母 O),nano 会提示确认文件名,按 Enter 确认保存。

  1. 退出编辑器

按 Ctrl+X 退出。如果文件有未保存的修改,nano 会询问是否保存:

  • 按 Y 保存后退出

  • 按 N 不保存退出

  • 按 Ctrl+C 取消退出操作

常用快捷键

nano 底部会显示常用快捷键提示,其中 ^ 表示 Ctrl 键。

快捷键

作用

Ctrl+O

保存文件

Ctrl+X

退出

Ctrl+K

剪切当前行

Ctrl+U

粘贴剪切的内容

Ctrl+W

搜索文本

Ctrl+\

搜索并替换

Ctrl+G

查看帮助

Ctrl+C

显示当前光标位置

Alt+U

撤销

Alt+E

重做

Ctrl+A

移动到行首

Ctrl+E

移动到行尾

Ctrl+Y

向上翻页

Ctrl+V

向下翻页

搜索与替换

搜索文本

按 Ctrl+W,输入要搜索的关键字,按 Enter 跳转到第一个匹配位置。继续按 Ctrl+W 然后 Enter 可跳转到下一个匹配。

搜索并替换

按 Ctrl+\,输入要查找的字符串,按 Enter,再输入替换后的字符串,按 Enter。nano 会逐一询问是否替换:

  • 按 Y 替换当前匹配

  • 按 N 跳过当前匹配

  • 按 A 替换所有匹配

操作示例

以创建一个简单脚本为例:

nano hello.sh

直接输入以下内容:

#!/bin/bash
echo "Hello Quectel Pi M1"

按 Ctrl+O 保存,按 Enter 确认文件名,再按 Ctrl+X 退出。

随后给脚本增加执行权限:

chmod u+x hello.sh
./hello.sh

编辑系统文件

编辑系统配置文件时,同样需要 sudo:

sudo nano /etc/hostname

软件下载与更新

在 Debian 系统中,安装软件通常离不开两类工具:APT 和 DPKG。理解它们各自负责什么,能帮助您更清楚地区分“从软件源安装软件”和“手动安装本地 .deb 安装包”这两类场景。

本节介绍 Debian 系统中安装和更新软件的基本方法,帮助您理解后续搭建环境时用到的 apt install 等命令含义。

关于 APT 的详细使用方法、常见命令和软件源配置,请参考 软件更新。

APT 与 DPKG 概述

在 Debian 系统中,安装软件主要靠两类工具:

工具

作用

典型场景

APT

从软件源查找、下载软件,自动处理依赖

联网安装软件、更新系统

DPKG

直接安装本地 .deb 包

手动安装厂商提供的安装包

简单理解:APT 是日常使用的上层工具(自动帮你处理依赖),DPKG 是底层工具(只负责装包,不管依赖)。

APT 常用命令

apt update

更新软件包列表,这条命令的作用是 刷新本地的软件包索引。它不会安装或升级任何软件,只是让系统知道软件源里目前有哪些包、最新版本是什么。

建议在安装软件或升级系统之前,先执行一次 apt update。

sudo apt update

apt upgrade

升级已安装的软件包,这条命令会把系统中 已安装的所有软件包 升级到软件源中可用的最新版本。

sudo apt upgrade

通常的操作流程是先 update 再 upgrade:

sudo apt update
sudo apt upgrade

apt install

安装软件包,这是最常用的命令。它会从软件源中查找指定的软件包,自动下载并安装,同时处理所有依赖关系。

sudo apt install 软件包名

后续搭建开发环境时,您会频繁看到类似命令:

sudo apt install python3       # 安装 Python 3
sudo apt install git           # 安装 Git
sudo apt install Vim           # 安装 Vim 编辑器

#可以一次安装多个包:
sudo apt install python3 git Vim

apt remove

卸载软件包,从系统中卸载指定软件包。

sudo apt remove 软件包名