没有vim,不能更新apt源,不能更新apt源,安装不了vim……

因为docker的容器镜像为了简洁和小体积,砍掉了很多常用软件,只提供了基础运行环境。
砍掉的软件就包括nano,vim等常用编辑器

这不给友人搭建一个Twikoo评论服务嘛,想容器中改一个文件内部的参数。

root@504d51af7c33:/app/data# vim db.json.1
bash: vim: command not found

嘶,安装一个vim呢?

root@504d51af7c33:/app/data# apt install vim
Reading package lists... Done
Building dependency tree       
Reading state information... Done
E: Unable to locate package vim

那只能先更新软件源了。
内置的/etc/apt/sources.list里面还是debian.org的官方源。国内的下载速度,太难受了
20221016123227.png
问题不大,换一个清华/163/阿里源不就行了嘛~
当我敲入vim /etc/apt/sources.list的时候……

root@504d51af7c33:/app/data# vim /etc/apt/sources.list
bash: vim: command not found

emmm,死循环?


问题不大。
linux内置了一个echo命令。可以用于字符串的输出,除此之外还有以下用法:

> 重定向输出到某个位置,替换原有文件的所有内容。
>> 重定向追加到某个位置,在原有文件的末尾添加内容。
< 重定向输入某个位置文件。
2> 重定向错误输出。
2>> 重定向错误追加输出到文件末尾。
&> 混合输出错误的和正确的都输出。

查询一下现在镜像源处定义的系统版本。

root@504d51af7c33:/app/data# cat /etc/apt/sources.list
# deb http://snapshot.debian.org/archive/debian/20220801T000000Z buster main
deb http://deb.debian.org/debian buster main
# deb http://snapshot.debian.org/archive/debian-security/20220801T000000Z buster/updates main
deb http://deb.debian.org/debian-security buster/updates main
# deb http://snapshot.debian.org/archive/debian/20220801T000000Z buster-updates main
deb http://deb.debian.org/debian buster-updates main

然后先把/etc/apt/sources.list写空,再写入新源。

echo "">/etc/apt/sources.list
echo 'deb http://mirrors.163.com/debian/  buster main non-free contrib' >> /etc/apt/sources.list 
echo 'deb http://mirrors.163.com/debian/  buster-updates main non-free contrib' >> /etc/apt/sources.list 
echo 'deb http://mirrors.163.com/debian-security/  buster/updates main non-free contrib' >> /etc/apt/sources.list

搞定。