使用apt-mirror做一个本地ubuntu离线apt源

本文详细介绍了如何使用apt-mirror工具在有网络的机器上下载Ubuntu的软件源,并将其部署到离线机器上的过程。包括配置apt-mirror、下载软件源、在离线机器上配置sources.list以及更新软件源的方法。

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

安装apt-mirror工具(在有网机器上)

sudo apt-get install apt-mirror

配置apt-mirror

sudo vi /etc/apt/mirror.list

############# config ##################
#
set base_path    /home/vismarty/usb/apt-mirror
#
# set mirror_path  $base_path/mirror
# set skel_path    $base_path/skel
# set var_path     $base_path/var
# set cleanscript $var_path/clean.sh
# set defaultarch  <running host architecture>
# set postmirror_script $var_path/postmirror.sh
# set run_postmirror 0
set nthreads     20
set _tilde 0
#
############# end config ##############

deb http://cn.archive.ubuntu.com/ubuntu trusty main restricted universe multiverse
deb http://cn.archive.ubuntu.com/ubuntu trusty-security main restricted universe multiverse
deb http://cn.archive.ubuntu.com/ubuntu trusty-updates main restricted universe multiverse
#deb http://cn.archive.ubuntu.com/ubuntu trusty-proposed main restricted universe multiverse
#deb http://cn.archive.ubuntu.com/ubuntu trusty-backports main restricted universe multiverse

deb-src http://cn.archive.ubuntu.com/ubuntu trusty main restricted universe multiverse
deb-src http://cn.archive.ubuntu.com/ubuntu trusty-security main restricted universe multiverse
deb-src http://cn.archive.ubuntu.com/ubuntu trusty-updates main restricted universe multiverse
#deb-src http://cn.archive.ubuntu.com/ubuntu trusty-proposed main restricted universe multiverse
#deb-src http://cn.archive.ubuntu.com/ubuntu trusty-backports main restricted universe multiverse

clean http://cn.archive.ubuntu.com/ubuntu

注意事项
set base_path 表示要下载到哪个目录,一般指向挂载到这个机器的移动硬盘里
trusty 表示14.04,需要16.04的话,改成xenial
下载机如果是64位,他默认下载64位的源。如果要全下载可以把deb开头那一行改成:
deb-amd64 http://cn.archive.ubuntu.com/ubuntu trusty main restricted universe multiverse
deb-i386 http://cn.archive.ubuntu.com/ubuntu trusty main restricted universe multiverse

开始下载

sudo apt-mirror

170G左右,建议用tmux

到离线机器部署

移动硬盘挂载到离线机器上

mkdir usbhd
# 查看插入的硬盘描述符
sudo fdisk -l
# 根据硬盘描述符挂载到usbhd目录上
sudo mount /dev/sdb* usbhd

小提示:如果挂载的是NTFS格式的硬盘,有些机器上可能会变成“只读”,需要软件包(sudo apt-get install ntfs-3g)的支持。
实在不行,强制用root权限搞就是了。

配置离线机器的sources.list

sudo vi /etc/apt/sources.list

deb file:///usbhd/mirror/cn.archive.ubuntu.com/ubuntu trusty main restricted universe multiverse
deb file:///usbhd/mirror/cn.archive.ubuntu.com/ubuntu trusty-security main restricted universe multiverse
deb file:///usbhd/mirror/cn.archive.ubuntu.com/ubuntu trusty-updates main restricted universe multiverse

deb-src file:///usbhd/mirror/cn.archive.ubuntu.com/ubuntu trusty main restricted universe multiverse
deb-src file:///usbhd/mirror/cn.archive.ubuntu.com/ubuntu trusty-security main restricted universe multiverse
deb-src file:///usbhd/mirror/cn.archive.ubuntu.com/ubuntu trusty-updates main restricted universe multiverse

其中文件路径根据实际情况而定

更新软件源

sudo apt-get update

可能会有一些错误提示,比如i386找不到什么的,如果我们没有下载32位包。可以忽略。

另一种简易源的离线方法

其实ubuntu官网下载下来的iso里面是包含一些常用的软件源的,比如python和openssh等。我们也可以通过apt-cdrom这个方法,将一些常用软件的源离线使用,他肯定没有上面170G源完整,但是可以对付一些小场合。

先挂载iso

如果我们用iso制作完了U盘,那需要在U盘中再次拷贝一份这个iso,比如ubuntu.iso
使用命令将iso挂载到cdrom下:

sudo mount -o loop usb/ubunto.iso /media/cdrom

添加源

sudo apt-cdrom add -m

-m 表示不指定节点,使用默认的/media/cdrom作为节点
运行完可以看到在/etc/apt/sources.list下,多了一条cdrom的节点

更新

sudo apt-get update
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值