Chocolatey包管理器安装使用

📖 Chocolatey 初始化配置使用说明

1. 简介

此文档指导如何使用 Setup-Chocolatey.ps1 脚本来完成 Chocolatey 的安装和初始化配置。Chocolatey 是 Windows 上最流行的包管理器之一,功能与 Homebrew 类似,支持通过命令行安装、更新和卸载软件包。

  • 特点

    • 支持从官方源或第三方源安装软件。
    • 自动处理依赖关系。
    • 可用于自动化脚本和企业部署。
  • 常用命令

    powershell 复制代码
    深色版本
    choco install <package-name>      # 安装软件
    choco upgrade <package-name>      # 更新软件
    choco uninstall <package-name>    # 卸载软件
    choco search <keyword>            # 搜索软件包

2. 准备工作

所需工具:

  • Windows PowerShell
  • 文本编辑器(如记事本或 VS Code)

注意事项:

  • 确保以管理员身份运行 PowerShell,否则部分操作可能失败。
  • 网络连接正常,因为需要从互联网下载 Chocolatey 安装包。

3. 步骤一:保存脚本文件

操作步骤:

  1. 打开文本编辑器(如记事本)。
  2. 粘贴以下内容到编辑器中:
powershell 复制代码
# =============================
# Chocolatey 安装与初始化配置脚本
# =============================

# 绕过执行策略限制(确保脚本能运行)
Set-ExecutionPolicy Bypass -Scope CurrentUser -Force

# 设置目标安装路径
$chocoInstallPath = "D:\Chocolatey"

# 启用 TLS 1.2(确保能正常访问 HTTPS 资源)
[Net.ServicePointManager]::SecurityProtocol = [Net.ServicePointManager]::SecurityProtocol -bor 3072

# Step 1: 下载并运行 Chocolatey 官方安装脚本
Write-Host "⚙️ 正在下载并运行 Chocolatey 官方安装脚本..." -ForegroundColor Cyan
Set-ExecutionPolicy Bypass -Scope CurrentUser -Force
Invoke-Expression ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))

# Step 2: 移动 Chocolatey 到自定义目录(原默认路径为 C:\ProgramData\chocolatey)
if (Test-Path "C:\ProgramData\chocolatey") {
    Write-Host "🚚 正在将 Chocolatey 移动到 $chocoInstallPath ..." -ForegroundColor Cyan
    Move-Item -Path "C:\ProgramData\chocolatey" -Destination $chocoInstallPath -Force
}

# Step 3: 设置 ChocolateyInstall 环境变量
Write-Host "⚙️ 设置 ChocolateyInstall 环境变量..." -ForegroundColor Cyan
[Environment]::SetEnvironmentVariable("ChocolateyInstall", $chocoInstallPath, "Machine")
$env:ChocolateyInstall = $chocoInstallPath

# Step 4: 配置 Chocolatey 使用国内镜像源(清华大学)
Write-Host "⚙️ 正在配置 Chocolatey 使用国内镜像源(清华大学)..." -ForegroundColor Cyan
choco source add -n=china -s="https://mirrors.tuna.tsinghua.edu.cn/Chocolatey"
choco config set -name="'sourcePriority'` -value="'china'"

# Step 5: 将 choco.exe 所在目录添加到系统 PATH
Write-Host "⚙️ 配置系统 PATH 环境变量..." -ForegroundColor Cyan
$systemPath = [Environment]::GetEnvironmentVariable("Path", "Machine")
if ($systemPath -notlike "*$chocoInstallPath\bin*") {
    $newSystemPath = "$systemPath;$chocoInstallPath\bin"
    [Environment]::SetEnvironmentVariable("Path", $newSystemPath, "Machine")
    Write-Host "✅ 已将 Chocolatey 添加到系统 PATH。" -ForegroundColor Green
} else {
    Write-Host "ℹ️ Chocolatey 已存在于系统 PATH 中。" -ForegroundColor Yellow
}

# Step 6: 创建或更新 PowerShell 用户配置文件以启用 Tab 补全
Write-Host "⚙️ 配置 PowerShell Tab 补全支持..." -ForegroundColor Cyan
$profileDir = "$env:USERPROFILE\Documents\WindowsPowerShell"
$profileFile = "$profileDir\Microsoft.PowerShell_profile.ps1"

if (-not (Test-Path $profileDir)) {
    New-Item -ItemType Directory -Path $profileDir -Force | Out-Null
}

if (-not (Test-Path $profileFile)) {
    New-Item -ItemType File -Path $profileFile -Force | Out-Null
    Add-Content -Path $profileFile -Value "Import-Module `$env:ChocolateyInstall\helpers\chocolateyProfile.psm1"
    Write-Host "✅ 已创建 PowerShell 配置文件并启用 Tab 补全。" -ForegroundColor Green
} else {
    if ((Get-Content $profileFile) -notcontains "Import-Module `$env:ChocolateyInstall\helpers\chocolateyProfile.psm1") {
        Add-Content -Path $profileFile -Value "Import-Module `$env:ChocolateyInstall\helpers\chocolateyProfile.psm1"
        Write-Host "✅ 已更新 PowerShell 配置文件并启用 Tab 补全。" -ForegroundColor Green
    } else {
        Write-Host "ℹ️ PowerShell 配置文件已包含 Chocolatey 补全模块。" -ForegroundColor Yellow
    }
}

