+ All Categories
Home > Documents > CS 486 - Capstone OS Tools for OpenBSD Overview Presentation Team Fugu.

CS 486 - Capstone OS Tools for OpenBSD Overview Presentation Team Fugu.

Date post: 13-Dec-2015
Category:
Upload: bethanie-nelson
View: 214 times
Download: 0 times
Share this document with a friend
Popular Tags:
28
CS 486 - Capstone OS Tools for OpenBSD Overview Presentation Team Fugu
Transcript

CS 486 - Capstone

OS Tools for OpenBSD

Overview PresentationTeam Fugu

Team Fugu

• Ben Atkin

• Thad Boyd

• Nauman Qureshi

• Erik Wilson

Fugu: A poisonous blowfish.The blowfish is the OpenBSD mascot.

Sponsor

US Geological Survey (USGS)– Ernest Bowman-Cisneros

and Margaret Johnson.– System Administrators for

Astrogeology Team.

Erik Wilson - 1

Task Definition: Problem

Our Client– USGS Astrogeology Division.– Data Analysis, Image Processing, etc.– Heavy Demands On Computing Infrastructure.– Heterogenous Computing Environment.

The Problem– Client uses Automatic Installers and Patchers to save

time and improve consistency, security.– Client uses OpenBSD, a free and secure OS.– OpenBSD lacks suitable Automatic Installer and

Patcher tools.

Erik Wilson - 2

Design Methodology

Using pre-existing code as much as possible.

Modularized Tepatche into Source and Binary Modules.

Add various utilities such as config parser and logging facilities.

Created well defined architecture.

Erik Wilson - 3

Architecture: Overview

Erik Wilson - 4

Architecture: Install Interactions

Erik Wilson - 5

Architecture: Install

Erik Wilson - 6

Architecture: Shell Scripting

Use global environment variablesAdvantage: can be accessed inside

backquotesBackquotes: execute a command string,

and capture the outputVery few tools at our disposal, because the

installation needs to run from a floppyDisk space calculations must be done in a

shell script.

Ben Atkin -7

Architecture – Disk Setup

Disk Partitioning– Requirement: Must be able to specify partition

sizes proportionally– Solution:

• Required Size – has priority• Desired Size – extra space divided proportionally• Extra Space – beyond the desired size, the extra

space can be assigned to a partition

Two kinds of partitions– FDISK (on i386 only)– disklabel

Ben Atkin - 8

Architecture – Package Installation

Installing Packages– OpenBSD Filesets– Extract to / once the packages are on disk– If they're on the network, copy to /tmp– Copy, install, delete, before getting next

package, so /tmp won't run out of space

Ben Atkin - 9

Architecture: Completing Install

Permanently write settings to disk– Disk mounting: fstab/mtab– Networking– Time/Date

Post-Install– Run script in configuration file

No interesting screenshots yetSignificant portions are complete

Ben Atkin - 10

Automated Patcher

Patcher will be created by adding new features to the existing Tepatche Perl Script.

The script will be divided into three main modules for better organization of functions.

Nauman Qureshi - 11

Design Overview

Nauman Qureshi - 12

Automated Patcher

Nauman Qureshi - 13

Functionality: Download Source Tarballs if neededDownload Source and Binary Patches as neededApplication to the system of those patchesCreate binary patch given that the source is patched

Main Tepatche Module

- Process:

The main module will provide the interaction from the shell and orchestrates all of the resulting actions

Nauman Qureshi - 14

Main Tepatche Module

- Functionality:Read information from the “config” fileCall the appropriate module (Source or

Binary) to perform patchingSend the appropriate messages and

errors to location defined in the config fileSchedule a reboot if specified in the config

file

Nauman Qureshi - 15

Tepatche Source Patching Module

- Process:

The source module will be used to compile from source any patches which exist from the OpenBSD website

Additionally it may act as a server by creating Binary Patches from the compiled source

Nauman Qureshi - 16

Tepatche Source Patching Module

- Functionality:Download the source tarballs and deflate if

source does not exist on the systemDownload patches from the OpenBSD web

server, or the other defined locationApply the downloaded patches to the

sourceCompile the source Creating a Binary Patch if desired from the

compiled source patchesNauman Qureshi - 17

Binary Patching Module

- Process:

This module will be useful for avoiding the slow compiling speeds associated with source patching

Thad Boyd - 18

Binary Patching Module

• create_bin_patch– create .tgz package using pkg_create

• download_bin_patches– download patches from location specified in

config file

• apply_bin_patch– install .tgz package using pkg_add

Thad Boyd - 19

Tepatche Binary Packaging:Architecture

Thad Boyd - 20

Binary Patching Module

- Functionality:Download Binary modules of a specified

architecture hosted on the networkApply those binary patches using the pkg

facility

Thad Boyd - 21

Features to Add

• Log all package installation history

• Roll back existing package; do not attempt to download and install again

• Choose which packages to install and which not to

• Install package from non-FTP location– HTTP– NFS

Thad Boyd - 22

Tasks: Completed

Thad Boyd - 23

Tasks: Still to Do

Thad Boyd - 24

Major Tasks and Deadlines

2004.04.09 (Friday)– Combine/Swap Projects

2004.04.16 (Friday)– Complete installer testing– Complete Tepatche testing

2004.04.19 (Monday)– Complete final presentation– Give project to USGS for testing and feedback

Thad Boyd - 25

Conclusions

Automated Install almost completed.Focused on learning PERL.Lots of attention on team work.Demonstration.

Thad Boyd - 26


Recommended