見出し画像

PowerShell sudoっぽいものをインストールする

PowerShell でsudoっぽいものをインストールする

PowerShellで数独ができないかと思ってwinget search を実行したときに偶然sudoコマンドを見つけました。Windows版のsudoです。せっかくなので紹介したいと思います。

sudoとは

sudoは、UNIX系オペレーティングシステム(LinuxやmacOSなど)で使用されるコマンドで、スーパーユーザーと呼ばれる特別な権限を持ったユーザーと同じ操作を実行できるようにするものです。Windowsユーザーにとって、sudoは「管理者権限でコマンドを実行する」という点で「管理者コマンドプロンプト」に似ています。ですが、sudoの方がより柔軟で強力な点が特徴です。

sudoの例

  • ソフトウェアをインストールする: sudo apt install ソフトウェア名

  • ユーザーを追加する: sudo useradd ユーザー名


インストール方法 win-sudo

 まずwingetでインストールできるかどうかsudoを探します。
winget searchを実行してみます。

PS C:\temp> winget search sudo
名前 ID バージョン 一致 ソース
----------------------------------------------------------------------------
Sudoku Solver Universal 9NBLGGH4RNXR Unknown msstore
FDL Sudoku solver 9NZ1DLGFK0WZ Unknown msstore
My Sudoku Solver 9WZDNCRDKDMP Unknown msstore
Sudoku Mate 9NBLGGH40JTP Unknown msstore
Sudoku Solver Generator 9WZDNCRDQRN6 Unknown msstore
Sudoku Solving Tool 9NQFMHV76F8D Unknown msstore
Sudoku Tool 9NBLGGH43ZC4 Unknown msstore
gsudo gerardog.gsudo 2.4.4 Command: sudo winget
win-sudo oleg-shilo.win-sudo 1.0.1 winget


win-sudoというのが見つかりました。
インストールしてみましょう。

winget install oleg-shilo.win-sudo

PS C:\temp> winget install oleg-shilo.win-sudo
見つかりました win-sudo [oleg-shilo.win-sudo] バージョン 1.0.1
このアプリケーションは所有者からライセンス供与されます。
Microsoft はサードパーティのパッケージに対して責任を負わず、ライセンスも付与しません。
ダウンロード中 https://github.com/oleg-shilo/win-sudo/releases/download/v1.0.1/sudo.v1.0.1.zip
 ██████████████████████████████ 51.7 KB / 51.7 KB
インストーラーハッシュが正常に検証されました
アーカイブを展開しています...
アーカイブが正常に展開されました
パッケージのインストールを開始しています...
コマンド ライン エイリアスが追加されました: "sudo"
インストールが完了しました


ためしに実行してみましょう


PS C:\temp> sudo
Widows equivalent of Linux 'sudo'. Version 1.0.1.0
Copyright (C) 2023 Oleg Shilo. www.csscript.net (github.com/oleg-shilo/win-sudo)
Use this utility to elevate any process from the Windows terminal/command-prompt:

Usage: sudo <executable> [arguments] | command

Examples: sudo choco install <product>
 sudo -config

By default, it displays UAC prompt (for sudo-host process) every time you execute `sudo`.
If you prefer a Linux user experience when sudo prompts only the first time it runs, you can achieve this by changing the configuration:

 sudo -config:run=multi

CLI documentation: sudo -?
Project documentation: https://github.com/oleg-shilo/win-sudo


簡単な説明が表示されました。

sudo -?
とやるとヘルプが表示されます。
使ってみましたが未完成な感じですね


さっきwinget searchしたときgsudoというのもありました。
こちらも試してみましょう

winget install gerardog.gsudo

インストール後に標準モードでPowerShell ターミナルを立ち上げて
スタータスを確認してみます。

PS C:\Users\Godago> gsudo status
Caller Pid: 3972
Running as:
User: HP-13BE-2XXX\Godago
Sid: S-1-5-21-895371928-477970389-1154593843-1001
Is Admin: False
Integrity Level: Medium (8192)

なんだか分からんのですけどIs Admin:Falseと書いてあるので
管理者モードではないということですね。
gsudoを実行後にもういちどステータスを確認します

PS C:\Users\Godago> gsudo
PS C:\Users\Godago> gsudo status
Caller Pid: 11596
Running as:
User: HP-13BE-2XXX\Godago
Sid: S-1-5-21-895371928-477970389-1154593843-1001
Is Admin: True
Integrity Level: High (12288)

Is Admin:Trueとなっているので管理者モードみたいですね。
ターミナルも管理者表示になりました。

win-sudoより使えそうです。
もしかしたら 「gsudo rm -rf /*」を実行したら大変なことになるかもしれませんね。


#PowerShell #sudo #コマンドレット #gsudu #プログラミング初心者 #プログラミング学習 #毎日Note




この記事が気に入ったらサポートをしてみませんか?