之前在關於本地源那篇文章我是用pactree來下載處理。今天在此G+受到 +Nox Dot +Yushin Huang啟發直接用類似構件新的chroot方式來處理。
此篇著重在下載套件,離線安裝還需要處理資料庫這一塊,目前還沒有想到,如果說你所去的地方只是網路較慢,那你在A電腦下載到B電腦將快取指向你的隨身碟位置,這樣只需要下載少量的套件就可以囉。
此shell script會在你指定的newsys位置構件一個新的系統,每次啟動前都會將舊的newsys砍掉,這樣就能保持在全新的狀態,全新裝態下載就不用額外處理依賴相關套件。
此shell script並不會影響你原生的系統,因為他只會執行下載,下載的套件會放在downlad位置中。
P.S newsys位置千萬不要只設定成/呀!記得要指定其它位置哦
Save this code too foo
#!/bin/bash
typeset -A newsys download
newsys=/tmp/newsys
download=/tmp/download
test -d $newsys && sudo rm -r $newsys
sudo mkdir -p $newsys/var/lib/pacman $download
sudo pacman -r $newsys/ -Syy
sudo pacman -r $newsys/ --cachedir $download -Sw $@
- modify newsys:you new system path
- modify download:you downlad cache path
Now
chmod +x foo
Usa
./foo fooNAME
Pacman所用到的指令如下:
pacman -S --help
用法: pacman {-S --sync} [選項] [軟體包]選項:
-y, --refresh 從伺服器下載新的軟體包資料庫
-r, --root <路徑> 指定另外的安裝根目錄
--cachedir <目錄> 指定另外的軟體包快取位置
沒有留言:
張貼留言