Debian12-初始化

重点介绍 VIM9, 其他参考Debian11

系统下载

1
https://cdimage.debian.org/debian-cd/12.1.0/amd64/iso-dvd/debian-12.1.0-amd64-DVD-1.iso

安装选择

系统信息

1
2
3
4
5
6
7
root@debian:~# cat /etc/debian_version
12.1
root@debian:~#

root@debian:~# uname -a
Linux debian 6.1.0-10-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.1.38-1 (2023-07-14) x86_64 GNU/Linux
root@debian:~#

网络设置

1
2
3
4
5
6
7
8
9
10
11
root@debian:~# vi /etc/network/interfaces

追加

auto eno1
iface eno1 inet dhcp

root@debian:~#

重启网络服务
systemctl restart networking

加速

1
2
3
4
5
6
7
8
9
10
export http_proxy="192.168.1.1:1001"   #wget 可识别
export https_proxy="192.168.1.1:1001" #wget 可识别

export http_proxy="http://192.168.1.1:1001" #apt 只认这种形式 #wget 可识别
export https_proxy="https://192.168.1.1:1001" #apt 只认这种形式 #wget 可识别


#http, https测试
wget http://www.baidu.com/ -O /dev/null
wget https://www.baidu.com/ -O /dev/null

设置apt源

1
2
3
4
cat /etc/apt/sources.list
deb http://deb.debian.org/debian bookworm main contrib
deb http://deb.debian.org/debian bookworm-updates main contrib
deb http://deb.debian.org/debian-security bookworm-security main contrib

开始安装

1
2
3
4
5
6
7
8
9
10
11
apt-get update
apt-get install -y vim
apt-get install -y tree
apt-get install -y sudo
apt-get install -y net-tools
apt-get install -y htop iftop iotop
apt-get install -y curl
apt-get install -y iperf3
apt-get install -y tmux
apt-get install -y lrzsz
apt-get install -y locate

开发人员

1
2
3
4
5
6
7
8
9
10
11
apt-get install -y git
apt-get install -y build-essential
apt-get install -y flex
apt-get install -y bison
apt-get install -y cmake
apt-get install -y gdb gdbserver
apt-get install -y clang
apt-get install -y pkg-config
apt-get install -y libnuma-dev
apt-get install -y libglib2.0-dev
apt-get install -y libjsoncpp-dev

vim 9 禁用鼠标方法

1
echo '"这里关不掉鼠标,配置文件见 vim `find /usr/share/vim/ | grep -w defaults.vim`' >> /etc/vim/vimrc
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
vim `find /usr/share/vim/ | grep -w defaults.vim`
:set paste #这样粘贴不出错

开始行尾追加

"高亮行尾的空格
"highlight ExtraWhitespace ctermbg=red guibg=red
"autocmd BufWinEnter * match ExtraWhitespace /\s\+$\| \+\ze\t\+\|\t\+\zs \+/

"高亮行尾的空格 与 TAB
autocmd BufWinEnter * match Error /\t \+\|\t\|\s\+$\|^ \+$/

"设置qq按键为退出VIM
map qq :q!<CR>

"设置ds按键为去除行尾空格
map ds :%s/\s\+$//g<CR>

"设置dm按键为去除行尾的^M标记
map dm :%s/\r//g<CR>

"设置dt按键将tab转为4个空格
map dt :%s/\t/ /g<CR>

"设置dr按键将多个空行变为1个空行
map dr :g/^\s*$\n\s*$/d<CR>

"设置de按键为去清空以#开头的行
map de :%s/^#.*$//g<CR>

set shortmess=a "关闭显示帮助乌干达的儿童
"set cmdheight=2 "vim命令状态栏的高度 (有时在tmux中行显示错乱-不要开!)
set noswapfile "不生成.swp文件
set bg=dark "字体高亮
set paste "粘贴时 禁止自动缩进
set completeopt=menu "关闭草稿
set nonu "不显示行号
set ruler "右下角显示光标当前位置
set scrolloff=10 "光标到上下缓冲区边距
set nobackup "禁止生成临时文件
set nocindent "不使用C风格缩进
set noautoindent "不使用自动缩进
set shiftwidth=4 "自动缩进字符宽度
set ts=4 "tab键宽度
set expandtab "将tab符转为空格
%retab! "对于已保存的文件,将tab转换为空格
set ignorecase "搜索时 忽略大小写
syntax on "语法高亮
set hls "搜索高亮
set nocompatible "去除兼容vi
set backspace=indent,eol,start "允许使用退格键
set fileencodings=utf-8,GB18030 "打开文件 支持的字符集
set viminfo='20,<1000 "多行复制

"关闭鼠标
set mouse=
set ttymouse=

root@debian:~#

tmux 与 vim VISUAL 冲突问题

1
2
root@debian:~# vim --version
VIM - Vi IMproved 9.0 (2022 Jun 28, compiled May 04 2023 10:24:44)
1
2
3
root@debian:~# tmux -V
tmux 3.3a
root@debian:~#

没有启动 tmux 的时候,

1
2
root@debian:~# env | grep TERM
TERM=xterm

进入VIM,此时, shift + v 的行模式没有高亮.

启动 进入tmux 的时候,

1
2
3
4
root@debian:~# env| grep TERM
TERM_PROGRAM_VERSION=3.3a
TERM=tmux-256color
TERM_PROGRAM=tmux

进入VIM,此时, shift + v 的行模式没有高亮.

解决

1
2
3
4
5
6
7
8
9
10
root@debian:~# cat /etc/tmux.conf
set-option -g allow-rename off # 设置启动窗口时默认名字
set -g base-index 1 # 窗口下标起始
set -g pane-base-index 1

#OK 这三个都可以解决问题
#set -g default-terminal "screen"
#set -g default-terminal "tmux"
set -g default-terminal "xterm"
root@debian:~#

关闭 swap

1
2
vim /etc/fstab
删除 swap 行

apt-get

apt-file 可以显示出 在线deb内部的文件列表

1
2
3
4
5
6
7
apt-get  install apt-file
apt-file update
apt-file list $package

dpkg -S XXX 查找路径XXX是那个deb产生的
dpkg -L 查看本地deb内部的文件列表(已安装)
dpkg --contains 查看本地deb内部的文件列表(未安装)