日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

python檢查目錄文件權限并修改目錄文件權限的操作

瀏覽:30日期:2022-08-02 17:02:17

我就廢話不多說了,還是直接看代碼吧!

# -*- coding: utf-8 -*-# @author flynetcnimport sys, os, pwd, stat, datetime; LOG_FILE = ’/var/log/checkDirPermission.log’; nginxWritableDirs = [’/var/log/nginx’,’/usr/local/www/var’,]; otherReadableDirs = [’/var/log/nginx’,’/usr/local/www/var/log’,]; dirs = [];files = []; def logger(level, str):logFd = open(LOG_FILE, ’a’);logFd.write(datetime.datetime.now().strftime(’%Y-%m-%d %H:%M:%S.%f’)+': '+('WARNING ' if level else 'NOTICE ')+str);logFd.close(); def walktree(top, callback):for f in os.listdir(top):pathname = os.path.join(top, f);mode = os.stat(pathname).st_mode;if stat.S_ISDIR(mode):callback(pathname, True);walktree(pathname, callback);elif stat.S_ISREG(mode):callback(pathname, False);else:logger(1, 'walktree skipping %sn' % (pathname)); def collectPath(path, isDir=False):if isDir:dirs.append(path);else:files.append(path); def checkNginxWritableDirs(paths):uid = pwd.getpwnam(’nginx’).pw_uid;gid = pwd.getpwnam(’nginx’).pw_gid;for d in paths:dstat = os.stat(d);if dstat.st_uid != uid:try:os.chown(d, uid, gid);except:logger(1, 'chown(%s, nginx, nginx) failedn' % (d)); def checkOtherReadableDirs(paths, isDir=False):for d in paths:dstat = os.stat(d);if isDir:checkMode = 5;willBeMode = dstat.st_mode | stat.S_IROTH | stat.S_IXOTH;else:checkMode = 4;willBeMode = dstat.st_mode | stat.S_IROTH;if int(oct(dstat.st_mode)[-1:]) & checkMode != checkMode:try:os.chmod(d, willBeMode);except:logger(1, 'chmod(%s, %d) failedn' % (d, oct(willBeMode))); if __name__ == '__main__':for d in nginxWritableDirs:walktree(d, collectPath)dirs = dirs + files;checkNginxWritableDirs(dirs);dirs = [];files = [];for d in otherReadableDirs:walktree(d, collectPath)checkOtherReadableDirs(dirs, True);checkOtherReadableDirs(files, False);

補充知識:Python中獲取某個用戶對某個文件或目錄的訪問權限

在Python中我們通常可以使用os.access()函數來獲取當前用戶對某個文件或目錄是否有某種權限,但是要獲取某個用戶對某個文件或目錄是否有某種權限python中沒有很好的方法直接獲取,因此我寫了個函數使用stat和pwd模塊來實現這一功能。

#!/usr/bin/env python# -*- coding: utf-8 -*-import osimport pwdimport statdef is_readable(path, user): user_info = pwd.getpwnam(user) uid = user_info.pw_uid gid = user_info.pw_gid s = os.stat(path) mode = s[stat.ST_MODE] return ( ((s[stat.ST_UID] == uid) and (mode & stat.S_IRUSR > 0)) or ((s[stat.ST_GID] == gid) and (mode & stat.S_IRGRP > 0)) or (mode & stat.S_IROTH > 0) )def is_writable(path, user): user_info = pwd.getpwnam(user) uid = user_info.pw_uid gid = user_info.pw_gid s = os.stat(path) mode = s[stat.ST_MODE] return ( ((s[stat.ST_UID] == uid) and (mode & stat.S_IWUSR > 0)) or ((s[stat.ST_GID] == gid) and (mode & stat.S_IWGRP > 0)) or (mode & stat.S_IWOTH > 0) )def is_executable(path, user): user_info = pwd.getpwnam(user) uid = user_info.pw_uid gid = user_info.pw_gid s = os.stat(path) mode = s[stat.ST_MODE] return ( ((s[stat.ST_UID] == uid) and (mode & stat.S_IXUSR > 0)) or ((s[stat.ST_GID] == gid) and (mode & stat.S_IXGRP > 0)) or (mode & stat.S_IXOTH > 0) )

使用方法

print is_readable(’/home’, root)print is_writable(’/home’, root)print is_executable(’/home’, root)print is_readable(’/tmp’, admin)print is_writable(’/tmp’, admin)print is_executable(’/tmp’, admin)

以上這篇python檢查目錄文件權限并修改目錄文件權限的操作就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持好吧啦網。

