Feeds:
Posts
Comments

Archive for February, 2009

Unix Hierarchy


People who come into contact with the UNIX system are often told : “If you have trouble, see so-and-so, he’s a guru”, or “Bob there is a real Unix hacker”. Often they are baffled by these appellations, and do not pursue the matter further. What is a “Unix Hacker ?”. How does he differ from a “guru” ? To answer these and other questions, here is the UNIX HIERARCHY :

beginner

  • insecure with the concept of a terminal
  • has yet to learn the basics of vi
  • has not figured out how to get a directory
  • still has trouble with typing after each line of input

novice

  • knows that ls will produce a directory
  • use the editor, but calls it vye.
  • has heard of C but never used it
  • has had his first bad experience with rm
  • is wondering how to read his mail
  • is wondering why the person next to him seems to like Unix so very much

user

  • uses vi and nroff, but inexpertly
  • had heard of regular-expr’s but never seen one
  • uses egrep to search for fixed strings
  • has figured out that ‘-‘ precedes options
  • is wondering how to move a directory
  • has attempted to write C program and has decided to stick with pascal
  • thinks that sdb is a brand of stereo component
  • knows how to read his mail and is wondering how to read the news

knowledgeable user

  • uses nroff with no trouble, and is beginning to learn tbl and eqn
  • thinks that fgrep is fast grep
  • has figured out that mv will move directories
  • has learned that learn doesn’t help
  • somebody has shown him how to write C programs
  • once used sed to do some text substitution
  • has seen sdb used but does not use it himself
  • thinks that make is only for wimps

expert

  • uses sed when necessary
  • uses macro’s in vi, uses ex when necessary
  • posts news at every possible opportunity
  • writes csh scripts occasionally
  • writes C programs using vi and compiles with cc
  • has figured out what && and || are for
  • thinks that human history started with !h

hacker

  • uses sed and awk with comfort
  • uses undocumented features of vi
  • writes C code with cat > and compiles with !cc
  • uses adb because he doesn’t trust source debuggers
  • can answer questions about the user environment
  • writes his own ‘nroff’ macros to supplement standard ones
  • writes scripts for Bourne shell (/bin/sh)

guru

  • uses m4 and lex with comfort
  • writes assembly code with cat >
  • uses adb on the kernel while system is loaded
  • customizes utilities by patching the source
  • reads device driver source with his breakfast
  • can answer any Unix question after a little thought
  • uses make for anything that requires two or more distinct commands to archive
  • has learned how to breach security, but no longer needs to try

wizard

  • writes device drivers with cat >
  • fixes bugs by patching the binaries
  • can answer any question before ask
  • writes his own troff macro packages
  • is on first-name basis with Dennis, Bill and Ken

Read Full Post »

Sudo Nautilus

The sudo (super user do, officially pronounced /ˈsuːduː/, though /ˈsuːdoʊ/ is also common) command is a program for Unix-like computer operating systems that allows users to run programs with the security privileges of another user (normally the superuser, aka. root). By default, sudo will prompt for a user password but it may be configured to require the root password, or require it only once per pseudo terminal, or no password at all. sudo is able to log each command run and in some cases has completely supplanted the superuser login for administrative tasks, most notably in Ubuntu Linux and Apple’s Mac OS X. The program was originally written by Bob Coggeshall and Cliff Spencer “around 1980” at the Department of Computer Science at SUNY/Buffalo. The current version is under active development and is maintained by OpenBSD developer Todd C. Miller and distributed under a BSD-style license.

n Linux (and Unix in general), there is a superuser named root. The Windows equivalent of root is Administrator. The superuser can do anything and everything, and thus doing daily work as the superuser can be dangerous. You could type a command incorrectly and destroy the system. Ideally, you run as a user that has only the privileges needed for the task at hand. In some cases, this is necessarily root, but most of the time it is a regular user.

By default, the root account password is locked in Ubuntu. This means that you cannot login as root directly or use the su command to become the root user. However, since the root account physically exists it is still possible to run programs with root-level privileges. This is where sudo comes in – it allows authorized users (normally “Administrative” users; for further information please refer to AddUsersHowto) to run certain programs as root without having to know the root password.

This means that in the terminal you should use sudo for commands that require root privileges; simply prepend sudo to all the commands you would normally run as root. For more extensive usage examples, please see below. Similarly, when you run GUI programs that require root privileges (e.g. the network configuration applet), use graphical sudo and you will also be prompted for a password (more below). Just remember, when sudo asks for a password, it needs YOUR USER password, and not the root account password

Advantages and Disadvantages

Benefits of using sudo

Some benefits of leaving root logins disabled by default include the following:

  • The Ubuntu installer has fewer questions to ask.
  • Users don’t have to remember an extra password (i.e. the root password), which they are likely to forget.
  • It avoids the “I can do anything” interactive login by default (e.g. the tendency by users to login as an “Administrator” user in Microsoft Windows systems), you will be prompted for a password before major changes can happen, which should make you think about the consequences of what you are doing.

  • sudo adds a log entry of the command(s) run (in /var/log/auth.log). If you mess up, you can always go back and see what commands were run. It is also nice for auditing.

  • Every cracker trying to brute-force their way into your box will know it has an account named root and will try that first. What they don’t know is what the usernames of your other users are. Since the root account password is locked, this attack becomes essentially meaningless, since there is no password to crack or guess in the first place.

  • Allows easy transfer for admin rights, in a short term or long term period, by adding and removing users from groups, while not compromising the root account.

  • sudo can be setup with a much more fine-grained security policy.
  • The authentication automatically expires after a short time (which can be set to as little as desired or 0); so if you walk away from the terminal after running commands as root using sudo, you will not be leaving a root terminal open indefinitely.

