ฉันจะตั้งค่าการอนุญาตเพื่อให้ฉันสามารถอ่านและเขียนไปยังพาร์ติชันอื่นได้อย่างไร?


15

ฉันใช้ Ubuntu 12.04 และฉันต้องแบ่งพาร์ติชันตอนที่ 1 และตอนที่ 2 ทั้งคู่เป็น ext4 ฉันต้องการถ่ายโอนไฟล์สื่อไปยังและจากพวกเขาได้อย่างอิสระผ่านทางโปรแกรม

คำตอบ:


21

สิ่งที่ฉันจะทำมีดังต่อไปนี้:

สมมติว่าคุณติดตั้งทั้งสองพาร์ติชั่นด้วยชื่อส่วนที่ 1 และตอนที่ 2 คุณจะเป็นพาร์ติชั่นเดียวที่ใช้พวกเขาและคุณต้องการที่จะควบคุมพวกมันทั้งหมดโดยอิสระฉันจะทำสิ่งนี้:

sudo chmod 777 /media/part1 - สิ่งนี้จะให้สิทธิ์ทั้งหมด (อ่านเขียนดำเนินการ) ให้คุณภายในพาร์ติชัน part1

sudo chmod 777 /media/part2 - สิ่งนี้จะให้สิทธิ์ทั้งหมด (อ่านเขียนดำเนินการ) ให้คุณภายในพาร์ติชัน part2

สิทธิ์ (ในกรณีนี้ 777) มีดังนี้:

7 - เต็ม (อ่านเขียนและดำเนินการ)
6 - อ่านและเขียน
5 - อ่านและดำเนินการ
4 - อ่านเท่านั้น
3 - เขียนและดำเนินการ
2 - เขียนเท่านั้น
1 - ดำเนินการเพียง
0 - ไม่มี

7 แรก (เริ่มต้นจากซ้าย) มีไว้สำหรับเจ้าของอันดับที่ 2 มีไว้สำหรับกลุ่มที่เจ้าของอยู่ 7 สุดท้ายสำหรับกลุ่มอื่น ๆ โดยทั่วไปเช่นนี้คุณสามารถคัดลอกสิ่งที่คุณต้องการในพาร์ติชั่นและถ้าคุณจำเป็นต้องนำ HDD ออกและเชื่อมต่อไปยังคอมพิวเตอร์เครื่องอื่นที่มี Ubuntu คุณจะไม่มีปัญหากับการอนุญาต อย่างน้อยในกรณีของฉันมันช่วยฉันประหยัดเวลาเพราะฉันมักจะมีฮาร์ดไดรฟ์ 1 หรือ 2 ตัวที่เก็บภาพยนตร์เพลงและสิ่งที่คล้ายกันและฉันย้ายมันจากพีซีไปยังพีซี

เพียงแค่เพิ่มหากคุณไม่ทราบว่าติดตั้งพาร์ติชั่นไว้ที่ไหนคุณสามารถเปิดDisk Utilityและข้อมูลเกี่ยวกับฮาร์ดไดรฟ์ก็จะบอกคุณว่าติดตั้งอยู่ที่ไหน จำไว้ว่าคุณต้องใช้สิ่งนี้กับพาร์ติชั่นหลังจากที่มันถูกเมาท์


ฉันมักจะหลีกเลี่ยงโหมดเช่น 777 ส่วนใหญ่เพราะมันยากที่จะอ่านเนื่องจากสีของเทอร์มินัลที่แจ้งเตือนคุณว่ามันเป็นโลกที่เขียนได้ ถ้าเขาเป็นผู้ใช้เท่านั้นแล้วใช้ 755 บรรลุในสิ่งที่เหมือนกันและจะง่ายต่อการอ่านที่มีสีปกติ
มาร์ตี้ผัด

ฉันเห็นด้วยกับคุณในเรื่องนั้น โฟลเดอร์พิเศษ
Luis Alvarado

