포트폴리오를 직접 배포해고 싶은 마음에 .. 옛날에 제작했던 로봇에 달려있는 라즈베리파이4를 훔쳐와 Ubuntu 를 설치하였습니다.
단기 목표는 배포 연습겸 docker compose 를 활용하여 nginx 를 설치하여 하려고 합니다.
중기 목표는 아이클라우드와 같이 사진을 저장하는 클라우드를 구축할 계획이며
장기 목표는 NAS 구축까지 해보려고 합니다.
1. 필수 재료
옛날 기억으로는 hdmi 선이 없어도 Ubuntu 이미지 생성시 SSH 설정 방법이 있었는데 .. (실제로 구글링에 나오고),근데 아무리 설정해봐도 원인을 못찾아서 결국 micro-hdmi 선을 구매하여 설치하게 되었습니다.
- 라즈베리파이
- Ubuntu 를 설치할 MicroSD 카드
- Micro-HDMI, 마우스 ,키보드
- 5V 4A 전원선
2-1. 라즈베리파이 이미지 생성
https://www.raspberrypi.com/software/ 에 접속하여 라즈베리파이 이미지 다운로더를 설치합니다. 필자는 맥북 유저라 macOS 로 다운 받았습니다.
라즈베리파이 디바이스, 운영체제, 저장소를 설정해주면 됩니다. 필자는 라즈베리파이4에 Ububtu 22.04.5 LTS 를 설정한 뒤에 설치하였습니다. 원래라면 여기서 다음을 누르기 전에 하단에 톱니바퀴 모양으로 SSH 설정있다고 하는데 .. macOS 라서 그런지 없어서 직접 설정해주기로 하고 이미지를 생성하였습니다.
2-2. SSH 설정
hdmi 없이 SSH 통해 라즈베리파이에 접근하기 위해 network-config
를 다음과 같이 설정하였습니다.
(tmi : hdmi 선을 구매했는데 배송오는데 시간이 걸리기도 했고, 가장 중요한건 분명 Micro-hdmi 를 샀는데 ;; Mini-hdmi 가 배송되어 그 전에 SSH 설정으로 들어가보고자 시도하였습니다.)
1. 부팅을 위한 파티션인 system-boot 볼륨에 접근합니다.
cd /Volumes/system-boot
2. 해당 디렉토리 내에서 network-config
파일을 생성합니다.
touch network-config
3. 생성된 network-config 파일을 열고, 다음과 같이 내용을 작성합니다.
여기서 "You_SSID" 는 실제 사용할 WIFI의 SSID, "Your_Password" 에는 비밀번호를 입력합니다.
ethernets:
eth0:
dhcp4: true
wifis:
wlan0:
dhcp4: true
optional: true
access-points:
"Your_SSID":
password: "Your_Password"
4. SSH 로 접근하기 위해, system-boot 디렉토리에 빈 ssh 파일을 추가합니다.
touch ssh
5. SD 카드 제거 후에 라즈베리파이 부팅 !
2-3. 변수 발생
해당 방법을 활용하여 설치를 했음에도 SSH 접근이 불가능 했습니다. 구글링을 통해 다음과 같은 원인들을 찾았는데 ,
- Q : SSH 파일이 올바르게 생성되지 않았을 수 있다.
A : /Volumes/system-boot/ssh 파일이 제대로 되어 있는것을 확인 - Q : WiFi 설정 오류, SSID 에 띄어쓰기가 포함되어 있다면 반드시
(" ")
으로 감싸야 한다.
A : 큰따음표에 설정이 잘 되어 있는것을 확인 - Q : 포트 충돌 또는 방화벽 문제
A : 포트포워딩 및 방화벽 설정 확인
다음과 같은 원인들이 있을 수 있다는 것을 보았으나 제대로 설정되어 있었고, https://www.reddit.com/r/Ubuntu/comments/v0ff1r/ubuntu_2204_server_wont_boot_without_hdmi_plugged/ 를 확인해보면 hdmi가 없이 부팅이 안되는 경우도 있다고 하여 혹시 몰라 유선으로 시도하였더니 유선 IP에 할당되어 있는것을 확인했습니다.
그렇다면 라즈베리파이는 정상적으로 부팅이 되었다는 것이기 때문에 다시 SSH 로 접근을 시도 하였더니 이번엔 권한 문제로 접근하지 못하였습니다. 권한 문제를 해결하기 위해선 라즈베리파이에서 수정하던지 cloud-init
설정을 수정하면 된다고 하여 수정하려는 찰나에 hdmi 선이 배송되어 일단, SSH 설정은 그만 두었습니다.
현재 는 포트폴리오를 배포하는 것이 주 목표이기 때문에 배포 후에 sd 카드를 새로 구매하여 다시 한번 시도해 볼 예정입니다...
'라즈베리파이 가지고 놀기' 카테고리의 다른 글
라즈베리파이에 Object Storage Minio 설정하기 (3) | 2024.10.29 |
---|---|
외부에서 도메인으로 접속 가능하게 설정하기 (4) | 2024.10.22 |
docker compose 설정 변경하기 (0) | 2024.10.18 |
라즈베리파이4에 nginx 올리기 (1) | 2024.10.18 |
라즈베리파이4에 wg-easy VPN 설정하여 외부에서 접속하기 (6) | 2024.10.18 |