あるディレクトリ内が
$ ls 合計 4 drwxr-xr-x 2 user group 4096 6月 22 10:26 etc/ -rw-r--r-- 1 user group 0 6月 22 10:27 file lrwxrwxrwx 1 user group 14 6月 22 10:26 web -> ../public_html/
となっている場合、
FTPコマンドの出力の違い。
LIST
drwxr-xr-x 3 user group 4096 Jun 22 10:27 . drwxr-xr-x 21 user group 4096 Jun 22 10:26 .. drwxr-xr-x 2 user group 4096 Jun 22 10:26 etc -rw-r--r-- 1 user group 0 Jun 22 10:27 file lrwxrwxrwx 1 user group 14 Jun 22 10:26 web -> ../public_html
NLST
file etc .. web .
MLSD
modify=20130622012712;perm=adfrw;size=0;type=file;unique=802UE40004;UNIX.group=101;UNIX.mode=0644;UNIX.owner=20397; file modify=20130622012659;perm=flcdmpe;type=dir;unique=802UE40003;UNIX.group=101;UNIX.mode=0755;UNIX.owner=20397; etc modify=20130622012617;perm=flcdmpe;type=pdir;unique=802UBB8001;UNIX.group=101;UNIX.mode=0755;UNIX.owner=20397; .. modify=20130608071752;perm=flcdmpe;type=dir;unique=802UBB8002;UNIX.group=101;UNIX.mode=0755;UNIX.owner=20397; web modify=20130622012712;perm=flcdmpe;type=cdir;unique=802UE40001;UNIX.group=101;UNIX.mode=0755;UNIX.owner=20397; .
MLST は、指定したディレクトリ・ファイルのみの情報を表示するだけで、MLSDとフォーマットは一緒。
LIST・NLSTのフォーマットは決まっておらず、OSに依存している。
そのため統一しようということで、MLST・MLSDが策定された。
上記の結果で、
webディレクトリは、シンボリックリンクなのだが、
MLSDの結果では
type=dir;
となっている。
ここは、
OS.unix=slink:path
だったのが、
OS.unix=symlink
になったようなのだが、
FTPサーバーのバージョンによるのかもしれない。
ProFTPDで確認したが、バージョンが不明。
Comments
RFC3659
Comment
http://tools.ietf.org/html/rfc3659
で、
MLST
MLSD
が定義された。
http://www.rfc-editor.org/errata_search.php?rfc=3659&eid=1500
にErrataがある。
ProFTPD 関連情報
http://www.proftpd.org/docs/modules/mod_facts.html
に関連情報あり