🫠
openSUSE Packman repo ローカルミラーを雑に建てる
経緯
openSUSE Packman repo の ref や up などをするときおそすぎてラップトップを破壊してしまう
-
原因(推測):
- 彼女の家の回線が貧弱すぎ(HPNA, 子機のRJ45ポートが100BASE-TX, ひどいときは10mbpsでない)
- Packmanのミラーをやっているところが日本に(たぶん)ない
- いちばん近いのでcnのがあるっぽいがおそい(しらん)
- 本家はgermanyでそもそも遠いのでおそい
-
解決策:
- ミラーを建てて公開運用する
- さすがに無理(コスト的な意味で)
- どんだり人間なのでセキュリティリスク等もこわいねえ
- 自前でローカルな勝手どんだりミラーを建てて自分だけで使う
- 幸い、自分の部屋まではだいたい500mbpsくらいでる回線が来てる
- 部屋の一番上にいるOpenWrtルータにはZeroTierを導入している
- それ以外のコンピュータにもだいたいzerotier-oneが入っているので
- IP直打ちでアクセスできる(NAT越えの問題は無い)
- 物理距離的な問題は解決できそう
- 幸い、自分の部屋まではだいたい500mbpsくらいでる回線が来てる
- Tumbleweedが入っているデスクPC a.k.a. 母艦 がある
- 必要なときだけOpenWrtルータからwakeonlanで電源オン運用している
- Packmanが遅い(彼女の家回線から)ときだけsshしてrsyncしてzypper upする
- やってみた
- ミラーを建てて公開運用する
前提
- おうちにあるopenSUSE TumbleweedマシンでPackman repo のミラーを建てる
- Zerotier 越しでミラーサーバにアクセスしたい
- おうちSUSEにもZerotier-oneがインストール済みで、192.168.194.194 が当たってる
-
192.168.194.194/packman
をアドレスバーに入れたらディレクトリ構造が見えるようにする
本家のrepoからrsyncする
$ sudo mkdir -p /srv/repo
$ rsync -av rsync -av --delete rsync://ftp.gwdg.de/pub/linux/misc/packman/suse/openSUSE_Tumbleweed/ /srv/repo/packman/
$ sudo ln -s /srv/repo/packman /srv/www/htdocs/packman
$ sudo chmod 777 /srv/www/htdocs/*
$ sudo chown wwwrun:www /srv/www/htdocs/*
- 自分以外アクセスしない(できない)のでパーミッションは適当(ダメか❓)
- 必要なときだけミラーを使うのでcronでの運用はしない
- つまり必要なときだけrsyncするしsystemctl start apache2.serviceをする(ええ)
apacheのインストール
$ sudo zypper in apache2
$ sudo vim /etc/apache2/httpd.conf
以下を追記
<Directory "/srv/www/htdocs/packman">
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>
$ sudo systemctl start apache2
$ systemctl status apache2
クライアント側操作
- いちおう、ブラウザから
サーバのアドレス/packman
でディレクトリ一覧が見えることを確認する
$ sudo zypper ar http://192.168.194.194/packman my-own-packman
$ sudo zypper ref
$ sudo zypper up (--allow-vendor-change)
うごかなかったらごめん!
Discussion