These release notes document the Beta3 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 Beta3 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 Beta3 version of the CIFS client module can also use the existing Kerberos client mechanism setup to authenticate users with an CIFS server.
Updated versions of several existing Solaris binaries are delivered as part of the Beta3 code drop, so be sure to install the new versions when prompted to do so during installation.
To view the available shares, use the smbutil view command:
% smbutil view -A //nanoYou may now mount and unmount a share on a directory you have write permission to as yourself. As usual, superuser can mount anywhere.
$ mount -F smbfs //joe@nano/tmp /home/joe_nanoThere is a service for the client, svc:/network/smb/client, which can now be disabled to disallow smbfs mounts (though smbutil will be permitted).
New keywords are added to .nsmbrc to permit sane defaults for user and domain settings:
$ cat $HOME/.nsmbrcPersistent settings storage shared by all users is possible with sharectl:
$ sharectl get smbsmbutil has new login, logout, and logoutall subcommands to manage an in-kernel password store:
$ smbutil login joe@nanoThere are mdb dcmds to walk key data structures in nsmb and smbfs:
$ mdb -kA PAM module is delivered to store passwords on login, which is useful in a non-Kerberos environment with synchronized user names and passwords.
Users should notice fewer bugs than with Beta2, and better speed and stability than the Alpha releases.
This Beta3 release includes the following Solaris packages:
These packages are based on and have been tested with the OS/Net (ON) Nevada Build 79. The binaries in these packages are expected to run without issues starting with Build 77. Builds prior to 76 cannot use these packages due to major Virtual File System incompatibilities.
The CIFS client team values your feedback and thanks you for using this Beta3 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-beta3-bins-20071220.sparc.tar file has the following directory structure:
packages/The smbfs-beta3-bins-20071220.i386.tar file has the following directory structure:
packages/NOTE: Updated versions of several existing binaries are delivered as part of the Beta3 code drop, so be sure to install the new versions when prompted to do so during installation.
If you uninstall the Beta3 packages, the original versions are 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 SUNWsmbfskr SUNWsmbfsr SUNWsmbfsu SUNWsmbfstestpath-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 SUNWsmbfstest SUNWsmbfsu SUNWsmbfsr SUNWsmbfskrThis Beta3 release also includes a tar file that contains the CIFS client sources.
Download the smbfs-beta3-src-20071220.tar file to your system and release the files from the tar archive with the following command:
# tar xvf smbfs-beta3-src-20071220.tarIf you want to build the sources, you must have a working OpenSolaris source workspace set up and building.
Building the CIFS client packages now requires you to have the closed bins in place. There are more steps with the Beta3 because of greater integration with the Solaris OS. To build, do the following:
% ws path-to-workspaceThe following list shows the source locations for each of the CIFS client modules:
Solaris binaries or those that used 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.
Following is the list of open bugs in the Beta3 CIFS client:
| Bug ID | Synopsis |
| 6607513 | mount get "device busy" after dbench and rm testing |
| 6633213 | TX cifs mount is read only on samba server when the labels are equal |
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.