我正在阅读基于pyftpdlib的ftp平台代码,这段代码无法在我的Linux上运行。 我使用sudo来确保许可。
当pyftpdlib运行我的代码然后我的代码运行os.makedirs并且这会抛出一个权限错误。
我可以在没有pyftpdlib的其他python代码中运行它。
这是追溯:
File "/usr/lib64/python2.7/asyncore.py", line 83, in read
obj.handle_read_event()
File "/usr/lib64/python2.7/asyncore.py", line 444, in handle_read_event
self.handle_read()
File "/usr/lib64/python2.7/asynchat.py", line 158, in handle_read
self.found_terminator()
File "pyftpdlib/ftpserver.py", line 2230, in found_terminator
self.process_command(cmd, arg)
File "pyftpdlib/ftpserver.py", line 2296, in process_command
method(*args, **kwargs)
File "pyftpdlib/ftpserver.py", line 3193, in ftp_PASS
rst = self.authorizer.validate_authentication(self.username, line)
File "ftp9/auth.py", line 42, in validate_authentication
self._group_info.update(api)
File "ftp9/group.py", line 64, in update
self._update_fs()
File "ftp9/group.py", line 143, in _update_fs
walk(self._root, config.FTP_ROOT)
File "ftp9/group.py", line 141, in walk
walk(i, pjoin(rootdir, i.name))
File "ftp9/group.py", line 125, in walk
os.makedirs(pjoin(rootdir, i))
File "/usr/lib64/python2.7/os.py", line 157, in makedirs
mkdir(name, mode)
OSError: [Errno 13] Permission denied: '/data/ftp/\xe6\x9c\xac\xe7\xa7\x91\xe7\x94\x9f/1997\xe7\xba\xa7'
答案 0 :(得分:0)
此代码将在Linux用户“ftp”上运行,因此它没有该文件夹的权限。你应该得到许可。