1
ทำไมถึงต้องเปลี่ยนการอนุญาตเมื่อคุณสามารถchownเปลี่ยนเป็นผู้ใช้ปัจจุบันได้?
n.st

สวัสดี n.st เหตุผลก็คือในทุกกรณีที่ฉันได้ลองทำ chown ไม่ได้ให้สิทธิ์ที่จำเป็น มันเปลี่ยนเจ้าของเป็นไฟล์ปัจจุบัน แต่ไฟล์และโฟลเดอร์ยังคงมีการอนุญาตที่ผิดดังนั้นผู้ใช้จึงไม่สามารถเขียนไปยังหน่วย
Luis Alvarado

8

แทนที่จะเปลี่ยนการอนุญาตไฟล์ทั้งหมดเช่น Luis Alvarado แนะนำมันจะเป็นการดีกว่าที่จะเปลี่ยนเจ้าของไฟล์ - ดังนั้นควรรักษาบิตที่เรียกใช้งานได้บนไบนารีและไฟล์สคริปต์ใด ๆ ที่เคยมีมา

ดังนั้นสมมติว่าพาร์ติชันของคุณติดตั้งเป็น/ media / somethingและชื่อผู้ใช้ของคุณคือjohndoeคุณสามารถเรียกใช้ได้

sudo chown -R johndoe:johndoe /media/something

ที่จะเปลี่ยนเจ้าของและเป็นเจ้าของกลุ่มของ/ สื่อ / บางสิ่งบางอย่าง (และไฟล์และไดเรกทอรีทั้งหมดมันมีเหตุ -R สำหรับ 'recursive') เพื่อJohnDoe

ด้วยวิธีนี้ไฟล์ทั้งหมดจะยังคงสิทธิ์ของตน แต่เนื่องจากคุณจะเป็นเจ้าของ/ สื่อ / บางสิ่งคุณจะสามารถเขียนและเปลี่ยนแปลงสิทธิ์ไฟล์ในกรณีที่คุณต้องการ


0

คุณควรจะติดตั้งพาร์ติชันจาก nautilus (ตัวจัดการไฟล์เริ่มต้นของ Ubuntu) หากคุณดูที่ด้านซ้ายบนของหน้าต่างคุณควรเห็นพาร์ติชั่นทั้งหมดที่มีในไดรฟ์ของคุณ เพียงคลิกที่หนึ่งเพื่อติดตั้ง

/etc/fstabแต่ถ้าคุณต้องการไดเรกทอรีที่กำหนดจะได้รับการติดตั้งในการเริ่มต้นคุณจะต้องเพิ่มเข้าไป บรรทัดที่คุณจะเพิ่มควรเป็นดังนี้:

/dev/sda2 /media/part1 ext4 defaults 0 0

รูปแบบคือ

device (tab) mount point (tab) type (in your case ext4) (tab) options (probably "defaults") (tab) dump (tab) pass (probably both 0 in your case)

ดังนั้นโดยทั่วไปเพียงแค่แทนที่ / dev / sda2 ด้วยอุปกรณ์ของคุณและ / media / part1 ด้วยจุดเมานท์ของคุณจากตัวอย่าง

หากท่านต้องการข้อมูลเพิ่มเติมสำหรับการแก้ไขของคุณ etc / fstab / คุณสามารถตรวจสอบบทความนี้ฉันพบ: http://www.tuxfiles.org/linuxhelp/fstab.html


0

โดยปกติคุณสามารถทำสิ่งนี้ได้แล้ว แต่คำแนะนำของฉันคือการเพิ่มพาร์ติชั่น/etc/fstabเพื่อที่พวกเขาจะมีเสถียรภาพและมีตำแหน่งที่คุณเลือก คุณสามารถติดพวกเขาที่มีอยู่ไดเรกทอรีใด ๆ /mntแต่การประชุมดูเหมือนจะติดมันที่ โดยทำตามขั้นตอนต่อไปนี้:

