Difference between revisions of "Post Installation Tips"

From ArchWiki
Jump to: navigation, search
(Post installation tips)
Line 1: Line 1:
 
As a new Archer, some tasks needed to be accomplished after the fresh install. Here are some performance tweaks and other useful information for Arch Linux newbies.
 
As a new Archer, some tasks needed to be accomplished after the fresh install. Here are some performance tweaks and other useful information for Arch Linux newbies.
==Hardware==
+
===Hardware===
===Auto-Recognition===
+
====Auto-Recognition====
 
hwd is your hardware auto-recognition tool. It will inform you which module you need to load and set. It is now available as a package in the [[extra]] repository.
 
hwd is your hardware auto-recognition tool. It will inform you which module you need to load and set. It is now available as a package in the [[extra]] repository.
 
To speed up lilo boot process, add the following command to /etc/lilo.conf</ :
 
To speed up lilo boot process, add the following command to /etc/lilo.conf</ :
 
   compact
 
   compact
===Harddrive Performance===
+
====Harddrive Performance====
 
* to boost hd performance, tweak using hdparm. best place to put it (imho) is in/etc/rc.sysinit, as the 1st line... my hdparm parameters are :
 
* to boost hd performance, tweak using hdparm. best place to put it (imho) is in/etc/rc.sysinit, as the 1st line... my hdparm parameters are :
 
**-a1024 = sets read_ahead buffer to 1024 bytes
 
**-a1024 = sets read_ahead buffer to 1024 bytes
Line 14: Line 14:
 
   hdparm -a1024 -c3 -d1 -m16 /dev/hda
 
   hdparm -a1024 -c3 -d1 -m16 /dev/hda
  
==KDE Performace==
+
===KDE Performace===
 
* to boost KDE performance, install portmap & fam and add them to /etc/rc.conf under DAEMONS. dont forget to make sure they are actually running - use
 
* to boost KDE performance, install portmap & fam and add them to /etc/rc.conf under DAEMONS. dont forget to make sure they are actually running - use
 
   =ps aux</code> to check if they are loaded.
 
   =ps aux</code> to check if they are loaded.
==Pausing at End of Boot Process==
+
===Pausing at End of Boot Process===
 
* to pause at the end of the boot process before getting the login prompt (usually used for for debugging your boot messages...), add at the end of /etc/rc.local :
 
* to pause at the end of the boot process before getting the login prompt (usually used for for debugging your boot messages...), add at the end of /etc/rc.local :
 
   read KEY
 
   read KEY
 
or else remove the 1st charcter in /etc/issue file, which is a "clear screen" escape code.
 
or else remove the 1st charcter in /etc/issue file, which is a "clear screen" escape code.
==ALSA==
+
===ALSA===
 
* [[Alsa setup]] If using UDEV, also see for permission issues:  http://wiki.archlinux.org/index.php/UdevHowTo
 
* [[Alsa setup]] If using UDEV, also see for permission issues:  http://wiki.archlinux.org/index.php/UdevHowTo
==Start X at boot==
+
===Start X at boot===
 
* [[Start X at boot]]
 
* [[Start X at boot]]
==Builing your own Kernel==
+
===Builing your own Kernel===
 
* When building your own kernel ([[Kernel & Hardware Issues]]), following options must be set and linked staticly and NOT as modules :
 
* When building your own kernel ([[Kernel & Hardware Issues]]), following options must be set and linked staticly and NOT as modules :
 
***  Code maturity level options
 
***  Code maturity level options
Line 42: Line 42:
 
***            <and your IDE hdw...> = on
 
***            <and your IDE hdw...> = on
 
* also, to speed kernel loading time a bit, make sure you staticly link ALL yourhardware specific drivers (which you load anyway using /etc/modprobe.conf orotherwise) instead of linking them as modules
 
* also, to speed kernel loading time a bit, make sure you staticly link ALL yourhardware specific drivers (which you load anyway using /etc/modprobe.conf orotherwise) instead of linking them as modules
==ABS to build your own packages==
+
===ABS to build your own packages===
 
* if you use abs to build your own packages, remember to copy 1st your target package dir to /var/abs/local/<pkgname> to avoid your files and configuation getting overwritten at next abs update...
 
* if you use abs to build your own packages, remember to copy 1st your target package dir to /var/abs/local/<pkgname> to avoid your files and configuation getting overwritten at next abs update...
==Optimizing mkpkg packages==
+
===Optimizing mkpkg packages===
 
* for optimizing the packages you build using makepkg (kernel is a good example) set your gcc preffered settings in /etc/makepkg.conf:
 