Downsides of using sudo

Although for desktops the benefits of using sudo are great, there are possible issues which need to be noted:

  • Redirecting the output of commands run with sudo requires a different approach. For instance consider sudo ls > /root/somefile will not work since it is the shell that tries to write to that file. You can use ls | sudo tee -a /root/somefile to append, or ls | sudo tee /root/somefile to overwrite contents. You could also pass the whole command to a shell process run under sudo to have the file written to with root permissions, such as sudo sh -c "ls > /root/somefile".

  • In a lot of office environments the ONLY local user on a system is root. All other users are imported using NSS techniques such as nss-ldap. To setup a workstation, or fix it, in the case of a network failure where nss-ldap is broken, root is required. This tends to leave the system unusable unless cracked. An extra local user, or an enabled root password is needed here. The local user account should have its $HOME on a local disk, _not_ on NFS (or any other networked filesystem), and a .profile/.bashrc that doesn’t reference any files on NFS mounts. This is usually the case for root, but if adding a non-root rescue account, you will have to take these precautions manually.
  • Using the single boot parameter (for example, to repair a broken system) doesn’t help much if you intend to use the root option (labeled Drop to root shell prompt) from the Recovery menu, since that option requires entering the root password. (This however seems to have been fixed in the 8.10 release.)

Read Full Post »

All filesystems are contained within one directory hierarchy. The root directory is the top level directory, and all its subdirectories make up the directory hierarchy. This differs to other operating systems such as MS-Windows which applies a separate hierarchy for each device and partition.

  • /bin – binary applications (most of your executable files)
  • /boot – files required to boot (such as the kernel, etc)
  • /dev – your devices (everything from drives to displays)
  • /etc – just about every configuration file for your system
  • /etc/profile.d – contains scripts that are run by /etc/profile upon login.
  • /etc/rc.d – contains a number of shell scripts that are run on bootup at different run levels. There is also typically an rc.inet1 script to set up networking (in Slackwar), an rc.modules script to load modular device drivers, and an rc.local script that can be edited to run commands desired by the administrator, along the lines of autoexec.bat in DOS.
  • /etc/rc.d/init.d – contains most of the initialization scripts themselves on an rpm-based system.
  • /etc/rc.d/rc*.d – where “*” is a number corresponding to the default run level. Contains files for services to be started and stopped at that run level. On rpm-based systems, these files are symbolic links to the initialization scripts themselves, which are in /etc/rc.d/init.d.
  • /etc/skel – directory containing several example or skeleton initialization shells. Often contains subdirectories and files used to populate a new user’s home directory.
  • /etc/X11 – configuration files for the X Window system
  • /home – locally stored user files and folders
  • /lib – system libraries (similar to Program Files)
  • /lost+found – lost and found for lost files
  • /media – mounted (or loaded) devices such as cdroms, digital cameras, etc.
  • /mnt – mounted file systems
  • /opt – location for “optionally” installed programs
  • /proc – dynamic directory including information about and listing of processes
  • /root – “home” folder for the root user
  • /sbin – system-only binaries (see /bin)
  • /sys – contains information about the system
  • /tmp – temporary files
  • /usr – applications mainly for regular users
  • /var – mainly logs, databases, etc.
  • /usr/local/bin – the place to put your own programs. They will not be overwritten with upgrades.
  • /usr/share/doc – documentation.

Read Full Post »

So during my spare time i was able to install an Ubuntu Server edition using my VMware workstation.. and after installing and rebooting it, it comes up with a prompt command asking for my username and password.. after i entered both, nothing happened.. lol.. didn’t even take me into the GUI mode.. so after reading the documentations, there’re some of the steps that i’ll need to follow…

Once I’ve have loaded the server, and logged in, run the command
sudo apt-get install *****-desktop
You will need to replace ***** with the version of the ubuntu GUI (Graphical User Interface) you wish. Below is a list of different options
kubuntu-desktop – For KDE
ubuntu-desktop – For GNOME (default with Ubuntu desktop)
xubuntu-desktop – For XFCE

Well i’ve chosen Ubuntu-desktop since it’s a default ones, so… if you have no clue about which one to choose, use ubuntu-desktop right after you have entered that command, enter your password, and answer yes (y) to all of the questions. Then it should install the GUI, this will take a long time, so get a book at the ready! Once it has finished, enter the command
sudo shutdown -r
now To reboot the PC and next time it loads, you should boot into a GUI! Hope this helps..

Read Full Post »

As a Senior Technology Consultant, I must stay current on a wide range of different technologies, including the multitude of operating systems on the market. Just to keep up with Microsoft, I need to run Windows 95, 98, NT4, 2000, XP, Vista, Server (2000, 2003, 2008), and other permutations of the Windows operating system. I could keep about ten spare computers on hand for testing or purchase additional hardware, such as swappable hard drive bays, but that is obviously unwieldy. Equipment costs can also run up the expense of testing Windows clustering.

