2014-10-15 5 views
0

다른 사용자로 다른 TCP 포트에서 실행중인 (수정 불가능한) 서버 프로세스가 있습니다. 비 권한 사용자로 실행되는 스크립트는 파일 경로 (읽을 수있는)를 서버 프로세스에 전달해야합니다. 파일 경로는 서버 프로세스가 액세스 할 수 없을 가능성이 높습니다. 스크립트는 각 파일 경로를 공유 위치 (/tmp/something/)에 복사하고 대신 공유 파일 경로를 전달할 수 있습니다. 파일을 복사하지 않고 동일한 효과를 얻을 수 있습니까? 파일 경로가 /tmp/something/이 켜져있는 파일 시스템과 다른 파일 시스템에 있기 때문에 하드 링크가 가능하지 않을 수도 있습니다.Linux의 다른 사용자에게 파일을 공유하십시오.

+1

일반적으로 이러한 조건은 직접 파일 권한과 일치합니다. 셸 스켈레톤에서 umask를 설정하여 공유 사용자 그룹을 소개하고 적절한 권한을 강제 할 수 있습니까? – arkascha

+0

기본적으로'libreoffice'로 병렬 배치 처리를 허용합니다. Libreoffice 헤드리스 서버는 사용자 당 여러 개의 서버를 허용하지 않습니다. 각각의'libreoffice' 서버를 다른 사용자로 시작하면이 문제가 해결되지만 설치 가능한 솔루션으로 게시하고 싶다면 공유 문제가 있습니다. (사람들에게'umask'가 있어야하는 것을 지시 할 수는 없습니다). 지금 당장은 사용자 스크립트를 setuid root로 설정하는 것 외에는 생각할 수 없습니다. – PSkocik

+0

그리고 그 파일들을 특별한 파일 시스템에 저장하면 마운트 설정을 통해 파일 소유권/허가권을 원격 제어 할 수 있습니까? – arkascha

답변

0

같은 그룹 내에서 공유하기 :

chmod g+rw myfile.txt 

다른 사용자와 공유하기 :

chmod o+rw myfile.txt 
+0

'myfile.txt'가 다른 사용자가'cd '할 수없는 디렉토리에 있다면 이것은별로 도움이되지 않을 것입니다. – PSkocik

+0

동의. 하지만 질문에 대한 파일에 대해 그래서 나는 파일이있는 동안 디렉터리에 권한이 있다고 가정합니다. – SMA

관련 문제