编程开源技术交流,分享技术与知识

网站首页 > 开源技术 正文

Windows包管理工具Chocolatey

wxchong 2024-06-28 10:51:01 开源技术 48 ℃ 0 评论

什么是Chocolatey?

有时被称为Chocolatey或Choco,是一个免费的Windows开源软件包管理器,与Linux领域的Apt或DNF非常相似。换句话说,这是一个用于通过Windows命令行安装软件的程序。它下载程序,安装程序,然后检查更新,并在需要时自动安装这些更新。使用Linux的人非常熟悉这样的软件包管理系统。

有人问:“既然我们可以简单地下载.exe或.msi软件并自己安装程序,我们为什么要选择使用这样的程序?”

这是一个很好的问题。这里有几个确凿的答案。

  • 当我们安装新操作系统并希望使用多个程序时,我们必须查找每个程序安装程序,下载它,安装它,然后定期检查更新。使用自动模式时,巧克力软件包管理器本身就了。
  • 我们可以使用Chocolatey软件包管理器安装程序,并使用命令行完成所有内容,而不是搜索可执行安装程序。它更方便、更快。
  • 我们可以方便、更舒适地控制我们需要的应用程序版本。大多数情况下,当我们为应用程序下载可执行文件时,它会为我们下载最新版本,我们并不总是需要最新版本。
  • Chocolatey提供了清晰、简单的命令,这些命令在所有软件包管理系统中的使用几乎相同。

先决条件

  • Windows 7 或更高版本/Windows Server 2003 或更高版本
  • PowerShell v2或更高版本
  • 。NET Framework 4或更高版本

(顺便说一句,安装将尝试安装。如果您尚未安装NET 4.0。)

安装

让我们继续安装。安装Chocolatey有两种选择。我们可以通过命令行或PowerShell安装Chocolatey。使用cmd的选项最常用于Windows,PowerShell用于运行脚本。在这种情况下,我们可以同时运行cmd和PowerShell,但作为管理员,用于此安装。

使用Powershell安装

通过PowerShell安装软件时,我们必须确保本地Get-ExecutionPolicy不受限制。Chocolately建议使用旁路绕过策略来安装东西或AllSigned以提高安全性。

首先,我们需要运行Get-ExecutionPolicy。如果它返回Restricted,那么我们需要运行以下两个命令之一。

Set-ExecutionPolicy AllSigned

奥勒冈州

Set-ExecutionPolicy Bypass -Scope Process

现在在Windows shell中运行以下命令。

Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1')) 

如果没有错误,将安装Chocolatey。我们可以使用巧克力巧克力来验证安装-?命令。

使用Windows Cmd Shell安装

首先,我们需要确保我们使用的是管理外壳。接下来,将以下命令复制到cmd.exe shell。

@"%SystemRoot%\System32\WindowsPowerShell\v1.0\powershell.exe" -NoProfile -InputFormat None -ExecutionPolicy Bypass -Command " [System.Net.ServicePointManager]::SecurityProtocol = 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))" && SET "PATH=%PATH%;%ALLUSERSPROFILE%\chocolatey\bin"

然后按回车键。

安装应该看起来像这样。

Microsoft Windows [Version 10.0.18363.900]
(c) 2019 Microsoft Corporation. All rights reserved.
C:\WINDOWS\system32>@"%SystemRoot%\System32\WindowsPowerShell\v1.0\powershell.exe" -NoProfile -InputFormat None -ExecutionPolicy Bypass -Command " [System.Net.ServicePointManager]::SecurityProtocol = 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))" && SET "PATH=%PATH%;%ALLUSERSPROFILE%\chocolatey\bin"
Getting latest version of the Chocolatey package for download.
Getting Chocolatey from https://chocolatey.org/api/v2/package/chocolatey/0.10.15.
Extracting C:\Users\user\AppData\Local\Temp\chocolatey\chocInstall\chocolatey.zip to C:\Users\user\AppData\Local\Temp\chocolatey\chocInstall...
Installing chocolatey on this machine
Creating ChocolateyInstall as an environment variable (targeting 'Machine')
Setting ChocolateyInstall to 'C:\ProgramData\chocolatey'
WARNING: It's very likely you will need to close and reopen your shell
before you can use choco.
Restricting write permissions to Administrators
We are setting up the Chocolatey package repository.
The packages themselves go to 'C:\ProgramData\chocolatey\lib'
(i.e. C:\ProgramData\chocolatey\lib\yourPackageName).
A shim file for the command line goes to 'C:\ProgramData\chocolatey\bin'
and points to an executable in 'C:\ProgramData\chocolatey\lib\yourPackageName'.
Creating Chocolatey folders if they do not already exist.
WARNING: You can safely ignore errors related to missing log files when
upgrading from a version of Chocolatey less than 0.9.9.
'Batch file could not be found' is also safe to ignore.
'The system cannot find the file specified' - also safe.
WARNING: Not setting tab completion: Profile file does not exist at
'C:\Users\user\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1'.
Chocolatey (choco.exe) is now ready.
You can call choco from anywhere, command line or powershell by typing choco.
Run choco /? for a list of functions.
You may need to shut down and restart powershell and/or consoles
first prior to using choco.
Ensuring chocolatey commands are on the path
Ensuring chocolatey.nupkg is in the lib folder
C:\WINDOWS\system32>