To save money and run all of these operating systems and clusters, I looked into VMware Workstation. In case you’ve never heard of VMware, it is software that lets you run virtual machines within an installed operating system; you can be running Windows Vista and boot to a Windows 2008 Domain Controller in a separate window. You can even boot non-Windows operating systems, such as Linux and FreeBSD. The VMware technology is great, and I now use it extensively. Fortunately, the setup is fairly straightforward.

This blog post is also available in PDF form as a TechRepublic download and as a TechRepublic Photo Gallery.

Setup

The specifications for the machine that I used in this How do I… are: Gateway GT5628 Intel Core 2 Quad CP Q6600 @2.40 GHz, 3 GB RAM, 500 GB hard drive (Figure A).

Figure A

Test machine

I wanted more than 2GB of memory to allow me to run multiple virtual machines. The main operating system on this computer is Windows Vista, which is capable of running five VMware virtual machines concurrently, with all of them connected to my network and able to access the Internet as well as other network resources, such as file sharing. I could upgrade the memory on this computer to 4GB for even more virtual machines and later load a 64-bit version of Windows Vista to even further expand out my virtual resources.

If you want to follow along with the steps that I’m going to demonstrate in this tutorial, you’re going to need a trial or licensed version of VMware Workstation. You can download a trial version. When you run the executable, the installation will place VMware in the directory you specify and create VMware Virtual Ethernet Adapters. These adapters appear as network connections on your system, as shown in Figure B.

Figure B

Ethernet Adapters

Now that you’ve installed VMware, let’s get started. Select the Start Orb and type VMware in the Instant Search field. Double-click on VMware Workstation, shown in Figure C. This window allows you to create, suspend, and configure a VMware Virtual machine. Figure C shows my screen, with Windows Server 2008 running.

Figure C

Virtual Windows Server 2008

For the purposes of our example, we’re going to set up one virtual machine, a Windows 2008 domain controller. Once you have VMware Workstation opened, choose File | New | Virtual Machine ([CTRL] + [N]). You’ll have the option of choosing a Typical or Custom installation, as shown in Figure D.

Figure D

Typical or Custom

We’ll choose a Custom installation for our example so that you can see the various available options. (You may find that you can use the Typical installation option when creating additional virtual machines.) Choose Next, and specify the virtual machine you want to install, as shown in Figure E.

Figure E

Choose you virtual machine

Choose Windows Longhorn (experimental) and choose Next. On the next screen, you can choose the name of your virtual machine (DC in this case) and specify a location. Next, you can specify the amount of memory you want allocated to this virtual machine.

I recommend a minimum of 250-500 MB memory per virtual machine. The more memory you allocate to virtual machines, the faster and more consistently they will run. Keep in mind that you must leave enough memory to run the actual operating system. If you don’t have enough memory on one computer for all the virtual machines you want to run, you can always throttle back the memory.

The next screen, shown in Figure E, allows you to configure network settings. For this example, you’re going to choose Bridged Networking to empower the guest to access an external Ethernet network. Note that with this setting, you can either connect the virtual machine to a DHCP server or set the IP address manually.

Figure E

Configure network settings

You’re now ready to configure a disk on the next screen. You can choose one of three disk options, as shown in Figure F. For this example, elect to create a new virtual disk and choose Next.

Figure F

Configure a disk

The next window allows you to choose the size of your virtual disk. You have the option of adding disks at any time to configure software-based RAID configurations. Click Finish, and you’ll have successfully created your first virtual machine.

Now you’re ready to install the actual OS. In this case, you can install the OS by either placing the bootable Windows Server 2008 DVD in the DVD drive or by using a Windows Server 2008 ISO image. Once you have placed the appropriate DVD or ISO image in the drive, choose the newly created virtual machine and select the Power On this Virtual Machine green arrow. A powered-on machine will automatically boot to the DVD or ISO image. If you are booting to DVD, make sure that you have this option enabled in your system’s CMOS. Happy Testing!

Read Full Post »

Takeaway: If you’re considering deploying virtual machines in your organization, one of the best ways to do it is by using VMWare. Here’s how to distinguish between the different versions of VMWare you can use.

VMWare has quickly vaulted to the top of the x86 virtual machine software market with its broad, full-featured product line. VMWare’s product line ranges from solutions designed to assist the help desk and developer all the way up to solutions designed to ease the burden of managing the enterprise data center. If you’re planning to deploy virtual machines in your organization, you’ll probably be giving VMWare a look. Here are the differences between the major versions.

VMWare Workstation

Workstation is the entry-level product that put VMWare on the map. It allows developers, systems administrators, help desk professionals, and generalists alike to work with new and old operating systems. Instead of dragging out that old Pentium 90 to test the latest release from Red Hat, IT folks can do their testing on their daily desktops inside a safely isolated but fully functional and fully equipped environment.

Workstation enables you to run multiple operating systems on a single host. It’s easy to see the benefits for help desk workers who, by necessity, are sometimes chained to their workstations, but need access to all of an organization’s supported platforms. Without virtual machine technology, these people would either need to configure their primary computers with multiple boot partitions or have multiple computers in their work areas. Neither solution is very efficient.

Systems administrators face similar challenges. In order to test new patches, new operating systems, and new applications, they need a fully equipped lab that mimics the supported environment. With tight IT budgets, this additional equipment can be difficult to obtain.

