31 Aug 2008

Ubuntu Network manager, static interface setup, multiple profiles, no internet, no dns

Recently I decided to experiment with the multiple profiles feature of the network manager provide by Ubuntu 8.04. I set up my lan network card with a static ip address so that I could manager port forwarding on my router specifically for my laptop.

I still wanted to be able to switch to the roaming mode provided by the network manager if I went to university or some where else. So I decide to save the set up in the network manager as a separate profile. I then saved other profile for the roaming modes on my wireless lan, and my cable lan interfaces.

After a restart I found that I could no longer get out on the internet after start up. I was not sure what the problem was. I could ping my router but nothing beyond my router. In checking my network manager set up I could see that where I used to have my router as a dns, I now had nothing.

So I add some dns servers saved the settings under my static profile and applied these setting buy clicking the green tick. Now every thing was working again. I could connect to the internet web pages would now load in firefox.

Again after a restart I found I had the same problem so I check my network manger and found that the settings were still there but were not applied. So I again choose the correct profile and applied the settings. This behaviour of being not being set up after a restart continued. It gets a little irritating having to go into network manager and apply setting after ever restart.

After reading around in fourums I found about about resov.conf resolvconf /etc/resolv.conf, /etc/resolvconf/interface-order and /etc/resolvconf/resolv.conf.d/. I could see that in interface-order and ifconfig my cabled lan card was begin configured correctly at start. In the resolv.conf file no dns servers were configured at start up, having no dns server to resolve requests out to the internet I could not browse the web or send emails or any thing you would need to do.

To solve the problem of not being set up at start up open the /etc/resolveconf/resolv.conf.d/base as root in a text editor and add a dns server like your router or some other dns server. Read the man resolvconf to find out why. Redundancy here is a good thing, have it point to more then one dns server.

Simply place entries like "nameserver 127.0.0.1" or "nameserver #your router#". Obviously 127.0.0.1 is localhost and probably wont work for the average set up. If your not sure what dns servers to use, ping a top level domain like www.com or www.co.za and get their ip address. Do a traceroute and look for domain names with .dns in them. You can see and example of how network manager saves one of these file in /etc/resolvconf/resolv.conf.d/original.

28 Aug 2008

linux the cisco vpn and monash south africa

I have spent quite a bit of time trying different options for the vpn connection to Monash South Africa. The open source vpnc dose not work because when importing the cisco profile it warns that IP tunnelling across TCP has been enabled. Which may cause undesired resualts, in this case it simply dose not work.

The only option left for linux is the cisco client which has not been updated since 2006. Major problem. Thus we now have to go to projects.tuxx-home.at. Here is the only way to get support for the cisco linux vpn client. There are instructions for intallation, patching and support forums. Every thing a person would need. I have used them on a number of different kernel builds, 2.6.18 -- 2.6.24. They all worked.

The vpn client on the web site dose not, but you still need to down load it to get the correct profile configuration file. It is called sa.pcf. You will need to copy that file to the cisco /etc/opt/cisco-vpnclient/Profiles/. Then all you need to do to start it is type "sudo vpnclient connect sa".
Enter your user name and password and every thing should work.

I have found some small issues with the gnome network manager and haveing both my lan network card and wireless network card enabled. So depending on how I am connecting to the internet I disable which ever one I am not using. Type "ifconfig" to find out which device to disable. Then type "ifcofig eth#" where # is the device number, some thing like 0 or 1.

Here is some more info on getting the cisco vpn working www.blog.arun-prabha.com/2008/05/01/cisco-vpn-installation-issue-with-ubuntu-804-hardy-heron/.

13 May 2008

Problems in Ubuntu 8.04 LTS

I recently upgraded to Ubuntu 8.04 LTS. I found that after using it for about 20 minuites their were certain things I could do that would totally crash the whole system. Later I found that it was a bug in the released kernel, check https://bugs.launchpad.net/ubuntu/+source/linux/+bug/188226.

It has to do with the cpu schedualer (Completely Fair Schedualer), not being configured properly for the desktop system. Their is already a way to fix it, but in requires over 100 mb of downloads to fix the problem. This will be a serrious problem to people who pay exhorbitant rates for internet access.

