Moma's notes.                             home: www.futuredesktop.org                       updated: June 2004 

0)  Index of Installed Redhat 9 files...
Another popular package manager  yum...
     <snip>

    # man  apt-get       ( manual and  info pages  )
    # info  apt-get                  

Let's use it:
    # apt-get update       ( refresh internal rpm package index.   Run this quite often, regularly )

    Available RPM (APT) packages:
    http://freshrpms.net/packages/     

    Examples:
    # apt-get  update                            ( update internal package index )
    # apt-get  install mplayer               ( installs new or updates existing mplayer  package )
    # apt-get  install mplayer-skins

    # apt-get  dist-upgrade         ( update all packages to newest version.  Takes a while to run... )

    Search for a program.  Show info.
    # apt-cache  search   program-name             e.g  apt-cache  search  cad
    # apt-cache  show   package-name               e.g  apt-cache  show  qcad

    Remove a package
    # apt-get remove  package-name                  e.g  apt-get  remove  amsn

   Synaptic is a GUI (Graphical User Interface) for APT
   http://www.nongnu.org/synaptic/

   # apt-get  install  synaptic

   # synaptic     (to run it)


   Some problems:

    # apt-get install  mplayer
    apt-get complained that  "lame-libs-3.92-3" conflicted with an existing library.
    Executing RPM (-Uvh)...
    file /usr/lib/libmp3lame.so.0.0.0 from install of lame-3.93.1-fr2  conflicts  with file from package lame-libs-3.92-3
    E: Sub-process /bin/rpm returned an error code (5)

     - I removed the file from  /usr/lib/   
     - Runned:  #  /sbin/ldconfig

     - It did not help (?)
       So downloaded newest  (lame-3.93.1-fr2.i386.rpm) from rpmfind.net  and installed it with
       # rpm -i  --force  lame-3.93.1-fr2.i386.rpm

       And apt-get was happy.
       # apt-get install mplayer
       # apt-get install w32codec       ( To play closed, proprietary Windows Media Player formats (*.avi) )
                                                         ( Check if win32 codecs were put in  '/usr/lib/win32/' )
       # apt-get install mplayer-fonts;   apt-get install  transcode;    apt-get install mplayer-skins

       # gmplayer  (to run)                     ( Take a look: Desktop picture1...    picture2... )
  
        ----------

   
       I wanted to play some movies with gmplayer.

       Got this error:
       Error opening/initializing the selected video_out (-vo) device.
 
       This machine hasn't accelerated video card, so I think, need to use  x11 or xv output.
       Tested first mplayer directly from command line.

       $ mplayer -vo x11 -framedrop -dvd 1  md305c3y.mov         (OK)
       $ mplayer -vo x11 -framedrop -dvd 1  h1.avi    (OK)

       And added these lines into  "/usr/local/etc/mplayer/mplayer.conf"    (?? check in manual if this is right.    'man  mplayer' ??)
       Alternative place is "$HOME/.mplayer/config"  file.

       # cat  /usr/local/etc/mplayer/mplayer.conf
       # Write your default config options here.
       vo=x11
       # flip=yes         (uncomment this and do neck-wrestling)
       mf=type=png:fps=25

        See also: MPlayer-redhat9...


2) Re-installed also xmms (X mulimedia system).  Had some problems with mp3 files,  skins etc.

        2a) Removed old  xmms installation
             # apt-get  remove  xmms       (rpm -e  xmms)

       2b) Deleted old buggy   ~/.xmms/  folder
             # rm -fR ~/.xmms
    
       2c) Re-installed xmms
             # apt-get  install  xmms
 
       2d) RedHat's  xmms package does not provide MP3 due to licensing issues,
             so downloaded (and rpm -ivh)  xmms-mpg123-1.2.7-21.i386.rpm (mpg123 plugin)  and
             xmms-skins-1.2.7-21.i386.rpm (skin package)  from  http://havardk.xmms.org/dist/xmms-1.2.7-rh8-rh9-rpm

        Easy way:
         # apt-get  install  xmms-mp3
         # apt-get  install  xmms-skins

         http://www.xmms.org  (RedHat 9)        



3)  Install RealPlayer

