ユーザーがgdmを介してログインしたときにいくつかの指示を実行するには、どのファイルを変更する必要がありますか?
試してみましたが、/etc/bashrc
bashを起動したときにのみ(そしてxtermを開くたびに)実行されます。ユーザーがログインしたときに一度だけ実行したいと思います。
私が望むのは、ユーザーがログインするたびにいくつかのユーザー設定(ウィンドウマネージャを含む)を「リセット」して、WMが初期化される前にスクリプトを実行する必要があることです。
答え1
私に最適なソリューションは、/etc/gdm/PostLogin/Default
ユーザーがgdmを使用してログインした直後に行われます。まさに私が望んでいたものです。
答え2
Debian とその派生物では修正できますが、普遍的なものではないと/etc/profile
思います。
答え3
マニュアルページから:
bashが--loginオプションを使用して対話型ログインシェルまたは非対話型シェルとして呼び出されると、まず/ etc / profileファイル(ファイルがある場合)からコマンドを読み取り、実行します。ファイルを読み込んだら、~/.bash_profile、~/.bash_login、~/.profile を順番に探して、存在して読み取れる最初のファイルからコマンドを読み込んで実行します。この動作は、シェルの起動時に --noprofile オプションを使用して無効にできます。
ログインシェルが終了すると、bashは〜/ .bash_logoutファイル(存在する場合)からコマンドを読み取り、実行します。
ログインシェルではなく対話型シェルを起動すると、bash は /etc/bash.bashrc および ~/.bashrc ファイルが存在する場合、そのコマンドを読み取り実行します。 --norcオプションを使用してこれを無効にできます。 --rcfile file オプションは、bash が /etc/bash.bashrc および ~/.bashrc の代わりにファイルからコマンドを読み込み、実行するように強制します。
ユーザーのWMを変更するには:kdm / gdm / xdm / slimを削除し、〜/ .xinitrcでWMを設定し、bash設定で "startx"を実行します。