เขียนอนุญาตในบางเส้นทางเช่นการ์ด SD (extSdCard)


10

ในความพยายามที่จะถ่ายโอนไฟล์จากเซิร์ฟเวอร์ระยะไกลไปยังอุปกรณ์ Android ฉันพบปัญหาการอนุญาต

ปรากฎว่าฉันไม่ได้รับอนุญาตให้เขียนที่ตำแหน่งของการ์ด SD (/ mnt / extSdCard)

ฉันใช้ SSHDroid เป็นเซิร์ฟเวอร์ ssh บนอุปกรณ์ Android และ vSSH เป็นไคลเอ็นต์ ssh เพื่อใช้งาน ssh บนอุปกรณ์ Android

เนื่องจากทั้ง sudo และ su ดูเหมือนจะขาดหายไปในแอปเซิร์ฟเวอร์ ssh (SSHDroid) ฉันสงสัยว่าฉันจะเปลี่ยน / รับสิทธิ์ในการเขียนไปยังตำแหน่งการ์ด SD ได้อย่างไร หรือสิทธิ์รูทไม่เพียงพอที่จะเปลี่ยนการอนุญาตการเขียนและนี่เป็นเพียงการควบคุมโดย Android OS ดังนั้นข้อ จำกัด ของ OS?

สิ่งที่ฉันสามารถทำได้คือเขียนไปที่โฮมพา ธ ของเซิร์ฟเวอร์ ssh (SSHDroid) อย่างไรก็ตามเส้นทางนี้มีความยุ่งยากมากและไม่สามารถเข้าถึงได้จาก API filebrowser Android ปกติ นี่คือเหตุผลที่ฉันต้องการถ่ายโอนไฟล์ไปยังเส้นทางที่สามารถเข้าถึงได้เช่นการ์ด SD

เสริม. เวอร์ชัน Android คือ 4.4.2 รุ่นเคอร์เนลคือ 3.4.0-1539356 # 1


3
นั่นเป็นข้อ จำกัด ของ Kitkat (พวกเขาเรียกมันว่า "ความปลอดภัย" แต่ในความเป็นจริงมันค่อนข้างจะเป็น "force2cloud") คุณจะไม่สามารถแก้ไขได้โดยไม่ต้องรูทอุปกรณ์ของคุณ ยกเว้นการเลือกSD-Card ภายในของคุณเพราะคุณสามารถเขียนได้
Izzy

@ อิซซี่ถ้าคุณต้องการที่จะตอบคำถามนั้นคำถามนี้จะเป็นคำถามที่ตอบแล้ว
Mussé Redi

เสร็จสิ้นโดยให้รายละเอียดเพิ่มเติมเล็กน้อย ฉันชอบที่จะให้คำตอบที่ดีกว่า (ด้วยวิธีแก้ปัญหาที่สะดวกกว่า) แต่ Google ห้ามไม่ให้ ...
Izzy

จริงๆ? ฉันคิดว่าพวกเขาเป็นแฟนตัวยงของวิญญาณโอเพนซอร์ซ
Mussé Redi

"ทำตามที่ฉันพูดอย่าทำอย่างที่ฉันทำ" แยกแยะระหว่างดอกไม้กับผลไม้ ประกาศว่า "โอเพนซอร์ซ" Google ได้ผสมผสานสิ่งที่เป็นกรรมสิทธิ์จำนวนมากเข้าด้วยกัน และ "อิสระ" ได้รับการ จำกัด มากขึ้นสำหรับ Android รุ่นใหม่แต่ละรุ่น แต่นั่นไม่ใช่หัวข้อสำหรับที่นี่ :)
อิซซี่

คำตอบ:


9

หนึ่งในข้อ จำกัด ที่แนะนำกับคือการย้ายการWRITE_EXTERNAL_STORAGEอนุญาตไปยังระดับการป้องกัน "SignatureOrSystem" ซึ่งหมายความว่าแม้ว่าจะมีการร้องขอ "แอปปกติ" (เช่นที่คุณติดตั้งเองเป็น "ผู้ใช้ปกติ" โดยไม่มีความเชี่ยวชาญพิเศษ) รับอีกต่อไปมันจะได้รับ ดังนั้นมีบางสิ่งที่คุณสามารถทำได้เพื่อ "หลีกเลี่ยง" สิ่งนี้:

  • อย่างชัดเจน: การรูทอุปกรณ์และลบขีด จำกัด นี้
  • การใช้ไดเรกทอรี "ส่วนตัว" ของแอปเป็นที่เก็บข้อมูลสำหรับไฟล์ที่คุณซิงค์ (เช่น<sdcard>/Android/data/<package_name>/นี้เป็นที่เดียวที่แอปสามารถเขียนบน SD ด้วย Kitkat)
  • ใช้การ์ดของคุณเป็นที่เก็บข้อมูล (เนื่องจากข้อ จำกัด นี้ไม่มีผลบังคับใช้)

ข้อเสียของการรูทอุปกรณ์ Android คืออะไร? การรับประกันล้าสมัยหรือไม่
Mussé Redi

เป็นไปได้มากที่สุด ในสหภาพยุโรปมีกฎหมายสำหรับเรื่องนั้นโดยแยกความแตกต่างระหว่างการรับประกันและการรับประกัน หนึ่งในนั้นถูกบังคับใช้ตามกฎหมาย (และไม่สามารถล้าสมัยได้โดยการรูท) ส่วนอีกข้อเสนอนี้เป็นข้อเสนอที่ไม่บังคับของผู้ผลิตและด้วยการตัดสินใจของเขา ดูแตกต่างจากสหภาพยุโรปดังนั้นจึงไม่มีคำตอบที่ชัดเจนที่นี่
Izzy

1

คุณสามารถนำ sdcard ภายนอกออกจากอุปกรณ์ได้ตลอดเวลาและเสียบเข้ากับพีซีของคุณ พีซีส่วนใหญ่ไม่รองรับ micro-sdcard แต่คุณสามารถใช้อะแดปเตอร์ได้ ข่าวสารเพิ่มเติมได้ที่นี่: https://en.wikipedia.org/wiki/Secure_Digital#Micro

หาก sdcard ภายนอกติดตั้งอยู่ในพีซีของคุณคุณสามารถอ่านและเขียนไฟล์ทั้งหมดในนั้นได้ :-)


มันเป็นแบบฝึกหัดมากกว่านี้ที่จะเห็นว่าคุณสามารถใช้ ssh บนอุปกรณ์ Android ได้ไกลแค่ไหนแทนที่จะเข้าถึงเนื้อหาบนการ์ด SD
Mussé Redi
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.