Browse to player.helixcommunity.org and
0) Download RealPlayer Alpha,  Linux x86 (Legacy),   Installer.


[[
   Note: You could also install HelixPlayer.
   Please read: Which of RealPlayer or HelixPlayer is right for me ?

  I choose RealPlayer because it says:
  The RealPlayer 10 for Linux builds on top of the Helix Player and will include RealAudio,
  RealVideo, MP3, Flash, MPEG-4(fee-based) and other non-open source components.

 
Good -;)
 
Also MPlayer or Xine do MPEG-4.
]]

1) Goto CLI (command line) and become an admin (root) user.
$ su -

2) Make the file executable and run it
# cd  /home/moma/download

# chmod  +x  legacy-realplay-0.3.0.120-linux-2.2-libc6-i386.bin

# ./legacy-realplay-0.3.0.120-linux-2.2-libc6-i386.bin

It asks for a path. I installed it in  /usr/local/RealPlayer

(It asked one or two other questions, but I couldn't respond because it simultaneously outputted ........ dots.
  Obviously, it failed to create links to mozilla/plugins.  So in step 3) we fix it manually)


3) Copy or link RealPlayer plugins for Mozilla browser
    Note:  Check your Mozilla installation directory. In many cases it is /usr/lib/mozilla/.  Check the location first.

#  ln -s  /usr/local/RealPlayer/mozilla/nphelix.so   /usr/local/mozilla/plugins/nphelix.so
#  ln -s  /usr/local/RealPlayer/mozilla/nphelix.xpt   /usr/local/mozilla/plugins/nphelix.xpt

File permissions should be 755. Check'em.
# ls -l  /usr/local/RealPlayer/mozilla

total 192

-rwxr-xr-x  1 1000 1000 183726 May 18 00:52 nphelix.so*
-rwxr-xr-x  1 1000 1000   5063 May 18 00:52 nphelix.xpt*


4) Restart mozilla browser (save your (unsaved) mozilla mail if any open)
# killall mozilla-bin

5) Back to normal user and test mozilla and realplay from CLI. (watch for any warnings,  messages)
^d

$ mozilla  &

$ realplay &

-------
Select menu [Help], [About plugins] in Mozilla and check the plugin list.
This page... should detect RealPlayer too.

Turn your radio... on.
Test also video capabilities here...

An ugly message popped up and reported that
"Mozilla  and realplayer were compiled with diff. versions of gcc".  Who cares, it works!
Why it hasn't the "[x] Do not show this message again"  option ?

Anyway:  Here is the Real and Helix help page...

And many thanks to Real,  You're on the right track !

-------------------------------------------------------


Try this installer... 
if it fails completly.        Reading:   Test driving Real for Linux...

-------------------------------------------------------

(( 
Obsolete, old lessions:
Ok, 10 minutes later...
I download the HelixPlayer source  and recompiled it with gcc 3.2   (check yours:  $ gcc  --version)

$ gcc --version
gcc (GCC) 3.3.2 (Mandrake Linux 10.0 3.3.2-6mdk)

$  cd  /home/moma/download
$  wget  https://helixcommunity.org/download.php/415/hxplay-0.3.0.123-source.tar.bz2

$  tar  -xvjf   hxplay-0.3.0.123-source.tar.bz2

$ cd  hxplay-0.3.0.123-source
$ make
$ su root
...))
<old stuff  old stuff> Download plugins for Netscape and Mozilla....<old stuff>



4)  Installing Java (JRE) support. RedHat 9 or Mandrake 9/10.X,   Fedora Core 1, 2, 3

Let's try to install Sun's Java system first.


0) Browse to  http://java.sun.com/j2se/1.5.0/
( http://java.sun.com/j2se/1.5.0/download.jsp ) and Download JDK.   (Java Development Kit,  JDK)

The file is Linux self-extracting file (jdk-1_5_0-linux-i586.bin).


Read also the "Installation Instructions" on http://java.sun.com/j2se/1.5.0/install.html

1)  Goto CLI (command line) and become a root-user
$ su -
password:


2)
Create a java directory
# rm -fr /usr/local/java/
# mkdir  /usr/local/java

3) Move the  jdk-1_5_0-linux-i586.bin  into  /usr/local/java  and execute it (as root user)

