Friday, May 25, 2007

Ram in Bangla in Debian Etch


To type U+200D in ben_probhat use "shift + ="




to write this in Debian Etch use (ben_probhat)

r + shift + = + / + shift + z + a + m

U+200D ZERO WIDTH JOINER


/usr/share/X11/xkb/symbols/in

xkb_symbols "ben_probhat" {
name[Group1]= "India - Bengali Probhat";

key <AE12> { [ equal, 0x100200D ] };


Special thanks and all credits goes to Sayamindu (who solve this problem in bn)

http://sayamindu.randomink.org/ramblings/2007/04/09/ra-japhala-in-bengali-bn-and-unicode-50/



thanks to Omi Azad for sending me the in pidgin

Note: It also works in Ubuntu 7.04 (Feisty Fawn)

Link

Sunday, May 20, 2007

Bangla/Bengali In Debian Etch

Install this package.

#apt-get install ttf-bengali-fonts ttf-indic-fonts

you may need to restart your Xserver to view bangla/bengali.

System-->Preferences-->Keyboard



Click Add





Layout Option--->Group Shift/Lock behaviour (or use whatever you like)



Now I can switch to Bangla/English by pressing two ALt key together.
(Use any option here that you like)

Friday, May 18, 2007

Xen Installation in debian etch

Install Xen first

#apt-get update
#apt-get install xen-hypervisor-3.0.3-1-i386 xen-utils-3.0.3-1
#apt-get install linux-image-2.6.18-4-xen-686

give the version no according to you deb repository.

edit /etc/xen/xend-config.sxp
------------------------------
uncomment this two line
(network-script network-bridge)
(vif-script vif-bridge)

Install tools for xen
#apt-get install bridge-utils iproute sysfsutils libc6-xen xen-tools

Create a directory
#mkdir /home/xen

edit /etc/xen-tools/xen-tools.conf

here is my sample config file
(Here I am showing only uncomment part)
dir = /home/xen
debootstrap = 1
# Disk and Sizing options.
##
#
size = 1Gb # Disk image size.
memory = 128Mb # Memory size
swap = 128Mb # Swap size
# noswap = 1 # Don't use swap at all for the new system.
fs = ext3 # use the EXT3 filesystem for the disk image.
dist = etch # Default distribution to install.
image = full # Specify sparse vs. full disk images.

##
# Networking setup values.
##

#
# Uncomment and adjust these network settings if you wish to give your
# new instances static IP addresses.
#
gateway = 192.168.7.1
netmask = 255.255.255.0
#
# Uncomment this if you wish the images to use DHCP
#
# dhcp = 1

# Uncomment the following line if you wish to interactively setup
# a new root password for images.
#
passwd = 1

# Default kernel and ramdisk to use for the virtual servers
#
kernel = /boot/vmlinuz-2.6.18-4-xen-686
initrd = /boot/initrd.img-2.6.18-4-xen-686

# The default mirror for debootstrap which can be used to install
# Debian Sid, Sarge, and Etch.
#
mirror = http://ftp.debian.org/debian/


To create an image (here I am showing with debootstraping)
#xen-create-image --hostname=test --ip=192.168.7.90 --passwd
it will ask for the root passwd after finish the debootstrap.


edit /etc/xen/test.cfg

check the kernel version is correct for your system
kernel = '/boot/vmlinuz-2.6.18-4-xen-686'
ramdisk = '/boot/initrd.img-2.6.18-4-xen-686'

xen-tools generate the disk sda for me. Later I change it to hda
root = '/dev/hda1 ro'
disk = [ 'file:/home/xen/domains/test/disk.img,hda1,w', 'file:/home/xen/domains/test/swap.img,hda2,w' ]

check you ip
if = [ 'ip=192.168.7.90' ]





To start the vm
#xm create test.cfg -c

it will start to boot (simple output)
-------------------------------------
checking file systems...fsck 1.40-WIP (14-Nov-2006)
done.
Setting kernel variables...done.
Mounting local filesystems...done.
Activating swapfile swap...done.
Setting up networking....
Configuring network interfaces...done.
INIT: Entering runlevel: 2
Starting system log daemon: syslogd.
Starting kernel log daemon: klogd.
* Not starting internet superserver: no services enabled.
Starting OpenBSD Secure Shell server: sshdNET: Registered protocol family 10
lo: Disabled Privacy Extensions
IPv6 over IPv4 tunneling driver
.
Starting periodic command scheduler: crond.

Debian GNU/Linux 4.0 test tty1

test login:

or use
#xenman
file-->open Domain File
and select the /etc/xen/test.cfg





Here is the nmap output for ip 192.168.7.90
Interesting ports on test (192.168.7.90):
Not shown: 1696 closed ports
PORT STATE SERVICE
22/tcp open ssh
MAC Address: 00:16:3E:1F:8F:58 (Xensource)
Device type: general purpose
Running: Linux 2.6.X
OS details: Linux 2.6.17.9 (X86)
Uptime: 198.839 days (since Tue Oct 31 15:09:34 2006)
Network Distance: 1 hop



Now I can ssh to my 192.168.7.90
#debian:/home/salahuddin# ssh root@192.168.7.90
root@192.168.7.90's password:
Last login: Fri May 18 05:50:41 2007
Linux test 2.6.18-4-xen-686 #1 SMP Mon Mar 26 21:49:04 UTC 2007 i686

The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
test:~# ifconfig
eth0 Link encap:Ethernet HWaddr 00:16:3E:15:BC:3F
inet addr:192.168.7.90 Bcast:192.168.7.255 Mask:255.255.255.0
inet6 addr: fe80::216:3eff:fe15:bc3f/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:92 errors:0 dropped:0 overruns:0 frame:0
TX packets:36 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:15420 (15.0 KiB) TX bytes:5239 (5.1 KiB)

lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)

