scrabble word finder

Brief History of Scrabble. Scrabble is one of the most beloved games in history and Scrabble word finder can increase pleasure. More than 150 million Scrabble sets have been sold worldwide as of 2009. The game is printed in 29 different language versions, and is sold in over 121 countries. Countless rainy afternoon has been filled with good Scrabble game by people around the world.

However, while Scrabble can be fun and beautiful, can also be challenging. This is especially true if you have letters that are difficult, like the letter X, or if you have seven consonants and no vowels. Fortunately, there are many online resources that can help you solve a sticky situation Scrabble.

Directions Scrabble dictionary – this explains all about how to use as Scrabble dictionary. This guide step-by-step will turn you into a Scrabble dictionary Dictionary covers it all, as the search words Scrabble, giving you access to every word in English that could potentially be used to play Scrabble you.

Scrabble Word Finder – This site helps players who are stuck trying to make a word out of the tiles they have to play. Players can input their tiles in their hands and move their opponent so that the site will suggest the best word.

Two and Three Letter Scrabble Words – Phrontistery this list received a letter 2 and 3 letter Scrabble words as determined by the National Scrabble Association.

A2Z Word Finder – A2Z is ​​basically a Scrabble dictionary. Players can enter the letters in their rack and mouse click reveals the word assessment of the use of their sites letters.The offer American Dictionary of words, but also offers dictionaries in many other languages. This site has been developed to improve the vocabulary of the player, to provide help and not as a Scrabble Scrabble cheat.

Words with the Letter Q – Scrabble page provides a list of all words accepted in Scrabble games that use the letter Q. The list includes words that can be spelled without the letter U, the words that starts specifically with the letter Q, and the words beginning with other letters, but using Q elsewhere in the word.

Words with the letter Z – World MSO web site lists all acceptable Scrabble words that both start with the letter Z or require the letter Z for the correct spelling. Individual words are grouped by the number of letters they contain. All words are presented is taken from the Official Scrabble Words, 4th Edition and the Official Tournament and Club Word List was developed for Scrabble fans.

Scrabble Word List – NTL World is an all in one resource for a list of words for Scrabble. The list includes words that have letters that are often difficult to use in Scrabble, two and three letter words, and received words with common prefixes and suffixes.

Other Scrabble Resources

Rules Official Scrabble – Scrabble Scrabble page contains the official rules. Information including Scrabble, Scrabble tiles, Tiles Value, Value Point Extra, and all the extra rules played an official game.

Scrabble Association – This site contains the official rules for playing games like Scrabble tournaments issued by the National Scrabble Association (NSA). In addition to the rules, the site also provides information about the authentic renewal of the tournament rules.

Scrabble Tournament – For Scrabble fans interested in tournament competition this is the site to visit. This website, from the National Scrabble Association, provides a calendar tournaments in the United States and Canada.

Download Scrabble – Download Free Games provide a version of Scrabble as a PC game downloads. Individuals can download and play 30 minutes a free trial version of the game before making a commitment to purchase the full version for a small fee. The game includes a dictionary of words and score tracker.

Solaris Filesystem Quotas

A frequent source of grief for the UNIX administrator is the management of shared disk space. Users all too often consume all available disk space, thus precipitating errors for everyone using that filesystem. Unfriendly users can disrupt other users’ work by deliberately filling a shared filesystem with one or more large files. Disk quotas can be used to limit the amount of disk space each user is allowed to use. This is the procedure for setting up a filesystem for quota use.

1. The mount option quota must be added to /etc/vfstab or the appropriate automount map. Here is an example vfstab entry.

/dev/dsk/c0t1d0s7 /dev/rdsk/c0t1d0s7 /export/home ufs 2 yes quota

2. As root, create a file called quotas in the root directory of the filesystem (in this case, /export/home/quotas). In this example, use the command touch /export/ home/quotas.

3. Set up a prototype quota entry for a single user with the edquota command. An example entry:

fs /export/home blocks (soft = 8000, hard = 9999) inodes (soft = 800, hard = 999)

In this example, the user’s soft disk space limit is 8,000 blocks (times 512 bytes equals 4 MB); the hard disk space limit is 9,999 blocks (5 MB). The soft inode limit (the number of files the user may own) is 800, and the hard limit is 999.

When a user exceeds a soft limit, a dialogue box is displayed in Figure.  When a user exceeds a hard limit, the user will not be able to create files. The error message seen is “Disc quota exceeded.”

4. Replicate the prototype entry to other users as needed with the edquota command. An example command is

# edquota -p phil mary john sue rick larry ralph april

In this example, the quotas values for user phil are replicated to users mary, john, sue, rick, larry, ralph, and april.
5. Activate quotas with the quotaon command.
6. Build initial quota statistics with the quotacheck command.
7. Create a quota report with the repquota command. Here is a sample report.

