初心者が Chocolatey をインストールしてみた
初心者がやってみた形式でやったことをそのまま時系列にメモします。真面目に導入したい方はほかの人の Qiita 見たほうがよかったりするかもです。
Chocolatey とは
要するに Windows 用の apt/yum 的なものである。これを駆使してかっこよくいろいろな構築を今後していきたいものである。
インストール手順
公式を参考にしていく
Step 1: Subscribe to the Chocolatey Newsletter
いち早くセキュリティ情報を得たい人は是非登録してください。インストール自体には不要です。
Step 2: Choose Your Installation Method
-
引用
-
With PowerShell, you must ensure Get-ExecutionPolicy is not Restricted. We suggest using Bypass to bypass the policy to get things installed or AllSigned for quite a bit more security.
Run Get-ExecutionPolicy. If it returns Restricted, then run Set-ExecutionPolicy AllSigned or Set-ExecutionPolicy Bypass -Scope Process.
-
-
とのこととなので以下を powershell 上で実行
Get-ExecutionPolicy
> Get-ExecutionPolicy Restricted
余裕の restricted やったねたえちゃん。いったんこれを変えた場合どう変わるのかを公式で確認してみる
-
About Execution Policies
- 引用
-
Long Description
PowerShell's execution policy is a safety feature that controls the conditions under which PowerShell loads configuration files and runs scripts. This feature helps prevent the execution of malicious scripts.
-
Defaults
Sets the default execution policy.
Restricted for Windows clients.
RemoteSigned for Windows servers.
-
Process
The Process scope only affects the current PowerShell session. The execution policy is saved in the environment variable $env:PSExecutionPolicyPreference, rather than the registry. When the PowerShell session is closed, the variable and value are deleted.
-
- コメント
-
うーん・・・まあ・・・ bypass にしろって chocolatey 書いてあるけど・・・終わったら戻さなきゃだよね・・と確認してたらあった
-
Set-ExecutionPolicy
時の実行挙動で Process を指定しておけば chocolatey が終わったら powershell 閉じればよさそうね。
-
-
まあいったん
Get-ExecutionPolicy -List
でもしてみるか> Get-ExecutionPolicy -List Scope ExecutionPolicy ----- --------------- UserPolicy Undefined Process Undefined CurrentUser Undefined LocalMachine Undefined
-
まあこんなもんか。Windows Server の場合の default が remotesigned で今は普通の windows だからこの undefined 状態だとさっきみたいに Restricted になるのね。
-
- 引用
と、まぁ Chocolatey の公式に戻るが、以下を powershell で流せと言われている。
-
Set-ExecutionPolicy Bypass -Scope Process -Force; iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))
-
Set-ExecutionPolicy Bypass -Scope Process
部分についてはいったんこのプロセスのみなので 終わった後powershell を落とせば大丈夫そう。
-
いざいわれている通りに実行
-
コマンド実行
Set-ExecutionPolicy Bypass -Scope Process -Force; iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))
-
管理者権限で実行せず無事爆死
+ throw "Installation of Chocolatey to default folder requires Admi ... + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : OperationStopped: (Installation of...-administrator.:String) [], RuntimeException + FullyQualifiedErrorId : Installation of Chocolatey to default folder requires Administrative permissions. Please run from elevated prompt. Please see https://chocolatey.org/install for details and alternatives if needing to install as a non-administrator.
-
で実行するの忘れていた・・・
Installation of Chocolatey to default folder requires Administrative permissions.
-
気を取り直して管理者権限でもう一度実行
- 完了
最後に
ps1 を読めと言われたけど長すぎて読めませんでした申し訳ありませんでした。