Idesk is available as a VM fully installed to run out of the box. Current version runs Debian 7.
Tinycore (discontinued)
The Tiny core version is discontinued and no longer supported. Information is provided here for reference if you are still using it.
The VM is built using Tinycore Linux an extremely fast server with one of the smallest footprints. The core server ISO is only 8MB! With a Apache webserver, MySql database, PHP 5+, FTP server, SSH server, basic IPtables firewall, and Idesk the VM is still only around 100MB. Webserver is based on XAMPP.
As such, due to its architecture, some traditional linux tasks are performed using a somewhat different mechanism. Tinycore has been designed to provide a clean boot every time. Therefore, persistence is a choice needed to be decided on a case by case basis. Don't worry, all Idesk files and data is persistent!
Btw, VI and Nano are both available,
The default user tc is in sudoers group.
the file /opt/bootsync.sh is run early in the boot process. This file calls /opt/bootlocal.sh later in the boot process. FTP is disabled by default. See bootsync.sh if you would like to enable it at boot. Usual installations would not need to enable ftp and can do with SSH or SCP access.
hostname setting is also set via the bootsync.sh file.
Networking
Debian
Use standard Debian commands to configure networking usually editing /etc/network/interfaces file. Remember to restart the service.
Tinycore
Is configured through the file /opt/eth0.sh and is straightforward. Following shows a sample config with static IP and DHCP disabled.
#!/bin/sh
pkill udhcpc
#
# udhcpc -b -i eth0 -x hostname:idesk -p /var/run/udhcpc.eth0.pid
#
ifconfig eth0 51.7.37.17 netmask 255.255.255.128
route add default gw 51.7.37.129 metric 1
echo nameserver 8.8.8.8 > /etc/resolv.conf
echo nameserver 8.8.4.4 >> /etc/resolv.conf
Cron
crontab -l can still be used to view cron entries. However, edits via crontab -e do not work as changes are not stored across reboots. To make cron entries persistent, add entries to /home/tc/root file. Entries are loaded at next boot.
Timezone
Timezone is added to boot directive in /mnt/sda1/tce/boot/extlinux.conf. As an example, the default VM could have this tz=Europe/London tz=GMT0BST,M3.5.0/1,M10.5.0/2. You would need to lookup Linux help files to define timezones.
Date/Time
If using a VM, time would sync with your host time settings by default. Make sure the host has proper NTP settings for getting and providing correct time values. You can use standard date command to view and change date/time settings. To change date or time use the following format:
sudo date -s "2015-04-28 15:57"
Passwd
Passwords can be set via the passwd command. However, the /etc/shadow file must be copied to /home/etc/shadow to make is persistent after any modifications.
Web server and MySQL server: starting and stopping
Read XAMPP documentation if using XAMPP. XAMPP usually comes with its own console to start and stop services.
On Tinycore Linux:
Stop and start all services: /opt/lampp/lampp stop|start|restart
MySQL: /opt/lampp/bin/mysql.server stop|start
On Debian 7:
Apache: sudo service apache2 restart|stop|start
Nginx: sudo service nginx restart|stop|start
MySQL: service mysql stop|start [also works for MairaDB]
XAMPP: /opt/lampp/lampp restart