The document discusses managing PC operating systems using a revision control system. It addresses the problems of maintaining consistent configurations across many PCs as the number increases. The proposed approach uses a Linux-based installation program and revision control system to check configurations, repair if needed, and avoid full reinstalls. Benefits include faster updates and management of different system versions. Security measures like chroot are used to restrict access for installation and download users. Performance tests showed significant time savings versus full reinstalls when only minor changes were needed.
[AMD] Novel Use of Perforce for Software Auto-updates and File Transfer
Managing Operating Systems with a Revision Control System
1. Managing PC Operating
Systems with a Revision
Control System
Ing.Mag. Gottfried Rudorfer
Gottfried.Rudorfer@gmx.at
Wirtschaftsuniversität Wien
October 25, 1997
2. The problem
System
Users
Administrator
Want a unique Tasks
system – Updates
configuration – New software
– Correct – Configuration of
preferences for • operating system
• Windows-Profile • applications
• MS-Office
• Firefox
3. Large scale management
of PCs
Problem: The
administrative
effort increases
proportional with
the number of
PCs.
Goal: Software for
automatic
administration of
the software
4. PC specific problems
Users with physical access to the
computer may be able to change
the software configuration
– The user installs another operating
system from USB device
– The user may change files and/or
partitions especially when having
admin-rights
5. Consequences
The installed software on the
clients has to be regarded as non
safe.
A changed software configuration
has to be expected.
A software
distribution
system has to
consider this
consequences!
6. Existing approaches
If the user reports problems with
the installation, the PC is
reinstalled from scratch.
Unattended system installation
with
– Network-boot with access to a
repository server
– Setup of software packages with
default settings
7. Our approach
A system which
– does not require a complete re-install
but rather performs a software check.
– tries to repair the existing
configuration without a fresh install.
– is much faster compared to
unattended full installations
8. Functionality for the user
Verification of a client.
Speed. Verification is fast because:
– Installation from scratch is only
necessary when there was a serious
change in system configuration.
– The content of files is not transmitted
to the client when the attributes of the
file are identical with the current
master copy.
9. Benefits for the
administrator
Programs for the generation of a
new master copy.
A revision control system to store
different versions of the master
copy at the same time.
Only one PC client
has to be managed!
11. Updating a client
Client Server
Load the Provides the
operating system master copy.
for the installation.
Run the
installation
program.
Reboot the
system.
12. The operating system for
the installation: Linux
Generic boot loader
(LILO)
– loads the kernel as ram
disk.
Initial RAM-Disk
– the file system is mapped
into the main memory.
– Finally /initrc is
executed.
The OS has unlimited
access to the hard disk.
13. The installation program
Written in Perl5
Functionality
– Check the partition table.
– Check the file systems.
– Mount the file systems.
– Ask the server to update the client.
– Dismount the file systems.
– Write a new master boot record.
– Do local customizations.
14. Replacing the current
master copy
Client Server
Boot Linux The server
Login at the executes the
server as command rdist
pc7adm. at the client using
rsh.
Management of
different master
copies with our
fsrcs.
15. The master copy
Is a directory on the server which
contains all files of a client.
Access with two accounts:
– pc7inst: for reading the files
– pc7adm: for writing files
Problem: A working master copy
might be replaced by a non
operational version.
16. Security on the server
The clients shouldn’t have
unlimited root privileges.
The upload program has to be run
with root privileges!
Solution:
– .rhosts
– No login shell for the upload and download
users.
– All programs perform first a chroot to the
master copy.
18. Performance
Fresh installation of both operating
systems
– 909 Mbytes of data
– approx. 40,000 files
– 42 minutes
Check with minor modifications of both
operating systems
– 8 minutes
Check with minor modifications of
Windows 95
– 202 Mbytes of data
– approx. 3,500 files
– 2 minutes
19. Future work
Management of different
hardware configurations with
one repository.
Merge rdist and fsrcs into
a single application.