X

Recent Posts

performance

Monitoring core-utilization within guest LDOM

With Oracle VM Server 3.2 version new feature has been added to access CPU performance counters within Guest Logical Domains. With this feature one can run pgstat(1M) command inside the guest LDOM to monitor the hardware core utilization. ldm (1M) command now has new option perf-counters=counter-set which needs to be enabled to access CPU performance counters within the guest LDOM. With default installation primary LDOM (aka Control Domain) has access to the CPU performance counters (perf-counters) , one can verify with following command. # ldm list -l primary |grep perf-counters    perf-counters=global,htstrand Note: Only one domain can have access to the performance counters, this is to prevent register overwrite. If you try to enable it in more than one domain, it would fail with the following error message.# ldm set-domain perf-counters=global,htstrand ldgs11Only one domain can have perf-counters set with global to prevent register overwrite. If performance counter is not enabled within the guest domain, pgstat (1M) output would show has "0" for HW (Hardware Utilization) see the below output. ldgs11@~# pgstat -v 1PG  RELATIONSHIP                     HW UTIL  CAP     SW    USR    SYS   IDLE CPUS 0  System                            -    -    -  12.8%  12.7%   0.1%  87.2% 0-15 3   Data_Pipe_to_memory           0.0%    0 7.2B  12.8%  12.7%   0.1%  87.2% 0-15 4    CPU_PM_Active_Power_Domain      -    -    -  12.8%  12.7%   0.1%  87.2% 0-15 2     Floating_Point_Unit         0.0%    0 3.6B  12.5%  12.5%   0.0%  87.5% 0-7 1      Integer_Pipeline           0.0%    0 7.2B  12.5%  12.5%   0.0%  87.5% 0-7 6     Floating_Point_Unit         0.0%    0 3.6B  13.0%  12.9%   0.1%  87.0% 8-15 5      Integer_Pipeline           0.0%    0 7.2B  13.0%  12.9%   0.1%  87.0% 8-15 Before setting perf-counters to guest domain. Unset the perf-counters from primary domain using following command.  # ldm set-domain perf-counters= primary Now add perf-counters to the guest domain   # ldm set-domain perf-counters=global,htstrand ldgs11 Note perf-counters will be available to the guest domain only after the reboot. Now run the same workload, one can see HW (Hardware Utilization) values being populated as part of pgstat(1M) output. # pgstat -v 1PG  RELATIONSHIP                     HW UTIL  CAP     SW    USR    SYS   IDLE CPUS 0  System                            -    -    -  12.8%  12.7%   0.1%  87.2% 0-15 3   Data_Pipe_to_memory           0.1% 9.8M 7.2B  12.8%  12.7%   0.1%  87.2% 0-15 4    CPU_PM_Active_Power_Domain      -    -    -  12.8%  12.7%   0.1%  87.2% 0-15 2     Floating_Point_Unit         1.7%  60M 3.6B  12.5%  12.5%   0.0%  87.5% 0-7 1      Integer_Pipeline           7.5% 542M 7.2B  12.5%  12.5%   0.0%  87.5% 0-7 6     Floating_Point_Unit         1.7%  60M 3.6B  13.0%  12.9%   0.1%  87.0% 8-15 5      Integer_Pipeline           8.3% 597M 7.2B  13.0%  12.9%   0.1%  87.0% 8-15

With Oracle VM Server 3.2 version new feature has been added to access CPU performance counters within Guest Logical Domains. With this feature one can run pgstat(1M) command inside the guest LDOM to...

Debugging

using solaris netstat to find open ports or listening port ( equivalent of lsof -i )