test:~#halt

Broadcast message from root@test (ttyp0) (Fri May 18 06:16:58 2007):

The system is going down for system halt NOW!
test:~# Connection to 192.168.7.90 closed by remote host.
Connection to 192.168.7.90 closed.
debian:/home/salahuddin#



Note:
Change your kernel path and disk config according to your system.
First time I tried with image = sparse in /etc/xen-tools/xen-tools.conf but it did not work for me.
Later I give image = full.


for more doc:

http://wiki.debian.org/Xen

http://www.debian-administration.org/articles/396
http://www.howtoforge.com/perfect_setup_xen3_debian

https://help.ubuntu.com/community/XenVirtualMachine/XenOnUbuntuEdgy

Thursday, May 17, 2007

Simple Bird in Inskscape



The Inkscape Logo.

Here is my simple bird I design it using Inkscape. See the image step by step.









At last.



Note: First get an original picture of the bird then see it carefully and start you design.

Simple 3d ball in Inkscape



The Inkscape Logo.


Here I am designing a simple 3d ball.



See the image step by step.




At the last I am trying to create a shadow.




I give some effect to the shadow, like the real world, then rotate our light direction in the ball so that it match or follow our real world.




Always think about the real world rules that the materials and light follow.

This is just a simple design for the beginner...

Wednesday, May 16, 2007

Post Html code in Blog



to post html code in your blog or in a html page. Just convert the HTML code to Special characters. (so simple)

src: http://hjem.get2net.dk/fec/shtmlc/shtmlc.html

Tuesday, May 15, 2007

Bangla to Hex

Here is my Bangla to Hex converter using php and little ajax. Thanks to Mr. Jamil for giving me this idea.



index.php

<html>
<head>
<script type="text/javascript" src="ajax.js"> </script>
</head>
<body>
<div align="center"><h1>Bangla HEX</h1></div>
<div align="center">salahuddin66.blogspot.com</div>
<br><br>
<form>
Input in UTF-8: <input type="text" name="input" onkeyup="show(this.value)">
</form>
<p>Hex: <span id="txtHint"></span></p>
</body>
</html>

ajax.js

var xmlHttp

