<> ||<
><> || = Ubuntu Server Guide - Ubuntu 16.04 = ''The guide is published for LTS releases only. Unofficial guides of the current branch will occasionally be made available online. All development and management procedures will remain on the traditional/stable 6-month cycle. Focus/branch of development will change on the prerogative of the committers.'' {{{#!wiki important '''Contributors must use the latest Ubuntu 16.04 release to exercise their additions/fixes to the guide.''' If you really want to add something only found in a newer release please go ahead, but make this clear in your merge proposal comments. Your changes will be included in the next LTS release (or in an unofficial snapshot). }}} The [[https://launchpad.net/serverguide | Ubuntu Server Guide project]] is part of System Documentation and, as such, everything that has been written on that topic applies equally here. Follow the above links to understand the process of contributing to Ubuntu System Documentation. The purpose of this page is to organize contributions made to the Server Guide for the upcoming Ubuntu release. It is also cool to see what other people are up to. Subscribe to this page! In addition to this focus wiki page, there is a focus Launchpad team replete with a mailing list. If you are committed to the improvement of the Guide please do become a member of the [[https://launchpad.net/~serverguide-helpers | Ubuntu Server Guide Helpers]] team! Here are ways to contribute, in order of priority: 1. '''Review''' on a [[https://wiki.ubuntu.com/DocumentationTeam/TechReview | technical]] and [[https://wiki.ubuntu.com/DocumentationTeam/StyleGuide | style]] level. 1. '''Correct''' (and/or Triage) a filed bug. [[https://bugs.launchpad.net/serverguide | Ubuntu Server Guide Bugs]] 1. '''Extend''' by adding a significant amount of new information (possibly new sub-chapter or an entirely new chapter). Let [[https://launchpad.net/%7Epetermatulis/+contactuser | me]] know of your intentions. 1. '''Propose''' ideas for improvement (new topics, re-organization). There is a Discussion section at the bottom. Useful links: * Current release guide: [[https://help.ubuntu.com/lts/serverguide/index.html | Ubuntu Server Guide - lts]] == Kickstart == Below are sample terminal commands for installing software packages used by the documentation team, downloading and editing the current documentation branch, then pushing your edits to Launchpad. '''1. Install the necessary software:''' {{{ $ sudo apt install bzr docbook docbook-xsl xsltproc libxml2-utils yelp-tools yelp-xsl fop gnome-doc-utils make gettext }}} If you have not already done so, create your SSH key, set up Launchpad, and configure Bazaar. Follow the instructions in sections 3.1, 4, and 5 [[https://wiki.ubuntu.com/DocumentationTeam/SystemDocumentation/UbuntuDesktopGuide | here]]. '''Make a directory to store the current documentation branch and change into that directory:''' {{{ $ mkdir ~/sguide-1604 $ cd ~/sguide-1604 }}} '''Download the current documentation branch into a directory 'yourbranchname' and change into that directory:''' {{{ $ bzr branch lp:serverguide yourbranchname $ cd yourbranchname }}} '''Validate the serverguide.xml file to check for errors:''' {{{ $ scripts/validate.sh serverguide/C/serverguide.xml }}} Stop if the file does not validate. Some warnings (e.g. "Column positions are not aligned") may be benign. Bring up any errors in the [[https://lists.ubuntu.com/mailman/listinfo/ubuntu-doc | ubuntu-doc]] mailing list or try to correct the errors yourself. '''To view the available xml files for editing:''' {{{ $ ls serverguide/C/ }}} '''2. Review and edit the documentation a little bit at a time. For example, to edit the network-auth.xml file with gedit, run:''' {{{ $ gedit serverguide/C/network-auth.xml }}} Users without a GUI will need to use CLI editors like vi or nano for editing. Save and close the file. '''To check your edits, first make the html files from the xml files. This will create the html files in the directory yourbanchname/build/serverguide/C/):''' {{{ $ make serverguide-html }}} '''Then view and verify the changes in your browser:''' {{{ $ firefox build/serverguide/C/network-authentication.html }}} '''Validate the serverguide.xml file to check for any errors:''' {{{ $ scripts/validate.sh serverguide/C/serverguide.xml }}} '''3. Commit your changes and push the branch to your Launchpad account:''' {{{ $ bzr commit -m 'Your brief review note here.' $ bzr push lp:~yourlaunchpadid/serverguide/yourbranchname }}} Variations for the commit lines include specifying the related Launchpad bug report, if one exists: {{{ $ bzr commit --fixes lp: -m 'Your brief review note' }}} And specifying multiple bug reports, if appropriate: {{{ $ bzr commit --fixes lp: --fixes lp: --fixes lp: -m 'Your brief review note' }}} Note: For any subsequent pushes, "yourbranchname" needs to be a unique string: {{{ $ bzr push lp:~yourlaunchpadid/serverguide/yoursecondbranchname $ bzr push lp:~yourlaunchpadid/serverguide/yourthirdbranchname }}} '''4. Submit a proposal to merge the modifications with the main branch:''' Log in to Launchpad and click "Code". Click the appropriate branch, then click "Propose for merging". == Alternative help method == Although the above is the preferred method for contributing, if you find it too laborious or you just can't make it work an alternative route is to [[https://bugs.launchpad.net/serverguide/+filebug | create a bug]] about what you think is wrong in the guide and include some replacement text. Of course, if you are working already from an existing bug then just add the text in a new bug comment. If you have multiple bugs that affect the same sub-chapter then create a single bug for all of them. == Instructions affected by a software bug == If there is a software bug affecting the instructions you're reviewing you can add an admonishment:<
><
> {{attachment:bug_affecting_sg_instructions.png}} Below is sample code to achieve the above. Replace BUG_URL and BUG_NUMBER with the appropriate values: {{{ This section is plagued by a bug (LP #BUG_NUMBER) and instructions may not work as intended. }}} Then add a note in the comment section in the below table: ''Affected by LP #BUG_NUMBER - Update required once bug is fixed.'' == Contribution table == || Priorities || ||Medium priority || ||High priority || ||Critical priority (will be removed this cycle unless reviewed) || Using the following symbols... || {o} || TO DO || || (./) || IN PROGRESS || || /!\ || MERGE PROPOSED || || {OK} || MERGE ACCEPTED, I'M DONE! || || <:( || MERGE REJECTED || || B) || NOTHING TO DO, IT'S GOOD AS IS || || {i} || COMMENT || ...let us know what you want to do, where you're at, and any comments you may have. While ''In Progress'', update the '''% Complete''' column regularly. * [[https://code.launchpad.net/%7Eubuntu-core-doc/serverguide/trunk/+activereviews | Active code reviews for this cycle]] * [[https://code.launchpad.net/serverguide/+activereviews | All active code reviews]] || '''Sub-chapter''' || '''Your name''' || '''Your Launchpad ID''' || '''Review''' || '''Extension''' || '''Comments''' || '''% Complete''' || || 1 - Introduction || || 1.1 -- Support || || || {o} || || || || || 2 - Installation || || 2.1 -- Preparing to Install || || || {o} || || || || || 2.2 -- Installing from CD || || || {o} || || || || || 2.3 -- Upgrading || || || {o} || || || || || 2.4 -- Advanced Installation || || || {o} || || || || || 2.5 -- Kernel Crash Dumps || || || {o} || || || || || 3 - Package Management || || 3.1 -- Introduction || || || {o} || || || || || 3.2 -- dpkg || || || {o} || || || || || 3.3 -- Apt-Get || || || {o} || || || || || 3.4 -- Aptitude || || || {o} || || || || || 3.5 -- Automatic Updates || || || {o} || || || || || 3.6 -- Configuration || || || {o} || || || || || 3.7 -- References || || || {o} || || || || || 4 - Networking || || 4.1 -- Network Configuration || || || {o} || || || || || 4.2 -- TCP/IP || || || {o} || || || || || 4.3 -- Dynamic Host Configuration Protocol (DHCP) || || || {o} || || || || || 4.4 -- Time Synchronisation with NTP || || || {o} || || || || || 4.5 -- Data Plane Development Kit || Christian Ehrhardt || || {OK} || Significant Revision || || [[https://code.launchpad.net/~paelzer/serverguide/serverguide-16.04-extend-by-dpdk/+merge/292803 | MP 292803]] || || 5 - Storage - THIS IS THE INTENDED STRUCTURE - NEEDS DOING || || 5.1 -- LVM || || || {o} || || || || || 5.2 -- Software RAID (md) || || || {o} || || || || || 5.3 -- DM Multipath || || || {o} || || || || || 5.4 -- Ceph || || || {o} || || || || || 6 - Remote Administration || || 6.1 -- OpenSSH Server || || || {o} || || || || || 6.2 -- Puppet || || || {o} || || || || || 6.3 -- Zentyal || Ted Cox || || {OK} || || || || || 7 - Network Authentication || || 7.1 -- OpenLDAP Server || || || {o} || || || || || 7.2 -- Samba and LDAP || Nish Aravamudan || LaunchpadHome:nacc || /!\ || || || || || 7.3 -- Kerberos || || || {o} || || || || || 7.4 -- Kerberos and LDAP || || || {o} || || || || || 7.5 -- SSSD and Active Directory || Mark Thomas || LaunchpadHome:markthomas || || {OK} || || || || 8 - Domain Name Service (DNS) || || 8.1 -- Installation || || || {o} || || || || || 8.2 -- Configuration || || || {o} || || || || || 8.3 -- Troubleshooting || || || {o} || || || || || 8.4 -- References || || || {o} || || || || || 9 - Security || || 9.1 -- User Management || || || {o} || || || || || 9.2 -- Console Security || Ted Cox || || {OK} || || || || || 9.3 -- Firewall || || || {o} || || || || || 9.4 -- AppArmor || || || {o} || || || Test to confirm bug warning can be removed; [[https://bugs.launchpad.net/ubuntu/+source/apparmor/+bug/1304134 | LP 1304134]] is fixed || || 9.5 -- Certificates || || || {o} || || || || || 9.6 -- eCryptfs || || || {o} || || || || || 10 - Monitoring || || 10.1 -- Overview || || || {o} || || || || || 10.2 -- Nagios || || || {o} || || || || || 10.3 -- Munin || || || {o} || || || || || 11 - Web Servers || || 11.1 -- HTTPD - Apache2 Web Server || || || {o} || || || || || 11.2 -- PHP5 - Scripting Language || Nish Aravamudan || LaunchpadHome:nacc || {OK} || || || || || 11.3 -- Squid - Proxy Server || || || {o} || || || || || 11.4 -- Ruby on Rails || || || {o} || || || || || 11.5 -- Apache Tomcat || || || {o} || || || || || 12 - Databases || || 12.1 -- MySQL || || || {o} || || || || || 12.2 -- PostgreSQL || || || {o} || || || || || 13 - LAMP Applications || || 13.1 -- Overview || || || {o} || || || || || 13.2 -- Moin Moin || || || {o} || || || || || 13.3 -- !MediaWiki || Doug Smythies || LaunchpadHome:dsmythies || {OK} || || || Delete. [[https://bugs.launchpad.net/serverguide/+bug/1598717 | LP 1598717]] || || 13.4 -- phpMyAdmin || || || {o} || || || || || 13.5 -- !WordPress || || || {o} || || || || || 14 - File Servers || || 14.1 -- FTP Server || || || {o} || || || || || 14.2 -- Network File System (NFS) || || || {o} || || || || || 14.3 -- iSCSI Initiator || || || {o} || || || || || 14.4 -- CUPS - Print Server || || || {o} || || || || || 15 - Email Services || || 15.1 -- Postfix || || || {o} || || || || || 15.2 -- Exim4 || || || {o} || || || || || 15.3 -- Dovecot Server || || || {o} || || || || || 15.4 -- Mailman || || || {o} || || || || || 15.5 -- Mail Filtering || || || {o} || || || || || 16 - Chat Applications || || 16.1 -- Overview || || || {o} || || || || || 16.2 -- IRC Server || || || {o} || || || || || 16.3 -- Jabber Instant Messaging Server || || || {o} || || || || || 17 - Version Control Systems || || 17.1 -- Bazaar || || || {o} || || || || || 17.2 -- Git || || || {o} || || || || || 17.3 -- Subversion || || || {o} || || || || || 17.4 -- References ||Ian Nicholson|| imnichol || {OK} || || ||100%|| || 18 - Samba || || 18.1 -- Introduction || Nish Aravamudan || LaunchpadHome:nacc || /!\ || || || || || 18.2 -- File Server || Nish Aravamudan || LaunchpadHome:nacc || /!\ || || || || || 18.3 -- Print Server || Nish Aravamudan || LaunchpadHome:nacc || /!\ || || || || || 18.4 -- Securing File and Print Server || Nish Aravamudan || LaunchpadHome:nacc || /!\ || || || || || 18.5 -- As a Domain Controller || Nish Aravamudan || LaunchpadHome:nacc || /!\ || || || || || 18.6 -- Active Directory Integration || Nish Aravamudan || LaunchpadHome:nacc || /!\ || || || || || 19 - Backups || || 19.1 -- Shell Scripts || || || {o} || || || || || 19.2 -- Archive Rotation || || || {o} || || || || || 19.3 -- Bacula || || || {o} || || || || || 20 - Virtualization || || 20.1 -- libvirt || || || {o} || || || || || 20.2 -- Cloud Images and uvtool || || || {o} || || || || || 20.4 -- LXD || Serge Hallyn || [[LaunchpadHome:serge-hallyn]] || {OK} || NEW || [[https://git.launchpad.net/~serge-hallyn/+git/lxdserverguide/tree/lxd.md | Markdown version]] || [[https://code.launchpad.net/~tsimonq2/serverguide/lxd/+merge/290540 | MP 290540]] || || 20.5 -- LXC || || || {o} || || || || || 21 - Control Groups || || 21.1 -- Overview || || || {o} || || || || || 21.2 -- Filesystem || || || {o} || || || || || 21.3 -- Delegation || || || {o} || || || || || 21.4 -- Manager || || || {o} || || || || || 21.5 -- Resources || || || {o} || || || || || 22 - Clustering || || 22.1 -- DRBD || || || {o} || || || || || 23 - VPN || || 23.1 -- OpenVPN || || || {o} || || || || || 24 - Other Useful Applications || || 24.1 -- pam_motd || || || {o} || || || || || 24.2 -- etckeeper || Peter Matulis || [[LaunchpadHome:petermatulis]] || {OK} || || [[https://code.launchpad.net/~petermatulis/serverguide/1410-other_useful_applications-etckeeper+byobu/+merge/243748 | MP 243748]] || || || 24.3 -- Byobu || Peter Matulis || [[LaunchpadHome:petermatulis]] || || || || 24.4 -- References || Peter Matulis || [[LaunchpadHome:petermatulis]] || {OK} || || [[https://code.launchpad.net/~petermatulis/serverguide/1410-other_useful_applications-refactor_resources/+merge/243749 | MP 243749]] || || || A - Appendix || || A.1 -- Reporting Bugs in Ubuntu Server Edition || Peter Matulis || [[LaunchpadHome:petermatulis]] || {OK} || || [[https://code.launchpad.net/~petermatulis/serverguide/review_reporting-bugs/+merge/227398 | MP 227398]] || || == Getting help == Here are the best ways to get answers to any questions you may have: * The [[https://lists.ubuntu.com/mailman/listinfo/ubuntu-doc | Ubuntu Doc mailing list]] * The [[https://lists.ubuntu.com/mailman/listinfo/ubuntu-server | Ubuntu Server mailing list]] * The Driver of this project, [[https://launchpad.net/%7Epetermatulis/+contactuser | Peter Matulis]]. == Deadline == No new deadline exists, please check this page periodically for updates. See [[https://wiki.ubuntu.com/DocumentationStringFreeze | DocumentationStringFreeze]] and [[https://wiki.ubuntu.com/TrustyTahr/ReleaseSchedule | TrustyTahrReleaseSchedule]]. == Discussion == Here you can add your thoughts on * Re-organization of topics * Addition of missing topics * Samba chapter needs to be re-written for Samba4 * Upstart missing * Ceph missing * Anything else Notes: * sub-section 3.1.4 is about named-checkzone. There should also be a 3.1.5 about named-checkconf. * The contribution table can be replaced with a link to another page containing all the information. This would avoid the user having to scroll down a lot in order to reach the next topic.