smedev:install_sme_el6

Ceci est une ancienne révision du document !


Install all e-smith/smeserver packages on EL6

These are just my notes to get a EL6 system booting with all the e-smith and smeserver packages installed. As soon as I get it to boot, I'll put this info into contribs.org wiki.

  • Start from a minimal el6 installation (I just installed a few utilities like htop, screen, rsync, vim, openssh-clients etc…)
  • Disable graphical boot, it will be easier to see what's going on (and turn off selinux at kernel level, just to be sure)
sed -i -e 's/rhgb quiet/selinux=0/g' /boot/grub/menu.lst
  • Disable SELinux:
sed -i -e 's/SELINUX=.*/SELINUX=disabled/g' /etc/sysconfig/selinux
  • Remove selinux-policy-targeted and authconfig, they conflict with some e-smith/smeserver packages
yum remove selinux-policy-targeted authconfig
  • Enable the EPEL repo
rpm -Uvh http://fr2.rpmfind.net/linux/epel/6/i386/epel-release-6-8.noarch.rpm
  • Enable the ATrpms repo
rpm -Uvh http://dl.atrpms.net/el6-x86_64/atrpms/stable/atrpms-repo-6-6.el6.x86_64.rpm
  • Enable RPMForge
rpm -Uvh http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.2-2.el6.rf.x86_64.rpm
  • Configure SME repository (EL5 version for now)
cat<<'EOF' >> /etc/yum.repos.d/sme.repo
[smeaddons]
enabled=1
mirrorlist=http://mirrorlist.contribs.org/mirrorlist/smeaddons-8
name=SME Server - addons
gpgcheck=1
enablegroups=1
 
[smecontribs]
enabled=0
mirrorlist=http://mirrorlist.contribs.org/mirrorlist/smecontribs-8
name=SME Server - contribs
gpgcheck=1
enablegroups=1
 
[smedev]
enabled=0
mirrorlist=http://mirrorlist.contribs.org/mirrorlist/smedev-8
name=SME Server - dev
gpgcheck=1
enablegroups=1
 
[smeextras]
enabled=1
mirrorlist=http://mirrorlist.contribs.org/mirrorlist/smeextras-8
name=SME Server - extras
gpgcheck=1
enablegroups=1
 
[smeos]
enabled=1
mirrorlist=http://mirrorlist.contribs.org/mirrorlist/smeos-8
name=SME Server - os
gpgcheck=1
enablegroups=1
 
[smetest]
enabled=0
mirrorlist=http://mirrorlist.contribs.org/mirrorlist/smetest-8
name=SME Server - test
gpgcheck=1
enablegroups=1
 
[smeupdates]
enabled=1
mirrorlist=http://mirrorlist.contribs.org/mirrorlist/smeupdates-8
name=SME Server - updates
gpgcheck=1
enablegroups=1
 
[smeupdates-testing]
enabled=0
mirrorlist=http://mirrorlist.contribs.org/mirrorlist/smeupdates-testing-8
name=SME Server - updates testing
gpgcheck=1
enablegroups=1
 
EOF
  • import SME's GPG key
rpm --import http://sme-mirror.firewall-services.com/releases/8/smeos/x86_64/RPM-GPG-KEY-SMEServer
  • install yum-plugin-priorities
yum install yum-plugin-priorities
  • Configure yum priorities
    • Set the base, updates and extras repo in /etc/yum.repos.d/CentOS-Base.repo a high priority (respectivly 50, 40, 50)
[...]
[base]
name=CentOS-$releasever - Base
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os
#baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
priority=50
 
#released updates 
[updates]
name=CentOS-$releasever - Updates
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=updates
#baseurl=http://mirror.centos.org/centos/$releasever/updates/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
priority=40
 
#additional packages that may be useful
[extras]
name=CentOS-$releasever - Extras
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=extras
#baseurl=http://mirror.centos.org/centos/$releasever/extras/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6
priority=50
 
[...]
  • Set Epel to a priority of 60 in /etc/yum.repos.d/epel.repo
[epel]
name=Extra Packages for Enterprise Linux 6 - $basearch
#baseurl=http://download.fedoraproject.org/pub/epel/6/$basearch
mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-6&arch=$basearch
failovermethod=priority
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-EPEL-6
priority=60
  • Set RPMForge to a priority of 65 in /etc/yum.repos.d/rpmforge.repo
[rpmforge]
name = RHEL $releasever - RPMforge.net - dag
baseurl = http://apt.sw.be/redhat/el6/en/$basearch/rpmforge
mirrorlist = http://apt.sw.be/redhat/el6/en/mirrors-rpmforge
#mirrorlist = file:///etc/yum.repos.d/mirrors-rpmforge
enabled = 1
protect = 0
gpgkey = file:///etc/pki/rpm-gpg/RPM-GPG-KEY-rpmforge-dag
gpgcheck = 1
priority=65
  • Set atrpms to priority of 70 in /etc/yum.repos.d/atrpms.repo
