web-dev-qa-db-ja.com

起動時にスクリプトを実行する

起動またはデスクトップの起動プロセス中にdebianでスクリプトを起動する最も簡単な方法は何でしょうか?

問題のスクリプトは、wifiに接続するための単一のコマンド(ifup wlan0)で構成されており、root権限が必要です。私のシステムは、Debianテスト、スリムログインマネージャー、およびウィンドウマネージャーとしてのjwmです。

私は以下を試しました:

  1. systemdで.serviceウェイを作成します。スクリプトを開始しますが、デスクトップログイン時にオフにして、その理由を理解できません。
  2. jwmで起動コマンドを使用していますが、ifupを起動するにはroot権限が必要なため、失敗します。
  3. コマンドを.bashrcファイルに入れます。上記と同じ
  4. スクリプトを/etc/rc5.dディレクトリに配置します。

これまで何も機能しませんでした。提案?

1
black-clover

他の誰かが知る必要がある場合に備えて、これが最終的に機能したものです。

  1. /etc/rc.localファイルを作成する
  2. chmod it 755
  3. 私が置いたrc.localファイルで:

コード:

#!/bin/sh -e
# This script is executed at the end of each multiuser runlevel

/path/to/my/script  

exit 0
3
black-clover

これは私にとってはうまくいきます:

cat > /etc/init.d/my-start-script <<EOL
#! /bin/bash
### BEGIN INIT INFO
# Provides:       my-start-script
# Required-Start:    \$local_fs \$syslog
# Required-Stop:     \$local_fs \$syslog
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: starts my-start-script
# Description:       starts my-start-script using start-stop-daemon
### END INIT INFO

# put your script here

exit 0
EOL
chmod 755 /etc/init.d/my-start-script
update-rc.d my-start-script defaults

再起動するたびにスクリプトが実行されます。 /bin/bashにはupdate-rc.dの後のコメントが必要です

0
user896993