Ubuntu服务器16.04.5 LTS
我有一个使用以下代码创建日志文件的python脚本:
today = datetime.today()
datem = datetime(today.year, today.month, today.day)
logger = logging.getLogger('processImport')
hdlr = logging.FileHandler('{0}myLog_{1}-{2}-{3}.log'.format(myLogFileLocation, datem.year, datem.month, datem.day))
formatter = logging.Formatter('%(asctime)s %(levelname)s %(message)s')
hdlr.setFormatter(formatter)
logger.addHandler(hdlr)
logger.setLevel(logging.INFO)
使用以下命令保存日志条目:
logger.info(logMessage)
然后我有一个cron作业,它通过执行使用os.remove(fullFilePath)
删除该文件的python文件,在一段时间后删除较旧的日志文件。
但是,执行此cron作业时出现权限错误。
OSError: [Errno 13] Permission denied: PathToTheFile\theLogFileName.log
当我检查文件的权限时,它们设置为:
-rw-r--r-- 1 www-data www-data etc etc
我该怎么做才能使cron作业有权删除日志文件?
谢谢。
答案 0 :(得分:2)
该文件夹似乎具有写问题权限。更改权限应该会有所帮助。
尝试一下:
log_dir = '/abs/path/of/directory'
os.chmod(log_dir, 0777)
让我知道怎么回事。