Libnss winbind Links: Difference between revisions

From SambaWiki
m (Fix formatting)
m (/* added note)
 
(11 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.
}}


{{Imbox
| type = note
| text = You only need to do this if you compiled Samba yourself, otherwise your distro will provide packages to do this for you. See your distro documentation for which packages to install.
}}






= 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 27:




= 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/


Link the library from this directory in your operating system's library directory.
Alternatively use "find" to locate the file


# 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 52:




== 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 60:




== 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 70:




== 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 77:





=== 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 96:




== i686 ==
=== i686 ===


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

Latest revision as of 18:01, 14 August 2020

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