現在、ディレクトリは
/var/www/html/sitename_com/. このディレクトリは meder.meder が所有しています。このディレクトリを作成したときの umask がわかりません。
私のスクリプトはpyinotifyにバインドされておりmkdir www、イベントハンドラーをバインドした後、次を設定します。
グループからwebユーザーへpublisher:
uid = pwd.getpwnam( 'publisher' ).pw_uid
gid = grp.getgrnam( 'web' ).gr_gid
os.chown( path, uid, gid )
umask に0002:
current_umask = os.umask(0)
print 'umask is ' + str(current_umask)
os.umask(0002)
current_umask = os.umask(0)
print 'updated umask is ' + str(current_umask)
私もchmod許可します。ファイルの場合は 0664、ディレクトリの場合は 0775。
os.chmod( path, int( "0664", 8 ) ) # files
I mkdirwww の後、ログ レポートは次のとおりです。
pre fix its 0755
fixing permission to 0775
fix path is /var/www/html/sitename/www
post fix its 0775
umask is 0
updated umask is 2
former user is meder and former group is meder
attempting to set user to publisher and group to web
post chown user is publisher and former group is web
wwwグループ にいる自分のmederユーザーでファイルを作成できませんweb。
cd www
meder@oskol:/var/www/html/sitename_com/www$ touch file.jpg
touch: cannot touch `file.jpg': Permission denied
webユーザーのプライマリ グループを作成する必要がありmederますか? 接頭辞に十分な 0 を付けなかったため、umask 部分を台無しにしましたか?