라즈베리파이 VNC 설정

2021. 3. 8. 23:03·Raspberrypi
목차
  1. VNC (Virtual Network Computing)
  2. 라즈베리파이에서 vncserver 실행
  3. 다른 기기에서 접속
  4. 라즈베리파이 부팅 시 vncserver 자동 실행
  5. 참고

라즈베리파이 VNC 설정

VNC (Virtual Network Computing)

  • RFB 프로토콜 방식을 이용해 화면 정보를 서버에서 클라이언트로 전송한다.

    • RFB 프로토콜 (Remote Frame Buffer)

      • 프레임 버퍼 레벨에서 동작한다.

      • OS에 관계없이 모든 OS에서 프레임 단위로 통신한다.

  • SSH보다 느리지만 화면을 보고 싶을 때 유용하다.


라즈베리파이에서 vncserver 실행

  • 라즈비안에 기본적으로 vncserver 프로그램이 있기 때문에, 다음과 같이 입력해주면 바로 실행된다.

    vncserver
    VNC(R) Server 6.7.2 (r42622) ARMv6 (May 13 2020 19:34:10)
    Copyright (C) 2002-2020 RealVNC Ltd.
    RealVNC and VNC are trademarks of RealVNC Ltd and are protected by trademark
    registrations and/or pending trademark applications in the European Union,
    United States of America and other jurisdictions.
    Protected by UK patent 2481870; US patent 8760366; EU patent 2652951.
    See https://www.realvnc.com for information on VNC.
    For third party acknowledgements see:
    https://www.realvnc.com/docs/6/foss.html
    OS: Raspbian GNU/Linux 10, Linux 5.10.17, armv7l
    
    On some distributions (in particular Red Hat), you may get a better experience
    by running vncserver-virtual in conjunction with the system Xorg server, rather
    than the old version built-in to Xvnc. More desktop environments and
    applications will likely be compatible. For more information on this alternative
    implementation, please see: https://www.realvnc.com/doclink/kb-546
    
    Running applications in /etc/vnc/xstartup
    
    VNC Server catchphrase: "Flood optimal alias. Patrol Ramirez Spain."
                signature: b3-19-aa-c5-b2-82-33-bd
    
    Log file is /home/pi/.vnc/raspberrypi:1.log
    New desktop is raspberrypi:1 (192.168.0.10:1)
    • 마지막 줄의 192.168.0.10:1이 의미하는 것은 라즈베리파이 기기의 ip:디스플레이 번호 인 것 같다.
  • 옵션으로 해상도나 디스플레이 번호를 설정할 수 있다.

    vncserver -geometry 1280x1024 :3
    • -geometry 1280x1024 : 해상도를 설정한다.

    • :3 : 디스플레이 번호를 3번으로하여 서버를 연다.

  • 끄는 방법

    vncserver -kill :1
    • -kill :1 : 1번 디스플레이 서버를 끈다.

다른 기기에서 접속

  • VNC 뷰어를 설치해야 한다.

    • vncserver 명령어의 출력 결과 3번째 줄에 RealVNC 관련 언급이 있어서 해당 프로그램으로 실행해보기로 했다.

    • RealVNC 설치

      • https://www.realvnc.com/en/connect/download/viewer/

      • 무설치 버전을 선호해서, Standalone EXE x64 버전으로 다운받아서 실행했다.

  • VNC 뷰어를 실행하고, 주소를 입력하는 곳에다가 vncserver 명령어 출력 결과의 마지막 줄에 있던 ip:1을 입력한다. (위의 경우 192.168.0.10:1)

    • 포트번호처럼 :1을 썼지만, 이는 디스플레이 번호를 의미한다.

    • vnc의 기본 포트는 5900번이고, 여기에 디스플레이 번호를 더한게 포트 번호가 된다.

    • 즉 RealVNC에서 주소표시줄에 ip:1로 연결했을 경우 로그인 창에서도 나타나듯이 포트번호가 5901인 ip:5901로 연결된 것을 알 수 있다.

  • Continue를 클릭하고, 라즈베리파이를 설치했을 때 설정한 이름과 비밀번호를 입력하면 연결된다.

  • 한글 입력법은 링크 참고