When debugging network services, I usually tend to run either custom pfiles scripts or compile lsof for Solaris to find the open ports in Solaris. With netstat enhancements in Solaris 11.2 release onwards new flag "-u" has been added, which would list USER, PID and program name of the process and network port details. $ netstat -un -P tcp                                                                                                           TCP: IPv4   Local Address        Remote Address      User     Pid     Command     Swind  Send-Q  Rwind  Recv-Q    State-------------------- -------------------- -------- ------ ------------- ------- ------ ------- ------ -----------127.0.0.1.59101          127.0.0.1.5011            root    6364   telnet         130880      0  139264      0 ESTABLISHED127.0.0.1.5011            127.0.0.1.59101          root    4884   vntsd          139060     0  130880      0 ESTABLISHED192.168.11.2.46829    192.168.11.3.389        root      816    nscd            49232      0  128872      0 ESTABLISHED127.0.0.1.5010            127.0.0.1.51811          root    4884   vntsd          139060     0  130880      0 ESTABLISHED169.254.182.77.12      169.254.182.76.24      root    4930      fmd            64096      0  128872     0 ESTABLISHED192.168.11.2.22          192.168.11.3.49363    root    4172     sshd            61952     31  128544    0 ESTABLISHED <<output truncated>> With "-v" verbose flag netstat prints the program name with full path information including other information. t5-2@~# netstat -nu -P tcp -vTCP: IPv4Local/Remote Address  Swind   Snext     Suna    Rwind   Rnext     Rack    Rto   Mss     State      User    Pid      Command-------------------- ------- -------- -------- ------- -------- -------- ----- ----- ----------- -------- ------ --------------127.0.0.1.59101     127.0.0.1.5011        130880 eb88eb26 eb88eb26  139264 a9687631 a9687631  1125  8180 ESTABLISHED root       6364 /usr/bin/telnet 0 5011127.0.0.1.5011      127.0.0.1.59101       139060 a9687631 a9687631  130880 eb88eb26 eb88eb26  1125  8180 ESTABLISHED root      4884 /usr/lib/ldoms/vntsd -i virtual-console-concentrator@0 -p localhost -t 0192.168.11.2.22    192.168.11.3.44826   42112 aa006f8f aa006f4f  128544 d23c83de d23c83de   685  1248 ESTABLISHED root       4172 /usr/lib/ssh/sshd192.168.11.2.63024 192.168.11.3.389      49232 cd6ad3cc cd6ad3cc  128872 ce3c602e ce3c602e   203  1448 CLOSE_WAIT  root           816 /usr/sbin/nscd<<output truncated>> To display all TCP, UDP, Domain sockets you can use "-au"  # netstat -aunUDP: IPv4   Local Address        Remote Address      User    Pid      Command       State-------------------- -------------------- -------- ------ -------------- ----------      *.*                                 root            107 in.mpathd      Unbound      *.*                                 root            107 in.mpathd      Unbound      *.*                                 netadm      712      nwamd      Unbound      *.*                                 netadm      712      nwamd      Unbound      *.111                             daemon     3080   rpcbind       Idle      *.*                                 daemon     3080   rpcbind       Unbound      *.58525                         daemon     3080   rpcbind       Idle      *.111                             daemon     3080   rpcbind       Idle      *.*                                 daemon     3080   rpcbind       Unbound      *.46768                         daemon     3080   rpcbind       Idle<<output truncated>> With this feature netstat can be alternative for lsof for looking up port related information. If you compile and run lsof from the source in Solaris. Use lsof "-i4" flag to display open ports in Solaris to display ports associated with IPv4 . # ./lsof -i4 |headCOMMAND     PID     USER   FD   TYPE         DEVICE SIZE/OFF NODE NAMEin.mpathd       107     root        3u   IPv4 0xc40046b332c0      0t0  TCP localhost:5999 (LISTEN)in.mpathd       107     root        5u   IPv4 0xc400469f6080       0t0  UDP *:* (Unbound)nwamd            712   netadm    5u   IPv4 0xc40048ea4100      0t0  UDP *:* (Unbound)rpcbind         3080   daemon    8u   IPv4 0xc400499eac00      0t0  UDP 0.0.0.17:chargen (Idle)rpcbind         3080   daemon    9u   IPv4 0xc400499ea700      0t0  UDP 0.0.0.17:chargen (Unbound)rpcbind         3080   daemon   10u  IPv4 0xc400499ea200      0t0  UDP 0.0.0.17:chargen (Idle)rpcbind         3080   daemon   11u  IPv4 0xc400499b5200      0t0  TCP *:* (LISTEN)rpcbind         3080   daemon   12u  IPv4 0xc400499b49c0      0t0  TCP *:* (IDLE)nfs4cbd        3155   daemon    7u    IPv4 0xc400499b3100      0t0  TCP *:* (LISTEN)<<output truncated>>

When debugging network services, I usually tend to run either custom pfiles scripts or compile lsof for Solaris to find the open ports in Solaris. With netstat enhancements in Solaris 11.2 release...

General

Solaris HP Proliant Server installation

Came across query regarding installation of Solaris 10 on HP Proliant Server DL 360 series machines. By default Solaris 10 doesn't ship drivers for HP Smart  Array  Controllers .  So during installation one would encounter disk unable to recognize or missing disk or no disk connected. Follow below procedure for Solaris 10 installation. \* Download the drivers from ftp://ftp.hp.com/pub/softlib2/software1/pubsw-windows/p1220948930/v46783/CPQary3-1.90-solaris10-i386.tar.gz \* Extract the tar.gz file using below command # gzcat CPQary3-1.90-solaris10-i386.tar.gz | tar xvf -\* burn the iso CPQary3.isowhich is located under CPQary3-1.90-solaris10-i386 directory by using favorite any of your cd burning software (cdrw, cdrecord, k3b ) . In Solaris one can use cdrw  #cdrw -i CPQary3.iso \* Once the driver CD is ready . Now boot up the HP DL server with the Solaris 10 installation media and follow below instruction to get your disk recognized. ----- a. Boot the Solaris installation to the following menu:   1.    Solaris Interactive (default)   2.    Custom JumpStart   3.    Solaris Interactive Text (Desktop session)   4.    Solaris Interactive Text (Console session)   5.    Apply driver updates   6.    Single user shell   Enter the number of your choice.b. Select option 5, "Apply driver updates".c. At the following prompt:     Insert media and enter media type:             Floppy [f], CD/DVD [c] or End [e]   insert the driver cd,  and choose  "c".  Solaris will extract the   driver, and the following messages will indicate success:     extracting software on cd     installing driver update in the minirootd. Following driver application,  Solaris will return  to the  following   prompt:     Insert media and enter media type:             Floppy [f], CD/DVD [c] or End [e]   Choose "e", and Solaris will  continue with the installation.  Solaris   will prompt for re-insertion of the Solaris media; complete this  step   and proceed with the installation.------ The driver disk support variety of HP Smart  Array  Controllers for Solaris 10        \*  Smart Array 5300 Controller        \*  Smart Array 5i Controller        \*  Smart Array 532 Controller        \*  Smart Array 5312 Controller        \*  Smart Array 641 Controller        \*  Smart Array 642 Controller        \*  Smart Array 6400 Controller        \*  Smart Array 6400EM Controller        \*  Smart Array 6i Controller        \*  Smart Array P600 Controller        \*  Smart Array E200 Controller        \*  Smart Array E200i Controller        \*  Smart Array E500 Controller        \*  Smart Array P400 Controller        \*  Smart Array P400i Controller        \*  Smart Array P800 Controller You can upgrade and remove drivers by using pkgadd and pkgrm driver package CPQary3 found in CD . Thanks for good readme.txt found at CPQary3.iso image. For more detail information checkout the readme.txt found in CD.

