Termux
"오늘의AI위키"의 AI를 통해 더욱 풍부하고 폭넓은 지식 경험을 누리세요.
1. 개요
Termux는 2015년에 처음 출시된 안드로이드 운영체제용 터미널 에뮬레이터로, 스웨덴 프로그래머 프레드릭 포른월에 의해 개발되었다. 패키지 관리자(pkg)를 통해 다양한 패키지를 설치할 수 있으며, CLI 애플리케이션에 안드로이드 기능을 노출하는 Termux:API, 터미널 스타일 변경을 위한 Termux:Styling 등 7개의 애드온을 제공한다. 초기에는 안드로이드 5.0 이상을 지원했으나, 2020년 1월부터 안드로이드 7.0 이상을 최소 운영체제 요구 사항으로 변경했고, 2020년 11월부터 구글 플레이에서의 배포가 중단되었으나, 2024년 6월 7일부터 다시 배포를 시작했다. 현재는 F-Droid 또는 GitHub에서 APK 파일을 설치하는 것을 권장한다.
더 읽어볼만한 페이지
- 터미널 에뮬레이터 - 콘솔 애플리케이션
콘솔 애플리케이션은 텍스트 기반 사용자 인터페이스를 활용하는 컴퓨터 프로그램으로, 단순성, 기종 의존성 감소, 자동화에 적합하며 프로그래밍 학습 및 테스트에도 유용하게 사용된다. - 터미널 에뮬레이터 - Xterm
Xterm은 X 윈도 시스템을 위한 터미널 에뮬레이터로, VT102, Tektronix 4014 등을 에뮬레이션하며 마우스 추적, 256색 프로토콜을 지원하고, X 리소스 파일 등을 통해 사용자 정의가 가능하며 UXterm은 유니코드를 지원한다. - 안드로이드 소프트웨어 - 페이스북
페이스북은 마크 저커버그가 2004년 공동 창업한 소셜 네트워킹 서비스로, 전 세계적인 확장과 다양한 기능 추가, 사업 영역 확장을 거쳤으나, 개인정보 문제 및 논란으로 비판받았고, 2021년 메타 플랫폼즈로 사명을 변경하며 메타버스 구축에 집중하고 있다. - 안드로이드 소프트웨어 - 유튜브
유튜브는 2005년 설립되어 다양한 비디오 콘텐츠를 공유하는 세계 최대 온라인 동영상 플랫폼으로 성장, 구글에 인수된 후 다양한 서비스를 출시하고 기술적 발전을 이루었으나, 저작권 문제, 극단주의 콘텐츠 확산, 개인정보보호 논란 등 사회적 문제에 직면해 광고 차단 프로그램 단속 강화 정책을 시행하고 있다.
2. 역사
Termux는 스웨덴 출신 프로그래머 프레드릭 포른월(Fredrik Fornwall)이 개발[12]했으며, 2015년에 초판이 출시되었다. 초기에는 Android 5.0 이상을 지원했으나, 2020년 1월부터 Android 7.0 이상을 요구하게 되었다.[13] 2022년에 Android 5 및 6에 대한 지원이 다시 추가되었다.[14]
Termux 패키지 및 기능 요청은 GitHub 이슈를 통해 이루어졌으며, 사용자들은 새로운 기능과 패키지를 추가하며 프로젝트에 기여했다.
구글 플레이를 통해 배포되던 Termux는 2020년 11월, 구글이 API 레벨 29(안드로이드 10)를 따르도록 강제하면서 업데이트가 중단되었다.[15][16] 이는 Termux의 정상 작동을 불가능하게 했기 때문이다. 이에 Termux 개발팀은 F-Droid나 GitHub에서 배포되는 apk 파일을 설치할 것을 권장하고 있다.[15][16] 2024년 6월 7일부터 구글 플레이 배포가 재개되었으나,[17] 개발팀은 여전히 F-Droid나 GitHub를 통한 설치를 권장한다.[15][16]
2021년 5월, Termux 패키지의 주요 호스트였던 Bintray 서비스가 종료되면서,[7] Hetzner로 호스팅 서비스가 이전되었다.[8]
2. 1. 개발 및 초기 출시
스웨덴 출신 프로그래머 프레드릭 포른월(Fredrik Fornwall)이 Termux를 개발[12]했으며, 2015년에 초판이 출시되었다. 출시 당시 지원 OS 요건은 Android 5.0 이후였으나, 2020년 1월 1일을 기점으로 Android 5.0/6.0 지원이 중단되었고, Android 7.0 이후로 요건이 상향되었다.[13] 2022년부터 Android 5와 6에 대한 지원이 부활했다.[14]Termux는 2015년에 처음 출시되었다. 패키지와 기능 요청에 대한 지원은 앱 저장소의 GitHub 이슈를 통해 추가되었다. 사람들은 새로운 기능과 패키지를 추가하여 프로젝트에 기여할 수도 있다.
2020년 1월, Termux 개발팀은 안드로이드 5-6를 실행하는 기기에 대한 지원을 종료하여, 안드로이드 버전 7을 최소 운영체제 요구 사항으로 만들었다. Termux
v0.101은 Google Play 스토어에서 업데이트된 마지막 버전이었다. 2020년 11월부터 Google Play는 API 레벨 29를 타겟팅하는 앱을 강제 적용하여 개인 애플리케이션 디렉토리에서 바이너리 실행을 중단시켰다. Google에 따르면:안드로이드 10을 타겟팅하는 신뢰할 수 없는 앱은 앱의 홈 디렉토리 내의 파일에서 exec()를 호출할 수 없습니다. 쓰기 가능한 앱 홈 디렉토리에서 파일을 실행하는 것은 W^X 위반입니다. 앱은 앱의 APK 파일 내에 포함된 바이너리 코드만 로드해야 합니다.[6]구글 플레이에서도 Termux가 배포되고 있지만, 구글이 2020년 11월 2일 이후, 구글 플레이에서 배포하는 앱에 대해 의무로 하고 있는 API 레벨 29(Android 10)를 타겟으로 Termux를 빌드하면, 원래의 동작이 불가능하기 때문에, 구글 플레이에서의 업데이트는 중단되었지만,[15][16] 2024년 6월 7일부터 구글 플레이에서의 배포가 부활했다.[17] 하지만 2024년 9월 현재, Termux 개발팀은 F-Droid 또는 GitHub에서 배포되는 apk 파일로부터의 설치를 권장하고 있다.[15][16] Termux 개발팀은 F-Droid가 이러한 제한을 가하지 않으므로, 업데이트를 계속 받기 위해 F-Droid로 이동할 것을 제안한다. 프로젝트의 GitHub 저장소에서 APK 파일을 다운로드하는 것도 가능하다.
2021년 5월, Termux 패키지의 주요 호스트였던 Bintray가 서비스를 종료했다.[7] Termux는 다른 호스팅 서비스인 Hetzner로 이전했다.[8]
2. 2. 지원 운영체제 변화
Termux는 2015년에 처음 출시될 당시 Android 5.0 이상을 지원했다. 2020년 1월 1일부로 Android 5.0 및 6.0 지원이 중단되고, Android 7.0 이상을 요구하게 되었다.[13] 그러나 2022년부터 Android 5와 6에 대한 지원이 다시 추가되었다.[14]구글 플레이에서 배포되던 Termux는 구글이 2020년 11월 2일 이후, 구글 플레이에서 배포하는 앱에 대해 API 레벨 29 (Android 10)를 따르도록 강제하면서 업데이트가 중단되었다.[15][16] 이는 Termux의 정상적인 동작을 불가능하게 만들기 때문이었다. Termux 개발팀은 F-Droid 또는 GitHub에서 배포되는 apk 파일을 설치하도록 권장하고 있다.[15][16] 2024년 6월 7일부터 구글 플레이에서의 배포가 재개되었지만,[17] 2024년 9월 현재, Termux 개발팀은 여전히 F-Droid 또는 GitHub를 통한 설치를 권장한다.[15][16]
2. 3. 배포 방식 변화 (Google Play 중단 및 F-Droid 권장)
구글 플레이에서 Termux가 배포되었지만, 구글이 2020년 11월 2일 이후 구글 플레이 배포 앱에 대해 API 레벨 29(안드로이드 10)를 타겟으로 하도록 의무화하면서 문제가 발생했다. API 레벨 29를 타겟으로 Termux를 빌드하면 원래 동작이 불가능해지기 때문에, 구글 플레이 업데이트는 중단되었다.[15][16]Google에 따르면, 안드로이드 10을 타겟팅하는 신뢰할 수 없는 앱은 앱 홈 디렉토리 내 파일에서 `exec()` 호출이 불가능하며, 이는 W^X 위반에 해당한다. 따라서 앱은 APK 파일 내에 포함된 바이너리 코드만 로드해야 한다.[6]
이에 Termux 개발팀은 이러한 제한이 없는 F-Droid로 이동하여 업데이트를 계속 받을 것을 제안한다. GitHub 프로젝트 저장소에서 APK 파일을 다운로드하는 것도 가능하다.[15][16]
2024년 6월 7일부터 구글 플레이 배포가 부활했지만,[17] 2024년 9월 현재, Termux 개발팀은 F-Droid 또는 GitHub에서 배포되는 apk 파일 설치를 권장하고 있다.[15][16]
3. 주요 기능
Termux는 다음과 같은 주요 기능을 제공한다.
- '''패키지 관리''': Termux는 자체 패키지 관리자(`pkg`)를 통해 .deb 형식의 패키지를 설치할 수 있다. FHS를 따르지 않아 일반적인 데비안 패키지는 설치할 수 없지만, 사용자가 직접 패키지를 빌드하고 제출할 수 있다.
- '''사용자 인터페이스''': 단순한 사용자 인터페이스를 제공하며, 추가 키 행과 터미널 출력만 표시한다. Termux: Styling을 통해 색 구성표와 글꼴을 변경할 수 있다. `~/.termux/termux.properties` 파일을 편집하여 추가 기능 키와 컨트롤을 설정할 수 있다.
- '''마우스/터치 지원''': htop과 같은 ncurses 기반 애플리케이션과의 상호 작용을 위한 마우스/터치 지원을 제공한다. 터미널 버퍼를 스와이프하여 스크롤할 수 있다.
- '''확장 기능(Add-ons)''': 7개의 확장 기능을 제공한다.
- ''Termux:API'': CLI 애플리케이션에서 Android 기능을 사용할 수 있다.
- ''Termux:Boot'': 기기 부팅 시 Termux 명령을 실행한다.
- ''Termux:Widget'': 홈 화면 위젯이나 바로 가기에서 스크립트를 실행할 수 있다.
- ''Termux:Float'': 터미널 세션을 플로팅 창에서 실행한다.
- ''Termux:Tasker'': Tasker와 Termux를 통합한다.
확장 기능은 애플리케이션과 동일한 소스에서 설치해야 동일한 사용자 ID를 사용하도록 할 수 있다.
3. 1. 패키지 관리
Termux의 패키지는 애플리케이션의 패키지 관리자(pkg)를 통해 설치되며, .deb 형식을 사용한다. 하지만, Termux는 FHS를 준수하지 않으므로 일반적인 데비안 패키지는 설치할 수 없다.[9] 사용자는 패키지를 직접 빌드하고 제출할 수도 있다. 2021년 기준으로 1,000개 이상의 Termux 패키지를 사용할 수 있다.3. 2. 사용자 인터페이스
Termux의 사용자 인터페이스는 매우 단순하며, 추가 키 행과 터미널 출력만 표시한다. 색상 구성표와 글꼴은 Termux: Styling을 통해 변경할 수 있다.추가 키 행도 사용자가 직접 설정할 수 있다. 사용자는 `~/.termux/termux.properties` 파일을 편집하여 더 많은 기능 키와 컨트롤을 추가할 수 있다.
Termux는 마우스/터치 지원을 제공하며, 이는 htop 및 기타 ncurses 기반 애플리케이션과 같은 프로그램과 상호 작용하는 데 사용할 수 있다. 터미널 버퍼에서 위 또는 아래로 스와이프하면 스크롤할 수 있다.
3. 3. 확장 기능 (Add-ons)
Termux는 7개의 확장 기능(애드온)을 제공한다.- ''Termux:API'': CLI 애플리케이션에서 Android 기능을 사용할 수 있게 한다.
- ''Termux:Styling'': 터미널의 색 구성표와 글꼴을 변경할 수 있다.
- ''Termux:Boot'': 기기 부팅 시 Termux 명령을 실행한다.
- ''Termux:GUI'': 일부 Termux 앱이 기본 Android 리소스를 사용하여 GUI를 갖도록 허용한다. X11/Wayland 앱에서는 작동하지 않는다.
- ''Termux:Widget'': 사용자가 홈 화면의 위젯이나 바로 가기에서 스크립트를 실행할 수 있게 한다.
- ''Termux:Float'': 터미널 세션을 플로팅 창에서 실행한다.
- ''Termux:Tasker'': Tasker와 Termux를 통합한다.
확장 기능은 애플리케이션과 동일한 소스에서 설치해야 동일한 사용자 ID를 사용하도록 할 수 있다.
4. 설치
설치 과정은 APK 파일에서 부트스트랩 아카이브를 추출하고, 실행 파일에 올바른 권한을 설정하며, 홈 디렉토리와 같은 디렉토리를 설정하는 것이다. 플레이 스토어 버전의 Termux는 더 이상 업데이트되지 않으므로, 최신 업데이트를 받으려면 F-Droid 또는 깃허브에서 Termux를 설치하는 것이 권장된다.
5. 패키지 저장소
Termux는 3개의 사용 가능한 저장소를 가지고 있다. 기본 Termux 부트스트랩 설치에 포함된 저장소는 다음과 같다.
참조
[1]
웹사이트
Use a Linux terminal on your Android phone
https://opensource.c[...]
2020-08-11
[2]
웹사이트
ZSH - Termux Wiki
https://wiki.termux.[...]
2020-07-30
[3]
웹사이트
The Termux Wiki
https://wiki.termux.[...]
2021-07-30
[4]
웹사이트
Graphical Environment - Termux Wiki
https://wiki.termux.[...]
2021-07-30
[5]
간행물
termux/proot-distro
https://github.com/t[...]
Termux
2024-11-03
[6]
웹사이트
Behavior changes: apps targeting API 29+
https://developer.an[...]
2021-12-01
[7]
웹사이트
Into the Sunset: Bintray, JCenter, GoCenter, and ChartCenter
https://jfrog.com/bl[...]
2021-02-03
[8]
웹사이트
Termux
https://termux.dev/e[...]
2023-06-01
[9]
웹사이트
Differences from Linux - Termux Wiki
https://wiki.termux.[...]
2021-07-30
[10]
웹사이트
Releases · termux/termux-app · GitHub
https://github.com/t[...]
null
[11]
웹사이트
Use a Linux terminal on your Android phone
https://opensource.c[...]
2020-08-11
[12]
웹사이트
Fredrik Fornwall's CV
https://fornwall.net[...]
[13]
웹사이트
Dev: Development Session 42
https://wiki.termux.[...]
2019-10-27
[14]
웹사이트
Termux on android 5 or 6 · termux/termux-app Wiki · GitHub
https://github.com/t[...]
null
[15]
웹사이트
Here’s why the Termux app is no longer receiving updates on Google Play
https://www.xda-deve[...]
2021-01-22
[16]
웹사이트
Termux Google Play
https://wiki.termux.[...]
[17]
웹사이트
Termux on Google Play · GitHub
https://github.com/t[...]
null
[18]
웹인용
Use a Linux terminal on your Android phone
https://opensource.c[...]
2020-08-11
[19]
웹인용
ZSH - Termux Wiki
https://wiki.termux.[...]
2020-07-30
본 사이트는 AI가 위키백과와 뉴스 기사,정부 간행물,학술 논문등을 바탕으로 정보를 가공하여 제공하는 백과사전형 서비스입니다.
모든 문서는 AI에 의해 자동 생성되며, CC BY-SA 4.0 라이선스에 따라 이용할 수 있습니다.
하지만, 위키백과나 뉴스 기사 자체에 오류, 부정확한 정보, 또는 가짜 뉴스가 포함될 수 있으며, AI는 이러한 내용을 완벽하게 걸러내지 못할 수 있습니다.
따라서 제공되는 정보에 일부 오류나 편향이 있을 수 있으므로, 중요한 정보는 반드시 다른 출처를 통해 교차 검증하시기 바랍니다.
문의하기 : help@durumis.com
