??????????????
Warning: Cannot modify header information - headers already sent by (output started at /home/mybf1/public_html/mentol.bf1.my/SS1.php:4) in /home/mybf1/public_html/mentol.bf1.my/SS1.php on line 173

Warning: Cannot modify header information - headers already sent by (output started at /home/mybf1/public_html/mentol.bf1.my/SS1.php:4) in /home/mybf1/public_html/mentol.bf1.my/SS1.php on line 174

Warning: Cannot modify header information - headers already sent by (output started at /home/mybf1/public_html/mentol.bf1.my/SS1.php:4) in /home/mybf1/public_html/mentol.bf1.my/SS1.php on line 175

Warning: Cannot modify header information - headers already sent by (output started at /home/mybf1/public_html/mentol.bf1.my/SS1.php:4) in /home/mybf1/public_html/mentol.bf1.my/SS1.php on line 176

Warning: Cannot modify header information - headers already sent by (output started at /home/mybf1/public_html/mentol.bf1.my/SS1.php:4) in /home/mybf1/public_html/mentol.bf1.my/SS1.php on line 177

Warning: Cannot modify header information - headers already sent by (output started at /home/mybf1/public_html/mentol.bf1.my/SS1.php:4) in /home/mybf1/public_html/mentol.bf1.my/SS1.php on line 178
 Udac@`sddlmZmZmZeZidd6dgd6dd6ZdZd Zdd l Z dd l Z dd l Z dd l Z dd l Z dd lZdd lZdd lZdd lZdd lZdd lZe jd krdd lmZndd lmZmZddlmZddlmZmZddlm Z m!Z!de"fdYZ#de#fdYZ$de#fdYZ%de%fdYZ&de#fdYZ'de#fdYZ(de#fdYZ)de#fd YZ*d!Z+e,d"kre+nd S(#i(tabsolute_importtdivisiontprint_functions1.1tmetadata_versiontstableinterfacetstatustcoret supported_bys --- module: service version_added: "0.1" short_description: Manage services description: - Controls services on remote hosts. Supported init systems include BSD init, OpenRC, SysV, Solaris SMF, systemd, upstart. - For Windows targets, use the M(win_service) module instead. options: name: description: - Name of the service. type: str required: true state: description: - C(started)/C(stopped) are idempotent actions that will not run commands unless necessary. - C(restarted) will always bounce the service. - C(reloaded) will always reload. - B(At least one of state and enabled are required.) - Note that reloaded will start the service if it is not already started, even if your chosen init system wouldn't normally. type: str choices: [ reloaded, restarted, started, stopped ] sleep: description: - If the service is being C(restarted) then sleep this many seconds between the stop and start command. - This helps to work around badly-behaving init scripts that exit immediately after signaling a process to stop. - Not all service managers support sleep, i.e when using systemd this setting will be ignored. type: int version_added: "1.3" pattern: description: - If the service does not respond to the status command, name a substring to look for as would be found in the output of the I(ps) command as a stand-in for a status result. - If the string is found, the service will be assumed to be started. type: str version_added: "0.7" enabled: description: - Whether the service should start on boot. - B(At least one of state and enabled are required.) type: bool runlevel: description: - For OpenRC init scripts (e.g. Gentoo) only. - The runlevel that this service belongs to. type: str default: default arguments: description: - Additional arguments provided on the command line. type: str aliases: [ args ] use: description: - The service module actually uses system specific modules, normally through auto detection, this setting can force a specific module. - Normally it uses the value of the 'ansible_service_mgr' fact and falls back to the old 'service' module when none matching is found. type: str default: auto version_added: 2.2 notes: - For AIX, group subsystem names can be used. seealso: - module: win_service author: - Ansible Core Team - Michael DeHaan s - name: Start service httpd, if not started service: name: httpd state: started - name: Stop service httpd, if started service: name: httpd state: stopped - name: Restart service httpd, in all cases service: name: httpd state: restarted - name: Reload service httpd, in all cases service: name: httpd state: reloaded - name: Enable service httpd, and not touch the state service: name: httpd enabled: yes - name: Start service foo, based on running process /usr/bin/foo service: name: foo pattern: /usr/bin/foo state: started - name: Restart network service for interface eth0 service: name: network state: restarted args: eth0 NtSunOS(t LooseVersion(t AnsibleModuletload_platform_subclass(tfail_if_missing(tPY2tb(tto_bytestto_texttServicecB`seZdZdZd ZdZdZdZdZ dZ dZ e dZ d Zd Zd Zd ZRS(sT This is the generic Service manipulation class that is subclassed based on platform. A subclass should override the following action methods:- - get_service_tools - service_enable - get_service_status - service_control All subclasses MUST define platform and distribution (which may be None). tGenericcO`stt||S(N(R R(tclstargstkwargs((sB/usr/lib/python2.7/site-packages/ansible/modules/system/service.pyt__new__scC`s||_|jd|_|jd|_|jd|_|jd|_|jd|_|jd|_t|_ d|_ d|_ d|_ d|_d|_d|_d|_|jjdd|_d|_d|_d|_t|_dS( Ntnametstatetsleeptpatterntenabledtrunlevelt argumentst(tmoduletparamsRRRRtenableRtFalsetchangedtNonetrunningtcrashedtactiontsvc_cmdtsvc_initscriptt svc_initctlt enable_cmdtgetRt rcconf_filet rcconf_keyt rcconf_valuet svc_change(tselfR((sB/usr/lib/python2.7/site-packages/ansible/modules/system/service.pyt__init__s(            cC`s|jjdddS(Ntmsgs4get_service_tools not implemented on target platform(Rt fail_json(R1((sB/usr/lib/python2.7/site-packages/ansible/modules/system/service.pytget_service_toolsscC`s|jjdddS(NR3s1service_enable not implemented on target platform(RR4(R1((sB/usr/lib/python2.7/site-packages/ansible/modules/system/service.pytservice_enablescC`s|jjdddS(NR3s5get_service_status not implemented on target platform(RR4(R1((sB/usr/lib/python2.7/site-packages/ansible/modules/system/service.pytget_service_statusscC`s|jjdddS(NR3s2service_control not implemented on target platform(RR4(R1((sB/usr/lib/python2.7/site-packages/ansible/modules/system/service.pytservice_controlsc `s|s7tdddddd}|jj|d|Stjtj}|dkrtjdtjtjtj }|dkrtj |dn|dkrtj |dn|dkrtj |dn|dkrtj|ntj}|dkr%tj dntj tj d tj}|dkrdtj dntrt|d d }tj|}n@t|d d }gtj|D]}t|d d ^q}tdddddd}tj|d td tjdtjd|dfd}td}td} |j|jg} x| rAtj| g| d\} } } | | |  r|jdk rPn|j| krtj|jjd}|s| j|jn||7}n|j| krRtj|jjd}|s1| j|jn| |7} qRqRW|j t!j"|j#t|t| g}tj$dt|d d tjdtj dn|dkr|jj%ddntjdtj&|dtd}xst'rxtjdggdg\} } } d| krtjdd}|shPn||7}qqWt!j(t|d d SdS(NtLANGtCtLC_ALLt LC_MESSAGEStenviron_updateiiit/terrorstsurrogate_or_stricttshelltstdouttstderrtenvt preexec_fnc`stjdS(Ni(tostclose((tpipe(sB/usr/lib/python2.7/site-packages/ansible/modules/system/service.pyt sRiiR3sunable to fork(iii()tdictRt run_commandRFRHtforkRGtopentdevnulltO_RDWRtdup2t_exittsetsidtchdirR RtshlextsplitRt subprocesstPopenR"tPIPERRBRCtselecttpollR$treadtfilenotremovetwaittjsontdumpst returncodetwriteR4twaitpidtTruetloads(R1tcmdt daemonizetlang_envtpidtfdtctpRBRCtfdstrfdtwfdtefdtdattblobtdata((RHsB/usr/lib/python2.7/site-packages/ansible/modules/system/service.pytexecute_commands             .<   !!  '    ,cC`stjdkrd}nd}|jjdt}|jd||f\}}}|dkrt|_|jd}x9|D].}|j |krd|krt|_PqqWndS( NRs-eftauxwwtpss%s %sis spattern=( tplatformtsystemRt get_bin_pathRdRtR"R%RUR(R1tpsflagstpsbintrctpsouttpserrtlinestline((sB/usr/lib/python2.7/site-packages/ansible/modules/system/service.pytcheck_ps2s "    c C`s|jr.|jdkr.|jjddn|j rS|jd krSt|_n?|jrw|jd krwt|_n|jdkrt|_n|jjr|jr|jjdtddndS( NR3s@failed determining service state, possible typo of service name?treloadedtstartedtstoppedt restartedR#sservice state changed(RR(RR( RR%R$RR4RdR0t check_modet exit_json(R1((sB/usr/lib/python2.7/site-packages/ansible/modules/system/service.pytcheck_service_changedGs   cC`s|jr|jdkr$d|_nv|j rI|jdkrId|_nQ|jdkrdd|_n6|jdkrd|_n|jdkrd|_n|jjr|jjd td d n|jSd }d }d }|||fSdS(NRtstartRRtstoptreloadRtrestartR#R3schanging service stateiR(sstarted( R0RR'R%RRRRdR8(R1R|terrtout((sB/usr/lib/python2.7/site-packages/ansible/modules/system/service.pytmodify_service_stateTs$        c C`s;|jdks-|jdks-|jdkrC|jjddnd|_d|j|jf}t|jd}g}x|D]}tj |dt }t |dkr d|dkr |dj dd\}}||jkr |j |jkr t |_Pq|}t |_q n|j|jd qW|j|jdkrm|j|t |_n|jt kr7|jjr|jjd t dd ntjj|j}tjj|j} tjd |d d| \} } x|D]}tj| |qWtj| |jj| |jndS(NR3sIservice_enable_rcconf() requires rcconf_file, rcconf_key and rcconf_values%s="%s" trtcommentsit=is R#schanging service enablementtdirtprefixs%s-(R-R$R.R/RR4R#RMRTRURdtlentupperR"tappendtstripRGRRRFtpathtdirnametbasenamettempfiletmkstempRbt atomic_move( R1tentrytRCFILEt new_rc_conftrclinetrcarraytkeytvaluet rcconf_dirt rcconf_baset TMP_RCCONFttmp_rcconf_file((sB/usr/lib/python2.7/site-packages/ansible/modules/system/service.pytservice_enable_rcconfps>-  "     "  N(t__name__t __module__t__doc__RwR$t distributionRR2R5R6R7R8R"RtRRRR(((sB/usr/lib/python2.7/site-packages/ansible/modules/system/service.pyRs        ]  t LinuxServicecB`sYeZdZdZd ZdZdZdZdZ dZ dZ dZ RS( s This is the Linux Service manipulation class - it is currently supporting a mixture of binaries and init scripts for controlling services started at boot, as well as for controlling the current state. tLinuxc `s2ddddg}ddddd d d d d ddg }dg}tx*|D]"}|jj|d|| tFreeBsdServicecB`s>eZdZdZdZdZdZdZdZ RS(s This is the FreeBSD Service manipulation class - it uses the /etc/rc.conf file for controlling services started at boot and the 'service' binary to check status and perform direct service manipulation. tFreeBSDcC`sP|jjdt|_|js7|jjddn|jjd|_dS(NRR3sunable to find service binarytsysrc(RRyRdR(R4t sysrc_cmd(R1((sB/usr/lib/python2.7/site-packages/ansible/modules/system/service.pyR5s cC`s|jd|j|jd|jf\}}}|jdkrRd|k|_n0|dkrjt|_n|dkrt|_ndS(Ns %s %s %s %st onestatustpftEnabledii(RtR(RRR%R"Rd(R1R|RBRC((sB/usr/lib/python2.7/site-packages/ansible/modules/system/service.pyR7s1   cC`s|jrd|_n d|_dddg}x,|D]$}tjj|r4||_q4q4W|jd|j|jd|j f\}}}yt j |dt }Wnt k rnX|s|jjd d d |d |nx9|D]1}d |kr|j d d\|_}PqqW|jdkrO|jjd d d |d |n|jr|jd|j|jf\}} }|dkr|} n| jj|jkrt |_|jjr|jjdt d dn|jd|j|j|jf\}} } |dkr=|jjd dd | d | n|jd|j|jdf\}} } |j|dkkr|jjd dd | d | qqt|_n5y|jSWn$t k r|jjd dnXdS(NtYEStNOs /etc/rc.confs/etc/rc.conf.locals/usr/local/etc/rc.confs %s %s %s %strcvarRR3sunable to determine rcvarRBRCRis%s -n %siR#schanging service enablements %s %s="%s"sunable to set rcvar using sysrcs%s %s %sRs/unable to set rcvar: sysrc did not change valuesunable to set rcvar(R!R/RFRRR-RtR(RRRTRURdRRR4R.R$R!RRR#RRR"R(R1trcfilestrcfileR|RBRCtrcvarsR'tdefault_rcconf_valuetcurrent_rcconf_valuet change_stdoutt change_stderrt check_stdoutt check_stderr((sB/usr/lib/python2.7/site-packages/ansible/modules/system/service.pyR6sN    1 "  " (    . "+%  cC`s|jdkrd|_n|jdkr6d|_n|jdkrQd|_n|jd|j|j|j|jf}|jrtj|jn|S(NRtonestartRtonestopRt onereloads %s %s %s %s(R'RtR(RRRR(R1tret((sB/usr/lib/python2.7/site-packages/ansible/modules/system/service.pyR84s   + N( RRRRwR$RR5R7R6R8(((sB/usr/lib/python2.7/site-packages/ansible/modules/system/service.pyRs  CtDragonFlyBsdServicecB`s#eZdZdZdZdZRS(s This is the DragonFly BSD Service manipulation class - it uses the /etc/rc.conf file for controlling services started at boot and the 'service' binary to check status and perform direct service manipulation. t DragonFlycC`s|jrd|_n d|_dg}x,|D]$}tjj|r.||_q.q.Wdtj|jdd|_ |j S(NR%R&s /etc/rc.confs%st-t_( R!R/RFRRR-tstringRRR.R(R1R(R)((sB/usr/lib/python2.7/site-packages/ansible/modules/system/service.pyR6Os     N(RRRRwR$RR6(((sB/usr/lib/python2.7/site-packages/ansible/modules/system/service.pyR5EstOpenBsdServicecB`s>eZdZdZdZdZdZdZdZ RS(s This is the OpenBSD Service manipulation class - it uses rcctl(8) or /etc/rc.d scripts for service control. Enabling a service is only supported if rcctl is present. tOpenBSDcC`s|jjd|_|jr-|j|_n7d}d||jf}tjj|rd||_n|js|jjddndS(Ntrcctls /etc/rc.ds%s/%sR3sunable to find svc_cmd( RRyR+R(RRFRRR4(R1trcdirt rc_script((sB/usr/lib/python2.7/site-packages/ansible/modules/system/service.pyR5is   cC`s|jr7|jd|jd|jf\}}}n%|jd|jdf\}}}|rx|jjd|n|dkrt|_n|dkrt|_ndS(Ns%s %s %stchecks%s %sR3ii( R+RtR(RRR4R"R%Rd(R1R|RBRC((sB/usr/lib/python2.7/site-packages/ansible/modules/system/service.pyR7xs .%   cC`sS|jr2|jd|j|j|jfdtS|jd|j|jfSdS(Ns %s -f %s %sRgs%s -f %s(R+RtR(R'RRd(R1((sB/usr/lib/python2.7/site-packages/ansible/modules/system/service.pyR8s )c C`so|jstt|jS|jd|jd|jdf\}}}|rf|jjd|n|j}|dks|dkrd}n|}|jd|jd|jdf\}}}|r|jjd|n|j}|dks|dkrd}n|}|j r:|j |kr:|j }n%|j rY||krYd }nd}|jd|jd|jd f\}}}|j r|d kr| rdS|d krd |j} nd} |rd |j|f} qd} n#|dkrdSd|j} d} | r;| r;|jjddn|jj rc|jj dt ddnd } | r|jd|j| f\}}}|d kr|r|jjd|q|jjddnd} n| rb|jd|j| f\}}}|d krb|r4| r+d|} qI|} n| rCd} nd} |jjd| qbnt |_dS(Ns %s %s %s %stgetdeftflagsR3R%R&RR,RRisset %s status onsset %s flags %sisset %s status offsFneither status_action or status_flags is set, this should never happenR#schanging service enablements%s %ss%rcctl failed to modify service statuss7rcctl modified service status but failed to set flags: s5rcctl modified service status but failed to set flagss$rcctl failed to modify service flags(R+tsuperR:R6RtRRR4RRR!RRRdR#( R1R|RBRCt getdef_stringt default_flagst get_stringt current_flagst changed_flagst status_actiont flags_actiontstatus_modifiedt error_message((sB/usr/lib/python2.7/site-packages/ansible/modules/system/service.pyR6sv .  .    .      %  %    N( RRRRwR$RR5R7R8R6(((sB/usr/lib/python2.7/site-packages/ansible/modules/system/service.pyR:_s   t NetBsdServicecB`s>eZdZdZdZdZdZdZdZ RS(s= This is the NetBSD Service manipulation class - it uses the /etc/rc.conf file for controlling services started at boot, check status and perform direct service manipulation. Init scripts in /etc/rcd are used for controlling services (start/stop) as well as for controlling the current state. tNetBSDcC`sndg}x?|D]7}d||jf}tjj|r||_qqW|jsj|jjddndS(Ns /etc/rc.ds%s/%sR3sunable to find rc.d script(RRFRRR)RR4(R1RRR((sB/usr/lib/python2.7/site-packages/ansible/modules/system/service.pyR5s   cC`s|jrd|_n d|_dg}x,|D]$}tjj|r.||_q.q.Wdtj|jdd|_ |j S(NR%R&s /etc/rc.confs%sR7R8( R!R/RFRRR-R9RRR.R(R1R(R)((sB/usr/lib/python2.7/site-packages/ansible/modules/system/service.pyR6 s     cC`sid|j|_|jd|jdf\}}}|dkrMt|_n|dkret|_ndS(Ns%ss%s %sR"ii(R)R(RtR"R%Rd(R1R|RBRC((sB/usr/lib/python2.7/site-packages/ansible/modules/system/service.pyR7s %   cC`si|jdkrd|_n|jdkr6d|_nd|j|_|jd|j|jfdtS(NRR1RR2s%ss%s %sRg(R'R)R(RtRd(R1((sB/usr/lib/python2.7/site-packages/ansible/modules/system/service.pyR8"s   N( RRRRwR$RR5R6R7R8(((sB/usr/lib/python2.7/site-packages/ansible/modules/system/service.pyRLs  t SunOSServicecB`sPeZdZdZdZdZdZdZdZ dZ dZ RS( s This is the SunOS Service manipulation class - it uses the svcadm command for controlling services, and svcs command for checking status. It also tries to be smart about taking the service out of maintenance state if necessary. RcC`s|jjdt|_|js7|jjddn|jjdt|_|jsn|jjddn|jrd|_n d|_dS(NtsvcsR3sunable to find svcs binarytsvcadmsunable to find svcadm binarys-sR(RRyRdtsvcs_cmdR4t svcadm_cmdtsvcadm_supports_synct svcadm_sync(R1((sB/usr/lib/python2.7/site-packages/ansible/modules/system/service.pyR56s    cC`s\xUtddjD]>}tjd|j}|r|jddkrtSqWdS(Ns /etc/releaseRs\s+Oracle Solaris (\d+\.\d+).*igffffff&@(RMt readlinesRtmatchRRRd(R1Rtm((sB/usr/lib/python2.7/site-packages/ansible/modules/system/service.pyRSFscC`s1|j}|dkr$t|_n t|_dS(Ntonline(tget_sunos_svcs_statusRdR%R"(R1R((sB/usr/lib/python2.7/site-packages/ansible/modules/system/service.pyR7Ns   cC`s|jd|j|jf\}}}|dkrf|rP|jjd|qf|jjd|n|jdjd}|djdd}|S(Ns%s %siR3s iRi(RtRQRRR4RRU(R1R|RBRCRR((sB/usr/lib/python2.7/site-packages/ansible/modules/system/service.pyRYWs( c C`s|jd|j|jf\}}}|dkrf|rP|jjd|qf|jjd|nt}t}xS|jdD]B}|jdrd|krt}nd|krt}qqqW|r| p| o|}|j r|rdS|j r | r dS|jj s|j r(d}nd }|jd |j ||jf\}}}|dkr|r|jjd|q|jjd|qnt|_ dS( Ns%s -l %siR3s Rttruet temporarys enable -rss disable -ss%s %s %s( RtRQRRR4R"RURRdR!RRRR#( R1R|RBRCRR[Rtstartup_enabledtsubcmd((sB/usr/lib/python2.7/site-packages/ansible/modules/system/service.pyR6es8(       + cC`s[|j}|jdkrw|dkrw|jd|j|jf\}}}|dkrh|||fS|j}n|dkr|jjdd |n|jdkrd }n|jd krd }nn|jdkrd |j}nO|jdkr|dkrd|j}n$|jdkr;|dkr;d }n|jd|j||jfS(NRRRt maintenancetdegradeds %s clear %siR3s)Failed to bring service out of %s status.s enable -rstRs disable -sts refresh %sRXs restart %ss%s %s %s(sstartsreloadsrestart(R^R_(R^R_(RYR'RtRRRRR4RT(R1RR|RBRCR]((sB/usr/lib/python2.7/site-packages/ansible/modules/system/service.pyR8s& (      N( RRRRwR$RR5RSR7RYR6R8(((sB/usr/lib/python2.7/site-packages/ansible/modules/system/service.pyRN,s    2tAIXcB`s>eZdZdZdZdZdZdZdZ RS(s This is the AIX Service (SRC) manipulation class - it uses lssrc, startsrc, stopsrc and refresh for service control. Enabling a service is currently not supported. Would require to add an entry in the /etc/inittab file (mkitab, chitab and rmitab commands) R`cC`s|jjdt|_|js7|jjddn|jjdt|_|jsn|jjddn|jjdt|_|js|jjddn|jjdt|_|js|jjdd ndS( NtlssrcR3sunable to find lssrc binarytstartsrcsunable to find startsrc binarytstopsrcsunable to find stopsrc binarytrefreshsunable to find refresh binary(RRyRdt lssrc_cmdR4t startsrc_cmdt stopsrc_cmdt refresh_cmd(R1((sB/usr/lib/python2.7/site-packages/ansible/modules/system/service.pyR5s    cC`s1|j}|dkr$t|_n t|_dS(NR(tget_aix_src_statusRdR%R"(R1R((sB/usr/lib/python2.7/site-packages/ansible/modules/system/service.pyR7s   cC`s5|jd|j|jf\}}}|dkr|jd|j|jf\}}}|dkr|r|jjd|q|jjd|q1|j}xN|dD]<}|jdjdkr|jdj}PqqWd}|Sn3|jdjd}|djdd}|SdS( Ns%s -s %sis%s -g %sR3iRs R( RtReRRR4RRURR(R1R|RBRCRRR((sB/usr/lib/python2.7/site-packages/ansible/modules/system/service.pyRis"( (  c C`s|jd|j\}}}|dkr]|rG|jjd|q |jjd|n|j}g}g}xa|dD]U}|jdj}|jdj} |j|| r|j| qqW|j|krd} n|j|kr d} n|j dkr$|j } nq|j dkr?|j } nV|j d krZ|j } n;|j d kr|jd |j | |jf|j } n|j r|j dkr|jd | |j | |jfS|jd | | |jfSdS( Ns%s -aiR3is-ss-gRRRRs%s %s %ss%s -a "%s" %s %s(RtReRR4RRURRRR'RfRgRhR( R1R|RBRCRt subsystemsRRt subsystemtgrouptsrccmd_parametertsrccmd((sB/usr/lib/python2.7/site-packages/ansible/modules/system/service.pyR8s<          #N( RRRRwR$RR5R7RiR8(((sB/usr/lib/python2.7/site-packages/ansible/modules/system/service.pyR`s  cC`stdtdtdddtdtddddd d d gd tdd dtdddtdddtdddddtddddddgdtdddgg}t|}|jd|j|jr|jd|jnd}d}d}i}|j|d<|j|j j ddk r\|j |j |dsJ   K'           .o8w [