본문 바로가기

쓸모없던 스마트폰을 스마트홈 서버로 변신, 안드로이드 리눅스 설치

728x90

오래된 안드로이드 스마트폰, 리눅스 서버로 200% 활용하는 법

사용하지 않아 쓸모없는 구형 Android 스마트폰에 Ubuntu를 설치하여 리눅스 서버로 활용하는 방법입니다.

개요 및 배경

최근 스마트폰 성능이 향상되면서 오래된 스마트폰을 리눅스 서버로 활용하려는 관심이 늘고 있습니다. 일반적으로 리눅스 서버를 구축하려면 별도의 하드웨어(예: 라즈베리파이)를 구매해야 하지만,

 

라즈베리파이(Raspberry Pi)에서 Ubuntu, Docker, Jenkins CI/CD 환경 구축하기

라즈베리파이(Raspberry Pi)란?라즈베리파이(Raspberry Pi)는 영국의 라즈베리파이 재단에서 개발한 소형 싱글보드 컴퓨터(SBC)입니다. 저렴한 가격과 저전력 소비, 다양한 확장성과 높은 활용성 덕분에

blog.pages.kr

스마트폰을 리눅스 서버로 전환하면 다음과 같은 장점이 있습니다.

  • 추가 비용 절감
  • 유휴 자원의 효율적 활용
  • 웹 서버, 파일 서버, 홈어시스턴트(Home Assistant) 구축 가능
  • 리눅스 환경 학습 및 실습 가능

 

Android 스마트폰은 기본적으로 리눅스 커널을 사용하기 때문에 적합한 환경이며, Linux Deploy 앱을 통해 손쉽게 리눅스를 설치하고 활용할 수 있습니다.

설치 준비

1. 스마트폰 요구사항

    • OS 버전: Android 5.0 (Lollipop) 이상
    • RAM: 최소 2GB 이상 (4GB 이상 권장)
    • 저장공간: 최소 11GB 이상 권장
    • 루팅 여부: 루팅 필수(chroot 방식)
비루팅(proot) 방식은 속도 저하와 기능 제약이 많아 비추천입니다.

2. 필수 앱 설치

Google Play에서 다음 두 가지 앱 설치

  • Linux Deploy
    • 리눅스 배포판을 설치 및 관리할 수 있는 앱
  • BusyBox
    • 리눅스 명령어 기본 제공 (하얀색 아이콘 버전 사용 권장)

Linux Deploy 환경 설정

1. 환경 설정 단계

  • 앱 실행 → 우측 상단 톱니바퀴(⚙️) 아이콘 클릭하여 설정 진입

다음과 같이 설정을 구성합니다.

항목 설정값
배포판 (Distribution) Ubuntu
버전 (Version) bionic (18.04 LTS 권장)
설치 방식 (Installation type) 파일(File)
디스크 크기 (Size) 최소 11000MB (11GB 이상)

2. SSH 활성화

  • SSH를 활성화하여 PC에서 원격 접속 가능하도록 설정

3. 웹 서버 구축 시 추가 설정

웹 서버 목적으로는 아래 항목 추가 활성화

  • Apache (웹서버)
  • MySQL (데이터베이스)
  • PHP (웹 애플리케이션)

설치 진행 및 오류 해결 사례

1. 설치 진행 방법

  • Linux Deploy 우측 상단 메뉴 버튼(점 3개) → Install(설치) 클릭
  • 설치 완료까지 약 10~20분 소요됨
스마트폰 예시 설치 소요 시간
Nexus 5 약 20분
Galaxy S7 약 10분

2. 발생 가능한 설치 오류 해결법

  • 오류 1: mounting /dev/loop... failed
    • 스마트폰을 재부팅 후 설치 재시도
  • 오류 2: container_mounted
    • Linux Deploy 종료 후 스마트폰 재부팅 후 재시도
  • 오류 3: Permission denied
    • BusyBox가 /system/xbin에 설치됐는지 확인
    • Linux Deploy에서 환경변수(PATH)를 /system/xbin로 설정 후 환경변수 업데이트
    • 기기 재부팅 후 다시 설치

SSH로 리눅스 접속하기