The basic solution is to update your system to an the latest development release kernel. From 2.6.24-16-generic t0 2.6.24-17-generic. Caution this 2.6.24-17-generic kernel
is a developmental release used for testing changes and bug fixes, it is not the same as the release version kernel. This new kernel will only be released 2008-07-01 it the next version of hardy, ubuntu-8.04.1.

Any way I upgraded to ensure that I have a Linux desktop that dose not stall any time I open two many windows or try to do thing as a different users, ie every time i use the sudo command to do some thing cpu intensive.

Fix
Using synaptic
Open Synaptic > Settings > Repositories
Go to the updates tab and select Pre-released updates ( hardy proposed)
Close the window and reload the package information.
Either navigate through the Base System Section or search to find
linux-image-2.6.24-17-generic
linux-ubuntu-modules-2.6.24-17-generic
Select both packages.
If you are using an nvidia graphics card you will need to also up grade it. Serach for
nvidia-glx-new - we want the version that matches our kernel, 169.12+2.6.24.12-17.36 instead of the old one 169.12+2.6.24.12-16.36 notice that the 12-16 / 12- 17 referes to the version of kernel supported. This should automatically include the
linux-restricted-modules-2.6.24-17-generic. Which include the binary / compiled modules necessary for the nvidia driver to work.
This should be all the updates that you need to fix the problem with out a major difficulty.
Next click apply and wait.
When it finished be sure to disable the Pre-released updates ( hardy proposed)
Synaptic > Settings > Repositories
Go to the updates Tab and select Pre-released updates ( hardy proposed)
And reload the package lists.

That should fix the problem, all this is described in the bug report check https://bugs.launchpad.net/ubuntu/+source/linux/+bug/188226. It also includes instructions on how to compile the kernel form source with the correct options. For more advanced users. This would probable save people form having to download a whole new kernel, and graphics card drivers.

18 Apr 2008

mips and spim materials to help you get started.

Here is a link to a full text book on the mips processor.
http://www.comms.scitech.susx.ac.uk/fft/programming/R4400_Uman_book_Ed2.pdf
You will not need to read the whole text book, but it will come in very hand if you are struggling with MIPS. Choose what you read out of this text book.

I found it at the following site http://2020ok.com/. Here you may find some other useful books on a range of other computer related topics.

Also check out http://en.wikipedia.org/wiki/MIPS_architecture to get a better understanding of MIPS.

The official web site for spim is one of the best places to go and has a lot of extra resources, make user you visit this web site. http://pages.cs.wisc.edu/~larus/spim.html.At the bottom of the page is a section on additional materials.

Lastly here is a link to a document I got of the net and cant remember where. I found it gave a good overview of all the very basics and is an excellent reference when writing simple MIPS programs. http://www.scribd.com/doc/2576056/SPIM

23 Mar 2008

ffmpeg

I spent close to 2 days trying to get around a problem with ffmpeg
Input #0, flv, from 'tmp.flv':
Duration: 01:43:15.8, start: 0.000000, bitrate: 64 kb/s
Stream #0.0: Video: flv, yuv420p, 320x240, 29.97 tb(r)
Stream #0.1: Audio: mp3, 22050 Hz, mono, 64 kb/s
Output #0, mp4, to 'tmp.mp4':
Stream #0.0: Video: mpeg4, yuv420p, 320x240, q=2-31, 200 kb/s, 29.97 tb(c)
Stream #0.1: Audio: 0x0000, 22050 Hz, mono, 64 kb/s
Stream mapping:
Stream #0.0 -> #0.0
Stream #0.1 -> #0.1
Unsupported codec for output stream #0.1

Which is basically saying that it dose not know how to take the audio input codec mp3 and produce and audio out put codec.

I tried to used the -acodec option to force output to mp3. Which as far as I understand I don't need to do as mp4 has both an mp4 video codec and audio codec.

The only site I found useful information on all in one place was http://howto-pages.org/ffmpeg/.
It describes how to compile from source and enable the different lib's required. I still found this site much more helpfull then the mailing lists that keep popping up in google searches.

This can be used as a work around for the mp3 encoding problem which I found at the ubuntu forums
ffmpeg -i inputfile.flv -acodec copy -vcodec mpeg4 outputfile.mp4

