9

いくつか読んだ後、Linux ユーザー名前空間は通常、Linux バージョン >= 3.8 でサポートされていることがわかりました。ただし、特定の OS でユーザー名前空間が無効になっている可能性があり、カーネル バージョンのチェックが信頼できなくなります。現在使用している OS がユーザー名前空間をサポートしており、それを使用できるかどうかを確認する確実な方法はありますか?

4

3 に答える 3

6

カーネルがユーザー名前空間をサポートしているかどうかを確認できる場所が 2 つあります。

  1. /boot/config-*. (実際に使用しているものを見つけてくださいuname -a
  2. /proc/config.gz.

両方のファイルで を探しますCONFIG_USER_NS。それが読めるなら、CONFIG_USER_NS=yあなたはゴールデンです。そうでない場合は、新しいカーネルをコンパイルしようとしています。

于 2016-09-27T10:18:05.587 に答える
2

bash を実行している場合 ( を実行して確認できます。echo $0期待される結果は です-bash)。次に、次のワンライナーを実行できます。

if [[ `sudo cat /boot/config-$(uname -a | awk '{print $3}') |grep '^CONFIG_USER_NS'` == "CONFIG_USER_NS=y" ]]; then echo "You have support for User Namespaces"; else echo "Sorry, you don't have support for User Namespaces"; fi
于 2016-10-20T12:56:37.873 に答える