본문 바로가기
안드로이드

안드로이드에서 리눅스 구동하기

by ㅋㅋ잠자 2015. 12. 1.
반응형

안녕하세요. 도정진입니다.

   

고등학교 때 정말 웹서버, 제 홈페이지가 있으면 좋겠다는 생각을 많이 하였습니다.

   

하물며 파일 업로드 다운로드가 가능한 파일서버를 구축하고 싶다는 생각을 많이 하고 있었고 초기에는 아이스테이션 PMP 인 넷포스2 를 이용해서 아주 간단하게 운영을 하고 있었습니다.

   

   

이런식으로 운영을 했었고

   

그 다음에는 안드로이드의 앱을 통해 웹서버 구동을 하던 적도 있었습니다. 그 게시글은

http://djjproject.tistory.com/82

   

   

그런데 이 마저도 안전성이 부족하고 php 명령셋이나 파이선이나 여타 톰캣 서버 백단 애플릿을 구동하지 못한다는 단점도 있습니다.

   

그래서 아예 리눅스를 chroot 로 안드로이드에 깔아버릴 생각을 해 보았습니다.

   

   

실제로는 Complete Linux Installer 라는 좋고 간단한 앱이 있지만 이미 만들어져 나오는 이미지로 커스텀 화가 불가능하게 되어 있어서 저는 아래의 앱을 사용하겠습니다.

   

   

https://play.google.com/store/apps/details?id=ru.meefik.linuxdeploy

   

이 앱을 통해서 리눅스 구동을 해 볼 생각입니다. 초보자에게 접근하기 쉬운 우분투 운영체제로 진행할 예정이며, 테스트 기기는 갤럭시 넥서스 / 넥서스 5 가 되겠습니다.

   

   

   

   

0 . 필요한 사항

   

2GB 이상의 공간

루팅이 되어있다.

   

위 두 가지만 충족하시면 문제가 없습니다.

   

그럼 다음 단계로 넘어가서 앱설치를 하고 바로 시도해 보겠습니다.

   

   

   

   

1 . 리눅스 버전 선택 및 이미지 만들기

   

일단 앱을 켜봅니다.

   

   

위 사진은 이미 우분투 15.10 이 실행되고 난 상태에서 찍었습니다. 앱의 첫화면 구조가 필요해서 먼저 사용했습니다.

   

처음을 보면 하단에 START STOP 다운로드 아이콘이 있습니다. 다운로드 아이콘을 누르면 아래의 창이 뜹니다.

   

   

우분투로 선택하고 버전은 물론 Trusty (14.04) 가 가장 많이 쓰이겠지만 저는 무조껀 최신이기 때문에 wily 15.10 을 선택해였습니다.

   

   

   

아키텍쳐의 경우는 대부분 armhf 이고 최신폰의 경우에 64비트가 되는 arm CPU 라면 arm64 를 선택하셔도 됩니다. 만약 자신이 INTEL CPU 를 내장하고 있다면 X86 그대로 사용해도 됩니다. (i386 / amd64)

   

   

   

다음 chroot 에 사용할 디스크 크기의 경우에는 실제로 용량이 클 필요가 없습니다. 1GB 면 적당하게 깔리는 것 같습니다.

   

다만, 저는 SSH 환경에서만 웹서버를 구동하기 때문에 차후 추가적으로 패키지를 선택하는 부분이 있는데 그 부분에서 SSH Server 만 선택할 때 용량이 1GB 로 충분하다는 의미이고

   

데스크탑 환경이나 추가적으로 패키지를 설치하게 되면 3GB 정도 필요할 것입니다.

   

   

파일 시스템의 경우에 EXT4 로 맞춰 줍니다.

   

   

데스크톱 환경 선택하는 부분이 있는데 저는 아예 설치를 하지 않을 예정으로 Other 로 설정하였습니다.

   

   

사용자 이름과 비밀번호는 그냥 설정해 주시면 됩니다.

   

   

그리고 추가적으로 설치할 것들을 정하는 것이 있습니다. 최소한 으로 저는 SSH 만 선택하였습니다. 다른것은 까시면 도움이 되지 않습니다. (데스크톱을 보고 작업을 하고 싶다면 위의 데스크톱 환경에서 그놈을 선택해 주시고 아래의 사진에서는 데스크톱 환경과 VNC 서버에 체크해 주시길 바랍니다.)

   

   

   

부팅시 SSH 서버가 자동으로 실행되게 체크합니다.

   

   

   

그 다음 안드로이드에 마운트 되어 있는 부분에 대해서 파일을 마운트 할 수 있는 기능이 있습니다.

   

꼭 SD 카드 영역을 마운트 포인트에 추가해 줍니다.

   

   

그럼 준비는 끝났습니다.

   

   

이제 설정한 기반대로 이미지를 만들어 볼 시간입니다.

   

   

액션 부분에서 인스톨 버튼을 누르면 자동으로 이미지 파일을 생성하고 그 이미지 파일 안에 선택한 배포판의 리눅스를 설치합니다.

   

   

   

   

   

   

   

이미지 제작은 18분 정도 걸리는 것 같습니다.

   

아마도 이것은 ports.ubuntu.com 의 속도가 느려서 그런것 같습니다. 빠른 미러 서버가 있다면 추천 부탁드립니다.

   

   

   

   

2 . 우분투 구동해 보기

   

   

설치가 끝났으면 하단의 START 버튼을 통해 우분투를 시작합니다.

   

그 다음 연결은 SSH 클라이언트로 하시면 됩니다.

   

   

   

192.168.0.44 는 앱의 상단에 나와있는 것으로 자신의 아이피가 무엇인지 알려줍니다. 각자 다르니 참고하시길 바랍니다.

   

   

   

이렇게 처음에 설치할 때 저는 아이디 비번을 djj9405 / djj9405 로 설정하였습니다. 그것을 이용하여 로그인을 하면 아래처럼 정상적으로 터미널 창이 뜹니다.

   

   

기본적으로 root 계정에서 작업하는게 편함으로 일단 루트 계정으로 로그인 하기 위해 루트 계정의 비밀번호를 바꿉니다.

   

sudo passwd root

(현재 루트 계정이 아님으로 sudo 를 꼭 붙여야 합니다.)

   

   

패스워드를 바꾸고 su 라고 입력하고 root 계정의 비밀번호를 입력하면 바로 루트 계정으로 쉘이 바뀝니다. 그 뒤에 작업하시면 정말 편합니다.

   

테스트로 htop 을 설치해 보겠습니다.

   

분명 패키지 업데이트가 되어 있지 않음으로 꼭 아래의 명령을 실행해서 패키지 목록을 최신화 해 주시길 바랍니다.

   

apt-get update

   

   

apt-get install htop

   

   

정상적으로 설치가 되었습니다.

   

   

chroot 환경임으로 안드로이드 프로세스도 보입니다.

   

   

   

   

   

   

반응형

댓글