# repquota -a
/dev/dsk/c0t1d0s7 (/export/home):
Block limits File limits
User used soft hard timeleft used soft hard timeleft
phil +- 17402 999 99999 7.0 days 197 9999 9999

In this example, user phil has exceeded his block limit quota; files owned by phil are taking too much disk space. This is signified both by the “+ -” symbol and by the “timeleft” field for block limits on the report.

Solaris System Device Access Permissions

Solaris is shipped with appropriate permissions assigned to device files such as disk drives, tape drives, and memory. These permissions are discussed here.

A word should be said for Sun’s method of indirect references to commonly used devices. For instance, typical disk devices are referenced by SCSI controller and device number, such as


This example signifies a disk device, controller 0, SCSI target 3, disk 0, slice 0. But examination of this file shows that it is not a device file, but instead a logical link to the file named

Permissions of this file (in ls -l format) are brw-r—– 1 root sys.


Under no circumstance should the permissions of a disk device be changed. A change could result in an entire filesystem being readable or writable by everyone.

Tape drive device permissions are looser, as tape drives are by default considered to be accessible by all users. Permissions of tape drives (in ls -l format) are crw-rw-rw- 1 root sys. For a production environment, tape device permissions should be tightened so that only the userid actually performing backups will have read and write permissions to relevant tape drive devices.

Solaris memory devices are /dev/mem and /dev/kmem. These devices are logical links to ../../devices/pseudo/mm@0:mem and ../../devices/pseudo/mm@0: kmem, respectively. Permissions for these devices (in ls -l format) are crw-r—– root sys.


Under no circumstance should the permissions of a memory device be changed. A change could result in process table and device buffer information being readable or writable by everyone.

How to Find Files with Specific Permission Settings in unix ?

The UNIX administrator needs to know how to find files with specific security settings. Here are a few examples of the find command.

1. Find all SetUID files in and under the current working directory (.).

% find . -type f -perm -4000 -print

2. Find all SetGID files in and under the current working directory (.).

% find . -type f -perm -2000 -print

3. find all world-writable files in and under the current working dir- ectory (.).

% find . -type f -perm -o+w -print

umask configration in unix

Ksh and umask -S

The Korn shell has a nice feature with its built-in umask command. The -S option is used to symbolically—rather than numerically—display the user’s umask. For example
% sh
% umask
% ksh
% umask
% umask -S

Default File Permissions and umask

Permissions for files that are created with commands such as vi, cp, or touch or with shell redirection are determined by applying the process’s umask value to the initial value 666. This is illustrated in the following example.
% umask
% touch
% ls -ld test
-rw-r—– 1 pete staff 0 Oct 1 07:17 test
In this example, the file’s permissions can be calculated as 666 (initial value) less 027 (umask) equals 640 (the file’s permissions).

Root User umask

I recommend that root’s umask be set to 077 or 027. This will result in any file created by root being not readable or writable by others.

Default Directory Permissions and umask

Permissions for directories created with commands such as mkdir are determined by applying the process’s umask value to the initial value 777. The following example illustrates this.
% umask
% mkdir
% ls -la test
-rwxr-x— 2 test staff 0 Sep 1 17:10 test
In this example, the directory’s permissions are calculated as 777 (initial value) less 027 (umask), giving 750 (the directory’s permissions).

umask and How It Works

The umask is a value that determines the default permission settings assigned when new files and directories are created.Each UNIX system has a default umask value; each user can change his or her own umask value (and usually does so at login time in a .cshrc, .login, or .profile file); each process can also examine or alter its umask value with the umask command.

umask is an inherited feature. If a process sets a particular umask, its children will inherit the same umask value.Here’s how umask works. Numerically, it specifies which permissions are not granted by default when a file or directory is created. For example, a user’s umask is set to 027. The umask 027 is broken down into 0, 2, and 7. The 0 means that the user will have all permissions; the 2 means that group will not have write (2) permissions; the 7 means that other will not have execute (1), write (2), or read (4) permissions.

Another way to think about umask is to subtract each of its digits from 7; the resulting digits are the permission set up for a file or directory that is created while that umask is in effect.

In addition to being set numerically, a umask can also be set symbolically, with options similar to chmod’s symbolic syntax. For example

umask u+rwx,g+rx,o-a …is the same as: umask 027
umask u+rw,g+r,o+r …is the same as: umask 133

RAID Theory

RAID: That it is; What it does ………………………………………………………….
RAID: The Details ……………………………………………………………………….
RAID Type: Concatenation ………………………………………………………
RAID Type: Striping (RAID-0) …………………………………………………
RAID Type: Mirroring (RAID-1) ……………………………………………….
RAID Type: Stripping plus Mirroring (RAID-0+1) …………………………..
RAID Type: RAID-5 (Striping with Parity) ……………………………………
RAID Comparison: RAID0+1 vs RAID5 ………………………………………
RAID History: The Lost Brothers ………………………………………………………

