Chapter 1: Linux Operating System

Total Page:16

File Type:pdf, Size:1020Kb

Chapter 1: Linux Operating System CHAPTER 1: LINUX OPERATING SYSTEM A bit of history What is Linux? A short answer to this question is "a computer operating system based on Linux kernel and GNU tools and libraries". In order to understand what Linux is, first we need to know different concepts such as Linux, kernel, and GNU. Formally, Linux is not an operating system. It's just a software component working as a bridge between applications and the data processing done by the hardware. Because of this fact, the kernel is the core component of an operating system. First Linux kernel was written by Linus Torvalds in 1991. Usually, the term Linux is used to refer to a whole operating system based on the kernel. However, an operating system needs more components to be complete. At this point, there are a number of operating system based on Linux kernel, plus a set of tools provided by the GNU open source project. What are GNU tools? Well, first of all we should learn about the GNU project. Basically, this is an open source project started by Richard Stallman with the goal of building a set of software components and tools to avoid the use of any software that is not free. Now that we've learned about Linux, kernel, and GNU, we can define a distribution as a composition of Linux kernel and GNU tools and other useful software. We've just mentioned a new concept—distribution. Have you heard about Linux mascot: Tux the penguin Ubuntu, Fedora, or Debian? These three are examples of Linux distributions. A Linux distribution can be defined as a whole operating system providing a kernel, a system of base tools, and a complete set of applications ready to use for users. This guide is based on Linux Mint, a distribution that started back in 2006 with a goal to be fully usable on the desktop computers. What is open source? Linux is an open source project supported by hundreds of volunteers and contributors. This means that people work together sharing ideas, writing tutorials, discussing in forums, and developing software. The final result is not only the Linux distribution, but a lot of documentation is generated as well. Collective intelligence allows us to build one of the most used operating systems in the world. We cannot forget that Linux operating system (OS) is open source, and it's released under the popular General Public License (GPL) software license. All people contributing to Linux project make up the community. In the open source world, a community is a set of users and developers supporting a specific project. Everyone can contribute to a Linux project in different ways and that's the magic of open source projects, where the job of each person matters. The first area is for those who want to develop software, write documentation, make artwork, or report bugs. However, non-technical people can contribute to this area as well, for instance, they can make translations to get more and more languages supported. The promotion of the project and distribution can be for those who are interested in helping others, writing articles, or organizing local presentation for spreading the knowledge. CHAPTER 2: INSTALLING LINUX MINT Boot process, partitions and mounting A typicall boot process of every operating system consist of a few steps: Majority of Linux distributions use a boot loader named GRUB (Grand Unified Boot Loader) which handles booting different OSes from different hard drives, partitions and file systems. Boot loader is a piece of software usually installed in the first 512KB of the Master Boot Record (MBR) on the first hard drive. As you know, hard drives are divided into partitions and each partition uses a file system. Linux OSes name physical hard drives as SDA, SDB, SDC and so on, where SDA is the first physical disk, SDB is the second physical disk etc. “S” in the name stands for SATA, “D” for the disk. When we add partitions to the mix numbers are added. So, the first partition on the first hard drive is SDA1, second partition will be named SDA2 and so on. Following this convention you can easily know that the fourth partition on the third disk will be named SDC4. All partitions are attached to the system via a mount point. The mount point defines the place of a particular data set in the file system. Mount points are directories. These empty directories will be the starting point of the partitions that are attached to them. Linux distributions also use a different partition mounting scheme than Windows. In a Windows installation you typically have C and D partitions; first one for the OS itself, and the second for user data. Linux installation also uses two partitions. Root partition, mounted to / , is where the system is installed, while the other partition which is mounted to /home is the place for each users data files and software preferences. In addition to root and home partitions, sometimes a swap partition is needed, typically for systems with 1GB or less of RAM. Swap partition is used as a virtual memory when the OS runs out of physical RAM. On Windows OSes this is known as the page file. Windows Linux Physical location Name Mount point Name Mount point First hard drive, first partition disk(0)rdisk(0)partition(1) C sda1 / First hard drive, second partition disk(0)rdisk(0)partition(2) D sda2 /home Comparison between Windows and Linux HDD naming schema A file system is used to control how data is stored and retrieved. Without a file system, information placed on a hard disk would be one large body of data with no way to tell where one piece of information stops and the next begins. By separating the data into individual pieces, and giving each piece a name, the information is easily separated and identified. Windows typically uses NTFS and FAT32 file systems, depending on the size of the disk. Linux supports a wide range of file systems, some of which are used more often than the others. Most widely used file system on Linux is EXT4, preceded by EXT3. Future kernel version feature a new file system called BTRFS with some advanced algorithms and techniques for storing and retrieving data. Editions As other operating systems, Linux Mint has different editions or flavors. Basically, we can find two main editions—one based on Debian, which is called Linux Mint Debian Edition (LMDE), and another one based in Ubuntu. In addition to Ubuntu and Debian software repositories, Linux Mint uses its specific ones. LMDE is a rolling release. This means the distro constantly receives updates without generating releases. However, releases for the regular Mint edition (the one based on Ubuntu which we will use) are only generated by following a specific period of time. Despite LMDE being faster and more responsive than Linux Mint, non-advanced users should think again before using it because continuous Linux Mint logo updates can bring some errors that they might find difficult to solve. On the other hand, Linux Mint is easy to maintain and was designed to offer an unbeatable user experience.The Linux Mint project distributes each edition through different ISO images, each being ready to be burned on a DVD. Regarding the regular edition of Linux Mint, we can find eight different ISO images. Well, we only have four that are really different, because each one has its own equivalent in 32b and 64b. Four different desktop environments are included—MATE, Cinnamon, KDE, and Xfce. This guide will focus on Linux Mint 64bit with Cinnamon desktop environment. Hardware requirements Device Minimum Optimal CPU 1GHz 32bit 1GHz 32bit RAM 512MB 1GB HDD 8GB 8GB VGA 2D, 800 x 600 resolution 3D, 1024 x 768 resolution Creating a bootable USB drive 1. Download Linux Mint 16 from this link: goo.gl/Z3XIPW 2. Download Unetbootin from this link: unetbootin.sourceforge.net 3. Open Unetbootin, choose Disk image and browse to downloaded ISO file 4. Choose your USB drive carefully and click OK. After a few minutes USB drive will be ready and bootable Installation 1. Reboot your computer and select your USB drive as the device for booting. 2. After boot you should see a screen like this. Press Enter and allow it to finish booting 3. After bootup is finished you should see a desktop like this. Linux Mint is usable as a LiveCD which means it can be used directly from USB or CD drive without installation. LiveCDs are usefull when you have a non working hard disk or a faulty Windows installation to recover your files. 4. Double click “Install Linux Mint” icon and choose your language options 5. Next screen will make sure that your computer can install and run Linux Mint 6. This screen lets you choose installation type. First option will erase your entire HDD and automatically create partitions. We don't want that, so choose “Something else” which lets you create the partitions manually 7. On this screen choose “New partition table” and proceed with “Continue” when prompted. Create two partitions as noted in the introduction: one for the system (root partition) and one for user data (home partition) like in the picture below. Note the boot loader installation path is /dev/sda which is the MBR of the first hard drive 8. Next screen will automatically set your timezone, change if needed 9. After time zone, choose your keyboard layout, as in the picture below 10. Last step allows you to enter your name, username and your password After a few minutes the setup will finish installing Linux Mint and offer you to restart your system.
Recommended publications
  • Microkernel Mechanisms for Improving the Trustworthiness of Commodity Hardware
    Microkernel Mechanisms for Improving the Trustworthiness of Commodity Hardware Yanyan Shen Submitted in fulfilment of the requirements for the degree of Doctor of Philosophy School of Computer Science and Engineering Faculty of Engineering March 2019 Thesis/Dissertation Sheet Surname/Family Name : Shen Given Name/s : Yanyan Abbreviation for degree as give in the University calendar : PhD Faculty : Faculty of Engineering School : School of Computer Science and Engineering Microkernel Mechanisms for Improving the Trustworthiness of Commodity Thesis Title : Hardware Abstract 350 words maximum: (PLEASE TYPE) The thesis presents microkernel-based software-implemented mechanisms for improving the trustworthiness of computer systems based on commercial off-the-shelf (COTS) hardware that can malfunction when the hardware is impacted by transient hardware faults. The hardware anomalies, if undetected, can cause data corruptions, system crashes, and security vulnerabilities, significantly undermining system dependability. Specifically, we adopt the single event upset (SEU) fault model and address transient CPU or memory faults. We take advantage of the functional correctness and isolation guarantee provided by the formally verified seL4 microkernel and hardware redundancy provided by multicore processors, design the redundant co-execution (RCoE) architecture that replicates a whole software system (including the microkernel) onto different CPU cores, and implement two variants, loosely-coupled redundant co-execution (LC-RCoE) and closely-coupled redundant co-execution (CC-RCoE), for the ARM and x86 architectures. RCoE treats each replica of the software system as a state machine and ensures that the replicas start from the same initial state, observe consistent inputs, perform equivalent state transitions, and thus produce consistent outputs during error-free executions.
    [Show full text]
  • The Linux Command Line
    The Linux Command Line Fifth Internet Edition William Shotts A LinuxCommand.org Book Copyright ©2008-2019, William E. Shotts, Jr. This work is licensed under the Creative Commons Attribution-Noncommercial-No De- rivative Works 3.0 United States License. To view a copy of this license, visit the link above or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042. A version of this book is also available in printed form, published by No Starch Press. Copies may be purchased wherever fine books are sold. No Starch Press also offers elec- tronic formats for popular e-readers. They can be reached at: https://www.nostarch.com. Linux® is the registered trademark of Linus Torvalds. All other trademarks belong to their respective owners. This book is part of the LinuxCommand.org project, a site for Linux education and advo- cacy devoted to helping users of legacy operating systems migrate into the future. You may contact the LinuxCommand.org project at http://linuxcommand.org. Release History Version Date Description 19.01A January 28, 2019 Fifth Internet Edition (Corrected TOC) 19.01 January 17, 2019 Fifth Internet Edition. 17.10 October 19, 2017 Fourth Internet Edition. 16.07 July 28, 2016 Third Internet Edition. 13.07 July 6, 2013 Second Internet Edition. 09.12 December 14, 2009 First Internet Edition. Table of Contents Introduction....................................................................................................xvi Why Use the Command Line?......................................................................................xvi
    [Show full text]
  • The Nom Profit-Maximizing Operating System
    The nom Profit-Maximizing Operating System Shmuel (Muli) Ben-Yehuda Technion - Computer Science Department M.Sc. Thesis MSC-2015-15 2015 Technion - Computer Science Department M.Sc. Thesis MSC-2015-15 2015 The nom Profit-Maximizing Operating System Research Thesis Submitted in partial fulfillment of the requirements for the degree of Master of Science in Computer Science Shmuel (Muli) Ben-Yehuda Technion - Computer Science Department M.Sc. Thesis MSC-2015-15 2015 Submitted to the Senate of the Technion — Israel Institute of Technology Iyar 5775 Haifa May 2015 Technion - Computer Science Department M.Sc. Thesis MSC-2015-15 2015 This research thesis was done under the supervision of Prof. Dan Tsafrir in the Computer Science Department. Some results in this thesis as well as results this thesis builds on have been published as articles by the author and research collaborators in conferences and journals during the course of the author’s master’s research period. The most up-to-date versions of these articles are: Orna Agmon Ben-Yehuda, Muli Ben-Yehuda, Assaf Schuster, and Dan Tsafrir. The rise of RaaS: The Resource-as-a-Service cloud. Communications of the ACM (CACM), 57(7):76–84, July 2014. Nadav Amit, Muli Ben-Yehuda, Dan Tsafrir, and Assaf Schuster. vIOMMU: efficient IOMMU emulation. In USENIX Annual Technical Conference (ATC), 2011. Orna Agmon Ben-Yehuda, Eyal Posener, Muli Ben-Yehuda, Assaf Schuster, and Ahuva Mu’alem. Ginseng: Market-driven memory allocation. In ACM/USENIX International Conference on Virtual Execution Environments (VEE). 2014. Orna Agmon Ben-Yehuda, Muli Ben-Yehuda, Assaf Schuster, and Dan Tsafrir.
    [Show full text]
  • Official User's Guide
    Official User Guide Linux Mint 18 Cinnamon Edition Page 1 of 52 Table of Contents INTRODUCTION TO LINUX MINT ......................................................................................... 4 HISTORY............................................................................................................................................4 PURPOSE...........................................................................................................................................4 VERSION NUMBERS AND CODENAMES.....................................................................................................5 EDITIONS...........................................................................................................................................6 WHERE TO FIND HELP.........................................................................................................................6 INSTALLATION OF LINUX MINT ........................................................................................... 8 DOWNLOAD THE ISO.........................................................................................................................8 VIA TORRENT...................................................................................................................................9 Install a Torrent client...............................................................................................................9 Download the Torrent file.........................................................................................................9
    [Show full text]
  • English 17.2.Pdf
    Official User Guide Linux Mint 17.2 MATE Edition Page 1 of 48 Table of Contents INTRODUCTION TO LINUX MINT ......................................................................................... 4 HISTORY..........................................................................................................................................4 PURPOSE..........................................................................................................................................4 VERSION NUMBERS AND CODENAMES....................................................................................................5 EDITIONS.........................................................................................................................................6 WHERE TO FIND HELP........................................................................................................................6 INSTALLATION OF LINUX MINT ........................................................................................... 7 DOWNLOAD THE ISO........................................................................................................................7 VIA TORRENT....................................................................................................................................8 Install a Torrent client....................................................................................................................8 VIA A DOWNLOAD MIRROR...................................................................................................................8
    [Show full text]
  • Cterm & Mint Utilities for Windows &
    cTERM and MINT™ Utilities for Windows and DOS Issue:3.0 Ref: MN00XXX-000;m:\user manuals\eurosystem family\utilities\cterm\i3_0 latest release\ctmuwd.doc/ZZ/XX97 Copyright Baldor Optimised Control Ltd 1997. All rights reserved. This manual is copyrighted and all rights are reserved. This document may not, in whole or in part, be copied or reproduced in any form without the prior written consent of Baldor Optimised Control. Baldor Optimised Control makes no representations or warranties with respect to the contents hereof and specifically disclaims any implied warranties of fitness for any particular purpose. The information in this document is subject to change without notice. Baldor Optimised Control assumes no responsibility for any errors that may appear in this document. MINT™ is a registered trademark of Baldor Optimised Control Ltd. Baldor Optimised Control Ltd. 178-180 Hotwell Road Bristol BS8 4RP U.K. Tel: (+44) (117) 987 3100 FAX: (+44) (117) 987 3101 BBS: (+44) (117) 987 3102 Technical Support E-mail: [email protected] Manual Revision History Issue Date Reference Comments 1.0 Mar 92 MN00106-001 First release 1.01 n/a MN00106-002 2.0 Mar 96 MN00106-003 Re-formatted for clarity Added section for cTERM for Windows 2.01 Apr 96 MN00106-004 Added section for Macro keys in cTERM for DOS 3.0 Aug 97 MN00106-005 Correct for cTERM for Windows v3.0 Contents 1. Introduction ............................................................................. 1 1.1 cTERM....................................................................................................1
    [Show full text]
  • Linux? POSIX? GNU/Linux? What Are They? a Short History of POSIX (Unix-Like) Operating Systems
    Unix? GNU? Linux? POSIX? GNU/Linux? What are they? A short history of POSIX (Unix-like) operating systems image from gnu.org Mohammad Akhlaghi Instituto de Astrof´ısicade Canarias (IAC), Tenerife, Spain (founder of GNU Astronomy Utilities) Most recent slides available in link below (this PDF is built from Git commit d658621): http://akhlaghi.org/pdf/posix-family.pdf Understanding the relation between the POSIX/Unix family can be confusing Image from shutterstock.com The big bang! In the beginning there was ... In the beginning there was ... The big bang! Fast forward to 20th century... Early computer hardware came with its custom OS (shown here: PDP-7, announced in 1964) Fast forward to the 20th century... (∼ 1970s) I AT&T had a Monopoly on USA telecommunications. I So, it had a lot of money for exciting research! I Laser I CCD I The Transistor I Radio astronomy (Janskey@Bell Labs) I Cosmic Microwave Background (Penzias@Bell Labs) I etc... I One of them was the Unix operating system: I Designed to run on different hardware. I C programming language was designed for writing Unix. I To keep the monopoly, AT&T wasn't allowed to profit from its other research products... ... so it gave out Unix for free (including source). Unix was designed to be modular, image from an AT&T promotional video in 1982 https://www.youtube.com/watch?v=tc4ROCJYbm0 User interface was only on the command-line (image from late 80s). Image from stevenrosenberg.net. AT&T lost its monopoly in 1982. Bell labs started to ask for license from Unix users.
    [Show full text]
  • Installation Guide
    Installation Guide Linux Mint Apr 09, 2019 Download 1 Choose the right edition 3 2 Verify your ISO image 7 3 Create the bootable media 9 4 Boot Linux Mint 11 5 Install Linux Mint 13 6 Hardware drivers 21 7 Multimedia codecs 23 8 Language support 25 9 System snapshots 27 10 EFI 33 11 Boot options 37 12 Multi-boot 41 13 Partitioning 45 14 Pre-installing Linux Mint (OEM Installation) 47 15 Where to find help 49 i ii Installation Guide Linux Mint comes in the form of an ISO image (an .iso file) which can be used to make a bootable DVD or a bootable USB stick. This guide will help you download the right ISO image, create your bootable media and install Linux Mint on your computer. Download 1 Installation Guide 2 Download CHAPTER 1 Choose the right edition You can download Linux Mint from the Linux Mint website. Read below to choose which edition and architecture are right for you. 1.1 Cinnamon, MATE or Xfce? Linux Mint comes in 3 different flavours, each featuring a different desktop environment. Cinnamon The most modern, innovative and full-featured desktop MATE A more stable, and faster desktop Xfce The most lightweight and the most stable The most popular version of Linux Mint is the Cinnamon edition. Cinnamon is primarily developed for and by Linux Mint. It is slick, beautiful, and full of new features. Linux Mint is also involved in the development of MATE, a classic desktop environment which is the continuation of GNOME 2, Linux Mint’s default desktop between 2006 and 2011.
    [Show full text]
  • Linux Mint / Ubuntu Cheat Sheet
    Linux Mint / Ubuntu Cheat Sheet www.ihaveapc.com Navigation: pwd – print working directory ls –la – list contents of directory cd – change directory cp –avr <path to source directory/file> <path to destination directory/file> - copy directory / file mv <path to source directory/file> <path to destination directory/file> - move directory / file mkdir <directory name> - create directory touch <filename> - create / update file rm –rf <directory / file name> - delete directory / file Viewing: cat <path to file> - view contents of a file more <path to file> - view contents of a file (screen full at a time) less <path to file> - view contents of a file (screen full at a time with option to scroll backwards) nano <path to file> - create and open / open file for editing in nano text editor vi <path to file> - create and open / open file for editing in vi text editor head <path to file> - view first 10 lines of the file tail <path to file> - view last 10 lines of the file tail –f <path to file> - view last 10 lines of a changing file (usually a log file) in real time watch <linux command> - watch the output of a command (refreshes every 2 seconds by default) File Permissions: File permissions representation: - r w x(owner) r w x(group) r w x(others) r (read) – Allows user to view the file – numerical value = 4 w (write) – Allows user to edit the file – numerical value = 2 x (execute) – Allows user to run the file as an executable – numerical value = 1 chmod 777 <path to file> - Owner, group users and other users can read, write and execute the file.
    [Show full text]
  • Popcorn Linux: Enabling Efficient Inter-Core Communication in a Linux-Based Multikernel Operating System
    Popcorn Linux: enabling efficient inter-core communication in a Linux-based multikernel operating system Benjamin H. Shelton Thesis submitted to the Faculty of the Virginia Polytechnic Institute and State University in partial fulfillment of the requirements for the degree of Master of Science in Computer Engineering Binoy Ravindran Christopher Jules White Paul E. Plassman May 2, 2013 Blacksburg, Virginia Keywords: Operating systems, multikernel, high-performance computing, heterogeneous computing, multicore, scalability, message passing Copyright 2013, Benjamin H. Shelton Popcorn Linux: enabling efficient inter-core communication in a Linux-based multikernel operating system Benjamin H. Shelton (ABSTRACT) As manufacturers introduce new machines with more cores, more NUMA-like architectures, and more tightly integrated heterogeneous processors, the traditional abstraction of a mono- lithic OS running on a SMP system is encountering new challenges. One proposed path forward is the multikernel operating system. Previous efforts have shown promising results both in scalability and in support for heterogeneity. However, one effort’s source code is not freely available (FOS), and the other effort is not self-hosting and does not support a majority of existing applications (Barrelfish). In this thesis, we present Popcorn, a Linux-based multikernel operating system. While Popcorn was a group effort, the boot layer code and the memory partitioning code are the authors work, and we present them in detail here. To our knowledge, we are the first to support multiple instances of the Linux kernel on a 64-bit x86 machine and to support more than 4 kernels running simultaneously. We demonstrate that existing subsystems within Linux can be leveraged to meet the design goals of a multikernel OS.
    [Show full text]
  • Which Linux Distribution? Difficulty in Choosing?
    Which Linux distribution? Difficulty in choosing? Ver 190916 www.ubuntutor.com Twitter @LaoYa14 Contents Page Contents 3 That's enough 4 At first 5 At first little about Linux world 6 Quick start guide for choosing the right distro for beginners 7 Basic information 8 ”Linux tree” 9 Basic information 10 Questions on the web site 11 Distros 12 App store 13 Ubuntu 16.04 and 18.04 14 Ubuntu MATE 15 Lubuntu 16 Ubuntu Budgie 17 Kubuntu 18 Xubuntu 19 Linux Mint 20 Zorin 21 MX Linux 22 Pepermint 23 Deepin 24 Arch Linux 25 Manjaro 26 Ubuntu Kylin 27 Ubuntu Studio 28 Kali Linux 29 Edubuntu 30 Desktop environments for Linux 31 File manager NEMO 32 File manager NAUTILUS 33 Installing Ubuntu live USB (test drive) That's enough When laptop is old and there is Windows XP, what to do? You can install Ubuntu Mate on your old laptop and keep at the same time Windows XP too, if you like XP. Or you can buy a tiny new laptop about 200-300 €/$ and change Windows 10 to Ubuntu. It works! I have made both about three years ago, and I haven't used Windows since then. My own laptop is cheap HP Stream 4 MB/32 GB. When I was studying Ubuntu, I noticed that simple beginner's guide books were not available. So, I did a guide book. I also created a website and named it www.ubuntutor.com. It currently includes Ubuntu 16.04 and 18.04 tutorials. And this guide is third one.
    [Show full text]
  • Baldor Mint Software and Applications
    Mint® Automation Software and Applications Courtesy of Steven Engineering, Inc.-230 Ryan Way, South San Francisco, CA 94080-6370-Main Office: (650) 588-9200-Outside Local Area: (800) 258-9200-www.stevenengineering.com Mint® The Real-Time Automation Language Mint® – The Real-time Automation Language > High speed compiled BASIC programming language for motion and machine control > Multitasking capability for motion, I/O, HMI and communication tasks. Allows complex applications to be broken down into simpler, more manageable sub-tasks BASIC – the de facto Programming Modular programming capability, including functions and > Language subroutines, allows for code re-use and ease of debugging With nearly two decades of history, Mint® was designed from the outset around the BASIC Common programming interface for both Baldor’s NextMove > programming language. It was understood then, and intelligent drives reduces the learning curve and it is still true today, that BASIC is the de-facto programming language around the world. Now in its > Comprehensive library of motion types including interpolated fifth generation, Mint fully embraces all the modern moves, CAM profiling, flying shears, gearing and more BASIC programming functionality including features such as multitasking, function and procedures, data > Comprehensive Windows® tools including color keyword types and local data. This functionality makes it highlighting in the editor, software oscilloscope, online help, simple to write and develop modular programs that drive configuration wizard and auto-tuning are easily understood by others, easily maintained and easily re-used across different applications. Mint’s > ActiveX® components, supplied free of charge, aid in the new Code Library makes code re-use even simpler by allowing snippets of code to be stored and used for development of Windows® front end applications other projects.
    [Show full text]