สร้างไดเรกทอรีภายใต้/mnt; ไดเรกทอรีสามารถเป็นชื่ออะไรก็ได้ที่คุณเลือก ฉันจะใช้ "MyMount1" และ "MyMount2" เป็นตัวอย่างเท่านั้น นอกจากนี้ฉันจะใช้ "mylogin" เพื่อเป็นตัวแทนชื่อเข้าสู่ระบบและกลุ่มของคุณ เปลี่ยนเป็นชื่อบัญชีเข้าสู่ระบบของคุณ

sudo mkdir /mnt/MyMount1
sudo mkdir /mnt/MyMount2
sudo chown mylogin:mylogin /mnt/MyMount1
sudo chown mylogin:mylogin /mnt/MyMount1

ตอนนี้คุณมีสองไดเรกทอรีที่สร้างขึ้นโดยคุณเป็นเจ้าของ

คุณต้องใช้ UUID (Universal Unique Identifier) ​​ของไดรฟ์สองตัวเพื่อระบุในไฟล์ fstab ในการรับสิ่งเหล่านี้ให้เรียกใช้sudo blkidจาก commandline เทอร์มินัลและค้นหาพาร์ติชันที่คุณต้องการใช้ วิธีที่ง่ายที่สุดในการใช้งานคือการคัดลอกและวางจากเทอร์มินัลไปยังไฟล์

เปิด/etc/fstabโดยใช้โปรแกรมแก้ไขข้อความเช่น gedit หากต้องการใช้ gedit ให้ป้อน

gksu gedit /etc/fstab

จากนั้นป้อนสองบรรทัดต่อท้ายไฟล์ (แต่แทนที่ UUID สำหรับส่วน xxx .... และชื่อไดเรกทอรีสำหรับ MyMounts):

UUID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx /mnt/MyMount1 ext4 defaults 0 2
UUID=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx /mnt/MyMount2 ext4 defaults 0 2

การทดสอบการบันทึกไฟล์และป้อนนี้ใน commandline ขั้ว: sudo mount -a; หากมีข้อผิดพลาดใด ๆ ที่คุณไม่เข้าใจให้ถามที่นี่ หากมีข้อผิดพลาดและคุณจำเป็นต้องรีบูตอาจเป็นการปิดการใช้งานของบรรทัดที่เพิ่มขึ้นเป็นอันดับแรกโดยการใส่เครื่องหมายปอนด์ (#) ลงในคำนำหน้าซึ่งจะเป็นการแสดงความคิดเห็น


ดังนั้นสิ่งที่ควรเป็นเอาท์พุทจากคำสั่ง "sudo mount / a"? ผลลัพธ์ของฉันคือ "เมานต์: ไม่พบ / a ใน / etc / fstab หรือ / etc / mtab"
user73466

ฉันขอโทษฉันไม่รู้ว่าฉันทำอย่างไร แต่ฉันหมายถึง "-a" ไม่ใช่ "/ a" มันหมายถึงการติดทุกอย่างใน fstab และเป็นวิธีที่ดีในการทดสอบข้อผิดพลาด ฉันจะแก้ไขโพสต์ของฉัน
Marty Fried

0

ฉันมีปัญหาเดียวกันและแก้ไขได้โดยการเรียกใช้ nautilus ในฐานะ root คลิกขวาบนพาร์ติชันคุณสมบัติและเปลี่ยนการอนุญาต (หรือเจ้าของถ้าจำเป็น)

หากไม่มีการติดตั้งหอยโข่ง:

sudo apt-get nautilus

0

เปลี่ยนการอนุญาต

 sudo chmod -R a+rwx /path/of/folder

นั่นก็เหมือนกับสิ่งที่คำตอบที่ยอมรับทำเช่นกันเพียงแค่ใช้ไวยากรณ์ที่แตกต่างจากคุณ เป็นเช่นเดียวกับ777 rwx
Fabby
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.