# Autostarting (日本語)

この記事ではシステムの起動・シャットダウンや、ログイン・ログアウトなど特定のイベントが起こった時に自動でスクリプトやアプリケーションを起動する方法について触れています。

## デーモン

スクリプトやアプリケーションをデーモンとして簡単に起動することができます、デーモンを参照してください。

### Systemd

systemd は initscripts を置き換えるデフォルトの init フレームワークです。systemd によって実行されるサービスは `/etc/systemd/system/` のサブフォルダにあります。サービスは `systemctl` コマンドを使うことで有効にできます。systemd の詳細や自動起動スクリプトを書く方法については systemd を見て下さい。

### Runit

runit はプロセス管理、同時起動、ユーザー別のサービスツリー、粒状の cgroup 操作、柔軟な依存システム、dbus のペナルティを受けない起動時間を提供する init システムです。root レベルのサービスは `/service` にあるシンボリックリンクであり実際のサービスのディレクトリは `/etc/sv` にあります。詳しくは Runit のページを見て下さい。

## Cron

GUI 以外のシステム設定タスクの自動起動には Cron が使えます。

## シェル

コンソールやログイン時にプログラムを自動起動するために、シェルのスタートアップファイル・ディレクトリを使うことができます。シェルのドキュメントや ArchWiki の記事 Bash#Configuration file sourcing order at startup や Zsh (日本語)#アプリケーションの自動起動 を読んで下さい。

Wikipedia:ja:Unixシェル#主なUnixシェルの設定ファイル も参照のこと。

### /etc/profile

`/etc/profile` はログイン時に全ての Bourne 互換のシェルによって読み込まれます: ログイン時に環境変数を設定したり `/etc/profile.d/*.sh` スクリプトを実行してアプリケーション固有の設定を行ったりするのに使います。

## グラフィカル

ウィンドウマネージャやデスクトップ環境にログインした時に自動でプログラムを実行するよう設定することができます。

### X セッションのスタートアップ

xinitrc や xprofile を見て下さい。

### デスクトップアプリケーションの自動起動

以下のフォルダには `*.desktop` ファイルが含まれており、X セッションが起動したときに実行されます:

- `$XDG_CONFIG_DIRS/autostart/` (`/etc/xdg/autostart/` デフォルト)
- `/usr/share/gnome/autostart/` (GNOME のみ)
- `$XDG_CONFIG_HOME/autostart/` (`~/.config/autostart/` デフォルト)

ユーザー別の `~/.config/autostart/` フォルダに `*.desktop` ファイルをコピーすることでシステム全体の設定を上書きすることが可能です。

デスクトップファイルの仕様については Desktop Entry Specification に説明があります。使用するディレクトリの説明は Desktop Application Autostart Specification に詳しい記述がされています。

Note: この方法は XDG 互換のデスクトップ環境でしか使えません。dapper, dex-git, fbautostart などのツールは他の自動起動メカニズムが存在する限りでサポートされていないデスクトップ環境で XDG autostart を行うように使うことができます。xdg 互換の自動起動ツールを実行するには既存のメカニズムを使って下さい。

### GNOME, KDE, Xfce

GNOME, KDE, Xfce には自動起動の設定をするための専用の GUI が存在します、それぞれの記事を見て下さい。

### LXDE

LXDE (日本語)#プログラムの自動実行 を見て下さい。

### Fluxbox

Fluxbox (日本語)#プログラムの自動起動 を見て下さい。

### Openbox

Openbox (日本語)#スタートアッププログラム を見て下さい。

Category:

- Boot process (日本語)