Whats important here is the -acodec copy, I dont know what the quality of the output will be like but at least it dose not bomb out in an error.

I found the quality to be good, not great just good. I lost some video information. The sound was great, no distortion or delay. The file size shrank close to 20%. I think that -sameq option could improve things but my file sise more then doubles. Which gets me great out put. I am going to experiment to try and get a better result.

18 Oct 2007

Another day, another cable

Another day, another cable

This article provides some interesting incites to why we pay so much for so little in South Africa when it come to the internet.

2 Oct 2007

vlc segmentation fault

I recently had problems with vlc media player. It would crash unexpectedly when running. It would not start when run from the Applications > Sound & Video > VLC. Occasionally it would start up but it would look terrible, or start two player interfaces. I then turned to the console using vlc, or wxvlc to get it to run. Some times it would come out with two player interface's, and whole string of exceptions.

Solution

in your home directory /home/yourhome/ their is a config directory for vlc called .vlc /home/yourhome/.vlc go and delete it completely. VLC automatically creates it when it is frist started. This will reset all the settings that could cause this type of problem.
rm /home/[you home dir]/.vlc

Immediately after doing that I tryied vlc from the application menu and it worked. I expect that I am not the only one to have this problem. I hope it helps some one else out there.

25 Sept 2007

Bauer-Power: Information is Power!

Bauer-Power: Information is Power!

A really good video on how data recovery works. It was associated with 2 links to sites that have more info. http://myharddrivedied.com/presentations.html and web.forensicspeak.com. If any one is interested in finding out more about recovering data on a hard drive I recommend these sites. If you are interested in taking apart a hard drive go to the video above.

I also recomend going to http://www.cgsecurity.org/ it explains to linux tools for data recovery. I have used the one and it worked for me. I was able to recover from bad partion information. It has a number of links as well to site that could prove to be useful.

15 Sept 2007

Coding Horror: Gigabyte: Decimal vs. Binary

Coding Horror: Gigabyte: Decimal vs. Binary

This is an in depth look at why a 250 gb hard drive is a lot less then the advertised size.

8 Sept 2007

Apache2 Documentation apache2-doc manuall problems

For those of us who want to find out how to fix the problem of apache2-doc at http://localhost/manual/ giving us junk like this

URI: index.html.de Content-Language: de Content-type: text/html; charset=ISO-8859-1 URI: index.html.en Content-Language: en Content-type: text/html; charset=ISO-8859-1 URI: index.html.es Content-Language: es Content-type: text/html; charset=ISO-8859-1 URI: index.html.fr Content-Language: fr Content-type: text/html; charset=ISO-8859-1 URI: index.html.ja.euc-jp Content-Language: ja Content-type: text/html; charset=EUC-JP URI: index.html.ko.euc-kr Content-Language: ko Content-type: text/html; charset=EUC-KR URI: index.html.pt-br Content-Language: pt-br Content-type: text/html; charset=ISO-8859-1.

Which is a type map, which is meant to allow for multiple languages in the documentation. It dose not work so to fix it try the following at this link.Apache2 Documentation doesn't work - Ubuntu Forums.

I changed these instructions a bit by
sudo mkdir typemaps
and
sudo mv *.html to ./typemaps/
which moved the all the *.html type map pages to the typemaps dir. so if I need to restore them I can. you could also just delete them with
sudo rm -f *.html
but then you have no way of retrieving them. This post dose not contain any documentation on modifying the /etc/apache2/apache2.conf file.

You may have to repeat the above instructions in some of the /usr/share/doc/apache2-doc/manual/ sub directories, like: developer, faq, howto, misc, mod, rewrites, programs, platform, ssl, and vhosts. As the documentation links to them as well.

3 Aug 2007

Away From Home, by Ame Haji Ame's

This is a poem written by one of the students I tutored last semester. I think It is worth posting on my blog.

Away from home in a strange land.
Young people don't greet "Mambo?".
You don't greet strangers in this land.
No anymore "Salaam Alaykum" to everyone.
Here people judge you with your colour,
They don't judge you with your hair and finger nails.
No combing your hair is fashion in this land!
You can't walk alone as you do in Stone-Town streets.
The food is labelled 'Halal' for Muslims.
Drinking alcohol is not a sin but big business
Females smoke more than males in this strange land!

