본문 바로가기
AI Project/On Device AI 프로젝트

[Termux] Termux 환경 특정 세션 Always on 기능 구현하기

by 으노으뇨 2026. 4. 20.
728x90
반응형
SMALL

✅ 5단계 — “죽어도 자동 재실행” 루프 만들기 (핵심!)Termux 환경에서 특정 세션 항상 켜져있게 설정하는 방법

✅ 목표 정리 (지금 우리가 만들 것)
✅ Termux 안에 tmux 세션 3 생성
✅ 세션 3은 항상 살아있음
✅ 그 세션 안에서

  • scrapy_bot.py
    manager.py
    를 자동 실행 + 죽어도 자동 재시작

 


tmux -V

버전나오는지 확인

pkg update
pkg install tmux -y

안나오면 설치해주세요

✅ 2단계 — tmux 세션 3 생성 (핵심)

 

tmux new-session -A -s 3

있다면 붙는다. 없다면 새로생성

✅ 3단계 — 세션 3 안에서 창(pane) 구성

🔹 화면 두 개로 나누기

Ctrl + b  "
터뮤즈

중간에 컨트롤을 누르고 + 

b누르고

여기 맨밑에 " 를 누르면 저 사진처럼 가로 분할이 됩니다.

✅ 4단계 — 각 pane 역할 정하기 (중요)

저는 지금 스크랩봇과 그걸 주기적으로 관리하는 파이썬 코드가 총 2개가 있습니다.

하나는 스크랩을 돌고 하나는 새벽2시마다 해당 파이썬을 종료시키고 pip 업데이트, 전날 수집된 데이터 압축, SMTP메일로 전송,

7일 데이터/폴더 삭제, 로그도 로그수집 서버로 전송

등을 처리합니다.

그래서 2개를 켰습니다. 그래서 제 루트가 /simple/scrapy_bot 인겁니다~

 

✅ 5단계 — “죽어도 자동 재실행” 루프 만들기 (핵심!)

🔹 pane 1: scrapy_bot 자동 재시작

while true; do
  python scrapy_bot.py
  echo "scrapy_bot crashed. restart in 5s..."
  sleep 5
done

✅ scrapy_bot.py가:

  • 크래시 나도
  • 네트워크 에러 나도
    👉 5초 후 자동 재시작

 

🔹 pane 2: manager 자동 재시작

 

✅ 6단계 — tmux 세션에서 빠져나오기 (중요)

tmux는 끄는 게 아니라 “떼어내는(detach)” 걸 해야 한다

✅ tmux 세션 떼어내기

Ctrl + b  d

마찬가지로 중앙의 컨트롤 + b d 를 누릅니다.

그럼 이렇게 아까 입력했던 기존의 터뮤즈로 돌아옵니다.

✅ 7단계 — 다시 접속하는 법

tmux attach -t 3

또는

tmux new-session -A -s 3

을 통해 들어가시면 됩니다.

✅ 8단계 — Termux 열면 자동으로 세션 3 들어가기 (자동화)

🔹 ~/.bashrc 열기

nano ~/.bashrc

전 이전부터 사부작사부작했었어서 이런게 있구요

if command -v tmux >/dev/null 2>&1; then
  if [ -z "$TMUX" ]; then
    tmux new-session -A -s 3
  fi
fi

이걸 맨밑에 추가합니다.

저장방법은

  • Ctrl + O → Enter (이건 키보드의 엔터입니다 ㅋ)
  • Ctrl + X

입니다.

cat ~/.bashrc

통해 확인 고고

 

근데 여기서 중요한건 안드로이드 설정입니다.

📱 설정 → 앱 → Termux

✅ 반드시 설정:

  • ✅ 배터리 최적화 ❌
  • ✅ 백그라운드 실행 허용
  • ✅ 절전 / 데이터 절약 예외
  • ✅ 자동 시작 허용 (있다면)

⚠️ 이거 안 하면:

  • 밤새 죽음
  • 재부팅 후 안 살아남음

그런데 재부팅시엔 터뮤즈한번쯤은 켜줘야합니다...

이것으로 터뮤즈 특정 세션 자동실행 및 셋팅 그리고 세션 분할

 

728x90
반응형
LIST

댓글