简体中文 繁體中文 English 日本語 Deutsch 한국 사람 بالعربية TÜRKÇE português คนไทย Français

站内搜索

搜索

活动公告

10-31 22:15
10-23 09:32
通知:本站资源由网友上传分享,如有违规等问题请到版务模块进行投诉,将及时处理!
10-23 09:31
10-23 09:28
通知:签到时间调整为每日4:00(东八区)
10-23 09:26

Debian学习笔记分享从新手到专家的成长之路实用技巧与问题解决方案让你轻松掌握稳定安全的Linux系统

3万

主题

308

科技点

3万

积分

大区版主

木柜子打湿

积分
31891

财Doro三倍冰淇淋无人之境【一阶】立华奏小樱(小丑装)⑨的冰沙以外的星空【二阶】

发表于 2025-10-6 23:20:31 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

x
引言

Debian是Linux发行版中最古老、最稳定的之一,以其可靠性、安全性和自由软件理念而闻名。作为Ubuntu、Linux Mint等众多流行发行版的基础,Debian拥有庞大的软件库和活跃的社区支持。本文将带你从Debian新手成长为专家,分享实用技巧和问题解决方案,帮助你轻松掌握这个稳定安全的Linux系统。

Debian项目始于1993年,由Ian Murdock创建,以其严谨的开发流程和包管理系统而著称。它采用APT(Advanced Package Tool)作为软件包管理系统,使用dpkg作为底层包管理工具。Debian的发布周期较长,但每个版本都经过充分测试,确保系统的稳定性和安全性。

新手入门

Debian安装指南

安装Debian是学习之旅的第一步。Debian提供了多种安装方式,包括:

1. 网络安装镜像(netinst):最小的安装镜像,仅包含基本系统,其余软件从网络下载。
2. 完整DVD镜像:包含常用软件包,适合网络条件不佳的环境。
3. Live镜像:可以试用后再安装的系统镜像。

安装步骤如下:

1. 下载适合的安装镜像:访问Debian官方网站下载镜像文件。
2. 创建启动介质:使用工具如dd命令或Etcher将镜像写入USB设备。
  1. # 使用dd命令创建启动USB(Linux环境下)
  2.    sudo dd if=debian-11.0.0-amd64-netinst.iso of=/dev/sdX bs=4M status=progress
复制代码

1. 从USB启动计算机:进入BIOS/UEFI设置,选择USB设备作为第一启动项。
2. 按照安装向导进行安装:选择语言、区域、键盘布局,设置主机名、域名、root密码和用户账户。
3. 磁盘分区:新手可以选择”使用整个磁盘”选项,系统会自动分区。
4. 软件选择:根据需要选择桌面环境(如GNOME、KDE、XFCE等)和服务器软件。
5. 安装GRUB引导程序:完成安装后重启系统。

基本系统配置

安装完成后,需要进行一些基本配置:

1. 更新系统:安装完成后,首先更新系统软件包。
  1. sudo apt update
  2.    sudo apt upgrade
复制代码

1. 添加用户到sudo组:如果安装时创建的用户没有sudo权限,可以添加:
  1. su -  # 切换到root用户
  2.    usermod -aG sudo username  # 将username替换为你的用户名
  3.    exit  # 退出root会话
  4.    # 需要重新登录以使更改生效
复制代码

1. 配置网络:有线连接通常自动配置。无线连接可以使用NetworkManager或通过命令行配置:
2. 有线连接通常自动配置。
3. 无线连接可以使用NetworkManager或通过命令行配置:

• 有线连接通常自动配置。
• 无线连接可以使用NetworkManager或通过命令行配置:
  1. # 查看可用网络
  2.    nmcli dev wifi list
  3.    # 连接到WiFi网络
  4.    nmcli dev wifi connect SSID password password
复制代码

1. 配置时间和日期:# 检查当前时区
timedatectl
# 设置时区(例如设置为上海时区)
sudo timedatectl set-timezone Asia/Shanghai

配置时间和日期:
  1. # 检查当前时区
  2. timedatectl
  3. # 设置时区(例如设置为上海时区)
  4. sudo timedatectl set-timezone Asia/Shanghai
复制代码

基本命令行操作

掌握基本命令行操作是使用Debian的关键:

1. 文件和目录操作:ls          # 列出目录内容
cd          # 切换目录
pwd         # 显示当前工作目录
mkdir       # 创建目录
touch       # 创建空文件
cp          # 复制文件或目录
mv          # 移动/重命名文件或目录
rm          # 删除文件或目录
2. 文本文件查看和编辑:cat         # 显示文件内容
less        # 分页显示文件内容
nano        # 简单的文本编辑器
vim         # 高级文本编辑器
3. 系统信息查看:uname -a    # 显示系统信息
lscpu       # 显示CPU信息
free -h     # 显示内存使用情况
df -h       # 显示磁盘使用情况
4. 权限管理:chmod       # 修改文件权限
chown       # 修改文件所有者

文件和目录操作:
  1. ls          # 列出目录内容
  2. cd          # 切换目录
  3. pwd         # 显示当前工作目录
  4. mkdir       # 创建目录
  5. touch       # 创建空文件
  6. cp          # 复制文件或目录
  7. mv          # 移动/重命名文件或目录
  8. rm          # 删除文件或目录
复制代码

