记录乱七八糟的配置-debian

以下 仅为个人记录&翻查

工具

  • 烧录 balenaEtcher

镜像下载

  • Current release only

    https://cdimage.debian.org/debian-cd/

  • All downloads

    https://cdimage.debian.org/cdimage/

禁用开机服务

  • sudo systemctl disable NetworkManager-wait-online.service 这个服务的作用是“等待网络完全就绪后再继续启动”,但大多数桌面用户并不需要它——系统可以在后台连接网络,无需阻塞启动流程。

  • sudo systemctl disable ModemManager.service 用于移动宽带(3G/4G 网卡)。如果你只用 Wi-Fi 或有线网络,可安全禁用kkk:

安装docker

  • 方法1
    • debian
      # @ref https://docs.docker.com/engine/install/debian/#install-using-the-repository
      # @ref https://status.daocloud.io/status/docker
      # @ref https://gist.github.com/y0ngb1n/7e8f16af3242c7815e7ca2f0833d3ea6
      # Add Docker's official GPG key:
      sudo apt-get update
      sudo apt-get install -y ca-certificates curl gnupg
      sudo install -m 0755 -d /etc/apt/keyrings
      curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
      sudo chmod a+r /etc/apt/keyrings/docker.gpg
      # Add the repository to Apt sources:
      echo \
          "deb [arch="$(dpkg --print-architecture)" signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/debian \
          "$(. /etc/os-release && echo "$VERSION_CODENAME")" stable" | \
      sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
      sudo apt-get update
      sudo apt-get install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
    
    • ubuntu

    ```bash sudo apt-get update sudo apt-get install ca-certificates curl sudo install -m 0755 -d /etc/apt/keyrings sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc sudo chmod a+r /etc/apt/keyrings/docker.asc # Add the repository to Apt sources: echo
    “deb [arch=$(dpkg –print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu
    $(. /etc/os-release && echo “$VERSION_CODENAME”) stable” |
    sudo tee /etc/apt/sources.list.d/docker.list > /dev/null sudo apt-get update sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin sudo docker run hello-world

  • 方法2
bash <(wget -qO- https://get.docker.com)

配置docker image 下载代理

  • 方法1
# @ref https://docs.docker.com/engine/daemon/proxy/#systemd-unit-file
sudo mkdir -p /etc/systemd/system/docker.service.d
sudo tee /etc/systemd/system/docker.service.d/http-proxy.conf  << EOF
[Service]
Environment="HTTP_PROXY=http://127.0.0.1:7890"
Environment="HTTPS_PROXY=http://127.0.0.1:7890"
EOF
  • 方法2
    sudo mkdir -p /etc/docker
    sudo tee /etc/docker/daemon.json <<-'EOF'
    {
      "registry-mirrors": [
          "https://docker.m.daocloud.io",
          "https://docker.1ms.run"
      ]
    }
    EOF
    

    不论是方法1和2,均需要重启docker服务

    sudo systemctl daemon-reload
    sudo systemctl restart docker
    

docker image

  • mongod server
    sudo docker run --name mongodb -d -p 27017:27017 -v $(pwd)/data:/data/db -e MONGO_INITDB_ROOT_USERNAME=user -e MONGO_INITDB_ROOT_PASSWORD=pass mongo:8.0.12
    
  • mongosh
    wget https://downloads.mongodb.com/compass/mongodb-mongosh_2.1.5_amd64.deb
    sudo dpkg -i mongodb-mongosh_2.1.5_amd64.deb
    
  • redis server
    sudo docker run --name redis -d -p 6379:6379 redis:7.2.6 redis-server --save 60 1 --loglevel warning
    

nginx

sudo apt install curl gnupg2 ca-certificates lsb-release debian-archive-keyring
curl https://nginx.org/keys/nginx_signing.key | gpg --dearmor \
    | sudo tee /usr/share/keyrings/nginx-archive-keyring.gpg >/dev/null
echo "deb [signed-by=/usr/share/keyrings/nginx-archive-keyring.gpg] \
http://nginx.org/packages/debian `lsb_release -cs` nginx" \
    | sudo tee /etc/apt/sources.list.d/nginx.list
echo -e "Package: *\nPin: origin nginx.org\nPin: release o=nginx\nPin-Priority: 900\n" \
    | sudo tee /etc/apt/preferences.d/99ngi
sudo apt update
sudo apt install nginx

python3 virtual env

sudo apt-get install -y vim wget openssh-client make cmake git ibus-table-wubi net-tools libpcre3-dev libssl-dev perl build-essential curl systemd-timesyncd python3 python3-pip python3.11-venv tmux rsync dnsutils
# 创建python环境
python3 -m venv ~/py3env
source ~/py3env/bin/activate
# 删除python环境
deactivate
rm -f ~/py3env

nodejs

@ref https://github.com/nodesource/distributions?tab=readme-ov-file#using-debian-as-root-nodejs-23
curl -fsSL https://deb.nodesource.com/setup_23.x -o nodesource_setup.sh
bash nodesource_setup.sh
apt-get install -y nodejs
npm install -g http-server

sshd服务

sudo apt update
sudo apt install openssh-server
sudo systemctl start ssh
sudo systemctl enable ssh

tmux

tmux插件

git clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm

个人配置

存放位置: ~/.tmux.conf

# 1. 加载 tpm 插件管理器
set -g @plugin 'tmux-plugins/tpm'

# 2. 加载 tmux-resurrect 插件
set -g @plugin 'tmux-plugins/tmux-resurrect'

# 3. 运行 tpm
run '~/.tmux/plugins/tpm/tpm'

# 绑定hjkl键为面板切换的上下左右键
bind -r k select-pane -U # 绑定k为↑
bind -r j select-pane -D # 绑定j为↓
bind -r h select-pane -L # 绑定h为←
bind -r l select-pane -R # 绑定l为→`

