Wednesday, November 24, 2010

Clean Up first run wizard

If you run a lucid puppy from cd, you will look a starting program on the desktop and delayed time. For my clients that booting from LAN, this is not good look. Then, I discovery a file from /usr/sbin/delayedrun. I don't know how its work. I just delete a line of that script that run firstrunwiz.

It's work for me.

Saturday, September 4, 2010

Simple File Sharing with Pure-FTPD

I like this.

Pure-FTPD is in lucid puppy linux by default.
So, I put it to startup, on /etc/rc.d/rc.local
You can use with GUI :
Open Menu >> Network >> PcurlFtp file sharing
    
then
 
If the above steps are finished, the server is run and the script that runs the server will automatically be created in /etc/rc.d/rc.local

by default, the shared folder is / root / ftpd.If you want to move to a local hard disk, the following steps:
 1. Open the file / etc / passwd file with a text editor
 2. Replace some of the contents of the text below:

   
ftp:x:1000:1000:Linux User,,,:/root/ftpd: /bin/sh
   
with ftp:x:1000:1000:Linux User,,,:/initrd/mnt/dev_ro2/somefolder:/bin/sh
    
(I choose /init/mnt/dev_ro2/somefolder because it is automatically mounted when booting)


3.
Chown somefolder with the command:     # Chown ftp:root 
/initrd/mnt/dev_ro2/somefolder 
4. Restart server : run /etc/rc.d/rc.local, or reboot after remastering. 

Friday, September 3, 2010

Using local hardisk on lucid Puppy without manual mount

I prefer using frugal install for puppy linux without lupu-save.2fs. This make clean and not worry from bad setup.

So, if I decide to make new setup, then use remaster script from dougal.

But, I want to run something that place in local hard disk, at startup. So, the program that I want to on first booting will show up.

With a lot of time I spend, (this because I newbie), I know that a little editing, this is will done.

First, you have a puppy/puppies  that can booting from a HD, using grub. Example : from sda1.

Look and edit : /boot/grub/menu.lst on sda1. (search it!)

You should look at this part on it :

.....
kernel /lucifolder/vmlinuz pmedia=atahd psubdir=lucifolder
....

if pmedia=cd, than change it to : pmedia=atahd.

After reboot, sda1 atomatically mount on : /initrd/mnt/dev_ro2 not /mnt/sda1 although
on desktop item still appear sda1.

You can automatically run a script on it, but you must created a link to /root/startup folder before remastering.

Thursday, September 2, 2010

LAN PUPPY

I done build a network, five computers, with a computer that acts as server, just a HDD on server.
All used lucid puppy 503. Clients booting from network.

Great thanks to who has create puppy linux and derivatives.
Some tutorial came from ediwiyanto.wordpress.com >> install ubuntu totally from network.

Things to do, (you must first familiar to linux command and their directory).

  1. set tftp server with dnsmasq.
  2. set pxelinux.0 for booting from LAN, place into tftp directory. (you find it at /usr/lib/syslinux/pxelinux.0)
  3. build initrd.gz humongous lucid puppy 503 for clients, place into a directory inside tftp directory
  4. start dnsmasq (download : dnsmasq.pet)
  5. then client can booting from LAN
Full description (an example).

1. prepare tftp server

a. install dnsmasq.pet
b. edit or created a file : /etc/dnsmasq.conf and add like this :

# Configuration file for dnsmasq
# just 4 user client dinamic IP
dhcp-range=169.254.33.219,169.254.33.223,12h
# Set the boot filename for netboot/PXE
dhcp-boot=pxelinux.0
# Enable dnsmasq's built-in TFTP server
enable-tftp
# Set the root directory for files availble via FTP.
tftp-root=/somewhere/tftp
# Debugging
log-queries
log-dhcp
# Change this line if you want dns to get its upstream servers from
# somewhere other that /etc/resolv.conf
resolv-file=/etc/ppp/resolv.conf


c. create folder : /somewhere/tftp

2. prepare pxe booting
  • a. copy pxelinux.0 to /somewhere/tftp
  • b. created folder : /somewhere/tftp/pxelinux.conf
  • c. created a file named 'default' in /somewhere/tftp/pxelinux.conf
  • d. place script inside 'default' file like this :

default puppyos
prompt 1
timeout 1

label puppyos
kernel puppyos/vmlinuz
append ramdisk_blocksize=4096 initrd=puppyos/initrd.gz root=/dev/ram0



3. prepare lucid puppy for client
  • create folder : /somewhere/puppyos
  • extract lupu503.iso, then copy vmlinuz, initrd.gz, lupu-503.sfs to some place. (I used /root because I have big memory from linux-swap).
  • extract initrd.gz to initdir folder with this command line (run at rxvt console):
#mkdir initdir
#cd initdir
#zcat ../initrd.gz | cpio -i -d

note: your current directory must same as initrd.gz placed.
  • copy lupu-503.sfs to initdir that you made of.
  • compress initdir to initrd.gz with this command line (run at rxvt console):
#cd initdir
#find . | cpio -o -H newc | gzip -9 > ../initrd.gz
  • copy the final initrd.gz and original vmlinuz to /somewhere/tftp/puppyos folder.
4. run dnsmasq from console :
#dnsmasq -d

5. Turn on computer client. DONE!

special note :

Before do this, you must try first booting from cd or flashdisk on computer clients. If can, try booting from LAN .

Your computer client must have option that can booting from network. Set your bios setup first. A modern PC has this option.