RAID: That it is; What it does

RAID is something all of us have heard about but very few of us understand, at least fully. So lets get off on the right foot. RAID stands for Redundant Array of Inexpensive (or Independent) Disks. There are a dozen or so theories as to why RAID was conceptualized, but the most accepted reason is that once upon a time, not long ago, disks were
small and expensive. In order to provide a large amount of data you had to have a bunch of disks all mounted in a single file tree, which was a real mess. So, to solve this problem RAID was born. With RAID you could take a bunch of disks at create a big virtual disk out of them which made administration much easier and more logical. Over time RAID grew to include new solutions for old problems, like disk performance, redundancy, and scalability. And for any skeptics out there, tell me where I can get a 10 terabyte disk drive…. that should make us all agree that RAID has a place in the universe.

Just to try and clear things up a bit more, lets see why we don’t simple just need RAID, but actually WANT it. Let’s say we’re building a production NFS server that will be used to store all of our software. We’ll need this system to extremely stable, because if it goes down no one can get or submit code. With RAID we could build a single virtual disk (volume) that would meet our need for 200G of disk. But we also what to make sure that if disks die that we don’t go down. So we use a mirror (another set of disks identical to the first set of disks). If a disk dies we’re okey, because the mirror will take over; we essentially have 2 identical sets of the same data which are constantly kept up to date. See? Using these 2 simple RAID concepts we’ve achieved both availability (thats our mirror saving us from disk crashes) and increased capacity (we’ve got a whole bunch of disks working together, which is cheaper than buying a single 200G disks… if you can find one!).
Okey, enough of the bad examples. Lets look at the different forms of RAID in use today.

RAID: The Details

RAID Type: Concatenation

Concatenations are also know as “Simple” RAIDs. A Concatenation is a collection of disks that are “welded” together. Data in a concatenation is layed across the disks in a linear fashion from on disk to the next. So if we’ve got 3 9G (gig) disks that are made into a Simple RAID, we’ll end up with a single 27G virtual disk (volume). When you write data
to the disk you’ll write to the first disk, and you’ll keep writing your data to the first disk until it’s full, then you’ll start writing to the second disk, and so on. All this is done by the Volume Manager, which is “keeper of the RAID”. Concatenation is the cornerstone of  RAID.
Now, do you see the problem with this type of RAID? Because we’re writing data linearly across the disks, if we only have 7G of data on our RAID we’re only using the first disk! The 2 other disks are just sitting there bored and useless. This sucks. We got the big disk we wanted, but it’s not any better than a normal disk drive you can buy off the shelves in terms of performance. There has got to be a better way……….

RAID Type: Striping (RAID-0)

Striping is similar to Concatenation because it will turn a bunch of little disks into a big single virtual disk (volume), but the difference here is that when we write data we write it across ALL the disks. So, when we need to read or write data we’re moving really really fast, in fact faster than any one disk could move. There are 2 things to know about RAID-0, they are: stripe width, and columns. They sound scary, but they’re totally sweet, let me show you. So, if we’re going to read and write across multiple disks in our RAID we need an organized way to go about it. First, we’ll have to agree on how much data should be written to a disk before moving to the next; we call that our “stripe width”. Then we’ll need far kooler term for each disk, a term that allows us to visualize our new RAID better….. “column” sounds kool! Alright, so each disk is a “column” and the amount of data we put on each “column” before moving to the next is our “stripe width”. Let’s solidify this. If we’re building a RAID-0 with 4 columns, and a stripe width of 128k, what do I have? It might look something like this:
Look good? So, when we start writing to our new RAID, we’ll write the first 128k to the first column, then the next 128k to the second column, then the next 128k to the third column, then the next 128k to the fourth column, THEN the next 128k to the first column, and keep going till all the data is written. See? If we were writing a 1M file we’d
wrap that one file around all 4 disks almost 3 times! Can you see now where our speed up comes from? SCSI drives can write data at about (depending on what type of drive and what type of SCSI) 20M/s. On our Striped RAID we’d be writing at 80M/s! Kool huh!?
But, now we’ve got ANOTHER problem. In a Simple RAID if we had, say, 3 9G disks, we’d have 27G of data. Now, if I only wrote 9G of data to that RAID and the third disk died, so what, there is no data on it. (See where I’m going with this?) We’d only be using one of our three disks in a simple. BUT, in a Striped RAID, we could write only 10M of
data to the RAID, but if even ONE disk failed, the whole thing would be trash because we wrote it on ALL of the disks. So, how do we solve this one?

RAID Type: Mirroring (RAID-1)

