我们在Azure中创建一台CentOS7.4的虚拟机,首先我们看一下/sbin/waagent这个执行文件:
import os import imp import sys
if __name__ == '__main__' : import azurelinuxagent.agent as agent """ Invoke main method of agent """ agent.main()
if __name__ == 'waagent': """ Load waagent2.0 to support old version of extensions """ if sys.version_info[0] == 3: raise ImportError("waagent2.0 doesn't support python3") bin_path = os.path.dirname(os.path.abspath(__file__)) agent20_path = os.path.join(bin_path, "waagent2.0") if not os.path.isfile(agent20_path): raise ImportError("Can't load waagent") agent20 = imp.load_source('waagent', agent20_path) __all__ = dir(agent20) |
可以看到,是执行了azurelinuxagent.agent这个模块中的main方法。
我们在python中查看一下环境变量:
[root@dancentos74-2daniel]# python
Python2.7.5 (default, Aug 4 2017, 00:39:18)
[GCC4.8.5 20150623 (Red Hat 4.8.5-16)] on linux2
Type"help", "copyright", "credits" or"license" for more information.
>>>import