403Webshell
Server IP : 23.254.227.96  /  Your IP : 216.73.216.7
Web Server : Apache/2.4.62 (Unix) OpenSSL/1.1.1k
System : Linux hwsrv-1277026.hostwindsdns.com 4.18.0-477.13.1.el8_8.x86_64 #1 SMP Tue May 30 14:53:41 EDT 2023 x86_64
User : viralblo ( 1001)
PHP Version : 8.1.31
Disable Function : NONE
MySQL : OFF  |  cURL : ON  |  WGET : ON  |  Perl : ON  |  Python : OFF  |  Sudo : ON  |  Pkexec : ON
Directory :  /usr/lib/python3.6/site-packages/cloudinit/distros/__pycache__/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Command :


[ Back ]     

Current File : /usr/lib/python3.6/site-packages/cloudinit/distros/__pycache__/debian.cpython-36.opt-1.pyc
3

��bl5�@s�ddlZddlZddlZddlmZmZddlmZddlmZm	Z	ddl
mZddlm
Z
eje�ZdZd%Zd
dd�ZdZdZdZddddgZGdd�dej�Zdd�Zd&dd�Zedfdd �Zd'd!d"�Zd(d#d$�ZdS))�N)�distros�helpers)�log)�subp�util)�HostnameConf)�PER_INSTANCE��apt-get�(--option=Dpkg::Options::=--force-confold�*--option=Dpkg::options::=--force-unsafe-io�--assume-yes�--quietZ	eatmydata�auto)�command�enableda8# This file is generated from information provided by the datasource.  Changes
# to it will not persist across an instance reboot.  To disable cloud-init's
# network configuration capabilities, write a file
# /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg with the following:
# network: {config: disabled}
z'/etc/network/interfaces.d/50-cloud-initz/etc/default/localez/var/lib/dpkg/lock-frontendz/var/lib/dpkg/lockz/var/cache/apt/archives/lockz/var/lib/apt/lists/lockcs�eZdZdZddd�Zeded�ededd	�d�Zd
d�Zdd
�Zd.dd�Z	dd�Z
�fdd�Zdd�Zdd�Z
dd�Zd/dd�Zdd�Zd d!�Zd0d"d#�Zefd$d%�Zd1d&d'�Zd(d)�Zd*d+�Zd,d-�Z�ZS)2�Distroz
/etc/hostnamez'/etc/network/interfaces.d/50-cloud-initz/etc/netplan/50-cloud-init.yaml)�eni�netplanr)Zeni_pathZ
eni_headerrT)Znetplan_pathZnetplan_headerZpostcmdscCs4tjj||||�tj|�|_d|_d|_d|_dS)NZdebianzen_US.UTF-8)	rr�__init__rZRunners�_runnerZosfamily�default_locale�
system_locale)�self�nameZcfg�paths�r�/usr/lib/python3.6/debian.pyrNs
zDistro.__init__cCs |jst�|_|jr|jS|jS)z9Return the default locale if set, else use default locale)r�read_system_localer)rrrr�
get_localeXszDistro.get_localeN�LANGc	Cs�|st}|std��|j�}tjj|�}|jr2dnd}|j�|j�kpN|pN|}|p\|p\|}|rrt|||d�nt	j
d||j|�|r�t|||d�d|_dS)zeApply specified locale to system, regenerate if specified locale
        differs from system default.zFailed to provide locale value.FT)�keynamez9System has '%s=%s' requested '%s', skipping regeneration.N)�LOCALE_CONF_FN�
ValueErrorr�os�path�existsr�lower�regenerate_locale�LOG�debug�update_locale_conf)	r�localeZout_fnr!Z
distro_localeZconf_fn_existsZsys_locale_unsetZ
need_regenZ	need_confrrr�apply_localeds*zDistro.apply_localecCs|j�|jd|d�dS)NZinstall)�pkgs)�update_package_sources�package_command)r�pkglistrrr�install_packages�szDistro.install_packagescst�t�j|�S)N)�_maybe_remove_legacy_eth0�super�_write_network_state)rZ
network_state)�	__class__rrr5�szDistro._write_network_statecCsTd}y|j|�}Wntk
r&YnX|s4td�}|j|�tj|t|�d�dS)N�i�)�_read_hostname_conf�IOErrorrZset_hostnamerZ
write_file�str)r�hostname�filename�confrrr�_write_hostname�s
zDistro._write_hostnamecCs|j|j�}|j|fS)N)�_read_hostname�hostname_conf_fn)rZsys_hostnamerrr�_read_system_hostname�szDistro._read_system_hostnamecCsttj|��}|j�|S)N)rr�	load_file�parse)rr<r=rrrr8�szDistro._read_hostname_confcCs:d}y|j|�}|j}Wntk
r,YnX|s6|S|S)N)r8r;r9)rr<�defaultr;r=rrrr?�s

zDistro._read_hostnamecCsdS)Nz	127.0.1.1r)rrrr�_get_localhost_ip�szDistro._get_localhost_ipcCstj||j|�d�dS)N)�tzZtz_file)rZset_etc_timezoneZ
_find_tz_file)rrFrrr�set_timezone�szDistro.set_timezonecCsp|dkrt}x^|D]V}tjj|�s$qt|d��4}ytj|tjtjB�Wnt	k
r\dSXWdQRXqWdS)ztDetermines if another process holds any apt locks.

        If all locks are clear, return True else False.
        N�wFT)
