-xを使用してシェルスクリプトを実行してシステムvを起動するデバッグ

-xを使用してシェルスクリプトを実行してシステムvを起動するデバッグ

ブートプロセスのユーザースペース部分をデバッグする必要があり、sh -xブートプロセス中に何が起こっているのかを観察するために、すべてのスクリプトがデフォルトで実行されることを望みます。

busyboxが提供する組み込みシステムですsh/bin/shはへのリンクですbuysbox

shからまでインタプリタをシステム的に変更できますかsh -x

ベストアンサー1

私のシステムにはダッシュへのリンクがあるので、その/bin/shリンクをコマンドライン引数を実行して渡すプログラムに置き換えることができます。/bin/dash -x

/bin/shあなたのファイルがバイナリファイルの場合。次にコピーして上記と/bin/sh.org同じことを行います。ただし/bin/sh.org -xdash

これらの変更を実行するにはルートである必要があります。

/bin/shリンクの場合は、busybox上記の作業を続行できます。移動busyboxしてbusybox.orgバイナリを生成してbusybox呼び出されたことを確認しますsh(本質的に、元のビジボックスがさまざまなIDを取得するために行った操作です)。その場合は、-xコマンドライン引数の残りの部分の前に挿入して呼び出してください。busyboxそうでない場合(つまり、呼び出されない場合sh)、コマンドライン引数を使用してbusyboxを呼び出します。

ただし、この時点では、busyboxのソースコードをダウンロードし、ソースを常に呼び出し、コンパイル、インストール(元のbusyboxバイナリバックアップ)と見なすように変更する方が-x簡単ですsh

おすすめ記事