web-dev-qa-db-ja.com

Linuxで異なる資格情報(ユーザー名とパスワード)を使用してsmbドライブをマウントする方法は?

わかりました。ここにLinux(CentOS 7)を実行するラップトップがあります。ラップトップは、さまざまなユーザー(ラップトップにすべての異なるログインを持っている)から使用されます。ネットワークにはSambaサーバーがあります。ラップトップにログインしているすべてのユーザーは、smbドライブごとに異なるログイン(ユーザー名とパスワード)も持っています。問題は、各ユーザーのsmbドライブが自動的にマウントされるようにLinuxラップトップを構成する方法です。

Fstabに次の行を追加するなどのデフォルトのヒントとヒント

//servername/sharename  /media/windowsshare  cifs   uid=ubuntuuser,credentials=/home/ubuntuuser/.smbcredentials,iocharset=utf8,sec=ntlm   0       0

資格情報ファイル(/home/ubuntuuser/.smbcredentials)の作成は、私の場合は機能しません。これは、資格情報ファイルが各ユーザーに対して同じであるためです(ただし、異なる必要があります)。また、~/.smbcredentialsのような資格情報ファイルを指定しても、ホームディレクトリ~/はマウント時に不明であるため、機能しません。

2
Steffen

それを見つけた。

ソースは次のとおりです。 http://wiki.centos.org/TipsAndTricks/WindowsShares ポイント「5.さらに別のさらに優れた方法」

秘訣はautofsを使用することです。

  1. この行を/etc/auto.masterに追加します。

    /mnt/smb /etc/auto.smb.top
    
  2. /etc/auto.smb.topを次のように作成します。

    * -fstype=autofs,-Dhost=& file:/etc/auto.smb.sub
    
  3. /etc/auto.smb.subを次のように作成します(必要に応じて調整します)。

    * -fstype=cifs,credentials=/root/secret.txt,uid=500,gid=100 ://${Host}/&
    

    そしてここで私は${HOME}のようにホームディレクトリも指定することができます

    * -fstype=cifs,credentials=${HOME}/secret.txt,uid=500,gid=100 ://${Host}/&
    

    各ユーザーが独自の資格情報ファイルを持つように:-)

  4. パーミッションビットが正しいことを確認して、サービスを再起動しましょう。

    [root@Host]# chmod 644 /etc/auto.smb.*
    [root@Host]# /sbin/service autofs restart
    
  5. これで、次のように入力するだけでアクセスできます。

    [user@Host]$ cd /mnt/smb/winbox/getme
    
3
Steffen