KDM을 시작하는 스크립트 (그렇지 않은 경우)

debianlight_kdm

어제 내 데비안 위지 내 사용자 정의 저장소 KDE 4.10 이전에 잘 작동했다면 지금은 훨씬 더 나아 졌다고 말해야합니다.

내가 가진 유일한 문제는 KDM에 관한 것이 었는데, 자동으로 시작되지 않았기 때문에 전혀 설치되지 않은 것으로 보입니다. 다른 PC에 동일한 저장소를 사용하여 동일한 설치를 수행했기 때문에 내 관심을 끄는 무언가는 좋아.

문제의 원인을 찾고 파일이 생성되지 않았 음을 감지했습니다. /etc/init.d/kdm 내부에 있어야합니다.

#! / bin / sh -e ### BEGIN INIT INFO # 제공 : kdm # Required-Start : $ local_fs $ remote_fs # Required-Stop : $ local_fs $ remote_fs # Should-Start : console-screen kbd acpid dbus hal krb5- kdc # Should-Stop : console-screen kbd # Default-Start : 2 3 4 5 # Default-Stop : 0 1 6 # 간단한 설명 : KDE 용 X 디스플레이 관리자 # 설명 : KDM은 X 서버 모음을 관리합니다. 로컬 호스트 또는 원격 시스템에 있어야합니다.
 ### END INIT INFO # /etc/init.d/kdm : X 디스플레이 관리자 시작 또는 중지 # xdm 패키지에서 원래 도난당한 스크립트 # # 설명 : K Display Manager # # LSB init 함수를 가져옵니다.  / lib / lsb / init-functions # [-r / etc / default / locale] 인 경우 로케일 설정; 그때.  / etc / default / locale export LANG LANGUAGE fi # 기본 디스플레이 관리자가 아니더라도 kdm을 시작하려면 # HEED_DEFAULT_DISPLAY_MANAGER를 "false"로 변경하십시오.
 HEED_DEFAULT_DISPLAY_MANAGER = true DEFAULT_DISPLAY_MANAGER_FILE = / etc / X11 / default-display-manager PATH = / bin : / usr / bin : / sbin : / usr / sbin DAEMON = / usr / bin / kdm PIDFILE = / var / run / kdm.pid UPGRADEFILE = / var / run / kdm.upgrade setup_config () {# kdm 사용자 정의를 지원하는 매개 변수 KDMRC = / etc / kde4 / kdm / kdmrc BACKGROUNDRC = / etc / kde4 / kdm / backgroundrc # kdmtheme 또는 기타 도구에 의해 구성이 변경된 경우 , magick를하지 마십시오 if grep -q "^ [[: space :]] * Theme = @@@ ToBeReplacedByDesktopBase @@@"$ {KDMRC}; then KDMOVERRIDEDIR = / etc / default / kdm.d KDMCFGDIR = / var / run / kdm KDMCFG = $ KDMCFGDIR / kdmrc BACKGROUNDCFG = $ KDMCFGDIR / backgroundrc DEFAULT_KDM_THEME = / kdmx / ariya-apps / kdmx / share / testiya-THEME / share / testiya-THEME / 공유 / 앱 / kdde4 $ DAEMON || exit 0 # 자동 로그온이 런레벨에 종속되도록하려면 주석 해제 #test "$ runlevel"|| {runlevel =`runlevel`; 런레벨 = $ {런레벨 # *}; } #test "$ 런레벨"= 4 && ARG = -autolog || ARG = -noautolog # 주석 해제, syslog에서 많은 디버그 정보를 원하면 #ARG = "$ ARG -debug 255"# 대체 kdm 마스터 구성 파일을 사용합니다. ARG = "$ ARG -config $ KDMCFG"# kdm을 생성합니다. 설정 파일 genkdmconf --in $ KDMCFGDIR 1> / dev / null # 소스 오버라이드.  run-parts는 예측 가능한 순서로 목록을 정렬합니다. if [-d "$ KDMOVERRIDEDIR"]; $ (run-parts --list "$ KDMOVERRIDEDIR"2> / dev / null || true); 씨.  "$ part"done fi # kdm 구성 파일을 업데이트합니다 (재정의 된 값만) [-n "$ USEBACKGROUND"] && sed -i "s | ^ # \? UseBackground =. * | UseBackground = $ USEBACKGROUND |" $ KDMCFG [-n "$ BACKGROUNDCFG"] && sed -i "s | ^ # \? BackgroundCfg =. * | BackgroundCfg = $ BACKGROUNDCFG |" $ KDMCFG [-n "$ USETHEME"] && sed -i "s | ^ # \? UseTheme =. * | UseTheme = $ USETHEME |" $ KDMCFG [-n "$ THEME"] && [-e "$ THEME"] && sed -i "s | ^ # \? 테마 =. * | 테마 = $ 테마 |" $ KDMCFG [-n "$ LANGUAGE"] && sed -i "s | ^ # \? 언어 =. * | 언어 = $ LANGUAGE |" $ KDMCFG if grep -q "^ [[: space :]] * Wallpaper = stripes.png"$ {BACKGROUNDRC}; then [-n "$ WALLPAPER"] && [-e "$ WALLPAPER"] && sed -i "s | ^ # \? Wallpaper =. * | Wallpaper =`readlink -f $ WALLPAPER` |" $ BACKGROUNDCFG fi # usetheme는 이제 "기본적으로"설정되어 있으므로 Theme가 유효하지 않은지 확인해야합니다 ...
 sed -i "s | @@@ ToBeReplacedByDesktopBase @@@ | $ DEFAULT_KDM_THEME |" $ {KDMCFG} # 자동 로그인 재정의는 라이브 데비안 환경에 유용합니다. if [-n "$ AUTOLOGINUSER"]; 그런 다음 sed -i "s | ^ # \? AutoLoginEnable =. * | AutoLoginEnable = true |" $ KDMCFG sed -i "s | ^ # \? AutoLoginUser =. * | AutoLoginUser = $ AUTOLOGINUSER |" $ KDMCFG fi [-n "$ AUTOLOGINDELAY"] && sed -i "s | ^ # \? AutoLoginDelay =. * | AutoLoginDelay = $ AUTOLOGINDELAY |" $ KDMCFG [-n "$ AUTOLOGINAGAIN"] && sed -i "s | ^ # \? AutoLoginAgain =. * | AutoLoginAgain = $ AUTOLOGINAGAIN |" $ KDMCFG [-n "$ AUTOLOGINLOCKED"] && sed -i "s | ^ # \? AutoLoginLocked =. * | AutoLoginLocked = $ AUTOLOGINLOCKED |" $ KDMCFG fi return 0} # 데몬을 업그레이드했다면 inode가 변경되었으므로 # start-stop-daemon에 --exec 인수를 사용할 수 없습니다. 여기서 위험은 # 데몬이 죽고 pidfile이 정리되지 않은 상황에서 # 다른 프로세스가 해당 pid 아래에서 실행되고 # start-stop-daemon이 무고한 프로세스에 신호를 보내는 것입니다. 그러나 이것은 코너 케이스처럼 보입니다.
 # C'est la vie!
 if [-e $ UPGRADEFILE]; then SSD_ARGS = "-pidfile $ PIDFILE --startas $ DAEMON"else SSD_ARGS = "-pidfile $ PIDFILE --exec $ DAEMON"fi still_running () {if expr "$ (cat / proc / $ DAEMONPID / cmdline 2> / dev / null) ":"$ DAEMON "> / dev / null 2> & 1; then true else # 데몬이 자신의 pidfile을 제거하지 않으면 우리는 rm -f $ PIDFILE $ UPGRADEFILE false fi; } case "$ 1"in start) setup_config if [-e $ DEFAULT_DISPLAY_MANAGER_FILE] && [ "$ HEED_DEFAULT_DISPLAY_MANAGER"= "true"] && [ "$ (cat $ DEFAULT_DISPLAY_MANAGER_FILE)"! = "$ DAEMON"]; then log_action_msg "K 디스플레이 관리자 (kdm)를 시작하지 않습니다. 기본 디스플레이 관리자가 아닙니다."
 else log_daemon_msg "K 디스플레이 관리자 시작" "kdm"if start-stop-daemon --start --quiet $ SSD_ARGS-$ ARG; then log_end_msg 0 else log_action_end_msg 1 "이미 실행 중"fi fi ;; 재시작) /etc/init.d/kdm stop if [-f $ PIDFILE]; 다음 if still_running; 그런 다음 종료 1 fi fi /etc/init.d/kdm start ;; reload) log_action_begin_msg "K Display Manager 구성 다시로드 중 ..."
 if start-stop-daemon --stop --signal 1 --quiet $ SSD_ARGS; then log_action_end_msg 0 else log_action_end_msg 1 "kdm이 실행되지 않음"fi ;; 강제 다시로드) /etc/init.d/kdm 다시로드 ;; stop) log_action_begin_msg "K 디스플레이 관리자 중지 : kdm"if [!  -f $ PIDFILE]; then log_action_end_msg 0 "실행되지 않음 ($ PIDFILE을 찾을 수 없음)"exit 0 else DAEMONPID = $ (cat $ PIDFILE | tr -d '[: 공백 :]') KILLCOUNT = 1 if [!  -e $ UPGRADEFILE]; 다음 경우 start-stop-daemon --stop --quiet $ SSD_ARGS; then # kdm의 시그널 핸들러에게 숨을 쉴 수 있도록 잠시 시간을줍니다 1 else log_action_cont_msg "not running"fi fi while [$ KILLCOUNT -le 5]; still_running이면 수행하십시오. then kill $ DAEMONPID else break fi sleep 1 KILLCOUNT = $ (($ KILLCOUNT + 1)) done if still_running; then log_action_cont_msg "TERM 신호에 응답하지 않음 (pid $ DAEMONPID)"else rm -f $ UPGRADEFILE fi fi log_action_end_msg 0 ;; 상태) status_of_proc -p "$ PIDFILE" "$ DAEMON"kdm && exit 0 || $를 종료 하시겠습니까?