라즈베리파이 부팅 시 vncserver 자동 실행

  • /etc/init.d/ 디렉토리에 스크립트를 작성해준다.

    • 서비스 간에 이름이 겹칠까봐 파일명을 myvnc로 만들었다.

    • vim으로 편집하는데, 방향키가 제대로 적용이 안되면 많이 불편하다.

    • root 권한이 아니면 저장할 수가 없어서 다음 명령어로 편집했다.

      sudo vi myvnc

      /etc/init.d/myvnc

      #!/bin/sh
      ### BEGIN INIT INFO
      # Provides:        vncserver
      # Required-Start:    networking
      # Required-Stop:    networking
      # Default-Start:    2 3 4 5
      # Default-Stop:        0 1 6
      # Short-Description:    Start/Stop vncserver
      ### END INIT INFO
      
      VNCUSER='pi'
      GEOMETRY="1280x1024"
      
      case "$1" in
        start)
        echo "Starting vncserver for $VNCUSER"
        su $VNCUSER -c "vncserver -geometry $GEOMETRY :1"
        ;;
      
        stop)
        echo "Stopping vncserver for $VNCUSER"
        su $VNCUSER -c "vncserver -kill :1"
        ;;
      
        restart)
        $0 stop
        $0 start
        ;;
      
        *)
        echo "Usage: /etc/init.d/myvnc {start | stop}"
        exit 1
        ;;
      esac
      
      exit 0
    • start, stop, restart 명령을 지원하는 스크립트이다.

    • 시작 시 1번 디스플레이 서버를 열도록 한다.

  • 시스템 시작 시 자동 실행 설정

    • 권한 변경 및 update-rc.d에 등록

      sudo chmod 755 /etc/init.d/myvnc
      sudo update-rc.d myvnc defaults
    • 나중에 해제하려면 다음 명령어를 입력한다.

      sudo update-rc.d myvnc remove
  • reboot 후 확인

    ls /etc/rc*.d | grep myvnc
    service myvnc status
    systemctl status myvnc

참고

  • https://webnautes.tistory.com/549
  • https://blog.naver.com/godnanai/220836579448
  • 서비스 등록 및 삭제 : https://code-factory.tistory.com/37
저작자표시 (새창열림)

'Raspberrypi' 카테고리의 다른 글

라즈베리파이 부팅 시 자동 실행  (0) 2021.03.13
라즈베리파이에서 리액트 작업 환경 설정  (0) 2021.03.09
라즈베리파이 USB 마운트 해제  (0) 2021.03.09
라즈베리파이 Nginx 설치  (0) 2021.03.09
라즈베리파이 SSH 설정  (0) 2021.03.09
  1. VNC (Virtual Network Computing)
  2. 라즈베리파이에서 vncserver 실행
  3. 다른 기기에서 접속
  4. 라즈베리파이 부팅 시 vncserver 자동 실행
  5. 참고
'Raspberrypi' 카테고리의 다른 글
  • 라즈베리파이에서 리액트 작업 환경 설정
  • 라즈베리파이 USB 마운트 해제
  • 라즈베리파이 Nginx 설치
  • 라즈베리파이 SSH 설정
Caniro
Caniro
  • Caniro
    Minimalism
    Caniro
  • 전체
    오늘
    어제
    • 분류 전체보기 (317)
      • Algorithm (13)
        • 알기 쉬운 알고리즘 (10)
        • Search (1)
        • Sort (2)
      • Arduino (0)
      • C++ (185)
        • Class (46)
        • Exception (6)
        • Library (51)
        • Overloading (10)
        • SmartPointer (5)
        • Syntax (33)
        • TBC++ (23)
        • Templates (9)
        • VisualStudio (2)
      • Embedded (1)
      • Git (4)
      • Java (5)
      • Linux (16)
        • Error (1)
        • Linux Structure (11)
      • MacOS (7)
      • OS (1)
        • Concurrency (1)
      • Python (21)
        • Class (1)
        • Function (2)
        • Syntax (17)
      • Raspberrypi (9)
      • Review (1)
      • Utility (12)
        • VSCode (5)
        • VirtualBox (3)
      • Web (8)
        • Nginx (1)
        • React (3)
        • Django (1)
      • Windows (20)
        • Registry (3)
        • WSL (1)
        • DeviceDriver (6)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    제외
    스프링
    SFC
    시스템 복구
    windows
    Workspace
    spring
    윈도우
    로지텍 마우스 제스처
    citrix workspace
    EXCLUDE
    그림판
    Windows 11
    java
    unix
    MacOS
    vscode
    Solaris 10
    윈도우 명령어
    백기선
    스프링 프레임워크 핵심 기술
    SunOS 5.1
    mspaint
    logi options
    KakaoTalk
    알림
    dism
    맥북 카카오톡 알림 안뜸
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
Caniro
라즈베리파이 VNC 설정

개인정보

  • 티스토리 홈
  • 포럼
  • 로그인
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.