아래는 읽기-쓰기 문제와 Arch Linux ARM에서 패키지 설치 오류 해결 방법을 추가하여 업데이트한 문서입니다.
# PikVM External Access Troubleshooting
이 문서는 PikVM에 외부에서 접속이 불가능할 때 문제 해결 과정을 정리한 것입니다.
---
## 1. 기본 포트 정보
PikVM은 기본적으로 다음 포트를 사용합니다:
- **443 (HTTPS)**: 웹 인터페이스 보안 접속.
- **80 (HTTP)**: 웹 인터페이스 비보안 접속 (선택적).
- **22 (SSH)**: SSH 원격 접속.
외부에서 접근할 때는 **443** 포트를 사용하는 HTTPS를 권장합니다.
---
## 2. 문제 해결 과정
### 2.1 읽기-쓰기 오류 해결
파일 시스템이 읽기 전용으로 마운트되어 패키지 설치나 설정 파일 변경이 불가한 경우, 다음 단계를 통해 문제를 해결할 수 있습니다.
1. **파일 시스템을 읽기-쓰기 모드로 마운트**합니다.
```bash
mount -o remount,rw /
파일 시스템 상태 확인: dmesg 명령어로 파일 시스템 오류를 확인할 수 있습니다.
dmesg | grep "EXT4-fs error"
파일 시스템 복구 (필요 시): 다른 컴퓨터에서 SD 카드를 연결해 fsck 명령으로 파일 시스템을 검사하고 복구합니다.
sudo fsck -y /dev/sdX # 'sdX'는 SD 카드의 장치 이름입니다.
패키지 설치 시 "unable to lock database" 또는 "target not found" 오류가 발생하는 경우, 다음을 확인하세요.
패키지 데이터베이스 업데이트: 패키지 데이터베이스가 최신 상태인지 확인합니다.
sudo pacman -Syu
미러 서버 설정 변경: mirrorlist 파일을 수정하여 다른 Arch Linux ARM 미러 서버를 우선 순위로 설정합니다.
sudo nano /etc/pacman.d/mirrorlist
mirror.archlinuxarm.org 대신 다른 미러 주소를 추가합니다. 예:
Server = http://de4.mirror.archlinuxarm.org/$arch/$repo
패키지 재설치: 문제가 있는 패키지를 제거하고 다시 설치합니다.
sudo pacman -R ufw # 예: ufw 제거
sudo pacman -S ufw # ufw 재설치
외부에서 PikVM에 접속하려면 라우터 포트 포워딩이 올바르게 설정되어야 합니다.
192.168.1.1 또는 192.168.0.1).192.168.1.100)PikVM 웹 서비스가 정상적으로 실행 중인지 확인합니다.
sudo systemctl status kvmd
서비스가 실행 중이 아니라면 다음 명령어로 재시작합니다.
sudo systemctl restart kvmd
PikVM의 방화벽 설정에서 포트 443을 차단하고 있을 수 있습니다. iptables를 사용하여 포트를 열고 규칙을 영구적으로 저장합니다.
sudo iptables -A INPUT -p tcp --dport 443 -j ACCEPT
sudo iptables-save > /etc/iptables/iptables.rules
sudo systemctl enable iptables
sudo systemctl start iptables
이제 재부팅 후에도 iptables 규칙이 유지됩니다.
SSL 인증서 설정에 문제가 있을 경우, HTTPS 접속이 불가할 수 있습니다. PikVM에서 Let's Encrypt 인증서를 설정하는 명령어를 사용하여 인증서를 재설정할 수 있습니다.
sudo kvmd-letsencrypt
접속 문제의 원인을 더 찾기 위해 네트워크 도구를 사용하여 진단할 수 있습니다.
ping 명령어로 PikVM에 접근 가능한지 확인합니다:
ping <PikVM_IP>
traceroute 명령어로 라우터와 PikVM 간 경로에 문제가 없는지 확인합니다.
traceroute <PikVM_IP>
외부 접속이 계속 불가할 경우, 인터넷 서비스 제공업체(ISP)에서 포트 443을 제한하고 있을 수 있습니다. 이 경우, ISP에 문의하거나 VPN을 설정해 안전하게 외부 접속을 구성할 수도 있습니다.
위의 단계들을 순서대로 확인하고, 네트워크 설정을 재검토하여 외부 접속 문제를 해결할 수 있습니다. 네트워크 구성 문제나 방화벽 설정이 대부분의 원인이므로 이를 우선적으로 확인하세요.
이 파일을 `PikVM_External_Access_Troubleshooting.md`로 저장하여 문제 해결 과정을 문서화할 수 있습니다.