ฉันกำลังติดตั้งพาร์ติชัน NTFS เมื่อเริ่มต้นโดยใช้บรรทัดต่อไปนี้ใน / etc / fstab:
/dev/sda3 /media/data ntfs nls=iso8859-1,umask=000
สำหรับการติดตั้ง Ubuntu 11.10 ของฉันดูเหมือนว่าไฟล์และโฟลเดอร์ทั้งหมดเป็นของroot
- และเนื่องจาก NTFS ไม่สนับสนุนระบบการจัดการสิทธิ์แบบเดียวกันอยู่แล้วไม่มีทางที่ฉันจะสามารถเปลี่ยนได้หลังจากการเมาต์เสร็จสมบูรณ์ ไม่ว่าสิ่งที่ผมทำls -l
ที่ใดก็ได้บนพาร์ติชัน NTFS root:root
จะแสดงรายการทุกไฟล์และโฟลเดอร์เป็นเจ้าของโดย
อย่างไรก็ตามนี่ทำให้เกิดปัญหาบางอย่างสำหรับฉัน โดยเฉพาะอย่างยิ่งแอปพลิเคชันบางตัวที่ทำงานภายใต้บัญชีของฉัน (เรียกว่าtomas
) บ่นเกี่ยวกับสิทธิ์การเข้าถึง นอกจากนี้เมื่อใดก็ตามที่ฉันพยายามคัดลอก ( cp
) หรือย้ายmv
ไฟล์( ) จากพาร์ติชัน ext3 ของฉันไปยังพาร์ติชัน NTFS ฉันได้รับข้อความแสดงข้อผิดพลาดว่า
mv: preserving times for `[path to new file]`: Operation not permitted
หรือในทำนองเดียวกัน
mv: preserving permissions for ...
จะติดตั้งพาร์ติชันในชื่อของฉันแทนที่จะช่วยรูทหรือไม่ ถ้าเป็นเช่นนั้นฉันจะทำเช่นนั้นใน fstab ได้อย่างไร
ปรับปรุง:
ตอนนี้ฉันได้เปลี่ยนตัวเลือกตามคำแนะนำและมาถึงสิ่งนี้:
nls=iso8859-1,permissions,users,umask=000,uid=tomas,gid=tomas
ls -l
ตอนนี้แสดงไฟล์ทั้งหมดที่ฉันเป็นเจ้าของแทนที่จะเป็นรูทและดูเหมือนว่าปัญหาบางอย่างที่ฉันเคยมีมาจะแก้ไข อย่างไรก็ตามไม่ใช่ทั้งหมด
เมื่อฉันเริ่มต้น Eclipse ฉันได้รับข้อผิดพลาดว่าไฟล์ที่เกี่ยวข้องกับ android-sdk ไม่สามารถรันได้: การอนุญาตถูกปฏิเสธ ls -l
บอกฉันเกี่ยวกับไฟล์ต่อไปนี้:
-rwxrwxrwx 1 tomas tomas 159620 2011-11-29 14:50 adb*
นี่เป็นลักษณะที่ฉันต้องการ แต่ถ้าฉันพยายามที่จะเรียกใช้ ( ./adb
ใน terminal) ฉันยังได้รับอนุญาตปฏิเสธข้อผิดพลาด แต่ถ้าฉันใช้มันใช้sudo
งานได้ (ฉันเชื่อ - อย่างน้อยมันก็ไม่ได้ให้ข้อความแสดงข้อผิดพลาด แต่ก็ไม่ได้ให้ผลลัพธ์ใด ๆ กับฉันเลยซึ่งฉันคิดว่ามันไม่ควร ... )
ทำไมไฟล์ดังกล่าวข้างต้นโดยมีผู้สิทธิ์สำหรับทุกคนที่ยังไม่ได้ปฏิบัติการโดยคนอื่นมากกว่าroot
? ฉันจะเปลี่ยนวิธีการเมานต์ระบบไฟล์ได้อย่างไร?
อัปเดต 2:
ตกลงตอนนี้ฉันมาอีกหน่อย โดยติดตั้งด้วยตัวเลือกเหล่านี้
nls=iso8859-1,permissions,users,auto
ฉันได้รับอนุญาตทั้งหมดกำหนดวิธีที่ฉันคาดหวังให้พวกเขาและchown
และchmod
เปลี่ยนการตั้งค่าในไฟล์ (อย่างน้อยตามls -l
) = D
แต่ระบบของฉันยังคงทำงานในลักษณะแปลก ๆ สิทธิ์สำหรับadb
ไฟล์สคริปต์ดังกล่าวข้างต้น แต่ทั้งฉันและ Eclipse ไม่สามารถรันได้โดยไม่มีข้อผิดพลาด "สิทธิ์การปฏิเสธ" แต่เท่าที่ฉันเห็นไฟล์นั้นมีการตั้งค่าสถานะที่จำเป็นทั้งหมด ( o=rwx
ควรจะเพียงพอใช่ไหม?) ทำไมมันไม่ทำงาน
อัปเดต 3
ตกลงฉันได้ทุกอย่างทำงานด้าน Ubuntu ด้วยตัวเลือกต่อไปนี้
nls=iso8859-1,permissions,users,auto,exec
อย่างไรก็ตามเมื่อฉันพยายามเข้าถึงไฟล์บนพาร์ติชันจาก Windows การตั้งค่าความปลอดภัยทั้งหมดก็เกิดความสับสน ในไฟล์ทั้งหมด (ไม่กี่ที่ฉันได้ตรวจสอบ) มีการเพิ่มบัญชีใหม่ที่เรียกว่าAccount Unknown(long GUID)
ลงในรายการผู้ใช้และมีสิทธิ์อย่างเต็มที่ ความเข้มงวดของผู้ใช้รายอื่นลดลงดังนั้นฉันไม่มีสิทธิ์ทำสิ่งที่ฉันคาดหวัง ดูเหมือนว่าทุกคนจะไม่มีสิทธิ์ที่จะ "Traverse folder / execute" อีกต่อไป
สิ่งนี้อาจแก้ไขได้โดยเพียงแค่เลือกพาร์ติชันและอนุญาตให้ทุกคนทำอะไรในโฟลเดอร์รูทแล้วบอกให้ทำซ้ำ แต่ฉันไม่ชอบเพราะฉันกลัวว่าจะใช้เวลาหลายวันกว่าจะเสร็จ ...
users Allow every user to mount and unmount the filesystem. This option implies the options noexec, ... unless overridden by subsequent options, as in the option line users,exec,dev,suid)
: ดังนั้นเพิ่มexec
ตัวเลือกของคุณและฉันเชื่อว่าปัญหาการปฏิเสธสิทธิ์ในการดำเนินการควรได้รับการแก้ไข