우리가 사용하는 휴대폰은 고성능 컴퓨터이고 또 Linux 시스템 을 사용합니다.
수년 사용하다가 새로운 기계로 바꾸고 나면 서랍 속에 잠들고 있죠
이것을 이용하여 Linux 서버 (DVSwitch 서버)를 설치할 수 있을까 하여
여러번 시도했는데 번번히 실패했는데 어제 밤 성공하여 공유 합니다.
ChatGPT 도움을 받았습니다.
사전 준비 사항
- 안드로이드 스마트폰: 최소 안드로이드 버전 5.0 이상
- 인터넷 연결: 앱 다운로드 및 설치를 위해 안정적인 인터넷 연결 필요
단계 1: Termux 설치
Termux는 안드로이드에서 리눅스 환경을 제공하는 앱입니다.
Google Play 스토어 에서 Termux 설치
1-1] 설치가 끝나면 실행해주세요. 아래와 같은 화면이 나오면 update & upgrade 실행
pkg update && pkg upgrade
단계 2: PC에서 스마트폰 SSH 접속할 수 있도록 openssh 설치
이 openssh는 휴대폰으로 이후 설치 실행할려면 타이핑이 힘들어
PC에서 putty나 MovaXterm을 이용하여 접속할 수 있는 프로그램 입니다.
pkg install openssh
위의 오른쪽 화면이 뜨면 성공
2-1] 내 휴대폰 ip와 user ID 및 Password 변경
- 휴대폰 ip는 iptime과 같은 공유기로 가서 유대폰 내부 ip 주소 확인하세요
- whoami 명령어를 통해 user ID 학인
whoami
아래 결과를 보면 u0_a269 가 User ID 입니다.
passwd
를 입력하고 비밀번호 재설정 합니다.
첫번째 입력한 비밀번호를 다시 입력하면 아래와 같은 화면이 나옵니다.
sshd
를 입력하여 ssh 접속을 허용합니다.
2-2] putty 혹은 MovaXterm을 이용하여 휴대폰에 ssh 접속
2-1] 에서 확인한 ip와 user ID를 입력하고 반드시 Port는 8022 입니다.
단계 3: PRoot 와 Debian 설치
- PRoot는 루트 권한 없이 가상 루트 파일 시스템을 제공하는 도구입니다.
이를 통해 루트 권한이 필요한 작업을 수행할 수 있습니다.
3-1] PRoot 설치:
pkg install proot proot-distro
3-2] Debian 배포판 설치:
proot-distro install debian
3-3] Debian 배포판 실행:
proot-distro login debian
위 붉은 명령어를 복사 붙여넣기를 3번 하면 아래와 같은 프롬프트가 나오면 정상입니다.
이제 Debian 환경에서 작업을 계속할 수 있습니다.
단계 4: DVSwitch 수동 설치
4-1] update & upgrade
apt update && apt upgrade -y
4-2] 필요 패키지 설치
apt install git curl wget multitail -y
4-3] bashrc 편리한 간편 명령어 등록
복잡한 명령어를 단순화한 것을 등록하면 편리합니다.
nano ~/.bashrc
아래 간편 명령어를 복사하여 붙여넣기 하고 저장 한 후 source ~/.bashrc 를 실행하면 이후 간편 명령어 작동합니다.
alias cls='clear'
alias naba='nano ~/.bashrc && source ~/.bashrc'
alias upba='source ~/.bashrc'
alias bas='nano ~/.bashrc'
alias llba='alias -p'
alias ll='ls -l'
alias ls='ls --color=auto'
alias up='apt update && sudo apt upgrade -y'
DT=$(date -u +%Y-%m-%d.log)
MM=/var/log/mmdvm/MMDVM_Bridge
DV=/var/log/dvswitch
AB=Analog_Bridge.log
AR01=Analog_Reflector01.log
alias mt="multitail $MM-$DT $DV/$AB "
source ~/.bashrc
4-4] DVSwitch Server 설치
wget http://dvswitch.org/buster
chmod +x buster
./buster
4-5] DVSwitch DMR 필요 패키지 설치
라즈베리파이에서 DVSwitch Server 설치 시 명령어는 작동 안됩니다.
따라서 아래와 같이 DMR에만 사용되는 필요 패키지만 설치하시기 바랍니다.
apt install analog-bridge md380-emu mmdvm-bridge -y
4-5] MMDVM_Bridge.ini와 Analog_Bridge.ini 편집 및 run 생성
nano /opt/MMDVM_Bridge/MMDVM_Bridge.ini
[General]
Callsign=DS5QDR <--- 자신의 콜싸인 입력
Id=450049598 <--- DMRID + ESSID 입력 (7자리 + 2자리 숫자)
Timeout=180
Duplex=0
[DMR]
Enable=1 <--- 1 로 변경
ColorCode=1
EmbeddedLCOnly=1
DumpTAData=0
[DMR Network]
Enable=1 <--- 1 로 변경
Address=4501.master.brandmeister.network
Port=62031
Jitter=360
Local=62032
Password=passw0rd <--- 브랜드마이스트 SelfCare 비밀번호
# for DMR+ see https://github.com/DVSwitch/MMDVM_Bridge/blob/master/DOC/DMRplus_startup_options.md
# for XLX the syntax is: Options=XLX:4009
# Options=
Slot1=0
Slot2=1
Debug=0
저장 (Ctrl-X -> Y -> Enter)
nano /opt/Analog_Bridge/Analog_Bridge.ini
[AMBE_AUDIO]
address = 127.0.0.1 ; IP address of xx_Bridge
txPort = 31103 ; Transmit TLV frames to partner on this port
rxPort = 31100 ; Listen for TLV frames from partner on this port
ambeMode = DMR ; DMR, DMR_IPSC, DSTAR, NXDN, P25, YSFN, YSFW
minTxTimeMS = 2500 ; Analog -> Digital Minimum time in MS for hang delay (0-10000)
; The metadata below is used when ASL is the source since it does not have any concept of digital modes
gatewayDmrId = 4500495 ; 당신의 DMRID to use when transmitting from Analog_Bridge 7 digit ID
repeaterID = 450049598 ; DMRID + ESSID 총 9자리 숫자 repeater 7 digit ID plus 2 digit SSID
txTg = 9 ; TG to use for all frames sent from Analog_Bridge -> xx_Bridge
txTs = 2 ; Slot to use for frames sent from Analog_Bridge -> xx_Bridge
colorCode = 1 ; Color Code to assign DMR frames
[USRP]
address = 127.0.0.1 ; IP address of USRP partner
txPort = 31101 ; Transmit USRP frames on this port
rxPort = 31101 ; Listen for USRP frames on this port
usrpAudio = AUDIO_USE_GAIN ; Digital -> Analog (AUDIO_UNITY, AUDIO_USE_GAIN, AUDIO_USE_AGC)
usrpGain = 1.10 ; Gain factor when usrpAudio = AUDIO_USE_GAIN (0.0 to 5.0)
usrpAGC = -20,10,100 ; Set the agc threshold (db), slope (db) and decay (ms)
tlvAudio = AUDIO_USE_GAIN ; Analog -> Digital (AUDIO_UNITY, AUDIO_USE_GAIN, AUDIO_BPF)
tlvGain = 0.25 ; Gain factor when tlvAudio = AUDIO_USE_GAIN (0.0 to 5.0)
저장 (Ctrl-X -> Y -> Enter)
4-6] run 생성 및 실행
nano /usr/local/bin/run
#!/bin/bash
# kill MMDVM_Bridge and Analog_Bridge processes
killall MMDVM_Bridge
killall Analog_Bridge
# Give processes time to terminate
sleep 1
# Start MMDVM_Bridge
echo "Starting MMDVM_Bridge..."
cd /opt/MMDVM_Bridge
/opt/MMDVM_Bridge/MMDVM_Bridge MMDVM_Bridge.ini >/dev/null 2>&1 &
# Start Analog_Bridge and log output
echo "Starting Analog_Bridge..."
cd /opt/Analog_Bridge
stdbuf -oL -eL ./Analog_Bridge Analog_Bridge.ini 1> /var/log/dvswitch/Analog_Bridge.log 2>&1 &
저장 (Ctrl-X -> Y -> Enter) 한 후 아래 명령어 실행
chmod +x /usr/local/bin/run
run
mt
위와 같이 나오면 DVSwitch DMR 서버 정상 작동 됩니다.
단계 5: DVSwitch Mobile 로 접속
아래 예시와 같이 DVSwitch Mobile 프로그램에서 설정한 후 Save를 눌리면 접속 및 교신이 될 것입니다.
DVSwitch 가 설치된 안드로이드 폰이 아닌 다른 폰에서만 접속이 됩니다.
(해결 방법 아시는 분은 댓글 부탁 드립니다.)
이상입니다.
DS5QDR 73!
'DVSwitch' 카테고리의 다른 글
2024-08-12 DVSwitch : Bookworm (Debian 12) release information. (0) | 2024.08.12 |
---|---|
2023-09-09 DVSwitch : Mobile 처음 설치 후 사용 방법 설명 (입문자 추천) (0) | 2023.09.09 |
2023-09-07 DVSwitch : Mobile 과 USRP Client 송수신 음량 조정 방법 (0) | 2023.09.07 |
2023-06-20 DVSwitch : Dashboard & EasyUser Interface (14) | 2023.06.20 |
2023-03-02 DVSwitch : 필요한 Module만 설치 방법 (0) | 2023.03.02 |