i3 상태 정지

i3 상태 정지

저는 Debian 10에서 i3 Windows Manager를 실행하고 있고, 현재 집에서 일하고 있기 때문에 X2go를 통해 컴퓨터에 연결하고 있습니다.

Debian 9에서 Debian 10(최근 완료)으로 업그레이드한 이후 i3 상태 표시줄이 멈추고 i3을 "다시 로드"해야 하는데 이는 약간 고통스럽습니다.

이것은 내 .i3status.conf입니다.

general {
    interval        = 1
    colors          = true
    color_good      = '#88b090'
    color_degraded  = '#ccdc90'
    color_bad       = '#e89393'
}

# order += "volume master"
# order += "disk /"
# order += "disk /home"
# order += "disk /media/data"
# order += "ethernet br0"
# order += "cpu_temperature 0"
# order += "memory"
# order += "load"
order += "tztime local"

# ethernet br0 {
#     #if you use %speed, i3status requires root privileges
#     format_up = "%ip (%speed)"
#     format_down = ""
# }

tztime local {
    format = "%A %e.%B %H:%M:%S"
}

# load {
#     format = "%1min"
# }

# cpu_usage {
#     format = "%usage"
# }

# cpu_temperature 0 {
#   format = "%degrees°C"
# }

# disk "/" {
#   format = "/ %avail"
#   prefix_type = custom
# }

# disk "/home" {
#   format = "/home %avail"
#   prefix_type = custom
# }

# disk "/media/data" {
#   format = "/media/data %avail"
#   prefix_type = custom
# }

# volume master {
#     format = "VOL: %volume "
#     format_muted = "MUTE "
#     device = "default"
#     mixer = "Master"
#     mixer_idx = 0
# }

얼어붙으면 시간은 움직이지 않지만, 얼어붙은 날짜와 시간은 계속 볼 수 있습니다.

터미널에서 i3status를 실행해 보았는데 몇 주 동안 중단 없이 잘 실행되었습니다.

이것은 출력입니다(이것은 구성의 모든 설정을 활성화했을 때의 출력이며 그 이후에는 다시 시작할 필요가 없습니다).

 ~ % i3status
i3status: trying to auto-detect output_format setting
i3status: auto-detected "term"
/ 6.5 GB | /home 103.1 GB | /media/data 543.9 GB | 4.29 | Monday 28.September 09:10:16

문제를 재현할 수는 없지만 X2go를 종료할 때와 관련이 있을 수 있다고 생각합니다. X2go를 종료하면 세션이 백그라운드에서 계속 실행되고 다음 날 연결됩니다. 자, 이 상태에서는 보통 멈춥니다. 아마도 i3-status는 분리되어 있지만 여전히 X2go 세션을 실행하는 것을 좋아하지 않을 것입니다.

고쳐 쓰다

i3status.sh 스크립트를 실행한 후 퇴근 직후 X2go 연결을 끊었을 때 오류 메시지와 함께 실패했습니다.

i3status: trying to auto-detect output_format setting
i3status: falling back to "none"

내 구성에 다음을 추가했습니다 -> 테스트를 위한 일반 영역

    output_format = "i3bar"

업데이트: 강제 실패

X2go 원격 세션을 종료하고(백그라운드에서 실행 중인 상태로 유지) 커피를 끓인 후(5분) X2go 세션에 다시 참여하여 강제로 실패하도록 했습니다.

여전히 실패합니다. output_format이 i3bar로 강제 설정됩니다. 이제 i3status-err.log에 오류가 발생하지 않습니다.

다시 시작하려면 ++r을 눌러야 합니다.

답변1

상태 표시줄이 멈춘다면 프로세스가 충돌하여 종료되었을 수 있습니다. i3status문제가 다시 발생하면 실행 중인지 확인해야 합니다.

i3status자신만의 스크립트를 사용하여 문제를 해결할 수도 있습니다 .

i3 파일에서 자신의 스크립트로 config바꾸십시오 .status_command

# status_command i3status -c ~/.config/i3/i3status
status_command /home/YOURUSER/.config/i3/i3status.sh

생성 ~/.config/i3/i3status.sh(및 chmod +x):

#!/bin/bash
echo $(date) started >> /tmp/i3status.log
while :
do
    i3status 2> /tmp/i3status-err.log | while :
    do
        read line
        echo "$line"
        touch /tmp/i3status-last-seen.log
    done
    echo $(date) restarted >> /tmp/i3status.log
done

또는 i3status의 버그인 경우 다음 대안을 시도해 보십시오.

https://github.com/altdesktop/i3-dstatus

답변2

나는 또한이 문제에 직면했습니다. 내 경우에는 disk {액세스할 수 없는 NFS 마운트의 절 에 매달려 있었습니다 . 해당 조항을 삭제 ~/.config/i3status/config하고 수정했습니다.

관련 정보