In this land, fish is more expensive than beef.
This land is not English, but they grow English tomatoes.
Here dates are more expensive than apples!
Spices are thirty times expensive in this land.

But good things are here:
People don't walk kilometres for water.
There is no power rationing in this land.
Houses have heaters and not coolers in this land

But money kills people each and everyday.
Innocent people die, criminals live in total happiness!
Crime rate is higher than inflation rate in this land!
Cars are the best transport than bicycles on this land.
Birds don't sing but shout on this strange land!
Cameras are everywhere, privacy is nowhere in this land.
Marriages are no more for the opposite, but for the same sex.
People care for things and not beings on this land.

This land is so strange, making you think of home always.
This land is strange, and has more strangers.
This is a land of fear, and is a land of dreams.

My land is the land of peace,
The land of spices, and not pieces.
My land is the land of people and not things.
My land is the only haven under the sun.

by Ame (A-Zu)

19 Jul 2007

A good resource on how 2 on configure feisty

This site http://ubuntuguide.org/wiki/Ubuntu:Feisty has a complete how to guide on every thing you would want to configure in Ubuntu. It is defiantly worth a look at.

27 Jun 2007

Contacts, Calandar back up on online server

For a while now I have been looking for a way to sync my contacts, on my laptop and cell phone as well as my calendar. Scheduleworld.com provides a free way to do that.

It is compatible with Google's gmail, and gcal. So it provides an all in one solution. It also works with evolution mail client in Linux with a special plugin you can download.

All the information is on their web site. Check out these links to find out more.
http://www.estamos.de/projects/SyncML/Support.html
http://ubuntuforums.org/showthread.php?t=282408
http://www.scheduleworld.com/tg/syncmlInfo.jsp.

7 Jun 2007

nvidia restricted binary drivers and settings

I have found a really nice tool for setting up the xorg.conf and daul view. From the command line in Ubuntu type gksudo nvidia-settings. Up pops nvidias GUI tool for setting up your nvidia card and xorg.config.

Only it has problems, or at least I had problems. they relate to where some of the advanced nvidia settings are stored in a file called .nvidia-settings-rc. From your home directory type ls -a .nvidia-settings-rc. This file is basically used to initialize your graphics card at boot and is linked into the boot process through the init folder in /etc/rcX.d.

The problem I had with this file was that the permissions on it doesn't allow the program to rw access it and execute it. I may be wrong here. What I did to fix the problem was change the permissions from
user@user-machine:~$ ls -l .nvidia-settings-rc
-rw-r--r-- 1 user user 1511 2007-06-06 18:33 .nvidia-settings-rc
to
user@user-machine:~$ ls -l .nvidia-settings-rc
-rwxr-xr-x 1 aaron aaron 1511 2007-06-06 18:33 .nvidia-settings-rc
with a chmod 755 .nvidia-settings-rc. now it probably dose not need the execute permissions some thing to experiment with but make sure it has the rw.
basically try:
$ chmod u=rw,g=rw,o=rw .nvidia-settings-rc
$ gksudo nvidia-settings.

I still get a lot of ERROR .... (no Display connection) messages on the command line but at least now it actually generates the xorg.conf file in the /etc/X11/ directory.

I'm not sure what the error messages mean or how to fix it. It has some thing to do with the advanced options of gamma, colour saturation. This can be fixed but I didn't find it necessary to. There is some discussion at the nvidia forums. Check out this thread http://www.nvnews.net/vbulletin/showthread.php?t=61396 it seams to have the most though discussion on fixing it.

Please post you comment on this if you have any solutions for the ERROR ... (no Display connection) problem.

Ubuntu 7.04 Feisty Fawn

I am a real distro whore and have moved to yet another one. My favorite so far Ubuntu has always been on the top of the list of distros I wanted but with telkoms internet connection prices I have always chosen distros with more software then comes on the Ubuntu free cd.

