🦭
SadServers解説#16 "Venice": Am I in a container?
問題概要
シナリオ
私はコンテナの中にいますか?
問題詳細
コンテナ(たとえばDockerのようなもの)の内部にいるか、または仮想マシン(他のシナリオのように)の内部にいるかを見極めてください。
解決判定
このシナリオにテストはありません(したがって、check my solution
もありません)。
ヒント
一部、SadServers公式のヒントを改変しています。
ヒント
もしも今の環境がコンテナであるならば、initプロセスの環境変数に、コンテナに関するものが存在するかもしれません。
initプロセスの環境変数を確認しましょう。
実行コマンド
特定のプロセスの環境変数は、/proc/[プロセスID]/enciron
に保存されています。
# ps aux
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1 0.0 2.1 100928 9988 ? Ss 12:27 0:00 /sbin/init
# cat /proc/1/environ|tr "\0" "\n"
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
TERM=xterm
container=youlooked
HOME=/root
HOSTNAME=i-0df1e1e8a076a00ab
container
という環境変数があるので、今回の環境はコンテナ環境である可能性が高いですね。
「いきなり問題を解き始めても調べるばかりになってしまう…」 「やりたいことが分かっても、コマンドが分からない…」 という方は、下記の記事でLinuxのコマンドを復習してから、SadServersの問題に取り掛かってみてはいかがでしょうか。
余談
Podmanのアイコンは、一見アザラシのように見えますが、本当はセルキーという神話上の生き物らしいです。普段はアザラシの姿をしているが、陸に上がるときはアザラシの皮を脱いで人間になるとのこと(怖い…)。
問題一覧はこちら
Discussion