# cp /home/moma/download/jdk-1_5_0-linux-i586.bin   /usr/local/java

#  cd /usr/local/java

# cdmod  +x  jdk-1_5_0-linux-i586.bin

# ./jdk-1_5_0-linux-i586.bin
...
...
 
 4) After installation
You should now have these files in

# ls -l   /usr/local/java
drwxr-xr-x  9 root root     4096 Sep 15 15:17 jdk1.5.0/
-rwxr-xr-x  1 root root 46087154 Nov 10 20:43 jdk-1_5_0-linux-i586.bin


Link java-plugin into Mozilla plugin directory
Note it's  /jdk1.5.0/.  Check the spelling please.

# rm  /usr/local/mozilla/plugins/libjavaplugin_oji.so
# ln -s /usr/local/java/jdk1.5.0/jre/plugin/i386/ns7/libjavaplugin_oji.so   /usr/local/mozilla/plugins/libjavaplugin_oji.so

Link necessary (help) libraries that MUST be available at runtime. We are linking a whole directory here.
# ln -s /usr/local/java/jdk1.5.0/jre/lib/i386   /usr/lib/i386

Check it
# ls -l  /usr/lib/i386/

5) Make that (lib) directory known to the runtime system. Add it into  /etc/ld.so.conf.
# grep  "/usr/lib/i386"  /etc/ld.so.conf  ||  echo "/usr/lib/i386"   >>  /etc/ld.so.conf

Update library cache
# ldconfig

6) Link  java and javac binaries  (in case you'll run normal java apps or develope some)
# rm -f  /usr/bin/java  /usr/bin/javac
# ln -s  /usr/local/java/jdk1.5.0/bin/java   /usr/bin/java
# ln -s  /usr/local/java/jdk1.5.0/bin/javac   /usr/bin/javac

7) Test  the Java plugin for Mozilla

Back to normal user again
^d
Close all mozillas and restart

$ mozilla
Watch for any warnings,  error messages !

Further,  read these postings...


-------------------------------------------------------------------------------------------------------------------------
-------------------------------------------------------------------------------------------------------------------------
Continue with these lines if the Sun's Java fails to work.
-------------------------------------------------------------------------------------------------------------------------

I had installed this Java (JRE)...  but it didn't work properly within Mozilla browser.
Had also tried Sun's Java plugin... but no success.

When starting
$ mozilla
It reported this error among others
    LoadPlugin: failed to initialize shared library /usr/local/mozilla/plugins/libjavaplugin_oji.so
                     [/usr/local/mozilla/plugins/libjavaplugin_oji.so: undefined symbol: __vt_17nsGetServiceByCID]

Seems like the
libjavaplugin_oji.so is compiled with a different (earlier) gcc version ?
------------
Anyway, here is a definitive recipe for how to make it right.

1) Download BlackDown java.
Browse to http://www.blackdown.org and download 
j2re or j2sdk from the nearest mirror site.
Eg. I got it from ftp://sunsite.dk/mirrors/java-linux/JDK-1.4.2/i386/rc1/j2sdk-1.4.2-rc1-linux-i586-gcc3.2.bin

The j2re.1-4... file is for runtime ONLY. (it installs VM, Java runtime binary executable)
 ! The
j2sdk-1-4... file is for BOTH Java Runtime and Java Development.
                           It contains javac compiler + complete Java (VM) runtime binary.  So get
j2sdk-1-4... if you want it all.
-------------
Check your gcc.
$ gcc --version
gcc (GCC) 3.3.2 (Mandrake Linux 10.0 3.3.2-6mdk)
This Mandrake10 box has gcc v3.3 and Mozilla is of v1.7.
------------

Depending on your browser setup, you may need to press the [SHIFT]-key while clicking on the file for download.
------------

2) Goto command line (CLI) and...

Become a root user
$ su -

Change to download folder
# cd  /home/moma/download

Make the file executable and run it
# chmod  +x  j2sdk-1.4.2-rc1-linux-i586-gcc3.2.bin
# ./j2sdk-1.4.2-rc1-linux-i586-gcc3.2.bin       (press spacebar to browse thru the text)
------------