이 파일이 다른 PC에 있다고 말했지만 어제 밤에 볼 수 없었습니다. 다른 대안을 보여 드리겠습니다.

내가 찾은 해결책은 KDM 또는 시작하려는 다른 응용 프로그램에 사용되는 자체 시작 스크립트를 만드는 것이 었습니다. 여기에는 다음이 포함됩니다.

#! / bin / sh 경로 = / sbin : / bin. /lib/init/vars.sh. / lib / lsb / init-functions case "$ 1"in start | "") / usr / bin / kdm ;; 중지) # 작동하지 않음 ;; *) echo "사용법 : kdm [start | stop | restart]"> & 2 exit 3 ;; 그 C

이제 KDM을 자동으로 시작하려면 해당 스크립트를 활성화해야하므로 RCConf 그것을 위해. 그리고 준비. 그러나 원래 😛를 사용하는 것이 좋습니다.


코멘트를 남겨주세요

귀하의 이메일 주소는 공개되지 않습니다. 필수 필드가 표시되어 있습니다 *

*

*

  1. 데이터 책임자 : Miguel Ángel Gatón
  2. 데이터의 목적 : 스팸 제어, 댓글 관리.
  3. 합법성 : 귀하의 동의
  4. 데이터 전달 : 법적 의무에 의한 경우를 제외하고 데이터는 제 XNUMX 자에게 전달되지 않습니다.
  5. 데이터 저장소 : Occentus Networks (EU)에서 호스팅하는 데이터베이스
  6. 권리 : 귀하는 언제든지 귀하의 정보를 제한, 복구 및 삭제할 수 있습니다.

  1.   비키

    sddm이라는 kdm의 대안을 사용하고 있습니다.

    1.    엘라 브

      흠. 그녀를 몰랐어요 .. 볼게요.

    2.    엘라 브

      쓰레기 !!! GLIBC 2.14가 필요하고 Debian에서는 2.13 ¬_¬이 필요합니다.

  2.   st0rmt4il

    음, 괜찮아 보입니다. D .. elav, 다른 환경을 포함하고 해당 스크립트를 유효하게 사용하려면 사용하려는 창 관리자의 이름을 변경해야합니다.

    안녕하십니까!

  3.   에르 도사 인 9

    안녕하세요.
    기사 자체와는 아무 관련이 없지만 "Wheezy를 설치 한 후 수행 할 작업"을 수행 할 수 있습니까?
    설치하는 데 몇 가지 문제가 발생했기 때문입니다. 예를 들면 :
    1-Wi-Fi 네트워크가 자체적으로 설치되지만 설치가 완료되면 Wi-Fi 연결이 없으며 네트워크를 관리하는 프로그램도 없습니다. (끝에 직접 콘솔에서 수동으로 연결했지만 설치하는 동안 Wi-Fi에 연결하는 사람이 있고 네트워크 관리자를 설치하지 않는 것 같습니다 ... 또는 뭔가 ...)
    2- 설치가 선택한 언어로되어 있지만 시스템이 영어로 설치됩니까? 나는 그것을 고치는 방법을 모른다 ...

    그리고 글쎄, niente piu ... 당신의 경험으로 이것을 확장하고 게시물을 만들 수 있다면 그것은 나에게 매우 유용 할 것입니다 hehe ... (나는 다른 사람들도 상상합니다).
    안녕하십니까!

    1.    엘라 브

      흠, 어떤 데스크탑 환경을 사용하십니까? KDE ..

      1.    에르 도사 인 9

        당신은 아주 잘 추측합니다. 예, 저는 KDE를 사용하지만 실제로는 데비안 세계에 빠지고 있습니다 ... 어떤 환경을 권장합니까?
        크런치 방에 잠시 머물기 전에는 ... 그것이 얼마나 안정적인지에 매료되어 데비안을 기반으로했기 때문에 데비안에 자신을 던진 이유라고 생각했습니다 ... 선택하기 위해 KDE를 선택했습니다 ... 하나를 추천 하시겠습니까?
        그리고 내가 언급 한 것은 KDE에서만 발생합니까?

        인사말 및 감사

  4.   Jairo

    안녕하세요
    나는 당신의 기사를 읽었고 KDE를 사용하는 데비안 wheezy에 문제가 있고 그것이 같은지 모르겠습니다. 나는 미친 듯이 해결책을 찾고 포럼에서 물었지만 아무도 이유를 말할 수 없습니다. 오류는 Grub을 통과 한 후이 텍스트 줄이 표시된 후에도 검은 화면에 남아 있기 때문에 데비안이 시작되지 않는 경우가 있습니다 (세 번째) :

    / dev가 완전히 채워지기를 기다리는 중

    내 컴퓨터는 ASUS K93SV 노트북입니다.
    인텔 코어 i7 2670QM
    오류가 항상 발생하는 것은 아닙니다. 이런 일이 발생하면 강제로 종료하고 다시 시작해야합니다.

    1.    엘라 브

      빠른 Google 검색 결과가 나에게 반환되었습니다.

      http://www.esdebian.org/foro/28882/waiting-for-dev-to-be-fully-populated

      그것이 당신을 해결하는지 말하십시오.

      1.    Jairo

        나는 전체 게시물을 읽었지만 내 menu.list를 확인했고 그 대화에 나타나는 것과 완전히 다르기 때문에 감히 그렇게 할 수는 없습니다.

  5.   cooper15

    이 Elav는 항상 흥미로운 스틱을 게시합니다. 저는 그 문제가 있으므로 LightDM을 사용하고 있습니다. 그건 그렇고 꽤 잘 작동하지만이 스크립트 (이상한 KDM)가 저에게 효과가 있는지 살펴 보겠습니다. 기여해 주셔서 감사합니다 😉