Updating FreeBSD Unix System Administration. Objectives At the end of this session you should be able to: 1. Understand the differences between the CURRENT.

Slides:



Advertisements
Similar presentations
Drivers and the kernel1-1 Drivers and the kernel UNIX system has three layers: m The hardware m The operating system kernel m The user-level programs Kernel.
Advertisements

1 Dynamic DNS. 2 Module - Dynamic DNS ♦ Overview The domain names and IP addresses of hosts and the devices may change for many reasons. This module focuses.
Software Configuration Management Donna Albino LIS489, December 3, 2014.
Concepts of Version Control A Technology-Independent View.
Using subversion COMP 2400 Prof. Chris GauthierDickey.
11.1 © 2004 Pearson Education, Inc. Exam Planning, Implementing, and Maintaining a Microsoft Windows Server 2003 Active Directory Infrastructure.
18 June 2010 Upgrading Your Geant4 Release J. Perl 1 Upgrading Your Geant4 Release Joseph Perl, SLAC.
14 January 2011 Upgrading Your Geant4 Release J. Perl 1 Upgrading Your Geant4 Release Joseph Perl, SLAC.
Low level CASE: Source Code Management. Source Code Management  Also known as Configuration Management  Source Code Managers are tools that: –Archive.
Source Code Management Or Configuration Management: How I learned to Stop Worrying and Hate My Co-workers Less.
1 CMPT 275 Software Engineering Revision Control.
Installing software on personal computer
Zach Miller Condor Project Computer Sciences Department University of Wisconsin-Madison Flexible Data Placement Mechanisms in Condor.
Vincenzo Vagnoni LHCb Real Time Trigger Challenge Meeting CERN, 24 th February 2005.
Section 6.1 Explain the development of operating systems Differentiate between operating systems Section 6.2 Demonstrate knowledge of basic GUI components.
Linux Operations and Administration
Chapter-4 Windows 2000 Professional Win2K Professional provides a very usable interface and was designed for use in the desktop PC. Microsoft server system.
System Administration HW1 huanghs. Computer Center, CS, NCTU 2 Requirements  Basic Install FreeBSD and upgrade to up-to-date –RELEASE Recompile your.
Chapter Fourteen Windows XP Professional Fault Tolerance.
Version Control with Subversion Quick Reference of Subversion.
1 Lecture 19 Configuration Management Software Engineering.
11 MANAGING AND DISTRIBUTING SOFTWARE BY USING GROUP POLICY Chapter 5.
Maintain Installed Applications. Computer Center, CS, NCTU 2 In Ports Tree  / Makefile  COMMENT pkg-descr  WWW pkg-message  Shown after installed.
An Intro to Concurrent Versions System (CVS) ECE 417/617: Elements of Software Engineering Stan Birchfield Clemson University.
Copyright © 2015 – Curt Hill Version Control Systems Why use? What systems? What functions?
Keeping Up-to-date AfNOG X Cairo, Egypt. Recap on FreeBSD design Distribution includes kernel, and some user-land binaries (bind, shells, network tools,
Kako razvijate PL/SQL pakete? File based PL/SQL development Mitja Golouh SIOUG 2006,
What is a port The Ports Collection is essentially a set of Makefiles, patches, and description files placed in /usr/ports. The port includes instructions.
Apache, MySQL and PHP Installation and Configuration Chapter 2 MySQL Installation and Configuration.
Open Solutions for a Changing World™ Copyright 2005, Data Access Worldwide June 6-9, 2005 Key Biscayne, Florida 1 Application Deployment Stephen W. Meeley.
| nectar.org.au NECTAR TRAINING Module 9 Backing up & Packing up.
Post Install Configuration FreeBSD SANOG 9 January 14, 2007 Colombo, Sri Lanka Hervey Allen.
How to fix Missing Windows Sockets Registry Entries required for Network Connectivity in Windows 10 /pages/Reimage- Repair- Tool/ /u/6/b/
UNIX U.Y: 1435/1436 H Operating System Concept. What is an Operating System?  The operating system (OS) is the program which starts up when you turn.
Building programs LinuxChix-KE. What happens in your CPU? ● It executes a small set of instructions called "machine code" ● Each instruction is just a.
ICAICT201A USE COMPUTER OPERATING SYSTEM. USING THE CONTROL PANEL The Control Panel contains many options for configuring your computer, including: adding.
Patric k Okui April 20, 2005 Slide 1 Updating FreeBSDUpdating FreeBSD Uni x Sy ste m Ad min istr atio n.
Installing Windows 7 Lesson 2.
CompSci 230 Software Construction
Operating System Kernel Compilation
Lesson 19: Configuring and Managing Updates
Jason Bury Dylan Drake Rush Corey Watt
Connect:Direct for UNIX v4.2.x Silent Installation
Maintaining Windows Server 2008 File Services
Version Control with Subversion
A Simple Introduction to Git: a distributed version-control system
LECTURE 2: Software Configuration Management
An Intro to Concurrent Versions System (CVS)
Introduction to Configuration Management With RCS
LCGAA nightlies infrastructure
Operating System Structure
5.0 : Windows Operating System
Drivers and the kernel UNIX system has three layers: Kernel
CVS revisions UML diagram
Keeping Up-to-date AfNOG X Cairo, Egypt.
Maintaining software solutions
How to Upgrade Your Geant4 Release
Version Control System
Get Oracle 8i Running on Your Linux Server Straight Away!
LECTURE 3: Software Configuration Management
Operating System Kernel Compilation
IS3440 Linux Security Unit 7 Securing the Linux Kernel
Git CS Fall 2018.
Chapter 2: Operating-System Structures
Post Install Configuration FreeBSD
Discussing an OVS/OVN Split
Chapter 2: Operating-System Structures
David Cleverly – Development Lead
System Center Third Party Tools Ivanti Patch and RCT Recast April 2019.
Presentation transcript:

Updating FreeBSD Unix System Administration

Objectives At the end of this session you should be able to: 1. Understand the differences between the CURRENT vs STABLE branches of FreeBSD 2. Use cvsup to update your source tree 3. Update your entire system to the latest STABLE release using buildworld.

Why update ● Fix bugs in the OS – some of them related to security issues that could potentially leave your system vulnerable to different kinds of attack. ● Get “drivers” for new hardware previously unsupported and/or updates to existing drivers. ● Other features that may be interesting like better memory management, background FSCK (introduced in the 5.X versions) etc

● CURRENT The ``bleeding edge'' of FreeBSD development. FreeBSD- CURRENT users are expected to have a high degree of technical skill, and should be capable of solving difficult system problems on their own. If you are new to FreeBSD, PLEASE DO NOT install it. ● STABLE The development branch from which major releases are made. Changes go into this branch at a different pace, and with the general assumption that they have first gone into FreeBSD- CURRENT for testing. This is still a development branch, however. Branches of FreeBSD

Users of CURRENT ● Members of the FreeBSD community who are actively working on some part of the source tree and for whom keeping ``current'' is an absolute requirement. ● Members of the FreeBSD community who are active testers, willing to spend time solving problems in order to ensure that FreeBSD-CURRENT remains as sane as possible. These are also people who wish to make topical suggestions on changes and the general direction of FreeBSD, and submit patches to implement them. ● Those who merely wish to keep an eye on things, or to use the current sources for reference purposes (e.g. for reading, not running). These people also make the occasional comment or contribute code. ● Subscribe to

STABLE ● Still developmental – but more tested than -CURRENT. Track STABLE with caution. This is what gives us the next release of FreeBSD. ● Possible to track a specific version after it's been released. E.g tracking only 5.3 which should get mostly security updates and almost nothing else. ● Advisable to test on a testing server before deployment in a live environment. ● Subscribe to

How to upgrade ● Reinstalling a new release from CD – this overwrites all your configuration files, settings etc. (Partition wisely for data preservation). 3 rd Party applications need to be reinstalled. ● Binary upgrade feature available on the CDROM: ✔ Fast and Easy ✗ Very buggy and could break your system esp by not maintaining your configurations ✗ Will not preserve custom options done at compile time e.g removing IPV6 from the kernel ✗ Not optimised for your hardware – a problem if your hardware is very specific

● Binary update using FreeBSD update available online from the websitehttp:// and also available in the portshttp:// ✔ Tracks only security problems ✔ Fast and easy to run ✗ Still loses your compile time customisations ✗ Potentially puts part of the system out of sync with the rest of the system if it doesn't handle changes to configuration files ✗ Does not play nice if you upgrade your system any other way. ● Updating through source (using cvsup) ✔ Most flexible – maintaining your run-time modifications. ✔ Allows you to maintain your configuration files and/or update them manually when needed ✗ Slowest method and requires some knowledge of cvsup

How cvsup Works ● Anonymous CVS and CVSup use the pull model of updating sources. In the case of CVSup the user (or a cron script) invokes the cvsup program, and it interacts with a cvsupd server somewhere to bring your files up-to-date. The updates you receive are up-to-the-minute and you get them when, and only when, you want them. You can easily restrict your updates to the specific files or directories that are of interest to you. All this is specified in the supfile which we are going to edit in the next exercise.

At this point Go to exercise 1 that has been handed out.

Rebuilding World ● Once you have synchronized your local source tree against a particular version of FreeBSD (FreeBSD- STABLE, FreeBSD-CURRENT, and so on) you can then use the source tree to rebuild the system. ● Before you do anything else, read /usr/src/UPDATING (or the equivalent file wherever you have a copy of the source code). This file should contain important information about problems you might encounter, or specify the order in which you might have to run certain commands. If UPDATING contradicts something you read here, UPDATING takes precedence.

Exercise ● Now go to exercise 2 on the handout you have.

● Do source update cd /usr/src make -j2 buildworld make buildkernel make installkernel [ reboot in single user mode] cd /usr/src mergemaster -p make installworld mergemaster[reboot]

Notes ● It is possible to specify a -j option to make which will cause it to spawn several simultaneous processes. ONLY use this on the buildworld NOT on any of the other make commands. ● If you want to build a custom kernel, and already have a configuration file, just use KERNCONF=MYKERNEL like this: ● # make buildkernel KERNCONF=MYKERNEL ● # make installkernel KERNCONF=MYKERNEL

Mergemaster ● The mergemaster(8) utility is a Bourne script that will aid you in determining the differences between your configuration files in /etc, and the configuration files in the source tree /usr/src/etc. This is the recommended solution for keeping the system configuration files up to date with those located in the source tree. ● running mergemaster(8) in pre-buildworld mode by providing the - p option will compare only those files that are essential for the success of buildworld or installworld.

Review Question 1 The most reliable way of updating FreeBSD is: a) Using the CDs b) Doing a binary update c) using cvsup d) using CTM e) None of the above

Review Question 2 CVSUP updates the system sources by: a) downloading all the system sources from the source server. b) Downloading all the binaries from the source server. c) patching the local sources against the remote sources. d) comparing the local sources and remote sources and downloading only those that have changed

Review Question 3 Running make -j4 buildworld will: a) Build the world for 4 different machines. b) Compile the system sources 4 times c) Run 4 simultaneous processes of make d) None of the above

Review Question 4 When running FreeBSD as a production machine I should: a) Use CURRENT rather than STABLE for my cvsup b) Keep track of stable and run cvsup on my server regularly c) Track stable, test on a test machine first before doing it on my production machines. d) None of the above

Review Question 5 Make buildkernel and installkernel should be run: a) Before building the world b) after building the world but before installing the world. c) after installing the world but before mergemaster. d) after everything else but before rebooting.

Review Question 6 Mergemaster will: a) copy the new configuration files into your /etc/directory b) compare your current files to your previous files and prompt you on what it should do. c) automatically merge the contents of the new file with the old files. d)