안녕하세요!

약 1시간 전 10분의 관심을 받으면 강좌를 올리겠단 약속한 프리빌리지입니다.

처음 올리는 글에 행여 질타 받을까 두려운 마음을 안고 소심한 글을 올렸으나

맛클회원분들의 따듯한 관심에 힘입어 강좌를 올릴 생각을 하게 되었습니다.


일단 완성품의 모습을 살짝 보여드릴게요.

Ubuntu on Galaxy S.jpg

(생각보다 그림이 크게 들어갔는데 수정하는 방법을 잘 몰라 그냥 두겠습니다. 제가 초보라 ㅠㅠ

양해 부탁드려요.)


이건 갤럭시S에서 그대로 캡쳐한 이미지입니다. 보시다시피 본연의 컴퓨터에서 쓰이는 운영체제가 그대로 들어간것이 보일것입니다.


(저의 경우 운영체제 화소를 800x480으로 맞췄으나 좀더 고화질의 화소를 바라는 분들은

숫자를 올려잡아도 됩니다. (다시말해 갤럭시탭 유저분들도 화소만 바꾸면 사용가능해요).


위에 사진은 GUI, 곧 그래픽 유저 인터페이스 (다시말해 시각적인 사용자 환경)을 적용한 상태구요, 여러분들도 적용 전까지는

Ubuntu on Galaxy S 2.jpg

이렇게 개발자분들께는 익숙하실 터미널,

사용자분들껜 다소 생소한 (윈도우의 cmd창이나 맥OS의 터미널과 같은 용도에요) 모습의 창

에서 작업해야 해요.


걱정은 마세요 ㅋㅋ

제가 모든 과정을 Step by Step으로 가르쳐드릴테니까요!

이 강좌는 제가 할수 있는만큼 쉽게 설명했구요,

질문이 있으시다면 언제든지 쪽지보내세요! 아무리 늦어도 매주말에는 확인하고 답장드릴게요.


그럼 소개는 이 정도 하고 강좌 시작해볼까요?


-----------------------------------------------------------------------------------------------------------------------------------------


리눅스 그리고 우분투에 관한 간단한 소개 (모르시는 분들을 위한!) - 뛰어넘어도 상관없습니다만..


리눅스는 쉽게 말해서 운영체제입니다.

과거 유닉스 운영체제가 판을 칠때

오픈소스로 유닉스를 재현하고 싶어한 리누스 토발즈 (Linus Torvalds)가

프로그래밍한 운영체제입니다.


아시는 분들은 아시겠지만

우리 스마트폰의 안드로이드는 리눅스 커널을 바탕으로 한 운영체제입니다.

(안드로이드가 리눅스라면 Unix를 바탕으로 둔 Mac OS에 바탕을 둔 iOS는 유닉스가 되나요? 키득. 재미없는 조크 죄송...)

안드로이드 스마트폰을 사용할 때와

안드로이드용 어플리케이션을 만들때에도 리눅스는 (있으면 좋지만) 필요는 없습니다.

하지만 (릴리나이저님, 레이븐님, 테그라크님 처럼) 안드로이드의 펌웨어나 롬을 커스터마이즈 (수정)하고 싶으시면 리눅스가 있어야하죠.

물론 개발자가 아닌 사람들도 오픈소스이기에 공짜인 우분투나 페도라 같은 리눅스 배포판을 사용하는 사람들은 많습니다!

우분투는 데스크탑용으로 나온 리눅스 배포판이며 리눅스 배포판중 사용자수가 가장 높아요.

우리의 목적은 이 우분투를 휴대기기인 안드로이드 위에 설치하는것입니다.


------------------------------------------------------------------------------------------------------------------------------------------

으앙. 쓰던 글이 홀랑 날아가버려서 여기부턴 다시 쓰게 되네요 ㅠㅠ
글쓰는거 힘드네요. 글 쓰시는 모든 분들께 깊은 감사 드리고 다시 시작합니다.

준비과정!

안드로이드에는
1. Busybox - 안드로이드 마켓에서 다운받아주세요. (무료)
2. Android Terminal Emulator - 안드로이드 마켓에서 다운받아주세요. (무료)
3. Android VNC Viewer - 구글 코드에서 설치해주세요.

컴퓨터에는
1. Android SDK - 안드로이드 개발자 사이트에서 다운받아주세요.
*이 것이 1.5기가 정도 되는데 우리는 adb (android debug bridge)만 사용할꺼니까
꽤 많은 코드들을 갤럭시s 키보드로 치실 자신이 있으시다면
Android Terminal Emulator만 사용하셔도 괜찮아요.
2. 이 강좌에 사용 될 스크립트파일들 및 우분투 이미지파일 - 메가업로드에서 다운받아주세요.
영어 모르시는분들은 45초 기다렸다가 Regular Download 눌러서 다운받으시면 되요.
3. Snakehult님이 수정해주신 스크립트파일들 - 여기에서 다운받아주세요.
위 파일들은 넥서스원용으로 제작된 것이라 갤럭시S 사용시 이 파일을 쓰셔야합니다. (Snakehult님께 감사드려요.)

스마트폰을 켜시고
환경설정 -> 응용프로그램 -> 개발 -> USB디버깅 에 체크해주세요.

Busybox 어플리케이션을 실행하시고 busybox를 설치해주세요.

순정파 분들껜 정말 죄송하지만 루팅이 필요한 작업입니다. 루팅을 이미 하지 않으셨다면
z4root 1.3.0.apk 을 사용해서 루팅해주세요. (permanent root 누르시면 끝나요).

우분투를 스마트폰으로 넣는 과정:
컴퓨터준비 2번에서 다운받은 압축폴더의 압축을 풀고 그 안에 컴퓨터준비 3번에서 다운받은 수정 스크립트파일들을 집어 넣어 덮어 씌워주세요. 완성된 폴더는 갤럭시S 바로안에 넣어주세요.
외장메모리가 아니라 내장메모리입니다! 주의하세요. 내장메모리 최상위폴더에다가 ubuntu폴더를 넣어주세요. 하고나면 컴퓨터에서 이동식메모리를 누르면 바로 ubuntu 폴더가 보여야합니다.

------------------------------------------------------------------------------------------------------------------------------------------


본 강좌! 1번.

1. ADB를 사용하실 생각이라면
윈도우 사용자분들 -1. sdk안의 tools 폴더 내로 가서 주소창에 있는 주소를 카피하세요.
2. 시작메뉴 -> 실행 -> cmd 로 코맨드창을 실행해주세요.
3. 그대로 "cd 붙여넣기" 해주세요. 대략 "cd c:sdktools"이렇게 보일겁니다.
3. 엔터 쳐주세요.
4. "adb shell"이라고 쓰시고 엔터 쳐주세요.
맥 사용자분들 - 1.spotlight에 terminal을 쓰시고 터미널을 실행하세요.
2. cd 라고 쓰세요.
3. sdk 안의 platform tools 폴더를 터미널 위로 끌어주세요.
4. 엔터를 치세요.
5. "./adb shell" 라고 입력하시고 엔터쳐주세요.
리눅스 사용자분들 - 맥 처럼 하시고 5번이 안 먹힌다면 "sudo ./adb shell"입니다.

잘 하셨으면 # 가 보일겁니다. (혹은 $)

2. 사용안하실 생각이시면 그냥 android terminal emulator 켜시면 #혹은 $가 보일겁니다.

(다시말해 #나 $가 보이면 안드로이드 내부라는 뜻이에요.)

이제부터 신중히 해주세요. 본인이 실수로 휴대폰을 날린다 해도 전 책임 질수 없습니다...

2


$su 를 입력해주세요.
휴대폰에서 superuser가 어떤 프로그램이 슈퍼유저 권한을 원한다고 합니다. Allow눌러줍시다.
#가 보일겁니다.

#cd /sdcard/ubuntu
이 명령어는 우분투 폴더로 데려가줍니다 (보이진않지만)

#sh ./ubuntu.sh
이 명령어는 ubuntu.sh 스크립트파일을 실행합니다.

bootubuntu
이 명령어는 bootubuntu 파일을 실행시켜 우분투를 실행합니다.

localhost라는 말이 보이면 이미 성공입니다.
우분투가 실행되었단 증거에요.

3 번

이제 GUI를 주어 진짜 컴퓨터 모니터로 보이는 모습을 볼 차례입니다.

일단
apt-get update
를 입력하여 우분투를 업데이트합니다.

apt-get install tightvncserver lxde openssh-server
를 입력하여 tightvncserver, lxde, 그리고 openssh-server를 설치합니다.
vnc 비밀번호를 입력하라고 나오는데 기억하실수있는 비밀번호를 입력하세요.
view-only비밀번호는 상관없습니다.

passwd root
을 입력하여 유닉스 비밀번호를 입력하세요.

export USER=root
를 입력하세요. USER는 모두 대문자여야 합니다.
vncserver -geometry 800x480
를 입력하시면 vncserver를 구동시키며 저 뒤 800x480의 숫자를 바꾸면 화소도 바뀝니다.
가로픽셀수 x 세로픽셀수에요.

그럼 New 'X' desktop is localhost:1 같은게 뜰텐데 언제나 로컬호스트가 1이 아닙니다. 뜨는 숫자를 기억해주세요.

cat > /root/.vnc/xstartup
#!/bin/sh
xrdb $HOME/.Xresources
xsetroot -solid grey
icewm &
lxsession
를 입력해주세요. (참고로 cat 명령어 입력 후에는 #나 $가 뜨지않습니다. 바로 명령어 입력하시면 됩니다)

이제 컨트롤 + D를 두번 (android terminal emulator 쓰신다면 왼쪽밑 하드웨어 버튼으로 메뉴 불르고 preference 누르시고 Control Key 누르시고 볼륨 위 아니면 아래 맘대로 (위라고 가정하겠습니다) 설정하시고 다시 뒤로나와 그 볼륨 위로 키를 누르면서 D를 누르시면 됩니다)
누르셔서 우분투를 종료합니다.

에뮬레이터에서 나와서 android VNC view를 켜주세요.
이름은 아무거나 지어주시고
password에는 아까 vncserver 비밀번호 설정하신것 넣어주시고 밑에 Port에
아까 localhost:1이었다면 5901
localhost:2였다면 5902
localhost:12였다면 5912
이런식으로 포트 숫자를 바꿔주세요.

Connect 를 누르시면 감격적으로 우분투 화면이 보일것입니다.


감격은 뒤로 미뤄두고 다시 에뮬레이터로 들어가서
$ su
#bootubuntu
를 입력하세요. (앞으로도 이렇게만 하면 우분투가 구동됩니다. 너무 아름답지않나요 ㅠㅠ)

cat > front
export USER=root
cd /
rm -r -f tmp
mkdir tmp
cd /
vncserver -geometry 800x480
이라고 입력해주세요. 물론 이때도 저 숫자들을 바꾸면 픽셀이 바뀝니다.
(참고로 cat 명령어 입력 후에는 #나 $가 뜨지않습니다. 바로 명령어 입력하시면 됩니다)

끝난후 컨트롤 D 두번으로 빠져나온후 에뮬레이터 나갔다가 다시들어와서 우분투 켜주세요.

cat front /root/.bashrc > temp
cp temp /root/.bashrc
라고 입력하시면 이제 드디어 끝입니다.

마지막에 들어와서 한 작업은
우분투 실행시 자동으로 VNC서버를 실행시키도록 한것입니다. 물론 앞으로도 localhost:숫자 의 숫자를 기억하셔야 하구요.
이제부터 컴퓨터가 없더라 해도
안드로이드 터미널 에뮬레이터 안에서
su
bootubuntu하면 우분투가 켜지고
exit하면 우분투가 종료됩니다.

이제 휴대폰을 넘어 컴퓨터가 된 안드로이드를 활용하시는건 여러분의 다음 과제랍니다. ^^





제 글대로 실행하시는 분들,

다른 맛클회원분들도 이 글을 보고 실행할수 있도록

혹시 제 글을 따라하시는 분들, 추천 한방씩만 눌러주실렵니까?


그리고 맛클회원분들! 제가 아직 모르는게 많으니 앞으로도 잘 가르쳐주세요!
공부 열심히 해서 커스텀롬 및 패치들로 여러분들의 스마트라이프를 윤택하게 하는
여러 맛클개발자분들처럼 (+테그라크님) 도움을 드릴수 있게 되고싶네요!

수정해야할점 분명 많을테니 댓글로 남겨주세요. 고치도록 할게요!

Extra Form
첨부
Ubuntu on Galaxy S.jpg  [File Size:32.9KB/Download:19]
Ubuntu on Galaxy S 2.jpg  [File Size:57.7KB/Download:36]
댓글을 남겨야 다운로드가 가능합니다. 감사의 댓글을 달고 오른쪽 확인버튼을 눌러주세요.
다운로드시 일주일에 한개 이상의 게시물 작성이 필요합니다. 지금 자유게시판에 회원님의 하루를 남겨보세요.
추천♡버튼을 잊지 마세요. 추천인과 회원님 모두 포인트가 적립됩니다.
댓글 67
1 2
  • ?
    문쫑락
    11.06.07
    bootubuntu 를 타이핑하고나서 앤터 누르면
    ~~~baby ~~위처럼 똑같이 나오고 제껀 밑네 몇줄 더나오면서 그다음 구문이 안되네요 ㅠㅠ
    can\'t execute /bin/bash ~~~
    shutdown ~~
    fail
    fail
    fail
    fail
    이렇게뜸니다 ㅠㅠ 제생각에는 bash를 실행할수 없다고 뜨는거 같은데 ... 일단 제폰에 /bin폴더에는 bash라는 파일이 없습니다 .. 제친구 폰 겔스에는 있는데요... 참고로 루팅 비지박스등 모두 설치했습니다.
    제폰은 옵티머스 2x입니다 .. 구글링해보니까 겔스말고도 다른폰도 다된다고 나와있는데 말이죠 ㅠ
  • ?
    아우vncserver -geometry 800x480
    여기서

    bash: vncserver :command not found ..라..하네요

    800x480 여기서 곱하기는 *가 아닌가요??
  • ?
    많이늦은감이있지만 안드로이드로는 어떻게 되돌릴수있나요?
  • ?
    혹시x10미니프로기종{안드로이드2.1}될까요?
  • ?
    열심히 배우고 있습니다 ^^;
  • ?
    정말 감사합니다^^
    우분투 설치 재대로 완벽하게 하고 구동까지 완료 했습니다~!!!
    윈도우95 이것도 구동가능하다고 댓글로 본거같은데 ;;
    혹시 이것도 한번 설명올려주시면 안될까요? 해보고싶네요 ㅋ~~!!!!
    지금 리눅스를 종료 시키기의해 터미널로 exit 를 쳤는데 재대로 종료가 안되네요
    shutting down Ubuntu
    failed
    losetup: /dev/loop5: Device or resource busy

    위와같이 뜨면서 종료를 못하네요...
  • ?
    괴물군
    11.08.08
    성님 우분투 메가업로드 다운받다가 해가떴습니다 근데 중간에 끊겼는지 잔못된 압축이랍니다 다시다운받으려니 깜깜합니다 토렌트나 공유해주실 성님안계십니까
  • ?
    아라온
    11.08.09
    악 10번의 실패 끝에 성공했다.....
    근데 터치가 잘 안먹는듯...
  • ?
    감사합니다...
    공부해야 겠군요 ~~~
  • ?
    iou610
    11.08.10
    저랑 같은 증상이시네요, 저도 제대로 종료가 안됩니다. loop 디바이스7 썼는데,
    폰 재부팅 하는 방법뿐이 지금은 없는것 같습니다. 한번 스크립트 파일 다시확인해보고
    정상 종료 및 언마운트되나 확인해보겠습니다.
    아 저는 그리고 갤럭시가 아니라 타 안드로이드 폰입니다.
  • ?
    우분투 이미지파일 2G짜리 이런건 어떻게 만드는건지 궁금하네요 ㅎㅎ

    아 그리고

    혹시 여기 올리신 이미지파일 그건 아키텍쳐가 어떻게 되는지 궁금해요

    i386인가요? 아니면 amd64?
  • ?
    이와그
    11.08.17
    지금 도전중...
    잘되야 할텐데,,,
    다운받는 중에 계속 정독정독,,,^^
  • ?
    수고하셨습니다!!! 요즘 갤탭10.1 에 우분투가 퍼펙트하게 돌아가며 속도도 상당히 빠르다는 정보를 입수했습니다. 정말 좋은 세상이지요ㅎ

    밖에서는 패드, 집이나 사무실에서는 데스크탑.. 이 얼마나 멋진 디바이스인가요ㅠ

    http://galaxytabhacks.com/galaxy-tab-10-1-hacks/how-to-install-ubuntu-linux-on-galaxy-tab-10-1-tabuntu/

    여기 링크 합니다 ^^
  • ?
    이와그
    11.08.18
    계속 따라하고 하면서 설치 했습니다.
    잘 되는 군요 ^^
    이제 활용은 어찌하나? ㅎㅎ
    고생하셨어요,,
  • ?
    와락
    11.08.18
    테그라크 원낸드 모드에서 하면 애러날까요,,,?
    아니면 원낸드 풀었다가 우분투 설치 후 원낸드로 돌아가면 될까요?
  • ?
    와락
    11.08.18
    apt-get install tightvncserver lxde openssh-server
    이 다음에서 패스워드 적는부분이 안나오고 바로 넘어가 버리네요;;
    그냥 다음 부분으로 넘어가니
    New \'X\' desktop is localhost:1
    이부분도 안나오고요..
    유닉스 패스워드는 나오는데말이죠..
  • ?
    C-Type
    11.08.28
    데비안도 설치가 가능할까요?
    우분투 보다 가볍다고 들었는데....
  • ?
    xperia-gx
    12.09.03
    vncserver -geometry 800x480 쓰면 command not found 뜨는데 무엇이잘못된건가요... 답변 부탁드립니다
댓글 쓰기 권한이 없습니다.
List of Articles
제목 글쓴이 추천 조회 날짜
롬쿠킹 [강좌] 02. 갤럭시S 프로요 리눅스 커널 컴파일하기 51 Liliniser 37 18182 2011.02.14
롬쿠킹 개발자분들을 위한 (물론 초보분들도할수 있도록 쉽게 쓴) 리눅스를 안... 67 file 프리빌리 31 10626 2011.01.05
롬쿠킹 Dokdo-Project 3.1 For Galaxy S2 (SHW-M250S/K , GT-I9100) 41 file 베가레이 31 12146 2014.02.15
롬쿠킹 [강좌] 04. Hexeditor를 이용한 리눅스 커널의 initramfs 수정하기 34 Liliniser 26 11858 2011.03.05
롬쿠킹 OC 1.3ghz 입니다. 190 file Raven 24 24544 2011.01.03
롬쿠킹 갤럭시노트2 루팅펌웨어 배포 중단 95 히어로즈 24 14994 2013.12.04
롬쿠킹 테마는 하나의 예술입니다. (이식 및 관련 게시물 작성에 대한 공지) 69 berics 24 14711 2011.10.24
롬쿠킹 인터뷰: 미친kamui & 리체 (프레스티지모드&ELS롬) 19 프리빌리 23 3575 2013.07.27
롬쿠킹 갤럭시 S의 factoryfs.rfs를 만들자! 32 file 샤인님 21 11746 2011.02.27
롬쿠킹 [SHW-M440S] SKT 갤럭시S3 3G 4.3 MK2 쿠킹롬 배포 4 히어로즈 20 9168 2013.11.17
롬쿠킹 [강좌] 03. 갤럭시S Deodexing, Signing 그리고 커스텀 롬 제작 30 Liliniser 19 9232 2011.09.04
롬쿠킹 ELS 롬 0.6.5 버전 업로드 했습니다. 5 Leche™ 18 2464 2013.08.19
롬쿠킹 Hello matpclub from XDA! 51 supercurio 17 7147 2011.05.03
롬쿠킹 임베디드 개발자 모임 게시판은 간단한 질문하는곳이 아닙니다 6 미날 17 34967 2011.01.25
롬쿠킹 SetCPU Governor 종결자 23 HTC_Kovsky 16 15667 2011.01.16
롬쿠킹 갤럭시 노트1 cm11 최종 빌드 배포했습니다. 1 bestmjh47 16 7823 2015.01.25
롬쿠킹 알려드립니다~ 18 Leche™ 14 2009 2013.08.08
롬쿠킹 갤럭시S3 유플(SHV-E210L)용 MIUI 제작중입니다!! 10 ohk990102 13 7315 2013.12.06
롬쿠킹 SHW-M250L 용 Clockworkmod 입니다. 7 file Pinkkit 13 9851 2012.01.08
롬쿠킹 작업해 왔던 것들 전부 오픈소스 합니다. (옥타 갤포 사용자분들, 주목!) 9 bestmjh47 13 5059 2014.11.27
롬쿠킹 [SHW-M440S]SKT갤럭시S3 3G MH1 LightPack을 배포했습니다. 13 히어로즈 12 6066 2013.08.20
롬쿠킹 갤럭시노트4 SKT S6 Theme V1.5 곧 배포 예정입니다. 9 file EPhe 12 5067 2015.05.28
롬쿠킹 갤럭시S2 커스텀커널 카운트 초기화 JIG케이블 제작법 50 LIGnex1 12 51847 2011.05.09
롬쿠킹 [SHV-E250S] SKT갤럭시 노트2 MF6 ValuePack 배포 14 file 히어로즈 12 4163 2013.07.15
롬쿠킹 SKT갤럭시노트2 MI2 LightPack 배포 7 히어로즈 12 3944 2013.09.28
1 - 17