function show(str0)
{
xmlHttp=GetXmlHttpObject()
if (xmlHttp==null)
{
alert ("Browser does not support HTTP Request")
return
}
var url="show.php"
url=url+"?q="+str0
url=url+"&sid="+Math.random()
xmlHttp.onreadystatechange=stateChanged
xmlHttp.open("GET",url,true)
xmlHttp.send(null)
}

function stateChanged()
{
if (xmlHttp.readyState==4 || xmlHttp.readyState=="complete")
{
document.getElementById("txtHint").innerHTML=xmlHttp.responseText
}
}

function GetXmlHttpObject()
{
var xmlHttp=null;
try
{
// Firefox, Opera 8.0+, Safari
xmlHttp=new XMLHttpRequest();
}
catch (e)
{
//Internet Explorer
try
{
xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e)
{
xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
}
}
return xmlHttp;
}


show.php
<?php

$q=$_GET["q"];

unibin2hex($q);

function unibin2hex($u) {
$k = mb_convert_encoding($u, 'UCS-2LE', 'UTF-8');

$position = 0;

$run = strlen($u)/3;

for($i=0; $i<$run; $i++) //bengali char strlen return 3 for one char so div by 3 . Here run the loop for i
{

$k1 = bin2hex(substr($k, $position, 1)); //convert unicode part by part using bin2hex using substr
$k2 = bin2hex(substr($k, $position+1, 1));

$out = $k2.$k1; //combine two sub scring that we use to convert.

echo " ". $out; // out

$position = $position +2; //here we are converting part by part by so we need to increase 2 in every step

}
}
?>

HDD Partitioning in Linux

Technically, a hard disk should contain either as many as four primary partitions, or one to three primaries along with a single extended partition. Each of these partitions are described by a 16-byte entry in the Partition Table which is located in the Master Boot Record.

src: http://en.wikipedia.org/wiki/Partition_(computing)


Many poeple confused with Linux partitioning system when they are installing Linux for the first time. In linux they see hda1 then hda5 but they are familiar with C:, D: etc

your HDD can be recognize by hda, hdb,hdc,hdd, sda, sdb etc depending on the master, slave and cable position. Here i am describing with hda


A HDD with 4 Primary Partitions


here hda4 is the full extended partion so extended partition start from hda5



generally a windows / most of the PC has this type of partition system.

here hda2 is the full extended partion and hda3 and hda4 are reserved as we can create 2 more primary partitions so extended partition start from hda5

Extended partition generally start from hda5

so if anyone want to install linux in his G: drive then he need to delete the hda8 then create 2 partitions

one swap space (it can be compare with windows virtual memory) ram * 2 (size recomanded) and another root / partition.

Note: I would suggest to create swap first then root / partition and at the last of the HDD sector more then or at least 8 MB free unallocated space. When user need to reinstall windows sometimes it creates problem, if there is no free unallocated space.

Sunday, May 13, 2007

Back from JU Open Source Camp - 3

Just back from Jahangirnagar University

Group Photo

Organizer with Guest

Thursday, May 10, 2007

Going to JU Open Source Camp - 3

Me (salahuddin66), Jamil Ahmed, Suzan, Zaher is starting for Jahangirnagar University to attend the

Open Source Camp - 3
Sponsored by Prime Bank
11th - 12th May 2007
Savar, Bangladesh




Monday, May 07, 2007

Recover GRUB after reinstall windows

Boot using a Live CD or Installation CD.

mount your linux partition. Chroot, mount /proc and give the grub specific command to overwrite or update the mbr or where you want.

like my Linux root in /dev/hda6

after boot with the Live CD

#mkdir /mnt/lin (create a folder to use as a mount point)
#mount /dev/hda6 /mnt/lin
#chroot /mnt/lin
# mount /proc
#grub-install /dev/hda
or
#update-grub

the update-grub and grub-install command will work of Debian, Ubuntu and Debian based distro. If your are using other distribution. Read their grub policy and command. Here chroot will enable you to access the existing Linux system using the live CD kernel.

note: If you use normal Installation CD to recover grub then you might need to give the path known by the kernel. Like then you may need to use ../disc0/part4/ etc instead of /dev/hda6. You can find the exact path by execution a script called os-prober that generally comes with the installation CD of Debian.