어차피 SSH 연결해서 쓸텐데, 첫 연결시에 모니터와 키보드 마우스를 연결해야하는게 너무 귀찮고 번거로웠다.


headless 설치법을 발견해서 정리.


1. SSH 활성화

컴퓨터에서, 라즈베리파이 부트 파티션 루트에 ssh 파일을 생성


2. 와이파이 연결 설정

마찬가지로 루트에 wpa_supplicant.conf 파일 생성 후 아래 내용 입력

ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
network={
	ssid="<ssid>"
	psk="<password>"
}


3. SSH 연결

pi@raspberrypi.local 로 ssh 연결 시도.

비밀번호는 raspberry

passwd


hostname 변경

그냥 raspi-config 로 바꾸는게 낫다


sudo raspi-config

 -> 2 Network Options - N1 Hostname


timezone 변경

sudo timedatectl set-timezone Asia/Seoul



99. (내가 편할려고 쓰는) 기타


apt 리포지토리 변경

/etc/apt/sources.list


deb http://ftp.kaist.ac.kr/raspbian/raspbian/ stretch main contrib non-free rpi


apt 기본


sudo apt update
sudo apt upgrade

sudo apt install vim screen


Kodi 설치

sudo apt install kodi


Heroku는 Git 을 기반으로 패키지를 업로드한다.

프로젝트와 git 은 이미 만들어져있다고 가정하고, 해당 디렉토리 아래에서 진행한다.


참고로 Python 3.6


0. Prerequisite

heroku cli 바이너리가 필요한데, 맥에서는 그냥 brew 로 설치가능하다.

$ brew install heroku


Python 버전은 3.6 그리고 virtualenv 패키지가 여러개가 있는데, heroku 는 pipenv 를 쓰는 듯?

$ pip install pipenv


$ pipenv install

로 현재 경로에 virtualenv 환경을 만들고,

$ pipenv shell

을 입력하면 알아서 source 해준다.


1. virtualenv 패키지 설치

$ pipenv install 패키지명

으로 설치하면 Pipfile 에 알아서 넣어줌. 다른 방법은 모르겠음.


gunicorn 도 venv 안에 깔아줘야하는지 모르겠지만, 난 그냥 깔아줬다.


그리고 $ pipenv lock 을 하면 PipfilePipfile.lock 파일을 만들어주는데, 이것 역시 git 에 추가해주자.


2. Procfile 생성

heroku 에서 run 할때 어떤 command 를 실행해야하는지를 알려주는 파일이다.

나의 경우 
web: gunicorn flask_app:app
이렇게 한줄만 있으면 되었음.

web 은 heroku 서비스 관련 예약어이고, 그 뒤론 명령어인데
gunicorn 이란 wsgi 패키지를 이용하는 듯.

난 flask_app/__init__.py 의 형태지만,
프로젝트 루트의 flask_app.py 안에 app = Flask(name) 같은 형태도 가능하다.

마찬가지로 git 에 추가.

3. heroku cli

우선 로그인을 하자
$ heroku login

$ heroku local
로 현재 웹을 테스트 해볼 수 있다.

프로젝트 생성은
$ heroku create

이후 소스 푸시 및 빌드는
$ git push heroku master

$ heroku open

하면 주소가 열린다.


기존에 쓰던 맥북을 서버용도로 쓰려고 남겨 뒀는데, 활용도가 크지 않아 판매 후 NAS를 하나 사려다가,

어떤 제품을 고를지 머리 아파져서 그냥 Xpenology 란걸 사용하기로 했다.

데이터 용량이 크게 많이 필요한 것도 아니라서...


Xpenology 는 Synology의 핵펌인 듯


불친절 주의.

아래에서 참고를 했으니 친절을 원하면 저곳으로 가자.


1. VirtualBox 설치

알아서 설치하자


2. Jun's mod 및 DSM(Synology 펌웨어) 다운로드

정식 다운로드 경로는 잘 모르겠고, 여기저기 블로그에서 다운로드 링크를 제공한다.

나는 download.iroot.kr 에서 설치했다.


최신버전은 안될 수도 있다해서 그냥 이 곳에 있는걸 그대로 사용했다.



3. img 변환

부트로더인 synoboot.img 을 .vmdk(VMWare) 혹은 .vdi(VirtualBox)로 변환할 필요가 있다.

맥에 VirtualBox 를 설치했을테니, 

$ VBoxManage convertdd synoboot.img synoboot.vdi --format VDI

로 간단하게 변경하자.


4. VirtualBox 에서 이미지 생성

스샷도 찍어뒀지만... 귀찮다.


대충 아래와 같이 진행하면 된다.

  1. Linux (Other Linux 64-bit)로 생성
  2. RAM 1GB 이상(난 4GB)
  3. 하드디스크 추가 없이 생성
  4. 생성된 이미지 설정
    1. 프로세서 적당히 바꿔주기
    2. 저장소에서 IDE 제거하고
      1. SATA - synoboot.vdi 연결
      2. SCSI - 데이터용 하드 생성
    3. 오디오 사용안함
    4. 네트워크는 첫번째 어댑터는 NAT, 두번째 어댑터를 브리지 모드 (왜 이래야하는지 모르겠지만 이래야 잘됨)
  5. 시작
  6. find.synology.com 접속해서 기다리기
    • 네트워크 설정 때문에 2개가 나올 수 있는데, 무시하고 아무거나 하나 선택하면 됨
  7. 설정 쭉쭉하면 끗


+ Recent posts