Linux tsuru-no-tsurugi 5.15.0-186-generic #196-Ubuntu SMP Sat Jun 20 16:09:34 UTC 2026 x86_64
Apache/2.4.52 (Ubuntu)
Server IP : 192.168.0.18 & Your IP : 216.73.216.68
Domains :
Cant Read [ /etc/named.conf ]
User : www-data
Terminal
Auto Root
Create File
Create Folder
Localroot Suggester
Backdoor Destroyer
Readme
/
usr /
lib /
python3 /
dist-packages /
cloudinit /
Delete
Unzip
Name
Size
Permission
Date
Action
__pycache__
[ DIR ]
drwxr-xr-x
2026-06-23 20:32
analyze
[ DIR ]
drwxr-xr-x
2026-06-23 20:32
cmd
[ DIR ]
drwxr-xr-x
2026-06-23 20:32
config
[ DIR ]
drwxr-xr-x
2026-06-23 20:32
distros
[ DIR ]
drwxr-xr-x
2026-06-23 20:32
filters
[ DIR ]
drwxr-xr-x
2026-06-23 20:32
handlers
[ DIR ]
drwxr-xr-x
2026-06-23 20:32
log
[ DIR ]
drwxr-xr-x
2026-06-23 20:32
mergers
[ DIR ]
drwxr-xr-x
2026-06-23 20:32
net
[ DIR ]
drwxr-xr-x
2026-06-23 20:32
reporting
[ DIR ]
drwxr-xr-x
2026-06-23 20:32
sources
[ DIR ]
drwxr-xr-x
2026-06-23 20:32
__init__.py
0
B
-rw-r--r--
2026-02-28 07:51
apport.py
8.3
KB
-rw-r--r--
2026-02-28 07:51
atomic_helper.py
2.79
KB
-rw-r--r--
2026-02-28 07:51
cloud.py
3.22
KB
-rw-r--r--
2026-03-31 03:56
dmi.py
7.81
KB
-rw-r--r--
2026-02-28 07:51
event.py
2
KB
-rw-r--r--
2026-02-28 07:51
features.py
5.62
KB
-rw-r--r--
2026-03-31 03:56
gpg.py
7.99
KB
-rw-r--r--
2026-02-28 07:51
helpers.py
16.16
KB
-rw-r--r--
2026-02-28 07:51
importer.py
2.83
KB
-rw-r--r--
2026-02-28 07:51
lifecycle.py
7.79
KB
-rw-r--r--
2026-02-28 07:51
netinfo.py
24.07
KB
-rw-r--r--
2026-02-28 07:51
performance.py
3.1
KB
-rw-r--r--
2026-02-28 07:51
persistence.py
2.52
KB
-rw-r--r--
2026-02-28 07:51
registry.py
1022
B
-rw-r--r--
2026-02-28 07:51
safeyaml.py
10.11
KB
-rw-r--r--
2026-02-28 07:51
settings.py
2.12
KB
-rw-r--r--
2026-02-28 07:51
signal_handler.py
2.96
KB
-rw-r--r--
2026-02-28 07:51
simpletable.py
1.93
KB
-rw-r--r--
2026-02-28 07:51
socket.py
5.85
KB
-rw-r--r--
2026-02-28 07:51
ssh_util.py
22.55
KB
-rw-r--r--
2026-02-28 07:51
stages.py
41.45
KB
-rw-r--r--
2026-02-28 07:51
subp.py
12.36
KB
-rw-r--r--
2026-02-28 07:51
temp_utils.py
2.94
KB
-rw-r--r--
2026-02-28 07:51
templater.py
7.74
KB
-rw-r--r--
2026-02-28 07:51
type_utils.py
703
B
-rw-r--r--
2026-02-28 07:51
url_helper.py
38.25
KB
-rw-r--r--
2026-02-28 07:51
user_data.py
14.44
KB
-rw-r--r--
2026-02-28 07:51
util.py
90.39
KB
-rw-r--r--
2026-03-31 03:56
version.py
831
B
-rw-r--r--
2026-03-31 03:56
warnings.py
3.76
KB
-rw-r--r--
2026-02-28 07:51
Save
Rename
# This file is part of cloud-init. See LICENSE file for license information. import contextlib import errno import logging import os import shutil import tempfile from cloudinit import util LOG = logging.getLogger(__name__) _ROOT_TMPDIR = "/run/cloud-init/tmp" _EXE_ROOT_TMPDIR = "/var/tmp/cloud-init" def get_tmp_ancestor(odir=None, needs_exe: bool = False): if odir is not None: return odir if needs_exe: return _EXE_ROOT_TMPDIR if os.getuid() == 0: return _ROOT_TMPDIR return os.environ.get("TMPDIR", "/tmp") def _tempfile_dir_arg(odir=None, needs_exe: bool = False): """Return the proper 'dir' argument for tempfile functions. When root, cloud-init will use /run/cloud-init/tmp to avoid any cleaning that a distro boot might do on /tmp (such as systemd-tmpfiles-clean). If the caller of this function (mkdtemp or mkstemp) was provided with a 'dir' argument, then that is respected. @param odir: original 'dir' arg to 'mkdtemp' or other. @param needs_exe: Boolean specifying whether or not exe permissions are needed for tempdir. This is needed because /run is mounted noexec. """ tdir = get_tmp_ancestor(odir, needs_exe) if not os.path.isdir(tdir): os.makedirs(tdir) os.chmod(tdir, 0o1777) if needs_exe: if util.has_mount_opt(tdir, "noexec"): LOG.warning( "Requested temporal dir with exe permission `%s` is" " mounted as noexec", tdir, ) return tdir def ExtendedTemporaryFile(**kwargs): kwargs["dir"] = _tempfile_dir_arg() fh = tempfile.NamedTemporaryFile(**kwargs) # Replace its unlink with a quiet version # that does not raise errors when the # file to unlink has been unlinked elsewhere.. def _unlink_if_exists(path): try: os.unlink(path) except OSError as e: if e.errno != errno.ENOENT: raise e fh.unlink = _unlink_if_exists # Add a new method that will unlink # right 'now' but still lets the exit # method attempt to remove it (which will # not throw due to our del file being quiet # about files that are not there) def unlink_now(): fh.unlink(fh.name) setattr(fh, "unlink_now", unlink_now) return fh @contextlib.contextmanager def tempdir(rmtree_ignore_errors=False, **kwargs): # This seems like it was only added in python 3.2 # Make it since its useful... # See: http://bugs.python.org/file12970/tempdir.patch tdir = mkdtemp(**kwargs) try: yield tdir finally: shutil.rmtree(tdir, ignore_errors=rmtree_ignore_errors) def mkdtemp(dir=None, needs_exe: bool = False, **kwargs): dir = _tempfile_dir_arg(dir, needs_exe) return tempfile.mkdtemp(dir=dir, **kwargs) def mkstemp(dir=None, needs_exe: bool = False, **kwargs): dir = _tempfile_dir_arg(dir, needs_exe) return tempfile.mkstemp(dir=dir, **kwargs)