Workstation is definitely VMWare’s bleeding-edge product and includes support for the latest and greatest. Workstation runs on any Pentium II or later, or AMD Athlon or later processor. As of this writing, the latest version, 4.52, has experimental support for Opteron, Athlon 64, and Intel IA-32e 64-bit processors. Workstation supports up to 4 GB of RAM on the host computer and can use up to 3.6 GB for virtual machines. Virtual disks, which are basically just files on the host operating system, can be up to 128 GB for IDE disks or up to 256 GB for SCSI disks. You get to choose which type of disk to use on a per-machine basis. Workstation also supports up to four COM ports, two parallel ports, two USB ports, PS/2 ports for keyboard and mouse, and up to three Ethernet adapters, based on the AMD PCnet PCI adapter card.

The best part is that you don’t actually need all of this physical hardware on the host system to use it inside a virtual machine. For example, suppose you want to set up a Windows Server 2003 Routing And Remote Access server under VMWare Workstation on your Windows XP desktop machine. You can add two Ethernet adapters to the virtual machine and enable routing between the two. The point to keep in mind is that the virtual machine is completely isolated from the host. Think of it, literally, as any other machine out on the network.

As for actual requirements, VMWare Workstation calls for a supported processor, which I outlined earlier. It also requires a minimum of 128 MB of RAM, but in reality, you’ll need a whole lot more than that in order to get any real work done. If you want the host to continue to run reasonably well and need to have two or three virtual machines running at the same time, have enough RAM to let them ALL run well. I suggest at least a gigabyte or two. My personal machine that I use for writing all of my articles and for testing has 2.5 GB of RAM.

On the disk side, have enough space on your host for an entire machine. If you plan to run Windows Server 2003 as a guest on your Windows XP host, you’ll need a few gigs of space. Further, get the fastest disks you can afford. It’ll make a difference. I didn’t go crazy, but I did buy 120 GB SATA150 drives with 8 MB cache for my personal system.

Finally, some good news for the Linux crowd: Workstation runs on both Windows and Linux hosts and supports dozens of guest operating systems. For Linux host operating systems, only Mandrake, Red Hat, and SuSE hosts are supported; but on the guest side, it’s wide open on the Linux support side.

Guest operating systems for VMWare Workstation run the gamut:

  • Longhorn (experimental)
  • Windows Server 2003 Web/Standard/Enterprise
  • Windows XP Professional/Home
  • Windows 2000 Professional/Server/Advanced Server
  • Windows NT Workstation 4.0/Server 4.0/Terminal Server 4.0 SP6/6a
  • Windows 95/98/98SE/Me
  • Windows for Workgroups 3.11, Windows 3.1
  • MS-DOS 6
  • Mandrake Linux 8.2, 9.0
  • Red Hat Linux 7.0, 7.1, 7.2, 7.3, 8.0, 9.0, Red Hat Enterprise Linux 2.1, 3.0, Red Hat Linux Advanced Server 2.1
  • SuSE Linux 7.3, 8.0, 8.1, 8.2, 9.0, 9.1, SLES 7, 7 patch 2, 8
  • Turbolinux Server 7.0, Enterprise Server 8, Workstation 8
  • NetWare 5.1, 6, 6.5
  • Solaris x86 Platform Edition 9 (experimental), 10 beta (experimental)
  • FreeBSD 4.0-4.6.2, 4.8, 5.0

This is just a list of supported operating systems. If you want to run something else, look at the VMWare forums. Someone has probably tried it and might be able to provide pointers if you have problems.

GSX Server

You might think that the Workstation product is the end-all, be-all of virtual machine products, but with a limit of 3.6 GB of RAM usable in total by all of the running virtual machines, the Workstation product can’t possibly scale to the levels required by some organizations. Further, as an end-user product, Workstation does not have a robust set of management tools beyond what is included in the product itself. Enter GSX Server.

GSX Server hardware/software requirements and limitations

VMWare’s GSX Server is Workstation on steroids and is aimed at a very different market: the IT department for enterprise-level applications. Like Workstation, GSX Server runs on a Windows- or Linux-based host operating system. Unlike Workstation, GSX Server only directly supports a server platform, though. Windows XP/2000 Professional will work as a host, but requires special considerations and is not supported by VMWare.

GSX Server, as you might imagine, has more stringent hardware requirements. A 1-GHz or faster processor is required, and anything less than this would be a waste of money for software. Bear in mind that the goal here is to run multiple complete systems on a single piece of hardware, so in this case, the more power you throw at it, the better. GSX Server supports up to 32 physical processors. It’s important to note that GSX is licensed per physical processor. This is particularly important if you’re running Intel processors with hyperthreading enabled. For example, if you have a four-processor system with hyperthreading, it will appear to have eight processors, but you still only need a four-processor GSX license.

GSX Server, as of this writing, also has experimental support for 64-bit CPUs running with 64-bit host operating systems. Important note: The Itanium processor is not supported. Only IA-32 processors and IA-32 processors with 64-bit extensions are supported.

