List samba shares and current users
Andrew Henderson
Looking for a simple way to do this from the command line.
List samba shares and the users who can access each of them.
List samba shares and the users currently connected to them.
List samba shares and every connection (log, including user) that has been established to each of them.
Any ideas? Anything you use that's currently available that will give me the bits I need to put this together?
Cheers!
18 Answers
Try smbclient -L ip_of_net_interface -U your_user_name. This option allows you to look at what services are available on a server. You use it as smbclient -L host and a list should appear.
Try to use smbstatus, it seems to be what you need.
smbstatus --sharesWill retrieve what's being shared and which machine (if any) is connected to what.
1Also, on most systems, typing testparm will give you info about the samba shares of the machine you're currently using. After you press enter at the prompt it'll also show you every uncommented line of smb.conf which can be useful.
Try net usershare info --long.
/usr/bin/net -> /etc/alternatives/net
/etc/alternatives/net -> /usr/bin/net.samba3$ man net
net - Tool for administration of Samba and remote CIFS servers. 1 Use the command pdbedit.
sudo pdbedit -L -vWhere -L is to list users & -v is to be verbose.
Getting the users
net rpc userGetting the shares per user
Less verbose than smbclient -L is net rpc share list -U $USERNAME
You'll need both because the list of visible shares differs per user.
While smbstatus --shares list active connections in your computer, you may want to know which folders are selected as samba shared, even when no current connection is active.
Go into this directory and you will get the name of such folders:
cd /var/lib/samba/usershares