Came across query regarding installation of Solaris 10 on HP Proliant Server DL 360 series machines. By default Solaris 10 doesn't ship drivers for HP Smart  Array  Controllers .  So during...

General

How to speed up your Solaris/OpenSolaris remote login

If you are logging into remote Solaris / OpenSolaris, it could take quite a few seconds to get the login prompt.  If your home directories are exported with NFS while logging (ssh, rsh & telnet) into remote machine this delay can be noticed. The bottleneck here is with the /etc/profile file.  <<snip>> case "$0" in-sh | -ksh | -ksh93 | -jsh | -bash)        if [ ! -f .hushlogin ]        then                /usr/sbin/quota                #       Allow the user to break the Message-Of-The-Day only.                trap "trap '' 2"  2                /bin/cat -s /etc/motd                trap "" 2                /bin/mail -E                case $? in                0)                        echo "You have new mail."                        ;;                2)                        echo "You have mail."                        ;;                esac        fiesac<<snip>> Each time a user logs in /etc/profileshell script is executed.  The script runs quota,mail and displays motd . If your sure that you d'nt need any of this, then go ahead and just touch .hushlogin file in your home directory $touch ~/.hushlogin Now login to remote machine and see the difference.

If you are logging into remote Solaris / OpenSolaris, it could take quite a few seconds to get the login prompt.  If your home directories are exported with NFS while logging (ssh, rsh & telnet) into...

General

Solaris Nevada / OpenSolaris Mac book right-click

When you run Solaris on Macbook. Trouble is that the right-click doesn't work . One way to solve is to have USB mouse or you can have a key mapped to right-click so that when ever you press the key it automatically maps the key to right click. To enable this goto Start -> Preferences -> Keyboard Accessibility Preferences .  click on "Enable Keyboard accessibility features" and then click "Enable Mouse Keys" We need the scancode of the key to map it to right-click. For identifying scancode you can run Xev utility . Start the terminal and run xev "/usr/openwin/demo/xev" program.  Click on Xev window and press the key which you wanted to map it to right-click, xev will show the scancode for the key . Once you get the scancode you can kill xev. Sample xev screen: Now to open your favorite editor and create a file under your home directory ~/ .xmodmap . Put the following entry into it.-----------keycode 117 = Pointer_Button3--------- Save the file and run the command " xmodmap ~/.xmodmap" to activate it.  Now while pressing the key you should be able to see right-click menu. Put the an entry in Start -> Preferences -> Session so that "xmodmap" command is executed each time you log into Gnome.  Add entry "/usr/openwin/bin/xmodmap <path>" . Substitute <path> with location of  ".xmodmap" file eg. /export/home/guest/.xmodmap

When you run Solaris on Macbook. Trouble is that the right-click doesn't work . One way to solve is to have USB mouse or you can have a key mapped to right-click so that when ever you press the key it...

General

Thinkpad T61 Solaris

