現在、Finder-> Go-> Connect To Serverを介してWindows(smb)共有に接続しています。 IPを入力する必要があります(キーチェーンに資格情報を保存しましたが)。再起動またはログアウトした場合は、これを再度実行する必要があります。
ログインするとすぐに、接続しているSMB共有を常に利用できるようにしたいのですが、どうすればよいですか?
共有ポイントをログインアイテムにすると、ログオンするたびに自動的に「開かれる」(つまり接続される)ようになります。 [システム環境設定]-> [ユーザーとグループ]->サイドバーでアカウントを選択-> [ログインアイテム]タブに移動し、マウントされた共有ポイントをドラッグします(Finderのコンピュータービューから取得できます。[移動]メニューから入手できます)。
(履歴メモ:設定ペインはOS X 10.6では「アカウント」という名前でしたが、10.7以降では「ユーザーとグループ」に変更されました。)
起動したエージェント(この場合はbashスクリプト)を作成して、数分ごとに好きな共有をマウントします。完璧ではありませんが、機能します。これはSamba共有用ですが、他のタイプを実行するように変更できます。
Windows/xiTunesライブラリの共有についてDaveNicollの助けを借りて作成されました。
ラップトップのワイヤレスカードを使用して、自宅のSSIDに接続されているかどうかを確認しています。もちろん、条件付き実行には何でも使用できます。
私が持っているようにマウントの条件としてSSIDを使用する場合は、OSXに付属のAirMacユーティリティを/ usr/bin /にエイリアスすることが有益であることがわかります。そうでない場合は、次のセクションに進んでください。
ターミナルを開いて実行します:
Sudo ln -s /System/Library/PrivateFrameworks/Apple80211.framework/Versions/Current/Resources/airport /usr/sbin/airport
airport -I | grep '.* SSID:' | sed 's/^.* SSID: //'
私の条件文は
お気に入りのテキストエディタを開いて、新しいファイルを開始します。私はMountShares.shと呼びました。
if [ -d '/Users/kyle/Music/iTunes/Podcasts/' ]; then
#echo Nothing to do, share is mounted
exit
else
if [ -z `airport -I | grep '.* SSID:' | sed 's/^.* SSID: //'` ]; then
#echo SSID is Null, we're not connected with the Airport to any Network.
exit
else
if [ `airport -I | grep '.* SSID:' | sed 's/^.* SSID: //'` == "2600leagues" ]; then
#echo SSID is 2600leagues!
/sbin/mount -o nodev,nosuid -t smbfs '//Kyle:[email protected]/media/Music' '/Users/kyle/Music/'
fi
fi
fi
次に、特定のニーズを表すために11行目を編集する必要があります。 boldパーツのみを編集する必要があります:
/ sbin/mount -o nodev、nosuid -t smbfs '// User:Password @ ServerIP_or_Name/Share' '/ Where/You/Want/it_to_mount /'
例:
/sbin/mount -o nodev,nosuid -t smbfs '//Kyle:[email protected]/media/Music' '/Users/kyle/Music/'
編集したmountコマンドができたので、Terminalで実行してみてください。それが成功した場合、あなたの共有はマウント場所で利用可能であるはずです。 (私の例では/Users/kyle/Music/
)
Bashスクリプトの行1を編集して、マウントされた共有内のファイルまたはディレクトリを反映します。SSIDをとして使用する場合私の場合と同じように、line 52600leaguesをSSIDに置き換えて変更します。
Bashスクリプトを便利な場所に保存します。 (私が使う ~/Library/Scripts/NetworkMounts/MountShares.sh
)
ここで、bashスクリプトを実行可能にする必要があります。これを行うには、chmodを使用します。
ターミナル:
chmod 777 ~/Library/Scripts/NetworkMounts/MountShares.sh
ネットワーク共有がまだマウントされている場合は、今すぐアンマウント/イジェクトしてください。 (ファインダー動作します)
Terminal:を介してスクリプトを実行してみてください。
~/Library/Scripts/NetworkMounts/MountShares.sh
すべてがうまくいけば、あなたのシェアをマウントする必要があります。あとは、スクリプトが頻繁に実行されるようにするだけです。通常、この種のことにはcrontabを使用しますが、10.6では非推奨になっています。 Appleむしろあなたは彼らのlaunchdサービスを使用したいです。
起動されたエージェントがsourceforgeから Lingon を取得できるようにするため。
~/Library/Scripts/NetworkMounts/MountShares.sh
それだけです
これが役立つかどうか教えてください。私はこれらすべてをできるだけ早くタイプしました。
Auto_fs、auto_masterなどを使用して、 Autofs:Mac OS Xでのネットワークファイル共有の自動マウント(PDF) を読んでみてください。今(2009年)は少し古くなっていますが、ドキュメントの例を使用して、すべてのNFS&SMB共有を整理し、簡単に自動マウントできました。
auto_master(5)
を見たことがありますか?一見可能に見えますが、設定するのは大変な作業のようです。
System Preferences
> Sharing
> File Sharing
> Option
> Share Files and Folders Using SMB
。共有設定は認識できると思います。そうでない場合は、favorite server
にsmb共有を追加することもできます。
お気に入りのサーバーとして追加する場合は、FinderでApple+K
を押して、Connect to Server
ダイアログボックスを表示します。住所を入力し、住所の横にある+
をクリックします。その後、以下のエリアFavorite Servers
に追加されます。
私の解決策は、Automatorを使用して、自動的に接続する小さなアプリを作成し、ログイン時に開始するように設定することです。
Automatorを起動して[アプリケーション]を選択すると、[ファイルとフォルダーのライブラリ]の下に[指定されたサーバーの取得]と[サーバーへの接続]が表示されます。それらをこの順序で追加し、IPアドレスと共有名(該当する場合)を追加します。
この時点で、アプリケーションとして保存できます(〜/アプリケーションは適切な場所です)。次に、[システム設定]> [ユーザー]からログイン項目に追加します。
ただし、Automatorに30秒の一時停止(ユーティリティライブラリから)と1000回の反復の4つのループを追加しました。ログアウトするか再起動するまで、それは実行され続けるはずです。
注:接続できない場合は、やや便利なダイアログがポップアップ表示されます。
接続に失敗しました
サーバー "x.x.x.x"が存在しないか、現時点では使用できない可能性があります。サーバー名またはIPアドレスを確認し、ネットワーク接続を確認してから、再試行してください。
注:すでに接続されているかどうかはチェックされません。 Connect toServerの出力を確認する方法があるかもしれません
いくつかの解決策があります ここ 、その中で最も単純な(IMHO)私は以下に再投稿します:
ターミナルから:
Sudo vifs
vi
に慣れていない場合:挿入(編集モード)で「i」を押してから、これを新しい行に貼り付けます。
smbserver:/share /Volumes/mount_point url automounted,soft,url==cifs://user:pass@smbserver/share
Esc
を押してからzz
を押して保存し、終了します。
最後に:
Sudo automount -vc
これで、コンソール/ファインダー/その他で/Volumes/mount_point
を押すと、共有が自動的にマップされます。