CIFS mounts หยุดอ่าน


13

ฉันมีปัญหากับการเมานต์ CIFS จำนวนมากที่มีลักษณะเช่นนี้:

//192.168.10.2/remote-share /home/windows-shared/remote-share cifs defaults,user=xxx,password=xxx,uid=603,gid=603       0 0

ปัญหานี้เกิดขึ้นหลังจากผ่านไประยะหนึ่งโดยปกติหลังจากผ่านวันหนึ่งเมื่อผู้ใช้บู๊ตเครื่องในตอนเช้าและการแชร์ไม่ทำงานจากระยะไกลอีกต่อไป

ดังนั้นเมื่อฉันพยายามทำสิ่งที่lsฉันได้รับ:

ls: cannot access /home/windows-shared/remote-share: Host is down

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

หลังจากอ่านสักนิดหน้า man ของmount.cifsมันก็ปรากฏว่าโดยค่าเริ่มต้นทุกการเมานต์ก็softหมายความว่ามันจะหมดเวลาในที่สุด ปัญหาคือว่ามันใช้เวลานานเกินไปที่จะหมดเวลา

ปรับปรุง:

การเพิ่มพารามิเตอร์เหล่านี้ไปยังคำสั่ง mount ไม่ได้ช่วย:

soft,timeo=300,retrans=3

คุณได้ลองใช้timeo=nและretrans=mเพื่อลดช่วงเวลาการหมดเวลาหรือไม่
MadHatter

@ MadHatter ลองเลยตอนนี้ ฉันจะดูว่ามันใช้งานได้หรือไม่ ขอบคุณ
Alexandru Plugaru

@ MadHatter การเพิ่ม params เหล่านั้นไม่ได้เปลี่ยนแปลงอะไรเลยจริงๆ
Alexandru Plugaru

คุณหมายถึงอะไรโดย " ไม่เปลี่ยนแปลงอะไร "; คุณอาจจะมีปริมาณมากกว่านี้เล็กน้อยและอาจเป็นคำอธิบายด้วยหรือไม่
MadHatter

@ MadHatter โดยไม่เปลี่ยนแปลงอะไรฉันหมายความว่าการเปลี่ยนแปลงที่คุณแนะนำไม่ได้ปรับปรุงสถานการณ์ ฉันระบุการเพิ่มพารามิเตอร์เหล่านั้นไม่ได้ปรับปรุงหรือทำให้ปัญหาแย่ลง การเรียกไฟล์ใด ๆ ยังคงค้างกระบวนการ
Alexandru Plugaru

คำตอบ:


1

ฉันขอแนะนำ AutoFS

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

น่าเสียดายที่มีคู่มือมากเกินไปซึ่งทำให้การตั้งค่า autofs ซับซ้อนเกินไป สมมติว่าคุณอยู่ในกล่อง Ubuntu นี่คือคำแนะนำง่ายๆในการตั้งค่า

นี่คือคำแนะนำง่ายๆ:

  • ติดตั้งจาก apt-get: sudo apt-get install autofs -y
  • ลบทุกอย่างใน/etc/auto.masterและแทนที่ด้วย:/- /etc/auto.cifs --timeout=20 --ghost
  • เพิ่มหนึ่งบรรทัดเช่นนี้ใน auto.cifs สำหรับแต่ละเมานต์:/mnt/LOCAL/MOUNT/PATH -fstype=cifs,rw,noperm,credentials=/etc/auto.credentials ://SERVER/MOUNT
  • ใน/etc/auto.credentialsเพิ่มเนื้อหาต่อไปนี้: username=USERNAME password=PASSWORD
  • ในที่สุด, sudo service autofs restart.

แค่นั้นแหละ.


1
สิ่งนี้ควรแก้ไขการเชื่อมต่อปัจจุบันที่หยุดทำงานหรือไม่
สเวน

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

0

ในกรณีส่วนใหญ่อย่างน้อยคุณสามารถลบจุดเมานท์แบบลอยได้โดยทำ unmount แบบขี้เกียจ: umount -l //server/share. บางทีคุณอาจนำสิ่งนั้นไปไว้ในตะขอระงับ (ตามที่ฉันเข้าใจมันเครื่องของคุณถูกระงับในเวลากลางคืนและทำงานเป็นเวลาหลายวัน?)

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