web-dev-qa-db-ja.com

CIFSにマウントされたWindows共有のショートカットをフォローできません

私はウィンドウズシェアを持っています:

\\MYSERVER\SHARE\
                 MyFolder
                 MyShortcut\
                            SubFolder1
                            Subfolder2

Windowsボックスを使用して、ショートカットをナビゲートしてサブフォルダーに到達できます。

しかし、CentOSリリース6.5のLinuxボックスを使用すると、ショートカットをナビゲートできません。

Fstabには次のものがあります。

//MYSERVER/SHARE /mnt/g cifs    uid=ME,gid=ME,noauto,credentials=/home/ME/.smbcredentials,iocharset=utf8,file_mode=0777,dir_mode=0777   0 0

/ mnt/gと/ mnt/g/MyFolderにcdできますが、/ mnt/g/MyShortcutにcdできません

/ mnt/gで、次のように入力した場合:cd MyShortcut:

-bash: cd: MyShortcut: Invalid argument

入力した場合:ls -l

drwx--x--x. 2 ME ME 0    Apr 17 12:16 MyShortcut
drwxrwxrwx. 1 ME ME 4096 Sep 19  2013 MyFolder

更新:fstabから\ MYSERVER\SHARE\MyShortcutもマウントしようとしましたが、エラーで終了しました。

1
Tarek Eldeeb

Windowsは、ショートカットを.lnkファイルとして実装します(通常、.lnk拡張子は、[フォルダー設定]コントロールパネルに表示するように指示しても非表示のままになる数少ない拡張子の1つであるため表示されません)。 Windowsでショートカットを使用する場合、これらのファイルはExplorer.exeによって読み取られ、フォルダー内を移動するときに現在のフォルダーを変更します。

多くのLinuxファイルシステムは symlinks を備えていますが、これは同じことを行いますが、ファイルシステムレベルで機能するため、プログラムから独立しています。 Windowsスタイルの.lnkショートカットは、使用しているファイルマネージャー(おそらくnautilus)ではサポートされていません。

cdコマンドが失敗する理由は、Linuxにディレクトリ/フォルダではなくファイルに対してcdを要求しているためです。

いくつかの回避策:

  • .lnkファイルは単なるテキストファイルであるため、geditまたはviで開き、同等のCIFS宛先に手動でパスできます。
  • Windowsは、mklinkコマンド(NTFSファイルシステム上)でUNIX/Linuxスタイルのシンボリックリンクをサポートしていますが、CIFS共有を介してそれらにアクセスして機能するかどうかを確認していません。
4
LawrenceC