Lesson 1
Unix System Administration
A Unix system administrator should possess a strong understanding of various fundamental concepts to effectively manage and maintain Unix-based systems. The following concepts are essential for a Unix system administrator to master:
- Unix Architecture: Understanding the Unix architecture, including the kernel, shell, and user applications, is critical for managing Unix systems. The kernel handles process management, memory management, and hardware interaction, while the shell allows users to interact with the system using commands.
- File System Hierarchy: Unix uses a hierarchical file system structure that consists of directories and files. Familiarity with the root directory, home directories, system directories, and file permissions is crucial for maintaining the integrity and security of the system.
- User and Group Management: Unix systems have multiple users and groups, each with different levels of access and permissions. A system administrator should know how to add, modify, and delete users and groups, as well as manage their permissions.
- Process Management: Processes are the programs that run on a Unix system. Understanding how to start, monitor, and stop processes, as well as managing process priorities, is essential for efficient system administration.
- Package Management: Unix systems utilize package managers to install, update, and remove software. Familiarity with package management tools like apt, yum, or pacman is necessary for maintaining an up-to-date and secure system.
- Networking: A Unix system administrator should have a solid understanding of networking concepts, including IP addressing, subnetting, routing, and network services like DNS, DHCP, and SSH.
- Security: Ensuring the security of a Unix system is a top priority. Administrators should be familiar with security best practices, such as setting up firewalls, managing user access control, and regularly updating software to protect against vulnerabilities.
- Shell Scripting: Shell scripting enables automation of repetitive tasks and complex system administration processes. Proficiency in scripting languages like Bash, KornShell, or C Shell is highly valuable for a Unix system administrator.
- System Monitoring and Performance Tuning: Monitoring system resources, such as CPU, memory, and disk usage, is crucial for identifying and addressing performance bottlenecks. Administrators should be skilled in using tools like top, vmstat, iostat, and sar to optimize system performance.
- Backup and Recovery: Ensuring the integrity and availability of data is a key responsibility for system administrators. Knowledge of backup strategies, disaster recovery planning, and tools like tar, cpio, and rsync is vital for safeguarding critical data.
By mastering these fundamental concepts, a Unix system administrator will be well-equipped to manage and maintain Unix-based systems effectively and securely.
Files, Processes, Devices
Welcome to
Unix System Admin,
the first course in the four-part
Linux/UNIX System and Network Administration Series.
This course covers the major components of the UNIX operating system: files, processes, devices, and filesystems.
This course is intended to help you understand the following topics:
- UNIX files, file types, file modes, and access permissions
- UNIX processes, their life cycles, and attributes
- UNIX special files and devices
Versions of UNIX covered
The course also covers variations between Solaris, Linux, AIX, and HP-UX operating systems. The examples and exercises focus on using a Linux or a Solaris system, however. In cases where the commands or procedures vary significantly between Linux and
Solaris, two versions of examples and exercises are offered—one for Linux and one for Solaris.
Course goals
After completing the course, you will be able to:
- Explain what the root account is and how to use it safely
- Set user ownership, group ownership, and access permissions of files and directories
- Describe the various types of UNIX files, and have a toolbox of useful commands for working with them
- Describe the basic process attributes and their role in access control
- Describe how new processes come into being
- Schedule a periodic process using the
cron
daemon
- Locate the special device files associated to hard disks on a UNIX system
- Manipulate hard links on your system and understand the relationship of inodes and directory entries
- Mount and unmount partitions