文本文件查看和编辑:
  1. cat         # 显示文件内容
  2. less        # 分页显示文件内容
  3. nano        # 简单的文本编辑器
  4. vim         # 高级文本编辑器
复制代码

系统信息查看:
  1. uname -a    # 显示系统信息
  2. lscpu       # 显示CPU信息
  3. free -h     # 显示内存使用情况
  4. df -h       # 显示磁盘使用情况
复制代码

权限管理:
  1. chmod       # 修改文件权限
  2. chown       # 修改文件所有者
复制代码

软件包管理基础

Debian使用APT作为软件包管理工具,以下是基本操作:

1. 软件包搜索:apt search keyword    # 搜索包含关键词的软件包
apt show package_name # 显示软件包详细信息
2. 软件包安装:sudo apt install package_name  # 安装软件包
3. 软件包卸载:sudo apt remove package_name    # 卸载软件包但保留配置文件
sudo apt purge package_name     # 完全卸载软件包及其配置文件
sudo apt autoremove             # 删除不再需要的依赖包
4. 系统更新:sudo apt update     # 更新软件包列表
sudo apt upgrade    # 升级已安装的软件包
sudo apt full-upgrade  # 完整系统升级(可能处理依赖关系变化)
5. 清理系统:sudo apt clean      # 清理下载的软件包缓存
sudo apt autoclean  # 清理过时的软件包缓存

软件包搜索:
  1. apt search keyword    # 搜索包含关键词的软件包
  2. apt show package_name # 显示软件包详细信息
复制代码

软件包安装:
  1. sudo apt install package_name  # 安装软件包
复制代码

软件包卸载:
  1. sudo apt remove package_name    # 卸载软件包但保留配置文件
  2. sudo apt purge package_name     # 完全卸载软件包及其配置文件
  3. sudo apt autoremove             # 删除不再需要的依赖包
复制代码

系统更新:
  1. sudo apt update     # 更新软件包列表
  2. sudo apt upgrade    # 升级已安装的软件包
  3. sudo apt full-upgrade  # 完整系统升级(可能处理依赖关系变化)
复制代码

清理系统:
  1. sudo apt clean      # 清理下载的软件包缓存
  2. sudo apt autoclean  # 清理过时的软件包缓存
复制代码

进阶使用

系统管理

Debian使用systemd作为系统和服务管理器:

1. 服务基本操作:sudo systemctl start service_name    # 启动服务
sudo systemctl stop service_name     # 停止服务
sudo systemctl restart service_name  # 重启服务
sudo systemctl reload service_name   # 重新加载服务配置
sudo systemctl enable service_name   # 设置服务开机自启
sudo systemctl disable service_name  # 禁止服务开机自启
sudo systemctl status service_name   # 查看服务状态
2. 查看系统日志:journalctl -u service_name  # 查看特定服务的日志
journalctl -f               # 实时查看系统日志
journalctl --since today    # 查看今天的日志

服务基本操作:
  1. sudo systemctl start service_name    # 启动服务
  2. sudo systemctl stop service_name     # 停止服务
  3. sudo systemctl restart service_name  # 重启服务
  4. sudo systemctl reload service_name   # 重新加载服务配置
  5. sudo systemctl enable service_name   # 设置服务开机自启
  6. sudo systemctl disable service_name  # 禁止服务开机自启
  7. sudo systemctl status service_name   # 查看服务状态
复制代码

查看系统日志:
  1. journalctl -u service_name  # 查看特定服务的日志
  2. journalctl -f               # 实时查看系统日志
  3. journalctl --since today    # 查看今天的日志
复制代码

1. 用户管理:sudo adduser username       # 创建新用户
sudo deluser username       # 删除用户
sudo passwd username        # 修改用户密码
sudo usermod -aG group username  # 将用户添加到组
2.
  1. 权限管理:chmod 755 file              # 设置文件权限
  2. chown user:group file       # 修改文件所有者和组
  3. sudo visudo                 # 编辑sudoers文件
复制代码

用户管理:
  1. sudo adduser username       # 创建新用户
  2. sudo deluser username       # 删除用户
  3. sudo passwd username        # 修改用户密码
  4. sudo usermod -aG group username  # 将用户添加到组
复制代码

权限管理:
  1. chmod 755 file              # 设置文件权限
  2. chown user:group file       # 修改文件所有者和组
  3. sudo visudo                 # 编辑sudoers文件
复制代码

1. 磁盘分区:sudo fdisk -l              # 列出所有磁盘分区
sudo parted /dev/sda       # 使用parted进行分区操作
sudo mkfs.ext4 /dev/sda1   # 格式化分区为ext4文件系统
2. 挂载文件系统:sudo mount /dev/sda1 /mnt  # 挂载分区到/mnt目录
sudo umount /mnt           # 卸载分区
3. 磁盘空间分析:df -h                      # 显示磁盘使用情况
du -sh /path/to/directory  # 显示目录大小
ncdu                       # 交互式磁盘使用分析工具

磁盘分区:
  1. sudo fdisk -l              # 列出所有磁盘分区
  2. sudo parted /dev/sda       # 使用parted进行分区操作
  3. sudo mkfs.ext4 /dev/sda1   # 格式化分区为ext4文件系统
复制代码