標簽: Python 編程
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
国产精品日韩| 91精品国产自产观看在线| 久久精品女人| 久久久免费人体| 国产精品白浆| 精品三级av| 国产一区丝袜| 免费一级欧美在线观看视频 | 欧美精品aa| 日本欧美韩国一区三区| 国产丝袜一区| 国产一区二区三区视频在线| 国产69精品久久| 99精品在线观看| 久久高清国产| 日韩二区在线观看| 免费在线亚洲欧美| 日韩欧美另类一区二区| 欧美特黄一级大片| 欧美日韩精品一区二区视频| 欧美女激情福利| 综合在线一区| 国产精品久一| 国产精品久久久久av电视剧| av一区二区高清| 亚洲精一区二区三区| 牛牛精品成人免费视频| 欧美日韩免费观看视频| 婷婷综合亚洲| 91精品在线免费视频| 久久一区视频| 日韩精品午夜| 四虎精品永久免费| 精品久久久久中文字幕小说| 国产成人精品一区二区三区视频 | 日日夜夜免费精品| 久久av国产紧身裤| 亚洲福利专区| 日韩高清在线不卡| 国产日韩电影| 亚洲精品看片| 久久69成人| 影音先锋国产精品| 国产精品传媒麻豆hd| 婷婷国产精品| 国产丝袜一区| 日韩中文视频| 日韩一区精品| 久久国产亚洲| 欧美日韩亚洲一区三区| 人人香蕉久久| 国产日韩精品视频一区二区三区| 久久久久久久久99精品大| 热久久免费视频| 国产一区调教| 日韩综合一区二区三区| 中文字幕成在线观看| 日本中文字幕一区二区视频| 久久婷婷丁香| 国产欧美精品久久| 午夜国产欧美理论在线播放| 国产三级一区| 婷婷综合五月| 久久亚州av| 亚洲一区二区小说| 日韩欧美1区| 久久精品凹凸全集| 午夜日韩av| 四季av一区二区凹凸精品| 蜜桃视频一区二区三区| 日韩中文首页| 青青草91视频| 香蕉成人久久| 群体交乱之放荡娇妻一区二区| 欧美亚洲tv| 午夜一级久久| 色综合五月天| 久久国产三级| 免费久久精品视频| 少妇精品导航| 久久亚洲黄色| 国产女人18毛片水真多18精品| 日韩视频一区| 色吊丝一区二区| 美女久久久精品| 日韩国产高清在线| 蜜臀a∨国产成人精品| 九色精品91| 亚洲成人一区在线观看| 麻豆国产欧美日韩综合精品二区| 亚洲专区视频| 欧美精品一二| 蜜臀久久精品| 成人午夜在线| 久久av影视| 国产精品三p一区二区| 日韩精品一区二区三区免费视频| 久久www成人_看片免费不卡| 久久视频一区| 91看片一区| 国产精品久久久久久久免费观看 | 蜜桃久久久久久| 午夜精品婷婷| 三级小说欧洲区亚洲区| 超级白嫩亚洲国产第一| 精品久久久久中文字幕小说| 久久av综合| 国产精品乱战久久久| 欧美亚洲免费| 国产精品入口久久| 国产精品大片| 精品一区二区三区中文字幕 | 欧美性www| 日韩av成人高清| 在线观看视频免费一区二区三区| 国产真实久久| 伊人影院久久| 久久夜色精品| 亚洲免费福利一区| 中文字幕一区二区av| 石原莉奈一区二区三区在线观看| 欧美日韩精品一本二本三本 | 久久av日韩| 精品网站aaa| 国产91欧美| 成人小电影网站| 欧美日韩免费观看视频| 激情黄产视频在线免费观看| 黄在线观看免费网站ktv| 蜜桃视频在线网站| 亚洲二区免费| 午夜在线视频一区二区区别| 蜜芽一区二区三区| 日日夜夜免费精品| 国产精品男女| а√天堂8资源中文在线| 久久一区二区中文字幕| 国产亚洲一区在线| 日韩欧美精品一区二区综合视频| 国产欧美日韩精品高清二区综合区| 麻豆一区二区三| 日本不卡免费高清视频在线| 肉色欧美久久久久久久免费看 | 中文在线一区| 亚洲2区在线| 久久字幕精品一区| 成人av三级| 亚洲精品网址| 日本免费一区二区视频| 国产中文欧美日韩在线| 91精品久久久久久久久久不卡| 最新亚洲一区| 日本亚洲最大的色成网站www| 国产精品一国产精品k频道56| 国产成人77亚洲精品www| 四虎影视精品| 免费在线观看一区二区三区| 国产亚洲精品精品国产亚洲综合| 日本激情一区| 一区在线免费观看| 欧美日韩一区二区高清| 97精品视频在线看| 夜夜嗨一区二区三区| 国产欧美欧美| 99久久婷婷| 奇米狠狠一区二区三区| av高清不卡| 亚洲精品大全| 成人午夜毛片| 亚洲午夜久久| 国产欧美另类| 欧美精品一二| 国产精品入口久久| 国产在线欧美| 国产欧美日韩视频在线| 久久人人精品| 欧美日本精品| 136国产福利精品导航网址| 日韩极品在线观看| 日韩欧美中文| 日产欧产美韩系列久久99| 欧美日韩国产观看视频| 亚洲精品动态| 欧洲一区二区三区精品| 日韩高清中文字幕一区| 另类中文字幕国产精品| 日韩一二三区在线观看| 久久精品亚洲欧美日韩精品中文字幕| 日韩va欧美va亚洲va久久| 亚洲伦乱视频| 国产精品一区二区三区四区在线观看| 国产综合欧美| 麻豆一区在线| 亚洲精品乱码日韩| 日韩在线观看不卡| 国产美女视频一区二区| 伊人久久大香线蕉av超碰演员| 久久精品国产成人一区二区三区| 视频一区二区三区入口| 国产精品专区免费|