ubuntu在linux无法联网, windows可以联网的情况下使用apt

当Ubuntu系统遇到无法联网的问题,而同一网络环境下的Windows可以正常上网,可以通过以下步骤尝试解决并利用Windows网络更新Ubuntu的软件包:1) 在Windows下共享互联网连接;2) 在Ubuntu中设置代理服务器指向Windows共享的网络;3) 使用`sudo apt update`和`sudo apt upgrade`通过代理获取软件包更新;4) 如果需要安装特定DEB包,可下载到Windows再传到Ubuntu进行安装;5) 清理旧的apt缓存以节省空间。确保正确配置网络设置,以便apt能通过代理顺利工作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

通常同一台机器是不会出现win可以联网但ubuntu不可以联网的情况的, 但是在中国特色的校园网环境中, 这种请况很常见. 虽然有本地源的解决方案, 但需要有联网的linux, 和巨大的硬盘空间(还有快的网络速度), apt的优势不能体现出来. 

下面介绍一种比较迂回的方法: 

首先, 下载源上面的包信息, 下载列表见附件. 这里以cn99源和gutsy为例(我还没看建源的手册, 所以只是下载了pool文件夹外的跟gutsy有关的东西, 其他请况请自己类比). 
注意要使用能重建目录结构的下载软件来下载, 就像是 wget 的 -x 选项 
代码:
wget -B -i cn99_gutsy.lst -w 2 -x

做人要厚道,下载请用单线程+延时, 封ip自负
下载完后, 看起来应该像这样
代码:
autumncat@autumncat-host:~/apt-source/ubuntu.cn99.com
$ find
.
./ubuntu
./ubuntu/dists
./ubuntu/dists/gutsy
./ubuntu/dists/gutsy/Contents-amd64.gz
./ubuntu/dists/gutsy/Contents-i386.gz
./ubuntu/dists/gutsy/Release
./ubuntu/dists/gutsy/Release.gpg
./ubuntu/dists/gutsy/main
./ubuntu/dists/gutsy/main/binary-amd64
./ubuntu/dists/gutsy/main/binary-amd64/Packages.bz2
./ubuntu/dists/gutsy/main/binary-amd64/Packages.gz
./ubuntu/dists/gutsy/main/binary-amd64/Release
./ubuntu/dists/gutsy/main/binary-i386
./ubuntu/dists/gutsy/main/binary-i386/Packages.bz2
./ubuntu/dists/gutsy/main/binary-i386/Packages.gz
./ubuntu/dists/gutsy/main/binary-i386/Release
./ubuntu/dists/gutsy/main/debian-installer
./ubuntu/dists/gutsy/main/debian-installer/binary-amd64
./ubuntu/dists/gutsy/main/debian-installer/binary-amd64/Packages.bz2
....

然后就可以把整个目录复制到linux下的某个目录

接着修改源列表, 就像这样
代码:
$ cat /etc/apt/sources.list
deb file:///home/autumncat/apt-source/ubuntu.cn99.com/ubuntu/ gutsy main restricted universe multiverse
deb file:///home/autumncat/apt-source/ubuntu.cn99.com/ubuntu/ gutsy-security main restricted universe multiverse
deb file:///home/autumncat/apt-source/ubuntu.cn99.com/ubuntu/ gutsy-updates main restricted universe multiverse
deb file:///home/autumncat/apt-source/ubuntu.cn99.com/ubuntu/ gutsy-proposed main restricted universe multiverse
deb file:///home/autumncat/apt-source/ubuntu.cn99.com/ubuntu/ gutsy-backports main restricted universe multiverse
deb-src file:///home/autumncat/apt-source/ubuntu.cn99.com/ubuntu/ gutsy main restricted universe multiverse
deb-src file:///home/autumncat/apt-source/ubuntu.cn99.com/ubuntu/ gutsy-security main restricted universe multiverse
deb-src file:///home/autumncat/apt-source/ubuntu.cn99.com/ubuntu/ gutsy-updates main restricted universe multiverse
deb-src file:///home/autumncat/apt-source/ubuntu.cn99.com/ubuntu/ gutsy-proposed main restricted universe multiverse
deb-src file:///home/autumncat/apt-source/ubuntu.cn99.com/ubuntu/ gutsy-backports main restricted universe multiverse

最后
代码:
sudo apt-get update

但此时 apt-get install 是没用的, 因为巨大的pool目录没有下载

下一步就是获得包的地址, 方法有很多, 例如使用apt-get
代码:
$ apt-get install --print-uris -y gedit|cut -d/' -s -f 2-2
file:///home/autumncat/apt-source/ubuntu.cn99.com/ubuntu/pool/main/g/gtksourceview2/libgtksourceview2.0-common_2.0.1-0ubuntu1_all.deb
file:///home/autumncat/apt-source/ubuntu.cn99.com/ubuntu/pool/main/g/gtksourceview2/libgtksourceview2.0-0_2.0.1-0ubuntu1_i386.deb
file:///home/autumncat/apt-source/ubuntu.cn99.com/ubuntu/pool/main/g/gedit/gedit-common_2.20.3-0ubuntu1_all.deb
file:///home/autumncat/apt-source/ubuntu.cn99.com/ubuntu/pool/main/p/pygtksourceview/python-pygtksourceview_2.0.0-0ubuntu3_i386.deb
file:///home/autumncat/apt-source/ubuntu.cn99.com/ubuntu/pool/main/g/gedit/gedit_2.20.3-0ubuntu1_i386.deb

或者新立得
图片

但是大家可以看到, URL是错误的, 我们把它修正一下(把前面那部分用正确的来替换):
代码:
$ apt-get install --print-uris -y gedit|cut -d/' -s -f 2-2|sed 's|file:///home/autumncat/apt-source/|http://|g'
http://ubuntu.cn99.com/ubuntu/pool/main/g/gtksourceview2/libgtksourceview2.0-common_2.0.1-0ubuntu1_all.deb
http://ubuntu.cn99.com/ubuntu/pool/main/g/gtksourceview2/libgtksourceview2.0-0_2.0.1-0ubuntu1_i386.deb
http://ubuntu.cn99.com/ubuntu/pool/main/g/gedit/gedit-common_2.20.3-0ubuntu1_all.deb
http://ubuntu.cn99.com/ubuntu/pool/main/p/pygtksourceview/python-pygtksourceview_2.0.0-0ubuntu3_i386.deb
http://ubuntu.cn99.com/ubuntu/pool/main/g/gedit/gedit_2.20.3-0ubuntu1_i386.deb


最后就可以到windows下下载需要的deb包了. 
需要的deb包下载完后, 就可以 dpkg -i 或者放到 cache 目录安装.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值