Mirroring isn’t actually a “RAID” like the other forms, but it’s a critical component to RAID, so it was honored by being given it’s own number. The concept is to create a separate RAID (Simple or RAID0) that is used to duplicate an existing RAID. So, it’s literally a mirror image of your RAID. This is done so that if a disk crashes in your RAID the
mirror will take over. If one RAID crashes, then the other RAID takes its place. Simple, right? There’s not much to it. However, there is a new problem! This is expensive… really expensive. Let’s say you wanted a 27G RAID. So you bought 3 9G drives. In order to mirror it you’ll need to buy 3 more 9G drives. If you ever get depressed you’ll start thinking:
“You know, I just shelled out $400 for 3 more drives, and I don’t even get more usable space!”. Well, in this industry we all get depressed a lot so, they thought of another kool idea for a RAID……
RAID Type: Stripping plus Mirroring (RAID-0+1)
When we talk about mirroring (RAID-1) we’re not explicitly specifying whether we’re mirroring a Simple RAID or a Striped (RAID-0) RAID. RAID-0+1 is a term used to explicitly say that we’re mirroring a Striped RAID. The only thing you need to know about it is this… A mirror is nothing more that another RAID identical to the RAID we’re trying to protect. So when we build a mirror we’ll need the mirror to be the same type of RAID as the original RAID. If the RAID we want to mirror is a Simple RAID, our mirror then will be a Simple RAID. If we want to mirror a Striped RAID, then we’ll want another Striped RAID to mirror the first. Right? So, if you say to me, we’re building a RAID-0+1, I know that we’re going to mirror a Striped RAID, and the mirror itself is going to be striped as well.
You’ll see this term used more often than “RAID-1” simply because a mirror, in and of itself, isn’t useful. Again, it’s not really a “RAID” in the sense that we mean to use the word.

RAID Type: RAID-5 (Striping with Parity)

RAID-5 is the ideal solution for maximizing disk space and disk redundancy. It’s like Striping (RAID-0) in the fact that we have columns and stripe widths, but when we write data two interesting things happen: the data is written to multiple disks at the same time, and parity is written with the data.
Okey, let’s break it down a bit. Let’s say we build a RAID-5 out of 4 9G drives. So we’ll have 4 columns, and lets say our stripe width is 128k again. The first 128k is written on disks one, two AND three. At the same time it’s written a little magic number is written on each disk with the data. That magic number is called the parity. Then, the second 128k
of data is written to (watch carefully) disks two, three and four. Again, a parity number is written with that data. The third 128k of data is written to disks three, four and one. (See, we wrapped around). And data keeps being written like that. Here’s the beauty of it. Each piece of our data is on three different disks in the RAID at the same time! Let’s look back at our 4 disk raid. We’re working normally, writing along, and then SNAP! Disk 3 fails! Are we worried? Not particularly. Because our data is being written to 3 disks per write instead of just one, the RAID is smart enough to just get the data off the other 2 disks it wrote to! Then, once we replace the bad disk with a new one, the RAID “floods” all the data back onto the disk from the data on the other 2 adjacent disks! But, you ask, how does the RAID know it’s giving you the correct data? Because of our parity. When the data was written to disk(s) that parity was written with it.
We (actually the computer does this automatically) just look at the data on disks 2 and 4, then compare (XOR) the parity written with the data and if the parity checks out, we know the data is good. Kool huh? Now, as you might expect, this isn’t perfect either. Why? Okey, number 1, remember that parity that saves our butt and makes sure our data is good? Well, as you might expect the systems CPU has to calculate that, which isn’t hard but we’re still wasting CPU cycles for the RAID, which means if the system is really loaded we may need to (eek!) wait. This is the “performance hit” you’ll hear people talk about. Also, we’re writing to 3 disks at a time for the SAME data, which means we’re using up I/O bandwidth and not getting a real boost out of it.

RAID Comparison: RAID0+1 vs RAID5

There are battles fought in the storage arena, much like the old UNIX vs NT battles. We tend to fight over RAID0+1 vs RAID5. The fact is that RAID5 is advantageous because we use less disks in the endeavor to provide large amounts of disk space, while still having protection. All that means is that RAID5 is inexpensive compared to RAID0+1 where
we’ll need double the amount of disk we expect to use, because we’ll only need a third more disks rather than twice as many. But, then RAID5 is also slower than RAID0+1 because of that damned parity. If you really want speed, you’ll need to bite the bullet and use RAID0+1 because even though you need more disks, you don’t need to calculate anything, you just dump the data to the disks. In my estimates (this isn’t scientific, just what I’ve noticed by experience) RAID0+1 is about 20%-30% faster than RAID5.
Now, in the real world, you rarely have much choice, and the way to go is clear. If you’re given 10 9G disks and are told to create a 60G RAID, and you can’t buy more disks, you’ll need to either go RAID5, or be unprotected. However, if you’ve got thoughs same disks and they only want 36G RAID you can go RAID0+1, with the only drawback that they won’t have much room to grow. It’s all up to you as an admin, but always take growth into account. Look at what you’ve got, downtime availability to grow when needed, budget, performance needs, etc, etc, etc. Welcome to the world of capacity planning!

