本文整理汇总了Python中stat.S_IRGRP属性的典型用法代码示例。如果您正苦于以下问题:Python stat.S_IRGRP属性的具体用法?Python stat.S_IRGRP怎么用?Python stat.S_IRGRP使用的例子?那么, 这里精选的属性代码示例或许可以为您提供帮助。您也可以进一步了解该属性所在类stat
的用法示例。
在下文中一共展示了stat.S_IRGRP属性的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: gunzip_file
# 需要导入模块: import stat [as 别名]
# 或者: from stat import S_IRGRP [as 别名]
def gunzip_file(gz_path, new_path):
"""Unzips from gz_path into new_path.
Args:
gz_path: path to the zipped file.
new_path: path to where the file will be unzipped.
"""
if tf.gfile.Exists(new_path):
tf.logging.info("File %s already exists, skipping unpacking" % new_path)
return
tf.logging.info("Unpacking %s to %s" % (gz_path, new_path))
# We may be unpacking into a newly created directory, add write mode.
mode = stat.S_IRWXU or stat.S_IXGRP or stat.S_IRGRP or stat.S_IROTH
os.chmod(os.path.dirname(new_path), mode)
with gzip.open(gz_path, "rb") as gz_file:
with tf.gfile.GFile(new_path, mode="wb") as new_file:
for line in gz_file:
new_file.write(line)
示例2: chmod
# 需要导入模块: import stat [as 别名]
# 或者: from stat import S_IRGRP [as 别名]
def chmod(path):
os.chmod(path,
# user
stat.S_IRUSR | # read
stat.S_IWUSR | # write
stat.S_IXUSR | # execute
# group
stat.S_IRGRP | # read
stat.S_IWGRP | # write
stat.S_IXGRP | # execute
# other
stat.S_IROTH | # read
# stat.S_IWOTH | # write
stat.S_IXOTH # execute
)
示例3: test_execute_bit_not_copied
# 需要导入模块: import stat [as 别名]
# 或者: from stat import S_IRGRP [as 别名]
def test_execute_bit_not_copied(self):
# Issue 6070: under posix .pyc files got their execute bit set if
# the .py file had the execute bit set, but they aren't executable.
oldmask = os.umask(022)
sys.path.insert(0, os.curdir)
try:
fname = TESTFN + os.extsep + "py"
f = open(fname, 'w').close()
os.chmod(fname, (stat.S_IRUSR | stat.S_IRGRP | stat.S_IROTH |
stat.S_IXUSR | stat.S_IXGRP | stat.S_IXOTH))
__import__(TESTFN)
fn = fname + 'c'
if not os.path.exists(fn):
fn = fname + 'o'
if not os.path.exists(fn):
self.fail("__import__ did not result in creation of "
"either a .pyc or .pyo file")
s = os.stat(fn)
self.assertEqual(stat.S_IMODE(s.st_mode),
stat.S_IRUSR | stat.S_IRGRP | stat.S_IROTH)
finally:
os.umask(oldmask)
remove_files(TESTFN)
unload(TESTFN)
del sys.path[0]
示例4: close
# 需要导入模块: import stat [as 别名]
# 或者: from stat import S_IRGRP [as 别名]
def close(self):
error_context.context(
"Creating unattended install CD image %s" % self.path)
if os.path.exists(os.path.join(self.mount, 'isolinux')):
# bootable cdrom
f = open(os.path.join(self.mount, 'isolinux', 'isolinux.cfg'), 'w')
f.write('default /isolinux/vmlinuz append initrd=/isolinux/'
'initrd.img %s\n' % self.extra_params)
f.close()
boot = '-b isolinux/isolinux.bin'
else:
# Not a bootable CDROM, using -kernel instead (eg.: arm64)
boot = ''
m_cmd = ('mkisofs -o %s %s -c isolinux/boot.cat -no-emul-boot '
'-boot-load-size 4 -boot-info-table -f -R -J -V -T %s'
% (self.path, boot, self.mount))
process.run(m_cmd)
os.chmod(self.path, stat.S_IRWXU | stat.S_IRGRP | stat.S_IXGRP |
stat.S_IROTH | stat.S_IXOTH)
cleanup(self.mount)
cleanup(self.source_cdrom)
logging.debug("unattended install CD image %s successfully created",
self.path)
示例5: get_tmp_dir
# 需要导入模块: import stat [as 别名]
# 或者: from stat import S_IRGRP [as 别名]
def get_tmp_dir(public=True):
"""
Get the most appropriate tmp dir location.
:param public: If public for all users' access
"""
persistent_dir = settings.get_value('vt.common', 'tmp_dir',
default="")
if persistent_dir != "":
return persistent_dir
tmp_dir = None
# apparmor deny /tmp/* /var/tmp/* and cause failure across tests
# it is better to handle here
if distro.detect().name == 'Ubuntu':
tmp_dir = "/var/lib/libvirt/images"
if not utils_path.usable_rw_dir(tmp_dir):
logging.warning("Unable to write in '/var/lib/libvirt/images' "
"on Ubuntu, apparmor might complain...")
tmp_dir = None
tmp_dir = data_dir.get_tmp_dir(basedir=tmp_dir)
if public:
tmp_dir_st = os.stat(tmp_dir)
os.chmod(tmp_dir, tmp_dir_st.st_mode | stat.S_IXUSR |
stat.S_IXGRP | stat.S_IXOTH | stat.S_IRGRP | stat.S_IROTH)
return tmp_dir
示例6: install_netns_systemd_service
# 需要导入模块: import stat [as 别名]
# 或者: from stat import S_IRGRP [as 别名]
def install_netns_systemd_service():
os_utils = osutils.BaseOS.get_os_util()
flags = os.O_WRONLY | os.O_CREAT | os.O_TRUNC
# mode 00644
mode = (stat.S_IRUSR | stat.S_IWUSR | stat.S_IRGRP | stat.S_IROTH)
# TODO(bcafarel): implement this for other init systems
# netns handling depends on a separate unit file
netns_path = os.path.join(consts.SYSTEMD_DIR,
consts.AMP_NETNS_SVC_PREFIX + '.service')
jinja_env = jinja2.Environment(
autoescape=True, loader=jinja2.FileSystemLoader(os.path.dirname(
os.path.realpath(__file__)
) + consts.AGENT_API_TEMPLATES))
if not os.path.exists(netns_path):
with os.fdopen(os.open(netns_path, flags, mode), 'w') as text_file:
text = jinja_env.get_template(
consts.AMP_NETNS_SVC_PREFIX + '.systemd.j2').render(
amphora_nsname=consts.AMPHORA_NAMESPACE,
HasIFUPAll=os_utils.has_ifup_all())
text_file.write(text)
示例7: write_port_interface_file
# 需要导入模块: import stat [as 别名]
# 或者: from stat import S_IRGRP [as 别名]
def write_port_interface_file(self, netns_interface, fixed_ips, mtu,
interface_file_path, template_port):
# write interface file
# If we are using a consolidated interfaces file, just append
# otherwise clear the per interface file as we are rewriting it
# TODO(johnsom): We need a way to clean out old interfaces records
if CONF.amphora_agent.agent_server_network_file:
flags = os.O_WRONLY | os.O_CREAT | os.O_APPEND
else:
flags = os.O_WRONLY | os.O_CREAT | os.O_TRUNC
# mode 00644
mode = stat.S_IRUSR | stat.S_IWUSR | stat.S_IRGRP | stat.S_IROTH
with os.fdopen(os.open(interface_file_path, flags, mode),
'w') as text_file:
text = self._generate_network_file_text(
netns_interface, fixed_ips, mtu, template_port)
text_file.write(text)
示例8: test_rm_tree_incl_readonly_files
# 需要导入模块: import stat [as 别名]
# 或者: from stat import S_IRGRP [as 别名]
def test_rm_tree_incl_readonly_files(tmpdir):
"""Test that directory trees with readonly files can be removed.
Args:
tmpdir (class): Fixture from pytest for creating a temporary directory
"""
test_dir = Path(tmpdir) / "test_dir"
read_only_dir = test_dir / "nested_read_only_dir"
read_only_dir.mkdir(parents=True)
test_file = read_only_dir / "test.txt"
with io.open(test_file, "w", encoding="utf-8", errors="replace") as f:
f.write("testing\n")
Path.chmod(test_file, stat.S_IRUSR | stat.S_IRGRP | stat.S_IROTH)
util.file_system_helpers.rm_tree_incl_readonly_files(test_dir)
示例9: ensure_code_file
# 需要导入模块: import stat [as 别名]
# 或者: from stat import S_IRGRP [as 别名]
def ensure_code_file(self, code, file_path):
""""""
if file_path:
file_path = os.path.abspath(file_path)
if not os.path.isfile(file_path):
raise RequirementsInvalid(
'Arg file_path is not a valid file.'
)
self.code_file = file_path
else:
if code:
(fd, temp_file_path) = tempfile.mkstemp()
with os.fdopen(fd, 'w') as f:
f.write(code)
self.code_file = self.temp_file = temp_file_path
else:
raise RequirementsInvalid(
'Neither code nor code file_path specified.'
)
st = os.stat(self.code_file)
os.chmod(self.code_file,
st.st_mode | stat.S_IREAD | stat.S_IRGRP | stat.S_IROTH)
示例10: get_sudo_user_group_mode
# 需要导入模块: import stat [as 别名]
# 或者: from stat import S_IRGRP [as 别名]
def get_sudo_user_group_mode():
'''TBW'''
# XXX only need uid, gid, and file mode for sudo case...
new_uid = int(os.environ.get('SUDO_UID'))
if new_uid is None:
error('Unable to obtain SUDO_UID')
return False
#debug('new UID via SUDO_UID: ' + str(new_uid))
new_gid = int(os.environ.get('SUDO_GID'))
if new_gid is None:
error('Unable to obtain SUDO_GID')
return False
#debug('new GID via SUDO_GID: ' + str(new_gid))
# new_dir_mode = (stat.S_IRUSR|stat.S_IWUSR|stat.S_IRGRP|stat.S_IWGRP|stat.S_IROTH|stat.S_IWOTH)
rwx_mode = (stat.S_IRWXU|stat.S_IRWXG|stat.S_IRWXO)
new_dir_mode = rwx_mode
#debug('new dir mode: ' + str(new_dir_mode))
return (new_dir_mode, new_uid, new_gid)
示例11: special_to_letter
# 需要导入模块: import stat [as 别名]
# 或者: from stat import S_IRGRP [as 别名]
def special_to_letter(mode):
l = ''
ALL_R = (stat.S_IRUSR | stat.S_IRGRP | stat.S_IROTH)
ALL_W = (stat.S_IWUSR | stat.S_IWGRP | stat.S_IWOTH)
if mode & stat.S_ISGID:
l += 'G'
if mode & stat.S_ISUID:
l += 'U'
if mode & stat.S_ISVTX:
l += 'T'
if mode & (stat.S_IXUSR | stat.S_IXGRP | stat.S_IXOTH):
l += 'E'
if ( mode & ALL_R ) == ALL_R:
l += 'R'
if ( mode & ALL_W ) == ALL_W:
l += 'W'
return l
示例12: testStatDirectory_filePermissions
# 需要导入模块: import stat [as 别名]
# 或者: from stat import S_IRGRP [as 别名]
def testStatDirectory_filePermissions(self):
should_have = (
('some_file', stat.S_IWUSR), # Owner can write.
('tmp', stat.S_IXOTH), # Others can execute.
('tmp', stat.S_ISVTX), # Has sticky bit.
('my_cmd', stat.S_ISGID), # Has set-group-ID bit.
('silly', stat.S_ISUID), # Has set UID bit.
)
should_not_have = (
('some_file', stat.S_IWOTH), # Others can't write.
('block_dev', stat.S_IRGRP), # Group can't read.
('silly', stat.S_IXUSR), # Owner can't execute.
)
entries = self.getStatEntries()
for filename, bit in should_have:
self.assertTrue(entries[filename]['st_mode'] & bit)
for filename, bit in should_not_have:
self.assertFalse(entries[filename]['st_mode'] & bit)
示例13: test_read_only_bytecode
# 需要导入模块: import stat [as 别名]
# 或者: from stat import S_IRGRP [as 别名]
def test_read_only_bytecode(self):
# When bytecode is read-only but should be rewritten, fail silently.
with util.create_modules('_temp') as mapping:
# Create bytecode that will need to be re-created.
py_compile.compile(mapping['_temp'])
bytecode_path = self.util.cache_from_source(mapping['_temp'])
with open(bytecode_path, 'r+b') as bytecode_file:
bytecode_file.seek(0)
bytecode_file.write(b'\x00\x00\x00\x00')
# Make the bytecode read-only.
os.chmod(bytecode_path,
stat.S_IRUSR | stat.S_IRGRP | stat.S_IROTH)
try:
# Should not raise OSError!
self.import_(mapping['_temp'], '_temp')
finally:
# Make writable for eventual clean-up.
os.chmod(bytecode_path, stat.S_IWUSR)
示例14: set_own_perm
# 需要导入模块: import stat [as 别名]
# 或者: from stat import S_IRGRP [as 别名]
def set_own_perm(usr, dir_list):
uid = pwd.getpwnam(usr).pw_uid
gid = grp.getgrnam(usr).gr_gid
perm_mask_rw = stat.S_IRUSR | stat.S_IWUSR | stat.S_IRGRP | stat.S_IWGRP
perm_mask_rwx = stat.S_IRUSR | stat.S_IWUSR | stat.S_IXUSR | stat.S_IRGRP | stat.S_IWGRP | stat.S_IXGRP
for cdir in dir_list:
os.chown(cdir, uid, gid)
os.chmod(cdir, perm_mask_rwx)
for croot, sub_dirs, cfiles in os.walk(cdir):
for fs_name in sub_dirs:
os.chown(os.path.join(croot, fs_name), uid, gid)
os.chmod(os.path.join(croot, fs_name), perm_mask_rwx)
for fs_name in cfiles:
os.chown(os.path.join(croot, fs_name), uid, gid)
os.chmod(os.path.join(croot, fs_name), perm_mask_rw)
示例15: store_index
# 需要导入模块: import stat [as 别名]
# 或者: from stat import S_IRGRP [as 别名]
def store_index(self,ipath):
debug("# indexed_fasta.store_index('%s')" % ipath)
# write to tmp-file first and in the end rename in order to have this atomic
# otherwise parallel building of the same index may screw it up.
import tempfile
tmp = tempfile.NamedTemporaryFile(mode="w",dir = os.path.dirname(ipath),delete=False)
for chrom in sorted(self.chrom_stats.keys()):
ofs,ldata,skip,skipchar,size = self.chrom_stats[chrom]
tmp.write("%s\t%d\t%d\t%d\t%r\t%d\n" % (chrom,ofs,ldata,skip,skipchar,size))
# make sure everything is on disk
os.fsync(tmp)
tmp.close()
# make it accessible to everyone
import stat
os.chmod(tmp.name, stat.S_IROTH | stat.S_IRGRP | stat.S_IRUSR)
# this is atomic on POSIX as we have created tmp in the same directory,
# therefore same filesystem
os.rename(tmp.name,ipath)