📜 ⬆️ ⬇️

Linux basics from the founder of Gentoo. Part 3 (1/4): Documentation

The first passage of the third part of a series of guides for beginners. Almost everything you need to know to find reference information on your system. In short, RTFM and do not ask stupid questions.



Navigating Linux basics from the founder of Gentoo:

Part I: 1 , 2 , 3 , 4

Part II: 1 , 2 , 3 , 4 , 5

Part III
  1. Documentation (introduction)
  2. Access rights model
  3. Account Management
  4. Setting up the environment (totals and links)



Foreword


About this guide


Meet Administration for Continuers, the third of four manuals created to prepare for the Linux Professional Institute's 101 exam (2nd edition). This part is ideal for those who want to improve their knowledge of the fundamentals of administering Linux. We will cover a range of topics, including system and Internet documentation, the Linux permissions model, user account management, and the setup of the login environment.



If you are new to Linux, we recommend starting with Parts 1 and 2 . For some, most of the information presented in the tutorial will be new, but more experienced users can use it to hone their Linux administration skills.


')

At the end of the series of these guides (there are eight of them preparing for the LPI 101 and 102 exams), you will have all the knowledge you need to become a Linux system administrator, and you will also be ready to receive a Level 1 LPIC certificate from the institute Linux Professional.



System and Network Documentation


Types of Linux system documentation


There are three main sources of documentation in Linux systems: manual pages (mana), info pages and documentation supplied with applications in / usr / share / doc . In this section, we will look at each of these sources, before contacting the outside world for more information.



Manual pages


Manual pages, or the “man (from the English manual manual) pages,” man pages, then simply mana is a classic form of UNIX and Linux reference documentation. Ideally, you can find man for any command, configuration file or library. However, in practice, Linux is free software and some manual pages have not been written or are out of date. However, mana remains the first place to go for help.



To access mana, just type man and then your request. A pager program (viewer, usually less or more) will be launched with reference information. To close it, press the q key. For example, to view information about the ls command, enter:



$ man ls

Knowing the structure of mana will help you quickly navigate to the information you need. Usually, you will find the following sections in mana:


NAMEName and one line command description
SYNOPSIS (REVIEW)Short review
DESCRIPTION (DESCRIPTION)In-depth description of the functional team
EXAMPLES (EXAMPLES)Usage tips
SEE ALSO (SEE ALSO)Related topics (usually also man pages)

Sections of man pages


Files containing man information are stored in / usr / share / man (or in / usr / man on some older systems). In this directory you will find the manual pages, organized in the following sections:


man1User programs
man2System calls
man3Library functions
man4Special files
man5File formats
man6Games
man7Other

Numerous man pages


Some topics exist in more than one section. To demonstrate this, use the whatis command, which shows the available mana on the topic:



 $ whatis printf 
printf (1) - format and print data printf (3) - formatted output conversion

In this case, the default printf man will refer to the page in section 1 (User programs). If we write a program in C, we are probably more interested in the page from section 3 (Library functions). You can call the mane of the required section by specifying it on the command line, so to call printf (3) we will enter:



$ man 3 printf

Search for the desired mana


It is sometimes difficult to find the right man page for a given topic. In this case, you can use man -k to search through the NAME sections of the man pages. But be careful, as you search by substring and something, like man -k ls, will give out a lot of things! Here is an example of using a lookup:



 $ man -k whatis 
apropos (1) - search the whatis database for strings makewhatis (8) - Create the whatis database whatis (1) - search the whatis database for complete words

All about “apropos”


The previous example is not random. First, the apropos command is fully consistent with the man -k command. (Actually, I will even reveal a little secret to you. When you run man -k, apropos actually starts behind the scenes). Secondly, there is the makewhatis command, which scans all pages on your Linux system and creates a database for whatis and apropos. Usually it runs periodically from under the root in order to keep the database up to date:



# makewhatis

For more information about the “man” team and its friends, you should start by exploring its own man page:



$ man man

MANPATH


By default, the man program will look for man pages in / usr / share / man , / usr / local / man , / usr / X11R6 / man , and perhaps in / opt / man . You may want to add a new item in this search path. To do this, simply open /etc/man.conf in a text editor and add a line like this:



MANPATH /opt/man

From now on, manual pages in the / opt / man / man * directories will also be found. Remember that you need to run makewhatis to add new mana to the whatis database.



GNU info


One of the limitations of manual pages is that they don’t support hypertext, so you won’t be able to simply move from one manual to another. The GNU guys saw this flaw and entered a different documentation format: info pages. Many of the GNU programs come with extended documentation in the format of info pages. You can start reading the info pages with the info command:



$ info

