LINUX
UNIX
The Unix operating system was conceived and implemented in 1969 at AT&T's Bell Laboratories in the United States by Ken Thompson, Dennis Ritchie, Douglas McIlroy, and Joe Ossanna. It was first released in 1971 and was initially entirely written in assembly language, a common practice at the time. Later, in a key pioneering approach in 1973, Unix was re-written in the programming language C by Dennis Ritchie (with exceptions to the kernel and I/O). The availability of an operating system written in a high-level language allowed easier portability to different computer platforms. With a legal glitch forcing AT&T to license the operating system's source code to anyone who asked, Unix quickly grew and became widely adopted by academic institutions and businesses. In 1984, AT&T divested itself of Bell Labs.
LINUX
Linux is a Unix-like and POSIX-compliant computer operating system assembled under the model of free and open source software development and distribution. The defining component of Linux is the Linux kernel, an operating system kernel first released on 5 October 1991, by Linus Torvalds. Because it considers Linux to be a variant of the GNU operating system, initiated in 1983 by Richard Stallman, the Free Software Foundation prefers the name GNU/Linux when referring to the operating system as a whole (see GNU/Linux naming controversy). Linux was originally developed as a free operating system for Intel x86-based personal computers. It has since been ported to more computer hardware platforms than any other operating system. It is a leading operating system on servers and other big iron systems such as mainframe computers and supercomputers as of June 2013, more than 95% of the world's 500 fastest supercomputers run some variant of Linux, including all the 44 fastest. Linux also runs on embedded systems (devices where the operating system is typically built into the firmware and highly tailored to the system) such as mobile phones, tablet computers, network routers, building automation controls, televisions and video game consoles; the Android system in wide use on mobile devices is built on the Linux kernel.
The development of Linux is one of the most prominent examples of free and open source software collaboration: the underlying source code may be used, modified, and distributed—commercially or non-commercially—by anyone under licenses such as the GNU General Public License. Typically Linux is packaged in a format known as a Linux distribution for desktop and server use. Some popular mainstream Linux distributions include Debian (and its derivatives such as Ubuntu and Linux Mint), Fedora (and its derivatives such as the commercial Red Hat Enterprise Linux and its open equivalent CentOS), Mandriva/Mageia, openSUSE (and its commercial derivative SUSE Linux Enterprise Server), and Arch Linux. Linux distributions include the Linux kernel, supporting utilities and libraries and usually a large amount of application software to fulfill the distribution's intended use.
A distribution oriented toward desktop use will typically include the windowing systems X11 and Wayland and an accompanying desktop environment such as GNOME or the KDE Software Compilation. Some such distributions may include a less resource intensive desktop such as LXDE or Xfce for use on older or less powerful computers. A distribution intended to run as a server may omit all graphical environments from the standard install and instead include other software to set up and operate a LAMP or a LYCE solution stack. Because Linux is freely redistributable,anyone may create a distribution for any intended use.
LINUX FEATURES
- Multitasking: several programs running at the same time.
- Multiuser: several users on the same machine at the same time (and no two-user licenses!).
- Multiplatform: runs on many different CPUs, not just Intel.
- Multiprocessor: SMP support is available on the Intel and SPARC platforms (with work currently in progress on other platforms), and Linux is used in several loosely-coupled MP applications, including Beowulf systems and the Fujitsu AP1000+ SPARC-based supercomputer.
- Multithreading: has native kernel support for multiple independent threads of control within a single process memory space.
- Runs in protected mode on the 386.
- Has memory protection between processes, so that one program can't bring the whole system down.
- Demand loads executables: Linux only reads from disk those parts of a program that are actually used.
- Shared copy-on-write pages among executables. This means that multiple process can use the same memory to run in. When one tries to write to that memory, that page (4KB piece of memory) is copied somewhere else. Copy-on-write has two benefits: increasing speed and decreasing memory use.
- Virtual memory using paging (not swapping whole processes) to disk: to a separate partition or a file in the filesystem, or both, with the possibility of adding more swapping areas during runtime (yes, they're still called swapping areas). A total of 16 of these 128 MB (2GB in recent kernels) swapping areas can be used at the same time, for a theoretical total of 2 GB of useable swap space. It is simple to increase this if necessary, by changing a few lines of source code.
- A unified memory pool for user programs and disk cache, so that all free memory can be used for caching, and the cache can be reduced when running large programs.
- Dynamically linked shared libraries (DLL's), and static libraries too, of course.
- Does core dumps for post-mortem analysis, allowing the use of a debugger on a program not only while it is running but also after it has crashed.
- Mostly compatible with POSIX, System V, and BSD at the source level.
- All source code is available, including the whole kernel and all drivers, the development tools and all user programs; also, all of it is freely distributable. Plenty of commercial programs are being provided for Linux without source, but everything that has been free, including the entire base operating system, is still free.
- POSIX job control.
- Support for many national or customized keyboards, and it is fairly easy to add new ones dynamically.
- Multiple virtual consoles: several independent login sessions through the console, you switch by pressing a hot-key combination (not dependent on video hardware). These are dynamically allocated; you can use up to 64.
- Supports several common filesystems, including minix, Xenix, and all the common system V filesystems, and has an advanced filesystem of its own, which offers filesystems of up to 4 TB, and names up to 255 characters long.
- Transparent access to MS-DOS partitions (or OS/2 FAT partitions) via a special filesystem: you don't need any special commands to use the MS-DOS partition, it looks just like a normal Unix filesystem (except for funny restrictions on filenames, permissions, and so on). MS-DOS 6 compressed partitions do not work at this time without a patch (dmsdosfs). VFAT (WNT, Windows 95) support and FAT-32 is available in Linux 2.0
- Special filesystem called UMSDOS which allows Linux to be installed on a DOS filesystem.
- HFS (Macintosh) file system support is available separately as a module.
- CD-ROM filesystem which reads all standard formats of CD-ROMs.
- TCP/IP networking, including ftp, telnet, NFS, etc.
- Appletalk server
- Netware client and server
- Lan Manager/Windows Native (SMB) client and server
- Many networking protocols: the base protocols available in the latest development kernels include TCP, IPv4, IPv6, AX.25, X.25, IPX, DDP (Appletalk), Netrom, and others. Stable network protocols included in the stable kernels currently include TCP, IPv4, IPX, DDP, and AX.25.
Introduction of Unix & various Unix flavors
- Unix/Linux Structure
- Unix file system
- Unix File system layout
- Directory Structure of Linux File System
- Types of file in Unix system
- File System Details like superblock ,inode table
- Configuration File
- Network Configurations and
- Ext2 and Ext3 file system
- Basic Commands
- Installation Configuration Linux System
- Software Application installation
- Why use Linux
- Linux VS Windows
Basic Shell Scripting |
Advanced Shell Scripting |
Shell Basics
- Types of shells
- Shell functionality
- Environment
Writing first script
- Writing script & executing basic script
- Debugging script
- Making interactive scripts
- Variables (default variables)
- Mathematical expressions
Conditional statements
- If-else-elif
- Test command
- Logical operators-AND,OR,NOT
- ase–esac
Loops
- While
- For
- Until
- Break & continue
Command line arguments
- Positional parameters
- Set & shift
- IFS
- Break & continue
Functions & file manipulations
- Processing file line by line
- Functions
|
Regular Expression & Filters
- What is regular expression
- Grep,cut ,sort commands
- Grep patterns
SED & AWK
Processes
- Concept of process in Unix
- Background processes
- Scheduling processes -At, batch & Cron
Essential System Administration jobs
- Managing disk space/file system
- Startup-Shutdown scripts
- Monitoring , health check
Advanced Scripting Techniques
- Providing command line options to scripts
- Shell & subshells
- Exporting variables
- Arrays
- Remote shell execution
- Dialog boxes
SQL with Shell
- Connecting to MySQL using shell
- Running SQL queries from a shell script
Essential System Administration jobs
- Managing disk space/file system
- Startup-Shutdown scripts
- Monitoring , health check
|