Skip to main content

Install via Install Script

[edit on GitHub]

The Chef install script does the following:

  • Detects the platform, version, and architecture of the machine on which the installer is to be executed
  • Fetches the appropriate package, for the requested product and version
  • Validates the package content by comparing SHA-256 checksums
  • Installs the package

Run the Install Script

The Chef install script can be run on UNIX, Linux, and Microsoft Windows platforms.

UNIX and Linux

On UNIX and Linux systems the Chef install script is invoked with:

curl -L https://omnitruck.chef.io/install.sh | sudo bash

and then enter the local password when prompted.

Microsoft Windows

On Microsoft Windows systems the Chef install script is invoked using Windows PowerShell:

. { iwr -useb https://omnitruck.chef.io/install.ps1 } | iex; install

Install Script Options

In addition to the default install behavior, the Chef install script supports the following options:

-c (-channel on Microsoft Windows)

The release channel from which a package is pulled. Possible values: current or stable. Default value: stable.

-d (-download_directory on Microsoft Windows)

The directory into which a package is downloaded. When a package already exists in this directory and the checksum matches, the package is not re-downloaded. When -d and -f are not specified, a package is downloaded to a temporary directory.

-f (-filename on Microsoft Windows)

The name of the file and the path at which that file is located. When a filename already exists at this path and the checksum matches, the package is not re-downloaded. When -d and -f are not specified, a package is downloaded to a temporary directory.

-P (-project on Microsoft Windows)

The product name to install. Supported versions of Chef products are automate, chef, chef-server, inspec, chef-workstation, chefdk, supermarket, chef-backend, push-jobs-client, and push-jobs-server. Default value: chef.

-s (-install_strategy on Microsoft Windows)

The method of package installations. The default strategy is to always install when the install.sh script runs. Set to “once” to skip installation if the product is already installed on the node.

-l (-download_url_override on Microsoft Windows)

Install package downloaded from a direct URL.

-a (-checksum on Microsoft Windows)

The SHA256 for download_url_override

-v (-version on Microsoft Windows)

The version of the package to be installed. A version always takes the form x.y.z, where x, y, and z are decimal numbers that are used to represent major (x), minor (y), and patch (z) versions. A two-part version (x.y) is also allowed. For more information about application versioning, see https://semver.org/.

Examples

The following examples show how to use the install script.

To install Chef Client 15.8.23:

curl -L https://omnitruck.chef.io/install.sh | sudo bash -s -- -v 15.8.23

To install the latest version of Chef Workstation on Microsoft Windows from the current channel:

. { iwr -useb https://omnitruck.chef.io/install.ps1 } | iex; install -channel current -project chef-workstation