RCNG 스크립트:

RCNG 스크립트:

저는 FreeBSD + XBMC 기반 미디어 박스를 구축하려고 합니다. 한 가지를 제외하고는 모든 것이 잘 작동합니다.

RCNG 시작 스크립트로 XBMC를 시작해야 하는데 다음을 제외하면 모두 괜찮습니다.

X 및 XBMC를 시작하는 명령이 포그라운드에서 실행 중이면 모든 것이 제대로 작동합니다. &를 사용하여 백그라운드로 푸시되면 작동이 시작된 다음 getty 시작에 의해 쫓겨납니다(제 생각에는).

getty가 X를 죽이는 것을 막을 수 있는 방법이 있나요? 아니면 제가 완전히 잘못된 트리를 짖고 있는 건가요?


RCNG 스크립트:

#!/bin/sh
#
# $FreeBSD$
#
# PROVIDE: xbmc
# REQUIRE: sshd
# KEYWORD: shutdown
#
# Add the following line to /etc/rc.conf to enable xbmc:
#
# xbmc_enable="YES"
#
# You will also need to fill in the xbmc_flags="" variable to suit your configuration.
#

xbmc_enable=${xbmc_enable:-"NO"}
xbmc_flags=${xbmc_flags:-""}

. /etc/rc.subr

name=xbmc
rcvar=`set_rcvar`
#required_files="/usr/local/etc/xbmc.conf"

xbmc_start() {
        PATH=/bin:/usr/bin:/usr/local/bin:/sbin:/usr/sbin:/usr/local/sbin
        HOME=/root
        /usr/local/bin/xinit /usr/local/bin/xbmc       # adding & makes it all fail
}

start_cmd=xbmc_start

#command=/usr/local/bin/xbmcboot

load_rc_config $name
run_rc_command "$1"

한 가지 더 주의할 점은 화면이 눌려지면 화면이 망가진다는 것입니다. X.Org 시작 메시지의 첫 번째 부분이 표시됩니다. 그게 전부입니다. 로그인할 수 없고 제어할 수 없으며 X를 원격으로 다시 시작할 수도 없습니다.


이제 /etc/ttys에서 ttyv2 이상을 껐습니다. Xorg를 실행할 때 화면이 잠기는 것을 방지하지만(일반적인 getty 프롬프트 표시) 여전히 실행됩니다. 따라서 getty/init와 관련이 있어야 합니다.


좋아, 나는 이것이 getty 시작과 관련이 있다고 100% 확신합니다. x 세션을 시작하는 명령을 넣으면수면 5따라서 X 세션은 getty가 실행되기 시작할 때까지 실제로 시작되지 않으며 모든 것이 잘 작동합니다.

지금은 이 문제를 해결할 수 있지만 왜 이런 식으로 동작하는지 이해하고 부팅 친화적으로 만드는 것이 좋을 것입니다.

답변1

  • 나는 REQUIRE 라인이 누락되어 올바른 지점에서 시작한다고 생각합니다. 나는 다음과 같은 것을 시도 할 것입니다
# 요구사항: 시스템 콘솔에 로그인
  • /etc/ttys에 xdm/gdm/kdm과 같은 것이 구성되어 있습니까? /etc/ttys에서 프로그램을 시작해 볼 수도 있습니다.

관련 정보