# Step 7: 启用 Chocolatey 常用功能
Write-Host "⚙️ 正在启用 Chocolatey 支持的功能..." -ForegroundColor Cyan
choco feature enable -n=allowGlobalConfirmation

# 提示用户重启 PowerShell
Write-Host "`n✅ 所有设置已完成。请关闭并重新打开 PowerShell 窗口使更改生效。" -ForegroundColor Green
Write-Host '💡 你现在可以使用 choco 命令安装软件包,例如:' -ForegroundColor Cyan
Write-Host '   choco install git -y' -ForegroundColor Yellow
  1. 保存文件Setup-Chocolatey.ps1(注意后缀是 .ps1)。
  2. 注意:在记事本中,"UTF-8"实际上就是 UTF-8 with BOM,适合 PowerShell 使用。

4. 步骤二:以管理员身份运行 PowerShell

操作步骤:

  1. 右键点击 开始菜单中的 Windows 终端PowerShell 图标。
  2. 选择"以管理员身份运行"

5. 步骤三:运行初始化配置脚本

操作步骤:

  1. 管理员权限的 PowerShell 窗口中,导航到保存 Setup-Chocolatey.ps1 文件的目录。例如,如果你将脚本保存在 D:\Scripts 目录下:

    powershell 复制代码
    cd D:\Scripts
  2. 运行脚本:

    powershell 复制代码
    .\Setup-Chocolatey.ps1

脚本执行结果:

  • 成功后会提示你所有设置已完成,并建议你重新启动 PowerShell 窗口。

6. 步骤四:验证安装与配置

操作步骤:

  1. 关闭并重新打开 PowerShell(确保新窗口是以管理员身份运行)。

  2. 验证 Chocolatey 版本

    powershell 复制代码
    choco -v

    输出应类似于 2.4.3

  3. 验证 Chocolatey 安装路径

    powershell 复制代码
    echo $env:ChocolateyInstall

    输出应为 D:\Chocolatey

  4. 检查 PATH 是否包含 D:\Chocolatey\bin

    powershell 复制代码
    $env:Path -split ';' | Select-String 'D:\\Chocolatey\\bin'

    如果输出包含 D:\Chocolatey\bin,则表示路径设置成功。


7. 常见问题解答

Q1: 运行脚本时出现错误:"无法加载文件...未签名"

  • 解决方法 :你需要允许脚本执行。在 PowerShell 中输入以下命令:

    powershell 复制代码
    Set-ExecutionPolicy RemoteSigned -Scope CurrentUser

Q2: 运行 choco 命令报错

  • 原因:可能是 PATH 环境变量未正确设置。
  • 解决方法 :手动检查并添加 D:\Chocolatey\bin 到系统 PATH。

Q3: PowerShell 无法识别 choco 命令

  • 原因:可能是因为终端没有刷新环境变量。

  • 解决方法 :关闭并重新打开 PowerShell 窗口,或者手动刷新 PATH:

    powershell 复制代码
    $env:Path = [System.Environment]::GetEnvironmentVariable("Path","Machine") + ";" + [System.Environment]::GetEnvironmentVariable("Path","User")

希望这份文档能帮助你顺利完成 Chocolatey 的安装和配置。如果有任何问题,请随时提问! 😊

相关推荐
new_zhou4 小时前
Windows qt打包编译好的程序
开发语言·windows·qt·打包程序
Rocket MAN5 小时前
Rovo Dev CLI Windows 安装与使用指南
windows
fzyz1238 小时前
Windows系统下WSL从C盘迁移方案
人工智能·windows·深度学习·wsl
csdn_aspnet10 小时前
在 Windows 机器上安装和配置 RabbitMQ
windows·rabbitmq
csdn_aspnet11 小时前
Windows Server 上的 RabbitMQ 安装和配置
windows·rabbitmq
热爱生活的猴子15 小时前
Poetry 在 Linux 和 Windows 系统中的安装步骤
linux·运维·windows
R-sz18 小时前
java流式计算 获取全量树形数据,非懒加载树,递归找儿
java·开发语言·windows
柳鲲鹏1 天前
WINDOWS最快布署WEB服务器:apache2
服务器·前端·windows
专注VB编程开发20年1 天前
开机自动后台运行,在Windows服务中托管ASP.NET Core
windows·后端·asp.net
李洋-蛟龙腾飞公司1 天前
HarmonyOS NEXT应用元服务常见列表操作分组吸顶场景
linux·运维·windows