Archive
Installing SoulFu on Ubuntu 12.04 64bit
If you ever want to install the amazing multiplayer SoulFu medieval-fantasy game from Aaron Bishop (up to 4 players with joysticks & keyboard on a single computer) on your Ubuntu 12.04 (Precise) 64bit, follow the howto below. The most problematic point is that it depends on libjpeg62 compiled in a 32bit version. To install this one (although you’re running on 64bit) you need to issue a specific “apt-get install libjpeg62:i386″ command (instead of the same version without :i386).
Follow the guide here: http://www.playdeb.net/updates/Ubuntu/12.04#how_to_install. Namely, issue the following commands:
wget -q -O- http://archive.getdeb.net/getdeb-archive.key | sudo apt-key add -sudo echo "deb http://archive.getdeb.net/ubuntu precise-getdeb games" >> /etc/apt/sources.list.d/playdeb.list apt-get update apt-get install soulfu libjpeg62:i38
Then launch SoulFu to start playing:
soulfu
Installing Redmine 2.1 on Debian Squeeze with Apache modPassenger
This article is co-authored by Jérôme Warnier, from work mostly done by him with my occasional support. Kudos go to him.
We couldn’t find any valuable manual to install Redmine 2.1 on Debian Squeeze, and we sure met a lot of resistance along the way, so we came up with the following step-by-step guide…
Sources of inspiration
We used the following resources as a starting point. Thanks to their respective authors.
- http://madpropellerhead.com/random/20100820-installing-redmine-on-debian-with-apache (outdated, for Lenny)
- http://www.redmine.org/projects/redmine/wiki/RedmineInstall
- http://hodza.net/2012/03/15/howto-install-redmine-on-debian-6-squeeze-ruby-on-rails-apache2-passenger/
- http://www.redmine.org/projects/redmine/wiki/HowTo_Install_Redmine_on_Debian_with_Ruby-on-Rails_and_Apache2-Passenger
Assumptions
We take as given that:
- We are using a Debian Squeeze installation
- We have root access to this machine
- There is public access to the machine itself (public IP)
- We are able to define a public domain (or subdomain) name for this Redmine installation
- We have access to define a database (we chose MySQL) user for Redmine (this is important to avoid security risks in sharing accounts with another web system). We also assume that we already have a MySQL server installation
- We will be using Apache 2′s modPassenger (and Apache 2 is already installed on the server)
- We will be using redmine.example.com; so every time you see this below, replace it by your own domain
Warming up
We will first need to install basic packages:
apt-get install ruby rubygems libruby libapache2-mod-passenger
Download the latest version of Redmine (2.1.0 in our case) and untar it, then move it to /usr/local/share
ln /usr/local/share/redmine-2.1.0 /usr/local/share/redmine
chown -R root:root /usr/local/share/redmine-2.1.0
Install development libraries for MySQL:
apt-get install libmysqlclient-dev
Install development libs for Imagick:
apt-get install libmagickcore-dev libmagickwand-dev (install shitload of packages)
Running the Gem stuff
Install Bundler (removing useless module, which would otherwise create dependencies):
gem install bundler
cd /usr/local/share/redmine/
/var/lib/gems/1.8/bin/bundle install --without development test postgresql sqlite
Configuration
Copy config/database.yml.example to config/database.yml and edit this file in order to configure your database settings for “production” environment.
Example for a MySQL database using ruby1.8 or jruby:
production:
adapter: mysql
database: redmine
host: localhost
username: redmine
password: my_password
Generate a session store secret:
/var/lib/gems/1.8/bin/rake generate_secret_token
Generate the database structure:
RAILS_ENV=production /var/lib/gems/1.8/bin/rake db:migrate
Generate default configuration data:
RAILS_ENV=production /var/lib/gems/1.8/bin/rake redmine:load_default_data
(using “es” for Spanish language in terminal prompt)
Setup config file in config/configuration.yml
Change database_ciphr_key: *******
/var/lib/gems/1.8/bin/rake db:encrypt RAILS_ENV=production
Apache
Setup Apache’s VirtualHost config
# 8080 in this case is because we use a reverse proxy before Apache. Otherwise use :80
<VirtualHost *:8080>
ServerName redmine.example.com
DocumentRoot /usr/local/share/redmine/public
<Directory /usr/local/share/redmine/public>
AllowOverride all
Options -MultiViews
</Directory>
</VirtualHost>
There’s technically nothing special with the Apache config, given with use modPassenger, which makes Apache automatically detect Ruby files and interpret them with the right module… Just pointing to the right directory is enough.
Once you enable this virtual host (a2ensite redmine.example.com) and reload Apache (/etc/init.d/apache2/reload), you should see your site running on http://redmine.example.com.
The default login/password is admin/admin (don’t forget to change this).
Creating a software RAID array on an already installed Ubuntu 11.04
Let’s say you got confused by a misleading fake-RAID feature on an HP Blade server and you decided to ignore that the Ubuntu installer was telling you it found 2 disks while it was supposed (if it was actual hardware RAID) to be detecting only one. And let’s say you are lucky to have 3 disks, and you only one to use two as the RAID array (and they do not contain your operating system, i.e. the / partition). You might wonder: “And now what? S**** you, HP!” (that last bit is if you left panic get you, of course). Let’s also say that you had an installation of a large production web application on /var/www, which is what you wanted to be on RAID, but that, by an incredibly lucky turn of events, it is just small enough to fit on what’s left of your first disk…
Well fear no more! There’s a solution and I tested it for you…
First take a safe copy of what is on that partition that you wanted to be in RAID, and put it on the disk that will not change. Also, unmount that partition. If it was /var/www, use:
$ sudo umount /var/www
If the system says it’s busy, shutdown Apache and make sure no user is currently in a terminal in /var/www… (use lsof |grep /var/www for example).
If you happen to read this Ubuntu RAID guide between the lines, you’ll catch it talks about “mdadm”, a software to manage multi-disk arrays. As you know, installing software on Ubuntu (or Debian) is dead-easy:
sudo apt-get install mdadm
Then let’s say you wonder how to use it… As you know, getting documentation in English on Linux is dead easy:
man mdadm
Then you’re up for a lot of reading, unless you don’t really care about the details and you want to try it quick. This is what you would then do, considering your two unused disks (or “devices” for the geeks) are /dev/sdb and /dev/sdc (you can get an idea from “ls /dev/sd*” or “df” or “fdisk /dev/anything-you-can-think-about” :
$ sudo mdadm –create /dev/md1 –level=1 –raid-devices=2 /dev/sdb /dev/sdc
…where /dev/md1 is the new multi-disks device you’ll create, –level is the RAID type you want to use (1 for simple mirroring), and –raid-devices is the number of disks you will have inside your multi-disks device.
You can then confirm that you don’t care about the partitions it may find on these. Then launch
$ sudo mdadm /dev/md1
To check if that virtual disk exists. It should give you something like:
/dev/md1: 465.76GiB raid1 2 devices, 0 spares. Use mdadm –detail for more detail.
Now you’ve got a device, but that doesn’t give you a partition…You’ll have to create one with “fdisk”:
$ sudo fdisk /dev/md1
fdisk> n
fdisk> p
fdisk> 1
fdisk> <enter> for default
fdisk> <enter> for default
fdisk> w
But the partition is not formatted. As you might know, formatting a partition (let’s say in EXT4 because you like modern stuff moderately) on Debian/Ubuntu is dead-easy:
$ sudo mkfs.ext4 /dev/md1
You now have an EXT4 partition mounted on a RAID1 mirroring device. Almost done: you want to mount the partition in your file system. Let’s say as /var/www (that directory must exist and it’d rather be empty):
$ sudo mount /dev/md1 /var/www
Now, you want this mounting to happen on its own when you reboot, right? To do that, you need to update your /etc/fstab. If you had already something mounted there before, chances are you will find its line is already in /etc/fstab . For example, if you had one of the disks alone mounted as /var/www, you’ll have this kind of line:
UUID=244b687f-f8d9-4a48-986a-8a1a8a8d33bd /var/www ext4 defaults 0 2
Right? Well, you’ll need to edit that line to change the device ID now… But how do you get that UUID? No problem, just launch:
$ ls -l /dev/disk/by-uuid
You’ll see your /dev/md1 listed there, along with its UUID. Just copy that UUID and replace the older one on the /var/www line of your /etc/fstab. Done. Now I recommend you reboot to check everything is mounting correctly, before you delete your safe backup file.
Well, that wasn’t too hard, was it? I actually believed I would have to reinstall the whole Ubuntu, but having a very slow connection for the update, I preferred not to. Seems like I won this round! Thanks to all the guys involved in these cool projects! You really made my day.
Installing Squid on ZFS
The recommended filesystem for Squid on OpenSolaris is ZFS: http://wiki.squid-cache.org/BestOsForSquid
It is also recommended to disable the atime property on the filesystem holding the cache, and you may want to avoid using any type of RAID.
To achieve this on Nexenta (or OpenSolaris, whatever), first create the ZFS filesystem:
# zfs create -o atime=off -o mountpoint=/var/spool/squid3 syspool/squidcache
Then install Squid (here for version 3.x, as you might have noticed from the command). On Nexenta Core Platform 3 (NCP3):
# apt-get install squid3
To further improve the setup, use the aufs storage. To do this, just enable and update option cache_dir in /etc/squid3/squid.conf to read aufs instead of ufs (and further modify that line to best suit your real cache usage).
Installer Redmine sur Debian Etch
Article utile sur le sujet ici: http://www.admincafe.re/forums/showthread.php?t=110
Merci à l’auteur
Nexenta (OpenSolaris + Ubuntu)
Vous le savez probablement, Sun a libéré (GPL v3) le code de son OS-phare (Solaris) il y a déjà quelques années.
La version communautaire de cet OS s’appelle assez logiquement OpenSolaris.
De cette version, en développement constant, sont issues les versions propriétaires de Sun (appelées “Solaris 10″).
Il tourne sous plusieurs architectures différentes: x86, x86_64 (selon la nomenclature Solaris, AMD64 selon la nomenclature Linux), et Sparc (l’architecture de Sun, pour les incultes). Il faut d’ailleurs savoir que cela fait longtemps que Solaris est à la fois 32 et 64 bits (multiarch, selon la nomenclature Linux).
Après une période de prise en main par une communauté (toujours assez réduite aujourd’hui, il faut bien le dire), plusieurs dérivés ont commencé à apparaître, menant à des versions LiveCD, des versions seulement pour une architecture ou une autre, …
Toutes intègrent tout ou parties des fonctionnalités particulières de Solaris (ZFS, SMF, Containers, DTrace, …).
Le problème de Solaris venant plutôt des outils utilisateurs (non-)fournis. Le choix (et souvent la qualité ou le côté pratique) est beaucoup plus vaste sous GNU/Linux.
Alors, plusieurs jouent le rapprochement avec Debian/Ubuntu, à des niveaux divers (avec ou sans Glibc, avec ou sans système de packaging correct, …).
Parmi celles-ci, l’une d’entre elles à retenu toute mon attention: Nexenta.
Nexenta est une petite société spécialisée dans le storage à base d’OpenSolaris (grâce à ZFS, qui Tue(tm)[1]). Pour son produit-phare, NexentaStor, elle a décidé d’utiliser un kernel OpenSolaris avec un userland Ubuntu[2].
Et pour (avoir une chance d’)obtenir de l’aide de l’extérieur, ils se basent sur une version communautaire, totalement libre[3], et appelée Nexenta Core Platform (qui en est à sa version 2.0, la version 3.0 étant en préparation).
Le problème principal de NCP est la fraîcheur des logiciels qui viennent du monde GNU/Linux, puis la non-intégration des Zones dans apt-clone (on ne peut pas mettre à jour les packages d’une zone non-globale). Mais c’est déjà actuellement une solution particulièrement adaptée comme serveur (de fichiers ou même applicatif).
Et donc voilà, c’est cool, mais il y a encore du travail pour que ce soit vraiment utilisable par le commun des mortels.
HOWTO Build current XAMS Debian packages
This article was first written in September 2004 for the BeezNest technical
website (http://glasnost.beeznest.org/articles/168).
For the moment, no official XAMS binary package exist. You have then to play a bit with the Subversion repository.
So, update or export your xams-0.0.x and xams-0.0.x-debian repositories.
Done? Ok, let’s continue then.
Copy your xams-0.0.x directory to another name, like xams-0.0.15+svn20040908 for example:
$ cp -ar xams-0.0.x/ xams-0.0.15+svn20040908/
Then, copy the debian subdirectory from your xams-0.0.x-debian directory to your newly-created one (xams-0.0.15+svn20040908
).
$ cp -ar xams-0.0.x-debian/debian/ xams-0.0.15+svn20040908/
Copy then the autogen.conf preconfigured for Debian.
$ cp xams-0.0.x-debian/autogen.conf xams-0.0.15+svn20040908/
Install the latest build-dependencies (see list in the debian/control file).
Enter the newly-created directory and modify the version number of the last entry of debian/changelog as well as the maintainer’s line. Issue a debuild in the directory.
$ cd xams-0.0.15+svn20040908/ $ vi debian/changelog $ debuild
It should build without problems.
HOWTO Setup NUT (Network UPS Tools) on Debian
This article was first written in August 2004 for the BeezNest technical
website (http://glasnost.beeznest.org/articles/158).
NUT is the Network UPS Tools.
To setup NUT on Debian, you first need to know what kind of UPS you have, and how it is/will be connected to your Debian machine.
We will not yet analyse how to do monitoring over the network, but only on the machine physically connected to the UPS, which we suppose has been installed under Debian GNU/Linux (tested on Sarge).
First, install the package nut (there are several other NUT-related packages, but you only really need this one).
It will create a /etc/nut directory, which you have to populate with files in /usr/share/doc/nut/examples/. Uncompress them all, and change the owner to nut:nut and the rights to -rw-r—–. Then, modify the ups.conf file to suite your UPS. Example:
[apcups]
driver = apcsmart
port = /dev/ttyS0
desc = "APC SmartUPS"
sdtype = 0
You can find the list of drivers and options available in /usr/share/doc/nut/README.gz.
Go change the “no” you need (at least START_UPSD) into “yes” in /etc/default/nut.
Now, the tricky part is that upsd needs to be able to access the peripheral, for example /dev/ttyS0. It is really different given that you use devfs or udev or yet the old /dev way… I will provide more information here soon.
HOWTO Install kana and kanji for Firefox on Debian Sarge
This article was first written in May 2004 for the BeezNest technical
website (http://glasnost.beeznest.org/articles/130).
This is a quick manual on how to install kana and kanji (Japanese writing) handling for the Mozilla-Firefox browser (and probably all other browsers) on Debian Sarge.
I don’t know whether the following is or isn’t mandatory, but these steps were enough to give a good result.
Installing the “Languages” extension
* Note: this section has proven useless so I have moved it to the end of this article. Just for info on how to install this extension.
Installing the fonts
The first (and only) step to take is to install the fonts on your system.
The easiest way is probably to use apt-cache search (or search within synaptic if you’re more like this) for “japanese fonts” and you’ll find some fonts packages.
Install some of them. I’ve used: apt-get install ttf-kochi-mincho for additional fonts, you might want to install the following, but just ttf-kochi-mincho (9MB) should be enough apt-get install ttf-kochi-gothic xfonts-intl-japanese xfonts-intl-japanese-big xfonts-kaname (you’ll need to have root access or sudo in order to use apt-get install)Note the xfonts ones are smaller in size (but didn’t help in my case)
You should already be able to see the japanese fonts in your browser. If this doesn’t work, try the following in any order:
- restart your browser (close every window before launching it again)
- go to the extensions page for Firefox and follow the link to the “Languages” extension’s homepage, then follow the link to the language-specific extensions and install the Japanese one (strange characters ending with “Ja”)
- restart your X server (in order for him to take into account the new fonts – I really don’t think this is needed, but just in case…)
If you have comments about this article, please send me an e-mail.
Installing the “Languages” extension – most probably useless for you
Start Firefox and go to the extensions handler (Tools -> Options -> Extensions) and click on the link to get to the extensions’ page.
Select “Install” on the “Languages” extension section. Install the extension by clicking “Cancel” if you’re not administrator so that the extension is installed only for your user. Clicking “OK” when you’re not administrator will probably not succeed in installing the extension.
Then you’ll have to restart your browser in order for your changes to take effect.
XAMS – The eXtended Account Managing Software
This article was first written in April 2004 for
the BeezNest technical website (http://glasnost.beeznest.org/articles/122)
XAMS (eXtended Account Managing Software) is a powerful application suite for managing e-mail accounts for multiple domains in a virtual hosting environment, using a simple set of web pages coded in PHP.
It provides with quotas on mailboxes and delegation of management of some tasks to others, through a simple, neat web interface.
XAMS is written using PHP and Perl, which are our core competency fields in development area. It is based on Exim 4.x, Courier-Imap and/or Courier-POP, and MySQL (work is on the way to provide PostgreSQL support as alternative), and some other IMAP/POP3 servers are already usable.
It can optionally use an anti-spam and/or anti-virus software, and support is available for Mailscanner.
There is also special integration with Squirrelmail, probably the best free webmail available today.
See the official website for more information.
We have been working on deployment of XAMS on Debian for quite some time now, and have worked to give the best possible Debian packages to the Free Software Community.