A simple call to the info command will list the available info pages on your system. You can navigate through it using arrows, follow links (which are marked with an asterisk) with the Enter key and exit by pressing q. Navigation is based on Emacs, so if you are familiar with this editor, it will be easy for you to get comfortable. To get familiar with Emacs, see the developerWorks: Living in Emacs tutorial.



You can also specify the desired info page on the command line:



$ info diff

For more information on using the info page viewer, try reading its own info page. You can navigate through the document simply by using a few keys that I already mentioned:



$ info info

/ usr / share / doc


There is another source of help on your Linux system. Most programs come with additional documentation in other formats, such as: plain text files, PDF, PostScript, HTML. Look in the usr / share / doc directory (or / usr / doc on older systems). You will find a long list of directories, each of which comes with a specific application on your system. A search on this documentation can lead you to very valuable information that is not available in man pages or info pages, such as tutorials or additional technical documentation. A quick glance indicates that there is a lot of reading material here:



$ cd /usr/share/doc
$ find . -type f | wc -l
7582


Fuw! Your homework for this evening will read only half (3791) of these documents. Remember, there will be a poll tomorrow. ;-)



Linux Documentation Project


In addition to the system documentation, there are a number of excellent Linux resources on the Internet. The Linux Documentation Project (LDP) is a group of volunteers who compile a complete set of free Linux documentation. This project exists to assemble various parts of the Linux documentation in a specific place where it will be easy to find and use.



LDP Overview


LDP consists of the following sections:

If you are not sure which section to watch, you can take advantage of the rich search capabilities that allow you to find everything that is relevant.



LDP additionally provides access to a list of links and resources, such as Linux Gazette and Linux Weekly News , as well as mailing lists and news archives.



Mailing Lists


Mailing lists are probably the most important means of interaction between Linux developers. Often projects are developed by participants living at a great distance from each other, perhaps even on opposite sides of the globe. Mailing lists represent an interaction method in which each project developer can contact everyone else and discuss together via e-mail. One of the most famous developers mailing lists is the Linux Kernel Mailing List (Linux kernel mailing list).



More about mailing lists


In addition to developing, mailing lists can provide an opportunity to ask questions and receive answers from knowledgeable developers or even other users. For example, individual distributions often provide a mailing list for beginners. You can check on the site of your distribution about what mailing lists it offers.



If you take the time to read the LKML FAQ from the link above, you may have noticed that subscribers to mailing lists are often unfriendly to frequently repeated questions. It is always wise to search the mailing list archives before asking your question. There are chances that it will save your time too!



Newsgroups


Newsgroups (English newsgroups) on the Internet are similar to mailing lists, but are based on a different protocol called Network News Transfer Protocol (NNTP), which translates to Network News Transfer Protocol, and not on email exchange. To be able to communicate, you have to install an NTTP client, such as slrn or pan. The main advantage is the fact that you can take part in the discussion when you need it, and not constantly watch how it breaks into your mailbox :-)



Of greatest interest are newsgroups starting with comp.os.linux. You can view the list of groups on the LDP website.

Vendor and other sites


Sites of various Linux distributions often provide updated documentation, installation instructions, hardware compatibility or incompatibility information, and other support tools, such as searching the knowledge base. For example:

Hardware and software vendors


In recent years, many device and software vendors have added Linux support for their products. On their sites you can find information about what hardware supports Linux, find software development tools, source codes, download Linux drivers for a specific device, and also find out about all sorts of other Linux projects. For example:


The translation was performed by collective intelligence using notabenoid.com . Thanks to habravchanam (in alf. Order): DMinsky , habrrich and kindacute (on habra?). Their karma deserves advantages. If you have not mentioned anyone, write in a personal or in the comments.

Continued ...



About the authors


Daniel Robbins


Daniel Robbins is the founder of the Gentoo community and the creator of the Gentoo Linux operating system. Daniel lives in New Mexico with his wife, Mary, and two energetic daughters. He is also the founder and head of Funtoo , has written many technical articles for IBM developerWorks , Intel Developer Services and the C / C ++ Users Journal.



Chris Houser


Chris Hauser was a UNIX supporter since 1994 when he joined the team of administrators at Taylor University (Indiana, USA), where he received a bachelor's degree in computer science and mathematics. After that, he worked in many areas, including web applications, video editing, drivers for UNIX, and cryptographic protection. Currently working in Sentry Data Systems. Chris also contributed to many free projects, such as Gentoo Linux and Clojure, co-authored The Joy of Clojure .



Aron griffis


Airon Griffis lives in Boston, where he spent the last decade working with Hewlett-Packard on projects such as UNIX network drivers for Tru64, Linux security certification, Xen and KVM virtualization, and most recently, the HP ePrint platform. In his spare time, Airon prefers to ponder over the problems of programming while riding his bike, juggling bits, or cheering on the Boston Red Baseball team.

Source: https://habr.com/ru/post/108764/


All Articles