ลบ / tmp โดยไม่ตั้งใจ


9

ฉันวิ่งไปโดยบังเอิญsudo rm -r /tmpนั่นเป็นปัญหาหรือไม่?
ฉันสร้างมันขึ้นมาโดยใช้มันsudo mkdir /tmpช่วยแก้ปัญหาได้ไหม?

หลังจากที่ฉันสร้างไดเรกทอรีขึ้นมาใหม่ในส่วนของplacesในแถบด้านข้างใน nautilus ใน Ubuntu 14.04 ฉันเห็น / tmp ซึ่งไม่เคยมีมาก่อน .. นั่นเป็นปัญหาหรือเปล่า

สิ่งสุดท้ายที่ฉันต้องsudo chown $USER:$USER /tmpทำเพื่อให้สามารถเข้าถึงได้เหมือนเดิม .. จะมีผลข้างเคียงหลังจากนี้หรือไม่?

โดยวิธีการที่ฉันได้รับข้อผิดพลาดที่เกี่ยวข้องกับดูเหมือนเมื่อฉันพยายามใช้การเติมข้อความอัตโนมัติทุบตี

bash: ไม่สามารถสร้างไฟล์ temp สำหรับ here-document: การอนุญาตถูกปฏิเสธ

คำตอบ:


12

/tmpถือได้ว่าเป็นไดเรกทอรีทั่วไปในกรณีส่วนใหญ่ คุณสามารถสร้างใหม่มอบให้กับ root ( chown root:root /tmp) และตั้งค่าการ1777อนุญาตบนมันเพื่อให้ทุกคนสามารถใช้มันได้ ( chmod 1777 /tmp) การดำเนินการนี้จะมีความสำคัญมากกว่านี้หากคุณ/tmpอยู่ในพาร์ติชันแยกต่างหาก (ซึ่งทำให้เป็นจุดเชื่อมต่อ)

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


2
/tmpไม่จำเป็นต้องมีพาร์ติชันแม้ว่ามันจะเป็น /tmpยังสามารถเป็นระบบไฟล์ประเภทtmpfsหรือramfsเก็บไฟล์ tmp ในหน่วยความจำ หนึ่งต้องตัดสินใจระหว่าง ram หรืออุปกรณ์ขึ้นอยู่กับการใช้งานขนาดของข้อมูลและอื่น ๆ
bsd

ข้อมูลสุดท้ายคือ: drwxrwxrwt 5 root root 4096 أغس 12 20:21 tmp/.. ไม่เป็นไร?
Amr Ayman

@AmrAyman เหล่านี้เป็น/tmpสิทธิ์ทั่วไปใช่ rwxทุกที่เพื่อให้ทุกคนสามารถอ่านและเขียนให้มันและบิตเหนียว ( t) เพื่อให้แน่ใจว่าแต่ละคนเป็นเจ้าของไฟล์ / /tmpสิทธิ์ภายใน ดูที่นี่สำหรับข้อมูลเพิ่มเติม
John WH Smith

4

ไดเรกทอรี /tmpต้องมีสิทธิ์ 1777 = rwxrwxrwt นั่นคือทุกคนสามารถอ่านเขียนและเข้าถึงไฟล์ในไดเรกทอรีและไฟล์ ( t= เหนียวน้อย) อาจถูกลบโดยเจ้าของเท่านั้น หลายสิ่งหลายอย่างจะหยุดทำงานหากไม่เป็นเช่นนั้นบางครั้งก็เป็นวิธีที่แปลกประหลาด

sudo mkdir -m 1777 /tmp

หรือ

sudo mkdir /tmp && sudo chmod 1777 /tmp

/tmpต้องเป็นของรูท อย่าเปลี่ยนความเป็นเจ้าของเป็นผู้ใช้รายอื่น

โปรแกรมที่ใช้ไฟล์ชั่วคราวในเวลาที่คุณลบมันอาจจะสับสนเล็กน้อย โปรแกรมแบ็คกราวน์สองสามตัวเก็บซ็อกเก็ตไว้/tmpและจะต้องเริ่มต้นใหม่ เซิร์ฟเวอร์หลักคือเซิร์ฟเวอร์ X: หลังจากลบ/tmp/.X11-unix/X0แล้วคุณจะไม่สามารถเริ่มโปรแกรมประยุกต์ GUI ได้อีกต่อไป คุณจะต้องออกจากระบบและกลับเข้ามาใหม่เพื่อแก้ไข (แก้ไขสิทธิ์ก่อน!)


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