홈 디렉토리 파일 권한이 망가졌습니다. "다시 시작"하는 방법은 무엇입니까?

홈 디렉토리 파일 권한이 망가졌습니다. "다시 시작"하는 방법은 무엇입니까?

rsync를 사용하여 전체 홈 디렉터리를 백업하고 백업을 새 Linux 설치로 옮겼습니다. 어떻게든 내 파일 권한이 완전히 엉망이 되었습니다(모든 파일은 사용자 "999"가 소유하고 파일 권한은 로 설정됨 777).

나는 빨리 달린다 나는 빨리 sudo chown -R username:username ~/달린다오디오와 관련된 몇 가지 문제를 해결했습니다., 그러나 이제 모든 일반 텍스트 파일(영화 및 음악 포함)이 실행 가능으로 표시되고 다른 사용자가 내 파일 등을 볼 수 있습니다.

파일 권한을 "일반"으로 복원하려면 어떻게 해야 합니까? 백업으로 인해 권한도 손상되므로 백업에서 복원하는 것은 불가능합니다. 언제든지 OS를 다시 설치하고 백업에서 구성 파일을 지우고 개인 문서만 남겨둔 다음 재귀적으로 권한을 설정할 수 있지만 권한을 무엇으로 설정해야 합니까? 예를 들어, sudo chmod -R 660 ~/Music내가 소유자인데도 내 음악을 들을 수 없습니다.

답변1

다음은 파일 및 폴더 권한을 신속하게 정리하는 데 도움이 될 수 있지만 설정이 달라도 문제가 해결되지는 않습니다.

sudo chown -R <login>:<login> /home/<login>
find /home/<login> -type f -print0 | xargs -0 chmod 664
find /home/<login> -type d -print0 | xargs -0 chmod 775

<login>물론 로그인 이름입니다. 원하는 경우 660및로 변경하세요.770

더 제한적인 권한이 필요한 몇 가지 특별한 경우가 있습니다. 이 목록은 결코 완전하지는 않지만 빠른 회복에 도움이 될 것입니다.

메일 및 SSH 수정:

find /home/<login>/Mail -type d -print0 | xargs -0 chmod 700
find /home/<login>/.ssh -type d -print0 | xargs -0 chmod 700
find /home/<login>/Mail -type f -print0 | xargs -0 chmod 600
find /home/<login>/.ssh -type f -print0 | xargs -0 chmod 600

참고: 이러한 파일 중 일부에는 또는 가 ~/Mail필요할 수 있습니다 . 이는 메일 클라이언트에 따라 다릅니다.640644

위와 동일한 권한이 필요한 다른 일반적인 파일은 다음과 같습니다.

.gnome, .gnome2_private, .bash_history, .lesshst, .viminfo

편집하다:Ulrich Schwarz의 의견에 대한 정보가 포함되어 .ssh있으며 좀 더 일반적인 디렉터리 및 권한을 포함하도록 확장되었습니다. 완전성을 위해 chown -ROP가 실행한 명령도 포함되어 있습니다.

편집 2:saurabheights가 주석에서 지적했듯이 find /home/<login> -type d -print0 | xargs -0 chmod 775모든 하위 디렉터리에 액세스할 수 있을 때까지 이를 여러 번 실행해야 할 수도 있습니다.

답변2

디렉토리에는 /etc/skel기본 디렉토리에 대한 템플릿이 있습니다 . /etc/skel.conf의 폴더를 기반으로 기본 폴더 권한을 복원해 볼 수 있습니다.

나중에 권한을 보존하려면 -p 스위치와 함께 rsync/cp/scp를 사용하십시오.

관련 정보