파일 시스템에 대한 루트가 아닌 공개 액세스가 가능합니까?

파일 시스템에 대한 루트가 아닌 공개 액세스가 가능합니까?

저는 Gradle과 Git을 통해 지속적 통합/지속적 전달을 위한 Android 프로젝트를 구축하려고 합니다.

기본 코드는 키가 포함된 다양한 파일 없이 빌드 서버의 git에서 가져옵니다.

Gradle에서는 프로젝트를 성공적으로 빌드하려면 이러한 파일이 필요합니다.

이 파일을 개별적으로 빌드 서버로 가져오겠지만 로컬 환경과 빌드 서버 모두에 이 파일을 저장할 공통 위치를 찾고 있습니다. 이렇게 하면 ENV에서 이 위치를 참조한 다음 Gradle 빌드 파일에서 해당 위치를 가리킬 수 있습니다.

빌드 서버는 루트 모드에서 실행 중이고 분명히 내 로컬은 사용자로 실행 중입니다.

/home/$USER 외에 루트가 아닌 사람이 액세스할 수 있는 Linux 파일 시스템의 다른 공개 위치는 무엇입니까?

내가 사용하는 dist는 우분투와 데비안입니다.

답변1

해당 파일의 가장 공식적인 위치는 다음과 같습니다./srv, "이 시스템에서 제공하는 사이트별 데이터"입니다.

또는 이를 시스템 사용자 /home/autobuilder의 홈 디렉터리 로 사용 autobuilder하고 여기에 파일을 저장할 수 있습니다.

또 다른 일반적인 규칙은 각 컴퓨터 이름에 대한 하위 디렉토리와 같은 최상위 디렉토리를 갖고 /net거기에 사이트별 데이터를 저장하는 것입니다. 파일이 한 컴퓨터에 저장되어 있고 NFS 또는 다른 네트워크를 통해 다른 곳에 마운트된 경우, 이는 아마도 가장 명확한 규칙 파일 시스템.

또는 사용자 소유가 아닌 가변 데이터의 기본 위치인 다음 디렉터리를 선택할 수 있습니다 /var/local/var또는 별도의 최상위 디렉토리를 사용할 수 있습니다. 시스템 관리자는 배포 도구의 가정(예: 배포용으로 예약된 디렉토리 유지)과 충돌하지 않는 한 스토리지 구성 방법을 결정할 수 있습니다.

답변2

/var/spool일반적으로 변수 소유권 및 권한이 있는 애플리케이션별 디렉터리가 포함됩니다. 거기에서 뭔가를 만들 수 있습니다.

마찬가지로, /var/opt그리고 /opt조금여기에 설명이 장소의 의도된 목적에 대해서는, 그러나 그것은 실제로 당신에게 달려 있습니다.

유일한 문제는 일반적으로 디렉터리를 생성하고 해당 위치에 소유권과 권한을 설정하려면 수퍼유저 권한이 필요하다는 것입니다. 그러나 이는 사실이기도 합니다 /home. 유일한 표준 전역 쓰기 가능 위치는 이지만 /tmp영구적으로 저장된다는 보장이 없기 때문에 이는 좋지 않은 생각입니다.

관련 정보