3) Move the resulting directory (j2sdk1.4.2/)  to ...

# mkdir -p  /usr/local/java/blackdown

# mv 
./j2sdk1.4.2   /usr/local/java/blackdown/

Check  it
# ls -l 
/usr/local/java/blackdown/
drwxr-xr-x  8 1000 1000 4096 Dec 17 07:12  j2sdk1.4.2/
------------

4) Set permissions
# chmod  755  /usr/local/java/blackdown
# chmod  -R  755  /usr/local/java/blackdown/j2sdk1.4.2/
------------

5)  Create (soft) link to libjavaplugin_oji.so.  Remove the old one first.
     Note:  Check your Mozilla installation directory. In many cases it is /usr/lib/mozilla/.  Check the location first.
# rm  /usr/local/mozilla/plugins/libjavaplugin_oji.so
# ln -s  /usr/local/java/blackdown/j2sdk1.4.2/jre/plugin/i386/mozilla/libjavaplugin_oji.so   /usr/local/mozilla/plugins/libjavaplugin_oji.so

------------
[[
6) Also, I had to re-create the link to mozilla binary.
    Note:  Check your Mozilla installation directory. In many cases it is /usr/lib/mozilla/.  Check the location first.
# rm  /usr/bin/mozilla  && ln -s  /usr/local/mozilla/mozilla  /usr/bin/mozilla
]]

Kill and restart all mozilla instances
# killall  mozilla-bin

Back to normal user again  
^d

7) Restart mozilla. Note: you should not see any warnings about libjavaplugins.
$ mozilla

In Mozilla, select menu [Help], [About plugins] and check the plugin list.
This page...
should detect Java.
(or check it here...)

---------
Finally:
Link java and javac binaries to /usr/bin/
Java applications (such as LimeWire...) need to find the java (VM) binary.

$ su -
# rm -f  /usr/bin/java  /usr/bin/javac
# ln -s  /usr/local/java/blackdown/j2sdk1.4.2/bin/java   /usr/bin/java
# ln -s  /usr/local/java/blackdown/j2sdk1.4.2/bin/javac   /usr/bin/javac

Test'em
$ java
Usage: java [-options] class [args...]
           (to execute a class)

And taste your first? cup of fine Java...     
hmm,  file names do really matter in Java.
$ javac HelloWorldApp.java
$ java HelloWorldApp
Hello World !

- OK.

//   <
old stuff  old stuff>  Read Mozilla java-plugin success story...             


5)  Installing Macromedia FlashPlayer

FlashPlayer.7..  or  FlashPlayer...

Let  Federica... test your flash or listen to  daddies...   or watch a  Disney...



Other stuff:

* SHRED = Delete files in a secure manner  (securely & finally)
$ shred  your_file.png		(scrambles, overwrites the file content, but will not delete the file itself) 
$ shred -u your_file.png (overwrites the file content, deletes it too. The file is virtually impossible to recover)
$ man shred



* Compare files and directories. Check newly burned CD
Diff  compares two files and reports found differences.
It can also compare content of directories recursively.

$ man diff
$ info diff

$ diff file1.txt  file2.txt

Check content of a newly burned ISO CD
#  mkdir /mnt/iso

Mount and map (eg. EduPack-CD1.i586.iso)  ISO file to  /mnt/iso directory.
# mount  -t  iso9660  -o loop  EduPack-CD1.i586.iso  /mnt/iso

Mount also cdrom if not already done
# mount  /dev/cdrom
or :   mount -t  iso9660  /dev/cdrom   /mnt/cdrom

Compare /mnt/iso and  /mnt/cdrom        (silence is OK)
# diff --brief  -d   -r  /mnt/cdrom  /mnt/iso

# umount /mnt/iso

Her's how to check a (newly) burned CD...  +  Testing a CD...(rawread script).   You have the MD5SUMs? 

See also man page for:
cmp,  comp,  diff3



* Logitech wheel mouse:  Roll up/down wheel didn't function properly.
Changed :   "PS/2"  to  "IMPS/2"  in   /etc/X11/XF86Config

Section "InputDevice"
    Identifier  "Mouse0"
    Driver      "mouse"
    Option      "Protocol" "IMPS/2"
    Option      "Device" "/dev/psaux"
    Option      "ZAxisMapping" "4 5"
    Option      "Emulate3Buttons" "no"
 EndSection