* for optimizing the packages you build using makepkg (kernel is a good example) set your gcc preffered settings in /etc/makepkg.conf:
 
   (example for athlon cpu)
 
   (example for athlon cpu)
Line 51: Line 51:
 
   export CFLAGS="-march</code>athlon -O2 -pipe -fomit-frame-pointer"
 
   export CFLAGS="-march</code>athlon -O2 -pipe -fomit-frame-pointer"
 
   export CXXFLAGS="-march</code>athlon -O2 -pipe -fomit-frame-pointer"
 
   export CXXFLAGS="-march</code>athlon -O2 -pipe -fomit-frame-pointer"
==Kernel Updates==
+
===Kernel Updates===
 
* Remeber to execute "lilo" after each kernel update (ie, each time you replace your boot image, usually named /boot/vmlinuzXX, etc).
 
* Remeber to execute "lilo" after each kernel update (ie, each time you replace your boot image, usually named /boot/vmlinuzXX, etc).
 
**If you forgot and need torescue back from the cd, here are the rescue steps:
 
**If you forgot and need torescue back from the cd, here are the rescue steps:
Line 60: Line 60:
 
   mount -t proc none /mnt/proc
 
   mount -t proc none /mnt/proc
 
   chroot /mnt /sbin/lilo
 
   chroot /mnt /sbin/lilo
==Personal Command-aliases==
+
===Personal Command-aliases===
 
* you can create your own commands-aliases using "<homedir>/.bashrc" file or "/etc/profile" file. both can be used to define your own aliases:
 
* you can create your own commands-aliases using "<homedir>/.bashrc" file or "/etc/profile" file. both can be used to define your own aliases:
 
   #alias ls="ls --color=auto" not necessary in Arch
 
   #alias ls="ls --color=auto" not necessary in Arch
Line 67: Line 67:
 
   alias exit="clear; exit"
 
   alias exit="clear; exit"
 
   alias x="startx"
 
   alias x="startx"
==Reduce Sleeping time on shutdown==
+
===Reduce Sleeping time on shutdown===
 
* you can reduce system sleeping time on shutdown by changing the sleep parameter in "/etc/rc.shutdown" & "/etc/rc.single" files.
 
* you can reduce system sleeping time on shutdown by changing the sleep parameter in "/etc/rc.shutdown" & "/etc/rc.single" files.
==Set timezone==
+
===Set timezone===
 
* to set your timezone (so local time shows properly) look at "/usr/share/zoneinfo/" for your timezone, and change the TIMEZONE variable in "/etc/rc.conf" :
 
* to set your timezone (so local time shows properly) look at "/usr/share/zoneinfo/" for your timezone, and change the TIMEZONE variable in "/etc/rc.conf" :
 
  TIMEZONE=Asia/Jerusalem
 
  TIMEZONE=Asia/Jerusalem
==PDF file viewer (kghostview)==
+
===PDF file viewer (kghostview)===
 
* to fix PDF files viewer (kghostview), install ghostscript using:
 
* to fix PDF files viewer (kghostview), install ghostscript using:
 
***<pre>pacman -S ghostscript</pre.>
 
***<pre>pacman -S ghostscript</pre.>
Line 79: Line 79:
 
   GS Version=
 
   GS Version=
 
   Interpreter=/usr/bin/gs
 
   Interpreter=/usr/bin/gs
   Non-antialiasing arguments=-sDEVICE</code>x11
+
   Non-antialiasing arguments=-sDEVICE=x11
 
   Redetection Counter=2
 
   Redetection Counter=2
  
==Useful Commands & Programs==
+
===Useful Commands & Programs===
 
*grep - searches for files by its contents. (example : "grep -i syslog /etc/*" will search all files in /etc for files containing the word "syslog", NOT case sensetive (using the "-i" parameter))
 
*grep - searches for files by its contents. (example : "grep -i syslog /etc/*" will search all files in /etc for files containing the word "syslog", NOT case sensetive (using the "-i" parameter))
 
*killall <process_name> - kills processes by name (example : "killall kdm")
 
*killall <process_name> - kills processes by name (example : "killall kdm")
Line 88: Line 88:
 
*locate - quickly locates files on your hd (use "locate -u" 1st to create/update the files db...) (example : "locate Xservers" will find all files named Xservers)
 
*locate - quickly locates files on your hd (use "locate -u" 1st to create/update the files db...) (example : "locate Xservers" will find all files named Xservers)
  
===Pacman==
+
====Pacman====
 
An automated tool for managing your packages - localy and via the web. It will auto-solve dependencies among packages, which is the bigest headache in the linux-packaging-distribution-world(-as-we-know-it-:) ).
 
An automated tool for managing your packages - localy and via the web. It will auto-solve dependencies among packages, which is the bigest headache in the linux-packaging-distribution-world(-as-we-know-it-:) ).
  
===makepkg===
+
====makepkg====
 
An automated tool to create packages - it actually automates the "./configure, make, make install" procedure. it uses a file named PKGBUILD which must exists in the same directory you will build your package. view a PKGBUILD file and read the installation document to learn more how to work with makepkg.
 
An automated tool to create packages - it actually automates the "./configure, make, make install" procedure. it uses a file named PKGBUILD which must exists in the same directory you will build your package. view a PKGBUILD file and read the installation document to learn more how to work with makepkg.
  
===abs===
+
====abs====
 
An automated tool which allows you to rebuild any of pacmans' packages (so you may provide your own compiler and linker settings, for better optimazation, debugging info, etc). simply executing abs will synchronize all your PKGBUILD scripts from the CVS repository into /var/abs.
 
An automated tool which allows you to rebuild any of pacmans' packages (so you may provide your own compiler and linker settings, for better optimazation, debugging info, etc). simply executing abs will synchronize all your PKGBUILD scripts from the CVS repository into /var/abs.
  
==File Descriptions==
+
===File Descriptions===
 
*<homedir>/.xinitrc - controls which programs X11 will load on startup. the last line must be your preferred windows manager and should be prefixed with "exec"
 
*<homedir>/.xinitrc - controls which programs X11 will load on startup. the last line must be your preferred windows manager and should be prefixed with "exec"
 
*/etc/profile - system profiling file. loads environment confiuration per profile. (kernel must support profiling)
 
*/etc/profile - system profiling file. loads environment confiuration per profile. (kernel must support profiling)
Line 109: Line 109:
  
  
==Extracting compressed files==
+
===Extracting compressed files===
 
   file.tar : tar xvf file.tar
 
   file.tar : tar xvf file.tar
 
   file.tgz : tar xvzf file.tgz
 
   file.tgz : tar xvzf file.tgz
Line 118: Line 118:
  
 
----
 
----
WikiMigration & Rewrite--~~~~
+
WikiMigration & Rewrite--~~~~</pre>
 
+
</pre>
+

Revision as of 19:35, 23 July 2005

As a new Archer, some tasks needed to be accomplished after the fresh install. Here are some performance tweaks and other useful information for Arch Linux newbies.

Hardware

Auto-Recognition

hwd is your hardware auto-recognition tool. It will inform you which module you need to load and set. It is now available as a package in the extra repository. To speed up lilo boot process, add the following command to /etc/lilo.conf</ :

 compact

Harddrive Performance

  • to boost hd performance, tweak using hdparm. best place to put it (imho) is in/etc/rc.sysinit, as the 1st line... my hdparm parameters are :
    • -a1024 = sets read_ahead buffer to 1024 bytes
    • -c3 = sets io support to 32bit with sync
    • -d1 = turn on dma
    • -m16 = sets multile buffers count to 16 (my hd max. find it using hdparm -i)
 example:
 hdparm -a1024 -c3 -d1 -m16 /dev/hda

KDE Performace

  • to boost KDE performance, install portmap & fam and add them to /etc/rc.conf under DAEMONS. dont forget to make sure they are actually running - use
 =ps aux</code> to check if they are loaded.

Pausing at End of Boot Process

  • to pause at the end of the boot process before getting the login prompt (usually used for for debugging your boot messages...), add at the end of /etc/rc.local :
 read KEY

or else remove the 1st charcter in /etc/issue file, which is a "clear screen" escape code.

ALSA

Start X at boot

Builing your own Kernel

  • When building your own kernel (Kernel & Hardware Issues), following options must be set and linked staticly and NOT as modules :
      • Code maturity level options
      • Prompt for development and/or incomplete code/drivers = on
      • Device Drivers
      • File systems
      • Pseudo filesystems
      • /dev file system support = on
      • Automatically mount at boot = on
    • to be able to tweak hd performance using hdparm, set the followings :
      • Device Drivers
      • ATA/ATAPI/MFM/RLL support = on
      • Enhanced IDE/MFM/RLL disk/cdrom/tape/floppy support = on
      • Generic PCI bus-master DMA support = on
      • Intel PIIXn chipsets support = on
      • <and your IDE hdw...> = on
  • also, to speed kernel loading time a bit, make sure you staticly link ALL yourhardware specific drivers (which you load anyway using /etc/modprobe.conf orotherwise) instead of linking them as modules

ABS to build your own packages

  • if you use abs to build your own packages, remember to copy 1st your target package dir to /var/abs/local/<pkgname> to avoid your files and configuation getting overwritten at next abs update...

