как создать новый файл с помощью Python - PullRequest
1 голос
/ 07 октября 2009

как я могу создать новый файл в каталоге / var / log, используя язык Python в OSX Leopard? я пытался сделать это с помощью функции os.open, но я получил «разрешение отказано»

заранее спасибо

Ответы [ 3 ]

6 голосов
/ 07 октября 2009

Только root может писать в /var/log/ в Mac OS X ...:

$ ls -ld /var/log
drwxr-xr-x  60 root  wheel  2040 Oct  6 17:00 /var/log

Возможно рассмотрите возможность использования модуля syslog в стандартной библиотеке ...

1 голос
/ 07 октября 2009

Вы можете создать файл журнала как root, а затем сменить владельца на пользователя, ваш скрипт запускается как

# touch /var/log/mylogfile
# chown myuser /var/log/mylogfile

где mylogfile - ваш файл журнала, а myuser - пользователь, скрипт будет запускаться как

также посмотрите в logrotate

1 голос
/ 07 октября 2009

Вероятно, сбой произошел, потому что / var / log установил для пользователя root, а для группы - wheel. Попробуйте запустить ваш код Python от имени пользователя root, и он, вероятно, будет работать.

...