RAID History: The Lost Brothers

Wondering what ever happened to RAID-2, RAID-3, and RAID-4? You can look in history books for the details, but they were to be hybrids of mirroring and striping. Ways to include a parity with the data, for protection, but still staying away from mirroring each disks in a normal “one-to-one” mirror. One RAID type would have problems, so they would build another. RAID5, if you hadn’t guessed, was the agreed upon solution. RAID-2 and RAID-3 died and burned and scattered into the sea of obsolescence. However, RAID-4 found a home with our friends at NetApp (
A RAID-4 volume is made up of one or more data disks which are stripped, and a dedicated parity disk which maintains the write checksums of the data written on each stripe. Checksums are just numbers, so they are very small and quick to write. The problem is that generally when you write data to the volume you write a stripe, then write parity, then write the stripe, then write parity, so on and so forth, but you have to wait for the parity to complete writting before writting the next stripe which is a bottleneck. Add to that from the avaliblity side of things, if you loose your parity disk due to failure your running with your pants down. Sure you can rebuild the parity disk after hot-swapping or replacing the disk, but that requires re-computing parity from each stripe which is an obviously
time consuming proposition. NetApp however worked around these problems by using the Filers onboard memory for caching writes, and additionally an NVRAM as a ready it writes out the data stripes first, and then the parity because it’s already calculated parity and the write pattern in memory. In this way we take away the bottleneck of parity disk. This is possible due to the intellegence of WALF, the NetApp OnTap File System.
NetApp has added a new feature in OnTap 6.5, actually, called RAID-DP, Double Parity.  It’s the same RAID-4 system but it employs mirror parity disks. This way you can loose 2 disks in a volume (assuming one is a parity disk) and keep running. (It’s unfortunate, but NetApp Filer’s are the worlds fastest NFS servers. But one day Sun is going to kick their ……. never mind.)

how to create volumes in LVM for HP-UX

The following are an overview of how to create volumes in LVM for HP-UX.

1) Add your disks, and verify their device names.  The the command:

# ioscan -fnC disk

2) Next, place the disks you wish to use for volumes under LVM control.  This is done by converting a disk into a “Physical Volume” (pv).  The command used is:

# pvcreate <devpath>

example: #pvcreate /dev/rdsk/c1t0d0

Note: You can use the “-f” option to “force” the creation, which keeps LVM for asking for verification…
the “Would you like to proceed? (y/n)”

3) Now, create a device path for the volume group. Do this by creating a directory in /dev by the name of the volume group.

# mkdir /dev/<vgname>

example: # mkdir /dev/vg01

4) Then create a “group node” in that directory.  The process looks like this:

# mknod /dev/<vgname>/group c 64 <minornum>

example: # mknod /dev/vg01/group c 64 0x030000

Note: The minor number follows the following patern:

5) You can now create your Volume Group (vg) to which the Physical Volumes will be assigned.  A VG
is similar to a Disk Group in Veritas.  The format is:

# vgcreate /dev/<vgname> <PVpath> <PVpath> ….

example: # vgcreate /dev/vg01 /dev/dsk/c1t0d0

Note: The PV DevPaths don’t use a partition designation (sX).  You can specify as many PV’s to add to a VG as you like on this one line.

6) Next create a Logical Volume (lv).  This is the “volume” itself, which will contain the file system.

# lvcreate /dev/<vgname>

example: # lvcreate /dev/vg01

Note: This will create a 0 length volume.  It will also create two new files in the vg dev  directory: lvol1 and rlvol1.  Being: Logical Volume 1, and Raw Logical Volume 1.  You can have multiple LV’s per VG.

Note(2): lvcreate with no options will create a concat volume.  To create striped volumes, use the options:
-i <stripes>        This is the Vx equiv to column numbers.
-I <stripesize>    This is the Vx equiv to a stripe width in kb.
-m <mirror copies>    Number of mirrors. Can be “1” or “2”.    
-L <lv size>        The size of the new volume in megabytes.

7) Now you can extend to Logical Volume to the length you desire.  To extend to it’s max, do the following:

a) Run the command: # vgdisplay <vgpath> example: # vgdisplay /dev/vg01

b) Look for the two lines: “Total PE” and “PE Size” PE stands for “Physical Extent”.  If you multiply the number of “Total PE” by “PE Size” you will get the total size of  the disk that is usable, usually in megabytes.