As for RAM, this is where GSX Server really separates itself from Workstation. Since GSX Server supports up to 64 GB of RAM on systems with large memory or PAE support, you can rest assured that even servers with hefty RAM requirements will function adequately under GSX Server. For non-PAE/large memory-enabled hosts, the Windows version of GSX Server supports the same as Workstation: up to 4 GB of RAM. Hosts running Linux kernels in the 2.2 series are limited to 2 GB of RAM for GSX Server.

For storage, plan on at least 130 MB for the Windows version of GSX Server and 20 MB for the Linux port. These storage requirements include GSX Server plus associated software. As with Workstation, you should plan on a minimum of 1 GB of space for each guest, but this is really dependent on what you plan to do with the virtual machine. If you’re setting up a file server, 1 GB definitely won’t cut it!

On the software side, GSX Server likes Linux hosts to be running XFree86.4.0 or higher, although 3.3.4 and above are supported. Any 16-bit or better graphics adapter is required.

Host operating system support includes Windows Server 2003 Web/Standard/Enterprise 32- or 64-bit or Windows 2000 Server/Advanced Server with Service Pack 3 or 4. On the Linux side, VMWare is fairly strict on the kernel revisions supported with the GSX product. That said, support for Linux distributions is excellent with versions of Red Hat, for example, all the way back to 7.1, being supported. Under no circumstances, however, is Linux kernel 2.2.14-5.0 supported in any VMWare product. Use of this kernel can result in memory corruption under heavy load. Also note that GSX Server supports no more than 16 virtual machines per physical server and no more than four virtual machines per physical CPU.

Provided hardware

GSX Server, like all VMWare products, provides your guest operating systems with a full x86 system in which to work. This x86 system is completely isolated from the host and acts exactly like a real server. Under GSX Server, a complete Intel system is provided (with the exception of the actual processor, which might be AMD), with the following:

  • Intel 440BX motherboard
  • Phoenix BIOS
  • Up to 3.6 GB of RAM per virtual machine. Bear in mind that Workstation has only 3.6 GB to use for all virtual machines.
  • Up to 4 IDE devices consisting of hard drives, CD-ROM drives, and DVD-ROM drives. IDE disks can still be up to only 128 GB.
  • Up to 21 SCSI devices on three SCSI controllers (virtual LSI Logic Ultra160 LSI53C10xx SCSI controller). SCSI disks can still be only up to 256 GB.
  • Six PCI slots
  • Two floppy devices
  • Two parallel ports
  • Two USB 1.1 ports
  • Up to four network adapters (virtual AMD PCnet-PCI II compatible)
  • Wireless networking is available, assuming the host has a wireless adapter bridged to one of the virtual network adapters.
  • Creative Labs SoundBlaster AudioPCI

Even though GSX supports up to four network adapters, you don’t really need four physical adapters in the host. All four virtual adapters can communicate through a single physical adapter, if need be. Likewise, for CD-ROMs, you don’t even need a CD-ROM drive. You can point a virtual CD device at an ISO file. GSX will then use that ISO file as the CD device. This is also true of the Workstation product.

Differs from Workstation

A common question about GSX is one of need. If you’re running in a low-stress environment with fairly low requirements, do you really need GSX or is Workstation enough? Realize that GSX supports up to 32 processors and 64 GB of RAM, and it can utilize up to 3.6 GB for each virtual machine. Further, GSX includes a Web-based management interface, whereas Workstation’s management tasks are all handled locally. You can also write management scripts for GSX maintenance. Finally, GSX Server supports a few more guest operating systems. Most notably, older versions of Novell NetWare are supported in GSX and not in Workstation.

ESX Server

GSX Server is a server-class product in comparison to the Workstation product. While GSX is suitable for general server deployment and consolidation, VMWare’s ESX Server takes it to a whole new level.

Remember that both Workstation and GSX Server require a Windows or Linux host operating system. ESX Server, on the other hand, runs directly on the hardware, providing direct access to the system. Further, ESX Server provides the ability to guarantee access to certain resources, including CPU, RAM, network bandwidth, and disk I/O.

One area in which ESX is very different from both Workstation and GSX Server is in its system requirements. ESX is supported only on specific hardware platforms, including IBM BladeCenter, xSeries and Opeteron systems, HP pServer blade servers, Proliant systems, Dell PowerEdge systems, Fujitsu Primergy systems, and NEC Express systems. Even within these categories, there are some limitations that might not seem to make sense. For example, ESX Server 1.5.2, 2.1, and 2.1.1 (the most recent version as of this writing) are all supported on the Dell PowerEdge 2450, whereas ESX 2.0 and 2.0.1 are not supported on the same hardware. As a result of these compatibility issues, be sure to talk to someone at VMWare before buying hardware for a planned ESX rollout.

ESX Server 2.1.1 supports the following guest operating systems:

  • Windows Server 2003 and Windows 2000 Server—all editions are supported for both single-processor and multiprocessor installations
  • Windows XP SP1 and Windows NT Server SP6a—single processor installations only
  • Red Hat Linux 7.2, 9.0, Enterprise Linux AS/ES/WS 2.1 & 3.0 (update 1)—all editions are supported for both single-processor and multiprocessor installations
  • Red Hat Linux 7.3 and 8.0—single processor installations only
  • Novell SuSE Linux 8.2, Enterprise Server 8.0 and 9.0 (SP3)—all editions are supported for both single-processor and multiprocessor installations
  • Novell NetWare 5.1 SP6, 6.0, and 6.5—single processor installations only

