현재 사용자의 구성에 여러 가지 문제가 있습니다. 이러한 문제는 새 사용자 계정에서 해결됩니다. 이제 이전 사용자의 모든 데이터를 새 사용자로 이동하고 싶습니다(디스크 공간 때문에 복사가 아님). 또한 문제가 없는 일부 응용 프로그램 설정 파일을 선택적으로 새 사용자에게 이동하고 싶습니다.
이렇게 하려면 새 사용자가 이전 사용자의 전체 사용자 폴더를 읽고 쓸 수 있도록 하려면 어떻게 해야 합니까?
답변1
홈 디렉터리의 소유권을 chown
새 사용자로 변경합니다.
chown -R newuser:newuser /home/olduser
답변2
아무래도"여러 질문"실제로 애플리케이션별 구성과 관련이 있습니다. 일반 계정은 홈 디렉터리 위치에 종속되는 어떤 것도 가져서는 안 됩니다.
그러나 귀하가 설명하는 문제는 문제를 일으키지 않고 해결하기가 어렵습니다. "점"이 아닌 파일과 표준 쉘 시작 파일을 복사하는 것이 좋은 시작일 수 있지만 여전히 중요한 도트 파일이 누락되거나 너무 많은 파일을 가지고 다닐 위험이 있습니다. 이는 시행착오를 거쳐 해결되어야 합니다.
이미 새 계정을 생성한 것으로 가정합니다. 편의상 변수를 사용하여 이전 사용자 디렉터리와 새 사용자 디렉터리를 식별하겠습니다. 이 모든 것을 다음과 같이 실행하십시오 root
.
olduser=olduser # For example, « olduser=sarah »
newuser=newuser
oldgroup=oldgroup # For example, « oldgroup=sarah » or « oldgroup=users »
newgroup=newgroup
oldhome=/home/olduser # For example, « oldhome=/home/sarah »
newhome=/home/newuser
이전 디렉터리에서 새 디렉터리로 파일을 이동합니다.
mv "$oldhome"/* "$newhome/"
mv -f "$oldhome"/.{bashrc,bash_profile,profile,ssh} "$newhome/"
남은 파일을 확인하고 mv
보관하려는 파일을 이동( )하세요.
ls -RA "$oldhome"
마지막으로 새 사용자의 소유권과 그룹을 변경합니다.
find "$newhome" -user "$olduser" -exec chown "$newuser" {} +
find "$newhome" -group "$oldgroup" -exec chgrp "$newgroup" {} +