阿里云首页

使用云助手在Windows实例中安装Python程序

概述

云助手客户端是为ECS实例执行云助手命令的程序,本文主要介绍如何使用云助手在Windows实例中安装Python程序。

详细信息

阿里云提醒您:

  • 如果您对实例或数据有修改、变更等风险操作,务必注意实例的容灾、容错能力,确保数据安全。
  • 如果您对实例(包括但不限于ECS、RDS)等进行配置与数据修改,建议提前创建快照或开启RDS日志备份等功能。
  • 如果您在阿里云平台授权或者提交过登录账号、密码等安全信息,建议您及时修改。

确认已安装云助手客户端,若未安装请自行安装,具体步骤请参见安装云助手客户端。下列操作本文以Windows实例为例,关于云助手适用的操作系统版本,请参见云助手概述使用限制章节。

      1. 登录ECS管理控制台
      2. 在左侧导航栏,选择运维与监控>发送命令/文件(云助手)
      3. 在顶部菜单栏左上角处,选择地域。
      4. ECS云助手页面,单击创建/执行命令
      5. 创建命令页面,设置命令信息。
        命令来源

        选择输入命令内容创建一个新命令。

        命令名称 设置命令名称。
        执行计划

        单击立即执行

        命令类型 选择命令类型。

        Windows:选择Power Shell

        命令内容

        请粘贴以下命令到命令内容框中。

        $currentDir = $PSScriptRoot
        Set-Location $currentDir
        # Check the OS version
        $OSversion = [Environment]::OSVersion.Version
        if ($OSversion.Major -lt 6 -and $OSversion.Minor -lt 1) {
             throw "This scrip is not supported on Windows 2008 or lower"
        }
        $Arch =([Array](Get-WmiObject -Query "select AddressWidth from Win32_Processor"))[0].AddressWidth
        if ($Arch -ne "64") {
            throw "Only 64-bit system architecture is supported"
        }
        function Check-Env() {
            $curPath = [environment]::GetEnvironmentVariable('path')    
            if ($curPath -match $pythonKey) {
                Write-Host "System already installed $pythonKey, please check"
                exit
            }
        }
        function Download-File($file_url, $file_path) {
            if (Test-Path $file_path) { return; }
            [System.Net.ServicePointManager]::SecurityProtocol=[System.Net.SecurityProtocolType]::Tls12
            Invoke-WebRequest -Uri $file_url  -OutFile $file_path -UseBasicParsing
            if (! $?) { throw "$file_url download to $file_path error" }
        }
        function Clear-File($file_path) {
            if (Test-Path $file_path) {
                Remove-Item -Path $file_path -Force -ErrorAction:SilentlyContinue
                if (! $?) {
                    throw "Clear $file_path error, please check"
                }
            }
        }
        # install python for all users
        function Install-Python() {
            if ($pythonVersion.StartsWith("2")) {
                & cmd /c msiexec /i $pythonFile /quiet /norestart ADDLOCAL=ALL
            } else {
                & cmd /c $pythonFile /quiet InstallAllUsers=1 Include_launcher=0 PrependPath=1
            }
            if ($LASTEXITCODE -ne 0) {
                throw "Install $pythonKey error"
            }
        }
        function main() {
            Write-Host "Check system environment"
            Check-Env
            Write-Host "Download python $pythonVersion install package"
            Download-File $pythonUrl $pythonFile
            Write-Host "Install python $pythonVersion"
            Install-Python
            Write-Host "Clear python $pythonVersion install package"
            Clear-File $pythonFile
            Write-Host "Install python $pythonVersion success"
        }
        # define python version   eg: 2.7.18 or 3.9.5
        #$pythonVersion = "2.7.18"
        $pythonVersion = "3.9.5"
        $pythonUrl = "https://repo.huaweicloud.com/python/${pythonVersion}/python-${pythonVersion}.amd64.msi"
        $pythonKey = "python2"
        if ($pythonVersion.StartsWith("3")) {
            $pythonUrl = "https://repo.huaweicloud.com/python/${pythonVersion}/python-${pythonVersion}-amd64.exe"
          $pythonKey = "python3"
        }
        $pythonFile = [io.path]::Combine($currentDir, $pythonUrl.Split('/')[-1])
        ###
        main
        使用参数 选择
        命令描述 设置命令的描述信息。建议设置命令用途等信息,方便后续管理维护。
        执行用户 在ECS实例中执行命令的用户名称。

        使用最小权限执行命令是权限管理的最佳实践,建议您以普通用户身份执行云助手命令。更多信息,请参见设置普通用户执行云助手命令

        默认情况下,在Linux实例中以root用户执行命令,在Windows实例中以System用户执行命令。

        执行路径 自定义命令的执行路径。默认路径如下:

        Windows:默认在云助手客户端进程目录,例如,C:\ProgramData\aliyun\assist\$(version)

        超时时间 设置命令在实例中的超时时间,当执行命令的任务超时后,云助手将强制终止任务进程。

        单位为秒,默认为60秒,建议超时时间设置为600,具体时间可根据网络情况调整。

      6. 选择实例选择托管实例区域,选中需要执行命令的目标实例。
        说明:托管实例是云助手托管的非阿里云服务器,更多信息,请参见混合云托管服务器
      7. 单击保存确认命令执行成功。
        Dingtalk_20210623154152.jpg
      8. 通过阿里云VNC工具远程登录Windows实例,详情请参见通过VNC远程登录Windows实例
      9. 单击 Dingtalk_20210510142550.jpg 按钮,单击Windows PowerShell,打开PowerShell命令终端。
      10. 执行以下命令,确认安装Python程序成功。
        python.exe -V
        系统显示类似如下。
        aba5d77852f3cc5b54a7b841a1cc99dc5df0cc159bdec652eb7aecc5bfcf1ad9QzpcVXNlcnNcbGl4aWFuZ1xBcHBEYXRhXFJvYW1pbmdcRGluZ1RhbGtcMTM3MTc0NDY0X3YyXEltYWdlRmlsZXNcMTYyNDI1NzQ1Njg4OV8xRUU5RjFGNi1DQkYxLTQzMWQtOUI4Mi1DOUQyN.png

      适用于

      • 云服务器ECS
      首页 使用云助手在Windows实例中安装Python程序