- Where is the corresponding directory of DRBL client in server ?
^TOP^
| | It's in /tftpboot/nodes/$IP, where IP is the client's IP address, like /tftpboot/nodes/192.168.0.1.
There are directories:
dev etc root var
under /tftpboot/nodes/$IP.
For common root directory it's in /tftpboot/node_root, where all clients share this same one directory.
|
- How can I append boot time parameters of the Linux kernel to DRBL clients ?
^TOP^
| | You can modify the
/tftpboot/nbi_img/pxelinux.cfg/default
It's almost similar to grub syntax. And if you are familiar with syslinux, it's the same thing.
Say, if you want to append "vga=791" for client, you can find the "label drbl", and modify or append the "append" like
------------
append initrd=initrd-pxe.img ramdisk_size=12288 devfs=nomount drblthincli=off selinux=0 vga=791
------------
|
- How can I debug in the PXE initrd when client boots ?
^TOP^
| | In the early stage in PXE initrd when client boots, there is NO log file. However, you can try to debug by:
1. edit /usr/lib/mkpxeinitrd-net/initrd-skel/linuxrc
or
"/usr/lib/mkpxeinitrd-net/initrd-skel/linuxrc/udhcpc-post"
insert some code to debug, or just put a shell (/bin/sh) so you can enter the shell.
2. run "/opt/drbl/sbin/mknic-nbi" to generate the PXE initrd.
3. reboot the client, then you can see some logs or enter the shell.
|
- How can I start a service (like cron, sysklogd, klogd...) of DRBL clients in server ?
^TOP^
| | Only some necessary services of DRBL client are on, so if you need more services, like cron, sysklogd, klogd..., then:
In DRBL server, take service "cron" as an example, run:
/opt/drbl/sbin/drbl-client-service cron on
Then
(1) Reboot the clients, or
(2) Run /opt/drbl/bin/drbl-doit -u root "/etc/init.d/cron start"
if clients are already on.
|
- How can I run vmplayer in DRBL client machine ?
^TOP^
| | Here we take vmware-player 1.0.0-19317 as an example, and this method only works in the CPU arch matches each other in the server and client:
0. Make sure client's kernel is same with server, i.e.
For server, "uname -r"
For client, "cat /tftpboot/nbi_img/kernel_version_in_initrd.txt"
These two must match each other.
The CPU arch must be the same, too.
For server, "uname -m"
For client, "cat /tftpboot/nbi_img/client_kernel_arch.txt"
These two must match each other.
If not, you have to run "/opt/drbl/sbin/drblsrv -i" again, and let kernel of
client is same with that of server, or reinstall the kernel in the server to make it same with that in client.
1. wget http://download3.vmware.com/software/vmplayer/VMware-player-1.0.1-19317.i386.rpm
Or get the in http://www.vmware.com
2. sudo rpm -Uvh VMware-player-1.0.1-19317.i386.rpm
3. sudo vmware-config.pl
4. sudo /opt/drbl/sbin/dcs , then choose "others" -> re_deploy
or
run "/opt/drbl/sbin/drblpush -i" again.
5. Just in case, remove the file /etc/vmware/not_configured in every client by:
sudo /opt/drbl/sbin/drbl-rm-host /etc/vmware/not_configured
6. sudo /opt/drbl/sbin/drbl-client-service vmware on
7. If client is already on, you can run
sudo /opt/drbl/bin/drbl-doit "/etc/init.d/vmware start"
or
reboot the client
8. login client, run vmplayer
The principle is:
(a) The client must have the modules "vmmon" and "vmnet" that vmware need, and they exist in the client's kernel modules. For example, in CentOS 4.2, they exist in /tftpboot/node_root/lib/modules/2.6.9-22.0.1.EL/misc.
(b) The file "/tftpboot/nodes/$IP/etc/vmware/not_configured" should not exist if well configured (by vmware-config.pl).
|
- When I reboot the DRBL client in Ubuntu Breezy Linux, it just hangs there, any solution ?
^TOP^
| | This is a kernel problem, check this for more details:
http://ubuntuforums.org/showthread.php?t=85379
Maybe "reboot=h" will work for you, you can try to put it in /tftpboot/nbi_img/pxelinux.cfg/default like this:
---------------
label drbl
MENU DEFAULT
# MENU HIDE
MENU LABEL Clonezilla: unicast restore to primary IDE HD partition 1 (hda1)
# MENU PASSWD
kernel vmlinuz-pxe
append initrd=initrd-pxe.img ramdisk_size=12288 devfs=nomount drblthincli=off selinux=0 reboot=h
---------------
|
- How can I put my own kernel for DRBL clients ?
^TOP^
| | Ex: The kernel you compiled yourself: name is 2.6.11-1.steven with CPU arch i686.
a. Put these files to DRBL server
1. 3 filres in /boot
System.map-2.6.11-1.steven
config-2.6.11-1.steven
vmlinuz-2.6.11-1.steven
2. put the kernel and modules in /lib/modules, like:
/lib/modules/2.6.11-1.steven
b. depmod -a 2.6.11-1.steven
c. /opt/drbl/sbin/mknic-nbi -k 2.6.11-1.steven -i i686
-k: specifly the kernel name
-i: specify the CPU arch for DRBL clients, such as i386/i586/i686
Now you can boot the client to use the i686 kenrel 2.6.11-1.steven.
|
- How can I create module for some hardware, like Nvidia, ATI VGA card, to use in client ?
^TOP^
| | 1. If the client uses different kernel with that of server, install the kernel in the server which client is using. Here we take 2.6.12-10-686 as an example.
If you do not know the kernel name and CPU arch, run
cat /tftpboot/nbi_img/kernel_version_in_initrd.txt
cat /tftpboot/nbi_img/client_kernel_arch.txt
to get that.
2. Boot the server to the kernel 2.6.12-10-686
3. Compile and install the module for your hardware, such as download the necessary source from NVidia or ATI website
4. Run
/opt/drbl/sbin/mknic-nbi -k 2.6.12-10-686 -i i686
5. Boot the client, the client now will have the compiled modules.
|
- How can I share the printer in the server to clients ?
^TOP^
| | Take Fedora Core 3 as an example:
Assume the DRBL server IP address is 192.168.0.254,
1. Installed the driver and setup the local printer in DRBL server (such as via LPT PORT)¡Aand config the CUPS to share the printer (Note: in Fedora Core 3, the default setting of CUPS is DENY ALL¡Aso remember to open that to clents in /etc/cups/cupsd.conf).
2. In DRBL server, config the CUPS network printer¡Awhich means set the local printer as network printer. The path is CUPS ipp://192.168.0.254/printers/epsonc60 (You can find the string in /etc/cups/cupsd.conf)¡Aand set the network printer as the default printer. Here epsonc60 is just an example, so use yours.
3. Run "/opt/drbl/sbin/drblpush -i" again
4. Boot the client, you will see the network printer, which is the default printer.
|
- How can I insert bios flash program and firmware to the freedos so that I can upgrade the BIOS in client ?
^TOP^
| | Take Asus A8V-MX (client's motherboard) as an example (use the freedos 1.0-8drbl or later version provided by DRBL):
In server:
1. Download
bios firmware:
wget http://dlsvr01.asus.com/pub/ASUS/mb/socket939/A8V-MX/A8V-MX-0503.zip
and flash program:
wget http://dlsvr01.asus.com/pub/ASUS/mb/socket939/A8V-MX/AFUDOS217.zip
2. unzip them:
unzip A8V-MX-0503.zip
unzip AFUDOS217.zip
3. put them into a directory:
mkdir bios
mv AFUDOS.exe A8V-MX-ASUS-0503.ROM bios
4. As root, run /opt/drbl/sbin/insert-file-fdos.sh to put them into the freedos image in /tftpboot/nbi_img/:
/opt/drbl/sbin/insert-file-fdos.sh bios
Then a modified freedos image "/tftpboot/nbi_img/fdos1440_drbl.img" is created.
In client:
5. Now you can PXE boot the client into freedos, and the programs you put are in A:\DRBL\BIOS. You can follow your BIOS manual to upgrade the bios.
|
- How to get Japanese (Chinene, Korean) input method in English environment ?
^TOP^
| | Take Fedora Core 4 as an example:
Find a user, say it's john, login as John
0. cd ~/
1. mkdir -p ~/.xinput.d
2. ln -s /etc/X11/xinit/xinput.d/scim ~/.xinput.d/default
To apply this setting to all users,
0. login in the server as root
1. cd ~john/.xinput.d
2. /opt/drbl/sbin/drbl-cp-user -d .xinput.d default
If in the future, you want to remove the directory .xinput.d for every user, run
/opt/drbl/sbin/drbl-rm-user .xinput.d
If you want to make new user can apply this, you can try to add that setting in /etc/skel in the server like this:
0. in server, as root
1. cd /etc/skel
2. mkdir -p ~/.xinput.d
3. ln -s /etc/X11/xinit/xinput.d/scim ~/.xinput.d/default
Therefore, if you add new user later, that file will be automatically copied.
|
|