목적
Python 스크립트에서 다음 명령을 실행하려고 합니다.
rdiff-backup --terminal-verbosity=5 --remote-schema "ssh %s -p1019 -i C:/Users/Adam/.ssh/private-passphrase rdiff-backup --server" C:/Users/Adam/ 데스크탑[이메일 보호됨]::/미디어/exthdd1/backup
내 소스 디렉토리는 Windows 운영 체제에 있고 대상 디렉토리는 Debian 기반 시스템입니다.
질문
나는 다음과 같은 결과를 얻습니다.
`Using rdiff-backup version 1.2.8
Executing ssh [email protected] -p1019 -i C:/Users/Adam/.ssh/private-passphrase r
diff-backup --server
Enter passphrase for key 'C:/Users/Adam/.ssh/private-passphrase':
Found interrupted initial backup. Removing...
Hardlinks disabled by default on Windows
Unable to import module xattr.
Extended attributes not supported on filesystem at C:/Users/Adam/Desktop
Unable to import module posix1e from pylibacl package.
POSIX ACLs not supported on filesystem at C:/Users/Adam/Desktop
escape_dos_devices not required by filesystem at C:/Users/Adam/Desktop
-----------------------------------------------------------------
Detected abilities for source (read only) file system:
Access control lists Off
Extended attributes Off
Windows access control lists On
Case sensitivity Off
Escape DOS devices Off
Escape trailing spaces Off
Mac OS X style resource forks Off
Mac OS X Finder information Off
-----------------------------------------------------------------
POSIX ACLs not supported by filesystem at /media/exthdd1/backup/rdiff-backup-dat
a/rdiff-backup.tmp.0
Unable to import win32security module. Windows ACLs
not supported by filesystem at /media/exthdd1/backup/rdiff-backup-data/rdiff-bac
kup.tmp.0
escape_dos_devices not required by filesystem at /media/exthdd1/backup/rdiff-bac
kup-data/rdiff-backup.tmp.0
-----------------------------------------------------------------
Detected abilities for destination (read/write) file system:
Ownership changing Off
Hard linking On
fsync() directories On
Directory inc permissions Off
High-bit permissions Off
Symlink permissions Off
Extended filenames On
Windows reserved filenames Off
Access control lists Off
Extended attributes On
Windows access control lists Off
Case sensitivity On
Escape DOS devices Off
Escape trailing spaces Off
Mac OS X style resource forks Off
Mac OS X Finder information Off
-----------------------------------------------------------------
Backup: must_escape_dos_devices = 0
Symbolic links excluded by default on Windows
Starting mirror C:/Users/Adam/Desktop to /media/exthdd1/backup
Processing changed file .
Processing changed file Git Shell.lnk
Sending back exception [Errno 1] Operation not permitted: '/media/exthdd1/backup
/rdiff-backup.tmp.4' of type <type 'exceptions.OSError'>:
E File "/usr/lib/python2.7/dist-packages/rdiff_backup/connection.py", line 335,
in answer_requestxception '[Errno 1] Operation not permitted: '/media/exthdd1/b
result = apply(eval(request.function_string), argument_list)Traceback (most
recent call last):up\Main.pyc", line 304, in error_check_Main
File "rdiff_backup\Main.pyc", line 324, in Main
File "rdiff-backup", line 30, in <module>n take_action
File "/usr/lib/python2.7/dist-packages/rdiff_backup/backup.py", line 232, in p
atchle "rdiff_backup\backup.pyc", line 38, in Mirror
File "rdiff_backup\Main.pyc", line 304, in error_check_Main
ITR(diff.index, diff)ection.pyc", line 370, in reval
File "/usr/lib/python2.7/dist-packages/rdiff_backup/rorpiter.py", line 281, in
__call__ File "rdiff_backup\Main.pyc", line 324, in Main
last_branch.fast_process(*args) File "rdiff_backup\Main.pyc", line 280, in
File "/usr/lib/python2.7/dist-packages/rdiff_backup/backup.py", line 529, in f
ast_process File "rdiff_backup\Main.pyc", line 346, in Backup
if self.patch_to_temp(mirror_rp, diff_rorp, tf):
File "/usr/lib/python2.7/dist-packages/rdiff_backup/backup.py", line 559, in p
atch_to_temp File "rdiff_backup\connection.pyc", line 450, in __call__
rpath.copy_attribs(diff_rorp, new)OSError0, in reval
File "/usr/lib/python2.7/dist-packages/rdiff_backup/rpath.py", line 189, in co
py_attribs:
rpout.chmod(rpin.getperms())Errno 1] Operation not permitted: '/media/exthdd
File "/usr/lib/python2.7/dist-packages/rdiff_backup/rpath.py", line 927, in ch
mod
self.conn.os.chmod(self.path, permissions & Globals.permission_mask)
Fatal Error: Lost connection to the remote system`
해결하려고 노력하다
- 권한 문제인 줄 알았는데 대상 디렉터리가 777입니다.
- 관리자 권한으로 CMD를 실행해 보았습니다.
- 사용자 그룹 사용자에 내 Windows 사용자 계정을 추가합니다.
- sshd 서비스를 받기 위해 Cygwin을 설정하는 과정에서 "Error 1053: Unable to start service"라는 메시지가 계속 나와서 포기했습니다. SSH 별칭이 명령을 단순화하고 어디로든 갈 수 있는지 확인하기 위해 이것을 시도했습니다. 자리 표시자에 대한 뭔가가 나를
%s
아프게 해서 그것을 사용하여 돌아다닐 수 있으면 어딘가에 갈 수 있을 것이라고 생각했습니다. SSH 별칭을 추구할 가치가 있다고 생각하는 사람이 있나요?
답변1
문제는 실제로 사용자의 대상 드라이브 행에 및 값을 추가 /etc/fstab
한다는 것 입니다 .gid
uid
pi
답변2
Errno 1은 "작업이 허용되지 않음"이므로 권한 문제임에 틀림없으며 분명히 Linux 측의 권한 문제입니다.
Linux 측에서는 대상 디렉터리가 777인지 확인했지만 실제 사용자가 rdiff-backup
해당 디렉터리로 이동할 수 있는지도 확인해야 합니다. /media/exthdd1
합계를 확인하세요 /media
.