Collection of interesting definitions and quotes.
(Source: Columbia University)
A system exists and operates in time and space.
(Source: Gene Bellinger, in Mental Model Musings)
An expert is someone who knows some of the worst mistakes that can be made in his subject, and how to avoid them.
(Source: Werner Heisenberg, in Physics and Beyond)
e-Health is the combined use of electronic communication and information technology in the health sector.
(Source: World Health Organization [WHO])
Issues related to Security and Privacy in Healthcare
Compilation of the things that our members feel that may increase the probabilities of success of a given Clinical IT or Hospital Information System project.
So, please feel free to comment or add your own ideas about the subject.
Howto's, Manuals and Documents about Software Installation, Setup and Configuration
DJBdns are a set of applications that retrieve and publish Domain Name System (DNS) information.
Home: http://cr.yp.to/djbdns.html
The following procedure describes How To install the DJBdns software package in Ubuntu Linux (8.04 LTS) to act as a DNS Cache
1. sudo aptitude install build-essential
2. test -d /tmp/downloads && sudo rm -fr /tmp/downloads
3. mkdir -p -m 1755 /tmp/downloads && cd /tmp/downloads
1. cd /tmp/downloads
2. wget -c http://cr.yp.to/daemontools/daemontools-0.76.tar.gz
3. tar -xvzf daemontools-0.76.tar.gz
4. sed -i -e '/^extern int errno\;/ c\#include <errno.h>\' admin/daemontools-0.76/src/error.h
5. sudo touch /etc/inittab # /etc/inittab isn't used in Ubuntu anymore, but the daemontools install script still needs it
6. create an upstart file (http://upstart.ubuntu.com/) inside /etc/event.d/:
sudo bash -c "cat > /etc/event.d/svscan <<-EOA
# svscan - daemontools
# This service starts daemontools from the point the system is
# started until it is shut down again.
start on runlevel 2
start on runlevel 3
start on runlevel 4
start on runlevel 5
stop on runlevel 0
stop on runlevel 1
stop on runlevel 6
respawn
exec /command/svscanboot
EOA" ;
7. cd admin/daemontools-0.76
8. sudo package/install
9. sudo rm -rf /command/*
10. sudo cp -av /tmp/downloads/admin/daemontools/command/* /command/
11. sudo initctl start svscan # upstart svscan (/sbin/start = /sbin/initctl).
1. cd /tmp/downloads
2. wget -c http://cr.yp.to/ucspi-tcp/ucspi-tcp-0.88.tar.gz
3. tar -xvzf ucspi-tcp-0.88.tar.gz
4. cd ucspi-tcp-0.88
5. sed -i -e '/^extern int errno\;/ c\#include <errno.h>\' error.h
6. make
7. sudo make setup check
1. cd /tmp/downloads
2. wget -c http://cr.yp.to/djbdns/djbdns-1.05.tar.gz
3. tar -xvzf djbdns-1.05.tar.gz
4. cd djbdns-1.05
5. echo gcc -O2 -include /usr/include/errno.h > conf-cc
6. make
7. sudo make setup check
Check if it is working:
1. sudo groupadd djbdns
2. sudo useradd -d /dev/null -s /bin/false -g djbdns dnslog
3. sudo useradd -d /dev/null -s /bin/false -g djbdns dnscache
4. -
5. sudo mkdir /var/lib/svscan
6. sudo dnscache-conf dnscache dnslog /var/lib/svscan/dnscache
7. sudo ln -sf /var/lib/svscan/dnscache /service
8. sleep 5 && sudo svstat /service/dnscache # check if it is working
9. upgrade root servers:
10. control: restart and stop djbdns
If your computer is running a DHCP client to obtain a dynamically assigned IP address, configure the DHCP client to use dnscache (listening at 127.0.0.1):
11. sudo dhclient # if your network uses a dhcp client
12. sudo /etc/init.d/networking restart # if it has a fixed IP (or, you may need to reboot)
To check the new nameservers address:
To check if dnscache is working:
a) Documentation and Man pages are available from: http://smarden.org/pape/djb/ , to install them: wget -c http://smarden.org/pape/Debian/dists/woody/unofficial/binary-i386/djbdns-doc_1.05-4_all.deb && sudo dpkg -i djbdns-doc_1.05-4_all.deb
b) Also see: http://www.linuxjournal.com/article/10112
c) To see how to adjust the cache size see: http://cr.yp.to/djbdns/cachesize.html
d) Perfect DjbDNS Setup On Ubuntu Server 8.04 (amd64) Hardy <http://www.howtoforge.com/perfect-djbdns-setup-on-ubuntu8.04-amd64>
e) Install Djbdns on Ubuntu Server: <http://www.rasyid.net/2008/07/08/install-djbdns-on-ubuntu-server/>
f) For an Debian/Ubuntu way to install djbdns, i.e. using "sudo apt-get install daemontools djbdns qmail cvm" see: http://smarden.org/pape/Debian/djbdns.html
LTSP (Linux Terminal Server Project) is a software package that adds thin-client support to Linux servers.
Home: http://www.ltsp.org/
The following procedure describes How To install the LTSP software package in Ubuntu Linux (8.04 LTS).
1. Fresh Install Using the Ubuntu alternate CD
See: https://help.ubuntu.com/community/UbuntuLTSP/LTSPQuickInstall
1. Make sure that your server has 2 network cards installed and working under Ubuntu;
2. Insert the Ubuntu alternate CD and (re)boot fom this CD;
3. Once you boot up the CD, hit F4. The "Modes" menu will pop up. Select "Install an LTSP Server". Move on with the install.
Once the installer is done and has rebooted into your new system you will be able to boot your first Thin Client right away.
2. Install over an existent Ubuntu Desktop
1. Make sure that your server has 2 network cards installed and working;
2. Configure one card to have the static IP 192.168.0.1. Make sure that it is up and running. It will serve the thin client's boot image;
3. Configure the other card to be in a range different from 192.168.0.x. Make sure that it is able to connect to the Internet;
4. sudo apt-get install ltsp-server-standalone
5. sudo ltsp-build-client --arch i386
6. Check if the LTSP network paramaters fit your organization needs:
7. If needed Install User Security and Policy editors:
Note: if you need to use another IP instead of the 192.168.0.1 stated above, you must edit the IP ranges inside the file /etc/ltsp/dhcpd.conf to match the new IP and then restart the dhcp server.
3. Update the LTSP clients
4. Problems
4.1. Booting 32 bit clients from a LTSP AMD64 server
See: LTSP AMD64 and 32 bit clients: <http://ubuntuforums.org/showthread.php?t=213043>
4.2. Workstation isn't authorized to connect to server
If you get error "This workstation isn't authorized to connect to server" on client, please run:
See explanation on: https://bugs.launchpad.net/ubuntu/+source/ltsp/+bug/144296
5. Use a CDROM, a pen drive or whatever drive on the thin client
To use the CDROM, a pen drive or whatever drive on the thin client you must:
1. sudo apt-get install ltspfs (Not needed anymore: it is now part of the ltsp-server-standalone package)
2. add the users you want to have access to those drives to the fuse group:
3. reboot the thin client and you should now be able to use the thin client's local drives.
6. Customize LTSP clients
ATENTION: The config file: /opt/ltsp/i386/etc/lts.conf is deprecated, use the following instead:
7. Install x11vnc on Ltsp Clients
See: https://wiki.edubuntu.org/InstallX11VncOnLtspClients
8. Reference
OpenEMR is a free medical practice management, electronic medical records, prescription writing, and medical billing application.
Home: http://www.oemr.org/
The following procedure describes How To install the OpenEMR software package in Ubuntu Linux (8.04 LTS)
1. Install a LAMP server
To install a LAMP server (Linux, Apache, MySQL, PHP) in Ubuntu Linux simply do:
If you get an error like: apache2: Could not determine the server's fully qualified domain name, use localhost (127.0.0.1) for ServerName and restart Apache:
To test the LAMP installation:
2. Download and Prepare OpenEMR
The simplest way to install OpenEMR in Ubuntu seems to be:
3. Install OpenEMR
To install OpenEMR point your browser to: http://localhost/openemr/setup.php and follow instructions from there.
4. Start OpenEMR
To start OpenEMR point your browser to: http://localhost/openemr/
5. Notes
This procedure describes how to setup the Mailman Mailing List Manager, using the Nginx web server, thttpd cgi server, and Ubuntu Linux Server Edition.
The software versions used were:
mailman 2.1.13 <http://www.gnu.org/software/mailman/>,
nginx 0.8.53 <http://nginx.org/en/>,
thttpd 2.25b-11 <http://www.acme.com/software/thttpd/>,
ubuntu 10.10 <http://www.ubuntu.com/server>
This setup assumes that Mailman will be served from http://mail.example.com/mailman and that mail.example.com IP is 127.0.1.1
1. install & configure the thttpd cgi server
sudo apt-get install thttpd
# change /etc/default/thttpd to have:
ENABLED=yes
# change /etc/thttpd/thttpd.conf to have:
port=8000
dir=/usr/lib/cgi-bin
nochroot
user=www-data
cgipat=/**
throttles=/etc/thttpd/throttle.conf
host=127.0.1.1
logfile=/var/log/thttpd.log
sudo /etc/init.d/thttpd restart # restart using new settings
2. install & configure mailman
sudo apt-get install mailman
sudo touch /usr/lib/cgi-bin/mailman/favicon.ico # fake a favicon
# create the mailman admin mailing list
sudo newlist -l en -q mailman postmaster@example.com SOMEPWD
# must choose an MTA, even if it is MTA=None
sudo sed -i 's/.*\(MTA=None.*\)/\1/' /etc/mailman/mm_cfg.py
# anonymize mailman footer and set proper permissions
sudo sed -i '/return t$/s/t$/""/' /usr/lib/mailman/Mailman/htmlformat.py
sudo chown www-data /var/lib/mailman/archives/private
sudo chmod o-x /var/lib/mailman/archives/private
(cd /var/lib/mailman;sudo chown list:list */)
sudo /usr/sbin/check_perms -f
sudo /etc/init.d/mailman start # start mailman
3. install & configure nginx
sudo dpkg -i nginx_0.8.53-0ubuntu1_i386.deb
# create a file /etc/nginx/sites-available/mailman
server {
listen 80;
server_name mail.example.com;
access_log /var/log/nginx/mailman.access.log;
error_log /var/log/nginx/mailman.error.log;
root /usr/lib/cgi-bin/mailman;
rewrite ^/$ $scheme://$host/mailman/ permanent;
location = /mailman/ {
proxy_pass http://127.0.1.1:8000/mailman/listinfo;
proxy_set_header Host $host;
}
location /mailman/ {
proxy_pass http://127.0.1.1:8000/mailman/;
proxy_set_header Host $host;
}
location = /cgi-bin/mailman/ {
proxy_pass http://127.0.1.1:8000/mailman/listinfo;
proxy_set_header Host $host;
}
location /cgi-bin/mailman/ {
proxy_pass http://127.0.1.1:8000/mailman/;
proxy_set_header Host $host;
}
location /images/mailman {
alias /var/lib/mailman/icons;
}
location /pipermail {
alias /var/lib/mailman/archives/public;
autoindex on;
}
}
sudo ln -svf /etc/nginx/sites-available/mailman /etc/nginx/sites-enabled/
sudo /usr/sbin/nginx -s reload
4. run mailman from:
This is the archive of software packages known by the e-HealthExpert.org members.
All entries should at least include:
This new area of e-HealthExpert.org site is also meant to be a repository of the most relevant software that appears at our [sw-hw] mailing list.
The [sw-hw] mailing list is an open forum in which any member can freely review, evaluate and talk about any subject related to systems architecture, software, hardware and, more in general the usage of IT technology to support all the activities of a Healthcare Organization. List guidelines and subscription application forms are available from: [sw-hw] mailing list usage guidelines.
Collection of norms, specifications and various data tables of general interest to the development, management or control of Health IT Systems (HIS).
Richard Heeks from the University of Manchester (UK), has an article on how to evaluate a eHealth, Heath IT or HIS project risk. The assessment (success and failure) factors are described. A hospital worked example is given.
The full article is available at: eHealth Project Risk Assessment
Another interesting work from the same author is How can I make my e-health project more likely to succeed and/or less likely to fail?
There is also a downloadable .pdf named: Why health care information systems succeed or fail