This list is much more limited than the list of supported operating systems under Workstation and GSX Server. However, bear in mind that ESX Server is designed for datacenter environments, and a great degree of consideration has gone into providing a supportable, high performance architecture.

ESX Server is also very picky about other components in the server, such as the RAID controller, SCSI adapters, and network adapters. Basically, stick with the name-brand stuff. If you’re rolling out ESX Server, spend the money required to get the right hardware.

SANs and ESX

ESX is designed to work well with Storage Area Networks (SANs) from Fujitsu, HP, and Network Appliance. With the ability to run up to 80 virtual machines on a single ESX Server, some kind of external storage is needed, especially if you max out the ESX Server. VMWare provides a complete SAN guide on its Web site.

Other vendors’ storage arrays are also well supported. It should come as no surprise that EMC is well supported, as is Dell (rebranded EMC). EMC purchased VMWare in 2003. I wouldn’t worry too much about the loss of support for other vendors’ arrays. By regulation, EMC operates VMWare as a wholly owned subsidiary. Arrays from Fujitsu, Hitachi, HP, IBM, and Network Appliance are also well supported, but again, not every array product from every vendor is. Check with VMWare before purchasing.

Backup

Don’t forget about backup! Veritas, Tivoli, Legato, and Computer Associates products are well supported.

Limitations and requirements

Like Workstation and GSX Server, ESX Server has hardware limitations for each virtual machine and overall. These limitations include:

  • ESX requires at least two 2 Pentium III Xeon 900 MHZ or faster or AMD Opteron (32-bit mode) processors. It does not support 64-bit processors. A maximum of 16 physical processors is supported.
  • The host requires a minimum of 512 MB of RAM. This is the bare minimum. You’ll need a whole lot more depending on the requirements of the guest operating systems.
  • At least two Ethernet adapters are required. Broadcom NetXtreme 570, Intel Pro/100 and 1000, and 3Com 9xx-based adapters are supported.
  • A supported SCSI adapter, Fibre Channel adapter, or RAID controller. ESX supports up to 16 host bus adapters.
  • SCSI disks, Fibre Channel LUN or RAID LUN. ESX supports up to 128 LUNS per storage array but no more than 128 total LUNs per ESX system.
  • Up to 16 processors with up to eight virtual machines per processor, but no more than 80 concurrent virtual machines per ESX system (40 with SMP).
  • Up to 64 GB of RAM per ESX system.
  • Up to 16 10/100 Ethernet adapters or eight Gigabit Ethernet adapters per ESX system. No more than 32 virtual machines per virtual network device.
  • Like GSX Server, ESX provides each virtual server with the same complete system described earlier in the GSX section.

Comparison

Table A provides a comparison between Workstation, GSX, and ESX.

Table A

Workstation
GSX
Server 3
ESX
Server 2.1
# processors 1 or 2 2-32 supported 2-16 supported
System RAM 4 GB (3.6 GB
only for VMs)
64 GB 64 GB
RAM per virtual machine 3.6 GB 3.6 GB Variable
# of virtual machines/CPU N/A 4 8
Max virtual machines (concurrent) 4 16 80
Hosts supported Windows, Linux Windows, Linux N/A
Management None VirtualCenter VirtualCenter

Summing up the differences

VMWare’s broad product line includes three major virtual machine platforms aimed at different target audiences. Whereas Workstation is for the developer and tester, GSX Server and ESX Server are for departmental and enterprise applications, respectively. Through well-designed management tools, administrators can move virtual machines between servers, “upgrade” the hardware inside a running virtual machine with no downtime, and make instantaneous copies of virtual machines for fast server rollouts.

Read Full Post »

Takeaway: Virtual machines appear to be part of the next wave of server-based computing, and VMware remains the leading provider of this technology. Learn the distinctions between VMware’s Workstation, GSX Server, and ESX Server products.

VMware Workstation and its virtual computing technology have changed the way most companies look at test environments, and in some cases, even production environments. However VMware Workstation isn’t the only technology that VMware has to offer. The company also offers GSX Server and now ESX Server as well. Let’s look at how to best leverage these technologies in your company.

VMware Workstation
VMware Workstation uses virtual machine technology that is designed mostly for the power user. It allows you to run multiple operating systems on a single PC. The operating systems that can run under a VMware virtual machine can include Windows 2000, Windows XP, Windows 2003 Server, Novell Netware, and Linux.

After running through a simple installation of VMware Workstation, you have the ability to configure virtual machines within VMware’s interface. These virtual machines act and look just like a real computer, except they sit inside a window (Figure A).

Figure A

In addition, you can network these computers, join and disjoin them from a domain, connect to the Internet and other networks from within them, and simulate whatever environment you choose.

On one of my computers, I’ve used VMware Workstation to simulate an entire Windows 2003 network with Windows XP clients. With this environment, I can test all of the Windows 2003 product line for compatibility with my network, as well as study for my Windows Server 2003 certification exams. In the past, I had to have at least three systems to be able to accomplish this kind of testing. Now all I need is one computer, an Internet connection, and VMware Workstation.


