Linux
Linux is an operating system that can get operated through Graphic User Interface (GUI). It is a complete reimplementation of the POSIX interface that got initiated by Linus Torvalds (Jaeger, 2008). POSIX refers to the portable operating system interface. It describes an application program for programmers to know the functions, data structures, and variables to utilize to implement the code they are making for the operating system. In the recent past Linux operating system has gained massive popularity, thus necessitating its promotion as a viable alternative to Windows and especially for server systems such as web servers. Fox (2014) states that a survey of the top one million web servers conducted in 2001 indicated that approximately two-thirds ran on Unix/Linux whereas slightly above the third ran on Microsoft Windows. Linux operating system continuously gains acceptance hence various measures have got adopted to address the security challenges of traditional UNIX systems.
Linux got developed initially for Intel 80386 processor-based IBM-compatible personal computers. It has since developed and gets used on other platforms based on various processor architectures that include Hewlett-Packard, Oracle, Motorola 680*0, Hewlett-Packard PA-RISC, Intel Itanium, and ARM. A variety of multiprocessor-based platforms also ports Linux. The Linux operating system comprises of two parts namely the kernel and several utilities and libraries (Haldar, 2015). The kernel is the core of the system management, although other parts execute different tasks unique to the operating system. The Linux kernel comprises of various essential parts such as process management, hardware device drivers, file system drivers, memory management, and network management (JAMES, 2011). The process management function sends the processes to the processor to create multiple processors. The memory management function allocates memory to process and frees the memory after been used by the process. The file system function is the base of Linux (Jadhav, 2014). Other types of kernel features available to user processes include system calls that undertake specific tasks that a user process would not implement efficiently on its own (Ward, 2014).
Advantages of Linux Operating System
First, Linux operating system gets used by majority servers that run on the internet. It gets attributed to the fact that the usage of Unix/Linux does not get restricted to web servers as the platform is famous for mail servers, file servers, database servers as well as domain name system servers. Second is that Macintosh operating system (Mac OS X) runs on top of a UNIX operating system that gets based on the Mach Unix Kernel. Most portable computing devices run a version of Linux such as Google Android, and also hardware devices such as firewalls, routers, and Wi-Fi access points run on Linux or UNIX (Fox, 2014).
Linux operating system has free open source meaning the source code in the software is available for programmers to add to, improve or modify the code and make the new code available. Enhancements are essential in that they assist in protecting the software so that it has fewer security loopholes. Additions, on the other hand, provide new features to the software. Alterations to the software allow users to select the version they prefer to use. The software is also freely available.
Linux operating system allows for greater control. Although Windows allow a DOS shell for the user to enter commands, there is the restriction of the DOS commands in the scope. However, in Unix or Linux the power comes from the command line, thus, a user can specify different options for the commands entered through the command line, therefore, controlling the operating system with greater precision (Shotts Jr, 2012).
Linux operating system is appropriate for individuals who want to learn more about operating systems. Unlike Windows, Linux operating system exposes an individual to details of what takes place. The Command Line Interface (CLI) in Unix or Linux forces an individual to learn because it is the only way of knowing how to use the command line. The operating system also assists a learner to understand with a variety of support available such as man pages.
Many users prefer using Linux due to various reasons that include using Linux to set up internet firewalls as it allows users to set up internet or intranet services. Linux also gets preferred by internet service providers because it does not require a steep licensing fee to install and is compatible with most cheap devices. The software is free and gets distributed according to GNU General Public Licence developed by Richard Stallman (McKinnon & McKinnon, 2004).
Linux Administrators
Linux operating system runs most of the world’s top supercomputers that any other operating system. According to Adelstein & Lubanovic (2007), an astonishing 75 percent of all the top 500 supercomputers in the world run on Linux. This high use of Linux operating systems consequently results in an extraordinarily high demand for Linux administrators. Due to the nature of Linux operating system as a modern and multiuser operating system, it needs a degree of administration more than other less involving and home-market systems.
Responsibilities of a Linux administrator
i. Oversees the physical database design, administration, and documentation
ii. Administer and manage large Linux server environment while focusing more on the performance, monitoring, tuning, and management.
iii. Training and mentoring junior-level administrators as well as giving the direction of technology solutions for the business.
iv. Install, configure, and troubleshoot all the hardware, software, and equipment needed to attain integrated system objectives; offer support services on escalated issues (Carling, Degler, & Dennis, 2000).
v. Provide daily technical support and consulting services for the hardware and operating system environment supporting the collection platform
vi. Creating and maintain user accounts in an organization (Collings, & Wall, 2005).
vii. Give effective first or second-level support for a company’s Linux environment on over 300-plus servers such as Linux blades.
viii. Undertake the management of all factors of the integrity of the environment like the security, monitoring, software management and change control.
ix. Administer infrastructure services – NIS, LDAP, DNS, FTP, SMTP, Postfix/Sendmail, Samba, NFS, – and application as well as database servers particularly focusing on automation and monitoring.
x. To squeeze the best performance from equipment, monitoring the system and utilizing Linux’s built-in configurability wisely.
xi. Interface with other internal support departments like the Database Administrators, Web Services, Storage, Security, Operations, Engineering, Application Development, Change Control and Command Centers.
xii. Provide network troubleshooting services, escalated service desk support as well as monitoring the mission-crucial systems (Adelstein & Lubanovic, 2007)
Linux system administrators have to be highly skilled and competent so as to minimize frequent mistakes and errors by the administrator. Carling, et. al 2000, states that the most common cause of a Linux or Unix system downtime is administrator error. For instance, when an administrator types rm –fr* from the wrong directory. They should also be available since they are always sought to make vital decisions and recommendations. Linux administrators should also continuously improve their proficiency in operating Linux systems through training, seminars, and conferences.
Proposal
The researcher’s job as a Linux administrator in the organization will aim at enhancing the needs assessment process. The job will entail a systematic process of identifying all the loopholes and weaknesses in the Linux system, identifying all the contributing factors and finally creating suitable solutions to address the problems. The improvements and modifications in the Linux system will help the company improve its performance as well as have better cyber security measures. These enhancements in the enterprise will get integrated through the iteration process. Each of the iterations in the enhancement process shall undergo a series of verification testing as well as evaluation of four phases namely, the planning phase, the action phase, the observation phase and the reflection phase.
Iteration 1: Orientation
This iteration will involve brainstorming session with representation from each of the three divisions in the organization. A discussion will occur regarding how to improve the communication flow in the organization. A team will get set to identify the requirements necessary for improving the Linux system in the organization. The objectives of the needs assessment process will get set by the team lead by the Linux administrator. The researcher will gather requirements needed for the enhancement.
Iteration 2: Training
The plan in this iteration is follow up on the brainstorming session with each (one on one) of the three Linux admin experts. This session will discuss the outcome of the brainstorming session and a more detailed discussion of their division’s requirements. The researcher will get trained on the operation of the current system as well as familiarize with the specific roles performed by the system in each of the departments in the organization. The specifications of the hardware and software requirements of the Linux system will get identified in this session.
Iteration 3: Systems Analysis
This step will involve the follow-up meeting with the three Linux professionals to review the identified common requirements, possible integration of requirements, and determine the management of unique requirements at the division level. The researcher is responsible for managing common and integrated requirements, and the appropriate department must handle unique needs. The requirements will get prioritized to determine the most essential in improving the Linux system. At the conclusion of this meeting, the division representatives will be tasked with formulating a solution for all unique requirements.
Iteration 4: Implementation and development
The researcher in this iteration will be required to analyze the feedback of any or all of the unique requirements from each of the divisions. Then, document a final process to collect ‘needs’ from each of the divisions. The documentation will include the new code for the proposed system. The coding of the proposed system will adhere to the specifications identified in previous systems as well as aim to achieve the set objectives.
Iteration 5: Installation and Maintenance
In this session, the installation of the proposed Linux system will involve a piloting model first to determine if the system functions properly. The Linux system will then get installed into various departments of the organizations through the step by step process. Configuring of the system will then get undertake. This session will also involve training of the users of the system. The Linux administrator will then monitor and maintain the new Linux system as it performs the defined functions. The Linux Administrator also manages the Linux files, directories, and processes.