# 开启鼠标支持
set-option -g mouse on

# 启用 vi 风格的按键绑定
set -g mode-keys vi

tmux操作

命令行参数

# 列出所有会话
tmux ls

# 连接到指定会话
tmux a -t session_name

窗口操作

# 断开当前会话
Ctrl+b d

# 水平分割窗格
Ctrl+b "

# 垂直分割窗格
Ctrl+b %

# 切换到指定窗格
# 快捷键: Ctrl+b 方向键
或者使用配置文件中设置的 Ctrl+b h/j/k/l

# 调整窗格大小
Ctrl+b Ctrl+方向键

# 关闭当前窗格
Ctrl+b x

# 将当前窗格拆分为新窗口
Ctrl+b !

# 切换窗格布局
Ctrl+b 空格键

git

  • 设置vimdiff对比工具
    git config --global core.editor vim
    git config --global diff.tool vimdiff
    git config --global merge.tool vimdiff
    git config --global --add difftool.prompt false
    git config --global core.autocrlf input
    # 设置vimdiff高亮
    cat >> ~/.vimrc << EOF
    " 显示空白字符
    set list
    " vimdiff 高亮关闭
    if &diff
          colorscheme evening
    endif
    EOF
    

vim

  • 配置 | 命令 | 说明 | |——|——| | :set number:set nu | 显示绝对行号 | | :set nonumber:set nonu | 关闭行号显示 | | :set relativenumber:set rnu | 显示相对行号(当前行为0,其他行显示与当前行的相对距离) | | :set norelativenumber:set nornu | 关闭相对行号 | | :set number relativenumber | 混合模式(当前行显示绝对行号,其他行显示相对行号) |

  • vim录制操作和回放

命令 说明
q{register} 开始录制宏,存储到指定寄存器中(a-z)
q 停止录制
@{register} 执行指定寄存器中的宏
@@ 重复执行上一次执行的宏
{n}@{register} 执行指定寄存器中的宏n次

示例用法:

  1. qa 开始录制到寄存器a
  2. 执行你想录制的操作
  3. q 停止录制
  4. 使用 @a 执行录制的操作
  5. 使用 5@a 执行5次录制的操作

快捷键

xfce:

  • 切换到第X个虚拟桌面
    ctrl+f1  
    ctrl+f2  
    ctrl+...  
    
  • 切换到左右上下桌面
ctrl+alt+left  
ctrl+alt+right  
ctrl+alt+up  
ctrl+alt+down  
  • 显示任务管理器
    ctrl+shift+esc

  • 以第X个tty进入系统

ctrl+atl+f1
ctrl+atl+f2
ctrl+atl+...
  • 显示桌面
    ctrl+alt+d

kde

  • 截图spectacle meta+shife+print

原文:
https://lizijie.github.io/2025/12/14/%E8%AE%B0%E5%BD%95%E4%B9%B1%E4%B8%83%E5%85%AB%E7%B3%9F%E7%9A%84%E9%85%8D%E7%BD%AE-debian.html

作者github:
https://github.com/lizijie </b>

PREVIOUS记录乱七八糟的配置-window
NEXT常见高阶函数