Friday, February 15, 2008

The power of fusesmb

Dạo này nautilus lâu lâu lại bị lỗi không browse được mấy cái shares trên Windows fileserver, mount bằng tay thì mất công ... gõ pasword nhiều lần và phải umount. Một giải pháp "tuyệt cú mèo" làm một lần chạy ... mãi mãi là dùng SMB For FUSE (fusesmb). Gói RPM có sẵn cho FC7/8 hoặc cài đặt từ source khá đơn giản.

Cấu hình file ~/.smb/fusesmb.conf:

; Global settings
[global]
; Default username and password
username=user
password=totallysecret

; Connection timeout in seconds
timeout = 10

Cấu hình file ~/.smb/fusesmb.conf

Chạy fusesmb để tự động mount các shares khi được truy xuất đến:

$ fusesmb ~/shares

Truy cập các shares theo dạng /DOMAIN/SERVER/SHARENAME

Lưu ý:
  • Password được lưu ở dạng cleartext
  • Chương trình fusesmb-cache sẽ tự động quét toàn bộ Windows domain để lấy về tất cả các shares trên tất cả các servers trong mạng. Việc này rất mất thời gian lúc ban đầu, tốn resource về sau và khiến truy xuất các shares chậm. Có thể bỏ qua quá trình này bằng "mánh" sau:
    • Dùng smbclient lấy tên các shares trên server cần truy xuất
    • Thêm vào file ~/.smb/fusesmb.cache, theo dạng DOMAIN/SERVER/SHARE, ví dụ:

      MYCONPANY/192.168.1.10/Upload

    • Xóa quyền ghi trên file ~/.smb/fusesmb.cache để chương trình tự động cập nhật không ghi đè được
  • Tiện lợi nhưng bù lại performance không được cao bằng cách mount cifs trực tiếp (test bằng lệnh find hoặc dd)

No comments: