This should have been fixed by now in the final version, but it might help someone who still suffer this problem.
Firefox 3 + Ubuntu 8.04 = Huge fonts
This should have been fixed by now in the final version, but it might help someone who still suffer this problem.
Ubuntu Hardy Heron (8.04) on Thinkpad T61
My setup is the following:
Intel Centrino Pro (Core 2 Duo) T7300(2GHz)
Intel Graphics Media Accelerator X3100
Intel PRO/Wireless 4965AGN Mini-PCI Express Adapter
AD1984 HD Audio controller
4-in-1 Memory reader
2GB RAM DDR2
120GB 5400rpm HD
14.1" in 1440x900 LCD
CDRW/DVDR Multi-Burner
Yours might vary.
Read the full post here.
I installed Hardy with the Desktop CD. A few seconds to boot up from CD was a great start. Partioned using gparted, with dedicated swap, /boot, /home, and /
After some minutes of file copying it was ready to reboot, so I clicked restart but the screen blanked and hang there.
Hard reboot later and Ubuntu started up.
As usual, a quick look at the logs to see if there is something going on behind stage that I need to take care first.
First look: Compiz started by default. Wireless working. Ethernet Working. Video ok. Fonts are a little rugged. Sound working. Capture not working; known problem since internal mic is disabled by default.
Some warnings on xorg.log is the only thing found, particuarly a Bad V_BIOS checksum which I'll check later.
No packages to update. That's good :)
Since I work for IBM and I need some essential software for my day-to-day, I decided to go for the IBM Repositories first and install Lotus Notes, Sametime, and some other software.
First AT&T Global Network Client to connect to work. You can refer to my post for that: http://technobluez.blogspot.com/2008/02/at-global-network-client-for-ubuntu.html
Now let's get the right keys in:
$ wget http://yktgsa.ibm.com/projects/i/ibmubuntu/web/public/ibmubuntu.pub -O - 2> /dev/null | sudo apt-key add -
Since there is no Hardy IBM ubuntu yet:
$ wget -c http://pokgsa.ibm.com/projects/l/lud/utils/installer/lud-config-apt_0.4-1_all.deb
Unpack lud-config-apt and extract lud-gpg.asc and temperance-repositories.list
$ sudo apt-key add lud-gpg.asc
$ sudo cp temperance-repositories.list /etc/apt/sources.list.d/
$ wget -qO- http://olymp.hursley.ibm.com/dc4eb/olymp-repository.crt | sudo apt-key add -
(extracted from here: http://web.opensource.ibm.com/www/lud/ludinstall.html)
(and here https://ltc3.linux.ibm.com/wiki/LinuxDocs/Distro/Ubuntu)
Now let's run Synaptic to upgrade our sources and see if the package is the one we want. cool, working :)
Lotus Sametime 7.5
Install the packages sametime-blue.
# Tested on Edgy/Feisty/Kubuntu
sudo apt-get install sametime-blue
# To add support for sametime protocol for pidgin
sudo apt-get install pidgin libmeanwhile1
First problem, ibm-hannover refuses to install because libicu36 package is not found.
Let's use the Debian Client 4 ebusiness instead:
# dc4eb main olymp repository
deb http://olymp.hursley.ibm.com/dc4eb stable ibm main contrib non-free
#deb http://olymp.hursley.ibm.com/dc4eb testing ibm main contrib non-free #opti$
#deb http://olymp.hursley.ibm.com/dc4eb unstable ibm main contrib non-free #opt$
# source lines - you only need these if you want the sources to our packages
deb-src http://olymp.hursley.ibm.com/dc4eb stable ibm main contrib non-free #mi$
#deb-src http://olymp.hursley.ibm.com/dc4eb testing ibm main contrib non-free #$
#deb-src http://olymp.hursley.ibm.com/dc4eb unstable ibm main contrib non-free $
And on top of the temperance repos:
##
# lud-repositories.list
##
# DESC: Include LUD repositories in apt cache
##
deb http://pokgsa.ibm.com/projects/l/lud temperance stable
So after all this I did a:
$ sudo apt-get install ibm-notes8
Also to fix font problems:
$ sudo apt-get install t1-xfree86-nonfree ttf-xfree86-nonfree
New Lotus openwith
Opening attachments relies on having an old version of GNOME installed. For more recent versions of GNOME it can be made to work by removing/renaming the openwith program and replacing it with a symbolic link to /usr/bin/gnome-open. Note that you will have both /opt/IBM/notesplugin/bin/openwith and a symlink to it in your ~/notesplugin/bin/ . Simply changing the symlink to gnome-open doesn't appear to work, you need to delete (or rename) the actual program in /opt.
If you don't use GNOME then Anthony Moulen has written short script (WorkPlaceAttachmentScript) that can be used to replace the openwith program.
If you use KDE then there is also a script written by Jason Salcido that uses the file associations you already have in that environment.
Setup Printer in IBM
Install this package restart your Firefox and go to IBM Global Print web site to install the printer. http://w3-3.ibm.com/tools/print/index.html
# Tested on Dapper/Edgy/Feisty/Kubuntu
# Restart your Firefox, after install
sudo apt-get install lud-gpws
# for ubuntu 8.04 (Hardy) create a link in
sudo ln -s /usr/lib/firefox/plugins/ibmgpws.so /usr/lib/xulrunner-addons/plugins/ibmgpws.so
Multimedia Codecs, Java, Flash
Install this to be able to listen and view multimedia and sound files with different codecs and enable java and flash in firefox.
# Java browser plugins, java jre, flash, fonts, codecs
# The ubuntu-restricted-extras package installs the Sun JDK, which requires the user to accept the Sun License.
sudo apt-get install ubuntu-restricted-extras
Customizing your Firefox install
* If middle-click on tab to close it does not work, you can enable it by pointing Firefox to "about:config" and set middlemouse.contentLoadURL to false. Voila, middle-click to close works again.
* To enable the autoscroll (where you middle-click and a little arrow-graphic appears and you can scroll just by moving the mouse), go to "about:config" and set general.autoScroll to true.
* To automatically select the entire contents of the URL bar when you click there, open "about:config" and set browser.urlbar.clickSelectsAll to true. I find this a helpful usability improvement.
Speed Up Firefox web browser:
In your location bar, type about:config
In the filter bar type network.http.pipelining
Normally it says ” false ” under value field , Double click it so it becomes ” true “.
In the filter bar again and type network.http.pipelining.maxrequests
Default it says 4 under value field and you need to change it to 8
Go to the filter bar again and type network.http.proxy.pipelining
Normally it says ” false ” under value field , Double click it so it becomes ” true “.
Go to the filter bar again and type network.dns.disableIPv6
Normally it says ” false ” under value field , Double click it so it becomes ” true “.
Go to the filter bar again and type plugin.expose_full_path
Normally it says ” false ” under value field , Double click it so it becomes ” true “.
Now you need to Create new Preference name with interger value for this got to Right click -> New -> Integer
Here you need to type nglayout.initialpaint.delay and click ok
Now you need to enter 0 in value filed and click ok
Now you need to Create one more Preference name with interger value for this got to Right click -> New -> Integer
Here you need to type content.notify.backoffcount and click ok
Now you need to enter 5 in value filed and click ok
Now you need to Create one more Preference name with interger value for this got to Right click -> New -> Integer
Here you need to type ui.submenuDelay and click ok
Now you need to enter 0 in value filed and click ok
Some more Tweaks
Enable the spellchecker for inputfields and textareas (default is textareas only)
layout.spellcheckDefault=2
Ondemand CPU Frequency Governor
The Ondemand CPU Frequency Governor automatically adjusts the CPU frequency in order to save power. It does not simply set the frequency to the lowest setting, because even if you are saving energy, the longer the CPU is in use the more power it uses. So this adjusts the frequency to complete processes as quickly as possible, so it can return to a low power state for longer periods of time, reaching longer and lower sleep levels.
Make sure all package managers are closed, open a terminal and enter each of the following in order:
sudo modprobe acpi-cpufreq
sudo modprobe cpufreq_ondemand
sudo aptitude install sysfsutils
sudo -s
echo "devices/system/cpu/cpu0/cpufreq/scaling_governor=ondemand" >> /etc/sysfs.conf
For the first two, it is good if you do not see any response from the terminal. It only responds on errors. After this, close the terminal window and reboot your computer. After the reboot right-click on the panel where you want the CPU monitor, and select “add to panel” then add the CPU Frequency Monitor. . Then in a terminal enter:
sudo dpkg-reconfigure gnome-applets
select “ok” and “yes” and bam! Now each time you left-click on the CPU Frequency Monitor you can choose from the available frequencies, or the available automatic options. Remember, Ondemand is the best for battery life.
sources: http://forum.thinkpads.com/viewtopic.php?t=50949&postdays=0&postorder=asc&highlight=ubuntu&start=0
http://ubuntu.wordpress.com/2005/11/04/enabling-cpu-frequency-scaling/
Linux useful commands
Regular commands I use every day in Linux plus a few eclectic ones. Basically geared to the new user. Tips or thoughts, please let me know.
Man pages
In Linux there is a manual for just about anything. Learn about almost everything by “man command” in the terminal. (e.g. man ls). Or type “command –help” for a basic description. Also, many man pages also cover configuration files (man resolv.conf).
Basic Commands
- Up key- Command History
- Tab - Auto-completion, nice and handy for completing file-names, directory names, and commands.
- Commands are in this form: command -arguments
Files ( + directories )
ls
( list ), -l ( long ), -a ( shows hidden )cp
( copy )mv
( move or rename ), mv filename1 filename2rm
( remove ) Very dangerous to use as root. Use with caution. -r ( recursive ) -f ( force - needed to remove a link)
Wildcards to expand definitions:
*
(matches any character), cp *.txt ~/Desktop?
(matches any single character), cp file?.txt ~/Desktop[characters]
(Matches a range/set of characters), cp [a-n]*.txt ~/Desktop- [!characters] (Matches any character that is not a member of the set characters)
>
Directories
cd ( change directory )
pwd ( print working directory )
mkdir ( mkdir )
- A name followed by a / means it’s a directory, bash is pretty good about figuring out what you mean if don’t use it but some apps don’t. A safe syntax would be
cd myfiles/
Command Output to Text (Standard Output)
ls /usr/bin > /home/user/Desktop/programs.txt
Add to an existing text file:
ls /sbin >> /home/user/Desktop/programs.txt
Pipes ( | )
- Useful for using programs in conjunction with others
ls -l | less
Filters
Popular filters used after piping.
sort
uniq
- removes duplicate lines of datagrep
- returns the output of a specified pattern of charactershead, tail
- outputs the first of last lines of outputtr
- translates characters - can be used for upper/lower case conversion
Use grep to extract patterns from files
grep EE /etc/X11/xorg.conf
ls -all /dev | grep dvd
glxinfo | grep -i direct
Files and File Permissions
View file permissions
- List the files in long view:
ls -l
-rwxr--r-- 1 user user 225444 2007-05-01 21:58 abc.pdf
| | | | | |
| | | world | group name
| | group owner name
| owner/user
directory?
r = read = 4
w = write = 2
x = executable = 1
Change File Permissions
owner = 4+2+1 = 7 , group = 4 …
The above file’s permissions numerically is 744 to change permissions of the above file:
chmod 755 abc.pdf
Change Ownership
chown user:group /home/user/document.txt
Lazy way of make a file executable
chmod +x /usr/bin/gmailto
File Systems
Show all partitions and their types (may not work on all types)
sudo fdisk -l
Show partition used/available space:
df -h
See all file systems mounted:
cat /proc/mounts
Sort Directories by How much space they consume
du | sort -nr
Mount a Volume and add it in permanently:
- The fstab file tells system of available disks/partitions and can automatically mount it at boot.
sudo mkdir /mnt/USB-Drive
sudo mount /dev/sda2 -t vfat -o rw /mnt/USB-Drive
- types include hfsplus, vfat…
Enter in /etc/fstab:
/dev/sda2 /mnt/OSX hfsplus ro,exec,auto,users 0 0
/dev/sda4 /mnt/Shared_Disk vfat users,auto,uid=1000,gid=100,umask=007 0 0
- ro - read-only, rw - read-write, auto mounts filesystem on boot
Unmount all possible file systems:
umount -a
Check File Systems
- Mounted file systems should be checked from the Installer CD/DVD or on boot.
Force file system check on next boot (won’t do it immediately):
sudo touch /forcefsck
Reboot immediately and check for errors:
sudo shutdown -Fr now
Change how often fsck runs at boot:
sudo tune2fs -c 30 /dev/hda
Check and mark bad blocks on damaged drives:
mke2fs -j -c /dev/hda3
Get UUID of devices:
At times the fstab file will require a device ID (UUID) be supplied.
ls /dev/disk/by-uuid -alh
Swap
Create swapfile
dd if=/dev/zero of=/swapfile bs=1024 count=2097152
- Swap is recommended to be 1-1/2 to 2x the value of the RAM to use for hibernation.
- 1 GB = 1024 MB = 1024 x 1024 kB = 1048576 kB = 1048576 kB x 1024 bytes/kB = 1,073,741,800 bytes10
mkswap /swapfile
swapon /swapfile
Add to /etc/fstab:
/swapfile swap swap defaults
Controlling Swap
Turn off swap:
swapoff -a /swap
- Swapiness is the input/output priority of swap. To measure the current value:
cat /proc/sys/vm/swappiness
To change the swap priority (higher value means more swapping):
sysctl vm.swappiness=10
- to use this value permanently add it to /etc/sysctl.confvm.swappiness=0
- values of 20 or lower are better for laptops.
File Compression
Pack:
tar gunzip:
tar cvpzf /AreaToSaveTo/yourcompressedfile.tgz –exclude=/this/folderorfile /CompressionStarts/Here
tar.bz2(tbz2) (block sorted, better compression):
tar -cvjf files.tar.bz2 fileorfolder
bzcat linux-2.6.XX.tar.bz2 | tar x
Unpack:
tar gunzip:
tar -xf file.tgz
tar xvjpf file.bz2 /startplace
tar.bz2(.tbz2):
bzcat file.tbz2 | tar file.tar
View contents of tar files:
tar tzvf name_of_file.tar.gz | less
unrar
unrar e file.part01.rar
- Now works in conjunction with file roller.
Span Multiple Volumes
create:
tar -c -M --tape-length=2294900 --file=part1.tar too-large-archive.tgz
extract:
tar -x -M --file=part1.tar too-large-archive.tgz
- At prompt specify new (n),
- then specify volume name (e.g. n part2.tar)
- tape-length is 1024 bytes measurement
- or (1 computer kilo)
Or use “split” to break a large volume:split -b 2m largefile LF_
- 2m = 2 megabytes LF is the prefix for new name
tar -cvj /full/path/to/mybigfile | split -b 650m
Put back together:
cat file* > newfile
Backup and Restore
Tar - From Install CD
cd /mnt/gentoo
tar -czpvf /mnt/gentoo/MacBook-Gentoo-Backup.tgz *
Rsync - Full Backup
rsync -avtp --delete --exclude=/home/user/somedir /source/dir /destination/dir
- -a archive, -v verbose
- -t preserve modification times, -p permissions
- –delete removes destination file if has been removed from source
- –links recreate symlinks
- -z compress from source to destination - good for slow connections.
- use “-a e ssh source name@hostname:dest” for ssh
Rsync - Incremental Backup
NEEDED? I think the above does Incremental too.rsync -b –backup-dir= combination
- used for daily or every other day
Users
Add user
useradd -m -G adm,audio,cdrom,cdrw,cron,games,plugdev,portage,shutdown,usb,users,video,wheel -s /bin/bash user
- Groups may vary some per distribution, this one is for Gentoo.
- Some groups may not be available until installation is finished
Add/delete user to group
gpasswd -a user plugdev
gpasswd -d user plugdev
See what groups user belongs to
id
Remove user
userdel username
CD / DVD
Writing to CD/DVD with Rock-Ridge support
- Rock-ridge support add Unix file extensions and attributes for iso9660 standard disks.
- DVD are marked as 4.7GB capacity but thats just the marketing measure. In terms the computer understand the space on a DVD is 4.368 GB’s
- 1 GB = 1048576 kB x 1024 bytes/kB
- DVD +R at 4x or 8x for best performance
DVD
growisofs -Z /dev/dvd -lrJ -joliet-long /path/to/files
- -Z means to start at the beginning of the dvd
- -l allows long filenames (breaks DOS compatability)
- -r Rock-ridge support
- -J Add Joiliet support
- -joliet-long - allows Joliet filenames to be 103 characters long instead of 64 - breaks joliet compatibility but works in most cases.
CD
mkisofs -o my.iso -lrJ /path/to/files
- Then burn iso to CD.
- Not sure if I can write directly to CD, from what I’ve seen it would seem that I can’t.
Blanking a Disk
- If you want to blank a disk or it already has a file-system on it you’ll see an error like “WARNING: /dev/hda already carries isofs!” then reinitialize the filesystem:
DVD
dvd+rw-format -f /dev/dvd
growisofs -Z /dev/hda=/dev/zero
CD
cdrecord -v dev=/dev/hda blank=fast
cdrecord -v dev=/dev/hda speed=2 blank=fast
cdrecord -vv dev=1,0 blank=all
ISO
Write ISO to CD/Drive:
dd if=name.iso of=/dev/sdb1
Mount ISO:
mount -t iso9660 -o loop,ro name.iso /mnt/cdrom/
mount /path/to/name.iso /mnt/cdrom -t iso9660 -o ro,loop=/dev/loop0
Create an ISO from a DVD or CD:
dd if=/dev/hda of=name.iso
Create and ISO from a file/directory:
mkisofs -o name.iso /path/to/file_or_directory
CDRWin (.bin/.cue) images to .iso:
bchunk name.bin name.cue name.iso
bin2iso name.cue
Converting CloneCD images to ISO:
ccd2iso name.img name.iso
Converting nrg (Nero) images to ISO:
nrg2iso name.nrg name.iso
Support for writting large file sizes
- ISO has file size limit of 4GB
- untested - udf support is still in alpha
mkisofs -o my.iso -lrJ -allow-limited-size -udf file-or-pathtofiles
growisofo -Z /dev/dvd -lrJ -allow-limited-size -udf file-or-pathtofiles
Mouse/Keyboard
Change keymaps:
setxkbmap dvorak
Map pointer buttons to keyboard:
xmodmap -e 'keycode 116 = Pointer_Button2'
xmodmap -e 'keycode 108 = Pointer_Button3'
xkbset exp m
Hardware Info
Kernel messages about hardware
dmesg | less
Cpu info:
cat /proc/cpuinfo
List all PCI devices
lspci
Detect hardware as it’s plugged in
tail -f /var/log/messages
For more detail
lshal --monitor
Icons / Cursors / Fonts …
Reset Icon Cache
gtk-update-icon-cache -f /usr/share/icons/hicolor/
Convert Windows Icons to Linux
Reset cache for fonts:
fc-cache -vf
Build font info per directory:
mkfontscale
mkfontdir
Replace fonts script
cd /etc/fonts/conf.d/ && ln -sf ../conf.avail/61-replace-corefonts.
- Or add to ~/.fonts.conf
- Requires X to be restarted
- http://uwstopia.nl/blog/2007/05/free-your-fonts
Take screenshot of selected area
import filename.png
Set gamma
- If you have ability to calibrate your own icc profile ( Macintosh’s do ) copy the icc profile to Linux and use “xcalib icc.profile”, otherwise a basic gamma can be set:
xgamma -bgamma 0.925 -ggamma 0.925 -rgamma 0.925
System
Shutdown at a specific time
shutdown -h 22:33
Manually Shutdown
shutdown -P now
date
use “date” to check date and to set system clock:
date MonthDayHourMinuteYear
Find out kernel version:
uname -r
Start Program that isn’t in the Systems Path
- Only programs that are in a system’s PATH setting can be started by typing the command
./program
Disable Touchpad whilest Typing
syndaemon -d -t -i 2
Networking
Samba
Change or add password to smbconf:
sudo smbpasswd -L -a user
Mount SMB share to folder
sudo smbmount //192.168.1.105/user/ mnt/directory -o username=username,password=pass,uid=1000,mask=000
Mount all Samba Shares in fstab
mount -a -t smbfs
SSH / SCP
Remote login with ssh with username (diiferent that the one you’re using)
ssh -l username 192.168.1.101
Copy remote file to local file
scp -p user@192.168.1.101:~/Desktop/file.name file.name
Download entire website:
wget -r http://www.robot-frog.com/
Advanced
Bash
The ~/.bashrc file
- Adding PATHs to the ~/.bashrc file will make the system aware of another folder that has executables.
- Shortcuts can be created for common commands
export PATH=$PATH:/home/user/.scripts
alias capscreen="import ~/Desktop/screen.png"
Analyze Bash History
cat .bash_history | tr '|' '\n' | awk '{print $1}' | \
egrep -o '([^/]+)$’ | sort | uniq -c | sort -nr | awk ‘{print $2 “,” $1}’
To see the preset variables already defined for bash:
set
Search History
ctrl-r
Cron
- Cron is the system timer. It checks every minute for commands to run.
To edit a crontab (cron jobs)
crontab -e
# minute (0-59),
# | hour (0-23),
# | | day of the month (1-31),
# | | | month of the year (1-12),
# | | | | day of the week (0-6 with 0=Sunday).
# | | | | | user
# | | | | | | commands
43 08 * * * env DISPLAY=:0.0 audacious [[/home/user]] /My\ Music/Other/Alarms/301gq.mp3
chroot - (changing root)
- Userful for logging into your current Linux from an installtion CD
su
mkdir /mnt/osname
mount /dev/sda3 /mnt/osname
mount -t proc none /mnt/osname/proc
mount -o bind /dev /mnt/osname/dev
chroot /mnt/osname /bin/bash
Compile Kernel
make oldconfig
make menuconfig
make clean zImage modules modules_install install
For PPC “make pmac32_defconfig” will generate a basic config.
Find Modules
find /lib/modules/2.6.20-gentoo-r2-ibook-SE-g3 -type f -iname ‘*.o’ -or -iname ‘*.ko’
Add the screen program to be able to background a terminal process
screen command
- CTRL + A + D to background it, to return it:screen -r
Use noup to continue a process even if you log out
noup command
Unsorted / Less Used
sudo echo >> no work
echo "my text" | tee /etc/portage/package.use
See whats taking up ram:
ps auxf --sort size
Generate Modelines for xorg.conf
gtf screenwidth screenheight vertrefresh
Reset settings in gconf:
gconftool-2 --recursive-unset /apps/compiz
GDM conf file
Touch Entire System
(careful I’ve done this before when my files got dated wrong from a dead battery. But I tried again and the files are put where the command is executed - all 0 bytes)
find /| xargs touch - m
Allow window executables to run directly (will need Wine and misc. binaries enabled in kernel)
In /etc/sysctl.conf add
fs.binfmt_misc.register = :WINEXE:M::MZ::/usr/bin/cedega:
and add to fstab
none /proc/sys/fs/binfmt_misc binfmt_misc defaults 0 0
Re-size Images
- requires imagemagick
convert writes new image, mogrify overwritesconvert image.jpg --resize 800x600 newresized.pngmogrify -geometry 1024x768 *.png
Copy ALL Files (+invisible, hard links, softlinks)
find . -depth -print0 | cpio ânull âsparse -pvd /mnt/newhome/
Create random numbers, hex letters
dd if=/dev/random bs=1 count=5 2>/dev/null | xxd -ps
Run programs sequentially or concurrently
program && program
program & program
Hardware acceleration enabled?
glxinfo | grep rendering
A simple web server
Share files in directory and all subfolders:
python -c "import SimpleHTTPServer;SimpleHTTPServer.test()"
View in:
http://localhost:8000 or http://your_ip:8000/
Debian Specific:
Run Program as normal user:
sudo dpkg-statoverride --update --add root root 4755 /usr/share/app
drive space show taken by installed packages
dpkg-query -W --showformat='${Installed-Size;10}\t${Package}\n' | sort -k1,1n
Rebuild Font Directory
dpkg-reconfigure fontconfig
How to get special keys to work in ubuntu and Firefox 3.0
# printf 'keycode 234 = XF86Back\nkeycode 233 = XF86Forward' >> /etc/X11/Xmodmap
And to make this take effect immediately (i.e., without having to log out and log in again), as a regular user run:$ Xmodmap /etc/X11/Xmodmap
For Hardy Heron, the xmodmap command is all lowercase. Also, the /etc/X11/Xmodmap file is not being read on boot. I've added the command to my .bashrc to have it called on startup.For more information go to the original link.