7 c, d$ q E# m) d1 y* o' }建立存取 Windows 分享資料夾的帳號密碼檔案,請確定該使用者帳號存在於 Windows 機器內: # m" B! Z# `. K" S#vi /home/user1/secret.txt$ M1 U) {0 e9 B
/ Z# K9 f- @! s* ]' I6 W$ g
username=user1 % t* f- m& E: y+ G8 A- Y* t' ]$ o! ~4 @0 x( X. o0 Z9 [* C+ K
password=123456 - {/ X' Y6 `) l# O. c( ?& [1 o6 U( W
設定完成後可使用 mount 指令來更新目前的檔案系統 (也就是讀取 /etc/fstab 更新)。 6 d* |) R% P5 W5 A#mount -a //讀取 /etc/fstab 更新9 M+ D; ^4 Q7 X: G+ ^9 t0 y
0 E' Q2 J' b4 ?. t& X1 P
#df -h //檢查是否成功存取 Windows 資源" ^; v& B3 `" I+ Z9 B6 u/ K
1 p4 E% _' t' p8 r. ] Filesystem Size Used Avail Use% Mounted on 2 v) C0 ^# Q& _( Z; { 6 ^, S& L4 @3 ^% m1 @/ t4 O% W /dev/sda1 9.7G 2.3G 6.9G 25% /9 z- g3 M# N7 }9 t! y' J
4 b& l. ~3 G7 H6 z6 J7 k) v) g7 i3 V
/dev/sda7 414G 211G 183G 54% /home 9 w0 L0 o- ?* d. m) a9 ~: Y0 d* [* H. X0 d( i5 h" y) X9 P2 Q) b3 t! W
/dev/sda5 4.9G 139M 4.5G 3% /tmp9 n# \( z6 ^8 V) [9 K1 j; p
* q! A) m& T: ^! W. J0 | /dev/sda3 9.7G 2.3G 6.9G 26% /usr # Z6 O1 s7 _% w' A3 |5 [* y1 a1 {( z7 l2 c) s
/dev/sda2 9.7G 255M 9.0G 3% /var . ~' j: F7 _. G) x) L 4 k3 a+ Q6 c2 m! z2 |7 R5 [ tmpfs 2.0G 0 2.0G 0% /dev/shm9 [, O' R3 |9 e: U7 k, L
7 l$ k/ S- ~2 x. Y' K+ [
//user1-XP/Shares 251G 236G 15G 95% /mnt/shares //存取 Windows 資源成功 3 k! l; D/ h3 d% C2 Y% o9 k$ l6 n* K7 s9 S, ^ [Troubleshooting] 8 n! E8 I/ w, Y) G) |從client連到server端時出現error: + x3 K3 ]5 a9 D6 ^5 l4 c2 C: w
samba mount error(110): Connection timed out7 J5 P1 b7 c# ]. V* w
一般這都是防火牆的問題,包含server端跟client都要設定正確,尤其server端需開放port 139,client端需開放 port 445 ) V1 t1 b1 L: `7 l: ?% u/ N! H5 j2 {/ F7 q0 m 至於 使用 sshfs 來掛載 別台主機上SSH server的檔案系統: # w K s5 i: o; `% z; _ . G8 r. n. I: L, w' [5 y( g$ l9 f用 yum 查一下有什麼 sshfs 相關的套件: % V* h) Z, }' d% K$ U# yum search sshfs6 U' W0 j1 X, M: t& d
=====================================================================9 k# h) M$ D0 j8 @$ r( J1 Z# r. n& D
fuse-sshfs.x86_64 : FUSE-Filesystem to access remote filesystems via SSH / m( q( Q1 M; T3 U3 M; G# ?; j安裝sshfs:0 }% X7 }8 S F( k" R
#yum install fuse-sshfs " Z" Z+ g" u. v6 d建立掛載目錄: 4 P( U3 K% u. ~#mkdir /mnt/temp$ i) M* h+ B& Q% L/ |
用sshfs 掛載遠端的目錄: . p' I( f" a s7 ~#sshfs -p 22 root@192.168.1.2:/root/ /mnt/temp //-p port_number , 可以掛載遠端任一目錄,包含 / 根目錄! F9 J' R, P. B; l/ Q- D5 ?
root@192.168.1.2's password: //接著要你輸入遠端ssh root密碼 & H6 j. C" O$ Q8 ~; w+ i' ]0 {正常情況此時應該可以看到 /mnt/temp/內已經有些檔案了,而不是空的& r; W# F; b" C
如果之前你有設定與主機 192.168.1.2建立公鑰私鑰免密碼連線,你就可以省略輸入密碼的程序,而直接掛載遠端目錄,比較方便 ! A- w5 @. ~# y( q1 Z: D! u. C Y9 ]/ j5 m( [' z
帶上密碼而不用手動輸入密碼# i- i) \ |. S/ z2 N
#sshfs -o ssh_command='sshpass -p my_password ssh' -o cache=yes,allow_other -p 10022 root@192.168.52.4:/root/ /mnt/temp6 C2 ?5 _& `( Y- R' _6 G
註: 如果掛載有問題,可以開啟 debug mode 觀察過程:, \0 k/ |: q2 B& Z Q
sshfs -p 10022 -o sshfs_debug -o debug root@192.168.1.2:/ /mnt/temp- A! s; g" e% u9 c8 T
% Y; }) |* a, J* D' [$ `
以一般帳號(非root)掛載時,出現error : ; k. k7 v& {5 W0 Z$ ?fuse: failed to exec fusermount: Permission denied ==> 因一般使用者沒fuse的使用權限( Q9 m! H* e/ k
ls -l /bin/fusermount 1 F1 | z6 \% m5 P; k. j8 Q- E. a-rwsr-x--- 1 root fuse 32368 May 11 2016 /bin/fusermount $ B. `! z9 @1 X4 n( f$ F" e故 usermod -a -G fuse qqqbox 需加入群組才可使用 fuse K* x( K) s6 ~/ `2 P' i7 X( a1 x
7 z: K" i- L9 K& p% q+ K
可參考 : 在 CentOS 上使用 sshfs 來掛載 SSH server 上的檔案系統SSHFS:透過 SSH 掛載遠端 Linux 伺服器上的硬碟(適用於 Windows、Mac OS X 與 Linux)" T v t0 Q5 ^% U- `# O; U& V
* _7 {+ w% T x$ i" I8 \& {6 y. I
3 L0 P A1 J4 E( T, c! R/ k5 ]作者: king383 時間: 2021-3-10 21:39
now the best way is to use WSL (Windows Subsystem for Linux)作者: hoteddy0507 時間: 2022-3-18 16:28
原來如此