Installed "Solaris Express Developer Edition 1/08 snv_79a X86" on Thinkpad T61 . Here is the list of devicesWireless doesnot work. Waiting for iwk driver release.For sound driver use the OSS driver from http://www.4front-tech.com/download.cgi . One issue with OSS driver is that it puts "input-mixer" on high, so its noisy while you boot up. Workaround is to mute while bootup and then set the ossmix after bootup.#~ossmix connector.int-speaker.input-mix 0This comes with Nvidia card so compiz-fusion works fine . Compiz-fusion can be downloaded from Erwann's blog bash~# scanpcipci bus 0x0000 cardnum 0x00 function 0x00: vendor 0x8086 device 0x2a00 Intel Corporation Mobile Memory Controller Hubpci bus 0x0000 cardnum 0x01 function 0x00: vendor 0x8086 device 0x2a01 Intel Corporation Mobile PCI Express Root Portpci bus 0x0000 cardnum 0x19 function 0x00: vendor 0x8086 device 0x1049 Intel Corporation 82566MM Gigabit Network Connectionpci bus 0x0000 cardnum 0x1a function 0x00: vendor 0x8086 device 0x2834 Intel Corporation 82801H (ICH8 Family) USB UHCI #4pci bus 0x0000 cardnum 0x1a function 0x01: vendor 0x8086 device 0x2835 Intel Corporation 82801H (ICH8 Family) USB UHCI #5pci bus 0x0000 cardnum 0x1a function 0x07: vendor 0x8086 device 0x283a Intel Corporation 82801H (ICH8 Family) USB2 EHCI #2pci bus 0x0000 cardnum 0x1b function 0x00: vendor 0x8086 device 0x284b Intel Corporation 82801H (ICH8 Family) HD Audio Controllerpci bus 0x0000 cardnum 0x1c function 0x00: vendor 0x8086 device 0x283f Intel Corporation 82801H (ICH8 Family) PCI Express Port 1pci bus 0x0000 cardnum 0x1c function 0x01: vendor 0x8086 device 0x2841 Intel Corporation 82801H (ICH8 Family) PCI Express Port 2pci bus 0x0000 cardnum 0x1c function 0x02: vendor 0x8086 device 0x2843 Intel Corporation 82801H (ICH8 Family) PCI Express Port 3pci bus 0x0000 cardnum 0x1c function 0x03: vendor 0x8086 device 0x2845 Intel Corporation 82801H (ICH8 Family) PCI Express Port 4pci bus 0x0000 cardnum 0x1c function 0x04: vendor 0x8086 device 0x2847 Intel Corporation 82801H (ICH8 Family) PCI Express Port 5pci bus 0x0000 cardnum 0x1d function 0x00: vendor 0x8086 device 0x2830 Intel Corporation 82801H (ICH8 Family) USB UHCI #1pci bus 0x0000 cardnum 0x1d function 0x01: vendor 0x8086 device 0x2831 Intel Corporation 82801H (ICH8 Family) USB UHCI #2pci bus 0x0000 cardnum 0x1d function 0x02: vendor 0x8086 device 0x2832 Intel Corporation 82801H (ICH8 Family) USB UHCI #3pci bus 0x0000 cardnum 0x1d function 0x07: vendor 0x8086 device 0x2836 Intel Corporation 82801H (ICH8 Family) USB2 EHCI #1pci bus 0x0000 cardnum 0x1e function 0x00: vendor 0x8086 device 0x2448 Intel Corporation 82801 Mobile PCI Bridgepci bus 0x0000 cardnum 0x1f function 0x00: vendor 0x8086 device 0x2811 Intel Corporation Mobile LPC Interface Controllerpci bus 0x0000 cardnum 0x1f function 0x01: vendor 0x8086 device 0x2850 Intel Corporation Mobile IDE Controllerpci bus 0x0000 cardnum 0x1f function 0x02: vendor 0x8086 device 0x2829 Intel Corporation Mobile SATA AHCI Controllerpci bus 0x0000 cardnum 0x1f function 0x03: vendor 0x8086 device 0x283e Intel Corporation 82801H (ICH8 Family) SMBus Controllerpci bus 0x0001 cardnum 0x00 function 0x00: vendor 0x10de device 0x0429 nVidia Corporation  Device unknownpci bus 0x0003 cardnum 0x00 function 0x00: vendor 0x8086 device 0x4230 Intel Corporation  Device unknownpci bus 0x0015 cardnum 0x00 function 0x00: vendor 0x1180 device 0x0476 Ricoh Co Ltd RL5c476 IIpci bus 0x0015 cardnum 0x00 function 0x01: vendor 0x1180 device 0x0832 Ricoh Co Ltd  Device unknownpci bus 0x0015 cardnum 0x00 function 0x02: vendor 0x1180 device 0x0822 Ricoh Co Ltd R5C822 SD/SDIO/MMC/MS/MSPro Host Adapterpci bus 0x0015 cardnum 0x00 function 0x03: vendor 0x1180 device 0x0843 Ricoh Co Ltd  Device unknownpci bus 0x0015 cardnum 0x00 function 0x04: vendor 0x1180 device 0x0592 Ricoh Co Ltd R5C592 Memory Stick Bus Host Adapterpci bus 0x0015 cardnum 0x00 function 0x05: vendor 0x1180 device 0x0852 Ricoh Co Ltd xD-Picture Card Controller

Installed "Solaris Express Developer Edition 1/08 snv_79a X86" on Thinkpad T61 . Here is the list of devices Wireless doesnot work. Waiting for iwk driver release. For sound driver use the OSS driver...

General

Projector configuration for intel i945 ( i810 ) driver for Solaris