(and relogin to X with: CTR + ALT + BACKSPACE)
 Xserver is restarted.

- OK

* Mouse trick

Highlight, select a word or web address in any application; in a web browser, file listing in a terminal etc.

Goto Mozilla browser and press down the middle mouse button (on this mouse it`s the roller).
The browser should pick up the word and do a search.


* How to change the Desktop and Display manager  (GNOME / KDE  / XFCE  / ICEWM)

Edit 
/etc/sysconfig/desktop   ( global )
Or edit $HOME/.desktop    ( private )  
DESKTOP="KDE"
DISPLAYMANAGER=KDE

--------------------------------------------
Discussion on a newsgroup:

Q: What do I write into "/etc/sysconfig/desktop" to make XFCE-4 to become default Desktop manager.
http://xfce.org/

A: I run Mandrake-10 and XFCE, GNOME, KDE and iceWM...

Check first the /etc/sysconfig/desktop.

$ cat /etc/sysconfig/desktop

DISPLAYMANAGER=GNOME
DESKTOP=xfce4
----------------------------

Check also if the user has own (local) ~/.desktop file.
It will override the values in /etc/sysconfig/desktop.

$ cat $HOME/.desktop
DESKTOP=icewm

Remove or edit the file.
----------------------------

Tips 1)
I you want to know what system config files are involved.  Go first into
the graphical system tool (in Mandrake start: drakconf),
and activate: Display -> Display Logs.

And you can see what config files each operation touches. Later you can
do the same from CLI.



Tips 2:

Playing with several DISPLAYs (same XServer, several displays. )

Note:
o Virtual terminals (text consoles) will be CNTR + ALT + F1...F6.
o XServer Displays (DISPLAY :0, :1, :2...:n) will be in CNTR + ALT + F7...F9,...Fn+7
-----------------------


o Press CNTR + ALT + F1 (or any other F1..F6 for a new terminal/console)

o Login as a normal user

Start a new X DISPLAY :1, with the KDE Desktop Manager.
$ echo "DESKTOP=KDE" > ~/.desktop
$ startx -- :1 &


Start a new DISPLAY :2 with the GNOME Desktop Manager.
$ echo "DESKTOP=GNOME" > ~/.desktop
$ startx -- :2 &


Start a new DISPLAY :3 with the XFCE Desktop Manager.
$ echo "DESKTOP=xfce4" > ~/.desktop
$ startx -- :3 &

etc.

You can now jump between the various X DISPLAYS.
Press CNTR + ALT + F7 (display :0) and CNTR + ALT + F8.. F9...F10...

Use CNTR + ALT + BACKSPACE to kill the DISPLAYS.
or brutally kill the job when you're in the terminal.

$ jobs -l
$ kill #PID
-----------------------


What is the difference between "Desktop" and "Windows Manager"

Eg. in terminal 1 (ALT + CNTR + F1)

$ xinit /usr/X11R6/bin/xterm -- :1

(The display is shown in virtual terminal CNTR + ALT + F8)

You're now running a X-application (xterm) without any Desktop manager.

Windows manager in action:
The window is shown without any borders, no way to resize, move or minimize the windows etc.
No handy toolbars or menus either. Why?
Because these are typical tasks of a Desktop Manager suchs as KDE, GNOME, XFCE.

Desktop is an application that runs on the top of X's Windows system.

You can always start a Desktop System from CLI (command line)
In the same xterm window, write

$ start[Press TAB-key]
starticewm startfluxbox startkde startxfce4
startgnome startwindowmaker

Select and start your Desktop Manager.

$ startxfce4 &

--------

Try also other X apps you find in /usr/X11R6/bin/ (xcalc, xclock...)
$ xinit /usr/X11R6/bin/xmessage "Hello. Are you OK or not OK ?" -- :2

Wanna edit code without any (memory eating) Desktop system ?

$ xinit /usr/X11R6/bin/xedit -- :2

$ locate xemacs
/usr/bin/xemacs
....
$ xinit /usr/bin/xemacs -- :2 :: whoooo. I'll never return to a Desktop systema again!

Browser is all your Desktop.
$ locate mozilla
/usr/bin/mozilla

$ xinit /usr/bin/mozilla -- :3
$ xinit /usr/bin/mozilla -- machinename:3


You can send the Windows to any DISPLAY on your local PC or to other PCs over network.

$ xclock -display alice_pc:0 &

$ display your_holiday_image.jpg -display :2
$ display your_holiday_image.jpg -display localhost:2


X is nettwork transparent ! Hmm, very epressive.


Many thanks to Marcel ( http://www.marcelgagne.com ) for his articles.

Next: Become familiar with XNest... (= nested XServers or nested Displays? Not quite sure ?)

XNest: http://www.linuxjournal.com/article/7298



* Looking good in a terminal window
<Work in progress>

Changing the background image of konsole application (in KDE desktop)

Start the "konsole" app and do menu selection:  Settings -> Configure Konsole

On [Session]-tab,
Select session name "Shell", and set Schema: eg. "Transparent, Dark Background".   Press [OK] and restart the konsole app.
And the desktop wallpaper is shown through
the konsole window as a transparent image.  Changed your wallpaper?  Oh my, it's looking good !

--------

Select also [Schema]-tab and create your own schemas with background pictures and colors.

--------


Changing the background image (theme) on a CONSOLE tty terminal (eg. when logged on
CNTR + ALT + F1).

0) It seems to me that splashscreen and raw-console backround images are closely related, 
ie. thee are controlled by the same config file.

And what I know, a vanilla kernel must have a patch for the splashscreen mechanism.

Ref.  http:///www.bootsplash.org

---------------------
Mandrake has a shell script that can change the CONSOLE theme.

Browse to  /usr/share/bootsplash/

As root user,

# ls -l
drwxr-xr-x  2 root root 4096 May 14 12:45 scripts/
drwxr-xr-x  6 root root 4096 Jun  8 09:47 themes/

# cd scr*

# ls -l
rwxr-xr-x  1 root root 4323 Mar 19 17:55  detect-resolution*
-rwxr-xr-x  1 root root 1527 Mar 19 17:55 make-boot-splash*
-rwxr-xr-x  1 root root 1536 Mar 19 17:55 remove-theme*
-rwxr-xr-x  1 root root 1038 Mar 19 17:55 rewritejpeg*
-rwxr-xr-x  1 root root 3888 Mar 19 17:55 switch-themes*

And run
# ./switch-themes

  -c:  Tell you the current themes
  -l:  List themes available.
  -u:  Update current theme.

# ./switch-themes -l

  Mandrake
  plf1
  plf2
  plf5

Note: The plf themes come from PLF's (Penguin Liberation Front) repository.  Read below 
xx)

Change the theme.
# ./switch-themes plf5

That's it.  You may need to reboot?
------------

And
the following listings may help you to understand how it actually works.

1) Check /etc/sysconfig/bootsplash file.
This file should have settings for bootsplash THEME and CONSOLE LOGO.
The THEME name is the same as *theme folder name* in  steps 2) and  3).

THEME=Mandrake
SPLASH=auto

# LOGO_CONSOLE=yes
LOGO_CONSOLE=theme

---------------------

2) Check the images folder in /usr/share/bootsplash/themes/

# ls -l /usr/share/bootsplash/themes/Mandrake/

# ls -l /usr/share/bootsplash/themes/Mandrake/images/

Note There should be console background images for three (3) different screen resolutions.

vt-800x600.jpg
vt-1024x768.jpg
vt-1280x1024.jpg

The other images are shown during the boot process.

((
   I think you'll determine which of these is used with "vga=xxx" option in
   /boot/grub/grub.conf (or menu.lst) file.  Not very sure about this ! 
))

------------------------------------------

3) Check config-files in /etc/bootsplash/themes/
Again, the THEME is the same as directory name.

# ls -l  /etc/bootsplash/themes/Mandrake/config/

------------------------------------------

4) Generate a new (pure) /boot/initrd-2.x.y-xxmdk.img

Run first mkinitrd without any options. It will give you a workable example on the last line.

# mkinitrd
...

I would run
# mkinitrd /boot/initrd-2.6.3-15mdk.img  2.6.3-15mdk

((
Just for info::
You can also run 
# mkinitrd /boot/initrd-2.6.3-15mdk.img `uname -r`
or
# /usr/share/loader/make-initrd  `uname -r`

The `uname -r`  gives the name+version of current kernel.
))

------------------------------------------

5) Check the new initrd-2.xxx  file
ls -l /boot/*img

rw-r--r--  1 root root 163136 Aug  2 21:07 /boot/initrd-2.6.3-15mdk.img
lrwxrwxrwx  1 root root     22 Aug  2 17:08 /boot/initrd.img -> initrd-2.6.3-15mdk.img

Note:
On this machine there is also a link to /boot/initrd.img because the grub.conf refers to it.  Do it if you need it, otherwise no.
# ln -s /boot/initrd-2.6.3-15mdk.img  /boot/initrd.img

------------------------------------------

6) Add bootsplash and console-background CONFIG file into newly created /boot/initrd-2.6.3-15mdk.img.

# /sbin/splash -s -f /etc/bootsplash/themes/Mandrake/config/bootsplash-800x600.cfg  >> /boot/initrd-2.6.3-15mdk.img

Note: Here we use the THEME Mandrake, and CONSOLE size of 800x600 pixels.

Investigate: Can you add several configs (1024x768.cfg etc) by repeating this command ?
Can we add other resources into initrd.img ?

------------------------------------------

7) Check your /boot/grub/grub.conf  (or menu.lst or lilo.conf ...)

Title Mydrake-2.6.3-15
    kernel (hd0,0)/boot/vmlinuz-2.6.3-15mdk devfs=mount acpi=ht resume=/dev/hda5 splash=silent vga=788  root=/dev/hda1 initrd (hd0,0)/boot/initrd-2.6.3-15mdk.img

(( Not sure how much the vga= parameter is related to 800x600 in step 6) ?  
   Need to investigate this more thoroughly later.
))


The (possible) values are:
  vga=788  => 800x640
  vga=791  => 1024x768
  vga=794  => 1280x1024

------------------------------------------

8) That's about it... I think !

Ref.
 o Visit www.bootsplash.org
 o Google for "console background mandrake bootsplash"

------------------------------------------

xx)
This machine has these packages (splash/console themes) installed.

# urpmq splash
bootsplash
bootsplash-plf           (PLF themes)
bootsplash-themes    (many nice themes)

You may need to set your urpmi repositories if you cannot install or  find'em.
-> http://urpmi.org/easyurpmi

Note:

You can create your own themes and console-background images.
Just convert the images appropriately.

# convert  big_summer.jpg -resize 800x600  summer_800x600.jpg
...

# cp summer_800x600.jpg   /usr/share/bootsplash/themes/THEME-NAME/images/vt-800x600.jpg
# cp summer_1024x768.jpg   /usr/share/bootsplash/themes/THEME-NAME/images/vt-1024x768.jpg
...

And repeat steps 4) to  6).
 
- (mostly) OK


* Login message (Greeting message)

/etc/motd...   
Message  othe  day.

Linux can show a greeting message when you logon a (text) console (ALT  +  CNTR  +  F1...F6)
/etc/motd is a pure text file.   Change the file and

- Just say hello or welcome.
- Add a reminder or warning.

Study also /etc/issue

Or create a  /etc/nologin   ;-)
If the user is not root, and if /etc/nologin exists, the contents of this
file are printed on the screen, and the login is terminated.  This is
typically used to prevent logins when the system is being taken down.


$  man motd
$  man issue
$  info issue

And do cram content of the /etc...   (...)



* Login and shell environment

What are the .bash_profile and .bashrc files.

These hidden shell-script files are private to the login-user and they reside in the user's $HOME directory.

$ cat  ~/.bashrc
$ cat  ~/.bash_profile

$HOME/.bashrc
is executed when user opens a new shell (window),  eg. by starting a xterm or konsole.
You normally add your own (shell) settings in this file.

$HOME/.bash_profile is executed on login.  It sets environment for the login-session.  It also runs the user's  ~/.bashrc.

Note: These scripts can call a /etc/profile script which has common settings for all users on that server.

Read more here...

Read also this newsgroup message...

CLI = Command Line Interface = Shell command prompt



* Pushd and popd  (save and restore directory locations).   cd -   and  cd --

$ pwd
/home/moma/tmp 

Save current directory location
$ pushd .
or
$
pushd $(pwd)         # pushd  `pwd`

Move somewhere else....
$ cd /tmp

And return.
$  popd

Goto last (previous) directory  cd -
$ cd /usr;    cd share;    cd zsh
$ cd - 

Goto home directory
$ cd --;      cd ~;      cd $HOME


* Suspend (stop) a process with Cntr Z
I really love this function.     (cntr+Z,   fg,   bg,   jobs)
 
Start a program (process) from a command line (CLI)
Eg.
$ mozilla

Now stop it by pressing CNTR-z  in the same shell.
Cntrl z
1]+  Stopped      mozilla
$
And you got the command line back !

Write bg [job#] to continue the process in the background or fg [job#] to bring the process back to the foreground.

$ bg         (or bg 1)
[1]+ mozilla &

List  jobs  (If you started several programs)
$ jobs
[1]-  Running    mozilla &
[2]+ Running    gimp &
$ fg 2                               (study also the "nohup" command)

$ jobs  -l             (use -l  list option to show PID)

[1]+  4762 Running       mozilla &

$ nohup long_run_command &
And you can safely logout, thou let the box run -;)



*  Math on the command line (cli)


bash calculator  (it cannot interpret decimal numbers)

$ echo $((5 + 6 / 2))
$ count=$(($count + 1))

Expr command can also do simple integer arithmetics.
$ expr 5 + 6 / 2
$ count=`expr $count +1`

But notice:
$ expr 2 \* 8          # You need to escape (protect) the * because it's a wildcard.  Also, you need to protect < and >  (i/o redirect symbols).
16

$ expr 3  \>  4
0

$ a=7;  expr $a  \> 5   \&  $a  \<= 10
1

$ expr length $(id -u)
$ n=`expr length "$(id)"`;  echo $n

$ man expr

python   (and of course perl)
$ python  -c "print 1.2 - 3.4"
-2.2

bc  ("normal" postfix calculator)  Study also  Unix power tools...   chapter 49, Working with numbers.

$ echo "1.2 - 3.4 " |  bc

-2.2
$ echo "scale=3;  1.2 - 3.4 " |  bc
-2.2       (shouldn't it print -2.200   ?)
$ echo "17 -  6  /  2  *  2"  |  bc
11

dc  (reverse-polish notation, works just like a HP-calculator)
$ echo "1.2  3.4  -  p"  |  dc
-2.2
$ echo "17  6  2  /  2  *  -  p"  |  dc
11

Most Linuces have ready made packages for dc and bc.
Anyhow you can find the source code for those GNU products on ftp.gnu.org. 

Graphicâl:
$ find /usr/bin -name  "*[ck]alc*"
kcalc

$ xcalc



*  vmstat - Report process statistics, memory and paging

$ man vmstat
Vmstat  reports  information about processes, memory, paging, block IO,  traps, and cpu activity.

$ vmstat
procs -----------memory---------- ---swap-- -----io---- --system-- ----cpu----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in    cs us sy id wa
 0  0   3124   8952   9904 127724    0    0    36    13 1100   730 15  2 83  1

The actual "free, available" memory is sum of cached + free:

Calculate
$ echo $((
127724 + 8952))
136676 kb
-----

Same information via /proc/meminfo:
$ cat /proc/meminfo
MemTotal:       256104 kB
MemFree:           5256 kB
Buffers:             10584 kB
Cached:          128172 kB
         
Calculate
$
echo $((128172 + 5256))
133428 
kb

Some memory were consumed by the running (cat, vmstat) commands.

-----

Or type
$ free  -m    ( b = bytes,  k= kilobytes,    m= MB)
-----

Disk reads/writes
$ vmstat -d


* Two X sessions

Start a new X session on the display 1.

# startx -- :1

Switch between sessions (display 0 and 1) using CTRL + ALT + F7 and  F8  keys.


* in KDE ...
Press CNTR + ESC to show process list.


* Installation of  fung-calc (scientific calculator)
Installation form source:

$  ./configure