Linuxシステムを削除する方法は?


24

Linuxディストリビューションを構築しており、バイナリなどを削除しました。システムは、GCCや開発ツールを使用しません。これはChromeキオスクなので、システムを削除できれば非常に役立ちます。 ...

実行時にどのファイル/ライブラリが使用されているかを監視することで、未使用のシステムファイル(バイナリなど)をすべて削除する方法はありますか?別の方法が望ましいかもしれませんが、このようなことを達成する方法はありますか?


3
確かに、今回は正しい場所にいます:)
phunehehe

2
では、なぜ別のUbuntuベースのStack Exchangeサイトがあるのでしょうか?AFAICT、Ubuntu Linux / Unixであると考えられるべきだから、彼らはこのサイトとマージすべきだと思うが、そうでない場合は、そうでない場合は、GentooOverflowとFedoraOverflowの準備をしてください!
ブレンダー

3
@Blender:このマージは考慮され、拒否されました。2つのサイトのMetaで履歴を確認してください。
ジル 'SO-悪であるのをやめる'

3
私は、ubuntuサイトがgnomeプログラムとユーザーインターフェースに関するものであることに気付きました。ここでの答えはほぼ間違いなくターミナルコマンドです。
ファルマーリ

2
私の理解では、AskUbuntuはUnixおよびLinuxに対するものであり、UnixおよびLinuxはSuperUserに対するものです。ubuntu固有の質問であれば、AUに進みます。それ以外の場合、n x-ishであれば、ここに行きます。それ以外の場合は、SUまたはServerFaultに行きます。
直観

回答:


11

起動中に実行したプログラムを表示するために使用できるBootchartなどのプログラムがあります。おそらく、起動後に実行し続けて、セッション中に呼び出されたものを確認できます。

より良い解決策は、リマスタリングツールを使用することです。

FedoraUbuntuなどのリマスタリングツールがあります。これらを使用して配布をカスタマイズできます。

Tiny Core Linuxご覧ください。そのためのリマスタースクリプト作成している人もいます。


帰宅したら、間違いなくBootchartを試します。しかし、昨夜のシステムのコンパイルが終了したばかりなので、私は嘘をついたので、数日のうちに実際に実行する必要があります。TinyXを見つけました(本当に必要なXOrgモジュールがわからないため、探していたものです)が、Webサイトはダウンしていました。
ブレンダー

ブートチャートです!コンパイルして実行したところ、非常に冗長で有用な結果が得られました。私はシステムを削除するつもりはないだけで、私は、ソースベースのパッケージマネージャ(Gentooを?)を実装するつもりだと、まだ、私は間違いなくこれを使用します。ありがとう!
ブレンダー

6

とりわけ、不要なものはすべて削除する必要があります。ファイルシステムがatime完全に有効になっていることを確認してください。これはで設定できます/etc/fstab。現在のデフォルトはですがrelatime、使用したいだけatimeです。ファイルにアクセスするたびに、タイムスタンプが更新されます。次に、数日間使用して、atimeが更新されていないファイルを確認します。システムが読み取り専用モードになっているときに読み取られるファイルがいくつかあると思うので、VMでこれらすべてを非常に慎重に行います。注:noatime本番の準備ができたら設定してください。そうでない場合は、読むたびに書き込みを行います。これは非効率的です。

正直に言って、私はDamn Small Linuxを調べます。あなたは本当にそれより小さくする必要がありますか?ディストリビューションに基づいてビルドし、ウィンドウマネージャーといくつかの追加プログラムを削除します。すべてのコマンドラインツールはそのままにしておきます。修復またはリロードが必要になった場合は、シェルを使用してください。


ありがとう!完全に使用可能なLFSシステムを実際に実行したことがないので、自分でやろうとしていますが、以前にDLSで遊んだことがあります。私は実際に、SuSEStudioで作成されていないChromeOSクローン(chromium.orgのもの)を構築しようとしていますが、600MBよりも少し小さいです。)DSLには他のソフトウェアがたくさん含まれているため、しかし、私はOpenBox、Chrome、およびカスタムビルドのThunar(およびその他のグッズ)のみをインストールしています。ありがとう!
ブレンダー

5

Debianまたはその派生物を使用していると仮定します

数日間(重い)使用した後、を実行しpopularity-contestます。一番下にある最も古い未使用パッケージが表示されます。それらをアンインストールしますが、インストールされているものに依存するものがあるかどうかに注意してください。

出力のスニペットは次のとおりです。

1294222606 1292570417 vlc /usr/lib/vlc/plugins/gui/libqt4_plugin.so
1294222606 1292570109 xulrunner-1.9.2 /usr/share/xulrunner-1.9.2/chrome/classic.jar
1294222606 1292507839 ttf-dejavu-extra /usr/share/fonts/truetype/ttf-dejavu/DejaVuSans-Oblique.ttf
1294222606 1292507459 x11-utils /usr/bin/xprop

列は、atimectimepackage-name、およびアクセスされるファイルを意味します


1

ファイルアクセス時間を有効にして、しばらくの間システムをアクティブに使用します。どのファイルのアクセス時間が変更されていないかを確認します。これらは削除の候補です(ただし、持っていないハードウェアのハードウェアドライバーであるか、ルートパーティションがまだ残っているブートプロセスの初期段階で必要であるなど、それらを保持する理由がないことを確認してください読み取り専用でマウントされます)。

大きなアプリケーションはほとんどないので、単一の実行可能ファイルで使用されているライブラリを確認してください。それらを静的にリンクすることを検討してください。

ldd /bin/* /usr/bin/* |sed -n 's/^.* => \(.*\) (.*)$/\1/p' |sort |uniq -c

0

正確にどこから始めていますか?既存のディストリビューションを削除していますか?ディストリビューションから始めなければならない理由はありますか?

組み込みシステムをゼロから構築することを検討し、必要なものだけをロードすることをお勧めします。


LFSインストール+ Xorg、Python、およびGoogle Chromeで構築しています。派手なものは何もありません。
ブレンダー

GCC、Pythonなどを使用してビルドしましたが、現在は私の目的では廃止されています。
ブレンダー
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.