Archive for the ‘Technology’ Category
Ubuntu 11.04 Natty Narwhal 64-bit Guide Part 2 – Installing GNOME3
In this post, we are going to install GNOME3.
Step 1: Make sure you got Unity to work. This is very important. We don’t want to install Gnome3 on an ailing system.
Step 2: Update everything, if not already one in Part 1.
sudo apt-get update sudo apt-get upgrade sudo reboot
Step 3: Install GNOME3
sudo add-apt-repository ppa:gnome3-team/gnome3 sudo apt-get update sudo apt-get dist-upgrade sudo apt-get install gnome-shell gnome-session sudo apt-get -f install sudo apt-get install gnome-shell sudo apt-get install gnome-session sudo apt-get remove gnome-accessibility-themes sudo apt-get install gnome-themes-standard sudo apt-get install -f
Step 4: Now, reboot your system.
sudo reboot
And then, log into the session named ‘GNOME’. If everything worked out alright, you should be in GNOME3.
The gnome-tweak-tool lets you make minor modifications to the way the Gnome Shell looks/interacts. In a subsequent post, we will look at various customizations that are possible.
References:
1. http://ubuntuforums.org/showpost.php?p=10734567&postcount=1. Read this for a detailed description of all the steps.
Ubuntu 11.04 Natty Narwhal 64-bit Guide Part 1
This is meant to be a record of all that I did to customize Ubuntu 11.04 Natty Narwhal 64-bit on my self-assembled desktop (Core i7 920, 6 GB Corsair TR3X6G1600, Gigabyte EX58 Extreme, NVIDIA GTX295) and my laptop (Dell XPS 15 L501x: Core i7 740 QM, 6GB DDR3 RAM, NVIDIA GT435M, 1920×1080 dp HD screen). It is mostly unoriginal, and credits have been given where they are due to various sources on the internet.
First of all, I strongly recommend a fresh install. There are lots and lots of threads out there with people posting problems after problems with upgrades from Maverick Meerkat 10.10. Typically most of you will need to back up your home directory $HOME (or ~/). You can just create a tarball and save it to a USB drive or a CD. If you’re an expert/intermediate user who knows what the stuff in all those ‘hidden’ directories beginning with a . is, then you probably won’t need to do that either.
After a fresh install, the first thing to do is to get the latest updates
sudo apt-get update sudo apt-get upgrade sudo apt-get dist-upgrade sudo reboot
The first updates will take a long time. You can also use the update-manager. In this post, I will always provide command line interface (CLI) solutions, as I don’t care much for GUIs. But they have their advantages, and if you are more comfortable with GUIs use them instead. There will be some instances where you’ll need to be familiar with the CLI (e.g. if you’re installing accelerated NVIDIA drivers, or if X windows fails to load).
Installing proprietary accelerated NVIDIA Drivers
When you first boot into Natty, you will most likely get a message indicating that your hardware is not capable of running Unity, and that you will be taken to the classic GNOME interface. This is because by default, restricted drivers are not installed. To install restricted drivers, click on the System menu, and select ‘Additional Drivers’ under Administration (System -> Administration -> Additional Drivers). Your window will look a little like this:
You will most likely see two entries – we’re interested in the first one. I have taken a screenshot after installing these drivers, and then switching to drivers downloaded directly from NVIDIA. Most people will not require this, unless they intend to program in CUDA. Anyway, activate the first entry on the list. This will download and install the restricted driver. Now, reboot your system. You should be able to boot into Unity. This will be our starting point.
Installing Sun Java
By default, Natty comes with Open JDK. I prefer Sun’s JDK/JRE. To install it, type
sudo add-apt-repository ppa:ferramroberto/java sudo apt-get update sudo apt-get install sun-java6-jre sun-java6-plugin sun-java6-fonts
To use Sun’s Java, you’ll probably have to change the default java version using
sudo update-alternatives --config java There are 2 choices for the alternative java (providing /usr/bin/java). Selection Path Priority Status ------------------------------------------------------------ 0 /usr/lib/jvm/java-6-openjdk/jre/bin/java 1061 auto mode 1 /usr/lib/jvm/java-6-openjdk/jre/bin/java 1061 manual mode * 2 /usr/lib/jvm/java-6-sun/jre/bin/java 63 manual mode Press enter to keep the current choice[*], or type selection number:
Pick option 2 (or the one which does not correspond to OpenJDK). To confirm that the change occurred, type
java -version
You should see something like
java -version java version "1.6.0_25" Java(TM) SE Runtime Environment (build 1.6.0_25-b06) Java HotSpot(TM) 64-Bit Server VM (build 20.0-b11, mixed mode)</pre>
Install JDownloader (optional)
JDownloader is a Java-based download manager, which in my experience, is more reliable than many other download managers I’ve used. To download and install JDownloader, type
sudo add-apt-repository ppa:jd-team/jdownloader sudo apt-get update sudo apt-get install jdownloader
Installing proprietary NVIDIA drivers from http://www.nvidia.com
Power users, especially programmers, will find it necessary to have support for additional libraries such as CUDA. The drivers we just installed above do not provide CUDA support (at the time of writing). But NVIDIA provides Linux drivers, and they can be downloaded from http://www.nvidia.com/Download/index.aspx?lang=en-us.
To install this driver, log out of Gnome/Unity, and at the graphical log-in screen press Ctrl+Alt+F1 to switch to console mode. Then, type
sudo service gdm stop
Then, navigate to the directory containing the nvidia driver .sh file, and type
sudo sh ./filename.sh
Follow the on-screen instructions. Reboot the system. You should see an NVIDIA splash screen before the log-in screen. Note that you may have to do this a couple of times for it to work.
Installing CUDA
Download the CUDA toolkit and SDK from http://developer.nvidia.com/cuda-downloads or http://developer.nvidia.com/cuda-toolkit-40#Linux. Add the following lines to $HOME/.bashrc
export PATH=/usr/local/cuda/bin:$PATH export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH
Follow the installation instructions in the Getting Started guide: http://developer.download.nvidia.com/compute/DevZone/docs/html/C/doc/CUDA_C_Getting_Started_Linux.pdf
You will most likely face a bunch of errors, which can be resolved by reading an earlier post of mine: https://leastaction.wordpress.com/2011/01/25/cuda-on-ubuntu-maverick-meerkat-10-10/.
You will also have to update symbolic links:
sudo ln -s /usr/lib/libGL.so.xx.xx.xx /usr/lib/libGL.so
Note: Recent updates to xserver-org-core and xserver-common are likely to crash your Gnome3 and/or OpenGL configuration. To fix this problem, you have to also restore another symbolic link:
sudo mv /usr/lib/xorg/modules/extensions/libglx.so /usr/lib/xorg/modules/extensions/libglx.so.orig sudo ln -s /usr/lib/xorg/modules/extensions/libglx.so.270.41.06 /usr/lib/xorg/modules/extensions/libglx.so
The version 270.41.06 may have to be replaced by the version of the driver you are presently using. This can be determined by typing
nvidia-settings -v
References:
1. http://www.multimediaboom.com/how-to-install-java-in-ubuntu-11-04-natty-narwhal-ppa/
2. http://www.webupd8.org/2010/04/install-jdownloader-via-ppa-repository.html
3. http://ubuntuforums.org/showpost.php?p=10883998&postcount=2
4. https://leastaction.wordpress.com/2011/01/25/cuda-on-ubuntu-maverick-meerkat-10-10
Use the Ubuntu Live CD to mount your local installation
If you’re having trouble booting into Ubuntu, you can boot off the Live CD/DVD, and click on “Try Ubuntu”. Then, fire up a terminal window and type
sudo mount /dev/sdXX /mnt (XX is where your installation is, e.g. sdb1) sudo mount --bind /dev /mnt/dev sudo mount --bind /dev/pts /mnt/dev/pts sudo mount --bind /proc /mnt/proc sudo mount --bind /sys /mnt/sys sudo chroot /mnt
These commands will mount your Ubuntu system in /mnt, and the last command will change the root directory to /mnt, so whatever commands you issue will now apply to your original Ubuntu installation (not the Live CD).
After you’ve diagnosed and repaired the problem, type
exit sudo umount /mnt/dev/pts sudo umount /mnt/dev sudo umount /mnt/proc sudo umount /mnt/sys sudo umount /mnt
CUDA on Ubuntu Maverick Meerkat 10.10
(To be edited)
If you’re getting errors like
/usr/bin/ld: cannot find -lGL /usr/bin/ld: cannot find -lGLU /usr/bin/ld: cannot find -lX11 /usr/bin/ld: cannot find -lXi /usr/bin/ld: cannot find -lXmu /usr/bin/ld: cannot find -lglut
then you need to do the following
sudo apt-get install libxi libxi-dev
Running make again will result in the following errors:
/usr/bin/ld: cannot find -lGL /usr/bin/ld: cannot find -lGLU /usr/bin/ld: cannot find -lXmu /usr/bin/ld: cannot find -lglut
Now, let’s execute:
sudo apt-get install freeglut3 freeglut3-dev
This brings down the errors to
/usr/bin/ld: cannot find -lXmu
So, we just have to do one more apt-get:
sudo apt-get install libxmu6 libxmu-dev
—-
If you get errors suggesting that your libcudart.so.1 is missing, it means your LD_CONFIG_PATH isn’t set right. To set it permanently, use
sudo ldconfig -v /usr/local/cuda/lib64/
on a 64-bit system and
sudo ldconfig -v /usr/local/cuda/lib/
on a 32 bit system.
CUDA on a Dell XPS 15 in Windows 7 64-bit
I just figured out how to get NVIDIA CUDA to work on my laptop. You need to replace the generic Dell driver with this one:
266.58_notebook_winvista_win7_64bit_international_whql.exe
You need to do a custom clean installation and make sure the PhysX box is checked.
I had to do some CUDA programming on the Windows partition, so now I have to figure out how to configure all my IDEs to work with CUDA. I will try and post detailed configuration info for Netbeans at least.
Thermal Noise Engines
I just stumbled upon an interesting paper today on arXiv, from a researcher at the Department of Electrical Engineering at Texas A&M University. I am copying the abstract entry on the pre-print archive below.
Thermal noise engines
Authors:Laszlo B. Kish(Submitted on 29 Sep 2010 (v1), last revised 20 Oct 2010 (this version, v5))Electrical heat engines driven by the Johnson-Nyquist noise of resistors are introduced. They utilize Coulomb’s law and the fluctuation-dissipation theorem of statistical physics that is the reverse phenomenon of heat dissipation in a resistor. No steams, gases, liquids, photons, combustion, phase transition, or exhaust/pollution are present here. In these engines, instead of heat reservoirs, cylinders, pistons and valves, resistors, capacitors and switches are the building elements. For the best performance, a large number of parallel engines must be integrated to run in a synchronized fashion and the characteristic size of the elementary engine must be at the 10 nanometers scale. At room temperature, in the most idealistic case, a two-dimensional ensemble of engines of 25 nanometer characteristic size integrated on a 2.5×2.5cm silicon wafer with 12 Celsius temperature difference between the warm-source and the cold-sink would produce a specific power of about 0.4 Watt. Regular and coherent (correlated-cylinder states) versions are shown and both of them can work in either four-stroke or two-stroke modes. The coherent engines have properties that correspond to coherent quantum heat engines without the presence of quantum coherence. In the idealistic case, all these engines have Carnot efficiency, which is the highest possible efficiency of any heat engine,without violating the second law of thermodynamics.
Direct Link: http://arxiv.org/abs/1009.5942
This is a very interesting paper. Who knows what the future has in store for us…quantum thermal power stations?
The End of An Era
The BIOS will soon be gone…
You must be logged in to post a comment.