Gắn kết CIFS treo trên đọc


13

Tôi có một vấn đề với một loạt các gắn kết CIFS trông như thế này:

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

Sự cố này xảy ra sau một thời gian, thường là sau một ngày khi người dùng khởi động máy vào buổi sáng và cổ phiếu của họ không hoạt động từ xa nữa.

Vì vậy, khi tôi cố gắng thực hiện, lstôi nhận được điều này:

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

Tôi không nhận được gì liên quan dmesg. Vấn đề với điều này là bây giờ bất kỳ cuộc gọi đọc nào đến phần này của hệ thống chỉ bị treo để giải quyết tôi muốn có một lỗi nhanh hơn thay vì bị treo vô thời hạn.

Sau khi đọc một chút, trang man của mount.cifsnó xuất hiện theo mặc định, mọi mount đều softcó nghĩa là cuối cùng nó sẽ hết thời gian. Vấn đề là nó mất quá nhiều thời gian để hết thời gian.

Cập nhật:

Việc thêm các tham số này vào lệnh mount cũng không giúp được gì:

soft,timeo=300,retrans=3

Bạn đã thử sử dụng timeo=nretrans=mrút ngắn khoảng thời gian chờ chưa?
MadHatter

@MadHatter Hãy thử ngay bây giờ. Tôi sẽ xem nếu điều này làm việc. Cảm ơn.
Alexandru Plugaru

@MadHatter thêm các thông số đó không thực sự thay đổi bất cứ điều gì
Alexandru Plugaru

Ý bạn là gì khi " không thay đổi bất cứ điều gì "; bạn có thể định lượng hơn một chút và cũng có thể mô tả không?
MadHatter

@MadHatter bằng cách không thay đổi bất cứ điều gì tôi có nghĩa là những thay đổi bạn đề xuất đã không cải thiện tình hình. Tôi chỉ định, thêm các tham số đó đã không cải thiện hoặc làm trầm trọng thêm vấn đề. Bất kỳ cuộc gọi tập tin vẫn treo quá trình.
Alexandru Plugaru

Câu trả lời:


1

Tôi rất muốn đề xuất AutoFS.

Điều này sẽ tự động gắn kết và ngắt kết nối mạng của bạn trong nền, tất cả đều trong suốt cho người dùng. Tôi đã từng gặp vấn đề với việc ngắt kết nối và nối lại các thiết bị di động cho đến khi tôi thực hiện chuyển đổi.

Thật không may, có quá nhiều hướng dẫn làm phức tạp quá mức thiết lập autofs. Giả sử bạn đang sử dụng hộp Ubuntu, đây là các hướng dẫn dễ dàng để thiết lập nó.

Dưới đây là một số hướng dẫn rất đơn giản:

  • Cài đặt từ apt-get: sudo apt-get install autofs -y
  • Xóa mọi thứ trong /etc/auto.mastervà thay thế bằng:/- /etc/auto.cifs --timeout=20 --ghost
  • Thêm một dòng như thế này vào auto.cifs cho mỗi mount:/mnt/LOCAL/MOUNT/PATH -fstype=cifs,rw,noperm,credentials=/etc/auto.credentials ://SERVER/MOUNT
  • Trong /etc/auto.credentials, thêm nội dung sau: username=USERNAME password=PASSWORD
  • Cuối cùng , sudo service autofs restart.

Đó là nó.


1
Làm thế nào điều này được cho là để sửa một kết nối hiện tại treo?
Sven

Nó không. Bạn điều chỉnh cài đặt gắn kết của mình một lần để sử dụng tự động và bạn sẽ ngừng nhận kết nối treo, trong hầu hết các trường hợp. Nó sẽ khắc phục vấn đề, không phải là triệu chứng.
Ben Yanke

0

Trong hầu hết các trường hợp, ít nhất bạn có thể loại bỏ điểm treo bằng cách thực hiện một thao tác lười biếng unmount : umount -l //server/share. Có lẽ bạn có thể đặt nó vào một cái móc treo (theo tôi hiểu, máy của bạn bị treo vào ban đêm và chạy trong nhiều ngày?)

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.