Go to main content

手册页部分 8:系统管理命令

退出打印视图

更新时间: 2022年7月27日 星期三
 
 

umount_smbfs(8)

名称

mount_smbfs, umount_smbfs - 在 SMB 文件服务器上挂载和卸载共享资源

用法概要

/usr/sbin/mount [–F smbfs] [generic-options] [–o name=value]
     [–O] resource
/usr/sbin/mount [–F smbfs] [generic-options] [–o name=value]
     [–O] mount-point
/usr/sbin/mount [–F smbfs] [generic-options] [–o name=value] 
     [–O] resource mount-point
/usr/sbin/umount [–F smbfs] [generic-options] mount-point

描述

mount 实用程序将一个指定资源 resource 关联到路径名称位置 mount-point 处的文件系统结构,该位置必须已经存在。

如果 mount-pointmount 操作之前具有任何内容,这些内容将保持隐藏状态,直至取消资源的挂载。具有 SYS_MOUNT 特权的授权用户可执行 mount 操作。此外,用户可在自己拥有的目录上执行 SMBFS 挂载操作。

如果资源列在 /etc/vfstab 文件中,则可以指定 resourcemount-point,因为 mount 命令会向 /etc/vfstab 文件查询更多信息。如果省略 –F 选项,mount 会从 /etc/vfstab 文件所含的项中提取文件系统类型。

如果资源没有列在 /etc/vfstab 文件中,命令行必须同时指定 resourcemount-point

umount 实用程序会从文件系统结构中分离挂载的文件系统。具有 SYS_MOUNT 特权的授权用户可执行 umount 操作。此外,用户可在自己拥有的目录上执行 SMBFS 卸载操作。

必须启用 network/smb/client 服务才能成功挂载 SMB 共享。缺省情况下将启用该服务。

要启用服务,请输入以下 svcadm(8) 命令:

# svcadm enable network/smb/client

操作数

mount 命令支持下列操作数::

resource //server/share

    要挂载的资源的名称。除了其名称以外,还可以指定以下有关资源的信息:

  • server 是远程计算机的 DNS 或 NetBIOS 名称。

  • share 是远程服务器上的资源名称。

也可以指定用户帐户。请参见“选项”部分。

mount 命令可以从用户帐户的标准输入中读取口令。如果未提供口令,mount 将首先尝试使用 smbadm add-key 命令存储的口令(如果有)。如果该口令无法通过身份验证,mount_smbfs 命令将提示您输入一个口令(如果标准输入是 TTY)。

mount-point

要挂载或卸载的文件系统所在位置的路径。mount 命令在 /etc/mnttab 文件中维护一个已挂载文件系统的表。请参见 mnttab(5) 手册页。

选项

有关支持的 generic-options 列表,请参见 mount(8) 手册页。

–o name=value 或
–o name

设置文件系统特定的属性。可以将多个“名称-值”对指定为逗号分隔的对列表。列表中不允许有空格。这些属性如下所示:

acdirmax=n

目录更新后保留高速缓存的属性不超过 n 秒。缺省值为 60

acdirmin=n

目录更新后将高速缓存的属性至少保留 n 秒。缺省值为 30

acregmax=n

文件修改后保留高速缓存的属性不超过 n 秒。缺省值为 60

acregmin=n

文件修改后将高速缓存的属性至少保留 n 秒。缺省值为 3

actimeo=n

将正规文件与目录的最小和最大时间设置为 n 秒。有关将此选项设置为 0 的效果的说明,请参见下文的“文件属性”部分。

有关在 mount 命令行上如何解析 acdirmaxacdirminacregmaxacregminactimeo 的说明,请参见下文的“指定属性高速缓存持续时间选项的值”。

dirperms=octaltriplet

指定要分配给目录的权限。必须将值指定为三个一组的八进制数,例如 755。目录模式的缺省值来自 fileperms 设置,并且添加了执行权限,其中 fileperms 具有读取权限。

请注意,这些权限与 SMB 服务器授予的权限无关。

domain=value

指定用户名定义所在的工作组或 Windows 域的名称。如果未指定域名,将使用缺省系统的 SMB 域。

fileperms=octaltriplet

指定要分配给文件的权限。必须将值指定为三个一组的八进制数,例如 644。缺省值为 700

请注意,这些权限与 SMB 服务器授予的权限无关。

gid=groupid

将指定的组 ID 分配给文件。缺省值是在其中挂载了卷的目录的组 ID。

intr|nointr

启用或禁用以下行为:在用户中断调用线程时(例如,当操作正在执行时按 Ctrl-C)取消 smbfs(4FS) I/O 操作。缺省值为 intr(启用中断),因此通常允许取消。

noac

抑制属性高速缓存。本地 stat(2) 调用始终会从 SMB 服务器请求属性。

noprompt

挂载共享时抑制口令提示。该属性可用于允许对共享进行匿名访问。匿名访问不需要口令。

如果需要口令,并且设置了 noprompt 属性,同时未通过 smbadm add-key 命令存储口令,mount 操作将失败。

uid=userid

Assigns the specified user ID to files.缺省值是在其中挂载了卷的目录的所有者 ID。

user=value

指定远程用户名。如果省略 user,则使用登录的用户 ID。

xattr|noxattr

