It's Complicated but It's Probably Already Booting Your Computer
Total Page:16
File Type:pdf, Size:1020Kb

Load more
Recommended publications
-
Booting up and Shutting Down a Primer for Troubleshooting the Boot
Booting up and Shutting down A primer for troubleshooting In this section, we touch upon the startup and shutdown process on Linux. It is beyond the scope of this course to cover this topic in depth and we highly recommend that you read more about this topic in the official RedHat documentation or the documents listed at the end of this section. There is an abundance of information on this topic available in books and on the web. The Boot Up Process Please refer to the official RedHat documentation for details about the boot up process. http://www.redhat.com/docs/manuals/linux/RHL-9-Manual/ref-guide/ch-boot-init-shutdown.html Bootloaders Two common bootloaders in Linux are Lilo and grub. Bio-Linux currently uses grub. Grub installs a boot loader to the Master Boot Record. By configuring grub, you can put specific instructions in the Master Boot Record that allow you to load menus or command environments such that you could choose to start up different operating systems, pass information to the kernel, etc. The grub configuration file is at /boot/grub/grub.conf. Unless you are really into system work, you will probably not ever have to touch this file. More information on grub can be found at: http://www.redhat.com/docs/manuals/linux/RHL-9-Manual/ref-guide/s1-grub-whatis.html Once grub has done its job, it hands over control of the machine to the operating system. Run levels Run Level Description 0 Halt 1 Single user mode 2 Multiuser, without networking (without NFS) 3 Full multiuser mode, with networking 4 Unused 5 the same as 3, but with X11 started automatically 6 Reboot The first process run after the kernel has loaded is /sbin/init – this runs with pid 1. -
Getting to Grips with Unix and the Linux Family
Getting to grips with Unix and the Linux family David Chiappini, Giulio Pasqualetti, Tommaso Redaelli Torino, International Conference of Physics Students August 10, 2017 According to the booklet At this end of this session, you can expect: • To have an overview of the history of computer science • To understand the general functioning and similarities of Unix-like systems • To be able to distinguish the features of different Linux distributions • To be able to use basic Linux commands • To know how to build your own operating system • To hack the NSA • To produce the worst software bug EVER According to the booklet update At this end of this session, you can expect: • To have an overview of the history of computer science • To understand the general functioning and similarities of Unix-like systems • To be able to distinguish the features of different Linux distributions • To be able to use basic Linux commands • To know how to build your own operating system • To hack the NSA • To produce the worst software bug EVER A first data analysis with the shell, sed & awk an interactive workshop 1 at the beginning, there was UNIX... 2 ...then there was GNU 3 getting hands dirty common commands wait till you see piping 4 regular expressions 5 sed 6 awk 7 challenge time What's UNIX • Bell Labs was a really cool place to be in the 60s-70s • UNIX was a OS developed by Bell labs • they used C, which was also developed there • UNIX became the de facto standard on how to make an OS UNIX Philosophy • Write programs that do one thing and do it well. -
If Data Is Confidential and Available but Altered Decryption of Altered Data Usually Gives Garbage Exception: Electronic-Codeboo
38 40 If Data is Confidential and Available but Altered Encryption • do not use ECB–Mode • use CBC– or CTR–mode (recommendation Schneier/Ferguson) • use AES or one of the finalists – Twofish (Schneier, Ferguson, Kelsey, Whiting, Wagner, Hall) decryption of altered data usually gives garbage – Serpent (Anderson, Biham, Knudsen) – MARS (Coppersmith et al., IBM) exception: electronic-codebook-mode (ECB) (uses independent blocks) – RC6 (Rivest, patented by RSA) 39 41 ECB-Mode Encrypted Penguin If Data is Non-Alterable and Confidential but not Available ,,Your message with authenticator 08931281763e1de003e5f930c449bf791c9f0db6 encryption is block by block has been received, but unfortunately the server is down. ❀ every block gets another color Your mail-service will never be accessible.” Example: lavabit.com, Snowden’s e-Mail-Provider 42 44 Authorization: Who is Allowed to Do All This? Problem: Person/Process/Role ⇐⇒ String (2) How to link a person to a string? • Person knows something (password, secret cryptographic key). • Person has something (token, USB–key, chipcard). Authorized entities only. • Person is something (biometrics, fingerprint etc.). Only Bob is allowed to enter here. We have to identify persons, processes and their roles. 43 45 Problem: Person/Process/Role ⇐⇒ String (1) Proof of Identity is Called Authentication Person identified by picture String identified by equality relation. 46 48 Proof of Identity: Links Person to a String Third party guarantees real identity. Has something: ID–card. 47 49 Proof of True Source is Called Authenticity -
The Linux Startup Process
The Linux startup process Jerry Feldman <[email protected]> The Linux Expertise Center Hewlett-Packard Company Document produced via OpenOffice.org Overview ● The Linux boot process – GRUB. This is the default for X86/Linux – LILO – Other boot loaders ● The Linux Operating modes – Single-user mode – Multi-user mode. ● Run Levels – What are run levels – What are the Linux standard run levels – How Linux manages run levels 2 The Linux Boot process ● The PC boot process is a 3-stage boot process that begins with the BIOS executing a short program that is stored in the Master Boot Record (MBR) of the first physical drive. Since this stage 1 boot loader needs to fit in the MBR, it is limited to 512 bytes and is normally written in assembly language. There are a number of boot loaders that can load Linux. ● GRUB and LILO are the most commonly used ones on X86 hardware. ® ® ● EFI is used on the Intel Itanium family. 3 The GRand Unified Bootloader The GRand Unified Bootloader (GRUB) is default boot loader on most distributions today. It has the capability to load a number of different operating systems. 1.The stage 1 boot resides in the MBR and contains the sector number of the stage 2 boot that is usually located in the /boot/grub directory on Linux. 2.The stage 2 boot loader presents a boot menu to the user based on /boot/grub/grub.conf or menu.lst. This contains a boot script. It is the stage2 loader actually loads the Linux kernel or 4 other OS. -
Introduction to Unix Shell (Part I)
Introduction to Unix shell (part I) Evgeny Stambulchik Faculty of Physics, Weizmann Institute of Science, Rehovot 7610001, Israel Joint ICTP-IAEA School on Atomic Processes in Plasmas February 27 – March 3, 2017 Trieste, Italy Contrary to popular belief, Unix is user friendly. It just happens to be very selective about who it decides to make friends with. Unknown Initially used at Bell Labs, but soon licensed to academy (notably, U. of California, Berkeley) and commercial vendors (IBM, Sun, etc). There are two major products that came out of Berkeley: LSD and Unix. We don’t believe this to be a coincidence. Jeremy S. Anderson, Unix systems administrator Historical overview (kind of) Unix is a family of multiuser, multitasking operating systems stemming from the original Unix developed in the 1970’s at Bell Labs by Ken Thompson, Dennis Ritchie1, and others. Some consider Unix to be the second most important invention to come out of AT&T Bell Labs after the transistor. Dennis Ritchie 1Also famous for creating the C programming language. Historical overview (kind of) Unix is a family of multiuser, multitasking operating systems stemming from the original Unix developed in the 1970’s at Bell Labs by Ken Thompson, Dennis Ritchie1, and others. Some consider Unix to be the second most important invention to come out of AT&T Bell Labs after the transistor. Dennis Ritchie Initially used at Bell Labs, but soon licensed to academy (notably, U. of California, Berkeley) and commercial vendors (IBM, Sun, etc). There are two major products that came out of Berkeley: LSD and Unix. -
Command Line Interface (Shell)
Command Line Interface (Shell) 1 Organization of a computer system users applications graphical user shell interface (GUI) operating system hardware (or software acting like hardware: “virtual machine”) 2 Organization of a computer system Easier to use; users applications Not so easy to program with, interactive actions automate (click, drag, tap, …) graphical user shell interface (GUI) system calls operating system hardware (or software acting like hardware: “virtual machine”) 3 Organization of a computer system Easier to program users applications with and automate; Not so convenient to use (maybe) typed commands graphical user shell interface (GUI) system calls operating system hardware (or software acting like hardware: “virtual machine”) 4 Organization of a computer system users applications this class graphical user shell interface (GUI) operating system hardware (or software acting like hardware: “virtual machine”) 5 What is a Command Line Interface? • Interface: Means it is a way to interact with the Operating System. 6 What is a Command Line Interface? • Interface: Means it is a way to interact with the Operating System. • Command Line: Means you interact with it through typing commands at the keyboard. 7 What is a Command Line Interface? • Interface: Means it is a way to interact with the Operating System. • Command Line: Means you interact with it through typing commands at the keyboard. So a Command Line Interface (or a shell) is a program that lets you interact with the Operating System via the keyboard. 8 Why Use a Command Line Interface? A. In the old days, there was no choice 9 Why Use a Command Line Interface? A. -
Linux and UNIX
Operating Systems, Fall 2008 2.10.2008 Example: Linux and UNIX 1 UNIX History First version, a strippedstripped--downdown MULTICS by Ken Thompson for a discarded PDP--7PDP 7 minicomputer in assembly language Moved to PDP--11PDP 11 and rewritten using language, C, designed for that purpose Evolved to two different, partially incompatible versions System V (AT&T, original designers) BSD (Berkeley, based on an early UNIX Version 6) Standardization by IEEE created POSIX 1003.1 Intersection (leikkaus) of the features 2 Lecture 10 1 Operating Systems, Fall 2008 2.10.2008 UNIX Popularity based on Portability C code, some device--dependentdevice dependent parts in assembly code Multiprogramming Supported interactive users (at the era of batch systems) Hierarchical file and directory structure Just one file format: sequence of bytes (Universities had the suitable machines in the beginning) UNIX philosophy: small is beautiful Combining small utility programs (called filters) pipe output of one to be an input to another Minimum number of system calls 3 4 Lecture 10 2 Operating Systems, Fall 2008 2.10.2008 UNIX History, continues MINIX (released in 1987) Designed by A. Tanenbaum for educational purpose Microkernel design Today focus also on reliability and dependability issues LINUX (released in 1991) Designed by Linus Torvalds for personal use Model from MINIX, but monolithic kernel Uses special features of gcc Free software based on GPL (Gnu Public License) 5 Linux Joint InternetInternet--basedbased Free Software Foundation & development GNU Public License Experts all over the world Free distribution of the kernel code (C & assembler )) 1991 -->> Free distribution of some HY/TKTL: "Linux was (most) system software invented here“ GNU C, Gnome, KDE, Linus Torvalds studied and Apache, Samba, … worked at the department. -
Tuning Systemd for Embedded
Tuning systemd for Embedded Alison Chaiken [email protected] Mar. 23, 2015 Latest version: http://she-devel.com/ELC_systemd.pdf Auxiliary files: http://she-devel.com/ELC_auxiliary.tar.bz2 Text in blue is hyperlinked. ? ? ? ? Quiz: what is the most widely used Linux init system? ? ? ? ? phenomenom.” -- Gary Hamel “ Show Action Linux itself.” -- is Linux GKH, Linux “ Valley Silicon Gates,-- Bill industry.” the technology in position “ Success self-correcting Success is a hurt Thethatever thing can only has a guaranteed No one Linux needs to keepinnovating Pirates Pirates of Licensed under CC BY-SA 3.0 http://commons.wikimedia.org/wiki/File:Fire-lite-bg- 10.jpg#mediaviewer/File:Fire-lite-bg-10.jpg Philosophy of systemd Extract duplicate functionality from daemons and move it to systemd core or kernel. Replace /etc scripts with declarative config files. Expose newer kernel APIs to userspace via a simple interface. systemd is: ● modular; ● asynchronous and concurrent; ● described by declarative sets of properties; ● bundled with analysis tools and tests; ● features a fully language-agnostic API. One daemon to rule them all xinetd: a daemon to lazily launch internet services when activity is detected on an AF_INET socket systemd: a daemon to lazily launch any system service when activity is detected on an AF_UNIX socket (oversimplification) Complexity arising from many similar small units init.d scripts systemd units ● Unit's action and parameters: ExecStart= ● Dependencies: Before=, After=, Requires=, Conflicts= and Wants=. ● Default dependencies: – Requires= and After= on basic.target; – Conflicts= and Before= on shutdown.target. ● Types of unit files: service, socket, device, mount, scope, slice, automount, swap, target, path, timer, snapshot sysVinit runlevels ≈ systemd targets ● Targets are synchronization points. -
UNIX/Linux Fundamentals – Lecture 1
UNIX/Linux Fundamentals – Lecture 1 Md Modasshir What will we cover? • Operating system overview • UNIX commands, shell & process mgt. • Scripting languages • Programming tools • Various text editors • X11 & KDE windows env • Basic C/C++ programming and other applications (emacs, gcc-g++, gzip, tar, …) Schedule Lectures – Monday through Friday 08:30 – 10:50am • Quizzes taken at the end of lecture/beginning of 2nd class • Final: Saturday May 14th. • Project due May 14th @ 05:00 pm. Books USC Bookstore Other helpful resources http://safari.oreilly.com Who cares, how do I get an A? • 4 Assignments: 40% • 1 Project: 20% • 4 Quizzes: 20% • Final: 20% Cheating • Don’t Cheating • Don’t • Seriously, don’t Individual Effort • Assignments and quizzes are open book, open notes, open computer/internet! • This is a hands on course designed to familiarize YOU with the unix/linux environment. • You will need these skills in future classes. • Cheat and pay the price later. • Why not learn this stuff now? Our Heroes Ken Thompson Dennis Ritchie Video Games Spark Innovation PDP-7 Space Pilot In the Beginning • UNICS: 1969 – PDP-7 minicomputer • PDP-7 goes away, rewritten on PDP-11 to “help patent lawyers” • V1: 1971 • V3: 1973 (pipes, C language) • V6: 1976 (rewritten in C, base for BSD) • V7: 1979 (Licensed, portable) PDP-11 Derivative Systems • PWB, MERT • BSD: Adds many important features (networking, job control). • AT&T enters the computer business with System III, V Commercial Success • AIX • SunOS, Solaris • Ultrix, Digital Unix • HP-UX • Irix • UnixWare -> Novell -> SCO -> Caldera ->SCO • Xenix: -> SCO • Standardization (Posix, X/Open) Standards and Wars • 1998: POSIX Standard • Unix International vs. -
The Tragedy of Systemd
The Tragedy of systemd [email protected] @jeamland The Tragedy of systemd [email protected] @jeamland Aurynn Shaw, “Contempt Culture” http://blog.aurynn.com/2015/12/16-contempt-culture Change The Ancestry of systemd UNIX Seventh Edition Unix (1979) … housekeeping functions like… mounting filesystems, and starting “ daemons. - init(8) manual page, Seventh Edition Unix PDP-11/70, Seventh Edition Unix VAX-11/730, 4.3BSD Living Computers Museum+Labs https://livingcomputers.org Then things changed Service … housekeeping functions like… mounting filesystems, and starting “ daemons. - init(8) manual page, Seventh Edition Unix System Configuration System Configuration Service Bootstrap Automated Service Management The Idea of systemd launchd The Idea of launchd From launchd to systemd Lennart Poettering, “Rethinking PID 1” http://0pointer.net/blog/projects/systemd.html For a fast and efficient boot-up two things are crucial: “ ➤ To start less. ➤ And to start more in parallel. -Lennart Poettering, “Rethinking PID 1” An init system that is responsible for maintaining services needs to listen to “ hardware and software changes. -Lennart Poettering, “Rethinking PID 1” [I]s this kind of logic new? No, it certainly is not. The most prominent “ system that works like this is Apple's launchd system… -Lennart Poettering, “Rethinking PID 1” System Management Userspace Kernel Userspace System Kernel The Reality of systemd Adoption Fedora 15 May, 2011 openSUSE 12.2 September, 2012 CentOS 7.14.04 April, 2014 Red Hat Enterprise Linux 7.0 June, 2014 SUSE Linux Enterprise -
Augmented Unix Userland
Project MXC-403 Augmented Unix Userland Major Qualifying Project Submitted to the Faculty of Worcester Polytechnic Institute in partial fulfillment of the requirements for the Degree in Bachelor of Science in Computer Science By Sam Abradi [email protected] Ian Naval [email protected] Fredric Silberberg [email protected] Submitted On: April 30, 2015 Project Advisor: Professor Michael Ciaraldi [email protected] This report represents work of WPI undergraduate students submitted to the faculty as evidence of a degree requirement. WPI routinely publishes these reports on its web site without editorial or peer review. For more information about the projects program at WPI, see http: // www. wpi. edu/ Academics/ Projects . Abstract The Unix philosophy has resulted in stringing together simple general purpose utili- ties to accomplish complex tasks. However, using text as a communication medium between these programs requires several formatting utilities to transform output from one program into valid input to another. These transformations can be very complicated and confusing. This project looked at two alternative shell designs that use different communication methods between programs, simplifying interprogram communication and leveraging existing technologies to make developing new utilities and shell scripts easier. i Contents Abstracti List of Figuresv List of Tables vi 1 Introduction1 1.1 AUU Terminology.............................1 1.2 Motivation.................................1 1.3 The AUU Project.............................3 2 JSON Shell4 2.1 Motivation: Why JSON?.........................4 2.2 JSON Protocol Design..........................4 Streams..................................4 Standards and Definitions........................5 Example Use Case: ps..........................6 2.3 Tributary.................................8 Tributary Selectors............................8 Using Tributary to Standardize Output.................9 2.4 Utilities Implemented.......................... -
Oracle Solaris Guide for Linux Users
Oracle Solaris Guide for Linux Users December 2016 (Edition 1.0) Fujitsu Limited Copyright 2014-2016 FUJITSU LIMITED Contents Preface 1. Starting and Stopping the OS Environment 2. Package Management 3. User Management 4. Network Management 5. Service Management 6. File System and Storage Management 7. Monitoring 8. Virtual Environment 1/72 Copyright 2014-2016 FUJITSU LIMITED Preface 1/2 Purpose This document explains how to use Oracle Solaris to users who have experience operating systems in a Linux environment. Audience People who have basic knowledge of Linux People who are planning to operate an Oracle Solaris system Positioning of documents Review Design Build Operate Oracle Solaris Guide for Linux Users Oracle Solaris Command Reference (This document) for Linux Users 2/72 Copyright 2014-2016 FUJITSU LIMITED Preface 2/2 Notes Oracle Solaris may be described as "Solaris" in this document. Oracle VM Server for SPARC may be described as "Oracle VM" in this document. The commands, etc. explained in this document are based on the following environments: - Linux: Red Hat Enterprise Linux 6.5, Red Hat Enterprise Linux 7.1 - Solaris: Oracle Solaris 11.3, ESF 5.1 The mark on the right appears on slides about Solaris functions. Solaris Fujitsu M10 is sold as SPARC M10 Systems by Fujitsu in Japan. Fujitsu M10 and SPARC M10 Systems are identical products. 3/72 Copyright 2014-2016 FUJITSU LIMITED For a Linux Administrator Who Will be Operating Solaris... You may be thinking there will be no big difference because Solaris can be operated with the same command base as Linux..