Termux เป็นโปรแกรมจำลองเทอร์มินัลสำหรับอุปกรณ์ Android และแอปพลิเคชันบน Linux ทำงานได้โดยตรงโดยไม่จำเป็นต้องเข้าถึงรูทหรือการกำหนดค่าพิเศษ
ใน Termux แพ็กเกจเพิ่มเติมสามารถใช้ได้ผ่านตัวจัดการแพ็กเกจ APT เป้าหมายหลักของนักพัฒนาคือการนำประสบการณ์บรรทัดคำสั่ง Linux มาสู่ผู้ใช้อุปกรณ์พกพาโดยไม่ต้องปวดหัวมากเกินไปและ Termux ได้รับการเติมเต็มด้วยชุดยูทิลิตี้ที่ยอดเยี่ยม
ใน Termux แพ็คเกจที่รวมทั้งหมดสร้างด้วย Android NDK และมีเพียงการแก้ไขความเข้ากันได้เพื่อให้ใช้งานได้บน Android
ระบบปฏิบัติการ ไม่ให้การเข้าถึงระบบไฟล์ของคุณอย่างเต็มที่ ดังนั้น Termux จึงไม่สามารถติดตั้งไฟล์แพ็กเกจในไดเร็กทอรีมาตรฐานเช่น / bin, / etc, / usr หรือ / var แทน, ไฟล์ทั้งหมดถูกติดตั้งในไดเร็กทอรีส่วนตัวของแอปพลิเคชัน อยู่ใน "/data/data/com.termux/files/usr"
เพื่อความง่ายไดเร็กทอรีนี้ถูกเปลี่ยนชื่อเป็น "คำนำหน้า" และโดยปกติจะเป็น "$ PREFIX" ซึ่งเป็นตัวแปรสภาพแวดล้อมที่ส่งออกไปยังเชลล์ Termux ด้วย
ด้วยเหตุนี้นักพัฒนาจึงเตือนว่าไม่สามารถเปลี่ยนหรือย้ายไดเร็กทอรีนี้ไปยังการ์ด SD ได้ด้วยเหตุผลหลักสองประการ
ครั้งแรกที่ ระบบไฟล์ต้องรองรับสิทธิ์ Unix และไฟล์พิเศษ เป็นลิงก์สัญลักษณ์หรือซ็อกเก็ตและประการที่สองพา ธ ไปยังไดเร็กทอรี "คำนำหน้า" เป็นแบบฮาร์ดโค้ดในไบนารีทั้งหมด
นี่คือคุณสมบัติและฟังก์ชันหลักบางส่วนที่อ้างถึงโดยผู้เขียน Termux:
- ประกัน: คุณสามารถเข้าถึงเซิร์ฟเวอร์ระยะไกลโดยใช้ไคลเอ็นต์ OpenSSH ssh Termux รวมแพ็คเกจมาตรฐานเข้ากับการจำลองเทอร์มินัลที่แม่นยำในโซลูชันโอเพ่นซอร์สที่น่าสนใจ
- ฟังก์ชั่นรวม: คุณมีตัวเลือกในการใช้ Bash, fish หรือ Zsh และ nano, Emacs หรือ Vim ป้อน SMS ในกล่องขาเข้าของคุณเข้าถึงเทอร์มินัล API ด้วย curl และใช้ rsync เพื่อจัดเก็บสำเนาสำรองของรายชื่อผู้ติดต่อของคุณบนเซิร์ฟเวอร์ระยะไกล
- ปรับแต่งได้: สามารถติดตั้งแพ็คเกจจำนวนมากลงในระบบด้วยความช่วยเหลือของการจัดการแพ็คเกจ APT ที่รู้จักกันดีจาก Debian และ Ubuntu
- สำรวจได้: แพ็คเกจที่มีอยู่ใน Termux จะเหมือนกับแพ็คเกจสำหรับ Mac และ Linux คุณสามารถติดตั้ง man page บนโทรศัพท์ของคุณและอ่านได้ในเซสชันเดียวในขณะที่ทดลองกับอีกหน้าหนึ่ง
- รวมแบตเตอรี่: Termux รวมเวอร์ชันอัปเดตของ Perl, Python, Ruby และ Node.js
- ปรับขนาด: คุณสามารถเชื่อมต่อแป้นพิมพ์บลูทู ธ และเชื่อมต่ออุปกรณ์กับจอแสดงผลภายนอกได้หากจำเป็น Termux รองรับแป้นพิมพ์ลัดและรองรับเมาส์เต็มรูปแบบ
นอกเหนือจากระบบไฟล์แล้ว มีความแตกต่างอื่น ๆ กับลีนุกซ์รุ่นดั้งเดิมดังนั้น Termux ไม่ควรสับสนกับการแจกแจง ในความเป็นจริงแม้ว่าจะมีระบบนิเวศแพ็กเกจคล้ายกับลีนุกซ์ดิสทริบิวชัน แต่คุณควรทราบว่า Termux เป็นเพียงแอปพลิเคชันทั่วไปที่ทำงานบน Android
- ทุกอย่างถูกติดตั้งใน $ PREFIX และไม่อยู่ในไดเร็กทอรีมาตรฐานเช่น / bin หรือ / etc.
- สภาพแวดล้อมเป็นแบบผู้ใช้คนเดียวดังนั้นโปรดใช้ความระมัดระวังเมื่อเรียกใช้คำสั่งในฐานะรูทเนื่องจากอาจทำให้แท็กและสิทธิ์ของ SELinux (Security-Enhanced Linux) ยุ่งเหยิงได้
- Termux ใช้ libc เดียวกัน (ไลบรารีภาษา C มาตรฐาน) และตัวเชื่อมโยงแบบไดนามิกเดียวกันกับระบบปฏิบัติการ Android
ตามเว็บไซต์ Termux ความแตกต่างหลัก 3 ประการนี้ทำให้เกิดปัญหาเมื่อพยายามเรียกใช้โปรแกรมที่คอมไพล์สำหรับระบบ GNU / Linux ทั่วไป
สุดท้ายหน้า GitHub ของ Termux ตั้งข้อสังเกตว่าขณะนี้อีมูเลเตอร์ไม่ได้กำหนดเป้าหมายเป็น Android 10 (API 29) เนื่องจากระบบปฏิบัติการเวอร์ชันนี้มีการเปลี่ยนแปลงหลายอย่าง
“ แอปพลิเคชันที่ไม่น่าเชื่อถือที่กำหนดเป้าหมาย Android 10 ไม่สามารถเรียกใช้ exec () ในไฟล์ที่อยู่ในไดเรกทอรีหลักของแอปพลิเคชัน การเรียกใช้ไฟล์จากโฮมไดเร็กทอรีของแอปพลิเคชันสำหรับการเขียนนี้เป็นการละเมิด W ^ X แอปพลิเคชันควรโหลดรหัสไบนารีที่ฝังอยู่ในไฟล์ APK ของแอปพลิเคชันเท่านั้น "Google รายงานเกี่ยวกับ API 29
แอพที่จำเป็นสำหรับฉันอยู่ใน F-Droid :)