Friday, 6 February 2015

Getting Help?


They say: "a true linux operator never use internet for any help!
I wondered what in the world does that line means. After understanding the basics and that whole documentation and explanation is provided in Linux itself, I realized the significance of phrase. 
where simple internet search will give you a lots of simple solutions, but on the other hand facts are that neither you will get any internet access on any good production environment due to security reasons and nor you can validate the authenticity of the commands/solutions provided on any blog/forum with your version of linux you work on.

So, it is always best practice to stand up and get help to yourself from the system itself.

Help tools:

manual page:

 man page (short for manual page) is a form of online software documentation usually found on a Unix or Unix-like operating system. Topics covered include computer programs (including library and system calls), formal standards and conventions, and even abstract concepts.

How to access/read man pages

  • man commandTo read a manual page for a Unix command - "man <command_name>"
Pages are traditionally referred to using the notation "name(section)": for example, ftp(1). The same page name may appear in more than one section of the manual, such as when the names of system calls, user commands, or macro packages coincide. Examples are man(1) and man(7), or exit(2) and exit(3).
The syntax for accessing the non-default manual section varies between different man implementations. On Linux and BSD derivatives, for example, the syntax for reading printf(3C) is: "man 3 printf

"

The manual is generally split into eight numbered sections, organized as follows (on Research Unix, BSD, OS X and Linux):
SectionDescription
1General commands
2System calls
3Library functions, covering in particular the C standard library
4Special files (usually devices, those found in /dev) and drivers
5File formats and conventions
6Games and screensavers
7Miscellanea
8System administration commands and daemons


All man pages follow a common layout that is optimized for presentation on a simple ASCII text display, possibly without any form of highlighting or font control. Sections present may include:

NAME

The name of the command or function, followed by a one-line description of what it does.

SYNOPSIS
In the case of a command, a formal description of how to run it and what command line options it takes. For program functions, a list of the parameters the function takes and which header file contains its definition.

DESCRIPTION
A textual description of the functioning of the command or function.

EXAMPLES
Some examples of common usage.

Linux - Properties

Linux Pros:

A lot of the advantages of Linux are a consequence of Linux' origins, deeply rooted in UNIX, except for the first advantage, of course:

  • Linux is free:
    As in free beer, they say. If you want to spend absolutely nothing, you don't even have to pay the price of a CD. Linux can be downloaded in its entirety from the Internet completely for free. No registration fees, no costs per user, free updates, and freely available source code in case you want to change the behavior of your system.
    Most of all, Linux is free as in free speech:
    The license commonly used is the GNU Public License (GPL). The license says that anybody who may want to do so, has the right to change Linux and eventually to redistribute a changed version, on the one condition that the code is still available after redistribution. In practice, you are free to grab a kernel image, for instance to add support for teletransportation machines or time travel and sell your new code, as long as your customers can still have a copy of that code.
  • Linux is portable to any hardware platform:
    A vendor who wants to sell a new type of computer and who doesn't know what kind of OS his new machine will run (say the CPU in your car or washing machine), can take a Linux kernel and make it work on his hardware, because documentation related to this activity is freely available.
  • Linux was made to keep on running:
    As with UNIX, a Linux system expects to run without rebooting all the time. That is why a lot of tasks are being executed at night or scheduled automatically for other calm moments, resulting in higher availability during busier periods and a more balanced use of the hardware. This property allows for Linux to be applicable also in environments where people don't have the time or the possibility to control their systems night and day.
  • Linux is secure and versatile:
    The security model used in Linux is based on the UNIX idea of security, which is known to be robust and of proven quality. But Linux is not only fit for use as a fort against enemy attacks from the Internet: it will adapt equally to other situations, utilizing the same high standards for security. Your development machine or control station will be as secure as your firewall.
  • Linux is scalable:
    From a Palmtop with 2 MB of memory to a petabyte storage cluster with hundreds of nodes: add or remove the appropriate packages and Linux fits all. You don't need a supercomputer anymore, because you can use Linux to do big things using the building blocks provided with the system. If you want to do little things, such as making an operating system for an embedded processor or just recycling your old 486, Linux will do that as well.
  • The Linux OS and most Linux applications have very short debug-times:
    Because Linux has been developed and tested by thousands of people, both errors and people to fix them are usually found rather quickly. It sometimes happens that there are only a couple of hours between discovery and fixing of a bug.