1. Windows에서 SSH 접속 방법

  • SSH 클라이언트로 PuTTY 사용 권장
  • Linux Deploy에서 SSH 서버 실행 확인
  • 스마트폰 IP 확인 방법
    ip a 또는 ifconfig
  • PuTTY에서 확인된 IP와 포트(22) 입력 후 접속
    사용자 이름과 암호는 Linux Deploy 설정 시 지정한 값 사용

2. 접속 성공 시 터미널에서 리눅스 명령어 사용 가능

# 리눅스 환경 확인 예시
lsb_release -a

APT 패키지 관리자로 웹 서버 준비

리눅스 접속 후 다음 명령어를 입력하여 패키지를 최신 상태로 업데이트합니다.

sudo apt update && sudo apt upgrade -y

웹 서버(Apache, PHP, MySQL, phpMyAdmin) 설치 예시

1. Apache 웹 서버 설치 및 설정

sudo apt install apache2 -y
sudo systemctl start apache2
sudo systemctl enable apache2

2. PHP 설치

sudo apt install php libapache2-mod-php -y
sudo systemctl restart apache2

3. MySQL 데이터베이스 서버 설치

sudo apt install mysql-server -y
sudo mysql_secure_installation
  • mysql_secure_installation 명령으로 보안 설정 필수 (root 암호 설정 등)

4. phpMyAdmin 설치

sudo apt install phpmyadmin -y
  • 설치 후 웹 브라우저에서 관리페이지 접속 가능
    http://스마트폰_IP주소/phpmyadmin

스마트폰 재부팅 시 자동으로 웹서버 시작 방법

Linux Deploy에서 자동 실행 스크립트 설정

  • Linux Deploy → 설정에서 자동 실행 스크립트 추가
    #!/bin/bash
    linuxdeploy start
  • 이 설정을 통해 스마트폰 재부팅 시 자동으로 리눅스 서버 환경 실행

활용 사례

안드로이드 스마트폰 리눅스 서버 활용 예시

  • 홈어시스턴트(Home Assistant) 서버 구축
    • IoT 장비 제어 및 스마트홈 구현
  • Nextcloud 파일 서버
    • 개인 클라우드 저장소 구축
  • 개인 블로그, 웹사이트 서버
    • WordPress 등 설치 가능

주의 사항

  • 기본 계정 및 SSH 암호 강력 설정 필수
  • SSH 기본 포트(22) 변경 권장 (/etc/ssh/sshd_config)
  • 불필요한 서비스 비활성화
  • 정기적 패키지 업데이트 및 보안패치 적용
 

LG 에어컨 MQTT 브로커 통해서 홈어시스턴트 연동 자동화 스마트홈

Home Assistant에서 MQTT를 사용하여 LG 에어컨을 제어하기 위해, MQTT 브로커를 설정하고, 해당 브로커와 통신할 수 있는 코드를 작성해야 합니다. MQTT 브로커로는 일반적으로 Mosquitto를 많이 사용합니

blog.pages.kr

 

월패드(Wall pad) 제어를 스마트 홈 장치와 연동하여 자동화

MQTT 프로토콜과 RS-485를 활용하여 스마트 홈 장치들의 상태를 관리하고 제어하는 스크립트입니다.1. 라이브러리 임포트socket, threading, serial: 네트워크 통신과 멀티스레딩을 위한 기본 라이브러리.

blog.pages.kr

 

스마트 홈 자동화: 사람 위치 기반 감지 및 알림 시스템 디바이스 연동

스마트 홈 환경에서 특정 사용자의 상태(예: 위치 변경이나 집 도착)를 실시간으로 감지하고 이에 대한 알림을 제공하는 자동화 시스템을 구축하는 기본적인 예시입니다. 이러한 자동화는 다양

blog.pages.kr

 

삼성 SmartThings와 Home Assistant 연동 IoT 자동화 가이드

Home Assistant(홈어시스턴트)에 Samsung SmartThings(스마트싱스)를 연동하면 삼성 IoT 기기들을 하나의 플랫폼에서 쉽게 통합하고 자동화할 수 있습니다. 아래에서 자세한 방법과 함께 자동화 예시 및 점

blog.pages.kr

스마트폰을 활용하여 리눅스 서버를 구축하는 것은 오래된 기기의 효율적인 재활용과 비용 절감을 동시에 이룰 수 있는 방법입니다. 다양한 활용사례를 참고하여 효율적인 리눅스 서버 환경을 구축하고, 새로운 IT 경험을 만들어 보세요.

728x90

댓글