Difference between revisions of "Samba for AIX"
From SambaWiki
m (Bjacke moved page AIX building samba to Samba for AIX: this page should contain generic information and links for AIX samba) |
(remove this build instructions, it's outdated and also depend on a very certain environment) |
||
Line 1: | Line 1: | ||
− | == How to install samba-4.1.16 on aix-6.1 == |
||
− | |||
− | Joost van Baal-Ilić, credativ BV, february 2015 |
||
− | |||
− | Based upon instructions by Noël Köthe, credativ GmbH, sept 2014. |
||
− | |||
− | We describe how to build, configure, pack/unpack and install Samba --the Open Source SMB/CIFS file, print, and login server for Unix-- version 4.1.16 on a PowerPC running IBM's AIX 6.1. |
||
− | |||
− | === Building and installing === |
||
− | |||
− | * Install the IBM compiler xlc version 13.1.0. (Compiling with gcc won't work, see https://bugzilla.samba.org/show_bug.cgi?id=10828 .) |
||
− | * Install python + dependencies; since Samba uses python for its build system. Likely these RPMs suffice: |
||
− | |||
− | <pre> |
||
− | bash-4.2-12.aix5.1.ppc.rpm |
||
− | bzip2-1.0.6-1.aix5.1.ppc.rpm |
||
− | db4-4.7.25-2.aix5.1.ppc.rpm |
||
− | expat-2.1.0-1.aix5.1.ppc.rpm |
||
− | fontconfig-2.10.2-1.aix5.1.ppc.rpm |
||
− | freetype2-2.5.2-1.aix5.1.ppc.rpm |
||
− | gdbm-1.11-1.aix5.1.ppc.rpm |
||
− | gettext-0.17-1.aix5.1.ppc.rpm |
||
− | glib2-2.38.2-1.aix5.1.ppc.rpm |
||
− | gmp-5.1.3-1.aix5.1.ppc.rpm |
||
− | info-5.2-1.aix5.1.ppc.rpm |
||
− | libXft-2.3.1-1.aix5.1.ppc.rpm |
||
− | libXrender-0.9.8-1.aix6.1.ppc.rpm |
||
− | libgcc-4.8.2-1.aix7.1.ppc.rpm |
||
− | libiconv-1.14-2.aix5.1.ppc.rpm |
||
− | libpng-1.6.9-1.aix5.1.ppc.rpm |
||
− | libstdc++-4.8.2-1.aix7.1.ppc.rpm |
||
− | libstdc++-devel-4.8.2-1.aix7.1.ppc.rpm |
||
− | pkg-config-0.28-1.aix5.1.ppc.rpm |
||
− | python-2.7.5-1.aix6.1.ppc.rpm |
||
− | python-devel-2.7.5-1.aix6.1.ppc.rpm |
||
− | python-libs-2.7.5-1.aix6.1.ppc.rpm |
||
− | readline-6.2-5.aix5.1.ppc.rpm |
||
− | renderproto-0.11.1-1.aix5.1.ppc.rpm |
||
− | sqlite-3.8.1-1.aix5.1.ppc.rpm |
||
− | tcl-8.5.15-1.aix5.1.ppc.rpm |
||
− | tk-8.5.15-1.aix5.1.ppc.rpm |
||
− | zlib-1.2.8-1.aix5.1.ppc.rpm |
||
− | </pre> |
||
− | |||
− | Install them by running: |
||
− | |||
− | # rpm -ivh * --nodeps |
||
− | |||
− | * In a directory with enough space (ideally _not_ under the install root /appl/samba), unpack the samba sources |
||
− | |||
− | # gunzip samba-4.1.17.tar.gz && tar -xf samba-4.1.17.tar && cd samba-4.1.17 |
||
− | |||
− | * Build and install |
||
− | |||
− | # export PATH=$PATH:/opt/IBM/xlC/13.1.0/bin/ |
||
− | |||
− | # ./configure --prefix=/appl/samba --check-c-compiler=xlc |
||
− | [...] |
||
− | 'configure' finished successfully |
||
− | |||
− | # make |
||
− | [...] |
||
− | Compiling ... |
||
− | Linking ... |
||
− | 'build' finished successfully |
||
− | |||
− | # make install |
||
− | [...] |
||
− | 'install finished successfully' |
||
− | |||
− | * Fix missing symlinks to .so-files [1]: |
||
− | |||
− | # cd /appl/samba/lib/private/ |
||
− | # ls | grep "so\.[0-9]$" | while read f; do ln -s $f ${f%.?}; done |
||
− | # ls | grep "so\.[0-9][0-9]$" | while read f; do ln -s $f ${f%.??}; done |
||
− | |||
− | See also http://bugzilla.samba.org/show_bug.cgi?id=10840 NB: this is NOT the same as Noël's script! |
||
− | |||
− | * Add a configuration file: |
||
− | |||
− | # vi /appl/samba/etc/smb.conf |
||
− | |||
− | This one works for tests: |
||
− | |||
− | <pre> |
||
− | [global] |
||
− | workgroup = SIM |
||
− | netbios name = SERVERNAME |
||
− | server string = Fileserver |
||
− | security = user |
||
− | ;interfaces = en 192.168.1.2/24 |
||
− | ;bind interfaces ony = yes |
||
− | |||
− | log level = 2 |
||
− | log file = /appl/samba/logs/log.%m |
||
− | syslog = 0 |
||
− | |||
− | [SHARE] |
||
− | comment = production share |
||
− | path = /LOCAL/EXISTING/PATH/OF/A/SHARE |
||
− | read only = no |
||
− | ;create mask = 0775 |
||
− | directory mask = 775 |
||
− | ;valid user = |
||
− | ;force user = |
||
− | ;force group = |
||
− | </pre> |
||
− | |||
− | See also samba-4.1.16/examples/smb.conf.default . |
||
− | |||
− | === Testing === |
||
− | |||
− | In order to run the samba binaries, set this: |
||
− | |||
− | # export LIBPATH=/appl/samba/lib:/appl/samba/lib/private |
||
− | |||
− | Start the Samba daemon: |
||
− | |||
− | # /appl/samba/sbin/smbd -D |
||
− | |||
− | Test samba: |
||
− | |||
− | # /appl/samba/bin/smbclient -L localhost |
||
− | |||
− | Add a samba user, and give this user a samba password, for more testing: |
||
− | |||
− | # /appl/samba/bin/smbpasswd -a <localunixusername> |
||
− | [...] |
||
− | "Added user [...] |
||
− | |||
− | Test a user login: |
||
− | |||
− | # /appl/samba/bin/smbclient -U <username> //localhost/INTERFACES |
||
− | smb: \> ls |
||
− | [...] |
||
− | smb: \> cd .snapshot |
||
− | smb: \.snapshot\> ls |
||
− | [...] |
||
− | |||
− | Show the connected clients |
||
− | |||
− | # smbstatus |
||
− | |||
− | == Installing on another AIX 6 system == |
||
− | |||
− | Create a tar archive of /appl/samba to copy /appl/samba to the other machine. |
||
− | (NB: tar as shipped with AIX does not support the z-flag. Manually g(un)zip the .tar if needed.) |
||
− | After unpacking this file there, and creating /appl/samba/etc/smb.conf, one can start smbd: |
||
− | |||
− | # export LIBPATH=/appl/samba/lib:/appl/samba/lib/private |
||
− | # /appl/samba/sbin/smbd -D |
||
− | |||
− | No need to run ./configure or make, no need to install xlc. You _do_ need Python to run Samba. |
||
− | |||
− | |||
− | [1] When these symlinks are not created, trying to run smbclient will give |
||
− | an error 'Cannot load module libtevent.so.' |