Linux Cons:


  • There are far too many different distributions:
    "Quot capites, tot rationes", as the Romans already said: the more people, the more opinions. At first glance, the amount of Linux distributions can be frightening, or ridiculous, depending on your point of view. But it also means that everyone will find what he or she needs. You don't need to be an expert to find a suitable release.
    When asked, generally every Linux user will say that the best distribution is the specific version he is using. So which one should you choose? Don't worry too much about that: all releases contain more or less the same set of basic packages. On top of the basics, special third party software is added making, for example, TurboLinux more suitable for the small and medium enterprise, RedHat for servers and SuSE for workstations. However, the differences are likely to be very superficial. The best strategy is to test a couple of distributions; unfortunately not everybody has the time for this. Luckily, there is plenty of advice on the subject of choosing your Linux. A quick search on Google, using the keywords "choosing your distribution" brings up tens of links to good advise. The  Installation HOWTO also discusses choosing your distribution.
  • Linux is not very user friendly and confusing for beginners:
    It must be said that Linux, at least the core system, is less userfriendly to use than MS Windows and certainly more difficult than MacOS, but... In light of its popularity, considerable effort has been made to make Linux even easier to use, especially for new users. More information is being released daily, such as this guide, to help fill the gap for documentation available to users at all levels.
  • Is an Open Source product trustworthy?
    How can something that is free also be reliable? Linux users have the choice whether to use Linux or not, which gives them an enormous advantage compared to users of proprietary software, who don't have that kind of freedom. After long periods of testing, most Linux users come to the conclusion that Linux is not only as good, but in many cases better and faster that the traditional solutions. If Linux were not trustworthy, it would have been long gone, never knowing the popularity it has now, with millions of users. Now users can influence their systems and share their remarks with the community, so the system gets better and better every day. It is a project that is never finished, that is true, but in an ever changing environment, Linux is also a project that continues to strive for perfection.

Quick History highlights

      UNIX Origin

Imagine computers as big as houses, even stadiums. While the sizes of those computers posed substantial problems, there was one thing that made this even worse: every computer had a different operating system. Software was always customized to serve a specific purpose, and software for one given system didn't run on another system. Being able to work with one system didn't automatically mean that you could work with another. It was difficult, both for the users and the system administrators.

Problems:

Compatibility Issues: each system is different world in terms of Architecture, OS and Software's.

Solution:

In 1969, a team of developers in the Bell Labs laboratories started working on a solution for the software problem, to address these compatibility issues. They developed a new operating system, which was 
  1. Written in the C programming language instead of in assembly code.
  2. Able to recycle code.
The Bell Labs developers( Ken ThompsonDennis Ritchie, and others) named their project "UNIX."


Until then, all commercially available computer systems were written in a code specifically developed for one system. UNIX on the other hand needed only a small piece of that special code, which is now commonly named the kernel. This kernel is the only piece of code that needs to be adapted for every specific system and forms the base of the UNIX system.

The operating system and all other functions were built around this kernel and written in a higher programming language, C. This language was especially developed for creating the UNIX system. Using this new technique, it was much easier to develop an operating system that could run on many different types of hardware.
The software vendors were quick to adapt, since they could sell ten times more software almost effortlessly. 

Problem solved: 

imagine for instance computers from different vendors communicating in the same network, or users working on different systems without the need for extra education to use another computer. UNIX did a great deal to help users become compatible with different systems.

Throughout the next couple of decades the development of UNIX continued. More things became possible to do and more hardware and software vendors added support for UNIX to their products.

UNIX was initially found only in very large environments with mainframes and minicomputers (note that a PC is a "micro" computer). You had to work at a university, for the government or for large financial corporations in order to get your hands on a UNIX system.

But smaller computers were being developed, and by the end of the 80's, many people had home computers. By that time, there were several versions of UNIX available for the PC architecture, but none of them were truly free and more important: they were all terribly slow, so most people ran MS DOS or Windows 3.1 on their home PCs.

Tuesday, 13 January 2015

Let 's go through the Objectives we have to achieve to get to our goal. First milestone is Red hat System Administration (RCHSA); which is an individual certification offered by Redhat. One must have this certification in order to appear for RHCE exam.
So as a summary we have below scenario:


                                                                                                                         
                                                                     RHCE
                                                                          |
                                                                          |
                                                                    RHCSA
                                                                          |
                                                                          |
                                                                       ME


