Linux deploy: 두 판 사이의 차이
(→사용법) |
편집 요약 없음 |
||
(같은 사용자의 중간 판 5개는 보이지 않습니다) | |||
23번째 줄: | 23번째 줄: | ||
##:기본 화면의 우측 하단 버튼에서 설치할 배포판을 고르고 필요 옵션을 선택한다. | ##:기본 화면의 우측 하단 버튼에서 설치할 배포판을 고르고 필요 옵션을 선택한다. | ||
##installation type | ##installation type | ||
##: | ##:어떤 방식으로 설치할지 선택하게 한다. | ||
##:File : 해당 경로에 디스크 이미지를 만들어 구동한다. | ##:File : 해당 경로에 디스크 이미지를 만들어 구동한다. | ||
##:Directory : 안드로이드에 마운트하여 휴대폰의 모든 용량을 사용한다. 기 경로가 ${EXTERNAL_STORAGE}/linux로 되어있는데, 이렇게 하면 에러가 난다. 기본경로를 ${ENV_DIR} 하위로 바꾸어주면 된다.( 내부저장소 하위에 저장하는 방법도 알고 싶지만.. 모르겠다; USB연결로 접근할 수 없다는 건 상당히 치명적인 단점이다;) | ##:Directory : 안드로이드에 마운트하여 휴대폰의 모든 용량을 사용한다. 기 경로가 ${EXTERNAL_STORAGE}/linux로 되어있는데, 이렇게 하면 에러가 난다. 기본경로를 ${ENV_DIR} 하위로 바꾸어주면 된다.( 내부저장소 하위에 저장하는 방법도 알고 싶지만.. 모르겠다; USB연결로 접근할 수 없다는 건 상당히 치명적인 단점이다;) | ||
##:Partition : 성공 못해봄. | |||
##User name, User password | ##User name, User password | ||
##:필요한 것으로 설정한다. | ##:필요한 것으로 설정한다. | ||
35번째 줄: | 36번째 줄: | ||
##:일반적으로 서버를 돌릴 줄 알 정도라면 CUI로 다룰 수 있기에 잘 쓰지 않는 설정이다. | ##:일반적으로 서버를 돌릴 줄 알 정도라면 CUI로 다룰 수 있기에 잘 쓰지 않는 설정이다. | ||
=== 기타 === | ===기타=== | ||
21.10.25기준 플레이스토어에서 받은 linux deploy는 img 불러오기가 안되는데, https://github.com/meefik/linuxdeploy/releases/tag/1.5.3<nowiki/>을 설치하면 img파일을 받아오기가 가능하다. | 21.10.25기준 플레이스토어에서 받은 linux deploy는 img 불러오기가 안되는데, https://github.com/meefik/linuxdeploy/releases/tag/1.5.3<nowiki/>을 설치하면 img파일을 받아오기가 가능하다. | ||
근데... 이미지를 어플에서 여는 것도 방법이지만.. 그냥 프로파일에서 경로만 새로 지정해준다음 start 하면 될 듯하다. | |||
=== 앱 설정 === | ==기초설정== | ||
보통 SSH로 원격조작을 진행한다. 프롬프트에서 <code>bash</code>를 입력하면 bash 쉘 사용이 가능하니 참고. | |||
이후 sudo apt update 등 초기 과정을 진행하고 사용하면 된다. | |||
{| class="wikitable" | |||
!과정 | |||
!방법 | |||
|- | |||
|저장소 업데이트 | |||
|sudo apt update | |||
|- | |||
|각종 패키지 업그레이드 | |||
|sudo apt upgrade -y | |||
|- | |||
|루트 패스워드 지정 | |||
|sudo passwd | |||
|} | |||
==이후 설정== | |||
===앱 설정=== | |||
linux deploy앱의 설정에서 Wake lock을 켜주자. 화면이 꺼져도 정상 작동하게끔 돕는다. +화면잠금 설정도 체크해주자. | linux deploy앱의 설정에서 Wake lock을 켜주자. 화면이 꺼져도 정상 작동하게끔 돕는다. +화면잠금 설정도 체크해주자. | ||
=== init. 자동실행. === | ===init. 자동실행.=== | ||
부팅 때마다 일일이 이것저것 켜주는 것은 너무 불편하다. | 부팅 때마다 일일이 이것저것 켜주는 것은 너무 불편하다. | ||
https://3-24.github.io/linux/linux-android-startup/ | https://3-24.github.io/linux/linux-android-startup/ | ||
===각종 패키지 설치=== | |||
기본적인 패키지 없이 쌩몸이기 때문에 특정 명령어에서 <code>bash: wget: command not found</code>과 같은 메시지가 뜬다. | |||
{| class="wikitable" | |||
!의도 | |||
!설명 | |||
!방법 | |||
|- | |||
|패키지 설치 | |||
|최소한의 것들만 설치되어 있어 없는 게 많다. | |||
|sudo apt-get install wget | |||
계속 에러가 뜨면 root로 로그인해 진행하면 되더라... | |||
|- | |||
|mysql | |||
| | |||
|<code>sudo apt-get install mysql-server mysql-client</code> | |||
그냥 설치하면 에러가 뜬다. | |||
<code>nano /etc/mysql/mysql.conf.d/mysqld.cnf</code> 등으로 <code>bind-address=127.0.0.1</code>을 주석처리한다. | |||
그 아래에 <code>skip-networking</code>를 추가한다. 이후 다시 설치를 진행한다. | |||
|- | |||
|mysql 실행하면 나는 에러. | |||
|원인 모를 에러다. 서버를 실행하면 뜬다. <code>No directory, logging in with HOME=/</code> | |||
|<code>sudo service mysql stop</code> | |||
<code>sudo usermod -d /var/lib/mysql/ mysql</code> | |||
<code>sudo service mysql start</code> | |||
|- | |||
|저장소 추가 | |||
|저장소를 추가하려면 <code>sudo add-apt-repository ppa:ondrej/php</code> 따위를 사용하는데, 아래와 같은 에러가 뜬다. | |||
Error sudo: add-apt-repository: command not found 이는 기본적인 패키지도 없기 때문이다... | |||
|<code>sudo apt install software-properties-common</code> | |||
위 이후에 저장소 추가가 가능해진다. | |||
<code>sudo add-apt-repository ppa:ondrej/php</code> | |||
|- | |||
|지원하지 않는 패키지 설치.. | |||
|이건 여기가 아니라...나중에 따로 옮겨야겠다. 우분투 관련 문서로. | |||
|<code>sudo add-apt-repository ppa:ondrej/php</code> 등의 방법으로 저장소를 추가해 | |||
<code>sudo apt update</code>로 적용한 후 | |||
<code>sudo install 패키지명</code>으로 진행하면 된다. | |||
|- | |||
|apache2 도메인이름 설정 | |||
|AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using ::1. Set the 'ServerName' directive globally to suppress this message | |||
라는 에러가 뜬다. 서버에 이름이 없기 때문인데.. 방치해도 되지만.. 다른 에러가 뜨려나...? | |||
| | |||
|- | |||
|curl 문제 해결 | |||
|이것저것 하다 보면 Error contacting the Parsoid/RESTBase server: (curl error: 6) Couldn't resolve host name 이 얻어진다. | |||
|sudo dhclient 을 하라고 하는데, | |||
chroot 환경에선 Running in chroot, ignoring request: try-reload-or-restart 라는 에러가 뜬다.[미해결] | |||
|} | |||
[[분류:안드로이드]] | [[분류:안드로이드]] |
2021년 10월 25일 (월) 23:03 기준 최신판
개요[편집 | 원본 편집]
안드로이드 폰에서 리눅스를 설치하기 위해 개발된 어플.
안드로이드 폰을 서버로 사용할 예정이라면 이만한 게 또 없다.
필요[편집 | 원본 편집]
- 루트권한이 필요하다.
- 루팅을 통해 루트권한을 얻어도 안드로이드 자체적으로 앱 내에서의 루트권한 사용을 막을 수 있다. 때문에 커스텀롬 설치가..필수가 된다. 커스텀롬 설치 후 루트권한을 얻자.
- 커스텀롬이 필요하다.
- 루트권한을 얻어 linux를 설치해도 실 사용에서 root권한이 안드로이드에 의해 막히는 경우가 있다. 때문에 커스텀롬이 필요하다.
- 커스텀롬에 대한 내용은 안드로이드:커스텀롬 문서 참고.
사용법[편집 | 원본 편집]
- 구글 플레이스토어에서 Linux deploy를 다운받는다.
- 프로파일 생성.
- 기존 프로파일과 구분하기 위해 프로파일을 생성한다.
- - 좌측 상단의 메뉴버튼 선택 > Profiles 선택 > 필요에 따라 만든다. > 프로파일을 해당 프로파일로 전환.
- 설정.
- 만지면 좋을 설정들은 다음과 같다.
- 배포판 고르기.
- 기본 화면의 우측 하단 버튼에서 설치할 배포판을 고르고 필요 옵션을 선택한다.
- installation type
- 어떤 방식으로 설치할지 선택하게 한다.
- File : 해당 경로에 디스크 이미지를 만들어 구동한다.
- Directory : 안드로이드에 마운트하여 휴대폰의 모든 용량을 사용한다. 기 경로가 ${EXTERNAL_STORAGE}/linux로 되어있는데, 이렇게 하면 에러가 난다. 기본경로를 ${ENV_DIR} 하위로 바꾸어주면 된다.( 내부저장소 하위에 저장하는 방법도 알고 싶지만.. 모르겠다; USB연결로 접근할 수 없다는 건 상당히 치명적인 단점이다;)
- Partition : 성공 못해봄.
- User name, User password
- 필요한 것으로 설정한다.
- INIT
- OS부팅 시 apache, sql 같은 것들을 자동 실행하기 위해 체크해야 할 설정이다.
- SSH
- 원격으로 조정하기 위해 필수적이다. 체크하자.
- GUI
- 일반적으로 서버를 돌릴 줄 알 정도라면 CUI로 다룰 수 있기에 잘 쓰지 않는 설정이다.
기타[편집 | 원본 편집]
21.10.25기준 플레이스토어에서 받은 linux deploy는 img 불러오기가 안되는데, https://github.com/meefik/linuxdeploy/releases/tag/1.5.3을 설치하면 img파일을 받아오기가 가능하다.
근데... 이미지를 어플에서 여는 것도 방법이지만.. 그냥 프로파일에서 경로만 새로 지정해준다음 start 하면 될 듯하다.
기초설정[편집 | 원본 편집]
보통 SSH로 원격조작을 진행한다. 프롬프트에서 bash
를 입력하면 bash 쉘 사용이 가능하니 참고.
이후 sudo apt update 등 초기 과정을 진행하고 사용하면 된다.
과정 | 방법 |
---|---|
저장소 업데이트 | sudo apt update |
각종 패키지 업그레이드 | sudo apt upgrade -y |
루트 패스워드 지정 | sudo passwd |
이후 설정[편집 | 원본 편집]
앱 설정[편집 | 원본 편집]
linux deploy앱의 설정에서 Wake lock을 켜주자. 화면이 꺼져도 정상 작동하게끔 돕는다. +화면잠금 설정도 체크해주자.
init. 자동실행.[편집 | 원본 편집]
부팅 때마다 일일이 이것저것 켜주는 것은 너무 불편하다.
https://3-24.github.io/linux/linux-android-startup/
각종 패키지 설치[편집 | 원본 편집]
기본적인 패키지 없이 쌩몸이기 때문에 특정 명령어에서 bash: wget: command not found
과 같은 메시지가 뜬다.
의도 | 설명 | 방법 |
---|---|---|
패키지 설치 | 최소한의 것들만 설치되어 있어 없는 게 많다. | sudo apt-get install wget
계속 에러가 뜨면 root로 로그인해 진행하면 되더라... |
mysql | sudo apt-get install mysql-server mysql-client
그냥 설치하면 에러가 뜬다.
그 아래에 | |
mysql 실행하면 나는 에러. | 원인 모를 에러다. 서버를 실행하면 뜬다. No directory, logging in with HOME=/
|
sudo service mysql stop
|
저장소 추가 | 저장소를 추가하려면 sudo add-apt-repository ppa:ondrej/php 따위를 사용하는데, 아래와 같은 에러가 뜬다.
Error sudo: add-apt-repository: command not found 이는 기본적인 패키지도 없기 때문이다... |
sudo apt install software-properties-common
위 이후에 저장소 추가가 가능해진다.
|
지원하지 않는 패키지 설치.. | 이건 여기가 아니라...나중에 따로 옮겨야겠다. 우분투 관련 문서로. | sudo add-apt-repository ppa:ondrej/php 등의 방법으로 저장소를 추가해
|
apache2 도메인이름 설정 | AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using ::1. Set the 'ServerName' directive globally to suppress this message
라는 에러가 뜬다. 서버에 이름이 없기 때문인데.. 방치해도 되지만.. 다른 에러가 뜨려나...? |
|
curl 문제 해결 | 이것저것 하다 보면 Error contacting the Parsoid/RESTBase server: (curl error: 6) Couldn't resolve host name 이 얻어진다. | sudo dhclient 을 하라고 하는데,
chroot 환경에선 Running in chroot, ignoring request: try-reload-or-restart 라는 에러가 뜬다.[미해결] |