Macでもシェルワンライナーがやりたい!!
最初の2つの段落は導入に関係ないので、飛ばしたい方は「Limaの導入準備」からお読みください。
※盛大な勘違いによりMacには最新のbashは入らないのだろうと盛大に勘違いしていました。
2022-05-22に記事にHomebrewを使ったbashのアップデート方法を追加しました!
1番簡単にMacでシェルワンライナーを使う方法はそちらになります。
【導入方法】
・Homebrewをインストールする。
brew install bash
・ターミナルを再起動する。
bash
これでアップデートされたbashが起動します。
**
今回はWindowsのWSL2のように使えるMacのLimaでシェルワンライナーを行ってみたいと思います。
その前に、Limaを導入する以外の方法でシェルワンライナーを行う方法はどんな方法があるかを紹介したいと思います。
私が今まで取っていた方法は下記の3つです。
①webshを使う
こちらのサイトでは基本的なLinuxコマンドでの操作を体感することができます。
手軽にコマンドを実行して、Twitterに投稿できるので非常に便利です。
ただ、Githubからシェルワンライナーの問題がダウンロードできないなど一部のシェルワンライナーの問題をこなすのには不向きです。
②VirtualBoxを使う、もしくはデュアルブート環境を作る
VirtualBoxは面倒くさい・・・。
ただそれだけです。
また、Linux専用のパソコンで複数のLinuxをブートできる環境を作るのは良いと思うのですがMacではやりたくないなあと思いました。
③zashにHomebrewを導入して簡易的なbash環境を作る。
これは何が入っていて、何が入っていないのか?という管理がめんどくさかったです。
そうです!MacでちょっとLinuxコマンドを練習しようと思うと意外とめんどくさいのです!
WSL2の様に簡単に起動できて色々できるものはないだろうか?
それがLimaです。
Limaってどういう物ですか?
Limaの機能は主に2つです。
①Linux仮想マシンをMacOS上で提供
②containerdの起動
(Dockerなどのコンテナサービスのバックエンド)
なので、Limaを使えばより便利にMac上でDockerと連携することができます。
むしろこっちをメインに使っている方の方が絶対に多いです・・・。
今回はそんなLimaをLinux仮想マシンの起動目的のみで利用するというわけです。
使い心地としてはWASL2に近いです。
Limaの導入準備
シェルワンライナーをやるための準備を行います。
基本的なターミナル操作の知識がある前提でお話しします。
Limaを導入する前に下記の要件を満たしてください。
要件:Homebrewを導入済
Limaのインストールから環境設定まで
下記のコマンドをターミナル上で実行します。
brew install lima
インストール完了後に更に下記のコマンドを実行します。
limactl start
下記のような画像の画面が立ち上がります。
シェルワンライナーをやるだけでしたら、最上部のProceed with the current configurationを選択するだけです。
自動でUbuntuがインストールされます。
Choose another exampleを選択すればインストールするLinuxディストリビューションを選択できます。
インストール終了後は
lima
で起動することができます。
これで各種Linuxコマンドを自由に使えるようになりました。
思う存分シェルワンライナーを楽しみましょう!!
※Limaはパーミッション許可を設定しないと書き込みができないので、デフォルトで書き込み権限のある「Users/tmp」に移動してshell-gei160のリポジトリをgit cloneしてください。
インストール後の書き込みパーミッションの変更方法については現在調べています。
普通のchmodじゃ出来ない気がするのですが気のせい・・・?
今後新しいLimaのインスタンス(別のLinuxディストリビューション)を作りたいときは
limactl start --name=NAME
//NAME部分を自由に指定
//起動時もこのコマンドを使います
他に基本的な操作として、インスタンスの停止と削除があります。
limactl stop NAME
//NAMEは作成時に指定した名前
limactl delete NAME
//stopしていないと削除できません