명령 줄에서 SMB 공유를 어떻게 마운트합니까?


78

커맨드 라인 (터미널)에서 SMB 네트워크 공유를 마운트하고 싶습니다. 내가 어떻게 갈까?

Mac OS X 10.6.4를 사용하고 있습니다.

답변:


71

mount_smbfs(실제로 래퍼)를 사용하여 쉽게 얻을 수 있습니다 mount -t smbfs.

mount_smbfs //user@SERVER/folder ./mntpoint

선택적으로 작업 그룹을 추가하십시오.

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

물론 ./mntpoint(와 같은 /Volumes/smb) 을 변경할 수 있습니다 .

이 작업을 수행 한 후 간단히 ./mntpoint데이터를 찾아보십시오.

마운트 해제하려면 다음 명령을 사용하십시오.

umount ./mntpoint

2
Finder-> Connect to Server를 통해 찾기를 마운트하는 동안`mount_smbfs : mount error : path : Input / output error '가 나타납니다.
— Ian Vaughan

내 사용자 이름에 @ 문자가 있으면 어떻게해야합니까? 예를 들어 xyz@microsoft.com과 같은 Microsoft 계정을 사용하는 경우? 작은 따옴표와 큰 따옴표로 사용자 이름을 제공하려고 시도했지만
— 부끄럽지 않습니다

2
이 오류가 발생합니다 :mount_smbfs: could not find mount point /Volumes/Share: No such file or directory
— Iulian Onofrei

11
man mountOS X Yosemite 에서 인용 :Note: You should always use the system mount command and never call mount_smbfs directly.
— ssc

3
@Yashvit : '@'을 '% 40'으로 변경
— WGroleau

69

open(1)명령과 URL을 사용하십시오 .

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

장점 : 마운트 지점을 만듭니다 /Volumes.

단점 : Finder가 실행 중이어야합니다.


4
로컬 네트워크에서 빠른 연결을 위해이 버전을 선호하므로 모든 사용자가 알고 있으므로 이것이 존재하지 않는 경로와 관련하여 실제로 문제가있는 mount_smbfs를 사용하는보다 간단한 명령입니다. 특별한 파일 시스템, 또는 다른 사용자를 시도하거나 다른 마운트 포인트를 원할 것입니다-그래-얼마나 자주 발생합니까 ... 그래서이 간단한 솔루션을 위해 엄지 손가락이 올라갑니다! 잘 했어! 좋아, 나는 여전히 Finder를 실행하고있는 터미널 괴물이지만 우리의 90 %와 같습니다.
— hexerei 소프트웨어

아닌가요 Finder항상 적어도 프로세스로, 열?
— Iulian Onofrei

1
@Iulian Onofrei : 사용자가 대화 형으로 로그인하지 않는 한 아닙니다. 작업 에서 직접 mount명령 을 사용해야했습니다 cron. 사용하여 open대화 형 세션이 정전 후, 예를 들어, 사라 경우 명령이 실패합니다.
— George

또한 open명령이 나중에 네트워크 드라이브에 연결하지 못한 경우에도 Finder에 명령을 전달하면 성공한 것처럼 항상 종료됩니다.
— Jonathan Wren

23

mount의 도움을 살펴보십시오.

man mount

자세히 살펴보면 파일 시스템 유형이 다음과 같습니다.

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

비밀번호 (및 이론적으로 사용자 이름)는 선택 사항입니다.

위 명령의 결과는 출력되지 않지만 (모두 정상인 경우) cd /SomeLocalFolderOfChoice원격 결과를 생성해야합니다. 있습니다 SomeLocalFolderofChoice이 존재해야합니다.

mount_smbfs를 사용하여 mount -t smbfs를 교체 할 수도 있습니다.


5

부팅하는 동안 마운트하는 데 도움이 된 것은 다음과 같습니다.

==> /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

어떤 이유로 든 서버의 짧은 이름이나 FQDN이 작동하지 않았으므로 'ping (이름)을 사용하여 IP를 얻었습니다. 즉, DNS는 이름을 확인하지만 mount_smbfs는 이름을 확인할 수 없습니다.

부팅 할 때 마운트 지점이 삭제되므로 / Volumes에 마운트 지점을 넣을 수 없습니다.

한 가지 단점 : LibreOffice, Adobe Reader 및 Finder가 며칠 동안 2 일 또는 3 일 동안 제대로 작동 한 후 LibreOffice, Adobe Reader 및 Finder가 두 공유 중 하나를 찾지 못했지만 셸 및 TextEdit에는 문제가 없었습니다. 2, 3 일이 지난 후에는 다시 신비롭게 일하기 시작했습니다.

이러한 수정 사항을 수행하고 재부팅하지 않으려면 'auto mount -vc'를 사용하여 마운트하십시오.

업데이트 : 더 많은 단점. (1) 여기에는 두 개의 WiFi 시스템이 있으며 그 중 하나는 Windows 서버에 액세스 할 수 없습니다. 일주일에 두 번, 라우터 중 하나 또는 둘 다 작동이 중단됩니다. "좋은 장치"가 다운되고 MacBook이 다른 장치에 자동으로 연결되면 드라이브가 오프라인 상태라고 말하는 대신 SMB 드라이버가 "너무 많은 사용자"라고 말합니다. (2) 일주일에 두 번, Windows 파일에 액세스하려고하면 "권한이 거부되었습니다"라는 메시지가 나타납니다. 이것은 일반적으로 약 30 분 동안 지속되며,이 기간 동안 창 표시 줄에 가서 로그인하여 동일한 ID 및 비밀번호로 파일을 볼 수 있습니다.


이번 주에 두 번 올라 왔기 때문에 여러 버전의 MacOS 이전 에 작성된 것임을 지적해야합니다 .
— WGroleau

4

AppleScript를 사용하면 암호가 키 체인에 저장되므로 편리합니다. 배쉬 기능 :

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

bash에서 'mymount'를 호출하고 표준 키 체인 팝업을 통해 비밀번호를 입력하십시오. 모든 것이 제대로되면 요청 된 볼륨이 / Volumes에 마운트됩니다.


그것도 완벽한 접근법입니다. 루트 사용자로 마운트되기 때문에 승인 된 답변을 좋아하지 않습니다. 내 생각에,이 1 개의 강선은 최선의 선택이어야한다 : /usr/bin/osascript -e 'mount volume "smb://username:password@server/share"'또는open /Volumes; open 'smb://username:password@server/share'
— laimison

3

"workgroup \ username"형식의 사용자 이름이 있으면 다음과 같이 마운트해야합니다.

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

출처 : 여기 에서 예를 수정


-1

오래된 게시물이지만 다음과 같이 마운트하는 것은 어떻습니까?

smb://no_username:password@MACHINENAME 

타임 머신 드라이브처럼?


1
"명령 줄에서 (터미널)"... 유효한 bash 명령이 아닙니다. OP가 요청한 것이 아닌 서버에 연결하기 위해 Finder + ⌘K를 사용한다고 가정합니다.
— mattmc3
당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.