「Linuxはインタープリタだ」——シェルスクリプトがOSを起動する仕組みを徹底解説

「Linuxはインタープリタだ」——シェルスクリプトがOSを起動する仕組みを徹底解説

元記事を読む
編集コメント

「OSをインタープリタとして使う」という視点でLinuxの低レイヤーを実験的に掘り下げる技術記事で、システムプログラミング好きには必読。

概要

エンジニアのAstrid氏が、Linuxカーネル自体をインタープリタとして捉えるという独自の視点でシリーズ記事を公開。今回の第5弾では、curl https://astrid.tech/rkx.gz | gunzip | sudo sh という一見危険なワンライナーコマンドの中身を分解して解説している。

ダウンロードされる rkx.gz は約20MBのシェルスクリプト。大半はbase64エンコードされたバイナリデータで構成されており、シェルがそれを逐次解釈・実行するという構造になっている。つまり「シェルスクリプト=インタープリタ言語」「Linux=そのランタイム」という構図を実践的に示している。

以前の記事では curl > /dev/sda でOSを丸ごと書き換えたり、再起動をまたいで秘密情報を渡す手法なども紹介。低レイヤーのLinux動作原理に興味があるエンジニアに刺さる内容として、Hacker Newsで注目を集めている。