These release notes document the alpha2 code drop of the CIFS client module (SMBFS). The purpose of this document is to give you information about this distribution, its capabilities, and any known limitations and bugs. The release notes also provide instructions on installing and uninstalling the CIFS client module, information about accessing the CIFS client source files, reporting bugs, and making contributions to the code.
This document covers the following topics:
The alpha2 version of the CIFS client module is a Solaris Virtual File System (VFS) that permits the Solaris OS to look up, read, and write files on a Windows server or on a system that runs Samba. Such systems use the SMB/CIFS distributed file system protocol.
You can use the CIFS client module to view available shares on a server and mount the shares on your system. You can create, delete, and write files on the mounted CIFS share.
The alpha2 version of the CIFS client module can also use the existing Kerberos client mechanism setup to authenticate users with an CIFS server.
An updated version of automound is delivered as part of the alpha2 code drop, so be sure to install the new version when prompted to do so during installation.
To view the available shares, use the smbutil view command:
% smbutil view //root@nanoTo mount a share, use the mount command as superuser:
# mount -F smbfs //root@nano/tmp /mntThis alpha2 release includes the following Solaris packages:
These packages are based on and have been tested with the OS/Net (ON) Nevada Build 68. The binaries in these packages are expected to run without issues starting with Build 64.
The CIFS client team values your feedback and thanks you for using this alpha2 release of the CIFS client software! If you encounter problems or issues that are not mentioned in the Known Limitations and Known Bugs sections, see the Reporting Bugs section.
The installable Solaris packages are in two tar files.
The smbfs-alpha2-bins-20070821.sparc.tar file has the following directory structure:
packages/The smbfs-alpha2-bins-20070821.i386.tar file has the following directory structure:
packages/NOTE: An updated version of automound is delivered as part of the alpha2 code drop, so be sure to install the new version when prompted to do so during installation.
If you uninstall the alpha2 packages, the original automountd is restored.
You can install and uninstall the CIFS client packages by using the Solaris packaging tools:
To install the packages, type the following:
# pkgadd -d path-to-dir SUNWsmbfsr SUNWsmbfsupath-to-dir is the full path of the directory in which the packages are stored on your system.
To uninstall the packages, type the following:
# pkgrm SUNWsmbfsu SUNWsmbfsrThis alpha2 release also includes a tar file that contains the CIFS client sources.
Download the smbfs-alpha2-src-20070821.tar file to your system and release the files from the tar archive with the following command:
# tar xvf smbfs-alpha2-src-20070821.tarIf you want to build the sources, you must have a working OpenSolaris source workspace set up and building.
To unpack and build the CIFS client packages, do the following:
# ws path-to-workspaceThe following list shows the source locations for each of the CIFS client modules:
smbutil - $SRC/cmd/fs.d/smbclnt/smbutil
mount - $SRC/cmd/fs.d/smbclnt/mount
automountd - $SRC/cmd/fs.d/autofs/automountd
libsmbfs.so - $SRC/lib/libsmbfs
nsmb - $SRC/uts/common/fs/smbclnt/netsmb
smbfs - $SRC/uts/common/fs/smbclnt/smbfs
Mount operations can currently only be performed by superuser. A future release will enable regular users to mount CIFS shares on directories that they own.
Solaris binaries or those that use shared libraries cannot be executed on mounted CIFS shares.
The CIFS client does not currently parse CIFS ACLs. As a result, the CIFS client cannot display accurate file ownership information or support getfacl/setfacl.
The commonly used SMB protocol dialects do not support hard links (link(2)), symbolic links (symlink(2)), or device nodes (mknod(2)).
The CIFS client does not support byte-range locking via the fcntl(2) system call over the wire. This means that locks acquired by a process on a client are only visible to other processes on that client.
nsmbrc(4) settings are currently only read from the $HOME/.nsmbrc file, as the code to read them from the service management facility (SMF) is not yet integrated. sharectl(1M) has not yet been updated to get or set CIFS client properties.
smbutil(1)'s login, logout, and logoutall subcommands have not yet been integrated.
Following is the list of open bugs in the alpha2 CIFS client:
| Bug ID | Synopsis |
| 6531907 | umount smbfs get busy |
| 6594141 | cd from the dead smbfs to / panic the system |
| 6594639 | umount -f panic the system |
| 6516267 | smbutil view gets unknown type |
| 6536170 | "ls -a" on smbfs report duplicate "." and ".." dir |
| 6543838 | can't get the correct file size when the file size is changing |
| 6584354 | Cannot open files mounted using CIFS client with Gnome browser |
| 6584371 | File browser window freezes when checking properties |
| 6517401 | smbutil can't support the anonymous access |
| 6543822 | timeout value is too long for "smbutil view" |
| 6576025 | mount/umount much slower than before |
For each problem you encounter, send the following information to help the team determine the root cause of the problem:
Describe the problem and describe what you were doing when you encountered the problem.
NOTE: Give as much information as you can to enable the team to reproduce the problem.
Describe your configuration.
For example, x data servers running on x machines.
Describe the bits you have installed.
For example, run the following command on all machines:
% cat /etc/motdIf the problem is a panic, include the stack trace and access to the core file.
If possible, a snoop or ethereal trace would be helpful in many cases, especially with issues unique to a particular server.
For example, run this command:
# snoop -o /tmp/bug1.snoop client-name server-nameSend the information in an email message to the smbfs dash discuss at opensolaris dot org alias.
The CIFS client team will not provide patches or fixes to this distribution. However, any new bugs and issues will be logged into our tracking tool. These issues will be evaluated for inclusion in future releases.
If you would like to contribute to this project, contact the CIFS client team at the smbfs dash discuss at opensolaris dot org alias.
The acceptance or rejection of code from a community member will follow this existing OpenSolaris process:
An internal CIFS client project sponsor (sponsor) is assigned to an external contributor (contributor).
The sponsor reviews the changes from the contributor and determines whether to accept or reject them.
If the changes are accepted, the sponsor integrates the changes from the contributor into the CIFS client project gate.
If the changes are rejected, the sponsor notifies the contributor that the changes have been rejected.