Linux force file system check
In Linux, you can not run fsck in the normal runlevel or with the file system in use.
You need to do that in single user mode by running "init 1"
or use the trick mentioned as following:
http://www.karkomaonline.com/article.php/20060411124210124shutdown:
The -f flag means 'reboot fast'. This only creates an advisory file /fastboot which can
be tested by the system when it comes up again. The boot rc file can test if this file
is present, and decide not to run fsck(1) since the system has been shut down in the
proper way. After that, the boot process should remove /fastboot.
The -F flag means 'force fsck'. This only creates an advisory file /forcefsck which
can be tested by the system when it comes up again. The boot rc file can test if this
file is present, and decide to run fsck(1) with a special 'force' flag so that even
properly unmounted file systems get checked. After that, the boot process should
remove /forcefsck.
--
Pop (Pu Liu)
Linux resources and boot disk
http://www-128.ibm.com/developerworks/linux/
IBM Linux portal
http://www.captain.at/howto-linux-boot-cd.php
This howto uses isolinux to boot the cd, not like other boot CD's, which use "El Torito". Booting a CD via "El Torito" uses a disk image similar like a floppy image, which will take care of loading and configuring the system and the rest of the CD.
Booting a CD with isolinux is pretty straight forward. Isolinux will load the kernel and the initial ram disk (initrd) - the ramdisk (with linuxrc) will take care of mounting the CDROM and doing further initialization.
The scripts:
- check.sh will check if all needed binaries and libraries are available on your base system. If something critical is missing, i.e. a library, replace the name of the library with the new name (most likely only the version number will have changed). Don't forget to update the symlink name aswell (if it has changed at all).
- make.sh will create the directory structure, copy binaries, libraries and configuration files.
- iso.sh will create the initial ramdisk (initrd), the root filesystem (rootfs) and the ISO CDROM image itself.
http://www-128.ibm.com/developerworks/linux/library/l-fireboot.html?ca=dgr-lnxmvp15fireboot
Say you want to use Linux in a dual-boot arrangement, but you don't have any free space on your computer's hard drive. One solution would be to use a "live" Linux distribution such as Knoppix, which can be run directly from CD. This is certainly viable for occasional use, but it has a number of serious drawbacks:
http://www.tldp.org/HOWTO/Bootdisk-HOWTO/buildroot.html
Creating the root filesystem involves selecting files necessary for the system to run. In this section we describe how to build a compressed root filesystem. A less common option is to build an uncompressed filesystem on a diskette that is directly mounted as root; this alternative is described in Section 9.1.
http://www-128.ibm.com/developerworks/linux/library/l-initrd.html
The initial RAM disk was originally created to support bridging the kernel to the ultimate root file system through a transient root file system. The initrd is also useful as a non-persistent root file system mounted in a RAM disk for embedded Linux systems.
http://www-128.ibm.com/developerworks/linux/library/l-linuxboot/
Linux boot up
Play with initrd
Resources
1.
http://www.cpqlinux.com/dig-initrd.html2.
http://www.faqs.org/docs/evms/x3834.html Unpacking an initrd
#prepare work directory
cd ~/temp
#Grap initrd
cp /media/cdrecorder/initrd.gz .
#unzip the file
gunzip initrd.gz
#you will get a new file named initrd
#create a directory as mount point
mkdir initrd.dir
#before mount it, change to super user
su
#mount it
mount initrd initrd.dir -o loop
#access it
cd initrd.dir
Packing an initrd (~/src/initrd/*)
#prepare work directory
cd ~/temp
#Create a file with 14M (14000*1k)
dd if=/dev/zero of=initrd bs=1k count=14000
#create a loop device from this file
losetup /dev/loop1 initrd
#create ext2 file system on this device
mkfs -t ext2 -m 0 /dev/loop1
#mount this file system under /mnt
mount /dev/loop1 /mnt
#copy file content from source to /mnt
cd ~/src/initrd/
#use tar to copy in order to keep symbolic links, file group, and permission)
tar cf - . | (cd /mnt; tar xf - )
#clean up
umount /mnt
losetup -d /dev/loop1
#the initrd is ready, zip it
cd ~/temp
gzip -f initrd
--
Pop (Pu Liu)
Linux: Copy Files
1.
http://www.sun.com/bigadmin/content/submitted/safely_copy_files.html2.
http://www.cs.hmc.edu/qref/targzip.html 3.
http://www.unixtips.org/4.
http://www.linux.com/guides/abs-guide/cp -r or cp -a might not be appropriate in some cases.
1. NFS (might be a partial copy)
2. symbolic links (will copy the actual content)
3. file group and permission (will lose)
An alternative could be using tar (from
http://www.linux.com/guides/abs-guide/)
(cd /source/directory && tar cf − . ) | (cd /dest/directory && tar xpvf −) # Move entire file tree from one directory to another
# [courtesy Alan Cox <
a.cox@swansea.ac.uk>, with a minor change]
# 1) cd /source/directory
# Source directory, where the files to be moved are.
# 2) &&
# "And−list": if the 'cd' operation successful,
# then execute the next command.
# 3) tar cf − .
# The 'c' option 'tar' archiving command creates a new archive,
# the 'f' (file) option, followed by '−' designates the target file
# as stdout, and do it in current directory tree ('.').
# 4) |
# Piped to ...
# 5) ( ... )
# a subshell
# 6) cd /dest/directory
# Change to the destination directory.
# 7) &&
# "And−list", as above
# 8) tar xpvf −
# Unarchive ('x'), preserve ownership and file permissions ('p'),
# and send verbose messages to stdout ('v'),
# reading data from stdin ('f' followed by '−').
#
# Note that 'x' is a command, and 'p', 'v', 'f' are options.
#
# Whew!
You can also use a tar pipe to copy across the network:
(cd /source/directory && tar cf − . ) | ( ssh server 'cd /dest/directory && tar xpvf −' )
--
Pop (Pu Liu)
enable existing applications for Grid
Quoted from
http://www-128.ibm.com/developerworks/grid/library/gr-enable4/Let's summarize the six strategies:
Strategy 1 | Batch Anywhere | The application can run as a single job on any of many computers in a grid. |
Strategy 2 | Independent Concurrent Batch | Multiple independent instances of the application can be running concurrently. |
Strategy 3 | Parallel Batch | The work of a batch program is subdivided so that multiple independent program instances can each work on part of the job in parallel. |
Strategy 4 | Service | A program becomes a service subroutine callable by a client through some grid middleware. |
Strategy 5 | Parallel Service | A program becomes multiple instances of a service subroutine callable in parallel by a client through some grid middleware. |
Strategy 6 | Tightly Coupled Parallel Programs | These specialized programs require, and are designed from the start for, intense tightly coupled parallel processing. |
--
Pop (Pu Liu)