200 likes | 384 Views
CIT 470: Advanced Network and System Administration. Documentation. Topics. Why document How to document External documentation Man pages. Why Document. Teaches SAs how to do critical procedures So you can go on vacation. So you can get promoted. Self-help desk
E N D
CIT 470: Advanced Network and System Administration Documentation CIT 470: Advanced Network and System Administration
Topics • Why document • How to document • External documentation • Man pages CIT 470: Advanced Network and System Administration
Why Document Teaches SAs how to do critical procedures • So you can go on vacation. • So you can get promoted. Self-help desk • Let users solve their problems quickly. • Requires less time from SAs. CIT 470: Advanced Network and System Administration
Forms of Documentation Text files and web pages • Generic free form text, READMEs, etc. Man pages • UNIX manual pages for commands, configs, etc. FAQs • Frequently asked question lists. Reference Lists • Vendors w/ contact info, serial numbers, employee dir Checklists and HOWTOs • Step by step description of a procedure. • Ex: new hire, installs, OS hardening CIT 470: Advanced Network and System Administration
Documentation Template Title: • Simple, short description. Metadata: • Author with contact information • Revision date, history What: • Description of what the document tells you to do. How • Step by step description of procedure. • Indicate why you’re doing steps where appropriate. CIT 470: Advanced Network and System Administration
Sources for Documentation Command history • Use script command before starting. • Use history command after finishing. Screen shots • Print screen • import command to grab windows. Email • Email conversations may describe commands. • Don’t use as documentation; just as a source. Request Tickets • Problem solutions often documented in notes. CIT 470: Advanced Network and System Administration
Documentation Storage Shared directory • README to describe rules and policies. • Subdirectories for topics. • Text or HTML files in directories. Web site • Directory shared via web server. Content Management System • Web-based publishing and collaboration tool. • Provides access control, versioning, easy markup. CIT 470: Advanced Network and System Administration
Wiki Collaborative web-editing software. • Invented by Ward Cunningham in 1995. • Wiki is a Hawaiian word for fast. Features • Edit pages within web browser. • Simplified markup language. • Version control of pages. • Access control limits who can read and/or edit. CIT 470: Advanced Network and System Administration
Version Control • Allows tracking of history of changes. • Can compare different versions. • Can revert to older versions in case of bad edits or spam. CIT 470: Advanced Network and System Administration
Search Text-based storage • grep can search any text files. • Indexing programs can provide faster searches for large repositories of text or binary data. Binary storage • Binary document formats, like those used by word procs, are much harder to search. • Often restricted to using creator application’s search capabilities. Web search programs can be installed for web. • Spider program crawls site to build index. • Search program accesses index to find search terms. CIT 470: Advanced Network and System Administration
Off-site Links Use off-site links to provide documentation. • Many references, howtos, FAQs outside org. Use anonymizing redirection • HTTP Referer header will reveal URL from internal site, which may leak project and people names and other information. CIT 470: Advanced Network and System Administration
External Documentation tldp.org: The Linux Documentation Project • Man pages • FAQs • HOWTOs • Guides (online books) howtoforge.com: Many Linux HOWTOs • Mostly OS + server install and configuration. ugu.com: UNIX Guru Universe CIT 470: Advanced Network and System Administration
Man pages Standard online UNIX documentation. • Commands • Configuration files • Programming interfaces Accessible • man pagename • man section pagename • Web-based man pages. Searchable • man –k keyword CIT 470: Advanced Network and System Administration
Man sections • User commands that anyone can use. • System calls (kernel functions.) • Library functions for programmers. • Devices (hardware interfaces in /dev) • File format descriptions (/etc/passwd) • Game, graphics demos. • Miscellaneous (boot, icmp, url, man-pages) • System administration tools for root. CIT 470: Advanced Network and System Administration
whichman Find matching man pages in all sections. • Helps find which section you need. • Uses fuzzy matching algorithm. $ whichman -0 printf /usr/share/man/man1/printf.1.gz /usr/share/man/man3/printf.3.gz $ whichman printf /usr/share/man/man1/printafm.1.gz /usr/share/man/man1/printf.1.gz /usr/share/man/man1/print.1.gz /usr/share/man/man3/print.3ncurses.gz /usr/share/man/man3/snprintf.3.gz /usr/share/man/man3/vdprintf.3.gz /usr/share/man/man3/vsprintf.3.gz /usr/share/man/man3/vfprintf.3.gz /usr/share/man/man3/wprintf.3.gz CIT 470: Advanced Network and System Administration
Man Page Storage Stored under /usr/share/man • Subdirectories for each section. • May include language-specific subdirectories. • MANPATH environment variable is a :-separated list of paths to search for man pages. Man page files • Often compressed with gzip. • File suffix is a number indicating the section. • Written in nroff text-formatting language. CIT 470: Advanced Network and System Administration
Man Page Output LS(1) User Commands LS(1) NAME ls - list directory contents SYNOPSIS ls [OPTION]... [FILE]... DESCRIPTION List information about the FILEs (the current directory by default). Sort entries alphabetically if none of -cftuvSUX nor --sort. Mandatory arguments to long options are mandatory for short options too. -a, --all do not ignore entries starting with . -A, --almost-all do not list implied . and .. CIT 470: Advanced Network and System Administration
nroff code for page .TH LS "1" "June 2006" "ls 5.97" "User Commands" .SH NAME ls \- list directory contents .SH SYNOPSIS .B ls [\fIOPTION\fR]... [\fIFILE\fR]... .SH DESCRIPTION .\" Add any additional description here .PP List information about the FILEs (the current directory by default). Sort entries alphabetically if none of \fB\-cftuvSUX\fR nor \fB\-\-sort\fR. .PP Mandatory arguments to long options are mandatory for short options too. .TP \fB\-a\fR, \fB\-\-all\fR do not ignore entries starting with . .TP \fB\-A\fR, \fB\-\-almost\-all\fR do not list implied . and .. CIT 470: Advanced Network and System Administration
nroff codes Title Header: .TH prog mansect cf lf ch Sections: .SH sectionname • NAME is required. • Most have: SYNOPSIS, DECRIPTION, OPTIONS, FILES, BUGS, AUTHOR, SEE ALSO Paragraphs • .PP: new paragraph • .TP: index text that comes 2 lines after this macro • .NF: pre-formatted text • .”: comment line Fonts • .B: bold (also \fB) • .I: italics (also \fI) • .R: roman (also \fR) CIT 470: Advanced Network and System Administration
References • Mark Burgess, Principles of Network and System Administration, 2nd edition, Wiley, 2004. • Aeleen Frisch, Essential System Administration, 3rd edition, O’Reilly, 2002. • Thomas A. Limoncelli and Christine Hogan, The Practice of System and Network Administration, 2nd edition, Addison-Wesley, 2007. • Evi Nemeth et al, UNIX System Administration Handbook, 3rd edition, Prentice Hall, 2001. CIT 470: Advanced Network and System Administration