Bir SMB paylaşımını komut satırından nasıl bağlayabilirim?


78

Bir SMB ağ paylaşımını komut satırından (terminal) bağlamak istiyorum; bu konuda nasıl giderim?

Mac OS X 10.6.4 kullanıyorum.

Yanıtlar:


71

Bunu kullanarak kolayca başarabilirsiniz mount_smbfs(ki bu aslında bir sarıcıdır mount -t smbfs):

mount_smbfs //user@SERVER/folder ./mntpoint

İsteğe bağlı olarak, çalışma grubunu ekleyin:

mount_smbfs -W workgroup //user@SERVER/folder ./mntpoint

Tabii ki, ./mntpoint(gibi bir şey için /Volumes/smb) değiştirebilirsiniz.

Bunu yaptıktan sonra ./mntpointverilerinize göz atmak için basitçe gidin .

Çıkarmak için aşağıdaki komutu kullanın:

umount ./mntpoint

2
Ben alıyorum: `mount_smbfs: mount hatası: yol: Girdi / çıktı hatası ', Finder-> Sunucuya bağlan aracılığıyla bulmayı bağlar mı?
Ian Vaughan

Kullanıcı adımın içinde @ char varsa, nasıl başlayabilirim? Örneğin, xyz@microsoft.com gibi bir microsoft hesabı kullandığımda? Tek ve çift tırnaklı kullanıcı adı vermeyi denedim ama dint çalışması ..
Yashvit

2
Bu hatayı alıyorum:mount_smbfs: could not find mount point /Volumes/Share: No such file or directory
Iulian Onofrei

11
man mountOS X'den alıntı Yosemite:Note: You should always use the system mount command and never call mount_smbfs directly.
ssc

3
@Yashvit: '@' ila '% 40'
değerini değiştirin

70

open(1)Komut ve bir URL kullanın :

open 'smb://username:password@server/share'

Artıları: /VolumesSizin için bağlama noktasını oluşturur .

Eksileri: Finder'ın çalışmasını gerektirir.


4
Yerel ağımdaki hızlı bağlantılar için bu sürümü tercih ediyorum, orada tüm kullanıcılar biliniyor, bu yüzden daha basit bir komut, mount_smbfs kullanarak - aslında varolmayan yollar ile ilgili problemlerim vardı - bununla birlikte bazı yeni sunuculara bağlanmam gerekecekse özel bir dosya sistemi, ya da başka bir kullanıcı denemem gerekecek ya da farklı bir bağlantı noktası istedim - tamam - ama bu ne kadar sıklıkla oluyor? Aferin! Tamam, hala Finder'ı çalıştıran bir Terminal ucubesiyim, ama bu% 90'ımız gibi, değil mi?
hexerei yazılımı

Her Finderzaman açılmamış, en azından bir süreç olarak?
Iulian Onofrei

1
@Iulian Onofrei: Kullanıcı etkileşimli olarak giriş yapmadıysa. Direct mountkomutunu cronişlerde kullanmam gerekiyordu . openKomutu kullanarak , örneğin bir elektrik kesintisinden sonra, etkileşimli oturum geçerse bunlar başarısız olur.
George,

Ayrıca, openkomut daha sonra ağ sürücüsüne bağlanamasa bile, komutu Finder'a iletirse başarılı olmuş gibi çıkacağını unutmayın .
Jonathan Wren

23

Mount'ın yardımına bir göz atmalısın:

man mount

Daha yakından incelendikten sonra, dosya sisteminin türünün aşağıdaki olduğunu göreceksiniz:

mount -t smbfs //username:password@MACHINENAME/SHARENAME /SomeLocalFolderOfChoice

Şifre (ve teorik olarak kullanıcı adı) isteğe bağlıdır.

Yukarıdaki komutun sonucu çıkış olmaz (eğer her şey yolunda giderse), ancak a cd /SomeLocalFolderOfChoice, uzak sonuçları vermelidir. Lütfen SomeLocalFolderofChoice’in bulunması gerektiğini unutmayın .

Mount -mb smbfs dosyasını değiştirmek için mount_smbfs komutunu da kullanabilirsiniz.


5

Önyükleme sırasında onları monte etmem için ne işe yaradı:

==> /etc/auto_master <==
#
# Automounter master map
#
+auto_master        # Use directory service
/net            -hosts      -nobrowse,hidefromfinder,nosuid
/home           auto_home   -nobrowse,hidefromfinder
/Network/Servers    -fstab
/-          -static
/-          auto_smb          # add this line <**********

==> /etc/auto_smb <==         # Create this if it doesn't exist <****
/(not Volumes)/Public   -fstype=smbfs,soft smb://(user):(password)@192.168.140.5/data/Public
/(not Volumes)/ WGroleau -fstype=smbfs,soft smb://(user):(password)@192.168.140.5/data/Students/wes_groleau

Nedense, ne kısa isim ne de sunucunun FQDN'si işe yaradı, bu yüzden IP almak için 'ping (name)' kullandım. Başka bir deyişle, DNS adı çözer, ancak mount_smbfs çözemedi.

Ve bağlama noktasını / Volumes içine koyamadım, çünkü önyükleme onu silecektir.

Bir tuhaflık: Bu, birkaç gün boyunca iyi çalıştıktan sonra, iki veya üç gün boyunca, LibreOffice, Adobe Reader ve Finder, iki paylaşımdan BİRİNİ bulamadı, ancak kabuk ve TextEdit'in hiçbir sorunu yoktu. Bundan iki ya da üç gün sonra, gizemli bir şekilde tekrar çalışmaya başladı.

Bu düzenlemeleri yaparsanız ve yeniden başlatmak istemiyorsanız, bunları 'auto mount -vc' ile bağlayabilirsiniz

Güncelleme: Diğer tuhaflıklar. (1) Burada iki tane WiFi sistemi var ve bunlardan birinin Windows sunucularına erişimi yok. Haftada birkaç kez, yönlendiricilerden biri veya ikisi aşağı iner. "İyi olan" azalırsa ve MacBook otomatik olarak diğerine bağlanırsa, sürücünün kapalı olduğunu söylemek yerine, SMB sürücüleri "Çok fazla kullanıcı" diyor. (2) Haftada birkaç kez, Windows dosyalarıma erişmeye çalıştığımda "izin reddedildi" alıyorum. Bu genellikle bir yarım saat sürer ve bu süre zarfında bir windows çubuğuna gidip giriş yapabilir ve aynı kimliği ve şifreye sahip dosyaları görebilirim.


Bu bu hafta iki kez upvoted beri, ben yazılmıştır işaret olmalıdır birkaç önce MacOS sürümleri.
WGroleau

4

AppleScript kullanmak, şifrelerinizi Anahtarlıkta sakladığından uygundur. Bash işlevi:

function mymount
{
    osascript <<EOF
mount volume "smb://user@fqdn1/volume1"
mount volume "smb://user@fqdn2/volume2"
EOF
}

Bash 'mymount' çağır, standart Anahtarlık açılır penceresinden şifreleri girin ve her şey yolunda giderse, istenen birimler / Birimler içine monte edilecektir.


Bu da mükemmel bir yaklaşım. Root kullanıcısı olduğu için onaylı cevabı sevmiyorum. Bence, bu bir astarları iyi seçenekler olmalı: /usr/bin/osascript -e 'mount volume "smb://username:password@server/share"'yaopen /Volumes; open 'smb://username:password@server/share'
laimison

3

"Workgroup \ username" biçiminde bir kullanıcı adınız varsa, şu şekilde eklemeniz gerektiğini eklerim:

mount -t smbfs "//WORKGROUP;username:password@MACHINENAME/SHARENAME" /SomeLocalFolderOfChoice

Kaynak: buradan bir örnek uyarlamak


-1

eski yazı ama peki bu şekilde montaj:

smb://no_username:password@MACHINENAME 

zaman makinesi gibi mi?


1
"komut satırından (terminal)" ... bu geçerli bir bash komutu değil. OP'nin sorduğu gibi sunucuya bağlanmak için Finder + ⌘K ile demek istediğinizi varsayıyorum.
mattmc3
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.