Mirror of PowerBroker Identity Services
How to build:
The likewise-open build uses makekit (http://bkoropoff.github.io/makekit/). While the code is portable among a variety of *nix based platforms (Linux, Solaris, AIX, HP-UX, and OS X), this build system is primarily intended for Linux & FreeBSD platforms.
Before you begin, please read over this list of prerequisite development packages (depending on your Linux distro):
-
RedHat/Fedora - gcc, glibc-devel, pam-devel, ncurses-devel, flex, bison, rpm-build, rpm-devel, popt-devel, libxml2-devel, autoconf, automake, libtool
Optional packages: o libglade2-devel - To build domainjoin-gui GTK application o libattr-devel - To enable extended attribute support for the Likewise CIFS server (experimental) o 32bit development tools and libraries for compatibility packages when building on x86_64 - glibc-devel.i686, libgcc.i686, pam-devel.i686
-
Ubuntu - build-essential, fakeroot, devscripts, debhelper, autoconf, automake, libtool, libncurses5-dev, flex, bison, libpam0g-dev, libxml2-dev, libpopt-dev
Optional packages: o libglade2-dev - To build domainjoin-gui GTK application o libattr1-dev - To enable extended attribute support for the Likewise CIFS server (experimental) o 32bit development tools and libraries for compatibility packages when building on x86_64 - ia32-libs, libc6-dev-i386, gcc-multilib
Note: The default version of awk on some Ubuntu systems has a known bug which causes it to segfault when attempting to build. You can work around this by installing GNU awk:
sudo apt-get install gawk
See https://launchpad.net/ubuntu/+source/mawk/+bug/23494 for details
For other Linux distributions:
Install the equivalent dependencies. Read through the manual of your distribution on package management for more info. As a general rule of thumb:
- RHEL-based distributions follow a similar syntax to distributions such as Fedora and CentOS. On CentOS, its' considered a smart thing to add the EPEL repo.
- For Debian-based distributions, these instructions that apply to Ubuntu will apply also, to a majority of the extent. If in doubt, use the included build tools by passing the flag --lw-tool-dir =/path-to-build-utils to ../configure under the debug directory. If you have Ant installed, you can enable application integration by passing the flag --application-integration=yes to ../configure
Note to Arch Linux users:
- Enable the [MultiLib] repository.
- Update system:
sudo pacman -Syyu
- Install gcc-multilib and all its' dependencies:
sudo pacman -S --needed gcc-multilib gcc-objc-multilib binutils-multilib gcc-ada-multilib gcc-fortran-multilib gcc-libs-multilib gcc-libtool-multilib
The easiest way to begin a build is to run:
$ mkdir debug && cd debug $ ../configure --debug $ make -jXX package ## where XX is 2x CPU cores
This will build the necessary binaries and libraries and package them up into DEBs or RPMs in the likewise-open/debug/package/ directory.
If you do not want to install using packages, you can do the following instead, but be sure to read the note below:
$ make -jXX $ sudo make install
You may view the complete set of configure options by running
$ ../configure --help
To generate a release tarball, run "build/mkdist" with likewise-open as your working directory.
Note: When not installing using the local package managers (DEB or RPM), you will need to start lwsmd and import registry files manually:
$ sudo /etc/init.d/lwsmd start
$ sudo bash -c 'for file in /opt/likewise/share/config/*.reg; do
/opt/likewise/bin/lwregshell import $file;
done'
$ sudo /etc/init.d/lwmsd reload
The Likewise Registry Service (lwregd) is the configuration data store used by all Likewise services. You can view and modify the registry settings by running /opt/likewise/bin/lwregshell as the root user. For example:
$ sudo /opt/likewise/bin/lwregshell
cd hkey_this_machine\services
hkey_this_machine\services> dir [hkey_this_machine\services] [HKEY_THIS_MACHINE\Services\lsass] ...
hkey_this_machine\services> cd lsass
hkey_this_machine\services\lsass> dir Arguments REG_SZ "lsassd --syslog" Dependencies REG_SZ "netlogon lwio lwreg rdr" Description REG_SZ "Likewise Security and Authentication Subsystem" Path REG_SZ "/opt/likewise/sbin/lsassd" Type REG_DWORD 0x00000001 (1)
[HKEY_THIS_MACHINE\Services\lsass\Parameters]
The Likewise Service Manager (lwsmd) provides a service control architecture for starting and stopping all Likewise daemons and drivers based on a dependency graph.
The lwsmd daemon itself is managed using the standard SysV init script:
$ /etc/init.d/lwsmd start
- Starting Likewise Service Manager: lwsmd [ OK ]
Only the registry service (lwregd) is hard coded to be started initially. The user space CLI for managing services is the "lwsm" utility.
$ lwsm list lwreg running (standalone: 19415) dcerpc running (standalone: 19453) eventlog stopped lsass running (standalone: 19475) lwio running (standalone: 19438) rdr running (io: 19438) srv running (io: 19438) pvfs running (io: 19438) npfs running (io: 19438) netlogon running (standalone: 19468) srvsvc running (standalone: 19529)
$ lwsm info lsass Service: lsass Description: Likewise Security and Authentication Subsystem Type: executable Autostart: no Path: /opt/likewise/sbin/lsassd Arguments: 'lsassd' '--syslog' Dependencies: netlogon lwio lwreg rdr
$ lwsm stop lsass Stopping service reverse dependency: srvsvc Stopping service reverse dependency: srv Stopping service: lsass
$ lwsm start srvsvc Starting service dependency: lsass Starting service dependency: srv Starting service: srvsvc
We are actively implementing a full SMBv1 and SMBv2 protocol stack in the Likewise I/O Manager. Some overview information and details about the server architecture are available at http://www.likewiseopen.org/. The server offers support for the following client architectures:
- WinXP
- Vista
- Win2003/2008 (including R2)
- Windows 7
- OS 10.5 and later
- Linux CIFS fs and Gnome Desktop smb:// URL
No support is planned for Windows 9x or OS X releases prior to 10.5
If you are interested in tracking Likewise development or just experimenting with upcoming release feature, please note that the server drivers (srv.sys.so, pvfs.sys.so, and npvfs.sys.so) are not loaded by default. The easier way to start the CIFS server to for force the Likewise Service Manager (lwsmd) to launch all the dependent services for the srvsvcd daemon (lwsm start-all srvsvc)/
Finally, the SRV driver exports the /lwcifs directory as the C$ share. This directory is created for you automatically and cannot currently be disabled.
This following is a short list of known issues in the Likewise CIFS server:
- No file system integration with byte-range locks or change notification (planned)
- No printing support (yet)
-Dennis