Introduction
An operating system is the most fundamental software in a computer and has several responsibilities in order for a computer to perform the specified task. In a computer, an operating system can be installed by a vendor, end user, or a network administrator. These operating systems include Windows, Mac and Linux. This paper will discuss kernel distributions of Linux by discussing components and functions of operating system as they relate to kernel and shell; it will also list common distributions, and choose one of kernels with any two commands in order to discuss twenty commands or functions performed.
Components and functions of operating system
Linux operating system has two components which include kernel and shell. According to kernel is the heart of Linux operating system that manages system’s resources. Its functions are; capability to store data, ability to print data on printer, making decision of who to use a certain resource and for how long, running of programs. It manages input and output, processes where processes are created, destructed and performing interrprocess communication and synchronization, computer device by responding to signals alerted by various system procedures, performing read, write, and control processes for implementing
and supervising data transfer between devices. It also maintains, allocates, and releases files and memory. Thus, it is a vital part of operating system. Shell is also a component of Linux operating system that accepts functions and commands in English language that are inputs from a keyboard or a mouse and interprets it into computer understanding language that is binary language which is difficult for human being to understand quickly.
Linux distributions
There are over 600 linux distributions listed by which are categorized as Debian-based, Gentoo-based, Pacman-based, RPM-based and Slackware-based. This paper lists only five which are 64 Studio that specializes in audio and video creation, Corel Linux that is short-lived desktop and a commercial one, Ubuntu for Android which is very industrial for android phone usage, Ubuntu mobile that is intended for mobile devices and Rxart that provides proprietary software and is desktop-oriented.
Shells and commands
There are several types of shells which include bourne Shell written as “sh” and C Shell which is called “csh”. There are several commands of these shells and they include:
- $ date: this is for seeing date
- $ mail: to access your mail
- $ ps: to view currently running process
- $ kill0: to stop all running processes except shell
- % echo $ SHELL/bin/csh: to determine your default shell
- $ cd: go back to your home directory
- $ cp first ~/bin: copy your script 'first' to your bin directory
- $ first Test: whether script is running or not (It will run)
A command file for deployment:#!/usr/bin/ksh pmrep 2&1 > pmrep.log <<EOF place pmrep command here place deployfolder command here EOF grep -i error pmrep.log if (($? == 0 )) then echo "Exited with Error" exit 1 fi
- $ who | grep raju: Here output of who command is given to grep command in order to view for particular user logon
$ x=10
$ echo $x
$x=10
$ y=8
$ expr x / y
$ cat > first
#
# My first shell script
#
clear
echo "Education is key to life"
- and to execute it type $ ./first
- for debugging: set-x
#XXX- What’s wrong?
Grep $user/etc/passwd1>&2>/dev/null
Set +x
Security
Chroot Jail is a technology that was developed to restrict an application or a daemon from getting access to files which are found outside the directory tree. This will help to restrict the damage that might be done at the application if it is attacked by an attacked. The damage will be done to the application alone. An example is that the Berkeley Internet Name Domain can be Chrooted so that it accesses the root tree and what will happen is that the BIND will see the root directory and will not be able to view any other thing which is found outside this.
The main am of this technology was to restrict the attacks which are aimed at applications installed in the operating system. This security measure has been developed by eth Linux developers as it is more of a command and not a security tool. It is used to limit the access of a tree and its children.
It uses static compilation and is done using gcc-static; they are run without chrooted directory. If there are no root users in the directory, then it will also follow that the SUID binaries will not be present. There will also be no devices. What is more, the daemon will drop the root privileges after chroot () is called. It is not easy to break root access if there is no way of accessing the root. It is not easy to break into root access using other means (Smith, 2000).
Chroot is a good way for providing security to applications that are installed to a system so long as the applications and the software in the system will have been designed to follow some specified path. It is designed to prevent accessing files which are outside the chroot jail and will also limit many attacks which are local from taking place. These local attacks include SUID, and /tmp race conditions.
References
Gite, V. G. (2001, August 17). Linux Shell Scripting Tutorial Ver. 1.0. Retrieved from http://www.freeos.com/guides/lsst/index.htm
Walker, K. (2013). Types of Shells in Linux. Retrieved from http://www.ehow.com/list_6362074_types-shells-linux.html
wikipedia. (2013, August 4). List of Linux distributions. Retrieved from http://en.wikipedia.org/wiki/List_of_Linux_distributions