Recently installed Solaris Express build 70 in couple of laptops which had Intel 945 chipsets . So enabled compiz-fusion on them with the help of Erwann's  Compiz-fusion packages . Next step was to configure display for projector. Below procedure should work for Intel chipsets which uses i945 (i810) driver.  To make laptop projector aware add the following lines in /etc/X11/xorg.conf in Section "Device" . Note that you need to modify BusID for your Laptop / Desktop requirement. <snip>BusID     "PCI:0:2:0"  # modify it for your laptop / desktopOption    "Clone" "true"Option    "MonitorLayout" "CRT,LFP"<snip> Sample section<code>Section "Device"        ### Available Driver options are:-        ### Values: <i>: integer, <f>: float, <bool>: "True"/"False",        ### <string>: "String", <freq>: "<f> Hz/kHz/MHz"        ### [arg]: arg optional        #Option     "NoAccel"                # [<bool>]        #Option     "SWcursor"               # [<bool>]        #Option     "ColorKey"               # <i>        #Option     "CacheLines"             # <i>        #Option     "Dac6Bit"                # [<bool>]        #Option     "DRI"                    # [<bool>]        #Option     "NoDDC"                  # [<bool>]        #Option     "ShowCache"              # [<bool>]        #Option     "XvMCSurfaces"           # <i>        #Option     "PageFlip"               # [<bool>]    Identifier  "Card0"    Driver      "i810"    VendorName  "Intel Corporation"    BoardName   "Mobile 945GM/GMS/940GML Express Integrated Graphics Controller"    BusID       "PCI:0:2:0"    BusID       "PCI:0:2:0"    Option    "Clone" "true"    Option  "MonitorLayout" "CRT,LFP"EndSection</code>You can have a look at the sample xorg.conf from Solaris Express build 70 . I have tested with  Intel 945 GM chipset  .

Recently installed Solaris Express build 70 in couple of laptops which had Intel 945 chipsets . So enabled compiz-fusion on them with the help of Erwann's  Compiz-fusion packages . Next step was to...

General

Mount NTFS / Ext2 / Ext3 / FAT 16 / FAT 32 in Solaris

I often get queries about mounting NTFS / Ext2 / Ext3 /  FAT 16 /  FAT 32 partions in Solaris .  Follow the below steps . Note that its only read-only support for NTFS / Ext2 / Ext3 . \* Download packages FSWpart FSWfsmisc   Note these are packages for x86 Solaris .  \* unzip the packages and install itroot~#gzcat FSWpart.tar.gz | tar xvf -root~#gzcat FSWfsmisc.tar.gz | tar xvf -root~#pkgadd -d . FSWpartroot~#pkgadd -d . FSWfsmisc \* Now run the prtpart tool root~#/usr/sbin/prtpartIt would result in following outputroot~#/usr/sbin/prtpartFdisk information for device /dev/rdsk/c1d0p0 Block Size : 512 bytesController : ideDisk       : cmdkCapacity   : 74 GB#  start block  # nblocks    startCylSecHd endCylSecHd   OSType 1: 0000000063   0006152832     0/ 1/ 1    7e/7f/fe      Diagnostic 2: 0006152895   0025173855    7f/41/ 0    ff/ff/fe      WIN95 FAT32(LBA) 3: 0031328640   0052432128    ff/ff/fe    ff/ff/fe      Solaris x86 4: 0083760830   0072535555    ff/ff/fe    ff/ff/fe      DOS Extended  #  start block  # nblocks    startCylSecHd endCylSecHd   OSType   5: 0000000001   0031407012    ff/ff/fe    ff/ff/fe      Linux native   0: 0031407013   0001994202    ff/ff/fe    ff/ff/fe      DOS Extended    #  start block  # nblocks    startCylSecHd endCylSecHd   OSType     6: 0000000063   0001994139    ff/ff/fe    ff/ff/fe      Linux swap     0: 0033401215   0039134340    ff/ff/fe    ff/ff/fe      DOS Extended      #  start block  # nblocks    startCylSecHd endCylSecHd   OSType       7: 0000000063   0039134277    ff/ff/fe    ff/ff/fe      WIN95 FAT32(Upto 2047GB)Now note the disk id. In the above example its "/dev/rdsk/c1d0p0" Now run root~#/usr/sbin/prtpart /dev/rdsk/c1d0p0 -ldevsFdisk information for device /dev/rdsk/c1d0p0\*\* NOTE \*\*/dev/dsk/c1d0p0      - Physical device referring to entire physical disk/dev/dsk/c1d0p1 - p4 - Physical devices referring to the 4 primary partitions/dev/dsk/c1d0p5 ...  - Virtual devices referring to logical partitionsVirtual device names can be used to access EXT2 and NTFS on logical partitions/dev/dsk/c1d0p1 Diagnostic/dev/dsk/c1d0p2 WIN95 FAT32(LBA)/dev/dsk/c1d0p3 Solaris x86/dev/dsk/c1d0p4 DOS Extended/dev/dsk/c1d0p5 Linux native/dev/dsk/c1d0p6 Linux swap/dev/dsk/c1d0p7 WIN95 FAT32(Upto 2047GB)The above command scan you hard-disk and displays all available filesystems. Note the required filesystems to be mounted.To mount NTFS partition useroot~#mount -F ntfs  /dev/dsk/c1d0p<number> /mnt/windowsTo mount FAT 16 /  FAT 32 partition useroot~#mount -F pcfs  /dev/dsk/c1d0p<number> /mnt/windowsif the above command fails you can try the below option root~#prtpart /dev/dsk/c1d0p0 -fat the above command should list the available PCFS / FAT partitions in colon notation, then use the same for mounting (eg)root~#mount -F pcfs  /dev/dsk/c1d0p0:d /mnt/windows To mount Ext2 / Ext3 partitions useroot~#mount -F ext2fs /dev/dsk/c1d0p<number> /mnt/linuxTo unmount a partition use "umount <directory>"root~#umount /mnt/linux