启用(或禁用)此挂载点中的 Solaris 扩展属性。此选项缺省为 xattr(启用扩展属性),但请注意:如果 SMB 服务器不支持 SMB“命名流”,smbfs(4FS) 会将此选项强制设置为 noxattr。如果某个挂载设置了 noxattr 选项,使用 Solaris 扩展属性的尝试将失败,并生成 EINVAL 错误。

–O

覆盖挂载。允许文件系统挂载到现有的挂载点之上,使得底层文件系统不可访问。如果在未设置此标志的情况下在之前已存在的挂载点上尝试挂载,挂载将失败,并生成“设备忙”错误。

文件属性

为提高 smbfs 的性能,文件属性会进行高速缓存。只要发生任何本地修改,都会更新文件修改时间。但是,文件访问时间在高速缓存刷新之前可能会暂时过期。

属性高速缓存将文件属性保留在客户机上。系统会为文件的属性分配一个刷新时间。如果在刷新时间之前修改了文件,刷新时间会按照自上次修改以来的时间进行延长(假设最近更改的文件可能很快会发生更改)。正规文件和目录都有最小和最大刷新时间延长期。设置 actimeo=n 会将正规文件和目录的刷新时间设置为 n 秒。

设置 actimeo=n 会禁用客户机上的属性高速缓存。这意味着对属性的每个引用将直接由服务器提供。虽然这可确保客户机始终可从服务器获得最新的文件属性,但额外的等待时间、网络负载和服务器负载会对性能产生不利影响。

设置 noac 选项也会禁用属性高速缓存。当增强了 smbfs 以支持写高速缓存时,此选项会对禁用写高速缓存产生进一步影响。

指定属性高速缓存持续时间选项的值

属性高速缓存持续时间选项有 acdirmaxacdirminacregmaxacregminactimeo,如上文的“选项”部分所述。为 actimeo 指定的值会设置除了在 mount 命令行上 actimeo 之后指定的任何属性高速缓存持续时间选项以外的所有这些选项的值。例如,请考虑以下命令:

# mount -F smbfs -o acdirmax=10,actimeo=1000 \
     //server/share  /mountpoint

因为 actimeo 是命令行中最后一个持续时间选项,所以它的值 (1000) 将成为所有持续时间选项的设置,包括 acdirmax。现在请考虑:

# mount -F smbfs -o actimeo=1000,acdirmax=10 \
     //server/share  /mountpoint

因为 acdirmax 选项在命令行上位于 actimeo 之后,所以它被赋予指定值 (10)。其余的持续时间选项设置为 actimeo 的值 (1000)。

示例

示例 1 挂载 SMBFS 共享

以下示例显示如何从本地 /mnt 挂载点上 SALES 工作组中的 nano 服务器挂载 /tmp 共享。您必须提供 root 用户的口令才能成功执行挂载操作。

# mount -F smbfs -o user=root,domain=SALES //nano.sfbay/tmp /mnt
Password:
示例 2 验证 SMBFS 文件系统已挂载

以下示例显示如何从本地 /mnt 挂载点上的 nano 服务器挂载 /tmp 共享。您必须提供 root 用户的口令才能成功执行挂载操作。

# mount -F smbfs -o user=root //nano.sfbay/tmp /mnt
Password:

    可通过下列方式验证共享是否已挂载:

  • 查看 /etc/mnttab 文件中的文件系统项。

    # grep mnt /etc/mnttab
    //nano.sfbay/tmp   /mnt    smbfs   dev=4900000     1177097833
  • 查看 mount 命令的输出。

    # mount | grep mnt
    mnt on //nano.sfbay/tmp read/write/setuid/devices/dev=4900000 on
    Tue Apr 20 13:37:13 2010
  • 查看 df /mnt 命令的输出。

    # df /mnt
    /mnt            (//nano.sfbay/tmp): 3635872 blocks     -1 files

通过查看 df -k /mnt 命令的输出获取有关已挂载共享的信息。

# df -k /mnt
Filesystem            kbytes    used   avail capacity  Mounted on
//nano.sfbay/tmp
                      1882384   64448 1817936     4%    /mnt
示例 3 卸载 SMB 共享

此示例假设 SMB 共享已挂载到 /mnt 挂载点。以下命令行将从挂载点取消共享的挂载。

# umount /mnt

文件

/etc/mnttab

其中列出了已挂载的文件系统的表。

/etc/dfs/fstypes

缺省的分布式文件系统类型。

/etc/vfstab

自动挂载资源的表。

/var/smb/smbfspasswd

为 Solaris SMB 客户机存储每用户设置。

属性

有关以下属性的说明,请参见 attributes(7) 手册页:

属性类型
属性值
可用性
system/file-system/smb
接口稳定性
Committed(已确定)

另请参见

acl(2), fcntl(2), link(2), mknod(2), mount(2), stat(2), symlink(2), umount(2), pcfs(4FS), smbfs(4FS), mnttab(5), smb(5), vfstab(5), attributes(7), mount(8), mountall(8), smbadm(8), svcadm(8)

附注

Solaris SMB 客户机会始终尝试使用 gethostbyname() 来解析主机名。如果不能解析主机名,SMB 客户机使用 NetBIOS 名称解析 (NetBIOS name resolution, NBNS)。Solaris SMB 客户机允许使用 NBNS,使 Windows 环境中的 Solaris SMB 客户机无需进行其他配置即可工作。

如果要在其上挂载文件系统的目录是一个符号链接,文件系统将挂载到符号链接所指的目录,而不会挂载到符号链接本身。