挂载文件系统:
  1. sudo mount /dev/sda1 /mnt  # 挂载分区到/mnt目录
  2. sudo umount /mnt           # 卸载分区
复制代码

磁盘空间分析:
  1. df -h                      # 显示磁盘使用情况
  2. du -sh /path/to/directory  # 显示目录大小
  3. ncdu                       # 交互式磁盘使用分析工具
复制代码

软件管理进阶

1. 编辑软件源:sudo nano /etc/apt/sources.list  # 编辑主软件源文件
sudo nano /etc/apt/sources.list.d/*.list  # 编辑额外的软件源文件
2.
  1. 添加第三方软件源:# 添加Docker官方软件源示例
  2. sudo apt update
  3. sudo apt install apt-transport-https ca-certificates curl gnupg2 software-properties-common
  4. curl -fsSL https://download.docker.com/linux/debian/gpg | sudo apt-key add -
  5. sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/debian $(lsb_release -cs) stable"
  6. sudo apt update
复制代码
3.
  1. 使用PPA(Ubuntu Personal Package Archive):# Debian默认不支持PPA,但可以通过添加PPA源来使用
  2. sudo apt install software-properties-common
  3. sudo add-apt-repository ppa:user/ppa-name
  4. sudo apt update
复制代码

编辑软件源:
  1. sudo nano /etc/apt/sources.list  # 编辑主软件源文件
  2. sudo nano /etc/apt/sources.list.d/*.list  # 编辑额外的软件源文件
复制代码

添加第三方软件源:
  1. # 添加Docker官方软件源示例
  2. sudo apt update
  3. sudo apt install apt-transport-https ca-certificates curl gnupg2 software-properties-common
  4. curl -fsSL https://download.docker.com/linux/debian/gpg | sudo apt-key add -
  5. sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/debian $(lsb_release -cs) stable"
  6. sudo apt update
复制代码

使用PPA(Ubuntu Personal Package Archive):
  1. # Debian默认不支持PPA,但可以通过添加PPA源来使用
  2. sudo apt install software-properties-common
  3. sudo add-apt-repository ppa:user/ppa-name
  4. sudo apt update
复制代码

有时需要从源代码编译安装软件:

1. 安装编译工具:sudo apt install build-essential
2.
  1. 下载并解压源代码:wget https://example.com/source.tar.gz
  2. tar -xvf source.tar.gz
  3. cd source-directory
复制代码
3. 编译安装:./configure
make
sudo make install

安装编译工具:
  1. sudo apt install build-essential
复制代码

下载并解压源代码:
  1. wget https://example.com/source.tar.gz
  2. tar -xvf source.tar.gz
  3. cd source-directory
复制代码

编译安装:
  1. ./configure
  2. make
  3. sudo make install
复制代码

Debian支持Snap和Flatpak等通用软件包格式:

1. 安装Snap:sudo apt install snapd
sudo snap install package-name
2. 安装Flatpak:sudo apt install flatpak
flatpak install flathub app-id

安装Snap:
  1. sudo apt install snapd
  2. sudo snap install package-name
复制代码

安装Flatpak:
  1. sudo apt install flatpak
  2. flatpak install flathub app-id
复制代码

网络配置

1. 使用Netplan(Debian 10+):sudo nano /etc/netplan/01-netcfg.yaml
  1. sudo nano /etc/netplan/01-netcfg.yaml
复制代码

示例配置:
  1. network:
  2.      version: 2
  3.      renderer: networkd
  4.      ethernets:
  5.        eth0:
  6.          dhcp4: no
  7.          addresses:
  8.            - 192.168.1.100/24
  9.          gateway4: 192.168.1.1
  10.          nameservers:
  11.            addresses: [8.8.8.8, 8.8.4.4]
复制代码

应用配置:
  1. sudo netplan apply
复制代码

1. 使用传统方法(/etc/network/interfaces):sudo nano /etc/network/interfaces
  1. sudo nano /etc/network/interfaces
复制代码

示例配置:
  1. auto eth0
  2.    iface eth0 inet static
  3.        address 192.168.1.100
  4.        netmask 255.255.255.0
  5.        gateway 192.168.1.1
  6.        dns-nameservers 8.8.8.8 8.8.4.4
复制代码

重启网络服务:
  1. sudo systemctl restart networking
复制代码

Debian可以使用nftables(默认)或iptables作为防火墙:

1. 使用nftables:sudo apt install nftables
sudo systemctl enable nftables
sudo systemctl start nftables
  1. sudo apt install nftables
  2. sudo systemctl enable nftables
  3. sudo systemctl start nftables
复制代码

创建基本规则:
  1. sudo nft add table inet filter
  2.    sudo nft add chain inet filter input { type filter hook input priority 0 \; }
  3.    sudo nft add rule inet filter input ct state established,related accept
  4.    sudo nft add rule inet filter input tcp dport ssh accept
  5.    sudo nft add rule inet filter input tcp dport http accept
  6.    sudo nft add rule inet filter input tcp dport https accept
  7.    sudo nft add rule inet filter input drop
复制代码

保存规则:
  1. sudo nft list ruleset > /etc/nftables.conf
复制代码

1. 使用UFW(Uncomplicated Firewall):sudo apt install ufw
sudo ufw enable
sudo ufw allow ssh
sudo ufw allow http
sudo ufw allow https
sudo ufw status verbose
  1. sudo apt install ufw
  2. sudo ufw enable
  3. sudo ufw allow ssh
  4. sudo ufw allow http
  5. sudo ufw allow https
  6. sudo ufw status verbose
复制代码

1. 基本网络诊断:ping example.com            # 测试网络连接
traceroute example.com      # 跟踪网络路由
mtr example.com             # 网络诊断工具(结合ping和traceroute)
nslookup example.com        # DNS查询
dig example.com             # 详细的DNS查询
2.
  1. 网络连接监控:sudo netstat -tuln          # 显示监听的端口
  2. sudo ss -tuln               # 更现代的替代netstat
  3. sudo lsof -i :80            # 显示占用80端口的进程
  4. sudo nmap -sT -O localhost  # 扫描本地开放端口
复制代码

基本网络诊断:
  1. ping example.com            # 测试网络连接
  2. traceroute example.com      # 跟踪网络路由
  3. mtr example.com             # 网络诊断工具(结合ping和traceroute)
  4. nslookup example.com        # DNS查询
  5. dig example.com             # 详细的DNS查询
复制代码

网络连接监控:
  1. sudo netstat -tuln          # 显示监听的端口
  2. sudo ss -tuln               # 更现代的替代netstat
  3. sudo lsof -i :80            # 显示占用80端口的进程
  4. sudo nmap -sT -O localhost  # 扫描本地开放端口
复制代码

专家级技巧

系统优化

通过修改/etc/sysctl.conf文件可以优化系统性能:
  1. sudo nano /etc/sysctl.conf
复制代码

添加以下参数(根据需求调整):
  1. # 网络优化
  2. net.core.rmem_max = 16777216
  3. net.core.wmem_max = 16777216
  4. net.ipv4.tcp_rmem = 4096 87380 16777216
  5. net.ipv4.tcp_wmem = 4096 65536 16777216
  6. net.ipv4.tcp_congestion_control = bbr
  7. # 文件系统优化
  8. vm.swappiness = 10
  9. vm.vfs_cache_pressure = 50
  10. vm.dirty_ratio = 30
  11. vm.dirty_background_ratio = 5
复制代码

应用更改:
  1. sudo sysctl -p
复制代码

1. 使用Btrfs文件系统:sudo apt install btrfs-progs
sudo mkfs.btrfs /dev/sda1
sudo mount /dev/sda1 /mnt
  1. sudo apt install btrfs-progs
  2. sudo mkfs.btrfs /dev/sda1
  3. sudo mount /dev/sda1 /mnt
复制代码

创建子卷:
  1. sudo btrfs subvolume create /mnt/@
  2.    sudo btrfs subvolume create /mnt/@home
  3.    sudo btrfs subvolume create /mnt/@var
  4.    sudo btrfs subvolume create /mnt/@tmp
复制代码

设置自动快照:
  1. sudo apt install snapper
  2.    sudo snapper -c root create-config /
  3.    sudo snapper -c home create-config /home
复制代码

1.
  1. 使用ZFS文件系统:# 添加ZFS仓库
  2. echo "deb http://http.debian.net/debian buster-backports main contrib" | sudo tee /etc/apt/sources.list.d/backports.list
  3. sudo apt update
  4. sudo apt install -t buster-backports linux-headers-$(uname -r|sed 's/[^-]*-[^-]*-//') zfs-dkms
  5. sudo modprobe zfs
复制代码

使用ZFS文件系统:
  1. # 添加ZFS仓库
  2. echo "deb http://http.debian.net/debian buster-backports main contrib" | sudo tee /etc/apt/sources.list.d/backports.list
  3. sudo apt update
  4. sudo apt install -t buster-backports linux-headers-$(uname -r|sed 's/[^-]*-[^-]*-//') zfs-dkms
  5. sudo modprobe zfs
复制代码

创建ZFS池:
  1. sudo zpool create -f -o ashift=12 tank raidz /dev/sda /dev/sdb /dev/sdc
  2.    sudo zfs create tank/data
复制代码

1. 系统资源监控:top                          # 实时进程监控
htop                         # 增强的top
glances                      # 全面的系统监控工具
sudo apt install glances
glances
2. 磁盘I/O监控:iostat                       # 磁盘I/O统计
sudo apt install sysstat
iostat -xz 1                # 每秒更新一次,显示扩展统计
3. 内存使用分析:free -h                      # 内存使用情况
vmstat 1                     # 虚拟内存统计
sudo apt install smem
smem                        # 内存使用分析
4. 网络流量监控:sudo apt install iftop nethogs
sudo iftop                  # 网络带宽监控
sudo nethogs                # 按进程显示网络使用

系统资源监控:
  1. top                          # 实时进程监控
  2. htop                         # 增强的top
  3. glances                      # 全面的系统监控工具
  4. sudo apt install glances
  5. glances
复制代码

磁盘I/O监控:
  1. iostat                       # 磁盘I/O统计
  2. sudo apt install sysstat
  3. iostat -xz 1                # 每秒更新一次,显示扩展统计
复制代码

内存使用分析:
  1. free -h                      # 内存使用情况
  2. vmstat 1                     # 虚拟内存统计
  3. sudo apt install smem
  4. smem                        # 内存使用分析
复制代码

网络流量监控:
  1. sudo apt install iftop nethogs
  2. sudo iftop                  # 网络带宽监控
  3. sudo nethogs                # 按进程显示网络使用
复制代码

安全加固

1. 保持系统更新:sudo apt update && sudo apt upgrade -y
sudo apt autoremove -y
2. 配置自动安全更新:sudo apt install unattended-upgrades
sudo dpkg-reconfigure -plow unattended-upgrades
3. 强化SSH安全:sudo nano /etc/ssh/sshd_config

保持系统更新:
  1. sudo apt update && sudo apt upgrade -y
  2. sudo apt autoremove -y
复制代码

配置自动安全更新:
  1. sudo apt install unattended-upgrades
  2. sudo dpkg-reconfigure -plow unattended-upgrades
复制代码

强化SSH安全:
  1. sudo nano /etc/ssh/sshd_config
复制代码

修改以下参数:
  1. PermitRootLogin no
  2.    PasswordAuthentication no
  3.    Port 2222  # 更改默认端口
  4.    AllowUsers username1 username2
复制代码

重启SSH服务:
  1. sudo systemctl restart sshd
复制代码

1. 配置Fail2Ban防止暴力破解:sudo apt install fail2ban
sudo systemctl enable fail2ban
sudo systemctl start fail2ban
sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
sudo nano /etc/fail2ban/jail.local
  1. sudo apt install fail2ban
  2. sudo systemctl enable fail2ban
  3. sudo systemctl start fail2ban
  4. sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
  5. sudo nano /etc/fail2ban/jail.local
复制代码

配置示例:
  1. [sshd]
  2.    enabled = true
  3.    port = 2222
  4.    filter = sshd
  5.    logpath = /var/log/auth.log
  6.    maxretry = 3
  7.    bantime = 3600
复制代码

重启Fail2Ban:
  1. sudo systemctl restart fail2ban
复制代码

1. 使用AppArmor限制应用程序权限:sudo apt install apparmor apparmor-utils
sudo systemctl enable apparmor
sudo systemctl start apparmor
sudo aa-status  # 查看AppArmor状态
  1. sudo apt install apparmor apparmor-utils
  2. sudo systemctl enable apparmor
  3. sudo systemctl start apparmor
  4. sudo aa-status  # 查看AppArmor状态
复制代码

为应用程序创建配置文件:
  1. sudo aa-genprof /path/to/application
复制代码

1. 使用SELinux(可选):sudo apt install selinux-basics selinux-policy-default auditd
sudo selinux-activate
sudo selinux-config-enforcing
# 需要重启系统
2. 配置防火墙高级规则:# 使用iptables创建高级规则
sudo iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 2222 -j ACCEPT  # 自定义SSH端口
sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT    # HTTP
sudo iptables -A INPUT -p tcp --dport 443 -j ACCEPT   # HTTPS
sudo iptables -A INPUT -j DROP

使用SELinux(可选):
  1. sudo apt install selinux-basics selinux-policy-default auditd
  2. sudo selinux-activate
  3. sudo selinux-config-enforcing
  4. # 需要重启系统
复制代码

配置防火墙高级规则:
  1. # 使用iptables创建高级规则
  2. sudo iptables -A INPUT -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
  3. sudo iptables -A INPUT -p tcp --dport 2222 -j ACCEPT  # 自定义SSH端口
  4. sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT    # HTTP
  5. sudo iptables -A INPUT -p tcp --dport 443 -j ACCEPT   # HTTPS
  6. sudo iptables -A INPUT -j DROP
复制代码

保存iptables规则:
  1. sudo apt install iptables-persistent
  2.    sudo netfilter-persistent save
复制代码

1. 设置入侵检测系统(IDS):# 安装AIDE(高级入侵检测环境)
sudo apt install aide
sudo aideinit
sudo mv /var/lib/aide/aide.db.new /var/lib/aide/aide.db

设置入侵检测系统(IDS):
  1. # 安装AIDE(高级入侵检测环境)
  2. sudo apt install aide
  3. sudo aideinit
  4. sudo mv /var/lib/aide/aide.db.new /var/lib/aide/aide.db
复制代码

定期检查系统完整性:
  1. sudo aide --check
复制代码

1. 全盘加密:
在安装Debian时选择”加密LVM”选项,或使用LUKS加密现有分区:sudo apt install cryptsetup
sudo cryptsetup luksFormat /dev/sda1
sudo cryptsetup open /dev/sda1 sda1_crypt
sudo mkfs.ext4 /dev/mapper/sda1_crypt
sudo mount /dev/mapper/sda1_crypt /mnt
2. 创建加密容器:# 创建加密文件容器
dd if=/dev/zero of=encrypted_container bs=1M count=100
sudo cryptsetup luksFormat encrypted_container
sudo cryptsetup open encrypted_container secret
sudo mkfs.ext4 /dev/mapper/secret
sudo mkdir /mnt/secret
sudo mount /dev/mapper/secret /mnt/secret

全盘加密:
在安装Debian时选择”加密LVM”选项,或使用LUKS加密现有分区:
  1. sudo apt install cryptsetup
  2. sudo cryptsetup luksFormat /dev/sda1
  3. sudo cryptsetup open /dev/sda1 sda1_crypt
  4. sudo mkfs.ext4 /dev/mapper/sda1_crypt
  5. sudo mount /dev/mapper/sda1_crypt /mnt
复制代码

创建加密容器:
  1. # 创建加密文件容器
  2. dd if=/dev/zero of=encrypted_container bs=1M count=100
  3. sudo cryptsetup luksFormat encrypted_container
  4. sudo cryptsetup open encrypted_container secret
  5. sudo mkfs.ext4 /dev/mapper/secret
  6. sudo mkdir /mnt/secret
  7. sudo mount /dev/mapper/secret /mnt/secret
复制代码

使用后卸载:
  1. sudo umount /mnt/secret
  2.    sudo cryptsetup close secret
复制代码

1. 使用GnuPG加密文件:sudo apt install gnupg
gpg --full-generate-key  # 生成密钥对
gpg --encrypt -r recipient-name file.txt  # 加密文件
gpg --decrypt file.txt.gpg > file.txt     # 解密文件
  1. sudo apt install gnupg
  2. gpg --full-generate-key  # 生成密钥对
  3. gpg --encrypt -r recipient-name file.txt  # 加密文件
  4. gpg --decrypt file.txt.gpg > file.txt     # 解密文件
复制代码

高级故障排除

1. 恢复模式:在启动时按住Shift键(或反复按Esc键)进入GRUB菜单选择”Advanced options for Debian”选择”(recovery mode)“进入恢复模式
2. 在启动时按住Shift键(或反复按Esc键)进入GRUB菜单
3. 选择”Advanced options for Debian”
4. 选择”(recovery mode)“进入恢复模式
5. 修复GRUB引导程序:# 从Live USB启动
sudo mount /dev/sda1 /mnt
sudo mount --bind /dev /mnt/dev
sudo mount --bind /proc /mnt/proc
sudo mount --bind /sys /mnt/sys
sudo chroot /mnt
grub-install /dev/sda
update-grub
exit
sudo umount /mnt/dev /mnt/proc /mnt/sys
sudo umount /mnt
6. 检查和修复文件系统:sudo fsck /dev/sda1  # 检查文件系统
sudo fsck -y /dev/sda1  # 自动修复问题

恢复模式:

• 在启动时按住Shift键(或反复按Esc键)进入GRUB菜单
• 选择”Advanced options for Debian”
• 选择”(recovery mode)“进入恢复模式

修复GRUB引导程序:
  1. # 从Live USB启动
  2. sudo mount /dev/sda1 /mnt
  3. sudo mount --bind /dev /mnt/dev
  4. sudo mount --bind /proc /mnt/proc
  5. sudo mount --bind /sys /mnt/sys
  6. sudo chroot /mnt
  7. grub-install /dev/sda
  8. update-grub
  9. exit
  10. sudo umount /mnt/dev /mnt/proc /mnt/sys
  11. sudo umount /mnt
复制代码

检查和修复文件系统:
  1. sudo fsck /dev/sda1  # 检查文件系统
  2. sudo fsck -y /dev/sda1  # 自动修复问题
复制代码

1. CPU瓶颈分析:top  # 查看CPU使用率
mpstat 1 5  # 每秒报告CPU统计信息,共5次
2. 内存瓶颈分析:free -h  # 查看内存使用情况
vmstat 1 5  # 查看虚拟内存统计
3. 磁盘I/O瓶颈分析:iostat -xz 1 5  # 查看磁盘I/O统计
iotop  # 查看进程I/O使用情况
4. 网络瓶颈分析:iftop  # 查看网络带宽使用
netstat -s  # 查看网络统计信息

CPU瓶颈分析:
  1. top  # 查看CPU使用率
  2. mpstat 1 5  # 每秒报告CPU统计信息,共5次
复制代码

内存瓶颈分析:
  1. free -h  # 查看内存使用情况
  2. vmstat 1 5  # 查看虚拟内存统计
复制代码

磁盘I/O瓶颈分析:
  1. iostat -xz 1 5  # 查看磁盘I/O统计
  2. iotop  # 查看进程I/O使用情况
复制代码

网络瓶颈分析:
  1. iftop  # 查看网络带宽使用
  2. netstat -s  # 查看网络统计信息
复制代码

1. 系统日志:journalctl -xe  # 查看系统日志
journalctl -u service_name -f  # 查看特定服务的实时日志
2. 应用程序日志:tail -f /var/log/apache2/error.log  # 查看Apache错误日志
tail -f /var/log/nginx/error.log     # 查看Nginx错误日志
3. 日志分析工具:sudo apt install goaccess
goaccess access.log -c  # 分析Web服务器访问日志

系统日志:
  1. journalctl -xe  # 查看系统日志
  2. journalctl -u service_name -f  # 查看特定服务的实时日志
复制代码

应用程序日志:
  1. tail -f /var/log/apache2/error.log  # 查看Apache错误日志
  2. tail -f /var/log/nginx/error.log     # 查看Nginx错误日志
复制代码

日志分析工具:
  1. sudo apt install goaccess
  2. goaccess access.log -c  # 分析Web服务器访问日志
复制代码

常见问题解决方案

安装和启动问题

解决方案:

1. 确保硬盘连接正常,BIOS/UEFI中启用了SATA控制器。
2. 尝试在安装启动菜单中选择”专家模式”。
3. 在专家模式下加载必要的驱动模块:# 在安装过程中按Alt+F2进入控制台
modprobe ahci  # 对于SATA硬盘
modprobe nvme  # 对于NVMe SSD
4. 返回安装程序(Alt+F1)继续安装。

确保硬盘连接正常,BIOS/UEFI中启用了SATA控制器。

尝试在安装启动菜单中选择”专家模式”。

在专家模式下加载必要的驱动模块:
  1. # 在安装过程中按Alt+F2进入控制台
  2. modprobe ahci  # 对于SATA硬盘
  3. modprobe nvme  # 对于NVMe SSD
复制代码

返回安装程序(Alt+F1)继续安装。

解决方案:

1. 使用Live USB启动系统。
2. 挂载根分区:sudo fdisk -l  # 查看分区表
sudo mount /dev/sda1 /mnt  # 挂载根分区
3. 安装和重建GRUB:sudo mount --bind /dev /mnt/dev
sudo mount --bind /proc /mnt/proc
sudo mount --bind /sys /mnt/sys
sudo chroot /mnt
grub-install /dev/sda
update-grub
exit
sudo umount /mnt/dev /mnt/proc /mnt/sys
sudo umount /mnt
reboot
  1. sudo fdisk -l  # 查看分区表
  2. sudo mount /dev/sda1 /mnt  # 挂载根分区
复制代码
  1. sudo mount --bind /dev /mnt/dev
  2. sudo mount --bind /proc /mnt/proc
  3. sudo mount --bind /sys /mnt/sys
  4. sudo chroot /mnt
  5. grub-install /dev/sda
  6. update-grub
  7. exit
  8. sudo umount /mnt/dev /mnt/proc /mnt/sys
  9. sudo umount /mnt
  10. reboot
复制代码

解决方案:

1. 检查启动服务耗时:systemd-analyze blame
2. 禁用不必要的服务:sudo systemctl disable service-name
3. 优化GRUB配置:sudo nano /etc/default/grub修改以下参数:GRUB_TIMEOUT=1
GRUB_CMDLINE_LINUX_DEFAULT="quiet"应用更改:sudo update-grub
  1. systemd-analyze blame
复制代码
  1. sudo systemctl disable service-name
复制代码
  1. sudo nano /etc/default/grub
复制代码
  1. GRUB_TIMEOUT=1
  2. GRUB_CMDLINE_LINUX_DEFAULT="quiet"
复制代码
  1. sudo update-grub
复制代码

软件包管理问题

解决方案:

1. 尝试修复依赖关系:sudo apt install -f
2. 清理部分安装的软件包:sudo dpkg --configure -a
sudo apt install -f
3. 如果问题仍然存在,尝试:sudo apt clean
sudo apt update
sudo apt upgrade
  1. sudo apt install -f
复制代码
  1. sudo dpkg --configure -a
  2. sudo apt install -f
复制代码
  1. sudo apt clean
  2. sudo apt update
  3. sudo apt upgrade
复制代码

解决方案:

1. 检查软件源配置:sudo nano /etc/apt/sources.list
2.
  1. 确保启用了contrib和非自由软件源(如果需要):deb http://deb.debian.org/debian/ bullseye main contrib non-free
  2. deb http://security.debian.org/debian-security bullseye-security main contrib non-free
复制代码
3. 更新软件包列表:sudo apt update
4. 如果软件包在backports仓库中,添加backports源:deb http://deb.debian.org/debian bullseye-backports main contrib non-free
  1. sudo nano /etc/apt/sources.list
复制代码
  1. deb http://deb.debian.org/debian/ bullseye main contrib non-free
  2. deb http://security.debian.org/debian-security bullseye-security main contrib non-free
复制代码
  1. sudo apt update
复制代码
  1. deb http://deb.debian.org/debian bullseye-backports main contrib non-free
复制代码

解决方案:

1. 检查损坏的软件包:sudo dpkg -C
2. 修复损坏的软件包:sudo apt install --fix-broken
3. 如果问题仍然存在,尝试:sudo apt dist-upgrade
4. 对于严重问题,可以尝试:sudo dpkg --force-all --configure -a
sudo apt install -f
  1. sudo dpkg -C
复制代码
  1. sudo apt install --fix-broken
复制代码
  1. sudo apt dist-upgrade
复制代码
  1. sudo dpkg --force-all --configure -a
  2. sudo apt install -f
复制代码

网络配置问题

解决方案:

1. 检查无线网卡是否被识别:lspci | grep Network
2. 安装必要的固件:sudo apt install firmware-linux-nonfree
3. 重启网络服务:sudo systemctl restart NetworkManager
4. 如果使用命令行配置,尝试:sudo nano /etc/network/interfaces添加以下内容:auto wlan0
iface wlan0 inet dhcp
   wpa-ssid "你的网络名称"
   wpa-psk "你的网络密码"然后重启网络服务:sudo systemctl restart networking
  1. lspci | grep Network
复制代码
  1. sudo apt install firmware-linux-nonfree
复制代码
  1. sudo systemctl restart NetworkManager
复制代码
  1. sudo nano /etc/network/interfaces
复制代码
  1. auto wlan0
  2. iface wlan0 inet dhcp
  3.    wpa-ssid "你的网络名称"
  4.    wpa-psk "你的网络密码"
复制代码
  1. sudo systemctl restart networking
复制代码

解决方案:

1. 检查DNS配置:cat /etc/resolv.conf
2. 如果DNS配置不正确,编辑resolv.conf:sudo nano /etc/resolv.conf添加DNS服务器:nameserver 8.8.8.8
nameserver 8.8.4.4
3. 检查默认网关:ip route
4. 如果没有默认网关,添加:sudo ip route add default via 192.168.1.1
5. 检查防火墙规则:sudo iptables -L如果有阻止流量的规则,删除或修改它们。
  1. cat /etc/resolv.conf
复制代码
  1. sudo nano /etc/resolv.conf
复制代码
  1. nameserver 8.8.8.8
  2. nameserver 8.8.4.4
复制代码
  1. ip route
复制代码
  1. sudo ip route add default via 192.168.1.1
复制代码
  1. sudo iptables -L
复制代码

解决方案:

1. 检查SSH服务是否运行:sudo systemctl status ssh
2. 如果没有运行,启动SSH服务:sudo systemctl start ssh
sudo systemctl enable ssh
3. 检查SSH配置:sudo nano /etc/ssh/sshd_config确保以下配置正确:Port 22  # 或你自定义的端口
PermitRootLogin yes  # 如果需要root登录
PasswordAuthentication yes  # 如果使用密码认证
4. 重启SSH服务:sudo systemctl restart ssh
5. 检查防火墙规则:sudo ufw status如果防火墙启用,允许SSH连接:sudo ufw allow ssh
  1. sudo systemctl status ssh
复制代码
  1. sudo systemctl start ssh
  2. sudo systemctl enable ssh
复制代码
  1. sudo nano /etc/ssh/sshd_config
复制代码
  1. Port 22  # 或你自定义的端口
  2. PermitRootLogin yes  # 如果需要root登录
  3. PasswordAuthentication yes  # 如果使用密码认证
复制代码
  1. sudo systemctl restart ssh
复制代码
  1. sudo ufw status
复制代码
  1. sudo ufw allow ssh
复制代码

性能问题

解决方案:

1. 查看CPU使用情况:top
2. 找出占用CPU高的进程,终止不必要的进程:kill -9 PID
3. 检查系统负载:uptime
4. 如果负载持续高,考虑升级硬件或优化系统配置。
  1. top
复制代码
  1. kill -9 PID
复制代码
  1. uptime
复制代码

解决方案:

1. 查看磁盘使用情况:df -h
2. 找出大文件和目录:sudo du -sh /path/to/directory/*或者使用ncdu工具:sudo apt install ncdu
sudo ncdu /
3. 清理不必要的文件:sudo apt clean
sudo journalctl --vacuum-size=100M
4. 删除旧日志:sudo find /var/log -type f -name "*.gz" -delete
5. 清理旧的内核:sudo apt autoremove --purge
  1. df -h
复制代码
  1. sudo du -sh /path/to/directory/*
复制代码
  1. sudo apt install ncdu
  2. sudo ncdu /
复制代码
  1. sudo apt clean
  2. sudo journalctl --vacuum-size=100M
复制代码
  1. sudo find /var/log -type f -name "*.gz" -delete
复制代码
  1. sudo apt autoremove --purge
复制代码

解决方案:

1. 查看内存使用情况:free -h
2. 查看交换空间使用情况:swapon --show
3. 调整swappiness参数(值越小,系统越少使用交换空间):sudo sysctl vm.swappiness=10使更改永久生效:echo "vm.swappiness=10" | sudo tee -a /etc/sysctl.conf
4. 查找内存使用高的进程:ps aux --sort=-%mem | head
5. 考虑增加物理内存或创建更大的交换空间。
  1. free -h
复制代码
  1. swapon --show
复制代码
  1. sudo sysctl vm.swappiness=10
复制代码
  1. echo "vm.swappiness=10" | sudo tee -a /etc/sysctl.conf
复制代码
  1. ps aux --sort=-%mem | head
复制代码

总结

从Debian新手到专家是一个循序渐进的过程,需要不断学习和实践。本文介绍了Debian系统的安装、基本配置、系统管理、软件管理、网络配置等基础知识,以及系统优化、安全加固、高级故障排除等专家级技巧,并提供了一些常见问题的解决方案。

要成为Debian专家,建议遵循以下学习路径:

1. 基础阶段:熟悉基本命令行操作、软件包管理和系统配置。
2. 进阶阶段:学习系统管理、网络配置和服务管理。
3. 专家阶段:掌握系统优化、安全加固和高级故障排除。

以下是一些推荐的学习资源:

• 官方文档:Debian官方文档
• 社区支持:Debian Forums、Debian Wiki
• 书籍:《Debian系统管理与应用》、《Debian GNU/Linux指南》
• 在线课程:Linux Foundation、Coursera、Udemy上的相关课程

记住,成为一名Debian专家不仅仅是掌握技术,还包括理解Debian的哲学和社区文化。Debian是一个由全球志愿者社区开发和维护的项目,参与社区、回馈项目也是成为专家的重要部分。

通过不断学习、实践和分享,你将能够从Debian新手成长为专家,充分利用这个稳定、安全、自由的Linux系统。祝你在Debian学习之旅中取得成功!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

频道订阅

频道订阅

加入社群

加入社群

联系我们|TG频道|RSS

Powered by Pixtech

© 2025 Pixtech Team.