LinNeighborhood
FAQ:
How to install LinNeighborhood ?
I cannot browse at all, what should I do ?
I can see the computer but can't browse any shares
could not find mount point -I: no such file or directory
no status response (This isn't unusual)
Can't mount if spaces, quotes.. are in mount point/share name
Cannot find Samba 2.0 mount utilities after compile
'Standard in must be a tty' while mounting
Smbmnt must be installed setuid root
LinNeighborhood cannot display more than 2000 entries
LinNeighborhood 0.6.0 doesn't recognize 0.4's preferences
LinNeighborhood 0.6.2 and dummy share browse
Cannot browse Win2K machines
Using sudo with LinNeighborhood
Using additional arguments with Samba tools
libsmb based programs must *NOT* be setuid root
Can't resolve address (unknown IP address NULL)


How to install LinNeighborhood ?
Sources:

Unpack the package with tar xzvf LinNeighborhood-x.x.x.tar.gz
Change to LinNeighborhood-x.x.x directory and type ./configure
(do a ./configure --help to see all the options you have here). You must have installed the developer version of gtk+ 1.2 libraries and automake/autoconf to successfully build the package. After compiling you have the binary LinNeighborhood in the src directory. Best will be to copy this binary somethere in the /usr/bin directory or somethere else in your PATH. Remember you need superuser rights to do so.

Binary:

Unpack the packes with tar xzvf LinNeighborhood-x.x.x.xxx-i386.tar.gz
Change to LinNeighborhood-x.x.x.xxx-i386. Copy the precompiled binary LinNeighborhood to /usr/bin or somethere else in your PATH. You need superuser rights for this.

LinNeighborhood will create a .linneighborhoodrc file in the users home directory for storing preferences and temporary information.

I cannot browse at all, what should I do ?
LinNeighborhood hooks on samba, so it's absolutely necessary to install and configure samba in a proper way.

Take care that you have edited smb.conf to your network's needs, you can use testparm from samba package to check its syntax. Further you have to run the deamons smbd and nmbd, either directly or from inetd. Look at the samba homepage for detailed information.
After configuring samba you have to setup LinNeighborhood's preferences. There are only two 'must configure' entries:

  • Workgroup
  • Program Execution
In the workgroup field you have to enter the same group you've configured in smb.conf's workgroup statement. Into the program execution entries you must enter the tool name if the location is in the PATH, otherwise the full path + command.
Sometimes you should edit the other entry fields, too, depending on your network environment. See the README for further information.
For browsing you need the nmblookup and smbclient utility from samba. Take a look at LinNeighborhood's log window in order to see the detailed usage and answer of this utilities. If they doesn't work at all, samba probably isn't configured in a right way.

For mounting shares you need smbmount (+smbmnt for kernel 2.2) and smbumount, either from the smbfs package (kernels 2.0) or from samba (kernels 2.2).

I can see the computer but can't browse any shares
If it is not one of the common reaons here (computer has been turned off meanwhile or its server software is incorrectly set up, check the log window) watch this:

If the server is in user level security and has a guest account it can only be browsed without user/password or with user and password correctly entered, not user with blank password. If there is no guest account (mostly Windows NT) you must always scan as user with correct password. Typical error message is:

session setup failed: ERRSRV - ERRbadpw (Bad password - name/password pair in a Tree Connect or Session Setup are invalid.)

could not find mount point -I: no such file or directory
This error occurs if you use smbmount of the smbfs packages on machines running kernel 2.2 instead of samba 2.0 smbmount. You cannot mount shares on kernels 2.2 by using 'old style' smbfs's smbmount, use smbmount of samba 2.0 instead.
Be careful, if you have installed both samba's and smbfs's smbmount, make sure that samba's one is placed earlier in the PATH as that from smbfs. or better delete (or rename) the old one.

no status response (This isn't unusual)
This normally occurs because of the 'port 137 bug' of Win3.11, NT 3.51 and Win95 (winsock 1.1). You've less possibilies to avoid it, the only chance for improvement is to update all win95 machines from winsock 1.1 to winsock 2 if it happens on a name lookup.
If it happens on a groups browse (on startup) enter an existing group in your preferences, where the master browser is not one of these buggy computers (operating systems). If this also fails, you must run smbd and nmbd on your machine and use it as a master browser in the preferences, enter your real computer name and configured workgroup here, localhost as master browser does not always work.

Can't mount if spaces, quotes.. are in mount point/share name
This is a limitation of the smbmount programs, Linneighborhood tries to quote these names correctly, but smbmount prevents use of it in different ways:

smbmount from the smbfs package mostly fulfills your mount request but creates a crippled mtab entry, so you will get unmount problems because the mount is not listed. smbmount from samba 2.0.x will mostly reject mount requests in these cases.

Cannot find Samba 2.0 mount utilities after compile
If you run the configure script of Samba 2.0, the mount utilities aren't compiled by default. If you want to compile them, use the --with-smbmount paramter when invoking the configure script. You also can compile them separately by invoking make bin/smbmnt. Use the same syntax for smbmount and smbumount, too.

'Standard in must be a tty' while mounting
It seems that this error can occur if smbmnt and smbumount doesn't be installed setuid root. If this is the case, there should normally be returned an error like 'smbmt must be installed setuid root' , but we have postings from several users who got the earlier error.
To solute this, try to set the setuid bit (refer to the next FAQ). Nevertheless, we cannot guarantee.

Smbmnt must be installed setuid root
This error occurs if you want to mount any smb share as user without root rights. You must set the setuid root bit on your executables 'smbmnt' and 'smbumount'.
Do the following:
  • login as root and change to the directory where this tools resides (/usr/bin ?)
  • do a 'ls -l smbmnt', you'll see something like -rwxr-xr-x
  • invoke 'chmod +s smbmnt', after that you'll see something like -rwsr-xr-x
  • do the same with smbumount
The tools will now be executed with the rights of the tool's owner, in this case root and you should be able to use this tools as normal user.

Note: Don't set smbmount to setuid root, smbmnt is quite enough.

LinNeighborhood cannot display more than 2000 entries
This seems to be a problem of the gtk+ libraries and not LinNeighborhood. Internally, the tree widget of gtk (1.2.7) has width and height properties stored as int16 (range of 0..32767 pixels). That means a widget cannot have a size bigger than this. One tree line in LinNeighborhood has a height of 18 pixels, therefore the maximum count of lines is about 1800. This includes the sum of all lines like preferred hosts, groups, machines and shares. The example program distributed with gtk has the same behaviour. Sorry.

LinNeighborhood 0.6.0 doesn't recognize 0.4's preferences
In version 0.6.0 the place where LinNeighborhood does store its preferences has changed. Prior to 0.6.0 all storage was done in a file named '.linneighborhoodrc' in the user's home directory. Now it does create a subdirectory '.linneighborhood' where it stores several separate files, all of them dedicated to special functions. We decided not to ruin the source code with backwards compatibility because it's far away from a version 1.0 and we hope that most users don't have much difficulties to reconfigure 0.6.0 again.

LinNeighborhood 0.6.2 and dummy share browse
When releasing version 0.6.2 we forgot to comment out some experimental code for browsing deeper into shares. When you click on 'browse shares', there's showing a dummy window containing some fictive files. There isn't any feature of LinNeighborhood cutted by this, so we believe it isn't necessary to release a new version because of this.

Cannot browse Win2K machines
Win2K is fully supported only on Samba 2.0.7 or above (especially the smbclient tool you need for browsing). If you've installed 2.0.6 or lower, you can have browse problems on such machines. Please upgrade to a newer samba release. To figure out your version of smbclient, type 'smbclient --version' on your prompt. smbclient will print its version and many other things.

Using sudo with LinNeighborhood
Some users want to use sudo for smbmount instead of setting smbmount setuid root. There's no direct support for sudo inside LinNeighborhood, but you can use the following shell script to manage it:

#!/bin/sh
exec sudo smbmount $1 $2 $3 $4 ...
exit 0

Note: It's also possible to put the following

exec sudo smbmount "$@"

instead. It will expand to any number of parameters (note the quotation).

Then, all you have to do is to point your mount execution path in the LinNeighborhood preferences to this script instead of the 'smbmount' tool.

Using additional arguments with Samba tools
Sometimes you want to use additional parameters with the smbclient or smbmount tools that aren't wrapped by LinNeighborhood. A workaround for this is similar to the above 'sudo' method: Use a wrapper shell script.

#!/bin/sh
exec tool "$@" -your-argument
exit 0

Then point your tool execution path in the LinNeighborhood preferences to the wrapper script instead of the tool ifself.

libsmb based programs must *NOT* be setuid root
We've heard about this error from RedHat 8.0 users and got some feedback how to avoid it (we don't run RH8, so it is untested from our side). One fix was posted from Pierre van Deijck. He set the following permissions to 'smbmnt' to avoid the problem:

chmod 04711 smbmnt

Another possible error could be that smbmount instead of or additional to smbmnt is set setuid root (posted by Bill Thompson). Please remove the setuid root bit from smbmount tool.

Please test it out.

Can't resolve address (unknown IP address NULL)
There is a bug in LinNeighborhood 0.6.5 where it sends the 'ip=' parameter to the smbmount tool on mounting even if there is no IP address known. Samba 3 tools don't accept this empty parameter and this error occurs on mounting.

Patrich Monnerat has sent a patch to version 0.6.5 to avoid this problem.
Thanks to Patrick.

How to install the patch:

  • Untar the LinNeighborhood 0.6.5 source package
  • Copy this patch into the newly created LinNeighborhood-0.6.5 directory
  • cd to this directory
  • Invoke patch -p1 < LinNeighborhood-0.6.5-samba3.patch inside this directory, it will change the smbmount.c file
  • GNU like ./configure; make; make install