How does this work?
VMware works simultaneously with your operating system to allow you to host multiple virtual machines. It does this by allowing you to configure your virtual machines on the VMware virtualization layer. This layer lets you map your hardware to the virtual machine’s resources and have virtual machines mapped to your floppy drive, hard drive, CPU, etc. Inside each virtual machine, you can create virtual hard disks and specify how much RAM you want to allocate to each of your virtual machines. Plus, each virtual machine can have its own IP address, even if the system hardware has only one network adapter.


In most of the environments I’ve seen, VMware Workstation is typically used to configure test environments, software development testing, training classrooms, and technical support (to simulate the environment of the user). Now that you’ve seen how the power user can use VMware, let’s examine how VMware can meet the enterprise server and mainframe needs of your company.

VMware GSX Server
I recently was given the opportunity to evaluate VMware GSX Server, and I was impressed by how well it worked. VMware Workstation supports only one CPU and up to 1 GB of RAM. GSX Server supports 2 CPUs and up to 2 GB of RAM. GSX Server is very similar to Workstation in most other ways, but one of its coolest features is the Remote Console that allows you to remotely manage and access your virtual machine from anywhere on your network. In addition, it’s much easier to work with in a high availability configuration.

While VMware Workstation is mostly used by a single user to run multiple instances of operating systems for testing and support purposes, GSX Server is often used for server consolidation by running virtual machines of server operating systems that simply appear to be stand-alone servers to clients on the network.

VMware ESX Server
VMware ESX Server is mainframe-class virtual machine software. This solution is typically used by mainframe data centers and cutting-edge companies. I’ve also seen this solution used by startup companies. With ESX Server, you can do amazing things such as more extensive server consolidation and virtual machine clustering.

How does it differ from GSX Server and VMware Workstation?
With VMware Workstation and GSX Server, the software sits on top of a host operating system such as Windows or Linux. With ESX Server, the software runs directly on the system’s hardware, eliminating the need to install a base OS. In fact, ESX has its own OS. The software basically runs on its own Linux kernel, and Linux is quite beneficial to know when working with the product, although it’s not an absolute necessity.

Installation of this product is quite basic. You place the CD in the tray of a system and boot from the CD. It runs you through a typical Linux installation. At the end of the install, you’re instructed to go to a separate machine and type in a specific Web address to access the virtual console of ESX Server. From there, you’ll configure your system and create virtual machines. With ESX Server, you can have up to 3.6 GB of RAM per virtual machine as well as high performance network cards.

How are companies using ESX Server?
What I really like about this product is how companies are using it. For example, I’ve seen startups simply purchase a SAN and ESX Server and create their whole network using ESX Server. This includes the servers and workstations, which are accessed with thin clients.

GSX Server is lightning fast, so you can’t tell the difference between real systems and its virtual systems (if you have powerful hardware running GSX Server). Furthermore, I’ve seen data centers use ESX Server for hosting client environments and test environments. In the future, I think more companies will take advantage of ESX Server as part of their business strategy.

Final analysis
Virtual machine technology is becoming more and more mainstream in today’s IT marketplace. With the current trend toward consolidating servers, VMware is quickly making a place for its products in the server room. Microsoft has even taken an interest in the virtual machine market by buying Virtual PC. However, Microsoft’s product line doesn’t quite have the maturity of the VMware product line when it comes to providing enterprise-class server solutions.

Read Full Post »

Difference between VMware Workstation and Server

Lets see how VMWare workstation and server are different than each other. Here there are 10 features that we compare between them.

Lets take a look at the main differences between Workstation and Server.

  1. Run As Service – this is a biggest difference between both. Server runs as a background service and Workstation runs as a standard desktop application. Workstation provides better interactive performance but Server is better suited for multi user server consolidation scenarios. It tends to make Workstation better development platform and Server a better production platform.

  2. Multiple-user Access – Only one user can access Workstation at a time while Server’s service-based implementation lets it provide simultaneous multiuser access. You can also manage Servers remotely.

  3. RAM per virtual machine – Workstation supports virtual machines with up to 8GB of RAM but Server supports a maximum of only 3.6GB per VM.

  4. Snapshots – It is a feature that lets you capture a point-in-time image of VM. You can use that image to roll the VM back to that captured state. The snapshot is not a complete copy of VM. It captures only the changes to the VM image. Both Workstation and Server support basic snapshots.

  5. Multiple Snapshots – Server supports only a single snapshot while Workstation supports multiple snapshot as well as providing a snapshot manager that lets you easily view and manage the available snapshots.

  6. VM Cloning – Its advanced feature supported by Workstation but not available in Server. It allows you quickly copy a VM. A snapshot requires the presence of the base image, but you can use the cloning feature to create a completely new and independent VM.

  7. VM Teams – Another advanced feature that’s supported in Workstation but not in Server is VM Teams. It lets you manage multiple VMs as a group.

  8. Host-guest drag-and-drop – It lets you drag objects from the desktop or Windows Explorer from the host to a guest VM. Workstation supports this feature while Server not.

  9. VM movie capture – Workstation’s movie capture feature lets you record all of the activity in a VM and save it as an AVI file. Server doesn’t support movie capture.

  10. Price – Server is free while Workstation sells for $190.

Read Full Post »

Why Disk Partition?

What is a hard disk partition

