SSH를 통해 FBI에 명령을 보내는 방법은 무엇입니까?

SSH를 통해 FBI에 명령을 보내는 방법은 무엇입니까?

일부 이미지를 표시하는 데 사용합니다 fbi. , , 등과 fbi같은 일부 키보드 컨트롤을 사용하여 이미지를 제어할 수 있습니다.+-Page UpPage Down

키보드를 사용하는 대신 SSH를 통해 이러한 제어 명령을 fbi.

나는 다음을 시도했습니다 :

mkfifo /tmp/mycmd
fbi /myfolder/*.jpg < /tmp/mycmd &

이렇게 하면 fbi부팅이 실패합니다. 예를 들어 몇 가지 명령을 보내려고 했지만 echo . > /tmp/mycmd시작되지 않았고 다음 오류가 발생했습니다.

using "DejaVu Sans Mono-16", pixelsize=16.67 file=/usr/share/fonts/truetype/ttf-dejavu/DejaVuSansMono.ttf
ioctl VT_GETSTATE: Inappropriate ioctl for device (not a linux console?)

문제가 무엇입니까?

SSH를 통해 명령을 보내는 방법 fbi! ?

답변1

이미지를 표시하려면 fbiTTY에 대한 액세스가 필요합니다. 따라서 다음을 사용해야 합니다 -T 1.

fbi -d /dev/fb0 -T 1 zxcv.png

그것을 얻으면 를 access /dev/tty1: Permission denied사용하여 명령을 실행할 수 있습니다 sudo.

불행히도 나는 그것에 명령을 보내는 방법을 모릅니다. 나는 사용하려고티에호무언가를 보내지 /dev/tty1fbi충돌이 발생합니다. 귀하의 fifo방법도 작동하지 않는 것 같습니다.

답변2

나는 또한이 문제에 직면했습니다. 가상 터미널 1로 변경했는데 작동했습니다.

# Change to virtual terminal 1
chvt 1

# Make a dummy image with ImageMagick if you need one
magick -size 640x480 xc:red image.jpg

# Display on framebuffer
fbi -d /dev/fb0 -T 1 image.jpg

/dev/fb0문제가 있는 경우 실제로 프레임 버퍼인지, 쓰기 권한이 있는지 확인할 수 있습니다 .

cat /dev/random > /dev/fb0

화면이 무작위 색상의 픽셀로 덮여 있으면 /dev/fb0그것이 실제로 프레임 버퍼라고 추론할 수 있습니다.

당신이 얻을 경우"허가가 거부되었습니다"오류가 발생했습니다. 다시 시도해 주세요.

sudo cat /dev/random > /dev/fb0

작동하는 경우 권한을 변경하십시오 /dev/fb0. 예를 들면 다음과 같습니다.

sudo chmod 666 /dev/fb0

또는 관리자 권한 bash 셸을 시작하고 권한을 변경하고 모든 것을 한 번에 표시할 수 있습니다.

sudo bash -c "chvt 1; fbi -T 1 -d /dev/fb0 image.jpg"

그렇지 않으면 아무것도 얻지 못할 것입니다. 그런 경우에는 나보다 똑똑한 사람에게 물어봐야 할 것입니다. 많은 것들이 있습니다!

답변3

-d /dev/fb0와 함께 옵션을 사용해 보세요 fbi.

기본적으로 fbi사용해야 하는 프레임버퍼 장치는 사용 중인 가상 콘솔 장치를 보면 알 수 있습니다. 분명히 이 목적을 위해 표준 입력을 살펴봅니다. FIFO에서 표준 입력을 리디렉션하면 콘솔이 아닌 장치를 가져오고 계속할 수 없습니다. 사용할 프레임버퍼 장치를 명시적으로 지정하는 것이 도움이 될 수 있습니다.

프레임 버퍼 장치를 사용하는 데 필요한 권한이 있는 한 FIFO도 필요하지 않을 수도 있습니다. fbi -d /dev/fb0 /myfolder/*.jpg목적에 적합하다면 SSH 연결을 다시 시작하면 됩니다.

관련 정보