Wget

從 Ubuntu Server 儲存庫製作鏡像的疑問

  • December 29, 2017

最近我買了一個 Orange Pi 2G IoT(這個小 SoC 真的很棒!)。我安裝了 Ubuntu Server 並設法通過串口連接到它,我什至可以更新系統(僅 apt-get update)並安裝一些軟體包,但這是一個小問題:我想離線安裝軟體包(在我的房子我沒有網際網路連接),我試圖下載儲存庫,但它只讓我下載大約 9 兆字節,甚至不從(我認為)駐留包的“”文件開始,它只製作一個該儲存庫中的文件列表並下載一些“index.html”,但僅此而已。

我正在使用帶有 Debian Jessie amd64 的 PC,我位於 NTFS 分區中的一個文件夾中(檢查我是否有足夠的空間)並且我嘗試使用wget命令從控制台鏡像儲存庫,語法如下:

wget --mirror --convert-links --show-progress --recursive --wait=5 http://mirrors.ustc.edu.cn/ubuntu-ports/

有更好主意的人可以幫助我下載儲存庫以離線使用嗎?

wget在通過網站遞歸爬行時尊重 robots.txt 文件。您可以在此處-e robots=off使用 更多資訊覆蓋此行為

感謝@ridgy

您最好debmirror使用 wget 而不是 tryign 來使用 wget,因為事情不會全部連結,等等。

這是我用來執行的腳本,debmirror請注意您需要更改架構、部分、版本等。

#!/bin/sh

# Architecture (i386, powerpc, amd64, etc.)
arch=i386,amd64

# Section (main,contrib,non-free)
section=main,multiverse,universe,restricted,partner

# Release of the system (squeeze,lenny,stable,testing,etc)
release=xenial,xenial-backports,xenial-proposed,xenial-security,xenial-updates,yakkety,yakkety-backports,yakkety-proposed,yakkety-security,yakkety-updates,zesty,zesty-backports,zesty-proposed,zesty-security,zesty-updates,artful,artful-updates,artful-security,artful-proposed,artful-backports

# Server name, minus the protocol and the path at the end
server=us.archive.ubuntu.com

# Path from the main server, so http://my.web.server/$dir, Server dependant
inPath=/ubuntu

# Protocol to use for transfer (http, ftp, hftp, rsync)
proto=http

# Directory to store the mirror in
outPath=/storage/mirrors/mirror/archive.ubuntu.com/ubuntu

logfile=ubuntu-mirror.log-`date +%m-%d-%Y`

# Start script

debmirror -a $arch \
--no-source \
--slow-cpu \
--i18n \
--md5sums \
--progress \
--passive \
--verbose \
-s $section \
-h $server \
-d $release \
-r $inPath \
-e $proto \
$outPath 

# pull in all the Release.gz etc. stuff
for i in `echo $release | sed s/\,/\ /g`
do
    rsync -avrt rsync://us.archive.ubuntu.com/ubuntu/dists/$i $outPath/dists
done

# fix Translation files
cd $outPath/dists
for i in `find ./ -iname Translation-en.gz`
   do nn=`echo $i | sed s/\.gz//g`
   zcat $i > $nn
done

引用自:https://unix.stackexchange.com/questions/413685