Summary

This document provides an introduction to Linux. It discusses the history, development, and key components of the Linux operating system.

Full Transcript

Introduction to Linux The UNIX operating system was developed in 1969 at AT&T Bell labs Dennis Ritchie and Ken Thompson Written in C programming language Source code was placed in the public domain Students and faculty at Berkley University created many tools, services and revisions to UN...

Introduction to Linux The UNIX operating system was developed in 1969 at AT&T Bell labs Dennis Ritchie and Ken Thompson Written in C programming language Source code was placed in the public domain Students and faculty at Berkley University created many tools, services and revisions to UNIX 1975 AT&T sold a commercial version of UNIX An open source version was named BSD UNIX Berkley Science Department INFO1218 Operating System Fundamentals 3 Many companies created their own versions of UNIX IBM – AIX Sun Microsystems – Solstice Hewlett Packard – HP-UX Santa Clara Organization – SCO UNIX Each version of UNIX had varying commands and syntax Richard Stallman started GNU project to standardize a UNIX like operating system not proprietary and freely available to all INFO1218 Operating System Fundamentals 4 “GNU is a recursive acronym for "GNU's Not Unix!", chosen because GNU's design is Unix-like, but differs from Unix by being free software and containing no UNIX code. The GNU project includes an operating system kernel” Source – https://en.wikipedia.org/wiki/GNU GNU kernel named HURD Linux kernel was released prior to HURD being completed The combination of the Linux kernel with GNU tools became GNU/LINUX Official name of LINUX INFO1218 Operating System Fundamentals 5 1991 Linus Torvalds wrote a POSIX compliant kernel for a x386 computer “The Portable Operating System Interface (POSIX) is a family of standards specified by the IEEE Computer Society for maintaining compatibility between operating systems. POSIX defines the application programming interface (API), along with command line shells and utility interfaces, for software compatibility with variants of Unix and other operating systems” Source – https://en.wikipedia.org/wiki/POSIX Torvalds released the kernel source code online in the public domain The combination of this kernel with GNU tools became Linux INFO1218 Operating System Fundamentals 6 The core Linux operating system kernel was entirely original Reverse engineering of UNIX Could run existing free UNIX software, resulting in an entire UNIX-compatible operating system free from proprietary code Linux uses many tools developed as part of Berkeley’s BSD operating system, MIT’s X Window System, and the Free Software Foundation's GNU project The main system libraries were started by the GNU project, with improvements provided by the Linux community INFO1218 Operating System Fundamentals 7 Linux is the most commonly used operating system in the world and is found on World's supercomputers Smartphones Desktop computers & laptops Web servers Tablet computers DSL modems Routers and firewalls Self-driving cars IOT Home appliances, home security INFO1218 Operating System Fundamentals 8 LINUX code has been developed by the contributions of thousands of developers and hundreds of commercial companies including Red Hat Novell (now Micro Focus) Intel, AMD, IBM, Samsung, Broadcom, Texas Instruments Qualcomm, Nokia Google, Oracle many more INFO1218 Operating System Fundamentals 9 A Linux distribution is a collection of software on top of a Linux kernel Distribution called a distro Distributions bundle different system management tools and applications Provide central location, web site, for version upgrades and software package distribution Different distributions focus on different uses GUI desktop for user Network enterprise server Scientific Security tools INFO1218 Operating System Fundamentals 10 Linux O/S consists of a kernel, libraries and drivers only Third-parties provide the system software Both commercial and non commercial sources maintain and distribute Linux Main distributions based on Red Hat, Debian and Slackware Redhat – Fedora, CentOS and more Slackware – SuSE and more Debian – Ubuntu, Knoppix and more Hundreds of others shown in link below https://upload.wikimedia.org/wikipedia/commons/1/1b/Linux_Distribution _Timeline.svg INFO1218 Operating System Fundamentals 11 Red Hat Develops and sells tools that users find useful Fedora GUI desktop Red Hat Enterprise Linux Available by subscription Centos – Open source free Debian Collection of developers with no commercial interest INFO1218 Operating System Fundamentals 12 Ubuntu Canonical developed a GUI version based on Debian Desktop GUI to replace Windows “Development of Ubuntu is led by UK-based Canonical Ltd., a company founded by South African entrepreneur Mark Shuttleworth. Canonical generates revenue through the sale of technical support and other services related to Ubuntu.” “named after the Southern African philosophy of Ubuntu (literally, 'human-ness')” Source https://en.wikipedia.org/wiki/Ubuntu_(operating_system) INFO1218 Operating System Fundamentals 13 SuSE One of first server distributions Kali Linux Security tools not found in other distros Linux Mint Based on Ubuntu/Debian Includes many multimedia tools INFO1218 Operating System Fundamentals 14 Proprietary Owned by a vendor Microsoft Windows operating system and Office suite of tools Must purchase the right to use the software from the vendor Free and Open Source Software (FOSS) Software free to use but under conditions of the author or vendor The author still maintains all copyright and ownership Public Domain Software Author has given up all rights to the program Users may copy, distribute, alter the original code INFO1218 Operating System Fundamentals 15 Freeware Is not Public Domain or Free and Open Source Software It is proprietary software that you may use without paying a license cost. May have strict license terms that need to be respected. Adobe Reader is example INFO1218 Operating System Fundamentals 16 The distribution terms of open-source software must comply with the following criteria: 1 - Free Redistribution (no royalty or fee) 2 - Source Code (must be provided) 3 - Derived Works (allow modifications to be distributed) 4 - Integrity of the Author’s source code 5 - No Discrimination Against Person or Group 6 - No Discrimination Against Fields of Endeavour 7 - License Must not be Specific to a Product 8 - License Must not be Restrictive to Other Software 9 - License Must be Technology Neutral https://opensource.org/docs/osd INFO1218 Operating System Fundamentals 17 Based on philosophy of freedom not cost Four essential freedoms: The freedom to run the program as you wish, for any purpose The freedom to study how the program works, and change it so it does your computing as you wish Access to the source code is a precondition for this. The freedom to redistribute copies so you can help your neighbor The freedom to distribute copies of your modified versions to others By doing this you can give the whole community a chance to benefit from your changes. Access to the source code is a precondition for this. Source - http://www.gnu.org/philosophy/free-sw.html INFO1218 Operating System Fundamentals 18 CopyLeft allows others to use software but under certain restrictions If someone uses the software and makes any alterations or enhancements they must make the changes available to others Can not make these changes proprietary INFO1218 Operating System Fundamentals 19 Users or companies who distribute GPL-licensed works (e.g. software), may charge a fee for copies or give them free of charge. This distinguishes the GPL from shareware software licenses that allow copying for personal use but prohibit commercial distribution. With proprietary licenses copying is prohibited by copyright law. With GPL a company can charge a fee for distributing a copy of the program. If you distribute binaries by download, you must provide “equivalent access” to download the source code The fee to download source code may not be greater than the fee to download the binary. INFO1218 Operating System Fundamentals 20 Author of software still has copyright but allows others to use & distribute under strict condition Must make source code available Can not copyright any changes If one distributes copies of the work license under GPL without abiding by the terms of the GPL (for instance, by keeping the source code secret), he or she can be sued by the original author under copyright law. INFO1218 Operating System Fundamentals 21 Many distributors of GPL'ed programs bundle the source code with the executables. Source code could also be offered on request via CD. Most of these programs are distributed over the Internet, and the source code is made available over FTP or HTTP to comply with the license. INFO1218 Operating System Fundamentals 22 The Linux kernel is distributed under the GNU General Public License (GPL), the terms of which are set out by the Free Software Foundation Not public domain, in that not all rights are waived Anyone using Linux, or creating their own derivative of Linux, may not make the derived product proprietary Can sell distributions, but must offer the source code as well INFO1218 Operating System Fundamentals 23 Berkeley Software Distribution FreeBSD is a free and open-source Unix-like operating system FreeBSD project delivers kernel, device drivers user utilities and documentation FreeBSD project includes a security team that oversees all software shipped in the base distribution. Permissive free software license Minimal restrictions Used as operating system for Juniper router and pfSence INFO1218 Operating System Fundamentals 24 Linux is composed of three main bodies of code User programs – Shared Libraries – Linux kernel INFO1218 Operating System Fundamentals 25 The kernel is responsible for maintaining the important abstractions of the operating system Abstraction provides a common interface (API) that programs use to interface with computer hardware Without abstractions the programmer would need to know the exact code required by each piece of hardware on the computer Kernel code executes in kernel mode with full access to all the physical resources of the computer All kernel code and data structures are kept in the same single address space INFO1218 Operating System Fundamentals 26 The system libraries define a standard set of functions which applications use to interact with the kernel Libraries implement much of the operating-system functionality that does not need the full privileges of kernel code The system utilities perform individual specialized management tasks User-mode programs include shells like the bourne-again shell (bash) INFO1218 Operating System Fundamentals 27 A shell is a command interpreter program (CLI) From a Graphical User Interface (GUI) opening a terminal window gives access to a shell Terminal window TTY INFO1218 Operating System Fundamentals 28 Linux has many different shells available Each shell has different command syntax and built in functions (internal commands) bash - Bourne Again Shell sh - Bourne shell csh – C shell ksh – Korn Shell Tsh – compatible to Berkley UNIX shell The most popular shell is bash INFO1218 Operating System Fundamentals 29 Most Linux server installations do not have GUIs Many Linux tools (especially administrative tools) are command line tools Many GUI-based tools are less flexible than their command line equivalents Remote admin access to Linux systems is almost always done using CLI Telnet, ssh INFO1218 Operating System Fundamentals 30 The administrative account on Linux is named root For security the root account on most Ubuntu distros does not have a password, and it cannot be used for logging onto a system. The system administrator has an unprivileged account that is used for initial login In our VMware image the account name is user pwd Ubuntu1 The administrators’ unprivileged account is made a member of a group that has permission to run the sudo command to temporarily gain administrative privileges Execute command with root privilege level Windows - Run As Admin, user account control INFO1218 Operating System Fundamentals 31 SUDO – Super User Do Super User is the root account sudo must precede the command to be executed The ifconfig command is required to change the IP address on an interface This command requires root privileges To change the IP address of Ethernet 0 interface enter sudo ifconfig eth0 The shell will prompt the user for a password A list of commands and associated users is maintained in the sudoers file To be studied in 2nd semester Linux Security INFO1218 Operating System Fundamentals 32 A Linux system can only be shutdown by root shutdown –h now ( -h for halt) systemctl poweroff (systemd new in 2013) Init 0 (older versions systemV, replaced by systemd) A Linux system can be restarted by the root user shutdown –r now ( -r for reload ) systemctl reboot (systemd new in 2013) init 6 (older versions, replaced by systemd) If logged in with a normal user account the above commands would need to be preceded with sudo INFO1218 Operating System Fundamentals 33

Use Quizgecko on...
Browser
Browser