如何将Ubuntu Server中的镜像从区域更改为主?

我有一个Lucid Server(10.04)设置,我想将镜像从美国(或任何其他国家)更改为主Ubuntu镜像。

例如,sources.list中我的两个第一个条目是:

deb http://us.archive.ubuntu.com/ubuntu/ lucid main restricted deb-src http://us.archive.ubuntu.com/ubuntu/ lucid main restricted 

在桌面环境中,我会像这样选择主镜像:

软件来源

但是我如何从终端这样做,因为我没有安装图形环境!

使用您喜欢的文本编辑器打开您的sources.list文件,例如

 sudo nano /etc/apt/sources.list 

找到文本http://us.archive.ubuntu.com/ubuntu并将其替换为http://archive.ubuntu.com/ubuntu

这个命令可以做到这一点:

 sudo sed -i 's|http://us.|http://|g' /etc/apt/sources.list 

它将删除’我们’。 每个地址中的前缀将它们转换为主服务器的地址。

当然,用你正在使用的任何其他镜子替换“我们”。

深入解释命令:

sed – 用于过滤和转换文本的流编辑器。

  • -i参数是在适当的位置编辑文件。

  • 然后‘s | regexp | replacement | g’s指定搜索和替换命令。

  • 最后的g是“全局”搜索的参数。

  • 结论:替换所有出现的http:// us 。 在文件/etc/apt/sources.list中使用http://

vim

 mv /etc/apt/sources.list{,.bak} # you may want to make a backup vim /etc/apt/source.list 

键入🙁您需要按住Shift键 )进入命令-nine模式,然后键入:

 %s/http:\/\/us\./http:\/\//g 

按Enter键

点击Esc以确保您已退出命令行模式并进入正常模式。 现在,您可以使用键盘移动键(如果需要)滚动文件,以确保编辑了所有出现的镜像。

最后,通过进入命令行模式(类型wq!退出并输入wq! 保存并退出vim

更正sed用法以从source.list删除/更改国家/地区代码“us”到“au”之类的其他内容,命令如下:

 sed -i 's/http:\/\/us./http:\/\/au./g' /etc/apt/sources.list 

或者只是单独删除“我们”而不是将其更改为某些内容,请使用以下代码:

 sed -i 's/http:\/\/in./http:\/\//g' /etc/apt/sources.list