![]() |
Tailwind - Live : Manual | html rev: 2009-May-9 |
|---|
|
Introduction FAQ (top)
Tailwind-Live is a Linux distro based on Debian and built using Live-Helper.
Most live distro's are designed to introduce a user to a particular way of packaging Linux (i.e. Debian, Ubuntu, Redhat Fedora etc.) with the hope that the user would then install the distribution onto a hard disk.
Once you've installed your live distro (either directly from the live CD or by downloading the installable Cd's), you then start customizing to tailor Linux to your particular needs by adding tools, adding users/passwords, fixing issues with media packages, fonts etc. Eventually you have what you want and you pray you don't have to do it again because you can't quite remember 'how you did it'.
The goal of Tailwind-Live is to give you everything you need and have it all working together as a Live distribution .. so you don't have to customize anything .. it just works.
Well yes, of course it is .. so 'my' solution is to simply replicate 'my' working environment and hope that you like it!
This is something like what you do when you invite someone to your home for dinner. You are given two choices .. you can try to guess what your guest will like and compromise your dinner by making food you are not that happy with OR you can simply make what you like and assume the user will like it too!
I prefer the latter approach because it at least ensures one person is happy!
In fact, the way I use this environment is to boot everything from hard drive.
With today's fast processors and large memory configurations, this results in a surprisingly fast computing environment.
You can experiment with adding new applications/configurations to the live environment and, when you have it right, you can re-build the distro with these changes. This makes it really easy to know exactly what you have in your build.
You can keep other users in sync with your improvements simply by copying one file over to the user's hard disk (filesystem.squashfs).
You no longer have to spend days configuring a Linux system for a user trying to remember 'how you did it' last time! Instead, you spend an hour setting up the hard disk partitions and grub boot and then add the live boot files and set a few Tailwind-Live configuration settings and you are done.
Harold Blount .. pleased to meet you!
contact: hb at tailwind-live dot org
/usr/local/bin there are three scripts that use mogrify to create
medium, small and thumbnail images from a large directory of images.
The programs are mk-pics-medium, mk-pics-small and mk_pics-thumb and all
you have to do is put your source pictures in a directory called large and then run the
appropriate script to create your new size.
The directories /usr/share/zoneinfo, /usr/share/locale and /usr/share/doc
take up about 100Meg (compressed) space on the filesystem.squashfs image (i.e. grows from 840Meg
to 940Meg). To keep the size down, Tailwind-Live prunes these directories down to a size of around 68Meg.
See also Package Lists for a list of Debian packages typically found in Taiwind-live.
If you are running Tailwind-live right now, this file is found at the root and is called 'package.list'. You could open it with:
kedit /package.list
in a shell. It will only list Debian packages of course and not the binary installed programs included in Tailwind-live.
One of the annoying things about CD-ROM/DVD Live Distros is that they respond slowly to user input because it takes time for the drive to spin up to speed to read data.
You can remove this 'hesitation' delay by installing Tailwind-Live on your hard drive.
To do this, boot into your default operating system
and copy the directory called 'live' from the Tailwind-Live DVD
to the root of your hard drive. (i.e. in Windows it might look something like: C:\live
when you are finished).
This works with virtually any partition type including NTFS, FAT32 or some other Linux partition.
Next time you boot Tailwind-Live from DVD, it will find your live directory on your
hard drive and finish booting from there for a marked speed improvement with the
added benefit of freeing up your CD-ROM/DVD drive for other uses.
If at any time you want to remove Tailwind-Live from your hard drive, simply delete this live
directory.
NOTE that if you are putting Tailwind-Live on an NTFS directory, you have to do it from Windows as described above as Linux can not write to an NTFS partition.
To connect to a wired network, simply plug your computer's network adapter into your network and then boot Tailwind-Live.
If this fails, open the Wicd Network Manager from the Xfce menu (under Network)
and try to connect to your wired Network with the Connect button.
NOTE: In some cases it seems that you may be connected to the network but the Wicd Network Manager does not seem to know and does not report the correct status.
If you are lucky, you may find that your wireless just 'works' and you can connect
using the Wicd Network Manager. In this case you are using the default madwifi
wireless tools which is fine.
If this is not the case, you may have to use another approach and that is the ndiswrapper tools.
To assist you with this, there is an example ndiswrapper driver script in the /live/twl_setup_dir/examples
directory called wireless-driver.sh. It is for the DLINK dwlg630 wireless network card
and sets up ndiswrapper and installs the windows drivers. If you copy this script (or one that has been
modified for your wireless card) in the /live/twl_setup_dir/scripts_custom directory,
Tailwind-Live will see this script and run it when it is setting up the network.
Tailwind-Live has a firewall pre-configured to start automatically when a network is connected and to shut-down once the network connection goes down.
The firewall is generally configured to allow the following ports access: 22 (ssh), 515 (lpd), 631 (cups)
and 80 (www). Only port 22 (ssh) will allow access beyond the network gateway.
See the Tailwind-Live script firewall-rules.sh for details.
DISCLAIMER: IT IS THE RESPONSIBILITY OF THE USER OF TAILWIND-LIVE TO UNDERSTAND THIS FIREWALL AND WHETHER IT MEETS THE USERS SECURITY REQUIREMENTS OR NOT. TAILWIND-LIVE AND NORDICWIND INC. ASSUME NO RESPONSIBILITY FOR ERRORS IN THE CONFIGURATION OR INTEGRATION OF THIS FIREWALL IN TAILWIND-LIVE.
Obviously a web browser is a good place to start to see if you are connected (iceweasel is an unbranded version firefox).
Another way to look at your network is
to open a Command Prompt (X terminal Emulator) and try the ping command on something like www.google.com
You can also run the ifconfig command as user root and you should see the status of
your network interface (usually eth0 or wlan0) and look for the inet addr: line to see if you
have an ip address.
Some wireless network cards come up as wlan0 and others
as ath0. Tailwind-Live tries to figure this
out for you and configure wicd correctly. It is possible that your wireless card
(or even wired card) is something stranger and you may have to change the settings in wicd
accordingly. A useful console command to figure this out is ifconfig -a
(as root user) which will list all (configured and not configured) network devices.
The WICD configuration files are in /etc/wicd and can be saved to your twl_setup_dir with the
savesettings-wicd script in /usr/share/tailwind-live/scripts.
The assumption here is that twl_setup_dir is NOT in ram but rather on a hard disk or flash as
configured in boot.sh. If twl_setup_dir IS in ram, then copy changes in this directory
over to your /live/image/live/twl_setup_dir so on next boot the ram version has your changes.
Of course, you will have to do this in multiple steps since /live/image is mounted as
read-only when Tailwind-Live is booted.
Multi-media files and streams seem to be a tricky subject in Linux and difficult to configure correctly to work with every website you may encounter!
Tailwind-Live does not interface smoothly with all multi-media links on the web which
is something that hopefully will improve in future releases.
(Yes I know that mplayer is often used by other
distros for multi-media but I could not get it to work in this Debian/Lenny release .. please
let me know if you figure this out!)
More recently, the BBC has moved it's video streams to FlashPlayer which has solved a RealPlay crash issue that we were experiencing with an earlier release of Tailwind-Live.
In addition, earlier versions of the packages in Tailwind-Live seemed to have trouble playing some of the CBC (Canada) radio streams without the help of MediaPlayerConnectivity but the most recent xine plugins seem to be able to handle the CBC now.
(see about:plugins (enter as URL) in the browser for more info on plugins).
With these improvements in performance, it now is better to have
the MediaPlayerConnectivity addon in Iceweasel DISABLED by default and let the user decide if it is useful to enable this helper.
Sometimes you are asked which media player you would like to use and the choice is between RealPlay and Windows Media Player.
For the BBC it now seems best to select RealPlay for all streams.
If you select Windows Media Player, it is xine that will start up and try to play the stream.
To play a DVD movie on Tailwind-Live, you need the decryption software which you might be able to download from here: http://www.debian-multimedia.org/dists/testing/main/binary-i386/package/libdvdcss2.php . (For legal reasons, the decryption software can not be included in Tailwind-Live).
If you place this Debian package file in the /live/twl_setup_dir/packages directory, Tailwind-Live
will automatically install this package and you will be able to see your movie!
Tailwind-Live has SWFTOOLS installed (see http://www.swftools.org/) and there is a program called mencoder in this package that can create mpeg movies from your digital camera.
I've only done it with files from a Canon Powershot SD600 digital camera and I don't know if the following command can be applied universally.
mencoder -o mymovie.mpeg -oac mp3lame -ovc lavc -srate 11025 \
-channels 1 -af-adv force=1 -lameopts preset=medium \
-vf scale=320:240 \
-lavcopts vcodec=msmpeg4v2:vbitrate=400 -mc 0 MYMOVIE.AVI
... where mymovie.mpeg is the new movie and MYMOVIE.AVI is the
file from the camera.
If you decide to enable this mozilla addon to fix a particular stream you want to play, here are some tips:
Tailwind-Live uses the mozilla addon MediaPlayerConnectivity to interface media links and streams
with xine and vlc applications to play video and sound. The iceweasel
browser also has the Adobe Flashplayer plugin installed.
(see about:plugins (enter as URL) in the browser for more info on plugins).
The way MediaPlayerConnectivity is configured by default is to NOT
automatically play a multi-media link (unless it's Flash) but instead you will get an
embedded window as shown below:
There are two or three things you can do next:
move your mouse over the centre image (film strip) and a right 'play' arrow appears and you can click
on this and xine will pop up and start playing your stream.
NOTE that sometimes (as in the above example) you get two MediaPlayerConnectivity windows .. usually these
two windows behave the same way.
click on the upper right corner of this embedded window on the X to close MediaPlayerConnectivity
and let other plugins take over (this works for BBC World News with xine starting up embedded).
xine will give you
a error message but clicking on the other link will work!
There are a few approaches you can take to creating a working Tailwind-Live environment that runs just like a 'non-live' installed operating system.
The first way is around a Dual-boot Windows/Linux System where you share common files on a FAT32 partition and you have Linux partitions for Linux and NTFS partitions for Windows.
The second approach is a One-boot Linux System which only uses Linux partitions. If you understand how to setup a Tailwind-Live One-boot Linux System, you will find it easier to configure a Dual-boot Windows/Linux System and better understand what trade-offs you are willing to make creating the dual-boot.
The assumption here is that you are starting with a empty hard disk that you are going to re-format and DESTROY ANY EXISTING DATA ON THAT HARD DISK.
boot up Tailwind-Live from a DVD or CD-ROM drive.
open a shell
login as root (su - where password is 'windy')
run fdisk /dev/SDX where SDX is your hard drive .. usually hda or sda ... or use 'gparted'
create partitions to look similar to the following:
Device Boot (size...) (comment ...............) Id System /dev/SDX1 2gig /live version 0 83 Linux /dev/SDX2 2gig /live version 1 83 Linux /dev/SDX3 1gig optional if lots of ram 82 Linux swap / Solaris /dev/SDX4 * ??gig boot and user data 83 Linux
Format the partitions:
# mkfs.ext3 /dev/SDX1 # mkfs.ext3 /dev/SDX2 # mkswap /dev/SDX3 # mkfs.ext3 /dev/SDX4
copy Tailwind-Live files over:
# mkdir /live1 # mount /dev/SDX1 /live1 # cp -r /live/image/live /live1
create boot directory:
# mkdir /data # mount /dev/SDX4 /data # mkdir -p /data/boot/grub # cp /usr/lib/grub/i386-pc/* /data/boot/grub
create menu.lst in boot/grub to look as follows (modify hostname and username as required):
default 0
timeout 60
# Pretty colours
color cyan/blue white/blue
title Tailwind-Live 0
root (hd0,0)
kernel /live/vmlinuz2 boot=live live-media=/dev/SDX1 union=aufs QUICKREBOOT=yes
hostname=tailwind username=baffin timezone=America/Montreal utc=yes
noxautologin twlflags=ssh:ntp
initrd /live/initrd2.img
title Tailwind-Live 1
root (hd0,1)
kernel /live/vmlinuz2 boot=live live-media=/dev/SDX2 union=aufs QUICKREBOOT=yes
hostname=tailwind username=baffin timezone=America/Montreal utc=yes
noxautologin twlflags=ssh:ntp
initrd /live/initrd2.img
## NOTE: the 2 'kernel' lines above are all one line!
## (some day you may need this ...)
## title Windows XP
## root (hd0,0)
## makeactive
## chainloader +1
install grub:
## create a local /boot so 'grub' does not complain: # mkdir -p /boot/grub # cp /usr/lib/grub/i386-pc/* /boot/grub ## start up grub and create new MBR # grub # root (hd0,3) # setup (hd0)
modify script /sda1/live/boot.sh to look like this at start:
#! /bin/bash ## This is a good place to mount any other required partitions ## i.e. : mkdir /data mount /dev/SDX4 /data ## This tells Tailwind-Live where to put the users account TWL_LINK="/data/tailwind_live_home"; ## this is the setup device (/dev/*) SETUP_DEV=""; ## this is the setup dir or mount point (if SETUP_DEV is not empty) SETUP_DIR='/data/twl_setup_dir'; ############ end of variable setup and customization #########################
un-mount file systems
#umount /live1 #umount /live2 #umount /data
You should now be able to boot your Tailwind-live computer without the DVD and it should come up and ask you for a password for your new username. If you did not change the username in menu.lst, then the password is 'bylot'.
To change the root password, open a shell and remove the file /data/twl_setup_dir/root.md5
and reboot. Tailwind-Live will ask you for a new root password when booting.
NOTE: The /dev/SDX2 partition can be used to switch to a new revision of Tailwind-Live. Don't
forget to include your changes to boot.sh when creating /dev/SDX2 .. then change the default value
to '1' in menu.lst and reboot!
Originally the idea was to have Tailwind-Live automatically detect the NVIDIA graphics chipset or the ATI chip set and load the correct support modules and extra packages.
It was soon found that some ATI or NVIDIA chip sets were not compatible with this approach and so it was clear that the GRUB menus would have to give the user full control over any attempts to load the graphics drivers.
Unfortunately, the early 'fix' to this was to define the GRUB boot parameters to
twlflags as noati and nonvidia which resulted in double-negative logic
when setting up the GRUB menus.
As of Tailwind-Live 0.8.4, these GRUB parameters have now been replaced with ati
and nvidia and the corresponding GRUB defaults changed to make more sense.
The main reason to switch to these driver is to support accelerated graphics which is especially useful for opengl x3d/vmrl direct rendering (dri). The FreeWRL browser for viewing and manipulating x3d/wrl worlds is included in Tailwind-Live and uses opengl. See the FreeWRL Demo menu item in the desktop 'graphics' sub-menu.
The default xserve-xorg video driver library that is included in Debian supports Intel and many of the earlier ATI chip sets automatically and the user should not need to specify an NVIDIA or ATI driver if this is the case.
Open a shell and type:
glxinfo | grep rendering
You should see "direct rendering: No" if you do not have
direct rendering capability.
If this is the case, try enabling the appropriate
NVIDIA or ATI driver as described next.
To enable the automatic loading of NVIDIA or ATI Drivers by Tailwind-Live, add the following flag to the boot parameters in your grub menu.lst file:
twlflags=nvidia
OR
twflags=ati
The NVIDIA and ATI drivers choosen are, by default, targeted at the more recent chipsets of these two companies.
There may be cases where the NVIDIA or ATI video drivers do not work for you.
You may only detect a problem when running an openGL application such as FreeWRL or glxgears (or fgl_glxgears in ATI).
Here is the beginnings of a issues list:
We need a bit more work on this topic to better document what chipsets/models are supported with these two graphics drivers and introduce one or two more drivers to pick up some of the more popular 'legacy' chipsets. We also need to work on the GRUB user interface to make it simpler to select the correct driver. Stay tuned!
To boot Tailwind-live on an Acer Aspire One, select the Aspire One menu item in the grub menu.
This will set the ASPIREONE=yes boot parameter which triggers code in the /etc/init.d/aspireone script to blacklist the modules jmb38x_ms and memstick. If these modules are not blacklisted, udev will crash.
I've tried letting the machine crash when the power dries up and it re-boots ok since just about everything is ram-based and the Tailwind-live boot files are all mounted as read-only. You won't want to do that too often if you have an SD flash mounted as writable and are working on a document!
See http://wiki.debian.org/DebianAcerOne for more info on card readers and fonts. The large font fix works great.
Windows systems like to set the computers hardware clock to local time but Linux systems prefer UTC (GMT) time because ntp (network time protocol) servers that Linux can interface with work (only?) with a UTC system clock.
This means that when you boot Tailwind-Live from a computer that runs Windows, the time may be incorrect.
If your computers hardware (bios) clock is on local time, set the grub boot parameter UTC=no and don't set
any timezones.
If you want to use the network to set your system clock, then set the twlflag boot parameter to include the flag ntp and set UTC=yes and set your timezone.
The Nordicwind Document Management System (NOAH) is a server-based documentation system that manages document revisions in a central repository.
NOAH's Web browser interface makes it easy for a user to create, update, lock, search and manage revisions of a family of documents for access by multiple users across many geographical sites.
NOAH is installed by default in Tailwind-Live and auto configures itself to store data in the
directory /home/noah.
THIS MEANS THAT IF YOU UPLOAD FILES IN NOAH THEY WILL DISAPPEAR WHEN YOU RE-BOOT TAILWIND-LIVE.
To store data permanently with Tailwind-Live, adjust your /live/boot.sh script to
mount the correct hard disk and create a link in /home so that noah points to
the correct directory on your hard disk.
i.e.
# mkdir /data # mount /dev/SDX4 /data # mkdir -p /data/noah # ln -s /data/noah /home/noah
To access NOAH go to http://localhost/cgi-bin/noah/
To approve new usernames and passwords, log in as user 'admin' with password 'blizzard' and go to 'manage users/groups'.
Don't forget to change your admin password to something more secure!
.. and read the Help and FAQs for NOAH (upper right corner of most NOAH pages or on-line at http://www.nordicwind.ca/noah
NOTE: that NOAH is access on port 80 (www) and that the firewall in Tailwind-Live limits access of port 80 to the local network and denies access beyond the GATEWAY.
IT IS UP TO THE USER TO VERIFY THAT THE TAILWIND-LIVE FIREWALL IS PERFORMING AS EXPECTED AND TAILWIND-LIVE and NORDICWIND INC. TAKE NO RESPONSIBILITY FOR FIREWALL CONFIGURATION ERRORS.
It is inevitable that you will find Debian packages that you would like to include with Tailwind-Live and so here is how you go about doing just that!
First thing to know is that Tailwind-Live is based on Debian/Lenny which was 'Testing' in the fall of 2008 (and I don't mean the markets ... or maybe I do );
Find the Debian package that you want to install and download it to your working Tailwind-Live OS. It will be a file ending in '.deb'.
Log in as root user (password 'windy') and run the command 'dpkg -i filename' where filename is the name of the .deb file (with extension).
Verify that the package works!
Now that you know that the .deb file works, put it in the twl_setup_dir/packages directory (assuming a hard disk boot) and reboot! Tailwind-Live will look in this directory and automatically install .deb files when it boots up.
Generally this will work fine for you (and it works for Skype too!) but be aware that if you don't have enough memory on your machine at some point you may run dry and your application(s) will get re-loaded from the '/live' directory possibly de-configuring your package.
... and let us know what packages you want in the next release of Tailwind-Live! If there are no legal issues (like there is with Skype), then we'll do our best to include it in the next release. Of course you may decide to spin your own version of Tailwind-Live and so read the next section!
In the latest releases of Tailwind-live, a lot of work has been done on including the modules needed for various webcams to work with skype. We'll add more documentation on this (and more fixes too) in the coming months.
There are two ways:
Tailwind-Live comes with an ssh server which is started on boot-up if
the GRUB kernel parameter twlflags has the ssh flag present
(i.e. twlflags=ssh).
This is generally the default GRUB configuration, but check if in doubt.
When the ssh server is started, it uses the pre-generated openssl keys that come with Tailwind-Live.
This is mostly a convenience because if Tailwind-Live generated a new set of keys on every boot, you would be forever getting 'Man-in-the-Middle' attack warnings from the ssh client on your other machines.
In some cases you may want to generate new ssh keys on boot up and so
add genkeys to the twlflags kernel parameter option. It might look like twlflags=ssh:genkeys.
If you are on a Windows system, then try something like 'Putty' (google). On a Linux OS, the usual approach is to open a shell window (sometimes called a command prompt) and use the ssh command .. something like:
ssh freewrl@192.168.0.52
Another way to connect to your Tailwind-Live computer is through VNC.
The VNC client installed in Tailwind-Live is xtightvnc and it is capable of tunneling through the ssh server on a Tailwind-Live computer.
For example, if you have one Tailwind-Live computer wanting to remotely display the desktop of another Tailwind-Live computer, open a shell and type the following command:
xtightvncviewer -via baffin@192.168.0.100 localhost
Notice the IP Address of the target Tailwind-Live machine .. it could also be a hostname if available.
Of course if the username is different, change that as well.
You will now be able to view the existing desktop and move the mouse and generally control that machine including shutting it down etc.
For Windows machines, look at ssvnc at sourceforge:
http://sourceforge.net/projects/ssvnc/
If you are not sure of your IP Address, then the wicd tool may tell you
(but not always .. there is a status/IP Address display bug that shows up on some computers).
The other sure way is to open a shell and login to root (su - ... password:windy) and
run the command ifconfig and you should see your IP Address in the line 'inet addr'
on your interface (usually eth0 if wired, wlan0 or ath0 if wireless)
Tailwind-Live has a firewall setup using iptables. See the firewall script at
/usr/share/tailwind-live/scripts/firewall-rules.sh and search for ssh.
If the Tailwind-Live firewall has been modified or does not suite your requirements, this
is where you make fixes and then put the script in the /live/twl_setup_dir/scripts_custom
directory.
Starting and stopping your network connection will start and stop the firewall.
You can see the firewall rules with the command:
iptables -L -n
(Use -n option for numeric so the domain names do not have to be resolved .. which can be slow)
The one thing that can cause a rejection of your xtightvncviewer connection is
if the network address changes (perhaps you changed the IP Address associated with that
computer, or switch from wired to wireless).
The simple solution to this is to log out of your X windows session and log back in. (If you are 'autologin', then you will first go to a command console and then after a small delay, the X Window System will restart). You should now be able to connect.
When xtightvncviewer connects to a remote Tailwind-Live desktop, it does
it by tunneling through ssh and starting x11vnc on the remote machine.
On the client side, its the environment variable VNC_VIA_CMD that xtightvncviewer
uses to start x11vnc on the remote machine. This variable is defined in /etc/profile
and looks like:
VNC_VIA_CMD="ssh -f -t -L %L:%H:%R %G x11vnc; sleep 5" export VNC_VIA_CMD
On the remote machine that xtightvncviewer is connecting to, x11vnc
gets it's settings from the .x11vnc configuration file that it expects
to see in the target users home directory.
-localhost -rfbport 5900 -display :0 -nopw -solid grey -timeout 60 -noxdamage
The -noxdamage option is to improve behaviour for openGL.
Let's summarize some info you may need .. depending on what you are doing:
root password: windy
Default Tailwind-live username: baffin password: bylot
Default Freewrl-centric username: freewrl password: x3d
How to change the boot up username: set GRUB kernel parameter username to new username
Link to manage printer(s) via CUPS:http://localhost:631
(If asked for a username its: root .. and you know the password now!)
How to print a file from the command line: lp 'filename' (not lpr ..)
How to make an iso file:
# mkisofs -R -b boot/grub/stage2_eltorito -no-emul-boot \ # -boot-load-size 4 -boot-info-table -o new.iso iso_dirwhere
new.iso is your new iso file and iso_dir is the directory
with all your files/dirs for this new iso file.
How to burn a DVD:
# growisofs -Z /dev/hdc xfce-oo.iso # .. where /dev/hdc is the DVD drive
How to check md5sum of DVD:
# ls -plat xfce-oo.iso to find the iso size
# divide this number by 2048 and call it 'n' (you could use bc -l for this math)
# md5sum xfce-oo.iso
# dd if=/dev/hdc bs=2048 count='n' | md5sum
# ... where 'n' is the 'n' calculated in step 2 and /dev/hdc is the DVD drive.
# Try to remember to write the number 'n' on the DVD to make it easier to calculate
# md5sum later ..
How to create a new password: go to the twl_setup_dir and remove the 'username'.md5 file. Next time you reboot,
Tailwind-Live will ask for a new password.
But wait! .. my twl_setup_dir gets regenerated every time I reboot! .. what now?
In this case, you need to go to the /live directory either on the DVD or on another hard disk and save the new 'username'.md5
file in the /live/twl_setup_dir. Obviously if it's a DVD, you'll have to re-burn your DVD. The better approach is to copy the
/live directory to a hard disk partition .. then you can easily change the 'username'.md5 file.
That's a pain, just tell me how to generate a 'username'.md5 file directly and I'll copy it to where it has to go!
OK .. go to /usr/share/tailwind-live/scripts and run the script:
# ./genpw.sh 'username' # grep SETUP_DIR /etc/tailwind-live.conf ## (to get location of new md5 file .. you know what to do now ...)
How to re-work the Tailwind-live filesystem.squashfs to add a new application, change a setup etc.
# apt-get update # apt-get install squashfs-tools ## ... copy /live/image/live/filesystem.squashfs to a working directory # unsquashfs filesystem.squashfs # (creates squashfs-root) # chroot squashfs-root # mount -t proc proc proc # mount -t sysfs sys sys ## ... make your changes .. ## (if you need Internet connectivity, make sure /etc/resolv.conf is correct!) # unmount /proc # unmount /sys # exit # rm new.squashfs #(if it exists) # mksquashfs squashfs-root new.squashfs ## (note .. if you forgot to unmount /proc and /sys, mksquashfs will fail.) ## (also note: remove OLD version of new.squashfs before mksquashfs) ## ... thats it!
NOTE: you could remove the /boot directory here as it is not needed when booting Tailwind-Live as the initrd and vmlinuz files are in the /live directory. You could save 20Meg.
Use Tailwind-Live Maker.
how to add another user:
#adduser 'newuser' #NOTE: not useradd as this would not use the /etc/skel (skeleton) files!Of course this new user would disappear after reboot!
The Tailwind-Live boot-up deviates from the standard Linux and Live-Debian boot-up to make customization of many user and machine specific features easier.
The boot process goes like this:
Linux boots normally until it is just about to start udev where upon, if ASPERONE
has the value "yes", it blacklists modules jmb38x_ms and memstick so udev does not crash.
Linux continues to boot normally until it gets to the end of the first multi-user runlevel (3)
and then it executes /etc/rc.local.
/etc/rc.local normally does nothing, but in Tailwind-Live it copies
/live/image/live/boot.sh to the directory /usr/local/tailwind-live and executes it.
NOTE: /live/image is the mount point for the boot medium (typically the DVD) and hence /live/image/live is the path to the directory live on the medium.
Assuming you have not customized boot.sh, the script copies /live/twl_setup_dir
to /home/twl_setup_dir (which is writable), reads some boot command line settings and
creates /etc/tailwind-live.conf with a number of parameters which subsequent scripts will
read. One of the more important parameters is $SETUP_DIR which is the path to the writable
version of twl_setup_dir.
boot.sh will eventually call the startup.sh script in /usr/share/tailwind-live/scripts but first it checks for script updates in $SETUP_DIR/scripts_custom and, if some are found, copies them
into /usr/share/tailwind-live/scripts.
Similarly, files in $SETUP_DIR/docs are copied to /usr/share/tailwind-live/docs,
files in $SETUP_DIR/freewrl/docs are copied to /usr/share/freewrl/docs
and files in $SETUP_DIR/freewrl/images are copied to /usr/share/freewrl/images.
This provides a way of updating documentation for Tailwind-Live without having to re-build the squashfs image from live-debian as well as a means of 'fixing' or customizing Tailwind-live scripts before they are incorporated into the squashfs image.
When boot.sh finally calls startup.sh, the output gets directed
to /var/tmp/twl.log. (Until then, output was being logged to /var/log/live.log.)
startup.sh is the main configuration script for Tailwind-Live and it does the following:
Create /etc/hosts if $SETUP_DIR/hosts exists to define local network host names.
Create /etc/X11/xorg.conf if $SETUP_DIR/xorg.conf exists to permit customization of
X windowing environment.
Setup true type fonts from Microsoft if $SETUP_DIR/msttcorefonts.tgz exists and you don't like
default liberation fonts.
(See /etc/skel/.fonts.conf for font mapping with liberation fonts).
Check for .deb packages in $SETUP_DIR/packages and install them.
This is where you can put packages to manage DVD security codes, Skype and other packages that can not be legally distributed with Tailwind-Live but are must-haves.
Check /etc/cups/ppd and see if $SETUP_DIR/cups.tgz exists and should be installed
to get printing to work.
Decide if sshd needs to be configured and started.
Check for $SETUP_DIR/apache2.default and configure and start apache2 web server and NOAH if it does.
Run setpw.sh script to set root and $USERNAME passwords if
$SETUP_DIR/root.md5 and $SETUP_DIR/$USERNAME.md5 exist. If they do not, prompt for passwords.
Run setuserhome.sh script to setup the $USERNAME home directory.
This is important if $TWL_LINK has been set and needs to re-direct the user home directory to
a non-ram disk location.
This script also checks for $SETUP_DIR/$USERNAME-dot and, if this directory exists
and if dot_overwrite is found in twlflags, it re-creates
the dot directories from there. This is useful for a 'granny'
computer where you want the defaults to come up exactly the same every boot.
Infact, this does not have to be restricted to 'dot' files because this script simply extracts all .tgz files it finds in the $SETUP_DIR/$USERNAME-dot directory. If $SETUP_DIR/$USERNAME-dot does NOT exist it will use $SETUP_DIR/default-dot if it does exist.
Adjusts /etc/sudoers to permit users to call shutdown and stops any user from getting
root access through sudo.
Sets up common tool links for things like the spreadsheet and word-like docs for XFCE4 panel.
(We should look at /etc/alternatives as a better way to do this ...)
Check twlflags for video options and install/enable NVIDIA or ATI graphics drivers if appropriate.
Run setupnetwork.sh to setup the network, start dhclient with eth0 if possible, setup firewall and configure WICD (wireless controller).
Check twlflags to see if this is a FreeWRL centric boot for a FreeWRL Demo DVD and if it is
adjust the XFCE4 startup to do the 'FreeWRL' thing.
If $SETUP_DIR/X* files exist, copy to /etc/X11/xdm. This is used to customize
appearance of the xdm login screen.
FINALLY, if this is a login boot (noxautologin is in GRUB kernel command line), then start xdm and exit.
ELSE if this is an xautologin, then simply exit startup.sh
The final step in boot-up is done by the /etc/profile script which is run when a user
first logins in to a shell.
Live-Debian is setup to have the USERNAME automatically spawn and login to /dev/tty1 through tty6.
The Tailwind-Live addition to the /etc/profile script
checks to see if it is /dev/tty1 and if it is, and the USERNAME is correct and AUTOLOGIN is "yes"
and a few other things are ok, then it runs startx which starts X and the XFCE4 window manager
without any login prompt.
(content yet to be written)
You can download a Tailwind-Live Make CD-ROM image here that's 85Meg in size and then make your own super-sized DVD of Tailwind-Live.
When booting Tailwind-Live from DVD or CD-ROM, the GRUB boot loader is the first thing you see.
Here is a link to the help files accessible from the menus in the GRUB boot loader.
To simplify enabling some of the Tailwind-Live boot options, a kernel
option twlflags is used where each option is separated with a ':'.
For example, if you want to set the ssh and utc options,
it would look as follows:
twlflags=ssh:utc
Here is a summary of the currently used twlflags parameters:
freewrl : set FreeWRL-centric boot using the FreeWRL splash,background and home page.
ssh : starts ssh server - generates ssh keys if they do not exist.
ati : load ATI video driver (recent video cards only)
nvidia : load NVIDIA video driver (recent video cards only)
genkeys : generate new ssh keys on boot even if $SETUP_DIR/ssh-keys.tgz
exists. You can use mktgz-ssh-keys script to create a new
$SETUP_DIR/ssh-keys.tgz for next reboot.
ntp : set clock with ntp when network starts.
dot_overwrite : enable dot file/dir overwrite on boot in users directory. See dot_overwrite for more info.
New for v0.8.5 is a graphical language/keyboard tool which is accessible on the bottom toolbar
once you have booted into Tailwind-Live. Look for the
icon!
The language/keyboard mapping is controlled by the file lancodes.txt which is
located in the directory /usr/local/etc.
If you want to alter this file for different
language selection, edit it and place it in SETUP_DIR and Tailwind-live will see it on boot-up
and install it for you.
NOTE that this graphical language/keyboard tool is available in xdm if you
choose to disable autologin.
If you would rather control language and keyboard through GRUB, you will need
to set the locale and keyb
boot parameters to your keyboard/language of choice.
Some examples:
locale=de_DE.utf8 keyb=de for German (quertz keyboard)
locale=fr_FR.utf8 keyb=fr for French
locale=sv_SE.utf8 keyb=se for Sweden
When the grub menu comes up, hit 'e' to edit and scroll down one line to
the kernel line and hit 'e' and add locale=de_DE.utf8 keyb=de to the end
of the line and hit RETURN and b for boot.
You should boot into a german keyboard (qwertz) and various locale-enabled windows will be in german. I see that iceweasel does not show german :( but many other tools do.
In the future, the plan is to add a better way to select keyboard/language preferences on bootup through a more 'intellegent' GRUB menu.
Tailwind-Live can be booted in a FreeWRL-centric mode which brings up FreeWRL graphics on the desktop and splash screen as well as opening the browser on the FreeWRL documentation.
The GRUB boot loader is where you specify that you want a FreeWRL-centric boot by adding the argument 'freewrl' to the 'twlflags' parameter as shown:
twlflags=freewrl
This section describes how to customize this FreeWRL-centric environment.
When Tailwind-Live boots in 'freewrl' mode,
it copies all files in /live/twl_setup_dir/freewrl/docs
to directory /usr/share/freewrl/docs and sets the browser home page to
/usr/share/freewrl/docs/index.html.
If you want to change or add documentation files to the FreeWRL browser home page,
you change the content of the /live/twl_setup_dir/freewrl/docs on your boot media.
Similar to the docs directory, Tailwind-Live copies the content in
/live/twl_setup_dir/freewrl/images to /usr/share/freewrl/images directory.
When booting for 'freewrl', Tailwind-Live
also copies /usr/share/freewrl/images/freewrl-splash.png to
/usr/share/tailwind-live/splash.png which the desktop manager uses for the splash screen.
Notice that it is a .png file.
Similar to the docs directory, Tailwind-Live copies the content in
/live/twl_setup_dir/dot-config to /home/freewrl/.config directory
for the username 'freewrl'.
The key file for managing the desktop graphics is the file
.config/xfce4/mcs_settings/desktop.xml.
Once you have your desktop graphics and other options working, simply copy this desktop.xml
and the appropriate graphics files to the appropriate directories in
live/twl_setup_dir/freewrl and reboot.
Tailwind-Live, like many Linux Distros, is a compilation of many programs and applications.
In general, most of this software is free to download and use and in many cases it is also free and unrestricted for users to modify and redistribute the modified code.
Tailwind-Live is based on the Debian Linux distribution which prides itself in producing 'free' Linux distros. See http://www.debian.org/social_contract.
That said, there is code in Tailwind-Live that is 'non-free' by Debians definition and thus there are some licenses in this Tailwind-Live distro that you may want to be aware of.
The list is:
FreeWRL : FreeWRL copyright.txt
Adobe Flash Player :
http://www.adobe.com/products/eulas
(Found in iceweasel plugins directory)
RealPlayer11GOLD : LICENSE
XnView by Pierre e Gougelet : ReadMe.txt
NOAH : NOAH license
Everyone else:
ls /usr/share/doc/*/copyright
The Tailwind-live documentation is concentrated in one file called manual.html ... which is THIS html page.
To conduct a search in THIS document, use the search function in your browser which is usually accessed with the Ctrl-F key combination (opens search window at bottom of the Iceweasel browser). The Ctrl-G key combination repeats a search.
In Firefox/Iceweasel/Mozilla products, the forward slash (/) opens a temporary 'quick' search window (a vi carry-over).
You may also find the Sitemap useful.
dot_overwrite.
twlflags to GRUB help files and added a summary to this manual in the GRUB section.
| Copyright © 2007-2009 Nordicwind Inc. All rights reserved. | Legal Statement | Privacy | |
| Verbatim copying and distribution of this entire article is permitted in any medium without royalty provided this notice is preserved. |