ข้อผิดพลาด `ระบบไฟล์แบบอ่านอย่างเดียว 'โดยใช้การเติมเต็มของแท็บและปิดหน้าต่างเทอร์มินัลแบบสุ่ม


28

cdครั้งแรกเป็นเพียงเหตุการณ์ที่แปลกประหลาดที่มีคำสั่ง ถ้าฉันพิมพ์cdแล้วเว้นวรรคจากนั้นกดTabเพื่อดูไดเรกทอรีที่มีอยู่ฉันได้รับข้อความแสดงข้อผิดพลาดนี้:

bash: ไม่สามารถสร้างไฟล์ temp สำหรับ here-document: ระบบไฟล์แบบอ่านอย่างเดียว

ปัญหาที่ยุ่งยากมากขึ้นคือการปิดหน้าต่างเทอร์มินัลแบบสุ่ม มันเกิดขึ้นขณะทดสอบความcdผิดปกติและในขณะที่ ssh ต้องการไปยังเซิร์ฟเวอร์อื่นที่ทำสิ่งง่าย ๆgit statusเช่นนี้ [แก้ไข] ดูเหมือนว่าหากฉันกด Enter 31 ครั้งจะทำให้เกิดการปิดอัตโนมัติของหน้าต่างเทอร์มินัล (ตรวจสอบแล้ว 3 ครั้งในขณะนี้)

ฉันเพิ่งอัปเกรดจาก 12.04 เป็น 14.04 เมื่อปลายสัปดาห์ที่แล้วและพฤติกรรมนี้ไม่ได้เกิดขึ้นทั้งวันที่ฉันใช้หลังจากอัปเกรด นี่เป็นครั้งแรกที่พยายามทำอะไรกับคอมพิวเตอร์นี้ตั้งแต่วันนั้น

โปรดแนะนำข้อมูลอื่น ๆ ที่ฉันสามารถให้ได้และสิ่งที่ฉันต้องทำเพื่อแก้ไขปัญหานี้


เพียงแค่การเตือนความจำที่เป็นมิตรเพื่อทำให้ชื่อคำถามมีความหมายมากขึ้นซึ่งจะช่วยให้ได้รับการตอบสนองที่ดีขึ้น: "พฤติกรรมของเทอร์มินัลแปลก ๆ " ไม่ได้อธิบายอย่างมาก
thomasrutter

ฉันรู้สึกทราบซึ้ง.
Takamuffin

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

เอาท์พุทเมาท์: gist.github.com/anonymous/74dc62ccd5602d1e9742
Takamuffin

ขอบคุณที่ให้สิ่งนั้น - ดูเหมือนว่าไม่มีปัญหากับวิธีการกำหนดค่าการเมานต์และไม่มีปัญหาในเวลาเมานต์ แต่อาจมีข้อผิดพลาดในการเมานต์ / (root) ที่พบตั้งแต่นั้นมา remount-roระบุว่าพาร์ทิชันรากจะนั่งประจำที่อ่านอย่างเดียวในกรณีที่มีข้อผิดพลาดของระบบแฟ้มบางอย่าง ทำ fsck จากการกู้คืนหรือ Live CD จะดี
thomasrutter

คำตอบ:


16

ฉันรีบูทในโหมดการกู้คืนและทำตามคำแนะนำที่ระบบให้ไว้ ฉันวิ่งfsckต่อไป/dev/sda2และนั่นก็แก้ไขปัญหาได้


13

Read-only file systemข้อผิดพลาดเป็นเบาะแสสำคัญที่นี่ ฉันเดาว่าโฮมไดเร็กตอรี่ของคุณซึ่ง bash พยายามเก็บประวัติคำสั่งของคุณและอื่น ๆ อยู่ในพาร์ติชั่นแบบอ่านอย่างเดียว

ฉันเดาว่าจะพยายามอัปเดตประวัติคำสั่งล่าสุดของคุณบนดิสก์ทุก ๆ 32 คำสั่งซึ่งเป็นสาเหตุที่ทำให้คำสั่ง 32 ที่คุณพิมพ์ในเซสชันล้มเหลว

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

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

คุณสามารถลองรีบู๊ตและตรวจสอบดิสก์จากเมนูการกู้คืน กด Shift ค้างไว้ในขณะที่คอมพิวเตอร์บู๊ตหลังจากหน้าจอ BIOS หายไปและก่อนที่โลโก้ Ubuntu จะปรากฏขึ้น


1
มีปัญหาเดียวกัน รีบูตเครื่องทำงาน ขอบคุณ
whitehat

4

ปัญหานี้ก็เกิดขึ้นกับฉันเช่นกัน

มันเกิดขึ้นเป็นระยะ

ดังนั้นในที่สุดฉันก็เพียงพอกับมันและตัดสินใจติดตั้งระบบปฏิบัติการอีกครั้ง - ubuntu-gnome 14.04 (สะอาด)

มันซ่อมมัน! อย่างน้อยสองสามวัน .. จากนั้นปัญหาเดียวกันนี้ก็เกิดขึ้นอีกครั้ง ...

ดังนั้นฉันจึงไปที่ Fry และได้รับ hdd ใหม่ (Seagate)

ดีมาก (6 เดือนและนับ)

หมายเหตุ: หุ้น hdd คือโตชิบา


ยินดีต้อนรับสู่ถาม Ubuntu เนื่องจากนี่ไม่ใช่คำตอบที่ถูกต้องสำหรับคำถามโปรดลบออก
Archisman Panigrahi

2
นั่นคือคำตอบของฉัน คำตอบของคุณคืออะไร
phtn458

2
สิ่งที่ฉันอยากจะบอกก็คือการติดตั้งระบบปฏิบัติการใหม่หรือซื้อฮาร์ดดิสก์ใหม่ไม่ใช่ทางออกที่เหมาะสม คุณอาจต้องการแสดงความคิดเห็นในโพสต์อื่นและคุณจะสามารถแสดงความคิดเห็นเมื่อคุณมีชื่อเสียงเพียงพอ (15)
Archisman Panigrahi

10
@ArchismanPanigrahi "ดิสก์ไม่ดีรับใหม่" เป็นคำตอบ
เซท

1
ว้าว. ดังนั้นทุกคน upvoted คำตอบไปและซื้อฮาร์ดดิสก์ใหม่ (?)
Pawan

2

/tmpระบบไฟล์แบบอ่านอย่างเดียวทำให้เกิดปัญหาเพิ่มเติม

สำหรับ 31 บรรทัดมันเกี่ยวข้องกับการgnome-terminalฝึกงานของ

มันเก็บจำนวนบรรทัดในหน่วยความจำจำนวนหนึ่งไว้ใน "วงแหวน" บรรทัดที่เหลือที่เลื่อนออกจากวงแหวนนี้จะอยู่ใน "สตรีม" ในรุ่นเก่าของเทอร์มินัล Gnome การสตรีมนั้นเขียนโดยตรงในไฟล์ภายใต้/tmpเวอร์ชันที่ใหม่กว่าจะมีการบัฟเฟอร์การบีบอัดและการเข้ารหัสก่อนที่จะถูกเขียนออกมา (ฉันจำไม่ได้ว่าอยู่ด้านบนสุดของหัวของฉันไม่ว่า/tmpจะเปิดไฟล์ใต้เมื่อข้อมูลอันแรกถูกเขียนลงในกระแสข้อมูลหรือเมื่อกระแสแรกพยายามเขียนลงไปจริง ๆ/tmpมันเป็นรายละเอียดการนำไปปฏิบัติเล็กน้อย)

ขนาดของวงแหวนมักจะมีกำลังสอง (แต่ละช่องที่มี 1 บรรทัดของเทอร์มินัลยกเว้น 1 ช่องไม่ได้ใช้เนื่องจากเหตุผลทางเทคนิค) และเพิ่มเป็นสองเท่าทุกครั้งที่ต้องการเนื่องจากการเติบโตของความสูงของเทอร์มินัล แต่ไม่เคยย้อนกลับ) ตัวอย่างเช่นด้วยความสูงเริ่มต้นที่ 24 บรรทัดวงแหวนจะมีเอาต์พุต 31 บรรทัดสุดท้ายส่วนที่เหลือจะไปที่สตรีม (ในที่สุดก็ถึง/tmp) หากคุณเพิ่มความสูงของหน้าต่างเพื่อสมมติว่า 40 บรรทัดวงแหวนในหน่วยความจำจะเพิ่มขึ้นเพื่อรองรับรายการได้สูงสุด 63 รายการในแต่ละครั้ง

สิ่งที่คุณพบคือgnome-terminalพยายามเปิดไฟล์/tmpเพื่อเก็บสตรีมและออกเนื่องจากความล้มเหลวที่ไม่คาดคิดที่นี่ ลองกับหน้าต่างที่สูงกว่าค่าเริ่มต้น มันจะพังหลังจากกด Enter 63 (หรืออาจ 127) ครั้ง

ที่ถูกกล่าวว่า/tmpควรได้รับการแก้ไขให้สามารถเขียนได้ (ด้วยสิทธิ์ 1777)


1

ปัญหาของฉันคือกระบวนการทำงานกับ CPU 100% และอาจใช้ทรัพยากรดิสก์ทั้งหมด (กระบวนการสำรองข้อมูลบางอย่าง: สำรองข้อมูล Ur)

เมื่อฉันฆ่ามันทุกอย่างเป็นไปด้วยดี ดังนั้นฉันคิดว่าคอขวดบน IO อาจทำให้เกิดข้อผิดพลาดนี้แม้ว่าจะมีพื้นที่เพียงพอและคุณได้รับอนุญาตให้เขียน

(Raspberry Pi กับ Jessy 18/03/16)

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