[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[debian-users:38377] Re: FTPプロキシの設定をapt.confに記述するには



杉浦です。

sid の方しか見ていないのでもしかしたら変わっているかもしれませんが……

>>> In Message "[debian-users:38376] Re: FTPプロキシの設定をapt.confに記述するには"
>>>            <005801c38c0d$e5a7aaa0$da3b6c85@xxxxxxxxxxxxx>,
>>> "Sano Tomoki" <sano@xxxxxxxxxxxxxxxxxxxx>  said;
> (1) /etc/profileに
>      export PROXY_USER=xxx
>      export PROXY_PASS=yyyyyy
>      としました。

その環境変数は使われないと思います。消しましょう。

man apt.conf をまず最初に読んで下さい。

| To use a ftp proxy you will have to set the ftp::ProxyLogin script
| in the configuration file. This entry specifies the commands to send
| to tell the proxy server what to connect to.  Please see
| /usr/share/doc/apt/examples/configure-index.gz for an example of how
| to do this.  The subsitution variables available are $(PROXY_USER),
| $(PROXY_PASS), $(SITE_USER), $(SITE_PASS), $(SITE), and
| $(SITE_PORT).  Each is taken from it's respective URI component.
                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

とのことなので、URI として指定されたユーザ名とパスワードが使われます。
              ~~~~~~~~~~~~~~~~~~
ProxyLogin { } 内はプロキシサーバにログインするために必要なコマンドを
書いたスクリプトです。
     ~~~~~~~~~~~~~
> (2) apt-get updateを実行
>      Login script command 'USER ' failed, server said: Missing or extra
> username
>      と表示される

これは Proxy に設定された URI 内にユーザ名が無いから $(PROXY_USER) が
正しく空("")に置換された為でしょう。

> (3) プロンプトで、

> ~# echo $PROXY_USER
>     xxx
> ~# echo $(PROXY_USER)
> su: PROXY_USER: command not found

>     としたら、上記の結果になった。

シェルが展開するわけではないので、プロンプトに打った物で判断しちゃ駄目です。
# ちなみに、bash の $( cmd ) は ` cmd ` と同じで、コマンドを実行して
# その結果で置き換えます。でも、apt.conf は shell script じゃないので
# 関係ないですが……

>     $(PROXY_USER) だとコマンドとして認識されているのかと思い、
>     apt.confを変更
>     $(PROXY_USER) → $PROXY_USER

戻しましょう。

> (4) apt-get update を実行
>      Err ftp://ftp.debian.or.jp woody/main Packages
>   Login script command 'USER $PROXY_USER' failed, server said: Warning: Can
> not find /usr/tmp/ or /usr/var/tmp for ls
>      と表示される

> (5) 今の設定だと、/usr/bin/apt-getなのか、/usr/lib/apt/method/ftpなのかはわ
> かりませんが、
>      環境変数として展開されないのかと思いました。

マニュアルを読む限り展開されません。

と言うわけで apt.conf の ftp の所には

Proxy "ftp://プロキシユーザ名:プロキシパスワード@プロキシサーバ名";;

と書くのが正解かと思います。

-- 
Tatsuki Sugiura   mailto:sugi@xxxxxxxxxxxxxxxxxxxxxxxxxxx