Redhat offers a combination of both tests RHCSA(EX200)+ RHCE(EX300) or you can first opt for "System Administrator"(SA) and then "Engineer"(E). In my preparation, I will be covering each aspect of both Certifications to get more clarity of the concepts and skill required.

First lets go with the path of RHCSA.

In preparation to earn the Red Hat Certified System Administrator (RHCSA) Exam (EX200), Red Hat recommends the following:
After completing above two tracks( RH124 and RH134), one will be able to crack the 1st milestone i.e. RHCSA.

Red Hat System Administration I (RH124)

Summary:

  • Introduction to the command line
  • Managing physical storage
  • Learning how to install and configure software components and services
  • Establishing network connections and firewall access
  • Monitoring and managing processes
  • Managing and securing files
  • Administrating users and groups
  • Accessing Linux file systems
  • Installing and using virtualized systems
  • Reviewing the system log files and journal

Outline for this course:

Access the command line
Log in to a Linux system and run simple commands using the shell.
Manage files from the command line
Copy, move, create, delete, and organize files from the bash shell prompt.
Get help in Red Hat Enterprise Linux
Resolve problems by using online help systems and Red Hat support utilities.
Create, view, and edit text files
Create, view, and edit text files from command output or in an editor.
Manage local Linux users and groups
Manage local Linux users and groups, and administer local password policies.
Control access to files with Linux file system permissions
Set Linux file system permissions on files and interpret the security effects of different permission settings.
Monitor and manage Linux processes
Obtain information about the system, and control processes running on it.
Control services and daemons
Control and monitor network services and system daemons using systemd
Configure and secure OpenSSH service
Access and provide access to the command line on remote systems securely using OpenSSH
Analyze and store logs
Locate and accurately interpret relevant system log files for troubleshooting purposes.
Manage Red Hat Enterprise Linux networking
Configure basic IPv4 networking on Red Hat Enterprise Linux systems.
Archive and copy files between systems
Archive files and copy them from one system to another.
Install and update software packages
Download, install, update, and manage software packages from Red Hat and yum package repositories.
Access Linux file systems
Access and inspect existing file systems on a Red Hat Enterprise Linux system.
Use virtualized systems
Create and use Red Hat Enterprise Linux virtual machines with KVM and libvirt.
Comprehensive review
Practice and demonstrate the knowledge and skills learned in this course.


Red Hat System Administration II (RH134)

Summary:

  • Installation using Kickstart
  • Manage filesystems and logical volumes
  • Manage scheduled jobs
  • Access network filesystems
  • Manage SELinux
  • Control firewalling
  • Troubleshooting

Outline for this course:

Automate installation with Kickstart
Automate the installation of Red Hat Enterprise Linux systems with Kickstart.
Use regular expressions with grep
Write regular expressions that, when partnered with grep, will allow you to quickly isolate or locate content within text files.
Create and Edit text files with vim
Introduce the vim text editor, with which you can open, edit, and save text files.
Schedule future Linux tasks
Schedule tasks to automatically execute in the future.
Manage priority of Linux processes
Influence the relative priorities at which Linux processes run.
Control access to files with access control lists (ACL)
Manage file security using POSIX access control lists.
Manage SELinux security
Manage the Security Enhanced Linux (SELinux) behavior of a system to keep it secure in case of a network service compromise.
Connect to network-defined users and groups
Configure systems to use central identity management services.
Add disks, partitions, and file systems to a Linux system
Manage simple partitions and file systems.
Manage logical volume management (LVM) storage
Manage logical volumes from the command line.
Access networked attached storage with network file system (NFS)
Access (secure) NFS shares.
Access networked storage with SMB
Use autofs and the command line to mount and unmount SMB file systems.
Control and troubleshoot the Red Hat Enterprise Linux boot process
Limit network communication with firewall
Configure a basic firewall.
Comprehensive review
Practice and demonstrate knowledge and skills learned in this course.


Monday, 12 January 2015

Hi Guys,

I just started working in an IT firm on IT-infrastructure maintenance; and to enhance my skills and knowledge I am going for the continued blog. Skipping all the hardships and cursing to my job which is coming up right now in my mind, I continue to the more sensible part. I am writing this blog in hope to get heavy on my rhce certification program which I am thinking for quite a few months, so I will be writing down majorly Red hat Linux server concepts here.


Saying myself  good luck at this point of time. Happy reading and feel free to write or provide feedback in case of any questions. Thanks!

Posts continue ......