가능하다면 매우 기본적이어야 하는데 Google에 올바른 질문을 어떻게 해야 할지(또는 불가능한지) 혼란스럽습니다.
우리가 가지고 있다고 가정하자
/home/user/
...conf
/home/user/candidate/
...conf
우리는 homedir과 일부 하위 디렉터리를 가지고 있습니다. 프로그램은 자연스럽게 homedir( */home/user*
) 을 사용합니다.
내가 필요한 것은 */home/user/candidate*
프로그램이 */home/user/candidate/conf*
호출 할 수 있도록 가정 사용자를 일시적으로 변경하는 것입니다.*/home/user/conf*
이제 변경 사항을 영구적으로 적용하기 위해 usermod 또는 기타 다른 항목이 필요하지 않습니다 . 프로그램이 일시적으로 내 디렉토리를 사용하도록 강제하고 홈 디렉토리라고 생각하지만 /etc/passwd
재부팅 시 */home/user*
정상적으로 선택하여 실행하고 싶습니다.
*/home/user/candidate*
가족 세션 으로만 사용되며 사용자가 콘텐츠를 수정할 수 없습니다.
답변1
바인드 마운트를 사용하여 이 리디렉션을 수행할 수 있습니다.
mount --bind /home/user/candidate/ /home/user/
이런 식으로 /home/user
하위 디렉토리의 내용이 표시됩니다 candidate
. 필요한 모든 작업을 완료한 후 umount는 바인딩을 삭제합니다.
umount /home/user/
바인드 마운트에 대한 추가 문서:
답변2
한 폴더를 다른 폴더 위에 마운트하지 않는(으악) 보다 이식 가능하고 수명이 짧은 솔루션은 export HOME=/home/user/candidate
.