Tuesday, October 20, 2009

Ubuntu NIS server for OS X 10.4

I'm having problems with ldap and 10.4 so I'm using NIS


UBUNTU (8.04) server

#NFS
echo "portmap mountd nfsd statd lockd rquotad : 192.168.1.0/255.255.255.0" | tee -a /etc/hosts.allow

#LDAP
echo "ldap : 192.168.1.0/255.255.255.0" | tee -a /etc/hosts.allow

#www
echo "www : ALL" | tee -a /etc/hosts.allow

NIS Deny
echo "nis : ALL" | tee -a /etc/hosts.deny

NIS
sudo apt-get install portmap nis
sed -i -e "s/^NISSERVER=false/NISSERVER=true/" /etc/default/nis
#sed -i -e "s/^NISCLIENT=true/NISCLIENT=false/" /etc/default/nis

echo "ypserv ypbind : 192.168.1.0/255.255.255.0" | tee -a /etc/hosts.allow

# /etc/default/portmap

echo "ypserver 192.168.1.8" | tee -a /etc/yp.conf
sed -i -e "s/=1000/=1002/" /var/yp/Makefile # change MINUID & MINGID
sed -i -e "s/^0.0.0.0/255.255.255.0/" /etc/ypserv.securenets
sed -i -e "s/0.0.0.0$/192.168.1.0/" /etc/ypserv.securenets


# for OSX support sudo shadow2passwd.sh
sudo /usr/lib/yp/ypinit -m # XXXXXX.XXXXXXX.net

sudo /etc/init.d/portmap restart
sudo /etc/init.d/nis restart

ypcat passwd

OSX 10.4 NFS client

#NFS
sudo -s



ln -s /Users /home
mkdir /home/staff
mkdir /home/students
echo "192.168.1.8:/home/staff /Users/staff nfs -i,-P,-b,-s 0 0
192.168.1.8:/home/students /Users/students nfs -i,-P,-b,-s 0 0" > /etc/fstab
niload -m -v fstab . < /etc/fstab
mount -a



If there is file locking issues you need to add locallock, '-L' to the Applications>Utilities>netinfo

OS X 10.4 nis client

OS X 10.4 nis client
http://zhadum.org.uk/2007/02/16/mac-os-x-and-nis-just-not-good-friends/

Nis on 10.4 is broken and need a script to stop the lgin from locking up.

sudo -s
echo "nohup /usr/local/bin/fix-nis 25 >/tmp/fix-nis.log 2>&1 &" >> /etc/rc.local
chmod +x /etc/rc.local

mkdir /usr/local
mkdir /usr/local/bin/
nano /usr/local/bin/fix-nis

#!/bin/sh
if [ $# -gt 0 ]
then
sleep "$1"
fi

NFSDIR=/home/staff/doug
if [ -d $NFSDIR ]
then
echo "Directory \"$NFSDIR\" exists."
exit 1
fi

killall lookupd
sleep 1
killall -HUP automount
sleep 2

if [ ! -d $NFSDIR ]
then
echo "Directory \"$NFSDIR\" still doesn't exists, retrying."

sleep 10
killall lookupd
sleep 1
killall -HUP automount
sleep 2
if [ ! -d $NFSDIR ]

then
echo "Directory \"$NFSDIR\" still doesn't exists, giving up"
exit 1
fi
fi

echo "Fixed NIS."
exit 0

chmod +x /usr/local/bin/fix-nis


Friday, October 16, 2009

karmic client install

karmic client install script, check getent passwd


First Setup a new local user and wifi (enable for all)
Setup Printer.

Then this




MYSERVER="10.0.0.5"
MYLDAP="dc=cambridge,dc=redballoon,dc=homeip,dc=net"
MYLDAPADMIN="admin"


echo "Acquire::http::Proxy \"http://$MYSERVER:3142\";" | sudo tee /etc/apt/apt.conf &&
sudo apt-get update &&
sudo apt-get -y -q install openssh-server &&
sudo apt-get -y -q install libnss-ldap libpam-ldap nscd
#sudo scp $MYSERVER:/etc/ldap.secret /etc/
## enter only password leave everything else

sudo sed -i -e "s/dc=example,dc=net/$MYLDAP/" /etc/ldap.conf
sudo sed -i -e "s/manager/$MYLDAPADMIN/" /etc/ldap.conf
sudo sed -i -e "s#^uri ldapi://#uri ldap://$MYSERVER#" /etc/ldap.conf
sudo cp /etc/nsswitch.conf /etc/nsswitch.conf.backup &&
sudo sed -i -e "s/compat/files ldap\t#compat/g" /etc/nsswitch.conf
sudo /etc/init.d/nscd restart &&
getent passwd



sudo mkdir /home/staff &&
sudo mkdir /home/students &&
sudo apt-get -y -q -y install nfs-common &&
sudo apt-get -y install autofs &&
echo "/home/staff /etc/auto.nfs.stf --timeout=60
/home/students /etc/auto.nfs.std --timeout=60" | sudo tee -a /etc/auto.master &&
echo "* -fstype=nfs,rw,hard,intr,rsize=8192,wsize=8192,nfsvers=3 $MYSERVER:/home/staff/&" | sudo tee /etc/auto.nfs.stf &&
echo "* -fstype=nfs,rw,hard,intr,rsize=8192,wsize=8192,nfsvers=3 $MYSERVER:/home/students/&" | sudo tee /etc/auto.nfs.std &&
sudo service autofs restart &&
echo "Passwords and Network filesystem DONE"


#echo "$MYSERVER:/home/staff /home/staff nfs udp,defaults 0 0
#$MYSERVER:/home/students /home/students nfs udp,defaults 0 0" | sudo tee -a /etc/fstab &&
#sudo mount -a


sudo wget http://www.medibuntu.org/sources.list.d/$(lsb_release -cs).list \
--output-document=/etc/apt/sources.list.d/medibuntu.list &&
sudo apt-get -q update &&
sudo apt-get --yes -q --allow-unauthenticated install medibuntu-keyring &&
sudo apt-get -q update &&
sudo aptitude -y -q install ubuntu-restricted-extras &&
sudo aptitude -y -q install msttcorefonts googleearth googleearth &&
sudo aptitude -y -q install vlc ffmpeg mplayer mencoder gstreamer0.10-ffmpeg gstreamer0.10-pitfdll gstreamer0.10-plugins-bad-multiverse gstreamer0.10-plugins-ugly-multiverse gstreamer0.10-plugins-good gstreamer0.10-plugins-ugly-multiverse gstreamer0.10-plugins-bad-multiverse gstreamer0.10-plugins-bad gstreamer0.10-plugins-ugly gstreamer0.10-ffmpeg libxine1-ffmpeg libdvdread3 libdvdcss2 gnome-do acroread acroread-plugins mozilla-acroread youtube-dl libflashsupport w32codecs x11vnc openoffice.org-ogltrans openoffice.org-java-common &&
sudo apt-get -q -y dist-upgrade

# google chrome
wget http://dl.google.com/dl/linux/direct/google-chrome-beta_current_i386.deb &&
sudo gdebi google-chrome-beta_current_i386.deb