验证安装

为了验证是否安装了Chocolatey,我们将使用choco命令。

C:\WINDOWS\system32>choco
 Chocolatey v0.10.15
 Please run 'choco -?' or 'choco  -?' for help menu.
C:\WINDOWS\system32>

太棒了!Chocolatey已安装!

安装Chocolatey的高级示例

安装Chocolatey图形用户界面(GUI)

安装Chocolatey后,如果需要,它可用于安装GUI版本。使用以下命令进行安装。

choco install chocolateygui

在代理后面安装巧克力

如果您需要在代理后面安装Chocolatey,请使用以下Windows Cmd命令。

@powershell -NoProfile -ExecutionPolicy Bypass -Command "[System.Net.WebRequest]::DefaultWebProxy.Credentials = [System.Net.CredentialCache]::DefaultCredentials; iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))" && SET PATH="%PATH%;%ALLUSERSPROFILE%\chocolatey\bin"

如果您使用的是Windows PowerShell,请确保Get-ExecutionPolicy至少设置为RemoteSigned,并运行以下命令。

[System.Net.WebRequest]::DefaultWebProxy.Credentials = [System.Net.CredentialCache]::DefaultCredentials; iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))

Chocolatey文档为这种安装类型的更复杂配置提供了额外的选项。

使用Chocolatey安装的其他软件

Chocolatey对安装各种软件包很有用。这里有一些可以帮助您入门。

Google Chrome浏览器

以下命令用于使用Chocolatey安装Google Chrome。

choco install chrome

Git

使用以下命令安装Windows版Git命令行(cli)客户端。

choco install git

GitHub

此命令安装GitHub,这是Git基于GUI的官方客户端。

choco install github

Putty

下一个命令安装流行的开源SSH客户端Putty。

choco install putty

VLC

使用此命令安装开源媒体播放器VLC。

choco install vlc

基本巧克力命令

现在,让我们回顾一下使用Choco的一些基本命令。Choco命令可以在Windows cmd shell和PowerShell中使用。

安装程序

要安装特定程序,请使用以下命令。

choco install <pkg|packages.config> [ ] []</pkg|packages.config>

例如:

choco install chrome

有关安装选项的完整列表,请访问Choco安装页面或运行以下命令。

choco install -h

更新计划

要更新程序,我们将使用以下命令。

choco upgrade <pkg|all> [ ] []</pkg|all>

例如:

сhoco upgrade chrome

更新所有计划

要更新所有程序,我们需要使用以下命令。

cup <pkg|all> [ ] []</pkg|all>


choco upgrade all

搜索程序

要找到下载和安装所需的程序,我们可以输入以下命令。

choco search chrome

查看已安装的程序

使用以下命令,您可以查看哪些程序已经使用Choco安装。

choco list --local-only
 Chocolatey v0.10.15
 chocolatey 0.10.15
 chocolatey-core.extension 1.3.3
 kubernetes-cli 1.18.2
 Minikube 1.10.1
 vscodium 1.38.0
 5 packages installed.
C:\WINDOWS\system32>

更新巧克力

我们可以使用此命令更新Choco程序本身。

choco upgrade chocolatey

定期这样做很重要,因为在以前的版本中,可能会检测到错误,并且需要修复,这样就不会有漏洞。

安装GUI

如果有人对使用命令行感到不舒服,我们可以使用此命令安装Chocolatey的图形用户界面。

choco install chocolateygui

Tags:

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表