NOTE: LVM breaks PV’s into Physical Extents. These are like blocks in LVM.  PE Size is the size of each PE.  Total PE is the  number of PE’s avalible to the volume group. The “PE Size” is variable, default is “4M” but it can be reset to any desired size, during VG creation.  The options avable to “vgcreate” are:
-e <maxpe>    Max Num of PE’s for this VG. Default: 1016
Max PE cannot exceed: 65535
-l <maxlv>     Max Num of LV’s for this VG. Default: 255
-p <maxpv>    Max Num of PV’s for this VG. Default: 16
Max PV cannot exceed: 255
-s <pesize>      Size of each PE for this VG. Default: 4
PE Size must be a power of 2.
-x <extensiblity> Can the VG be grown? Default: y

c) With the number you got by multiplying “Total PE” by “PE Size” you have the total lenth of the VG.  To make all disks
in the VG be used by 1 LV, and to use all the space, extend the Logical Volume with the command:

# lvextend -L <length> <lvdevpath>

example: # lvextend -L 3200 /dev/vg01/lvol1

This would extend VG01’s LV 1 out to (NOT by) 3.2G. Remember the size is defaulted to Megabytes.

8) You can now create your filesystem with:

# newfs -F <fs> <raw_lvdevpath>

example: # newfs -F vxfs /dev/vg01/rlvol1

9) Now mount the filesystem like usual:

# mount /dev/vg01/lvol1 /mydatavolume



– Monitor LVM with the following commands:
bdf     Similar to a Solaris style “df -k” output.
pvdisplay    Display PV Information
vgdisplay     Display VG Information
lvdisplay     Display LV Information

– Remove LVM Objects with the commands:
pvremove    Removes a PV Device (ie: /dev/dsk/c0t1..)
vgreduce    Remove a PV from a VG Binding
use as: vgreduce /dev/vg01 /dev/dsk/c0t1d0
vgremove    Removes a VG, only done when there
is only ONE disk left in the VG.
lvremove    Removes a LV.

To remove a complete volume you must unmount the fs, then remove the LV, then reduce the VG to all but one disk.  Then remove the VG.  Then you only need to remove each PV untill you have normal disks again, not under LVM control.

– Here’s a list of commands:




– There are 3 LVM Objects:

|  Logical Volume        |
/    /    /    /    
|  Volume Group           |
/     /    /    /
|  Physical Volume        |

or: Disks are used to create PV’s, which we group into VG’s, from which we create LV’s which  contains the filesystem we use.

– AIX Commands are:





SiteMinder Web Agent Installation


Siteminder Webagent Install on host01

Unzip the file zip somewhere under /var/tmp

And launch ./nete-wa-install to start webagent install.

Use /usr/local/netegrity/siteminder dir for install location.

Hotfix Install

Extarct the file under /var/tmp.

Copy the *.tar file siteminder webagent install location


And extracts its contents.

Siteminder Web Agent Configuration on host01

[root@host01 webagent]# ./nete-wa-config ( from temp dir /var/tmp/swa/smwa-5qmr6-linux/linux/nete-wa-5QMR6-linux-install, used for tar extarct)

Netegrity, Inc.                         Copyright 1997-2004

SiteMinder Web Agent version 5QMR6 for Unix Platforms

This procedure will configure a single Web server to act
as a SiteMinder Web Agent or, if it is already configured,
it will allow you to remove the configuration or update it.

Enter the name of the administrator who has the right to register a host with the Policy Server[SiteMinder]: linuxtrust

Enter the password for the administrator:
Re-enter password for confirmation:

Enter the name of the host we will register with the Policy Server:[host01] equest-stage

Specify the IP address of the Policy Server where you are registering
this host.  If the Policy Server is configured on a non-default port,
enter the IP address followed by a colon(:) and the port number.
For example xx.xx.xx.xx:port_number.
Enter the IP address:[]

Enter the name of the host configuration object to use for this registration: equest-stage

Enter the name of the directory where we will write your SmHost.conf file:[/usr/local/netegrity/siteminder/webagent/config]
Do you want to enable PKCS11 cryptographic hardware?[N]

Preparing to run registration using the following information:
Registered Host: equest-stage
Policy Server:
Username: linuxtrust
Password: Not Shown
Host Configuration Object: equest-stage
Host File: /usr/local/netegrity/siteminder/webagent/config/SmHost.conf

Is this information correct? ([y]/n)? y
Running Command:
/usr/local/netegrity/siteminder/webagent/bin/smreghost -i -u linuxtrust -p XX -hn equest-stage -hc equest-stage -f /usr/local/netegrity/siteminder/webagent/config/SmHost.conf

Host Registration written to ‘/usr/local/netegrity/siteminder/webagent/config/SmHost.conf’.

Do you want to configure an iPlanet or Sun ONE Web Server ([y]/n)? n