I have used fedora 4, 5, and 6. I think that fedora gets a lot of free publicity because of Red Hat. It is no way near to the functionality and ease of use in the GUI that can be found in either suse or Ubuntu. I think any one who uses fedora just cause of it's relation to Red Hat should consider moving to suse or Ubuntu. I have only used these distros for desktop productivity, programing and web development. So as far as running a server is concerned I can't cant say which one is better.

I have used suse 9.2, 10, 10.1 and finally moved over to a complete Linux system one my acer travelmate 5623 with 10.2. I have to say that suse with yast make Life very easy. The GUI based install can be done buy any one and it is rpm based so all the red hat packages tend to be compatible. I have found it to be a little slow, and it has crashed on me relating to X windows problems. I have used the 3D desktop across two screens on suse with out much problems, although I prefer to use it with out desktop effects as it works better because Lap top and 19" dont have the same resolutions. Over all I am very happy with novels suse product. In terms of usability I have to say it is one of the easiest I have used.

I have installed Debian on an old Pentium 1 I had lying around. It was a pain, never got X to work so I never used the Gui. It was a pain to install, but then they aren't aim at making it easy to use they are aiming at making it stable so if X cant figure out what settings it is meant to have then it is doing what it was created to do be stable.

Now I have moved completely to Ubuntu. I was able to get a friend to download the dvd of 7.04 and this has so far been what I am looking for. I have struggled with X. Similar problems to that of Debian, the auto config is that automatic and requires some expert knowledge on how to set it up. But in general after googleing a bit I found the solutions I needed. For X and some other commonly tried advanced configurations such as visualization go to librenix. I also found that nvidia has made a graphical tool called nvidia-settings to solve most problems I will put my solution in a new post to make it easy to Google.

Ubuntu is faster then suse probably cause their generic kernel is using more i686 code and take better advantage of my SMP (symmetric muilt-processors, dual core). I have been playing with beryl and it is definitely hands down the best desktop effects product out there. More settings better features every thing is better. I still need to do some development on Ubuntu to get a better feel for it but so far it is exactly what I am looking for a LAMP system.

I understand them not including Java, adobe, and some other free but proprietary licensed software but once every thing is up and running all you need to do is enable the relevant repos through synaptic and you can easily download them. Synaptic comes close to yasts in that it allows you to add cd and dvd repos which make life a breeze. Synaptic though is not an all in one control panel like tool which is what yast is. I will stick with the way Ubuntu is laid out for the moment, though I might try to install yast a little later.

2 Jun 2007

xorg and xserver issues in Linux ubuntu

Dual monitor support in Linux seam lacking, so do tools to configure them. May be I not looking hard enough. I would have expected xorg to have written some nice GUI tools to configure the product.

Having to edit the xorg.config text file seams like a real waste of time, and is very confusing for new linux users. Do a search on google for xorg prolems and xserver problems there are just to many. Most come down the the automatic detection program / scripts not working. I dont have a problem with this cause there is just so much hard ware out their.

My suggestion for the the guys at xorg or who ever to create a nice gui front end for the xorg.config file with human understandable instructions on how to create a working conifg file. I will have a look into this my self when I have time. but in the mean time as I have now moved to ubuntu 7.04.

This link will suffice to help those wanting to create set up thier monitors for a dual view system http://ubuntuforums.org/showthread.php?t=221174.
This one is for just after install isues https://help.ubuntu.com/community/FixVideoResolutionHowto.
Like if you get the famous xserver failed to start error after a new install or you have screen resolution problems.

Free online and downloadable books

I am going to start of list of links for finding good free books to view on line or to down load. I will have a similar list as I have on the right hand side for ftp sites.

Good list of linux and open source materails as well as others. http://eo.yifan.net/users/k/aravind/olbooks.htm

28 May 2007

Nesting the SQL COUNT() function in MAX(COUNT())

EXPERT RESPONSE FROM: Rudy Limeback

QUESTION POSED ON: 23 June 2006

I am trying to run this query and I get an error:

SQL> select
2 * from member m
3 where m.username IN (select fg.username from filmography fg,
4 (select f.username,max(count(awards)) from filmography f
5 group by username,awards
6 having max(count(awards))
7 >0));
having max(count(awards))
*
ERROR at line 6:
ORA-00935: group function is nested too deeply

Please help me.

EXPERT RESPONSE