I often get queries about mounting NTFS / Ext2 / Ext3 /  FAT 16 /  FAT 32 partions in Solaris .  Follow the below steps . Note that its only read-only support for NTFS / Ext2 / Ext3 .  \* Download...

General

SunTech days Mumbai

Recently Sun conducted TechDays across various parts in India. Main SunTech days event was held at Hyderabad. In addition to that Sun also conducted TechDays in various cities Mumbai, Pune and Delhi. We had 400+ (approx) attendees for the conference in Mumbai. Till 12pm we had "Live Satellite Link" to SunTech days Hyderabad. Sridhar Reddy from Sun Developer Outreach gave talks on (Java SE6, Simplifying Persistence and AJAX, jMaki and Phobos for Web 2.0 Development using Java) and I gave talk on "Solaris: The Developer Friendly Operating System". In addition to our talks we had speakers from Accenture (Implementing Secure J2EE Web Services & Sun Identity Management Solutions) and SAS (Data Visualization for Large Scale Analytical Data). People who attended talks were mostly working professionals and few students. Since we delayed the start we had to rush through and some of the talks. My talk started at arround 6'pm evening. I had very little time to cover whole of Solaris 10 features. I ended my preso at arround 6.45pm and the people started of with various queries on (DTrace, ZFS and Zones). Solaris Q&A session went more than 20mins. Finally talk ended arround 7.15pm. Couple of folks stayed back and asked various queries about Solaris 10 technologies. It was a nice experience getting to know the developer community in Mumbai.

Recently Sun conducted TechDays across various parts in India. Main SunTech days event was held at Hyderabad. In addition to that Sun also conducted TechDays in various cities Mumbai, Pune and Delhi....

General

Solaris first boot essential configurations

Everytime one installs Solaris from a DVD/CD user needs to do a lot of initial configurations. The following perl script takes care some of those. This script is meant to be run on development box in secure environment.This script enables SSHD explicitly so if someone doesnt want to root access for SSHD please disable "PermitRootLogin No" in "/etc/ssh/sshd_config" and restart SSHD daemon by "svcadm restart ssh" Script configures following stuffs. \* Creates /root directory for root user updates /etc/passwd with "/root" directory and sets "/usr/bin/bash" as default shell \* Moves "/.dot-config" files to new /root directory \* Enables "PermitRootLogin yes" for /etc/ssh/sshd_config to allow root access over sshd and restarts sshd service \* Create /root/.bashrc and /root/.bash_profile >updates with PATH and TERM settings >bash prompt settings >title bar customizations >screen customization for telnet \* Generates formatted files for the reference manual (catman) \* This script takes a backup of your current configuration files and puts into /backup_conf_date:time.tar so you can revert back to older configuration \* User can run this script multiple times each time script is executed, it will automatically create backup of older configuration and does the above configurations. To run the script download the firstconf.pl to /tmp test1~#cd /tmp test1~#chmod +x ./firstconf.pl test1~#./firstconf.pl Logout and re-login immediately.

Everytime one installs Solaris from a DVD/CD user needs to do a lot of initial configurations. The following perl script takes care some of those.This script is meant to be run on development box in...

General

