GNHLUG
>
Org Web
>
InternetServer
>
ServerCoordination
>
ServerChangeControl
(2023-12-13,
BenScott
)
(raw view)
E
dit
A
ttach
We use a system of scripts called =admchange= to coordinate changes. The idea is to provide a mechanism to keep various admins (in different locations, and with different types of reachability) from bumping into each other. ---++ Documentation ---+++ Name * =admchange= - control changes by system administrators * =startchange= - begin a large change, with locking * =endchange= - end a large change, releasing lock * =logchange= - log a note about a smaller change ---+++ Synopsis =*change [-b] [-e] [-m message]= ---+++ Purpose Helps keep track who is making changes to the system at any given time, and preven collisions of same. Maintains a changelog to keep a record of these changes over time. ---+++ Usage Operation being performed is determined by the name the script is called as. Intent is for links to be made to master =admchange= script. Do not call as =admchange= directly. In all three modes, the user provides a message to describe the change. Defaults to prompting using =readline= for input, RCS-style. Will use your =$EDITOR= or =/bin/vi= instead if you call this script with =-e= option. Can also specify a message as an argument using =-m= option (useful for short one-liners, e.g., =logchange -b -m 'restarted apache'=). The message is recorded in the change log and broadcast using =wall=. The =-b= option suppresses the wall broadcast. Call as =startchange= to begin a large change. A "large change" is one which will take some time to finish, during which time other admins should not make changes. This establishes a lock to prevent another =startchange= from being started before =endchange= is called. The message entered is also added to =/etc/motd= to alert any new logins. Call as =endchange= to signal the end of a change begun with =startchange=, and release the lock. Restores =/etc/motd= as well. Call as =logchange= to log a minor change which doesn't need to be guarded by locking. This does not touch =/etc/motd= at all. Can be used while =startchange= is in effect (useful for checkpoint logging). ---++ Discussion Use the =startchange= and =endchange= scripts in =/usr/local/adm=. I was going to include Mike Ledoux's instructional message in here, but I can't find it in the archives! -- Main.BruceDawson - 23 Feb 2006 That's because I never wrote one. I described a method that I thought would work to control access, then quickly wrote the scripts to do it and sent them up to the server. Usage is simple, really, just run =startchange= as yourself before making any changes, then run =endchange= when you are done. The scripts will prompt you for a log message (reading from stdin, redirection works fine; or use the =-e= option to fire up a real editor) then do all the magic for you. -- Main.MikeLedoux - 27 Feb 2006 The scripts have been combined into one multi-call script, and some functionlity added. The script and links now live =/usr/local/adm/bin/= with data files in =/usr/local/adm/changes/=. There is a =logchange= script one can run to record notes on a change that didn't need the start/end guarding. See the source for details. -- Main.BenScott - 03 Apr 20 The script keeps getting tweaked to add (creeping) features. I attached the latest version of the =admchange= script to this page, in case others might find it useful. The source is fairly well-commented, with usage instructions at the top. Share and enjoy! -- Main.BenScott - 21 May 2006
Attachments
Attachments
Topic attachments
I
Attachment
History
Action
Size
Date
Who
Comment
ext
admchange
r1
manage
8.3 K
2006-05-20 - 21:18
BenScott
administrator change control script
E
dit
|
A
ttach
|
Watch
|
P
rint version
|
H
istory
: r6
<
r5
<
r4
<
r3
<
r2
|
B
acklinks
|
V
iew topic
|
Ra
w
edit
|
M
ore topic actions
Topic revision: r6 - 2023-12-13
-
BenScott
Org
Log In
or
Register
Org Web
Create New Topic
Index (Page List)
Search this Web
Recent Changes
RSS Feed
Site Tools
Search site
Site changes
Webs
GNHLUG
Main
Org
TWiki
Contact GNHLUG
All content is Copyright © 1999-2025 by, and the property of, the contributing authors.
Questions, comments, or concerns?
Contact GNHLUG
.
All use of this site subject to our
Legal Notice
(includes Terms of Service).