Solaris Ping Results 17 February 2011
Posted by Maulvi Bakar in : Unix,Work , add a commentEver tried to ping a host on a Solaris machine?
$ ping pong
pong is alive
You’ll get a plain ‘is alive’ results. If you need packets received and timing information, you have to add the option -s like thus -
user@tennis:/usr/sbin > ping -s pong
PING pong: 56 data bytes
64 bytes from pong (x.x.x.x): icmp_seq=0. time=0. ms
64 bytes from pong (x.x.x.x): icmp_seq=1. time=0. ms
64 bytes from pong (x.x.x.x): icmp_seq=2. time=2. ms
64 bytes from pong (x.x.x.x): icmp_seq=3. time=0. ms
64 bytes from pong (x.x.x.x): icmp_seq=4. time=0. ms
64 bytes from pong (x.x.x.x): icmp_seq=5. time=0. ms
----pong PING Statistics----
6 packets transmitted, 6 packets received, 0% packet loss
round-trip (ms) min/avg/max = 0/0/2
Funny Solaris trying not to conform with the rest of the *NIX community.
Enjoy!
Customizing the Bash Prompt 19 December 2010
Posted by Maulvi Bakar in : Linux,Unix,Work , add a commentIf you’re on Linux, most of the time the current existing bash prompt is fine. Other types of UNIX, in my case is Solaris, is somewhat spartan in appearance. You’ll either get a boring ‘$’ or ‘#’ or simply a display of version.
The table below are the various options available -
- \a : an ASCII bell character (07)
- \d : the date in “Weekday Month Date” format (e.g., “Tue May 26″)
- \D{format} : the format is passed to strftime(3) and the result is inserted into the prompt string; an empty format results in a locale-specific time representation. The braces are required
- \e : an ASCII escape character (033)
- \h : the hostname up to the first ‘.’
- \H : the hostname
- \j : the number of jobs currently managed by the shell
- \l : the basename of the shell’s terminal device name
- \n : newline
- \r : carriage return
- \s : the name of the shell, the basename of $0 (the portion following the final slash)
- \t : the current time in 24-hour HH:MM:SS format
- \T : the current time in 12-hour HH:MM:SS format
- \@ : the current time in 12-hour am/pm format
- \A : the current time in 24-hour HH:MM format
- \u : the username of the current user
- \v : the version of bash (e.g., 2.00)
- \V : the release of bash, version + patch level (e.g., 2.00.0)
- \w : the current working directory, with $HOME abbreviated with a tilde
- \W : the basename of the current working directory, with $HOME abbreviated with a tilde
- \! : the history number of this command
- \# : the command number of this command
- \$ : if the effective UID is 0, a #, otherwise a $
- \nnn : the character corresponding to the octal number nnn
- \\ : a backslash
- \[ : begin a sequence of non-printing characters, which could be used to embed a terminal control sequence into the prompt
- \] : end a sequence of non-printing characters
Personally, I just wanted to duplicate the bash prompt on Linux into Solaris. All I did was thus in the “/etc/profile” -
export PS1
PS1='[\u@\h:\w]\$ '
Remember to use single quotes ” ‘ ” rather than the double quotes. Otherwise the “\$” will not work.
Enjoy!
Howto: Disable GUI Desktop on Solaris 10
Posted by Maulvi Bakar in : Unix,Work , add a commentMy life seems to be centered around *NIX. After many false start, I am about to embark on a serious Solaris journey.
*NIX politics aside. I’ve formed judgment already, but I reserve publishing it at the moment. For the time being, enough said – it is a pure workplace choice.
# date;uname -a;uptime
Sun Dec 19 14:27:32 MYT 2010
SunOS solaris 5.10 Generic_142910-17 i86pc i386 i86pc
2:27pm up 25 min(s), 1 user, load average: 0.01, 0.11, 1.05
By default, Oracle Solaris 10 will start with Gnome/CDE GUI interface upon start-up. To disable GUI, especially if you intend to run a headless server, do this -
# /usr/dt/bin/dtconfig -d
To enable it again, simply -
# /usr/dt/bin/dtconfig -e
Enjoy!
HPUX Breaking Mirror and Extending LVM 2 June 2009
Posted by Maulvi Bakar in : Unix,Work , add a commentI’m learning new things nowadays.. Particularly HPUX. Not really my cup of tea since it not open-source but interesting enough though.
We had one machine with mirrored harddisks with one being faulty that needs removal.
Break mirror procedure..
1. Remove the mirror on the Logical Volume affected within the Volume Group
lvreduce -m 0 /dev/vg01/lvol1 /dev/dsk/c2t0d0
lvreduce -m 0 /dev/vg01/lvol2 /dev/dsk/c2t0d0
2. Now remove the Volume Group from the Physical Volume that is targeted for removal
vgreduce /dev/vg01 /dev/dsk/c2t0d0
3. Finally remove the Physical Volume from the Physical Disk
pvremove /dev/rdsk/c2t0d0
Please note the ‘r’.. ‘r’ stands for physical disk, while the one without is the physical volume..
Restore mirror procedure…
1. First, let’s verify things
ioscan -funC disk
pvdisplay /dev/dsk/c1t0d0 # get lvm info of existing disk.
pvdisplay /dev/dsk/c2t0d0 # get err, no lvm def on it, raw disk.
2. Now we create the Physical Volume within the Physical Disk and extend the Volume Group onto it.
pvcreate /dev/rdsk/c2t0d0 # add physical disk to be used by LVM
vgextend /dev/vg01 /dev/dsk/c2t0d0 # incorporate new disk to existing vg00
2a. If you’re recreating a bootable disk, the commands below must be used instead -
pvcreate -B /dev/rdsk/c2t0d0 # add physical disk to be used by LVM and make it bootable
vgextend /dev/vg01 /dev/dsk/c2t0d0 # incorporate new disk to existing vg00
mkboot -a "hpux -lq /stand/vmunix" /dev/dsk/c2t0d0 # install the bootloader
3. Check and verify!
strings /etc/lvmtab # see new disk used by lvm
4. The next steps will actually perform the mirror, and it will fail if -m mirroring option is not activated with valid license
lvextend -m 1 /dev/vg01/lvol1 /dev/dsk/c2t0d0 # add mirror for lvol1
lvextend -m 1 /dev/vg01/lvol2 /dev/dsk/c2t0d0 # add mirror for lvol2
Enjoy!
Changing user’s file ownership across the board 25 December 2008
Posted by Maulvi Bakar in : Linux,Unix,Work , add a commentThe guys from the promised database lands had their systems acting funny. After investigation, they found out that, their files was having the wrong group ownership.
There’s a total of 70,000 files involved. Promised lands or not, manually changing 70,000 files (and folders) is not a good prospect. Well, I could go through the individual sub-folders but I would need to work from the last in-depth sub-folders and work my way out. Even that does not guarantee accuracy, since there might be sub-folders with multiple owners which I’m not suppose to touch. When that happen, then I have to go through it manually looking at each files and folders individually – not good.
There has to be a short-cut.
I know I can locate all the files that needs to be changed it’s ownership by using the following commands -
find ./ -user someuser -group wronggroup -print
It’ll list all the relevant files and sub-folders. At first, maybe I’ll output it into a file, all the results. Manipulate the file into an executable. Append each lines with a “chgrp correctgroup” and have something like – “chgrp correctgroup ./to/the/path/of/the/file”.
I am smart, hey!
Let’s prove that I can be smarter
Vanity and pride are different things, though the words are often used synonymously. A person may be proud without being vain. Pride relates more to our opinion of ourselves; vanity, to what we would have others think of us.
Jane Austen
No, I’m just trying to figure out the best way of doing things.
“xargs -t <commands>”
xargs is a command of Unix and most Unix-like operating systems. It is useful when one wants to pass a large number of arguments to a command. Arbitrarily long lists of parameters can't be passed to a command, so xargs will break the list of arguments into sublists small enough to be acceptable.
xargs - build and execute command lines from standard input
The “-t” is for the verbose option. It’ll spew out the output of the commands being executed.
Basically, every time the output of the earlier “find”, it’ll append the extra commands specified and have it executed. Voila, no need to make a separate executable. My solution is thus -
find ./ -user someuser -group wronggroup -print | xargs -t chgrp correctgroup
Happy 4th Anniversary to myself
Merry Christmas everyone!
Enjoy!
Linux NFS Server, AIX NFS Client 31 July 2008
Posted by Maulvi Bakar in : Linux,Unix,Work , 3 commentsHmmm..
We have a Linux NFS machine to extend the AIX Server’s chronic acute harddisk space shortage syndrome. Somehow, AIX Client could not mount the shared NFS folder from the Linux Server.
Apparently, AIX uses high ports to establish the connectivity to NFS Server. Linux NFS Server requires low ports (below 1024). So, you have to force AIX to use those reserved ports to establish the connection.
nfso -o nfs_use_reserved_ports=1
Then, the normal ‘mount’ should work from AIX after the medicine
Enjoy
unknown nfs status return value: -1 11 December 2007
Posted by Maulvi Bakar in : Linux,System,Unix,Work , 1 comment so farI’m trying to mount an NFS export from an AIX machine to a Linux client.
Had encountered the above problem. Apparently the NFS exports on AIX requires the client’s hostname and IP address within the /etc/hosts file.
Enjoy!
OpenBSD – Reloading pf.conf 18 September 2006
Posted by Maulvi Bakar in : Unix,Work , add a commentOpenBSD, world most secure OS. Also one of the most User-Hostile ones. Now, I needed to reload the firewall rules. Modified some settings in the /etc/pf.conf and this is how did it to reload the ruleset -
$ pfctl -f /etc/pf.conf
This will reload the ruleset plainly from the file specified. The -R flag only loads the filtering rules. -N only loads the NAT rules. Should there be need to reload just the filtering and/or NAT rules, just use the appropriate options.
Enjoy!