Difference between revisions of "Libnss winbind Links"

m (Fix formatting)
m (/* added <include>...</noinclude>')
 
(10 intermediate revisions by 3 users not shown)
Line 1: Line 1:
= Introduction =
+
<noinclude>= Introduction =</noinclude>
  
For hosts that should retrieve domain user and group information via Winbindd, two symbolic links need to exist in one of the operating systems library paths. It's not recommended to copy the file to the library path, because after a Samba update it will always have to be replaced.
+
If you compile Samba yourself, to enable hosts to receive user and group information from a domain using Winbind, you must create two symbolic links in a directory of the operating system's library path. If you are are using Samba packages from your distro, there are usually distro packages to do this for you e.g. libpam-winbind and libnss-winbind on Debian.
  
 +
{{Imbox
 +
| type = note
 +
| text = Do not copy the library to the directory. Otherwise you must replace it manually after every Samba update.
 +
}}
  
  
  
  
= x86_64 vs. i686 =
 
  
The folder in which the the links need to be created differ on the platform you are running. To determine, run
+
= Determining the Platform =
 +
 
 +
To determine the operating system's platform:
  
 
  # uname -m
 
  # uname -m
Line 17: Line 22:
  
  
= Locate libnss_winbind.so.2 =
+
= Locating the <code>libnss_winbind.so.2</code> Library =
  
The libnss_winbind.so.2 is placed in the library directory, set by ./configure. The default is "/usr/local/samba/lib/". To find out the folder in your installation, run
+
The <code>libnss_winbind.so.2</code> library is installed in the Samba library directory set at compile time. To locate the folder:
  
 
  # smbd -b | grep LIBDIR
 
  # smbd -b | grep LIBDIR
 
     LIBDIR: /usr/local/samba/lib/
 
     LIBDIR: /usr/local/samba/lib/
  
Alternatively use "find" to locate the file
+
Link the library from this directory in your operating system's library directory.
  
# find / -type f -name libnss_winbind.so.2
 
/usr/local/samba/lib/libnss_winbind.so.2
 
  
  
  
  
 +
= Operating System-specific Examples =
  
= Red Hat based Operating Systems =
+
== Red Hat-based Operating Systems ==
  
== x86_64 ==
+
=== x86_64 ===
  
 
  # ln -s /usr/local/samba/lib/libnss_winbind.so.2 /lib64/
 
  # ln -s /usr/local/samba/lib/libnss_winbind.so.2 /lib64/
Line 43: Line 47:
  
  
== i686 ==
+
=== i686 ===
  
 
  # ln -s /usr/local/samba/lib/libnss_winbind.so.2 /lib/
 
  # ln -s /usr/local/samba/lib/libnss_winbind.so.2 /lib/
Line 51: Line 55:
  
  
 +
== Debian-based Operating Systems ==
  
 
+
=== x86_64 ===
= Debian based Operating Systems =
 
 
 
== x86_64 ==
 
  
 
  # ln -s /usr/local/samba/lib/libnss_winbind.so.2 /lib/x86_64-linux-gnu/
 
  # ln -s /usr/local/samba/lib/libnss_winbind.so.2 /lib/x86_64-linux-gnu/
Line 63: Line 65:
  
  
== i686 ==
+
=== i686 ===
  
 
  # ln -s /usr/local/samba/lib/libnss_winbind.so.2 /lib/i386-linux-gnu/
 
  # ln -s /usr/local/samba/lib/libnss_winbind.so.2 /lib/i386-linux-gnu/
Line 70: Line 72:
  
  
 +
 +
=== ARM ===
 +
 +
# ln -s /usr/local/samba/lib/libnss_winbind.so.2 /lib/arm-linux-gnueabihf/
 +
# ln -s /lib/arm-linux-gnueabihf/libnss_winbind.so.2 /lib/arm-linux-gnueabihf/libnss_winbind.so
 +
# ldconfig
  
  
  
= SUSE based Operating Systems =
+
== SUSE-based Operating Systems ==
  
== x86_64 ==
+
=== x86_64 ===
  
 
  # ln -s /usr/local/samba/lib/libnss_winbind.so.2 /lib64/
 
  # ln -s /usr/local/samba/lib/libnss_winbind.so.2 /lib64/
Line 83: Line 91:
  
  
== i686 ==
+
=== i686 ===
  
 
  # ln -s /usr/local/samba/lib/libnss_winbind.so.2 /lib/
 
  # ln -s /usr/local/samba/lib/libnss_winbind.so.2 /lib/
 
  # ln -s /lib/libnss_winbind.so.2 /lib/libnss_winbind.so
 
  # ln -s /lib/libnss_winbind.so.2 /lib/libnss_winbind.so
 
  # ldconfig
 
  # ldconfig

Latest revision as of 14:44, 7 March 2019

Introduction

If you compile Samba yourself, to enable hosts to receive user and group information from a domain using Winbind, you must create two symbolic links in a directory of the operating system's library path. If you are are using Samba packages from your distro, there are usually distro packages to do this for you e.g. libpam-winbind and libnss-winbind on Debian.



Determining the Platform

To determine the operating system's platform:

# uname -m



Locating the libnss_winbind.so.2 Library

The libnss_winbind.so.2 library is installed in the Samba library directory set at compile time. To locate the folder:

# smbd -b | grep LIBDIR
   LIBDIR: /usr/local/samba/lib/

Link the library from this directory in your operating system's library directory.



Operating System-specific Examples

Red Hat-based Operating Systems

x86_64

# ln -s /usr/local/samba/lib/libnss_winbind.so.2 /lib64/
# ln -s /lib64/libnss_winbind.so.2 /lib64/libnss_winbind.so
# ldconfig


i686

# ln -s /usr/local/samba/lib/libnss_winbind.so.2 /lib/
# ln -s /lib/libnss_winbind.so.2 /lib/libnss_winbind.so
# ldconfig


Debian-based Operating Systems

x86_64

# ln -s /usr/local/samba/lib/libnss_winbind.so.2 /lib/x86_64-linux-gnu/
# ln -s /lib/x86_64-linux-gnu/libnss_winbind.so.2 /lib/x86_64-linux-gnu/libnss_winbind.so
# ldconfig


i686

# ln -s /usr/local/samba/lib/libnss_winbind.so.2 /lib/i386-linux-gnu/
# ln -s /lib/i386-linux-gnu/libnss_winbind.so.2 /lib/i386-linux-gnu/libnss_winbind.so
# ldconfig


ARM

# ln -s /usr/local/samba/lib/libnss_winbind.so.2 /lib/arm-linux-gnueabihf/
# ln -s /lib/arm-linux-gnueabihf/libnss_winbind.so.2 /lib/arm-linux-gnueabihf/libnss_winbind.so
# ldconfig


SUSE-based Operating Systems

x86_64

# ln -s /usr/local/samba/lib/libnss_winbind.so.2 /lib64/
# ln -s /lib64/libnss_winbind.so.2 /lib64/libnss_winbind.so
# ldconfig


i686

# ln -s /usr/local/samba/lib/libnss_winbind.so.2 /lib/
# ln -s /lib/libnss_winbind.so.2 /lib/libnss_winbind.so
# ldconfig