�APT_LOCK_FILESr$r%r&�open�fcntl�lockfZLOCK_EXZLOCK_NB�OSError)rZ
lock_files�lockZhandlerrr�_apt_lock_available�s
zDistro._apt_lock_availablecCs�tj�}tjd�x�tj�||kr�|j�s8tjd�qtjd�y,d|dj|d�f}tjtj|tj|d�Stj	k
r�|j�r��tjd�tjd�YqXqWt
d	��d
S)z�Wait for apt install to complete.

        short_cmd: Name of command like "upgrade" or "install"
        subp_kwargs: kwargs to pass to subp
        zWaiting for apt lock�zapt lock availablezapt-%s [%s]� �args)Zlogfunc�msg�func�kwargsz*Another process holds apt lock. Waiting...zCould not get apt lockN)�timer)r*rOZsleep�joinrZlog_timerZProcessExecutionError�TimeoutError)r�	short_cmd�subp_kwargsZtimeoutZ
start_timeZlog_msgrrr�_wait_for_apt_command�s,



zDistro._wait_for_apt_commandc	Cs�|dkrg}tjj�}d|d<|jdt�}t|jdtd�|jdtd��}|jt|jdt	���|r|t
|t�r||j|�n|r�t
|t�r�|j|�|}|dkr�|jd	d
�}|j|�t
jd|�}|j|�|j|||dd
�d�dS)aYRun the given package command.

        On Debian, this will run apt-get (unless APT_GET_COMMAND is set).

        command: The command to run, like "upgrade" or "install"
        args: Arguments passed to apt itself in addition to
              any specified in APT_GET_COMMAND
        pkgs: Apt packages that the command will apply to
        NZnoninteractiveZDEBIAN_FRONTENDZapt_get_wrapperrrZapt_get_commandZupgradeZapt_get_upgrade_subcommandzdist-upgradez%s=%sF)rR�env�capture)rYrZ)r$�environ�copyZ
get_option�APT_GET_WRAPPER�_get_wrapper_prefix�get�extend�list�APT_GET_COMMAND�
isinstancer:�appendrZexpand_package_listr[)	rrrRr.�eZwcfg�cmdZsubcmdr1rrrr0�s.




zDistro.package_commandcCs|jjd|jdgtd�dS)Nzupdate-sources�update)Zfreq)rZrunr0r)rrrrr/$s
zDistro.update_package_sourcescCstj�S)N)rZget_dpkg_architecture)rrrr�get_primary_arch,szDistro.get_primary_archcCs$tjj|||||�|jdd�dS)NZrestartz
console-setup)rr�
set_keymapZmanage_service)rZlayoutZmodelZvariantZoptionsrrrrl/szDistro.set_keymap)Nr )N)N)NN)�__name__�
__module__�__qualname__r@Znetwork_conf_fn�NETWORK_FILE_HEADERZrenderer_configsrrr-r2r5r>rAr8r?rErGrO�APT_LOCK_WAIT_TIMEOUTr[r0r/rkrl�
__classcell__rr)r6rr<s2

$


+
.rcCsPt|t�rt|�g}tj|�sDt|�j�dkrH|drHtj|d�rH|SgSdS)Nrr)rfr:rZis_truer'rZwhich)ri�moderrrra7s


&ra�"/etc/network/interfaces.d/eth0.cfgcCs�tjj|�sdSd}yPtj|�}ddg}dd�|j�D�}||krVtj|�d|}n|d|}Wn tk
r�|d	|}YnXtj	|�dS)
aOUbuntu cloud images previously included a 'eth0.cfg' that had
    hard coded content.  That file would interfere with the rendered
    configuration if it was present.

    if the file does not exist do nothing.
    If the file exists:
      - with known content, remove it and warn
      - with unknown content, leave it and warn
    Nz(Dynamic networking config may not apply.z	auto eth0ziface eth0 inet dhcpcSsg|]}|jd�s|j��qS)�#)�
startswith�strip)�.0�frrr�
<listcomp>Vsz-_maybe_remove_legacy_eth0.<locals>.<listcomp>zremoved %s with known contentsz* '%s' exists with user configured content.z" %s exists, but could not be read.)
r$r%r&rrB�
splitlinesZdel_file�	Exceptionr)Zwarning)r%Zbmsg�contentsZknown_contents�linesrSrrrr3Cs


r3r cCsDd}|std|��tjj|�r@tj|�}tj|�}|j|d�}|S)z.Read system default locale setting, if presentr7zInvalid path: %s)r#r$r%r&rrBZload_shell_contentrb)�sys_pathr!Zsys_valZlocale_contentZsys_defaultsrrrrcs

rcCs4tjd|||�tjdd|d||fgdd�dS)zUpdate system locale configz%Updating %s with locale setting %s=%sz
update-localez--locale-file=z%s=%sF)r]N)r)r*r)r,rr!rrrr+qsr+cCs@|j�d
krtjd||�dStjd|�tjd|gdd	�dS)z�
    Run locale-gen for the provided locale and set the default
    system variable `keyname` appropriately in the provided `sys_path`.

    �c�c.utf-8�posixz$%s=%s does not require rengenerationNzGenerating locales for %sz
locale-genF)r])r�r�r�)r'r)r*r)r,rr!rrrr(�s
r()r
rrr
r)rt)r )r )rKr$rVZ	cloudinitrrrZloggingrrZ"cloudinit.distros.parsers.hostnamerZcloudinit.settingsrZ	getLoggerrmr)rqrer`rpZNETWORK_CONF_FNr"rIrrar3rr+r(rrrr�<module>
s<
		|
 


Youez - 2016 - github.com/yon3zu
LinuXploit