[atrpms]
name=Red Hat Enterprise Linux $releasever - $basearch - ATrpms
failovermethod=priority
baseurl=http://dl.atrpms.net/el$releasever-$basearch/atrpms/stable
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-atrpms
priority=70
  • Now, a few packages have to be installed manually without dependancy check:
rpm -Uvh --nodeps http://sme-mirror.firewall-services.com/releases/8/smeupdates/x86_64/RPMS/smeserver-yum-2.2.0-20.el5.sme.noarch.rpm
rpm -Uvh --nodeps http://sme-mirror.firewall-services.com/releases/8/smeupdates/x86_64/RPMS/e-smith-samba-2.2.0-49.el5.sme.noarch.rpm
rpm -Uvh --nodeps http://sme-mirror.firewall-services.com/releases/8/smeos/x86_64/SME/e-smith-test-2.2.0-1.el5.sme.noarch.rpm
  • Two perl package need to be installed manually with sme and epel repo disabled (I need to figure out why repo priority doesn't fix this)
yum install perl-Razor-Agent perl-Data-UUID --disablerepo=sme\* --disablerepo=epel
  • Now, you should be ready to install e-smith-base. For me, this pulls 222 packages (166MB). For some reason, the GPGKey is not recognized, so just run yum woith –nogpgcheck
yum --nogpgcheck install e-smith-base
  • Now install all the remaining e-smith/smeserver packages
yum --nogpgcheck install e-smith\* smeserver\*

It should install the following packages and their dependancies:

 e-smith                       
 e-smith-LPRng                 
 e-smith-apache                
 e-smith-backup                
 e-smith-devtools              
 e-smith-dynamicdns-dyndns     
 e-smith-dynamicdns-dyndns.org 
 e-smith-dynamicdns-tzo        
 e-smith-dynamicdns-yi         
 e-smith-flexbackup            
 e-smith-horde                 
 e-smith-hosts                 
 e-smith-imp                   
 e-smith-ingo                  
 e-smith-ldap                  
 e-smith-lib-compspec          
 e-smith-mysql                 
 e-smith-ntp                   
 e-smith-oidentd               
 e-smith-openssh               
 e-smith-php                   
 e-smith-pptpd                 
 e-smith-proftpd               
 e-smith-proxy                 
 e-smith-qmailanalog           
 e-smith-quota                 
 e-smith-radiusd               
 e-smith-turba                 
 e-smith-viewlogfiles          
 smeserver-release             
  • Now install samba-client (e-smith-samba has been installed manually without dep check, otherwise it would have pulled samba3x package instead of samba)
yum install samba-client
  • We've almost finished, we just have to replace upstart with the good old SysVinit, because upstart doesn't support the custom runlevel 7 SME uses
rpm -e --nodeps upstart sysvinit-tools
rpm -Uvh http://sme-mirror.firewall-services.com/releases/8/smeos/x86_64/SME/SysVinit-2.86-17.el5.x86_64.rpm
  • We need to copy some perl modules to a new directory, because @INC has changed in EL6:
cp -a /usr/lib/perl5/site_perl/esmith/ /usr/share/perl5/vendor_perl/
  • We also need to create a new service entry in the DB, because the standard syslog package is now rsyslog:
/sbin/e-smith/db configuration set rsyslog service status enabled
cp -a /etc/rc7.d/S05syslog /etc/rc7.d/S05rsyslog
  • We can now try to post-upgrade
/sbin/e-smith/signal-event post-upgrade
  • And reboot. Unfortunatly, I wasn't able to reboot properly at this stage, because of the upstart → SysVinit transition (the error message is “/dev/initctl: No such file or directory”) so I had to destroy the VM completly

Ok, so the system should now boot, but is really not usable, after a quick look, at least the following doesn't work as expected:

  • The console on the first boot don't really work. It asks for the admin password (and BTW the password appears in cleartext) but it's all
  • No network interfaces are detected by the console menu (because kudzu is not installed, only available in SME repo, and require an older python which clash the the one from EL6)
  • slapd won't start
  • httpd won't start
  • squid won't start
  • manually running expand-template has no effect (and no error message is printed). But signal-event seems to work (files get expanded and services restarted)
  • as the network interface are not configured, all the services which requires the internel IP in their config (at least sshd squid and dnscache) won't start
  • even if we manually add 0.0.0.0 after the ListenAddress line in /etc/ssh/sshd_config, we cannot connect using SSH (the daemon is running, but from a computer on the same network, I get a ssh_exchange_identification: Connection closed by remote host error)
  • qpsmtpd won't start (can't locate Qpsmtpd/TcpServer.pm in @INC)
  • There's probably a lot more which is not working
  • smedev/install_sme_el6.1358761604.txt.gz
  • Dernière modification: 21/01/2013 10:46
  • de dani