いつもお世話になっております
シンボリックリンクを使う際に問題が発生しました。
#ln -s /mnt/hdb/user/test /home/user/test
で、ユーザディレクトリに/mnt/hdb/user/testというディレクトリに向けてtestというシンボリックリンクを張ります。
#ls /home/user/ -F
test@
ls -Fで確認したところ、シンボリックリンクファイルtestを上記のように確認できます。しかしながら、cdコマンドを実行すると、
#cd /home/user/test
#pwd
/mnt/hdb/user/test
になるはずですが、
#cd /home/user/test
#pwd
/home/user/test
なってしまいました。
これの原因で(推測)外からffftpで /home/user/testをアクセスしようとすると、No such file or directoryというエラーが出ました。
この問題どう解決できますか、ご教授よろしくお願いします。
ちなみに
/mnt/hdb は増設したハードディスクをマウントしたところ
使用システム はFedora 4
> #cd /home/user/test
> #pwd
> /mnt/hdb/user/test
>
> になるはずですが、
>
> #cd /home/user/test
> #pwd
> /home/user/test
>
> なってしまいました。
これはシェルによってどちらになるかが決まっています。bash だと後者、Solaris などの sh だと前者になります。bash でも、set -P を事前に発行しておけば前者になります。どちらがいいかは AP 特性に依存するので使い分けるべきでしょう。
> これの原因で(推測)外からffftpで /home/user/testをアクセスしようと
> すると、No such file or directoryというエラーが出ました。
それが原因ではなく、シンボリック・リンクを使っている事が問題だと思います。Linux の FTP ではデフォルトで chroot が有効になっていると思いますが、その状況から判断して恐らくシンボリック・リンクは許されないのではないでしょうか。(このことは試しに root ユーザで chroot /mnt/hdb/user/test、chroot /home/user/test を試してみれば分かるかと思います)
となると、/etc/passwd を編集してホームディレクトリを /mnt/hdb/user/test にするしかないのではないかと思います。
シンボリックリンクってものを誤解してるような気が。。。
>> #cd /home/user/test
>> #pwd
>> /mnt/hdb/user/test
>> になるはず
はないと思うんだけど…
/home/user/test へcdしたのだから$PWDは /home/user/test になるのじゃ?
>> 各ユーザのディレクトリ容量を分担するため
新しいディスクは /mnt/hdb でなく /home にマウントするってのはどぉでしょか?(みんなまとめて引越しはメンドイかもだけど。)