Mount NTFS partition in Solaris

     In multiboot system if your have Windows with NTFS filesystem and you wanted read-only support this utlity can mount the NTFS filesystem in Solaris.      This project http://mount-ntfs.sourceforge.net/ NTFS Mount (Solaris), UFS Reader (Windows XP) has released utils for NTFS support for Solaris and UFS reader support for Windows vice-versa so that you can access data across . The idea here is to use NFSv2 server that has the ability to read raw blocks from a block device and interpret the raw data as per the NTFS on-disk format. You can use the existing NFS client in Solaris to mount via the loopback interface. Download the binaries from http://sourceforge.net/project/showfiles.php?group_id=169514\* Warning You use this program on your own risk !!! \* For mounting a NTFS filesystem. Follow the below procedure.bash-3.00~# fdisk /dev/rdsk/c1d0s0Below is the sample output for the disk c1d0s0===             Total disk size is 38765 cylinders             Cylinder size is 4032 (512 byte) blocks                                              Cylinders      Partition             Status         Type         Start       End         Length       %      ====================== ======================================         1                                Diagnostic       0        1525         1526        4         2                                 IFS:NTFS     1526      7769          6244      16 <== NTFS         3                    Active       Solaris2      7770       20773      13004      34         4                                  EXTLBA    20774      38763       17990      46SELECT ONE OF THE FOLLOWING:   1. Create a partition   2. Specify the active partition   3. Delete a partition   4. Change between Solaris and Solaris2 Partition IDs   5. Exit (update disk configuration and exit)   6. Cancel (exit without updating disk configuration)Enter Selection: 5Press 5 to exit from fdisk menu. Note that your NTFS partition here is 2 .Now to mount the NTFS filesystem run the below command.bash-3.00# ./mount_ntfs.opensol-x86-binary /dev/rdsk/c1d0p2 /mnt/windowsTo unmount the file system type "kill 15554".bash-3.00# mount/ on /dev/dsk/c1d0s0 read/write/setuid/devices/intr/largefiles/logging/xattr/onerror=panic/dev=1980000 on Wed Jul 12 16:01:09 2006/devices on /devices read/write/setuid/devices/dev=4380000 on Wed Jul 12 16:00:47 2006/system/contract on ctfs read/write/setuid/devices/dev=43c0001 on Wed Jul 12 16:00:47 2006/proc on proc read/write/setuid/devices/dev=4400000 on Wed Jul 12 16:00:47 2006/etc/mnttab on mnttab read/write/setuid/devices/dev=4440001 on Wed Jul 12 16:00:47 2006/etc/svc/volatile on swap read/write/setuid/devices/xattr/dev=4480001 on Wed Jul 12 16:00:47 2006/system/object on objfs read/write/setuid/devices/dev=44c0001 on Wed Jul 12 16:00:47 2006/lib/libc.so.1 on /usr/lib/libc/libc_hwcap2.so.1 read/write/setuid/devices/dev=1980000 on Wed Jul 12 16:01:00 2006/dev/fd on fd read/write/setuid/devices/dev=4680001 on Wed Jul 12 16:01:09 2006/tmp on swap read/write/setuid/devices/xattr/dev=4480002 on Wed Jul 12 16:01:11 2006/var/run on swap read/write/setuid/devices/xattr/dev=4480003 on Wed Jul 12 16:01:11 2006/data on /dev/dsk/c1d0p1 read/write/setuid/devices/hidden/nofoldcase/dev=1980011 on Wed Jul 12 16:01:18 2006/mnt/windows on 127.0.0.1:/ remote/read only/setuid/devices/port=53805/public/vers=2/proto=udp/xattr/dev=4740003 on Wed Jul 12 18:02:25 2006For unmounting the filesystem you need to kill the process. eg) bash-3.00# kill 15554I tried mounting NTFS partition (Windows XP) under Solaris Nevada it works fine.

     In multiboot system if your have Windows with NTFS filesystem and you wanted read-only support this utlity can mount the NTFS filesystem in Solaris.      This project http://mount-ntfs.sourceforge...

General

Ferrari 4000 flash archive installation

I was trying to install Acer Ferrari 4000 laptop using flash archive, but the issue is Solaris doesnot come withBroadcom Gigabit ethernet driver (bcme) so one cannot do network install. So I downloaded bcme driver frombroadcom website . When you unzip the drivers, you will find a tar file BRCMbcme.tar.Z. Untar the file and copy it into USB thumb drive.Follow below steps to do flash archive installation over network.o Once the Solaris is booted with CD exit installationo Insert the USB thumb driveo Create temproary directory mkdir /tmp/bcmedrv o Mount the thumb drive to /tmp/bcmedrvo By default ramdisk (/) is mounted in read-only mode. Remount root / partition into read-write modemount -o remount,rw / o Copy /tmp/bcmedrv/BRCMbcme/reloc/kernel/drv/ to /kernel/drvcp -r /tmp/bcmedrv/BRCMbcme/reloc/kernel/drv/\* /kernel/drv o Run add_drv command add_drv -i '"pci14e4,169d"' bcme o Now plumb all interfaces ifconfig -a plumb all o You can see bcme is plumbed at this pointo Now fetch the IP if its dhcp or set static ip ifconfig bcme0 dhcp starto Now unmount /tmp/bcmedrv and remove usb-driveo Run "install-solaris" in terminal which starts Solaris installationo Select flash archive installation and complete the installation.

I was trying to install Acer Ferrari 4000 laptop using flash archive, but the issue is Solaris doesnot come withBroadcom Gigabit ethernet driver (bcme) so one cannot do network install. So I...

General

Using NetBSD packages with OpenSolaris / Solaris

Currently lots of utilites from NetBSD are ported for Solaris. So I took latest packaging tools and compiled it for Solaris. Using this you can add NetBSD packages.\*) Download the base bootstrap.tar.bz2\*) Untar the contents gtar xvjf bootstrap.tar.bz2 -C / This would basically install all the required utils and packaging info.\*) Set the PKG_PATH to appropriate site from where the NetBSD packages can be fetched. export PKG_PATH=http://public.enst.fr/pkgsrc/packages/SunOS-5.10/i386/pkgsrc-current/All \*) Set the PATH makes sure the /usr/pkg/bin & /usr/pkg/sbin are at first because NetBSD uses its own utils for fetching and installing packages. set PATH=/usr/pkg/bin:/usr/pkg/sbin:$PATH \*) If you are behind firewall or if you use proxy to download set the environment variables accordingly export http_proxy=http://proxy-ip:port export ftp_proxy=http://proxy-ip:port eg) export http_proxy=http://webproxy:8080/\*) Now juz try adding a package pkg_add -v eg) pkg_add -v wget NetBSD packages are installed in /usr/pkg/bin or /usr/pkg/sbin directory\*) To see list of packages which are currently ported visithttp://public.enst.fr/pkgsrc/packages/SunOS-5.10/i386/pkgsrc-current/AllFor more information of NetBSD packaging utils visit http://www.pkgsrc.org

