Home
Packages
Forums
Wiki
GitLab
Security
AUR
Download
コンテンツにスキップ
メインメニュー
メインメニュー
サイドバーに移動
非表示
案内
メインページ
目次
コミュニティに貢献
最近の出来事
おまかせ表示
特別ページ
交流
ヘルプ
貢献
最近の更新
最近の議論
新しいページ
統計
リクエスト
ArchWiki
検索
検索
表示
アカウント作成
ログイン
個人用ツール
アカウント作成
ログイン
E4ratのソースを表示
ページ
議論
日本語
閲覧
ソースを閲覧
履歴を表示
ツール
ツール
サイドバーに移動
非表示
操作
閲覧
ソースを閲覧
履歴を表示
全般
リンク元
関連ページの更新状況
ページ情報
表示
サイドバーに移動
非表示
←
E4rat
あなたには「このページの編集」を行う権限がありません。理由は以下の通りです:
この操作は、次のグループに属する利用者のみが実行できます:
登録利用者
。
このページのソースの閲覧やコピーができます。
[[Category:ブートプロセス]] [[en:E4rat]] [[es:E4rat]] [[it:E4rat]] [[ru:E4rat]] [[zh-hans:E4rat]] {{Related articles start}} {{Related|ブートパフォーマンスの向上}} {{Related|Preload}} {{Related|Ureadahead}} {{Related|Ext4}} {{Related articles end}} [http://e4rat.sourceforge.net/ e4rat] は e4 'reduced access time' (ext4 ファイルシステムのみ) の略語で、Andreas Rid と Gundolf Kiefer によるプロジェクトです。[http://e4rat.sourceforge.net/ e4rat range of tools] は e4rat-collect, e4rat-realloc, e4rat-preload から成り立っています。 現在のバージョンは 0.2.3 です。 == プロセス == 古典的な [[bootchart]] を見ると、ブートプロセスの間にディスクも CPU も完全には使われていないことに気づくかもしれません。e4rat はブートプロセスでディスクと CPU をフルに使うようにして、起動時間を劇的に縮めます。3つの段階に分かれています: * '''e4rat-collect''' - 特定時間ファイルを収集します (デフォルトは120秒ですが変更することも可能です) * '''e4rat-realloc''' - ファイルを再配置します * '''e4rat-preload''' - ファイルをプリロードします === 利益を得る人、得ない人 === X を起動して、多数のプログラムを開くような、典型的なシングルユーザーセットアップで e4rat は大変効果があることが証明されています。サーバーセットアップで CLI で起動するような場合、起動時間の短縮はあまり効果があらわれないでしょう。SSD ドライブを使っている場合も利益はあまりありません、可動部がないためディスクの遅延が(ほとんど)ないためです - [[Ureadahead]] はチェックする価値があるかもしれません。 {{Note|''(ureadahead のユーザーへ)'' [http://e4rat.sourceforge.net/wiki/index.php/Main_Page#Ubuntu_and_ureadahead e4rat の公式マニュアル] には ureadahead が e4rat と衝突すると書かれています。この記述は Ubuntu では正しいですが、Arch Linux では e4rat と ureadahead を一緒に使っても問題なく動作します。ただし起動時間はあまり短縮されません。}} 備えあれば憂いなし。パーティションに入っているデータを消失したくないのならばバックアップを取っておきましょう。 == インストール == [[AUR]] から {{AUR|e4rat}} をインストールしてください。 {{Note| * ビルドするために、最初に {{ic|staticlibs}} オプションを明示的に有効にして {{Pkg|audit}} を [[ABS]] からリビルドする必要があります。デフォルトの {{Pkg|audit}} パッケージをインストールするだけではビルドエラーが発生します。 * audit を使うには audit をサポートしたカーネルが必要です。カーネルコンフィグで audit (CONFIG_AUDIT) と audit のシステムコールのサポート (CONFIG_AUDITSYSCALL) を有効にしてください。[[カーネル/コンパイル/Arch Build System]] も参照。また、カーネルパラメータに {{ic|1=audit=1}} を追加してください。 }} {{Tip| * 2020-05-06 の時点で、 {{AUR|e4rat}} は1年以上更新されておらず(最終更新日:2019-04-01)、コンパイルされていません。 代替の {{AUR|e4rat-lite-git}} には利用可能なパッチがありますが、元の {{AUR|e4rat}} に移植または適用されていません。 詳細については、 AUR のコメントセクションと [https://wiki.archlinux.jp/index.php/E4rat#e4rat-lite e4rat-lite] セクションをご覧ください。 * [https://wiki.archlinux.jp/index.php/E4rat#e4rat-lite e4rat-lite] は再構築された {{Pkg|audit}} を必要とせず、公式リポジトリのバージョンで正常に機能します。 }} == 使用方法 == それでは本題に入ります: === e4rat-collect === e4rat にファイルのリストを収集させるために {{ic|1=init=/sbin/e4rat-collect}} を[[カーネルパラメータ]]に追加します。例: kernel /vmlinuz-linux root=/dev/disk/by-label/ARCH init=/sbin/e4rat-collect ro 5 これは一度だけやれば十分なので、grub のコマンドラインなどにこのコマンドを追加すれば良いでしょう。 起動時に e4rat-collect はデフォルトで120秒間システムを監視します。なので起動したら、2分の間に、X にログインして、お気に入りのブラウザやメールクライアントを開いたりしてください。それらの活動すべてが記録されます。デフォルトの120秒を変更したいときは {{ic|/etc/e4rat.conf}} を編集してください。手動で e4rat-collect を停止するには次を入力: e4rat-collect -k もしくは: pkill e4rat-collect ちゃんと起動して規定の時間待機したら {{ic|/var/lib/e4rat/startup.log}} ファイルを見て下さい。 そして忘れずに[[ブートローダー]]の設定ファイルから e4rat-collect コマンドを取り除いておきましょう (grub のコマンドラインに追加した場合は必要ありません)。 === e4rat-realloc === ''e4rat-collect'' を実行したら、root でログインして次を実行: e4rat-realloc /var/lib/e4rat/startup.log startup.log ファイルに記述されたファイルの数によってしばらく時間がかかります。{{ic|systemctl isolate rescue}} でレスキューモードに移行することで ([[Systemd#ターゲット表]])、''multiuser.target'' ではフリーにならない inode やブロックも再配置することができます。 {{Note| * It may be worthwhile to repeat the reallocation step multiple times before exiting or rebooting in order to further reduce the fragmentation count. Simply re-run the command a few times to see if this is possible on the your setup. If so you'll see the count number reduced after a few runs. This is perfectly safe and shouldn't cause any issues with booting. * SysV スタイルの [[init]] システムを使っている場合、{{ic|e4rat-realloc}} を実行する前に {{ic|sudo init 1}} を使ってランレベル 1 に切り替える必要があります。 }} === e4rat-preload === {{ic|1=init=/sbin/e4rat-preload}} を永続的に[[カーネルパラメータ]]に追加してください。 == e4rat と init システム == e4rat-collect はデフォルトで実行時に {{ic|/sbin/init}} を置き換えます。{{ic|systemd}} のデフォルト環境では、このファイルは {{ic|/lib/systemd/systemd}} のシンボリックリンクになっています。他のプロセス (例: {{ic|/usr/bin/busybox}}) を PID 1 に指定する必要がある場合、{{ic|/etc/e4rat.conf}} を編集して {{ic|init}} パラメータを設定することで変更することが可能です: init /usr/bin/busybox これによって同一のブートシーケンスで {{ic|e4rat-preload}} と {{ic|bootchart}} の両方を起動することができます。 == e4rat-lite == 複数の改善がなされている e4rat の代替です。元の e4rat パッケージで発生する問題が解決するかもしれません。{{AUR|e4rat-lite-git}} パッケージでインストールできます。 === e4rat-lite を使う === e4rat-lite のコマンドは e4rat と全く同じです。違うのはパスだけです: * collect: {{ic|1=init=/usr/bin/e4rat-lite-collect}} * realloc: {{ic|/usr/bin/e4rat-lite-realloc}} * preload: {{ic|1=init=/usr/bin/e4rat-preload}} == Bootchart == [[Bootchart]] を使うことでシステムの起動グラフを生成できます。CPU やディスクの使用量を視覚的に確認することができます。必須ではありませんが、e4rat によるブートプロセスの変化を確認できます。 === bootchart === {{Warning|公式の bootchart パッケージは廃止されており、グラフを生成するために必要な bootchart-render コマンドが含まれていません。bootchart2 を使うことを推奨します。}} このバージョンの [[bootchart]] は[[ディスプレイマネージャ]]が立ち上がるとすぐにログの記録を停止します。以下のように上書きすることでログを停止しないようにすることができます: ログを続行するには以下のように {{ic|/etc/bootchartd.conf}} を変更: AUTO_STOP_LOGGER="no" 手動で停止するには次を実行: # bootchartd stop e4rat-preload と bootchart の両方を実行するには grub の kernel 行に以下を追加: init=/sbin/bootchartd bootchart_init=/sbin/e4rat-preload === bootchart2 === e4rat と共に {{AUR|bootchart2}} を動作させるには {{ic|/sbin/bootchartd2}} を編集して次の行を: init="/sbin/init" 以下のように置き換えて下さい: init="/sbin/e4rat-preload" 上記の設定で Bootchart2 による情報を使って起動時間を測定できます。 bootchart2 を停止する時間は {{ic|/etc/bootchartd2.conf}} ファイルを編集することで簡単に設定できます。特定のアプリケーションが起動したときに Bootchart2 のログを止めるには以下のように設定してください: EXIT_PROC="kdm_greet xterm konsole gnome-terminal metacity mutter compiz ldm icewm-session enlightenment" もしくは、上記の行を空にすることで手動でログを停止することもできます。 チャートを生成するには次のコマンドを実行: {{ic|pybootchartgui -i}}。 == トラブルシューティング == === startup.log が作られない === * auditd サービスを無効にする * ヒントがないか次を確認 $ dmesg | grep e4rat * {{ic|e4rat.conf}} の verbose と loglevel を31にまで増やす * e4rat のかわりに e4rat-lite を使用する ===e4rat が誤って ext2 ファイルシステムと認識する=== {{ic|1=rootfstype=ext4}} をブートローダーの[[カーネルパラメータ]]に追加してください。 === /var/lib/e4rat/startup.log にアクセスできない === This suggests that you have {{ic|/var}} on a separate partition which is not yet mounted during boot. You need move your {{ic|startup.log}} to an accessible partition ({{ic|/etc/e4rat/}} is just fine) and adjust your {{ic|/etc/e4rat.conf}} to reflect this change: startup_log_file /etc/e4rat/startup.log === うるさいブートメッセージを削除する === 起動中の e4rat-preload のメッセージがうっとうしい場合は、{{ic|/etc/e4rat.conf}} で verbose を 1 に減らします。 == 参照 == * [https://bbs.archlinux.org/viewtopic.php?id=115976 フォーラムのメインスレッド] * [https://bbs.archlinux.org/viewtopic.php?id=117776 Improved e4rat-preload - フォーラムスレッド]
このページで使用されているテンプレート:
テンプレート:AUR
(
ソースを閲覧
)
テンプレート:Ic
(
ソースを閲覧
)
テンプレート:META Related articles start
(
ソースを閲覧
)
テンプレート:Note
(
ソースを閲覧
)
テンプレート:Pkg
(
ソースを閲覧
)
テンプレート:Related
(
ソースを閲覧
)
テンプレート:Related articles end
(
ソースを閲覧
)
テンプレート:Related articles start
(
ソースを閲覧
)
テンプレート:Tip
(
ソースを閲覧
)
テンプレート:Warning
(
ソースを閲覧
)
E4rat
に戻る。
検索
検索
E4ratのソースを表示
話題を追加