陳腐な表現:

陳腐な表現:

私は最終的に作成音楽プレーヤーになるヘッドレスRaspberry Piシステムを実行しています。これで、起動時にjackdを実行しようとしていますが、どのように実行されるのかわかりません。

コマンドを実行できます。

jackd -R -dalsa

ジャックはすごい活躍を繰り広げました。ただし、これによりコンソールでコマンドを実行できなくなります。最後の数行は次のとおりです。

ALSA: final selected sample format for capture: 32bit integer little-endian
ALSA: use 2 periods for capture
ALSA: final selected sample format for playback: 32bit integer little-endian
ALSA: use 2 periods for playback

私もjackdをinit.dスクリプトに入れましたが、同じ問題が発生しました。私が望むのは、jackdが別のプロセスで起動される方法、または他の起動スクリプトまたはユーザーに「制御」を再提供する方法です。

他のデーモンを起動したいという点で、質問はコメントとは異なります。 (以前は知らなかったが今は合理的な選択のようです)

ベストアンサー1

ディストリビューションとバージョンによっては、次のことができます(従来の技術から最新の技術まで)。

陳腐な表現:

vi /etc/rc.local
cd /path/where/jackd/
jackd -R dalsa &>/dev/null &

新しい方法:

vi /etc/init.d/jack

(これを貼り付けてパスなどを修正してください。):

#!/bin/sh
#
# Startup script for Jack Daemon
#
# chkconfig: 2345 08 92
# description: Sample jackd init.d script.
# processname: jackd
# pidfile: /var/run/jackd/jackd.pid
# config: /etc/jackd.conf

# Source function library.
. /etc/rc.d/init.d/functions

# Source networking configuration.
. /etc/sysconfig/network

[ -x /usr/sbin/jackd ] || exit 0

# Local jackd config
# test -f /etc/sysconfig/jackd && . /etc/sysconfig/jackd

# See how we were called.
case "$1" in
  start)
        echo -n "Starting Jack Daemon: "
        daemon jackd
        RETVAL=$?
        echo
        [ $RETVAL -eq 0 ] && touch /var/lock/subsys/jackd
        ;;
  stop)
        echo -n "Stopping Jack Daemon: "
        killproc jackd
        rm -f /var/run/jackd/jackd.pid
        RETVAL=$?
        echo
### heres the fix... we gotta remove the stale files on restart
        [ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/jackd
        ;;
  status)
        status jackd
        RETVAL=$?
        ;;
  restart|reload)
        $0 stop
        $0 start
        RETVAL=$?
        ;;
  condrestart)
        [ -e /var/lock/subsys/jackd ] && $0 restart
        RETVAL=$?
        ;;
  *)
        echo "Usage: jackd {start|stop|status|restart|reload|condrestart}"
        exit 1
esac

exit $RETVAL

ここで上記の内容を保存し、次の操作を行います。

chkconfig --help

(使用情報を返却する必要があります)

chkconfig --add jackd
chkconfig --level 2345 jackd on

これで始める準備ができました。

陳腐な表現:

/etc/init.d/jackd start

新しい方法:

service jackd start

おすすめ記事