[완료]system 명령어 사용
글쓴이: phw0317 / 작성시간: 목, 2010/12/16 - 2:56오후
안녕하세요 지금 fedora core 13 사용중인 유저입니다.
이번에 웹페이지를 만드려고 제작중에 있는데 궁금한게 있어서 문의드립니다.
일단 아래 코드를 봐주시구요.
#!/usr/bin/perl use CGI qw(param); $query=new CGI; print "content-type :text/html\n\n"; $start=param("start"); $end=param("end"); system ("mkdir kk"); system ("perl pd_parsing.pl $start $end"); system ("perl start_end.pl input_parsing.file"); print " <html> <body> <center> <src img = jpgraph.php> </center> </body> </html> ";
제가 원하는건 system명령어를 통해 kk라는 폴더를 만들고 2개의 perl 프로그램을 실행 시켜준 후
웹에다가 jpgraph.php라는 파일이미지를 띄워서 보여주고싶습니다.
그런데 system 명령어가 하나도 안먹더라구요. 그래서 문의드립니다.
어떻게 해야 system 명령어가 작동을 할까요?
Forums:
권환 확인은 하셨나요
해당 페이지에서 파일 생성 권한이 있는지 확인하세요
해당 페이지에서 파일 생성 권한이라는게...
제가 작성한 코드에 있는 파일이 가지고 있는 권한을 말해주시는건지요...
해당파일의 권한입니다.
아니요
해당 path의 권한이요
폴더 자체에 권한이 있어야 파일을 쓰거나 삭제하거나 하실수 있고요
root 계정이 있으시면 web 서버 실행 계정이 무엇인지 확인하시고
그 계정 권한으로 들어가셔서 작업해보세요
예를 들어 www-data로 실행된다면
#su www-data -s /bin/sh
이렇게 하셔서 www-data 가 된 다음에 해당 폴더에서 해당 명령이 수행되는지 확인이요
어렵네요...ㅠㅠ
web서버 실행 계정이라 함은 아파치를 실행시키는걸 얘기하시는건가요?
그거는 nobody라고 default설정으로 되어있는것 그대로 실행을 했습니다..
해당 path에대한 권한이라는걸 제가 잘 이해를 못해서..ㅠㅠ
#su www-data -s /bin/sh
위에 문장이 어떤 말인지 잘 모르겠습니다.
파일이 실제 저장될 위치의 폴더를 말하는거
파일이 실제 저장될 위치의 폴더를 말하는거 같은데요.
파일이 저장될려면 그 위치의 폴더들도 권한을 가져야해요
해결했습니다~
시스템 명령어에서 절대경로로 지정을 해주었고
해당 폴더에다가는 777 권한을 주어서 해결했습니다.
위에 도움주신분들 감사드립니다 ^^
댓글 달기