ການຕັ້ງຄ່າ usb-moded¶
Note
ຂໍ້ມູນໃນໜ້ານີ້ໃຊ້ໄດ້ກັບພອດທີ່ຮອງຮັບ Ubuntu Touch 20.04. ເພື່ອເຮັດໃຫ້ພອດຂອງທ່ານຮອງຮັບ Ubuntu Touch 20.04 ໃຫ້ເບິ່ງ ອັບເດດການພອດສຳລັບ Ubuntu Touch 20.04.
usb-moded ແມ່ນ daemon ໃໝ່ໃນ Ubuntu Touch 20.04 ເຊິ່ງຈັດການການປ່ຽນໂໝດ USB ເຊັ່ນ MTP ແລະ developer mode. ມັນມາປ່ຽນແທນ Upstart jobs ໃນເວີຊັນ 16.04 ແລະ ສະຄຣິບ setupusb ທີ່ໃຊ້ໃນພອດລຸ້ນຫຼ້າສຸດ.
ລະບົບສາມາດກວດພົບການຕັ້ງຄ່າສຳຄັນສ່ວນໃຫຍ່ໄດ້ເອງ ແຕ່ເພື່ອໃຫ້ usb-moded ເຮັດວຽກໄດ້ດີທີ່ສຸດ ພວກເຮົາແນະນຳໃຫ້ຜູ້ພອດທຳການຕັ້ງຄ່າບາງຢ່າງເພື່ອຮັບປະກັນປະສົບການການໃຊ້ງານທີ່ດີທີ່ສຸດ.
ປະຫວັດຂອງການຈັດການໂໝດ USB¶
ໃນ Ubuntu Touch 16.04 ພວກເຮົາເຄີຍໃຊ້ Android properties ເພື່ອເກັບ ແລະ ຕັ້ງຄ່າ USB ຂອງໂທລະສັບ. ວິທີນີ້ເຄີຍໃຊ້ໄດ້ດີໃນເມື່ອກ່ອນ ແຕ່ປັດຈຸບັນໃຊ້ບໍ່ໄດ້ແລ້ວ:
ຕັ້ງແຕ່ Halium 7.1, ສ່ວນປະກອບຝັ່ງ Android ທີ່ສົ່ງສັນຍານຫາ Upstart ເພື່ອປ່ຽນສະຖານະແມ່ນບໍ່ໄດ້ຖືກລວມເຂົ້າອີກ. ນອກຈາກນັ້ນ ແນວຄິດເລື່ອງສັນຍານເບິ່ງຄືວ່າບໍ່ມີຢູ່ໃນ Systemd.
ຕັ້ງແຕ່ Android 8, ໂຄ້ດການຕັ້ງຄ່າໂໝດ USB ໄດ້ຍ້າຍໄປຢູ່ໃນ HAL process ທີ່ຄວບຄຸມໂດຍເວນເດີ (vendor) ເຊິ່ງສື່ສານຜ່ານ HIDL.
ສິ່ງນີ້ນຳໄປສູ່ການທີ່ຜູ້ພອດຕ້ອງໃຊ້ສະຄຣິບສະເພາະກິດ ເຊັ່ນ setupusb ທີ່ຣັນຕອນບູດເພື່ອຕັ້ງຄ່າ USB ພຽງຄັ້ງດຽວ. ເມື່ອສິ່ງພື້ນຖານແບບນີ້ຖືກໂຍນໃຫ້ຜູ້ພອດຈັດການເອງ ກໍຫຼີກລ່ຽງບໍ່ໄດ້ທີ່ຈະເກີດບັນຫາຄວາມບໍ່ຕໍ່ເນື່ອງ (fragmentation).
ໃນ Ubuntu Touch 20.04 ພວກເຮົາປ່ຽນມາໃຊ້ usb-moded ເຊິ່ງເປັນ daemon ຈາກ SailfishOS. Daemon ນີ້ບໍ່ໄດ້ອີງໃສ່ Android properties ແຕ່ຕ້ອງມີການຕັ້ງຄ່າ. ພວກເຮົາໄດ້ສ້າງ "configurator" ເພື່ອກວດພົບການຕັ້ງຄ່າເຫຼົ່ານັ້ນໂດຍອັດຕະໂນມັດ ແຕ່ມັນກໍບໍ່ສາມາດກວດພົບໄດ້ທຸກຢ່າງ ຜູ້ພອດຈຶ່ງຍັງຕ້ອງທຳການຕັ້ງຄ່າບາງສ່ວນຢູ່.
ການຕັ້ງຄ່າພື້ນຖານ¶
ການຕັ້ງຄ່າຫຼັກແມ່ນຢູ່ທີ່ /etc/default/usb-moded.d/device-specific-config.conf ເຊິ່ງຜູ້ພອດສາມາດໃຊ້ລະບົບ overlay ເພື່ອວາງໄຟລ໌ໄດ້. ໄຟລ໌ແມ່ນຢູ່ໃນຮູບແບບ <key>=<value> ງ່າຍໆ ດັ່ງຕົວຢ່າງ:
IDVENDOR=0E8D
IDPRODUCT_MTP=2008
IDPRODUCT_MTP_ADB=201D
IDPRODUCT_RNDIS=2004
IDPRODUCT_RNDIS_ADB=2005
USB_MODED_ARGS=
ສິ່ງຕໍ່ໄປນີ້ສາມາດຕັ້ງຄ່າໄດ້:
USB vendor & product IDs¶
ແນະນຳຢ່າງຍິ່ງໃຫ້ຕັ້ງຄ່າຕໍ່ໄປນີ້. ຫາກບໍ່ຕັ້ງຄ່າ ລະບົບຈະກັບໄປໃຊ້ test code ຈາກ pid.codes project.
IDVENDOR
IDPRODUCT_MTP
IDPRODUCT_MTP_ADB
IDPRODUCT_RNDIS
IDPRODUCT_RNDIS_ADB
ມັນຮັບຄ່າ IDs ໃນຮູບແບບເລກຖານສິບຫົກໂດຍບໍ່ມີຄຳນຳໜ້າ 0x. ທ່ານສາມາດຫາ IDs ໄດ້ຈາກ:
ໄຟລ໌
init.<device>.rcຫຼືinit.<chipset>.rcຂອງອຸປະກອນທ່ານ.ຊອດໂຄ້ດ USB HAL ຂອງອຸປະກອນທ່ານ (ຖ້າມີ).
ສະຄຣິບ
setupusbຂອງອຸປະກອນທ່ານ (ຖ້າມີ).
ຫາກບໍ່ພົບ ທ່ານອາດຈະຕ້ອງກວດສອບເບິ່ງວ່າອຸປະກອນຂອງທ່ານສະແດງຜົນແນວໃດເມື່ອບູດໃນ Android.
Note
ພວກເຮົາຮັບຮູ້ວ່າບາງອຸປະກອນໃຊ້ vendor IDs ທີ່ຕ່າງກັນໃນແຕ່ລະໂໝດ. ຫາກອຸປະກອນທ່ານເປັນແບບນັ້ນ ກະລຸນາໄປກົດ upvote ບັນຫານີ້ໃນ GitLab.
ຊື່ທີ່ສະແດງຂອງອຸປະກອນ (Pretty name)¶
ນີ້ແມ່ນຊື່ທີ່ຈະສະແດງເມື່ອສຽບອຸປະກອນເຂົ້າກັບຄອມພິວເຕີ. ສ່ວນຫຼາຍພວກເຮົາຈະກວດພົບຊື່ນີ້ໄດ້ຈາກ Android properties ແຕ່ຫາກການກວດພົບບໍ່ຖືກຕ້ອງ ຫຼື ທ່ານຢາກປ່ຽນຊື່ໃໝ່ ກໍສາມາດຕັ້ງຄ່າໄດ້ຢູ່ນີ້.
MANUFACTURER
PRODUCT
ອາກິວເມັນຂອງ usb-moded¶
ການຕັ້ງຄ່ານີ້ໃຊ້ຄວບຄຸມ flag ໃນການເປີດໃຊ້ usb-moded daemon. ສ່ວນຫຼາຍ usb-moded ຈະເຮັດວຽກໄດ້ໂດຍບໍ່ຕ້ອງໃຊ້ flag ໃດໆ. ແຕ່ໃນ rootfs ຈະມີຄ່າເລີ່ມຕົ້ນເປັນ -r ເຊິ່ງເປັນການເປີດ rescue mode ຕອນບູດ (ເບິ່ງລາຍລະອຽດດ້ານລຸ່ມ). ເນື່ອງຈາກ rescue mode ອາດເຮັດໃຫ້ຜູ້ໃຊ້ທົ່ວໄປສັບສົນ ຜູ້ພອດຈຶ່ງຄວນຕັ້ງຄ່ານີ້ໃຫ້ເປັນຄ່າຫວ່າງເພື່ອປິດ rescue mode.
USB_MODED_ARGS
ກ່ຽວກັບ rescue mode ຂອງ usb-moded¶
rescue mode ຂອງ usb-moded ຈະຄ້າຍກັບ usb-tethering ຂອງ hybris-usb. ມັນຈະເຮັດໃຫ້ USB ຂອງໂທລະສັບເຮັດວຽກເປັນ network interface ແລະ ເລີ່ມ DHCP server. ໂທລະສັບຈະເຂົ້າເຖິງໄດ້ທີ່ IP 10.15.19.82 ແລະ ມີ SSH server ສຸກເສີນທີ່ພອດ 8022. ໂໝດນີ້ມີໄວ້ໃຫ້ຜູ້ພອດໃຊ້ debug ບັນຫາໃນລະຫວ່າງການພັດທະນາ ແລະ ຈະຢູ່ໃນໂໝດນີ້ຈົນກວ່າຈະຖອດແລ້ວສຽບສາຍ USB ໃໝ່.
ພຶດຕິກຳນີ້ເປັນປະໂຫຍດສຳລັບຜູ້ພອດ ແຕ່ອາດເຮັດໃຫ້ຜູ້ໃຊ້ທົ່ວໄປສັບສົນເມື່ອປ່ອຍພອດອອກໄປແລ້ວ. ຂ້າພະເຈົ້າຈຶ່ງແນະນຳໃຫ້ປິດໂໝດນີ້ກ່ອນເຜີຍແຜ່ໃຫ້ຜູ້ໃຊ້ ໂດຍການ override USB_MODED_ARGS ຕາມທີ່ໄດ້ກ່າວໄວ້.
ຟີເຈີກູ້ໄພອີກຢ່າງແມ່ນການບັງຄັບໃຫ້ usb-moded ເຂົ້າສູ່ "rescue mode" ຫຼື ເປີດ ADB ທຸກຄັ້ງທີ່ບູດ. ເຮັດໄດ້ໂດຍການວາງໄຟລ໌ຫວ່າງໄວ້ທີ່ /userdata/.force-ssh ຫຼື /userdata/.force-adb (ເຊິ່ງກໍຄື /data/.force-ssh ຫຼື /data/.force-adb ໃນ recovery) ແລ້ວລະບົບຈະຈັດການເປີດໂໝດທີ່ຖືກຕ້ອງໃຫ້ເອງ.
Note
ຫາກໃຊ້ ADB ທ່ານອາດຈະຕ້ອງປິດການແຈ້ງເຕືອນການຂໍອະນຸຍາດ ADB ນຳ. ເບິ່ງ ອະນຸຍາດການເຂົ້າເຖິງອຸປະກອນ.
ການຕັ້ງຄ່າ usb-moded ໂດຍກົງ¶
ນອກຈາກການປັບແຕ່ງຜ່ານ configurator script ແລ້ວ ຜູ້ພອດຍັງຕັ້ງຄ່າຕົວເລືອກ usb-moded ໂດຍກົງໄດ້ຜ່ານໄຟລ໌ /etc/usb-moded/90-device-specific-config.ini. ເຖິງຢ່າງໃດກໍຕາມ ນີ້ແມ່ນທາງເລືອກສຸດທ້າຍໃນກໍລະນີທີ່ການກວດພົບອັດຕະໂນມັດລົ້ມເຫຼວ. ຫາກທ່ານຕ້ອງໄດ້ໃຊ້ໄຟລ໌ນີ້ ໃຫ້ພິຈາລະນາແຈ້ງບັນຫາໄປທີ່ repository ຂອງ usb-moded. ສຳລັບຮູບແບບການຂຽນ (syntax) ໃຫ້ເບິ່ງທີ່ usb-moded's docs <https://github.com/sailfishos/usb-moded/blob/master/docs/usb_moded-doc.txt>