X

News, tips, partners, and perspectives for the Oracle Solaris operating system

Accessing Windows Shares

Guest Author

In this entry I'll show you how to access Microsoft Windows shares that may be running alongside OpenSolaris on your network.

Step 1: Share The Windows Folder 

The first step is to make sure the folder you want to access is shared by Windows. On Windows XP you can access this by viewing the properties for the folder and selecting the Sharing tab:


For this example, I'm going to share my entire My Documents directory. The share name will be easiest to work with from OpenSolaris if it doesn't contain any spaces, hence I'm using 'MyDocuments'.

Also make a note of the hostname or IP address of the Windows machine. Ideally you'll use a hostname, especially if your router is configured for DHCP, but you can also use an IP address as a fall back option.

To determine your hostname, run hostname from the command line:

C:\\Documents and Settings\\Brian>hostname
Integrity
C:\\Documents and Settings\\Brian>

You can determine the IP address by running ipconfig:

C:\\Documents and Settings\\Brian>ipconfig
Windows IP Configuration
Ethernet adapter Wireless Network Connection:
Connection-specific DNS Suffix . : hsd1.ct.comcast.net.
IP Address. . . . . . . . . . . . : 10.0.1.200
Subnet Mask . . . . . . . . . . . : 255.255.255.0
Default Gateway . . . . . . . . . : 10.0.1.1
C:\\Documents and Settings\\Brian>

Finally, if you are running any type of firewall on the Windows machine, be sure to configure it so that your OpenSolaris machine is allowed to connect to it. 

Step 2: Access the Share from OpenSolaris

Option 1: Using the Connect to Server Dialog

Select Connect to Server from the Places menu

Change the Service type to Custom Location and set the Location URI to the following:

smb://[windows hostname or IP address]/[share name]

So for my example above it would be:

smb://integrity.local/MyDocuments or smb://10.0.1.200/MyDocuments.

Then give the connection a name and click connect:

You'll then find the connection available on your desktop and in the Places menu:

Upon opening the connection you can view and edit the files on the Windows share:

The connection will persist across restarts. To remove it, right-click the connection and select unmount.

Option 2: Using mount

You can run the smbutil command to view the available resources on a particular host:

bleonard@opensolaris:~$ smbutil view //integrity.local
Password:
Share Type Comment
-------------------------------
MyDocuments disk
IPC$ IPC Remote IPC
ADMIN$ disk Remote Admin
C$ disk Default share
4 shares listed from 4 available
bleonard@opensolaris:~$


Make a home for the share. I've created a folder called IntegrityDocs off of my home folder.

Before we can do the mount we must first enable the smb client:

svcadm enable /network/smb/client

Mount the share, replacing my userid (bleonard) with yours. If you've set the share up with a password, enter it at the prompt, otherwise just press enter to proceed:

bleonard@opensolaris:~$ mount -F smbfs -o uid=bleonard,gid=staff //integrity.local/MyDocuments ~/IntegrityDocs
Password:
bleonard@opensolaris:~$

The uid and gid options give your user privileges to write to the share. If you leave those options out only the root user will have write privileges.

Finally, I don't believe an smbfs can be mounted at boot, however, by adding an entry to your /etc/vfstab file, you can significantly shorten the mount command as the rest of the properties will be pulled from the vfstab file. For example, I would add the following:

//integrity.local/MyDocuments - /export/home/bleonard/IntegrityDocs smbfs - no uid=bleonard,gid=staff

Now I can mount the share using either:

mount //integrity.local/MyDocuments

or:

mount /export/home/bleonard/IntegrityDocs

Join the discussion

Comments ( 6 )
  • Gerry Saturday, August 16, 2008

    Thank you very much for this great article!

    I have also a question:

    Is it possible to get access to a WebDAV directory in the internet? Because I would like to sync my Firefox bookmarks with a server in the internet, hosted by my private internet provider, who only gives me WebDAV access.

    Greetings from Germany

    Gerry


  • Sean OQuin Monday, September 8, 2008

    Hi Brian,

    Do you know why OPenSolaris (or Solaris) cannot uses the share folders functionality of virtualbox?


  • Brian Leonard Tuesday, September 9, 2008

    Yes, because VirtualBox does not yet support shared folders for Solaris guests. This is from their 2.0 user manual:

    "Note however that Shared Folders are only supported with Windows (2000 or newer) guests and Linux guests."

    Maybe if Sun buys VirtualBox they'll get that addressed. Oh wait, that already happened :-).


  • guest Sunday, September 14, 2008

    Hi,

    I tried with the same setup you've suggested.

    But when i try to open the shared folder,I get this error

    "Sorry couldn't display all the contents of the folder <my shared folder name>"

    Could you please help me out here!

    Thanks


  • wow power leveling Thursday, March 12, 2009

    Thank you very much for this great article!

    I have also a question:

    Is it possible to get access to a WebDAV directory in the internet? Because I would like to sync my Firefox bookmarks with a server in the internet, hosted by my private internet provider, who only gives me WebDAV access.

    Greetings from Germany

    Gerry


  • Robert Thursday, December 23, 2010

    Please help me as i have to copy the folder from windows server 2008 machine to sun solaris 5.20


Please enter your name.Please provide a valid email address.Please enter a comment.CAPTCHA challenge response provided was incorrect. Please try again.