Termux - 다양한 패키지로 확장 가능한 Android용 터미널 에뮬레이터
(github.com/termux)- Android에서 리눅스 환경과 터미널 기능을 제공하는 오픈소스 앱으로, 다양한 패키지를 설치해 확장 가능
- Termux:API, Boot, Float, Styling, Tasker, Widget 등 여러 플러그인 앱을 통해 기능을 보완
- 설치는 F-Droid, GitHub, Google Play(실험적) 등에서 가능하며, 각 소스의 서명 키가 달라 혼용 불가
- Android 12 이상에서는 프로세스 제한으로 인한 불안정성이 발생할 수 있으며, 관련 이슈와 해결 링크 제공
- 개발자와 유지보수자를 위한 공유 라이브러리(termux-shared) , 커밋 메시지 규칙, 포크 지침 등이 명확히 문서화되어 있음
Termux 개요
-
Termux는 Android에서 리눅스 환경을 제공하는 터미널 에뮬레이터 앱
- 앱 자체는 사용자 인터페이스와 터미널 에뮬레이션 기능을 포함
- 설치 가능한 패키지는 별도 저장소인 termux/termux-packages에서 관리
- Android 12 이상에서는 프로세스 32개 제한 및 CPU 과다 사용 시 프로세스 종료 문제가 발생 가능
- 관련 이슈와 해결 방법은 GitHub 이슈 #2366 및 Android 문서 링크로 안내
Termux 앱과 플러그인
- 기본 앱 외에 다음과 같은 플러그인 앱을 지원
- Termux:API, Termux:Boot, Termux:Float, Termux:Styling, Termux:Tasker, Termux:Widget
- 모든 플러그인은 동일한 sharedUserId(com.termux) 를 사용하므로, 동일한 서명 키로 서명된 APK만 함께 설치 가능
설치 방법
- 최신 버전은 v0.118.3, Android 7 이상에서 완전 지원
- Android 5·6 지원은 2020년 종료되었으나, 2022년 GitHub 소스에서 앱만 재지원
-
서명 키가 다른 소스(F-Droid, GitHub 등)를 혼용 설치하면 오류 발생
- 다른 소스에서 설치하려면 기존 Termux 및 플러그인 APK를 모두 제거 후 재설치 필요
F-Droid
- F-Droid에서 직접 APK 다운로드 가능, 앱 설치 후 업데이트는 수동 확인 필요
- F-Droid 빌드는 Termux 개발자가 아닌 F-Droid 측에서 관리하며, 서명 키가 다름
- 아키텍처별 APK는 제공되지 않으며, 단일 universal APK (~180MB) 만 배포
GitHub
- GitHub Releases 또는 Build Action을 통해 APK 제공
- Android 7 이상은
apt-android-7, Android 5·6은apt-android-5버전 사용
- Android 7 이상은
-
GitHub 빌드 APK는 테스트 키(testkey_untrusted.jks) 로 서명되어 있으며, 누구나 동일 키로 빌드 가능
- 악성 버전 유포 위험이 있으므로 공식 GitHub 저장소 외 출처의 APK 설치는 비권장
- universal APK는 약 180MB, 아키텍처별 APK는 약 120MB
Google Play (실험적)
- Android 11 이상용 정책 대응 버전이 Google Play에 존재하나, 기능 누락 및 버그 있음
- Play 버전은 별도 저장소(termux-play-store)에서 개발 중
- F-Droid 버전과 sharedUserId 제거로 호환되지 않음, 자동 업데이트 비활성화 권장
제거 및 백업
- 다른 설치 소스로 전환하거나 앱 삭제 시, 모든 Termux 및 플러그인 APK를 완전히 제거해야 함
- 제거 전 Backing up Termux 절차를 통해 데이터 백업 가능
커뮤니티 및 문서
- 주요 커뮤니티: Reddit(r/termux) , Matrix/Gitter 채널, Twitter(@termuxdevs) , 지원 이메일(support@termux.dev)
- 공식 문서:
- 추가 자료: FAQ, 파일 시스템 구조, 원격 접근, Android 저장소 접근, 터미널 설정 등
Hacker News 의견들
-
내가 가장 좋아하는 소프트웨어 중 하나는 Termux를 휴대폰에 설치한 사람이 만든 Copyparty임
GitHub 링크는 여기, 그리고 관련 YouTube 영상도 있음- 웃기게도 나도 Copyparty를 여러 곳에서 쓰고 있었는데, 그 출처는 전혀 몰랐음
- 오늘 아침 본 것 중 최고였음. 집에 가면 꼭 써볼 예정임
-
나는 새 안드로이드 기기를 손에 넣을 때마다 제일 먼저 Termux를 설치함
블루투스 키보드 케이스를 연결해 소파에서 Neovim으로 원격 코딩을 하고, vimwiki로 노트를 관리하며 GitHub에 동기화함
대부분의 CLI 도구가 Termux 저장소에 있고, 없으면 직접 clang, cmake 등으로 빌드함
Termux 덕분에 여전히 Android를 메인으로 쓰고 있음- 어떤 키보드 케이스를 쓰는지 궁금함. 내 폰은 Pixel 8인데 흥미로움
- Android 16에는 이제 개발자 설정에서 Termux 비슷한 Linux 환경을 켤 수 있다고 들었음
- iOS와 비교하려는 건 아니지만, 이런 터미널 통합 환경은 iPhone에도 있었으면 좋겠음. 현실적으로는 SSH로 VM에 접속하는 게 한계일 듯함
-
내 Termux 사용 사례는 사진 백업 자동화임
NAS에 사진을 백업하지만 일부가 누락돼서, NAS에서 MD5 체크섬을 계산하고 폰에서 동일한 파일을 삭제하는 스크립트를 Termux로 실행함
이렇게 하면 수십 GB의 공간을 안정적으로 확보할 수 있음
관련 Nextcloud 이슈는 여기- Termux에서 rsync를 써서 백업함. exiftool, ffmpeg, ImageMagick 같은 도구도 있어서 정말 유용함
- Nextcloud 앱 문제는 꽤 흔한 듯함. Play 스토어 외 다른 곳에서 받은 앱이 더 잘 동작했다는 얘기도 있음
- Termux 위젯을 설치하면 홈 화면에서 바로 스크립트를 실행할 수도 있음
- 나는 그냥 round sync로 폴더를 ssh/sftp로 복사하고, 오래된 파일은 find 명령어로 지움
- 왜 굳이 스크립트를 보내는지 궁금함. md5 리스트만 보내도 될 것 같음
-
AI 기반 개발이 늘면서 Termux, tmux 같은 도구를 더 많은 사람이 쓰게 될 것 같음
폰에서 타이핑은 힘들지만, Unexpected Keyboard(링크) 같은 키보드와 vim 모드 덕분에 꽤 쓸 만함- 이 키보드는 Termux의 완벽한 짝처럼 보임. 알려줘서 고마움
- 나는 요즘 Switch 2 크기의 기기에 코딩 키보드가 달린 형태를 상상함
- 이 링크 덕분에 아침이 달라졌음. 정말 마음에 드는 키보드임
-
나는 Termux로 SSH를 필요할 때만 실행함
Termux를 켜면 SSH가 켜지고, 끄면 종료됨. rsync로 파일을 동기화하기에 충분함
항상 켜둘 필요가 없어 LocalSend나 SyncThing 같은 앱은 쓰지 않음. 데스크탑에서 간단한 sync 스크립트로 방향만 지정해 실행함- 참고로 나도 syncthing을 쓰지만 항상 켜두진 않음
-
요즘은 하드웨어 키보드가 달린 안드로이드 폰이 없어서 이런 앱을 거의 안 씀
예전 Motorola Droid 시절에는 Termux와 ConnectBot으로 생산성 높은 환경을 만들었음
지금은 잠재력도 줄고, 하드웨어 다양성이나 부트로더 개방성도 예전만 못함. Termux는 그 시절의 향수를 떠올리게 함- 곧 출시될 두 모델이 기대됨: Unihertz Titan 2 Elite, Clicks 스마트폰 키보드
- 나는 작지만 편한 블루투스 키보드를 씀. 대부분은 태블릿에서 키보드를 쓰는데, 거의 노트북처럼 느껴짐
-
Termux에서는 tmux, fish, git, yazi 같은 환경을 그대로 쓸 수 있음
Rust 앱도 빌드 가능하고, TUI 앱이 터치 입력에 반응하는 게 놀라움
iOS에도 이런 수준의 터미널이 있는지 궁금함- iOS에서는 ish.app 같은 x86 에뮬레이터를 써야 함. JIT 제한 때문에 성능은 떨어지지만, Android의 실행 제한은 없음
-
요즘 안드로이드에 풀 리눅스 환경이 생겼다는데, 그럼 Termux는 여전히 필요한가?
관련 토론은 r/androidterminal에서 많이 봄- Termux는 단순한 터미널 에뮬레이터임. 앱 샌드박스 안에서 네이티브로 실행되고, Android API 접근도 가능함
반면 새 리눅스 터미널은 별도의 VM에서 돌아가므로 더 많은 저장 공간을 씀 - 둘 다 써봤는데 Termux가 훨씬 나음. 새 리눅스 터미널은 파일 접근이 제한돼서 불편했음
- 단, 이 기능은 AVF 가상화를 지원하는 기기에서만 가능함
- 내 Galaxy S21 FE(Android 16)에는 “Run Linux Terminal on Android” 토글이 있지만 작동하지 않음
- 이런 기능이 추가된 걸 이제야 알았음. 알려줘서 고마움
- Termux는 단순한 터미널 에뮬레이터임. 앱 샌드박스 안에서 네이티브로 실행되고, Android API 접근도 가능함
-
Termux는 내게 최고의 안드로이드 터미널 에뮬레이터임
fzf, Neovim, Git으로 노트를 정리하고, SSH로 원격 접속도 함
Go로 CLI나 TUI를 빌드해 NDK로 컴파일하면 Termux에서 바로 실행 가능함 -
솔직히 궁금한데, 이렇게 작은 터치스크린에서 터미널 환경을 어떻게 쓰는지?
- 나는 Unexpected Keyboard(링크)를 써서 Alt, Ctrl, Esc, F키까지 다 씀
- 블루투스 키보드를 자주 쓰지만, S-Pen으로도 충분히 터미널 작업이 가능함. SSH, Vim, Org mode까지 다룸
- 기본 키보드보다 나은 소프트웨어 키보드가 있음. Unexpected Keyboard는 Ctrl, Alt, Tab 등도 지원함
- 사실 터치로 명령어 입력도 그리 불편하지 않음. 필요하면 블루투스 키보드나 SSH로 다른 기기에서 접속함
- 나는 Termux로 Vim을 배움. 버스에서 오프라인으로
:help문서를 보며 연습했음. 지금은 완전히 익숙해졌음