UNIX のコマンド:wget コマンドでミラーを取る
技術ドキュメント目次 -> UNIX のコマンド -> wget コマンドでミラーを取る本技術ドキュメントは、2002~2004年頃に作成したものが多いです。
内容が古くなっていることもあるかと思いますが、ご了承ください。
【低価格SSL証明書】弊社運営の低価格SSL証明書販売サイト、翌月末払いなど請求書払いも可能。
◆ wget コマンドでミラーを取る
wgetコマンド(httpのリクエストを行うコマンド、ftpプロトコルにも対応)を-m オプションを付加して実行することで、ftpサイトのミラーを取ることができます。
複雑なコマンドラインオプションや設定ファイルを必要としないため、
非常に簡単にFTPサイトのミラーを取ることができ、大変便利です。
例えば、 RedHat Linux 7.1 のアップデートサイトのミラーを採るには次のようにします。
# wget -m ftp://updates.redhat.com/7.1/en/ --22:36:34-- ftp://updates.redhat.com/7.1/en/ => `updates.redhat.com/7.1/en/.listing' updates.redhat.com:21 に接続しています... 接続しました! anonymous としてログインしています... ログインしました! ==> TYPE I ... 完了しました。 ==> CWD 7.1/en ... 完了しました。 ==> PORT ... 完了しました。 ==> LIST ... 完了しました。 0K -> 22:36:36 (41.67 KB/s) - `updates.redhat.com/7.1/en/.listing' を保存しました [128] --22:36:36-- ftp://updates.redhat.com/%2F7.1/en/os/ => `updates.redhat.com/7.1/en/os/.listing' ==> CWD /7.1/en/os ... 完了しました。 ==> PORT ... 完了しました。 ==> LIST ... 完了しました。 0K -> 22:36:37 (45.18 KB/s) - `updates.redhat.com/7.1/en/os/.listing' を保存しました [694] --22:36:37-- ftp://updates.redhat.com/%2F7.1/en/os/SRPMS/ => `updates.redhat.com/7.1/en/os/SRPMS/.listing' ==> CWD /7.1/en/os/SRPMS ... 完了しました。 ==> PORT ... 完了しました。 ==> LIST ... 完了しました。 0K -> ........ 22:36:37 (29.53 KB/s) - `updates.redhat.com/7.1/en/os/SRPMS/.listing' を保存しました [8225] --22:36:38-- ftp://updates.redhat.com/%2F7.1/en/os/SRPMS/LPRng-3.7.4-23.src.rpm => `updates.redhat.com/7.1/en/os/SRPMS/LPRng-3.7.4-23.src.rpm' ==> CWD は必要ありません。 ==> PORT ... 完了しました。 ==> RETR LPRng-3.7.4-23.src.rpm ... 完了しました。 長さ: 2,590,243 0K -> .......... .......... .......... .......... .......... [ 1%] 50K -> .......... .......... .......... .......... .......... [ 3%] 100K -> .......... .......... .......... .......... .......... [ 5%] 150K -> .......... .......... .......... .......... .......... [ 7%] ...... |
上記のコマンドが終了すると、次のようなディレクトリ構成でファイルが出来ています。
# find ./ ./ ./updates.redhat.com ./updates.redhat.com/7.1 ./updates.redhat.com/7.1/en ./updates.redhat.com/7.1/en/.listing ./updates.redhat.com/7.1/en/os ./updates.redhat.com/7.1/en/os/.listing ./updates.redhat.com/7.1/en/os/SRPMS ./updates.redhat.com/7.1/en/os/SRPMS/.listing ./updates.redhat.com/7.1/en/os/SRPMS/LPRng-3.7.4-23.src.rpm ./updates.redhat.com/7.1/en/os/SRPMS/Mesa-3.4.2-10.src.rpm ./updates.redhat.com/7.1/en/os/SRPMS/SysVinit-2.78-17.src.rpm ./updates.redhat.com/7.1/en/os/SRPMS/XFree86-4.1.0-15.src.rpm ./updates.redhat.com/7.1/en/os/SRPMS/XFree86-Servers-3.3.6-38.src.rpm ./updates.redhat.com/7.1/en/os/SRPMS/XFree86-compat-libs-4.0.3-2.src.rpm ./updates.redhat.com/7.1/en/os/SRPMS/Xconfigurator-4.9.39-0.71.1.src.rpm ./updates.redhat.com/7.1/en/os/SRPMS/anonftp-4.0-9.src.rpm ./updates.redhat.com/7.1/en/os/SRPMS/apache-1.3.22-1.7.1.src.rpm ./updates.redhat.com/7.1/en/os/SRPMS/at-3.1.8-23.src.rpm ...(中略) ./updates.redhat.com/7.1/en/os/alpha ./updates.redhat.com/7.1/en/os/alpha/.listing ./updates.redhat.com/7.1/en/os/alpha/Mesa-3.4.2-10.alpha.rpm ./updates.redhat.com/7.1/en/os/alpha/Mesa-demos-3.4.2-10.alpha.rpm ./updates.redhat.com/7.1/en/os/alpha/Mesa-devel-3.4.2-10.alpha.rpm ./updates.redhat.com/7.1/en/os/alpha/SysVinit-2.78-17.alpha.rpm ./updates.redhat.com/7.1/en/os/alpha/XFree86-100dpi-fonts-4.1.0-15.alpha.rpm ./updates.redhat.com/7.1/en/os/alpha/XFree86-4.1.0-15.alpha.rpm ...(中略) ./updates.redhat.com/7.1/en/os/alphaev6 ./updates.redhat.com/7.1/en/os/alphaev6/.listing ./updates.redhat.com/7.1/en/os/alphaev6/glibc-2.2.4-24.alphaev6.rpm ./updates.redhat.com/7.1/en/os/athlon ./updates.redhat.com/7.1/en/os/athlon/.listing ./updates.redhat.com/7.1/en/os/athlon/kernel-2.4.9-31.athlon.rpm ./updates.redhat.com/7.1/en/os/athlon/kernel-smp-2.4.9-31.athlon.rpm ./updates.redhat.com/7.1/en/os/i386 ./updates.redhat.com/7.1/en/os/i386/.listing ./updates.redhat.com/7.1/en/os/i386/LPRng-3.7.4-23.i386.rpm ./updates.redhat.com/7.1/en/os/i386/Mesa-3.4.2-10.i386.rpm ./updates.redhat.com/7.1/en/os/i386/Mesa-demos-3.4.2-10.i386.rpm ./updates.redhat.com/7.1/en/os/i386/Mesa-devel-3.4.2-10.i386.rpm ./updates.redhat.com/7.1/en/os/i386/SysVinit-2.78-17.i386.rpm ./updates.redhat.com/7.1/en/os/i386/XFree86-100dpi-fonts-4.1.0-15.i386.rpm ...(後略) |
なお、
再度同じディレクトリで wget -m ftp://updates.redhat.com/7.1/en/ を実行すると、
更新されていないファイルは取得されませんので、
無駄なトラフィックや負荷をかけることはありません。
(実行すると、次のように not retrieving. と表示されます。)
# wget -m ftp://updates.redhat.com/7.1/en/ --03:20:34-- ftp://updates.redhat.com/7.1/en/ => `updates.redhat.com/7.1/en/.listing' updates.redhat.com:21 に接続しています... 接続しました! anonymous としてログインしています... ログインしました! ==> TYPE I ... 完了しました。 ==> CWD 7.1/en ... 完了しました。 ==> PORT ... 完了しました。 ==> LIST ... 完了しました。 0K -> 03:20:43 (41.67 KB/s) - `updates.redhat.com/7.1/en/.listing' を保存しました [128] --03:20:43-- ftp://updates.redhat.com/%2F7.1/en/os/ => `updates.redhat.com/7.1/en/os/.listing' ==> CWD /7.1/en/os ... 完了しました。 ==> PORT ... 完了しました。 ==> LIST ... 完了しました。 0K -> 03:20:47 (169.43 KB/s) - `updates.redhat.com/7.1/en/os/.listing' を保存しました [694] --03:20:47-- ftp://updates.redhat.com/%2F7.1/en/os/SRPMS/ => `updates.redhat.com/7.1/en/os/SRPMS/.listing' ==> CWD /7.1/en/os/SRPMS ... 完了しました。 ==> PORT ... 完了しました。 ==> LIST ... 完了しました。 0K -> ........ 03:20:49 (13.23 KB/s) - `updates.redhat.com/7.1/en/os/SRPMS/.listing' を保存しました [8225] Server file no newer than local file `updates.redhat.com/7.1/en/os/SRPMS/LPRng-3.7.4-23.src.rpm' -- not retrieving. Server file no newer than local file `updates.redhat.com/7.1/en/os/SRPMS/Mesa-3.4.2-10.src.rpm' -- not retrieving. Server file no newer than local file `updates.redhat.com/7.1/en/os/SRPMS/SysVinit-2.78-17.src.rpm' -- not retrieving. Server file no newer than local file `updates.redhat.com/7.1/en/os/SRPMS/XFree86-4.1.0-15.src.rpm' -- not retrieving. Server file no newer than local file `updates.redhat.com/7.1/en/os/SRPMS/XFree86-Servers-3.3.6-38.src.rpm' -- not retrieving. Server file no newer than local file `updates.redhat.com/7.1/en/os/SRPMS/XFree86-compat-libs-4.0.3-2.src.rpm' -- not retrieving. |
■ UNIX のコマンド についての他のドキュメント
- cdコマンド
- cutコマンド
- dirnameコマンド
- ftpコマンドのバッチ処理
- loggerコマンド
- netstatコマンド
- nkfコマンド
- sortコマンド
- topコマンド
- tracerouteコマンド
- unameコマンド
- wcコマンド
- wget コマンドでミラーを取る
- whoisコマンド
- writeコマンド
- xargsコマンド(複数ファイルの一括検索で超便利)
■ 他のグループのドキュメント
Apache / Linux / FreeBSD / OpenSSL / Perl / HTTPプロトコル / Jakarta Tomcat / Java / NetBSD / Oracle / PostgreSQL / UNIX の C言語 / UNIX のコマンド / Windows / bind / システム運用TIPS