Do you want to configure an Apache Web server ([y]/n)? y

NOTE:  If you have Covalent Enterprise Ready Server or IBM HTTP Server,
please enter a specific configuration path.

Please enter your Apache server’s Server Root
[/usr/apache]: /etc/httpd

*** Invalid Apache Configuration ***
Directory /etc/httpd is not an Apache Server root.

1)  I would like to re-enter the Apache Server Root.
2)  I have multiple instances of Apache Web server
and would like to enter a specific configuration path.
3)  I don’t have an Apache Web server.

NOTE:  If you have Covalent Enterprise Ready Server or IBM HTTP Server,
please select choice number 2.

What would you like to do?  Enter a choice 1-3: 2
Please enter the Apache configuration path

Please select a choice for the Apache version.
1)  Apache version 1.0
2)  Apache version 2.0

Enter a choice 1 or 2:  2

Enter the name of the Web Agent configuration object [host01]: host01-dev

This is the end of the basic Web Agent configuration.
This Web Agent by default will enforce policies on the Web server, provide forms-based nauthentication, and provide single-signon across multiple domains.

Do you want to configure Self Registration for DMS2 (y/[n])?

Configuration Selections
Installation root:          /usr/local/netegrity/siteminder/webagent
Web server target:          /etc/httpd

Agent Configuration Object:             host01-dev

Is this correct (y/n)? y

The Apache Web server at /etc/httpd
has been configured as a SiteMinder Web Agent.
follow the instructions in the documentation for modifying your
httpd.conf file to enable the web agent.
Restart the Web server for the configuration changes to take effect.

Edit the WebAgent.conf file and change the “enablewebagent” setting to “YES”.
This should be done AFTER configuring the Web Agent.

