2012-05-08 3 views
0

리눅스에서 FTP 서버를 구현하고 있습니다. 사용자가 CWD 명령을 보낼 때 chroot 명령을 사용하여 현재 작업 디렉토리를 변경합니다. 그러나 "ls -l"명령을 사용하여 더 이상 파일 목록 정보를 가져올 수 없습니다. 이 상황에서 파일 정보를 얻을 수있는 방법이 있습니까?리눅스의 현재 디렉토리에있는 파일 정보를 얻는 방법

+1

[dirent.h] (http://en.wikipedia.org/wiki/Dirent.h)를 사용하십시오. –

답변

2

chroot은 현재 디렉토리를 변경하지 않습니다. 이를 위해서는 chdir을 사용해야합니다.

( chroot는 사용자 디렉토리에 chroot, 당신이 새로운 루트 파일 시스템에 더 이상 /bin/ls을 찾을 수 있다는 가능성이 높습니다 후, 따라서. 루트 파일 시스템을 변경합니다.)

1

당신은에 chroot를 대신 CHDIR를 사용해야합니다 디렉토리를 변경하십시오. 그런 다음 opendirreaddir을 사용하여 하위 디렉토리를 검색 할 수 있습니다. closedir을 호출하는 것을 잊지 마십시오.

관련 문제