Optimizing mkpkg packages

  • for optimizing the packages you build using makepkg (kernel is a good example) set your gcc preffered settings in /etc/makepkg.conf:
 (example for athlon cpu)
 export CARCH="athlon"
 export CHOST="athlon-pc-linux-gnu"
 export CFLAGS="-march</code>athlon -O2 -pipe -fomit-frame-pointer"
 export CXXFLAGS="-march</code>athlon -O2 -pipe -fomit-frame-pointer"

Kernel Updates

  • Remeber to execute "lilo" after each kernel update (ie, each time you replace your boot image, usually named /boot/vmlinuzXX, etc).
    • If you forgot and need torescue back from the cd, here are the rescue steps:
 modprobe xfs
 mount -t xfs /dev/discs/discX/partY /mnt
 mount -t xfs /dev/discs/discV/partW /mnt/boot (if you have it)
 mount -t devfs none /mnt/dev
 mount -t proc none /mnt/proc
 chroot /mnt /sbin/lilo

Personal Command-aliases

  • you can create your own commands-aliases using "<homedir>/.bashrc" file or "/etc/profile" file. both can be used to define your own aliases:
 #alias ls="ls --color=auto" not necessary in Arch
 alias ll="ls -lh"
 alias la="ls -a"
 alias exit="clear; exit"
 alias x="startx"

Reduce Sleeping time on shutdown

  • you can reduce system sleeping time on shutdown by changing the sleep parameter in "/etc/rc.shutdown" & "/etc/rc.single" files.

Set timezone

  • to set your timezone (so local time shows properly) look at "/usr/share/zoneinfo/" for your timezone, and change the TIMEZONE variable in "/etc/rc.conf" :
TIMEZONE=Asia/Jerusalem

PDF file viewer (kghostview)

  • to fix PDF files viewer (kghostview), install ghostscript using:
      • pacman -S ghostscript</pre.>
    • and change the Ghostscript section in file "<home dir>/.kde/share/config/kghostviewrc" to :
 Antialiasing arguments=-sDEVICE=x11 -dTextAlphaBits=4 -dGraphicsAlphaBits=>2 -dMaxBitmap=10000000
 GS Version=
 Interpreter=/usr/bin/gs
 Non-antialiasing arguments=-sDEVICE=x11
 Redetection Counter=2

===Useful Commands & Programs===

  • grep - searches for files by its contents. (example : "grep -i syslog /etc/*" will search all files in /etc for files containing the word "syslog", NOT case sensetive (using the "-i" parameter))
  • killall <process_name> - kills processes by name (example : "killall kdm")
  • ps - display process status (example : "ps -xau" will display all active processes)
  • locate - quickly locates files on your hd (use "locate -u" 1st to create/update the files db...) (example : "locate Xservers" will find all files named Xservers)

====Pacman==== An automated tool for managing your packages - localy and via the web. It will auto-solve dependencies among packages, which is the bigest headache in the linux-packaging-distribution-world(-as-we-know-it-:) ).

====makepkg==== An automated tool to create packages - it actually automates the "./configure, make, make install" procedure. it uses a file named PKGBUILD which must exists in the same directory you will build your package. view a PKGBUILD file and read the installation document to learn more how to work with makepkg.

====abs==== An automated tool which allows you to rebuild any of pacmans' packages (so you may provide your own compiler and linker settings, for better optimazation, debugging info, etc). simply executing abs will synchronize all your PKGBUILD scripts from the CVS repository into /var/abs.

===File Descriptions===

  • <homedir>/.xinitrc - controls which programs X11 will load on startup. the last line must be your preferred windows manager and should be prefixed with "exec"
  • /etc/profile - system profiling file. loads environment confiuration per profile. (kernel must support profiling)
  • /etc/rc.conf - main configuration file, something like config.sys on steroids...
  • /etc/rc.sysinit - this is like the main autoexec.bat file, which takes care of loading and setting up the system.
  • /etc/rc.single - script file for single user system level
  • /etc/rc.multi - script file for multiple users system level
  • /etc/rc.local - script file for local-multi users system level
  • /etc/rc.shutdown - script file for shutdown system level
  • /etc/rc.d/* - configured deamons for the system.


===Extracting compressed files===

 file.tar : tar xvf file.tar
 file.tgz : tar xvzf file.tgz
 file.tar.gz : tar xvzf file.tar.gz
 file.bz : bzip -cd file.bz || tar xvf -
 file.bz2 : tar xvjf file.tar.bz2 <b>OR</b> bzip2 -cd file.bz2 || tar xvf -
 file.zip : unzip file.zip

----

WikiMigration & Rewrite--~~~~