Currently lots of utilites from NetBSD are ported for Solaris. So I took latest packaging tools and compiled it for Solaris. Using this you can add NetBSD packages. \*) Download the base bootstrap.tar....

General

FOSS.in Report

FOSS.in is a big developers event in India. Previously it used to be Banglinux which later renamed as FOSS.in. Sun did a platinum sponsorship for this event.Sumitha, Vinay and Mahesh took the responsibility of doing the ground work for this event.We planned to showcase various technologies \* DTrace \* SMF/Zones\* ZFS\* Belenix\* GlassFish\* NetbeansDTrace: This was the major attraction within developers, every one were amazed with this technology people after seeing this demo have the below common question.\* Is is part of OS or separate package ?\* Is this technology being ported to Linux or any other Unix flavors ?Belenix: We started distributing Belenix live-CD. There were some common queries among developers\* Does Belenix run on x86 pc ?\* What advantages does Solaris have than linux ?\* What are the features available one Solaris ?\* What architectures does Solaris support ?For people who were really interested we distributed Solaris 10 DVD's. Some common queries about opensolaris :-\* What licensing does this follows ?\* Can I start modifying it ?\* Can I strip down the kernel/utils and customize it ?\* What's the Sun's strategy behind Opensolaris ?People who handled various demos :-Belenix - Myself, Moinak, Popuri, Ram and AnandthDTrace- Pramod, Jalan, Ramesh, Kini, Sanjeev, Syed and PavanSMF/Zone - Vineeth, Shivani, Madhu, Ganga, Ganesh, Saif and VivekZFS- Mahesh, Vidya, Kishore and VenkuSorry if I had missed out some names... Each of our volunteers were so enthusiastic about this they worked hard to make it a grand success.When compared to other stalls (google,hp,yahoo....) Sun stall was much crowded.One of the stall GCI solutions were running a competition on Redhat linux. So I juz gave it a try and won the competition. Next day Alan Cox distributed prizes for winners. I got "The Mythical Man-Month" book as a prize autographed by him.Some wins about FOSS.in\* Solaris/OpenSolaris awareness among developers.\* Sun stall attracted a large visitors.\* More number of developers showed interest in Opensolaris and have signed up with BOSUG usergroup.\* Distributed more than 1000 Belenix Cd's and arround 400 Solaris 10 DVD's.\* India's leading newspaper The Hindu carried article about Opensolaris and Belenix.For more info on FOSS.in visit Madhu's blog.

FOSS.in is a big developers event in India. Previously it used to be Banglinux which later renamed as FOSS.in. Sun did a platinum sponsorship for this event.Sumitha, Vinay and Mahesh took the...

General

Dtlogin add Window manager

To add other Window managers like (wmaker ,KDE, sawfish ... etc) to dtlogin can be done by creating following three files1) /usr/dt/config/C/Xresources.d/Xresources.< window_manager >2) /usr/dt/config/Xsession.< window_manager >3) /usr/dt/config/Xinitrc.< window_manager >Before creating files please note that you need to preserve permission while copying file.(eg: cp -Ppr /usr/dt/config/C/Xresources.d/Xresources.jds /usr/dt/config/C/Xresources.d/Xresources.wmaker)In above files replace < window_manager > with your custom name eg ( /usr/dt/config/C/Xresources.d/Xresources.wmaker )Now lets look at files.In Xresources.wmaker replace altDtName, altDtKey and altDtStart with appropriate file name=========#cat /usr/dt/config/C/Xresources.d/Xresources.wmakerDtlogin\*altDtsIncrement: TrueDtlogin\*altDtName: Window MakerDtlogin\*altDtKey: /usr/local/bin/wmakerDtlogin\*altDtStart: /usr/dt/config/Xsession.wmakerDtlogin\*altDtLogo: JDS_s10==========After completing changes create Xsession.wmaker by copying ( cp -rPp /usr/dt/config/Xsession2.jds /usr/dt/config/Xsession.wmaker ). In Xsession.wmaker all you need to do is change the location of Xinitrc.wmaker. And finally copy ( cp -rPp /usr/dt/config/Xinitrc.jds /usr/dt/config/Xinitrc.wmaker ). In Xinitrc.wmaker Make sure that you update the LD_LIBRARY_PATH,PATH and exec < binary_location > , if your window manager libraries and binaries are in nonstandard path.Now logout you current session and try loggin in. If any error try logging in fail safe mode and start your custom window manager which could help you in debugging the startup issues.I have attached all the 3 files for reference.1) Xresources.wmaker2) Xsession.wmaker3) Xinitrc.wmaker

To add other Window managers like (wmaker ,KDE, sawfish ... etc) to dtlogin can be done by creating following three files 1) /usr/dt/config/C/Xresources.d/Xresources.< window_manager >2)...