sudo 사용자로 scp 또는 rsync를 통해 루트 소유의 파일을 다운로드하려면 어떻게 해야 합니까?

sudo 사용자로 scp 또는 rsync를 통해 루트 소유의 파일을 다운로드하려면 어떻게 해야 합니까?

sudo 사용자(비대화식)로 root원격 서버에서(또는 을 통해 ) scp권한이 필요한 파일을 어떻게 다운로드 할 수 있습니까?rsync

노트sudo 사용자는 명령 비밀번호를 요구하도록 구성되지 않았습니다 sudo. sshpass로컬 및 원격 시스템에 설치됩니다 .

다운로드 명령은 다음과 같습니다.

sshpass -p {sudo-user-pass} scp {sudo-user}@{host}:/path/to/some/root/owned/file.tar.gz ./

file.tar.gz이 명령은 오류가 루트의 소유이므로 "권한 거부" 오류를 발생시킵니다 .

이 파일을 다운로드하려면 sudo 사용자가 루트로 전환해야 합니다.sudo -su

scp그렇다면 sudo rsync사용자가 루트로 전환하여 루트가 소유한 파일을 (비대화형으로) 다운로드할 수 있는 방법이 있습니까 ?

답변1

이 답변을 참조하십시오. SCP 자체는 이를 허용하지 않지만 "ssh sudo cat"을 빠르게 수행하여 동일한 효과를 얻을 수 있습니다. 파일 수가 많으면 확장성이 좋지 않지만 파일 1개이면 충분할 수 있습니다.

사용자가 읽을 수는 없지만 sudo는 가능한 파일을 scp하려면 어떻게 해야 하나요?

관련 정보