When a hard drive is installed in a computer, it must be partitioned before you can format and use it. Partitioning a drive is when you divide the total storage of a drive into different pieces. These pieces are called partitions. Once a partition is created, it can then be formatted so that it can be used on a computer. When partitions are made, you specify the total amount of storage that you would like to allocate to that partition from the total size of the drive. For example, if you have an 80 GB drive, then it would be possible to make one partition consisting of the entire 80 GB of available storage. Alternatively, you could make two partitions consisting of a 20 GB partition that will be used for the operating system and programs and a 60 GB partition set aside for data, music, and images.

In the current IBM PC architecture, there is a partition table in the drive’s Master Boot Record (section of the hard drive that contains the commands necessary to start the operating system), or MBR, that lists information about the partitions on the hard drive. This partition table is then further split into 4 partition table entries, with each entries corresponding to a partition. Due to this it is only possible to have four partitions. These 4 partitions are typically known as primary partitions. To overcome this restriction, system developers decided to add a new type of partition called the extended partition. By replacing one of the four primary partitions with an extended partition, you can then make an additional 24 logical partitions within the extended one. The table below illustrates this.

Partition Table
Primary Partition #1
Primary Partition #2
Primary Partition #3
Primary Partition #4 (Extended Partition)
  Logical Partition #1
  Logical Partition #1

As you can see, this partition table is broken up into 4 primary partitions. The fourth partition, though, has been flagged as an extended partition. This allows us to make more logical partitions under that extended partition and therefore bypassing the 4 partition limit.

Each hard drive also has one of its possible 4 partitions flagged as an active partition. The active partition is a special flag assigned to only one partition on a hard drive that the Master Boot Record (MBR) uses to boot your computer into an operating system. As only one partition may be set as the active partition, you may be wondering how people can have multiple operating systems installed on different partitions, and yet still be able to use them all. This is accomplished by installing a boot loader in the active partition. When the computer starts, it will read the MBR and determine the partition that is flagged as active. This partition is the one that contains the boot loader. When the operating system boots off of this partition the boot loader will start and allow you to choose which operating systems you would like to boot from.
Why make partitions

Now that you know what a partition is, you may be wondering why you would even need to make multiple partitions instead of just making one. Though there are quite a few reasons, we will touch on some of the more important ones below:

  • Multiple Filesystems – When you create a partition, you then need to format it before it can be used. When formatting a partition you tell the operating system what filesystem you would like that partition to be formatted in. Once you format a partition, and therefore assign the type of filesystem you want to use with it, you can not change that filesystem without formatting the partition again and losing all the data contained on it. If you require different filesystems on your computer, whether it be for security or for a specific application, you can then make multiple partition and assign one type of filesystem to one of the partitions and another to one of the other partitions.
  • Partition Size – On older operating systems the maximum size of a partition was limited. Therefore if you had more storage space on a hard drive than was usable in a single partition, you would need to create other partitions to utilize this unused space.
  • Multiple Operating Systems – Some operating systems use filesystems that are not compatible with other operating systems. If you want to use two operating systems on the same computer that are not compatible in this way, you could then make two partitions, one for each operating system. Then a boot loader could be used to switch between them when you start your computer.
  • Wasted disk Space – When a filesystems store data in a partition, the larger the partition, the greater the chance of wasted space. By having multiple partitions of smaller size, you reduce the amount of waste that filesystems may create.
  • Seperate system files from users files – Some components of an operating system require storage space to operate. For example, in Windows if you have no hard drive space available on the drive that Windows is installed on, you will not be able to print. By creating a partition solely devoted to the operating system and then another partition dedicated to your own data and programs, there is less of a chance of you using up the space on the operating system partition with your data, and thus not causing problems.

Read Full Post »

I’ve created a dbase backup for both ldg’s and mines into a local wordpress, afraid it might lost together with time.. When I imported the dbase to local copy, google asks and told me to turn on ssh handler.. In this case I need to open php.ini and apache httpd config file and manually remove semi column from the default modules given, which is bundled together with the php package save and restart the apache.

I always wanted to have 3 tiered layers for each handler.. Http websever, app server and database.. For now it’s all mixed together, and i’d like to call it a UAT environment.. Not much on SIT (syst integration testing) since it’s not connected to other apps.. that kind of chance.. Configuring 3 servers at the same time, handling thousands of request.. Seeing statistics jumping around showing activities.. It’s like.. An amazing moment I believe.. And it’s going to be more complicated when one new system starts to tapping existing systems which creates more and more dependencies thus, complex new environment..

I have a passion of establishing a data center company of my own, parking and managing millions of sensitive and confidential datas might be quite fun to do! But it requires huge investments imo.. Infrastructure, expertise, operations support etc.. The concept is easy to understand but the details of it is enormous… So next time if I happen to strike toto, i’ll consider this option as well..

Actualy I’m quite interested when I was watching this high availability (HA) concept from hp.. It’s so called disaster proof.. And this in the future might replace my profession eventually.. All automated and downtime will be within seconds instead of performing manual switch from prod to dr mode.. Data center it’s like the heart of an entity, and HA is just like a 2nd piece of heart connected to the actual blood stream and the device is able to detect failure within the original functioning heart and able to replace its function within seconds (RTO and RPO)

It’s an area whereby still very much uncharted, expensive to implement and some companies might opt out this option as well.. .. it’s something like a 2nd piece of human’s heart, expensive,

Recently i’ve made a decision to sell my pc to cousin… Having too many pcs are just stupid imo..

Read Full Post »

Older Posts »