This is an old revision of the document!
Table of Contents
bt02srv upgrade notes
The bt02srv server started as an experiment, and had Ubuntu 9.10 Desktop on it. Over a year of use it emerged into a "real" server, so it made much more sense to reinstall with a LTS Ubuntu server version in order to get the server-specific system settings, as well as having long-term update support from repositories.
Backup
Existing files
- /etc
- /opt
- /var/www
- /boot
- /root
List of installed packages
- dpkg –get-selections > 9.10_packages.txt
Install
10.04 Server x86_64
Run all upgrades
- sudo apt-get dist-upgrade
- reboot
Install tools needed to mount the RAID tower
- sudo apt-get install mdadm
- plug in RAID tower eSATA
- reboot (probably optional)
- sudo mdadm –auto-detect
- sudo mount /dev/md0 /mnt
- sudo mv /etc/mdadm/mdadm.conf /etc/mdadm/mdadm.conf.orig
- sudo cp /mnt/backups/before_10.04/etc/mdadm/mdadm.conf /etc/mdadm/mdadm.conf
- add /dev/md0 to fstab
- reboot to test
System packages
- sudo apt-get install build-essential
Copy SSH keys from backup
- sudo cp -a /etc/ssh /etc/ssh.orig
- sudo service ssh stop
- sudo cp /mnt/backups/before_10.04/etc/ssh/*key* /etc/ssh/
- sudo service ssh start
Copy root's home folder
- sudo su -
- cd /
- mv root root.orig
- mv root/ root.orig
- cp -a /mnt/backups/before_10.04/root/ /root
Install apt-cacher-ng
- sudo apt-get install apt-cacher-ng
- chown -R apt-cacher-ng:apt-cacher-ng /mnt/apt-cacher-ng/
- edit /etc/apt-cacher-ng/acng.conf:
CacheDir: /mnt/apt-cacher-ng
- sudo /etc/init.d/apt-cacher-ng restart
BackupPC
- sudo apt-get install backuppc
auto password: 0FY25aM2
htpasswd /etc/backuppc/htpasswd backuppc - cd /var/lib - sudo mv backuppc/ backuppc.orig - sudo ln -s /mnt/backuppc backuppc - sudo mv /etc/backuppc/hosts /etc/backuppc/hosts.orig - sudo cp /mnt/backups/backup.0/etc/backuppc/hosts /etc/backuppc/ - sudo cp /mnt/backups/backup.0/etc/backuppc/172.26.*pl /etc/backuppc/ - sudo chown -R backuppc:www-data /etc/backuppc - sudo chown -R backuppc:backuppc /mnt/backuppc/ - sudo usermod -s /bin/bash backuppc - ps aux | grep "BackupPC -d" - sudo killall -HUP 7442
BackupPC web interface with Active Directory auth:
- sudo apt-get install libapache2-mod-perl2 libapache2-mod-perl2-dev libauthen-simple-ldap-perl
- sudo cpan
install Apache2::AuthenMSAD
exit - sudo vim /etc/backuppc/apache2.conf
AuthName "Microsoft Active Directory Authentication" AuthType Basic PerlAuthenHandler Apache2::AuthenMSAD PerlSetVar MSADDomain ilri.cgiarad.org PerlSetVar MSADServer 172.26.0.218 require valid-user #require user aorth akihara jmagochi
- sudo a2enmod perl
- sudo apache2ctl graceful
Email alerts
BackupPC can send emails to notify of failed backups, etc. We will use postfix's sendmail to relay all the mails to the REAL mail server at the institute; this is called a "relay" or "smart" host.
Postfix is installed by default when you install BackupPC, but it's not configured. Reconfigure it to act as a "Satellite System" using dpkg-reconfigure:
$ sudo dkpg-reconfigure
After that the emails should be working. Test if BackupPC is able to send messages:
$ sudo su - backuppc /usr/share/backuppc/bin/BackupPC_sendEmail -u a.orth@cgiar.org
Redmine
- sudo apt-get install ruby rubygems libopenssl-ruby
- sudo gem install rails -v=2.3.5
- sudo apt-get install libsqlite3-dev
- sudo gem install sqlite3-ruby
- sudo gem install fastthread
- sudo gem install -v=0.4.2 i18n
- sudo cp -a /mnt/backups/before_10.04/opt/redmine* /opt/
- test using the standalone ruby web server: /opt/redmine/script/server -e production
Passenger (mod_rails)
- sudo sh -c 'echo "deb http://apt.brightbox.net lucid main" > /etc/apt/sources.list.d/phusion_passengerlist'
- wget -q -O - http://apt.brightbox.net/release.asc | apt-key add -
- sudo apt-get update
- sudo apt-get install libapache2-mod-passenger
- create /etc/apache2/conf.d/redmine.conf:
RailsBaseURI /redmine
RailsEnv production
<Directory "/var/www/redmine">
AllowOverride all
Options -MultiViews
#Options Indexes ExecCGI FollowSymLinks
Order allow,deny
Allow from all
</Directory>
- sudo ln -s /opt/redmine/public /var/www/redmine
Apache SSL
- sudo a2enmod ssl
- sudo cp /mnt/backups/before_10.04/etc/apache2/sites-enabled/default-ssl /etc/apache2/sites-enabled/
- sudo cp -a /etc/ssl /etc/ssl.orig
- cp /mnt/backups/before_10.04/etc/ssl/certs/ssl-cert-snakeoil.pem /etc/ssl/certs/ssl-cert-snakeoil.pem
- cp /mnt/backups/before_10.04/etc/ssl/private/ssl-cert-snakeoil.key /etc/ssl/private/ssl-cert-snakeoil.key
- copy 80 → 443 rewrite to /etc/apache2/sites-enabled/000-default:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteCond %{HTTPS} off
# rewrite only trac login pages to HTTPS
#RewriteCond %{REQUEST_URI} trac/(avid|beca)/login
# grab the request minus the / (we place a slash in the rewritten URL)
RewriteRule ^/(.*)$ https://172.26.17.2/$1 [R,L]
</IfModule>
- add "ServerName bt02srv" to the default-ssl VirtualHost configuration.
- sudo apache2ctl graceful
git repositories
- sudo apt-get install git-core
- adduser –system –group –shell /bin/bash –disabled-password –home /var/cache/git/ –no-create-home git
- cp -a backup.0/var/cache/git/* backup.0/var/cache/git/.ssh /var/cache/git/
- chown -R git:git /var/cache/git/
Add users from old system
Here I add a user for Solomon Kihara
- sudo cp -a /mnt/backup/akihara /home/
- sudo adduser –shell /bin/bash –home /home/akihara/ –no-create-home akihara
- sudo chown -R akihara:akihara /home/akihara/
- sudo gpasswd -a akihara admin
System tweaks and cleanup
- add "noatime" to all ext4 partitions in /etc/fstab
- disable command-not-found in /etc/bash.bashrc
- sudo apt-get autoremove
- reboot