The WebAgent.conf file contains the necessary default settings for the Web Agent.
Refer to the “Siteminder Agent Guide” for explanations of these settings and how they may be tuned to best suit your needs.
./nete-wa-config: line 3428: [: too many arguments
[root@host01 webagent]#

Configuration after above steps

Open /etc/httpd/conf/httpd.conf file add below module lines to it under modules section

LoadModule sm_module /usr/local/siteminder/webagent/lib/

SmInitFile /etc/httpd/conf/WebAgent.conf (at the end of httpd.conf file)

Modify enablewebagent=”YES” in /etc/httpd/conf/WebAgent.conf file


Add /usr/local/netegrity/siteminder/webagent/lib line to /etc/

try starting web server

# service httpd stop
# service httpd start


Browse to check it is working ok

Requirements for Installing Oracle 9iR2 on RHEL 4

Following requirements needs to be met for a successful installation of  the new release (a 3 CD set which includes the base release


and all fixes from prior patchsets including on Red Hat Enterprise Linux AS/ES 4.0 (RHEL4) on platform Linux x86 .



You can download the from following URL.  But you require a valid OTN account for download.






 This procedure is meant for Oracle DBA and to person willing to install Oracle on Redhat 4.0


 Requirements for Installing Oracle 9iR2 on RHEL4




 1.      Software: 




        * Required OS Components


            - compat-db-4.1.25-9


            - compat-gcc-32-3.2.3-47.3


            - compat-gcc-32-c++-3.2.3-47.3


            - compat-oracle-rhel4-1.0-3


            - compat-libcwait-2.0-1


            - compat-libgcc-296-2.96-132.7.2


            - compat-libstdc++-296-2.96-132.7.2


            - compat-libstdc++-33-3.2.3-47.3


            - gcc-3.4.3-9.EL4


            - gcc-c++-3.4.3-9.EL4


            - gnome-libs-


            - gnome-libs-devel-


            - libaio-devel-0.3.102-1


            - libaio-0.3.102-1


            - make-3.80-5


            - openmotif21-2.1.30-11


            - xorg-x11-deprecated-libs-devel-6.8.1-23.EL


            - xorg-x11-deprecated-libs-6.8.1-23.EL


 The compat-oracle-rhel4-1.0-3 and compat-libcwait-2.0-1 packages are available from Oracle Metalink Patch 4198954.


While installing the patch you might receive the warning. It is a normal behaviour.


 rpm -ivh compat-libcwait-2.0-2.i386.rpm


Preparing...                ########################################### [100%]


cat: /etc/ No such file or directory


   1:compat-libcwait        ########################################### [100%]


 You can recieve following error at the time of linking the binaries if any of the above packages are missed.


 /usr/lib/gcc/i386-redhat-linux/3.4.3/ undefined reference to `dl_iterate_phdr@GLIBC_2.2.4' collect2: ld returned 1 exit status


 2.      Environment: 




        * Required Environment Variable


           - LD_ASSUME_KERNEL=2.4.19


        * Modify your kernel settings in /etc/sysctl.conf (RedHat) as follows:


           kernel.hostname   =  #<--- full qualified hostname !!


           kernel.domainname = yourdomain               #<--- correct domain name !!


           fs.file-max       = 327679


        * Required kernel parameters


           - SEMMNI  100     Defines the maximum number of semaphore sets in the entire system.  


           - SEMMNS  256     Defines the maximum semaphores on the system. 


                             This setting is a minimum recommended value, for initial installation only. 


                             The SEMMNS parameter should be set to the sum of the PROCESSES parameter 


                             for each Oracle database, adding the largest one twice, and then adding 


                             an additional 10 for each database. 


           - SEMOPM  100     Defines the maximum number of operations for each semop call.  


           - SEMMSL  100     Defines the minimum recommended value, for initial installation only.  


           - SHMMAX          Set this parameter to half the size of physical RAM available on your system.


                             This value cannot exceed 4294967295


           - SHMMNI  100     Defines the maximum number of shared memory segments in the entire system.  


           - SHMALL  2097152 Defines the maximum total shared memory system wide.


         * Hostname command should return the fully qualified hostname as shown 




             % hostname 




        * If any Java packages are installed on the system, unset the Java 


          environment variables, for example  JAVA_HOME.


        * The oracle account used to install Oracle, should not have 


          the Oracle install related variables  set by default. 


          For example setting ORACLE_HOME, PATH, LD_LIBRARY_PATH to include 


          Oracle  binaries in .profile, .login file and /etc/profile.d should 


          be completely avoided.



3.  Now You are ready to invoke your Oracle Universal Installer.






     Generic Information




    * After installing the Patch 4198954. Following errors can be encountered


      During the shutdown of the server




     Unmounting file systems:  umount2: Device or resource busy


     umount: /usr: device is busy


     umount2: Device or resource busy


     umount: /usr: device is busy


      During the startup of the server




     ERROR: object '/usr/lib/' from /etc/ cannot be


     preloaded: ignored.


     ERROR: object '/usr/lib/' from /etc/ cannot be


     preloaded: ignored.


     Setting clock  (localtime): Mon Jun 13 08:32:36 EEST 2005 ERROR:


     object '/usr/lib/' from /etc/ cannot be preloaded:




     [  OK  ]


       Above error are only possible if the /usr has seperate mount point.






     Move the library from /usr/lib to /lib 


     Modify the path in /etc/ 


      % cat /etc/


       /usr/lib/      ## Change this line to /lib/


     After the changing the file should look like


     % cat /etc/




      This issue has been fixed


     Please redownload the Patch 4198954 from the metalink site.


     This issues was tracked in  Bug 4435062 Abstract: Patch 4198954 RESULTS IN ERRORS DURING BOOT IF /USR IS OWN FILE SYSTEM


    * To increase the SGA Address space on RedHat


       Article-ID:         Note 200266.1


       Title:              Increasing Usable Address Space for Oracle on 32-bit Linux


    * During the linking phase you might recieve the error if you have installed the agent.


     To overcome this problem. Please apply the Patch 3119415.


        /u00/demo/demodb/9.2.0/network/lib/libnmi.a(snmite.o)(.text+0x1427): In function `snmitetn_tempName':


       : warning: the use of `tmpnam_r' is dangerous, better use `mkstemp'


       /u00/demo/demodb/9.2.0/network/lib/libnmi.a(nmijs.o)(.text+0x3571): In function `nmijsupper':


       : undefined reference to `__ctype_b'


       /u00/demo/demodb/9.2.0/network/lib/libnmi.a(snmifork.o)(.text+0x149): In function `snmifon2p_NameToPathname':


       : undefined reference to `__ctype_b'


    * To enable the Direct I/O support. Please read the note.


       Article-ID:         Note 297521.1


       Title:              DirectIO on Redhat and SuSe Linux
 Related Notes




    * Before installing the patchset. You must download the Patch 4188455.


     And the follow instruction from the README.txt of the patch.


       If the above patch is not installed you will receive following errors


       Starting Oracle Universal Installer...


       Checking installer requirements...


       Checking operating system version: must be SuSE-7, redhat-2.1AS, redhat-2.1,


       UnitedLinux-1.0, redhat-3 or SuSE-8


                                      Failed <<<<


       Exiting Oracle Universal Installer, log for this session can be found at  /opt/oracle/oraInventory/logs/installActions2005-04-07_01-04-18PM.log


    * After installing the patchset. You should apply the Patch 4190568.


      * For ASYNC-IO support on RHEL 4.0. Patch 3208258 is not required.


     Because this issue has been fixed in Patch 4190568. Related Notes





   * To enable the ASYNC IO on the 9207. Please apply the Patch 4648194.







 Oracle9i Release Notes Release 2 ( for Linux x86 Part No. B13670-06