Okay, the error message is saying that you cannot nest functions like that.

It looks like all you want is the member with the most awards. Here's how I would do this in Oracle:

select username
, othercolumns
from member
where username in
( select username
from ( select username
from filmography
group
by username
order
by count(awards) desc
) as t
where rownum = 1
)

WHERE ROWNUM=1 is used to obtain the row which has the largest COUNT(AWARDS) in the innermost subquery.

I have seen many people struggled with this type of question at university now I have found a solution that works.

10 May 2007

New ftp / mirror site every one should have a look at

I just found this site while looking for local South African resources for open source distro's, and other open source product. This has to be one of the best sites that I have found ever. It has mirrors for Ubuntu, fedora, bsd, gentoo and a whole lot more. TENET Tertiary Education Network http://mirror.ac.za/

One of the best parts of this site is the local link to the MIT open course ware site. http://ocw.mirror.ac.za/. A brilliant place to read up on just about any thing from rocket science to management and psychology.
I will definitely be using this site a lot in the future.

here is a list of the links available
Mirror Description:
MIT Open Courseware
Course materials for a wide range of topics
PHP.NET Mirror
PHP is a server side scripting language for web devlopment
ProFTPD Mirror
Is a GNU open source mirror of the Pro FTP project which is ftp server software.
Mozilla Mirror
Blastwave Solaris FreewareMirror
GENTOO Linux Mirror
FreeBSD Mirror
Knoppix Linux
Ubuntu Mirror
Centos Mirror
Debian Mirror
Slackware Mirror
bio-mirror.net Mirror
Is a mirror of a database containing genetics research
OpenOffice Mirror
MySQL Mirror
CPAN Mirror
Comprehensive Perl archive network is a major resource for Perl programmers.
Fedora MirrorCTAN Mirror
Is a TEX mirror, TEX is a language / tool set for formating and structuring text for publishing web development and so on,
www.honeynet.org Mirror
Is a site focused on network security, they have a large library of network security related information.
Scientific Linux Mirror

9 May 2007

how to load a file in xspim

I am tutoring a class that teaches basic assembler using the mips architecture and spim. Im using linux so i got the source and compiled and installed it. I then began buy running xspim. What a pain no documentation enplaning any thing that I could make sense of. So here I am writing about how I got it to work.

This is how to load an assembler file and make sense of the first screen you see when you first run xspim.
start xspim buy typeing
#> xspim
at the comand line. or buy running it from the /usr/local/bin/xspim
#> /usr/local/bin/xspim
depending on your configuration.

The following window pops up.

The assembler you can see in the text segment part of the window doesn't run and out puts an error sayin
Instruction references undefined symbol at 0x00400014
jal 0x00000000 [main].
This code that is already loaded comes from the /usr/local/lib/exceptions.s file. It is the assembler code to load and run your file.

You can load your file buy clicking the load button in the middle part of the window. This is will open the following pop window.Input the file location relative to the root (/) directory ie as /home/#user/mips/my_file

click the assembly file button. You will see that the jal xxxxxxxx [main] command changes to reference your code at memory location xxxxxxxxx. which will be just after the load program code.
the jal xxxxxxxx [main] instruction is a jump and load instruction with the memory address and label [main] being the label. So you need to have a lable in your source code that contains a main label.
my_file looks like this
.text
main: addi $v0, $0, 5 # read into $t1
syscall
add $t1, $0, $v0
addi $t1, $t1, -32 # F -32
addi $t2, $0, 5
mult $t1, $t2 # (F -32) * 5 (mult before div)
mflo $t1
addi $t2, $0, 9
div $t1, $t2 # (F -32) * 5/9
mflo $t1
addi $v0, $0, 1 # print $t1
add $a0, $0, $t1
syscall
addi $v0, $0, 10 # exit
syscall

what's important here is th "main:" part of the code which will be where the jal xxxxxxxx [main] will jump to when running your assembler. Now you can step through your code and run it buy clicking the relevant buttons. You will notice that their args parameter references your mips file. You will need to edit your mips assembler file with an other program like gedit, or scite.

It took me a while to figure out how all this worked as the documentation dose not have a quick start tutorial or any thing like that. I hope this will be use full for some assembler hackers out there.