[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[debian-users:08382] Re: ftp mirror
> この方法で唯一注意しないといけないのは,ftp siteからファイルを
> 取得したときに,getしたファイルを消しますか?の問いに必ず"n"と
> 答えることです.なにせデフォルトが"y"ですから,ポンポンとreturn
> を連打していると,ヒエーーーということになります(^^;
>
> aptはほとんど使ったことがないのですが,aptだとそのあたり融通が
> 効くんでしょうか?
えーと、利くと言えば利きます。
hammの場合、新規パッケージがないので、dselectを使う必要がなく、
% apt-get update && apt-get upgrade
としておけば、apt-get cleanを実行するまで、*.debは残っていま
す。
slinkの場合、新規パッケージを見るために、dselectを使いたくな
りますが、dselectでAPT methodを使っているときに[I]nstallを選
べば、FTP methodを使っているときと違って、インストール後、黙っ
て*.debが削除されます。これでは困りますよね。インストールを
やっている最中に、別のターミナルを開いてcpすればいいのですが、
これは面倒。
実は、dselectのAPT methodは、コマンドライン版のapt-getをしか
るべき手順で呼びだしているだけなんです。[I]nstallのときに実
行されるのは/usr/lib/dpkg/methods/apt/installというシェルス
クリプト。
> apt-get clean && echo "Press enter to continue." && read RES && exit 0;
という行で*.debを削除しているので、この前の行に、*.debをコピー
する指示を書き加えておけばいいのです。
スクリプトを書き換えるのが嫌なら、dselectでパッケージを選ん
でから、インストールせずに終了し、apt-get -f dselect-upgrade
とすればOk。ですから、
apt-get -f dselect-upgrade
cp ...
apt-get clean
みたいなスクリプトを書いておけばいいのです。もちろん、エラー
処理もやらないといけないけど、それはinstallスクリプトを参考
にすれば簡単です。
ちなみに、FTPメソッドの場合も
/usr/lib/dpkg/methods/ftp/installなどが実行されているのです
が、こちらはPerlスクリプトなので触りにくいです。
--
川村 尚生