summaryrefslogtreecommitdiff
path: root/man/ru
diff options
context:
space:
mode:
authorBalint Reczey <balint.reczey@canonical.com>2019-06-23 22:06:37 +0200
committerBalint Reczey <balint.reczey@canonical.com>2019-06-23 22:06:37 +0200
commitb28d45d2bd2462414b9dbbe38e6c7f3d5f7b462b (patch)
tree4b068e3513ef5c60228cddfcda72be0a31d09b14 /man/ru
parentb0729855e8fb744192a0395ea24673557818172c (diff)
downloadshadow-b28d45d2bd2462414b9dbbe38e6c7f3d5f7b462b.tar.gz
New upstream version 4.7upstream/4.7
Diffstat (limited to 'man/ru')
-rw-r--r--man/ru/Makefile.in756
-rw-r--r--man/ru/man1/chage.1179
-rw-r--r--man/ru/man1/chfn.1154
-rw-r--r--man/ru/man1/chsh.1117
-rw-r--r--man/ru/man1/expiry.175
-rw-r--r--man/ru/man1/gpasswd.1226
-rw-r--r--man/ru/man1/groups.162
-rw-r--r--man/ru/man1/id.160
-rw-r--r--man/ru/man1/login.1480
-rw-r--r--man/ru/man1/newgrp.192
-rw-r--r--man/ru/man1/passwd.1358
-rw-r--r--man/ru/man1/sg.191
-rw-r--r--man/ru/man1/su.1442
-rw-r--r--man/ru/man3/getspnam.31
-rw-r--r--man/ru/man3/shadow.3242
-rw-r--r--man/ru/man5/faillog.565
-rw-r--r--man/ru/man5/gshadow.5101
-rw-r--r--man/ru/man5/limits.5274
-rw-r--r--man/ru/man5/login.access.567
-rw-r--r--man/ru/man5/login.defs.5830
-rw-r--r--man/ru/man5/passwd.5175
-rw-r--r--man/ru/man5/porttime.598
-rw-r--r--man/ru/man5/shadow.5147
-rw-r--r--man/ru/man5/suauth.5145
-rw-r--r--man/ru/man8/chgpasswd.8203
-rw-r--r--man/ru/man8/chpasswd.8205
-rw-r--r--man/ru/man8/faillog.8159
-rw-r--r--man/ru/man8/groupadd.8251
-rw-r--r--man/ru/man8/groupdel.8142
-rw-r--r--man/ru/man8/groupmems.8170
-rw-r--r--man/ru/man8/groupmod.8229
-rw-r--r--man/ru/man8/grpck.8238
-rw-r--r--man/ru/man8/grpconv.81
-rw-r--r--man/ru/man8/grpunconv.81
-rw-r--r--man/ru/man8/lastlog.8132
-rw-r--r--man/ru/man8/logoutd.857
-rw-r--r--man/ru/man8/newusers.8431
-rw-r--r--man/ru/man8/nologin.851
-rw-r--r--man/ru/man8/pwck.8316
-rw-r--r--man/ru/man8/pwconv.8192
-rw-r--r--man/ru/man8/pwunconv.81
-rw-r--r--man/ru/man8/sulogin.8114
-rw-r--r--man/ru/man8/useradd.8758
-rw-r--r--man/ru/man8/userdel.8303
-rw-r--r--man/ru/man8/usermod.8455
-rw-r--r--man/ru/man8/vigr.81
-rw-r--r--man/ru/man8/vipw.8132
47 files changed, 9779 insertions, 0 deletions
diff --git a/man/ru/Makefile.in b/man/ru/Makefile.in
new file mode 100644
index 00000000..e6bf8c1d
--- /dev/null
+++ b/man/ru/Makefile.in
@@ -0,0 +1,756 @@
+# Makefile.in generated by automake 1.15.1 from Makefile.am.
+# @configure_input@
+
+# Copyright (C) 1994-2017 Free Software Foundation, Inc.
+
+# This Makefile.in is free software; the Free Software Foundation
+# gives unlimited permission to copy and/or distribute it,
+# with or without modifications, as long as this notice is preserved.
+
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY, to the extent permitted by law; without
+# even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+# PARTICULAR PURPOSE.
+
+@SET_MAKE@
+VPATH = @srcdir@
+am__is_gnu_make = { \
+ if test -z '$(MAKELEVEL)'; then \
+ false; \
+ elif test -n '$(MAKE_HOST)'; then \
+ true; \
+ elif test -n '$(MAKE_VERSION)' && test -n '$(CURDIR)'; then \
+ true; \
+ else \
+ false; \
+ fi; \
+}
+am__make_running_with_option = \
+ case $${target_option-} in \
+ ?) ;; \
+ *) echo "am__make_running_with_option: internal error: invalid" \
+ "target option '$${target_option-}' specified" >&2; \
+ exit 1;; \
+ esac; \
+ has_opt=no; \
+ sane_makeflags=$$MAKEFLAGS; \
+ if $(am__is_gnu_make); then \
+ sane_makeflags=$$MFLAGS; \
+ else \
+ case $$MAKEFLAGS in \
+ *\\[\ \ ]*) \
+ bs=\\; \
+ sane_makeflags=`printf '%s\n' "$$MAKEFLAGS" \
+ | sed "s/$$bs$$bs[$$bs $$bs ]*//g"`;; \
+ esac; \
+ fi; \
+ skip_next=no; \
+ strip_trailopt () \
+ { \
+ flg=`printf '%s\n' "$$flg" | sed "s/$$1.*$$//"`; \
+ }; \
+ for flg in $$sane_makeflags; do \
+ test $$skip_next = yes && { skip_next=no; continue; }; \
+ case $$flg in \
+ *=*|--*) continue;; \
+ -*I) strip_trailopt 'I'; skip_next=yes;; \
+ -*I?*) strip_trailopt 'I';; \
+ -*O) strip_trailopt 'O'; skip_next=yes;; \
+ -*O?*) strip_trailopt 'O';; \
+ -*l) strip_trailopt 'l'; skip_next=yes;; \
+ -*l?*) strip_trailopt 'l';; \
+ -[dEDm]) skip_next=yes;; \
+ -[JT]) skip_next=yes;; \
+ esac; \
+ case $$flg in \
+ *$$target_option*) has_opt=yes; break;; \
+ esac; \
+ done; \
+ test $$has_opt = yes
+am__make_dryrun = (target_option=n; $(am__make_running_with_option))
+am__make_keepgoing = (target_option=k; $(am__make_running_with_option))
+pkgdatadir = $(datadir)/@PACKAGE@
+pkgincludedir = $(includedir)/@PACKAGE@
+pkglibdir = $(libdir)/@PACKAGE@
+pkglibexecdir = $(libexecdir)/@PACKAGE@
+am__cd = CDPATH="$${ZSH_VERSION+.}$(PATH_SEPARATOR)" && cd
+install_sh_DATA = $(install_sh) -c -m 644
+install_sh_PROGRAM = $(install_sh) -c
+install_sh_SCRIPT = $(install_sh) -c
+INSTALL_HEADER = $(INSTALL_DATA)
+transform = $(program_transform_name)
+NORMAL_INSTALL = :
+PRE_INSTALL = :
+POST_INSTALL = :
+NORMAL_UNINSTALL = :
+PRE_UNINSTALL = :
+POST_UNINSTALL = :
+build_triplet = @build@
+host_triplet = @host@
+@USE_PAM_FALSE@am__append_1 = $(man_nopam)
+@USE_PAM_TRUE@am__append_2 = $(man_nopam)
+subdir = man/ru
+ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
+am__aclocal_m4_deps = $(top_srcdir)/acinclude.m4 \
+ $(top_srcdir)/configure.ac
+am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
+ $(ACLOCAL_M4)
+DIST_COMMON = $(srcdir)/Makefile.am $(am__DIST_COMMON)
+mkinstalldirs = $(install_sh) -d
+CONFIG_HEADER = $(top_builddir)/config.h
+CONFIG_CLEAN_FILES =
+CONFIG_CLEAN_VPATH_FILES =
+AM_V_P = $(am__v_P_@AM_V@)
+am__v_P_ = $(am__v_P_@AM_DEFAULT_V@)
+am__v_P_0 = false
+am__v_P_1 = :
+AM_V_GEN = $(am__v_GEN_@AM_V@)
+am__v_GEN_ = $(am__v_GEN_@AM_DEFAULT_V@)
+am__v_GEN_0 = @echo " GEN " $@;
+am__v_GEN_1 =
+AM_V_at = $(am__v_at_@AM_V@)
+am__v_at_ = $(am__v_at_@AM_DEFAULT_V@)
+am__v_at_0 = @
+am__v_at_1 =
+SOURCES =
+DIST_SOURCES =
+am__can_run_installinfo = \
+ case $$AM_UPDATE_INFO_DIR in \
+ n|no|NO) false;; \
+ *) (install-info --version) >/dev/null 2>&1;; \
+ esac
+am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
+am__vpath_adj = case $$p in \
+ $(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
+ *) f=$$p;; \
+ esac;
+am__strip_dir = f=`echo $$p | sed -e 's|^.*/||'`;
+am__install_max = 40
+am__nobase_strip_setup = \
+ srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*|]/\\\\&/g'`
+am__nobase_strip = \
+ for p in $$list; do echo "$$p"; done | sed -e "s|$$srcdirstrip/||"
+am__nobase_list = $(am__nobase_strip_setup); \
+ for p in $$list; do echo "$$p $$p"; done | \
+ sed "s| $$srcdirstrip/| |;"' / .*\//!s/ .*/ ./; s,\( .*\)/[^/]*$$,\1,' | \
+ $(AWK) 'BEGIN { files["."] = "" } { files[$$2] = files[$$2] " " $$1; \
+ if (++n[$$2] == $(am__install_max)) \
+ { print $$2, files[$$2]; n[$$2] = 0; files[$$2] = "" } } \
+ END { for (dir in files) print dir, files[dir] }'
+am__base_list = \
+ sed '$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;$$!N;s/\n/ /g' | \
+ sed '$$!N;$$!N;$$!N;$$!N;s/\n/ /g'
+am__uninstall_files_from_dir = { \
+ test -z "$$files" \
+ || { test ! -d "$$dir" && test ! -f "$$dir" && test ! -r "$$dir"; } \
+ || { echo " ( cd '$$dir' && rm -f" $$files ")"; \
+ $(am__cd) "$$dir" && rm -f $$files; }; \
+ }
+man1dir = $(mandir)/man1
+am__installdirs = "$(DESTDIR)$(man1dir)" "$(DESTDIR)$(man3dir)" \
+ "$(DESTDIR)$(man5dir)" "$(DESTDIR)$(man8dir)"
+man3dir = $(mandir)/man3
+man5dir = $(mandir)/man5
+man8dir = $(mandir)/man8
+NROFF = nroff
+MANS = $(man_MANS)
+am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP)
+am__DIST_COMMON = $(srcdir)/../generate_mans.mak \
+ $(srcdir)/../generate_translations.mak $(srcdir)/Makefile.in
+DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
+ACLOCAL = @ACLOCAL@
+AMTAR = @AMTAR@
+AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
+AR = @AR@
+AUTOCONF = @AUTOCONF@
+AUTOHEADER = @AUTOHEADER@
+AUTOMAKE = @AUTOMAKE@
+AWK = @AWK@
+CC = @CC@
+CCDEPMODE = @CCDEPMODE@
+CFLAGS = @CFLAGS@
+CPP = @CPP@
+CPPFLAGS = @CPPFLAGS@
+CYGPATH_W = @CYGPATH_W@
+DEFS = @DEFS@
+DEPDIR = @DEPDIR@
+DLLTOOL = @DLLTOOL@
+DSYMUTIL = @DSYMUTIL@
+DUMPBIN = @DUMPBIN@
+ECHO_C = @ECHO_C@
+ECHO_N = @ECHO_N@
+ECHO_T = @ECHO_T@
+EGREP = @EGREP@
+EXEEXT = @EXEEXT@
+FGREP = @FGREP@
+GETTEXT_MACRO_VERSION = @GETTEXT_MACRO_VERSION@
+GMSGFMT = @GMSGFMT@
+GMSGFMT_015 = @GMSGFMT_015@
+GREP = @GREP@
+GROUP_NAME_MAX_LENGTH = @GROUP_NAME_MAX_LENGTH@
+INSTALL = @INSTALL@
+INSTALL_DATA = @INSTALL_DATA@
+INSTALL_PROGRAM = @INSTALL_PROGRAM@
+INSTALL_SCRIPT = @INSTALL_SCRIPT@
+INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
+INTLLIBS = @INTLLIBS@
+INTL_MACOSX_LIBS = @INTL_MACOSX_LIBS@
+LD = @LD@
+LDFLAGS = @LDFLAGS@
+LIBACL = @LIBACL@
+LIBATTR = @LIBATTR@
+LIBAUDIT = @LIBAUDIT@
+LIBCRACK = @LIBCRACK@
+LIBCRYPT = @LIBCRYPT@
+LIBICONV = @LIBICONV@
+LIBINTL = @LIBINTL@
+LIBMD = @LIBMD@
+LIBOBJS = @LIBOBJS@
+LIBPAM = @LIBPAM@
+LIBS = @LIBS@
+LIBSELINUX = @LIBSELINUX@
+LIBSEMANAGE = @LIBSEMANAGE@
+LIBSKEY = @LIBSKEY@
+LIBTCB = @LIBTCB@
+LIBTOOL = @LIBTOOL@
+LIPO = @LIPO@
+LN_S = @LN_S@
+LTLIBICONV = @LTLIBICONV@
+LTLIBINTL = @LTLIBINTL@
+LTLIBOBJS = @LTLIBOBJS@
+LT_SYS_LIBRARY_PATH = @LT_SYS_LIBRARY_PATH@
+MAINT = @MAINT@
+MAKEINFO = @MAKEINFO@
+MANIFEST_TOOL = @MANIFEST_TOOL@
+MKDIR_P = @MKDIR_P@
+MSGFMT = @MSGFMT@
+MSGFMT_015 = @MSGFMT_015@
+MSGMERGE = @MSGMERGE@
+NM = @NM@
+NMEDIT = @NMEDIT@
+OBJDUMP = @OBJDUMP@
+OBJEXT = @OBJEXT@
+OTOOL = @OTOOL@
+OTOOL64 = @OTOOL64@
+PACKAGE = @PACKAGE@
+PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
+PACKAGE_NAME = @PACKAGE_NAME@
+PACKAGE_STRING = @PACKAGE_STRING@
+PACKAGE_TARNAME = @PACKAGE_TARNAME@
+PACKAGE_URL = @PACKAGE_URL@
+PACKAGE_VERSION = @PACKAGE_VERSION@
+PATH_SEPARATOR = @PATH_SEPARATOR@
+POSUB = @POSUB@
+RANLIB = @RANLIB@
+SED = @SED@
+SET_MAKE = @SET_MAKE@
+SHELL = @SHELL@
+STRIP = @STRIP@
+USE_NLS = @USE_NLS@
+VERSION = @VERSION@
+XGETTEXT = @XGETTEXT@
+XGETTEXT_015 = @XGETTEXT_015@
+XGETTEXT_EXTRA_OPTIONS = @XGETTEXT_EXTRA_OPTIONS@
+XMLCATALOG = @XMLCATALOG@
+XML_CATALOG_FILE = @XML_CATALOG_FILE@
+XSLTPROC = @XSLTPROC@
+YACC = @YACC@
+YFLAGS = @YFLAGS@
+abs_builddir = @abs_builddir@
+abs_srcdir = @abs_srcdir@
+abs_top_builddir = @abs_top_builddir@
+abs_top_srcdir = @abs_top_srcdir@
+ac_ct_AR = @ac_ct_AR@
+ac_ct_CC = @ac_ct_CC@
+ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
+am__include = @am__include@
+am__leading_dot = @am__leading_dot@
+am__quote = @am__quote@
+am__tar = @am__tar@
+am__untar = @am__untar@
+bindir = @bindir@
+build = @build@
+build_alias = @build_alias@
+build_cpu = @build_cpu@
+build_os = @build_os@
+build_vendor = @build_vendor@
+builddir = @builddir@
+capcmd = @capcmd@
+datadir = @datadir@
+datarootdir = @datarootdir@
+docdir = @docdir@
+dvidir = @dvidir@
+exec_prefix = @exec_prefix@
+host = @host@
+host_alias = @host_alias@
+host_cpu = @host_cpu@
+host_os = @host_os@
+host_vendor = @host_vendor@
+htmldir = @htmldir@
+includedir = @includedir@
+infodir = @infodir@
+install_sh = @install_sh@
+libdir = @libdir@
+libexecdir = @libexecdir@
+localedir = @localedir@
+localstatedir = @localstatedir@
+mandir = @mandir@/ru
+mkdir_p = @mkdir_p@
+oldincludedir = @oldincludedir@
+pdfdir = @pdfdir@
+prefix = @prefix@
+program_transform_name = @program_transform_name@
+psdir = @psdir@
+runstatedir = @runstatedir@
+sbindir = @sbindir@
+sharedstatedir = @sharedstatedir@
+srcdir = @srcdir@
+sysconfdir = @sysconfdir@
+target_alias = @target_alias@
+top_build_prefix = @top_build_prefix@
+top_builddir = @top_builddir@
+top_srcdir = @top_srcdir@
+man_MANS = man1/chage.1 man1/chfn.1 man8/chgpasswd.8 man8/chpasswd.8 \
+ man1/chsh.1 man1/expiry.1 man5/faillog.5 man8/faillog.8 \
+ man3/getspnam.3 man1/gpasswd.1 man8/groupadd.8 man8/groupdel.8 \
+ man8/groupmems.8 man8/groupmod.8 man1/groups.1 man8/grpck.8 \
+ man8/grpconv.8 man8/grpunconv.8 man5/gshadow.5 man8/lastlog.8 \
+ man1/login.1 man5/login.defs.5 man8/logoutd.8 man1/newgrp.1 \
+ man8/newusers.8 man8/nologin.8 man1/passwd.1 man5/passwd.5 \
+ man8/pwck.8 man8/pwconv.8 man8/pwunconv.8 man1/sg.1 \
+ man3/shadow.3 man5/shadow.5 man1/su.1 man5/suauth.5 \
+ man8/useradd.8 man8/userdel.8 man8/usermod.8 man8/vigr.8 \
+ man8/vipw.8 $(am__append_1)
+man_nopam = \
+ man5/limits.5 \
+ man5/login.access.5 \
+ man5/porttime.5
+
+EXTRA_DIST = $(man_MANS) man1/id.1 man8/sulogin.8 $(am__append_2)
+LANG = $(notdir $(CURDIR))
+@ENABLE_REGENERATE_MAN_TRUE@@USE_PAM_FALSE@PAM_COND = no_pam
+@ENABLE_REGENERATE_MAN_TRUE@@USE_PAM_TRUE@PAM_COND = pam
+@ENABLE_REGENERATE_MAN_TRUE@@SHADOWGRP_FALSE@SHADOWGRP_COND = no_gshadow
+@ENABLE_REGENERATE_MAN_TRUE@@SHADOWGRP_TRUE@SHADOWGRP_COND = gshadow
+@ENABLE_REGENERATE_MAN_TRUE@@WITH_TCB_FALSE@TCB_COND = no_tcb
+@ENABLE_REGENERATE_MAN_TRUE@@WITH_TCB_TRUE@TCB_COND = tcb
+@ENABLE_REGENERATE_MAN_TRUE@@USE_SHA_CRYPT_FALSE@SHA_CRYPT_COND = no_sha_crypt
+@ENABLE_REGENERATE_MAN_TRUE@@USE_SHA_CRYPT_TRUE@SHA_CRYPT_COND = sha_crypt
+@ENABLE_REGENERATE_MAN_TRUE@@ENABLE_SUBIDS_FALSE@SUBIDS_COND = no_subids
+@ENABLE_REGENERATE_MAN_TRUE@@ENABLE_SUBIDS_TRUE@SUBIDS_COND = subids
+CLEANFILES = .xml2po.mo $(EXTRA_DIST) $(addsuffix .xml,$(EXTRA_DIST)) config.xml
+all: all-am
+
+.SUFFIXES:
+$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(srcdir)/../generate_translations.mak $(srcdir)/../generate_mans.mak $(am__configure_deps)
+ @for dep in $?; do \
+ case '$(am__configure_deps)' in \
+ *$$dep*) \
+ ( cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh ) \
+ && { if test -f $@; then exit 0; else break; fi; }; \
+ exit 1;; \
+ esac; \
+ done; \
+ echo ' cd $(top_srcdir) && $(AUTOMAKE) --foreign man/ru/Makefile'; \
+ $(am__cd) $(top_srcdir) && \
+ $(AUTOMAKE) --foreign man/ru/Makefile
+Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
+ @case '$?' in \
+ *config.status*) \
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
+ *) \
+ echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
+ cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+ esac;
+$(srcdir)/../generate_translations.mak $(srcdir)/../generate_mans.mak $(am__empty):
+
+$(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+
+$(top_srcdir)/configure: @MAINTAINER_MODE_TRUE@ $(am__configure_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(ACLOCAL_M4): @MAINTAINER_MODE_TRUE@ $(am__aclocal_m4_deps)
+ cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
+$(am__aclocal_m4_deps):
+
+mostlyclean-libtool:
+ -rm -f *.lo
+
+clean-libtool:
+ -rm -rf .libs _libs
+install-man1: $(man_MANS)
+ @$(NORMAL_INSTALL)
+ @list1=''; \
+ list2='$(man_MANS)'; \
+ test -n "$(man1dir)" \
+ && test -n "`echo $$list1$$list2`" \
+ || exit 0; \
+ echo " $(MKDIR_P) '$(DESTDIR)$(man1dir)'"; \
+ $(MKDIR_P) "$(DESTDIR)$(man1dir)" || exit 1; \
+ { for i in $$list1; do echo "$$i"; done; \
+ if test -n "$$list2"; then \
+ for i in $$list2; do echo "$$i"; done \
+ | sed -n '/\.1[a-z]*$$/p'; \
+ fi; \
+ } | while read p; do \
+ if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
+ echo "$$d$$p"; echo "$$p"; \
+ done | \
+ sed -e 'n;s,.*/,,;p;h;s,.*\.,,;s,^[^1][0-9a-z]*$$,1,;x' \
+ -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,' | \
+ sed 'N;N;s,\n, ,g' | { \
+ list=; while read file base inst; do \
+ if test "$$base" = "$$inst"; then list="$$list $$file"; else \
+ echo " $(INSTALL_DATA) '$$file' '$(DESTDIR)$(man1dir)/$$inst'"; \
+ $(INSTALL_DATA) "$$file" "$(DESTDIR)$(man1dir)/$$inst" || exit $$?; \
+ fi; \
+ done; \
+ for i in $$list; do echo "$$i"; done | $(am__base_list) | \
+ while read files; do \
+ test -z "$$files" || { \
+ echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(man1dir)'"; \
+ $(INSTALL_DATA) $$files "$(DESTDIR)$(man1dir)" || exit $$?; }; \
+ done; }
+
+uninstall-man1:
+ @$(NORMAL_UNINSTALL)
+ @list=''; test -n "$(man1dir)" || exit 0; \
+ files=`{ for i in $$list; do echo "$$i"; done; \
+ l2='$(man_MANS)'; for i in $$l2; do echo "$$i"; done | \
+ sed -n '/\.1[a-z]*$$/p'; \
+ } | sed -e 's,.*/,,;h;s,.*\.,,;s,^[^1][0-9a-z]*$$,1,;x' \
+ -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,'`; \
+ dir='$(DESTDIR)$(man1dir)'; $(am__uninstall_files_from_dir)
+install-man3: $(man_MANS)
+ @$(NORMAL_INSTALL)
+ @list1=''; \
+ list2='$(man_MANS)'; \
+ test -n "$(man3dir)" \
+ && test -n "`echo $$list1$$list2`" \
+ || exit 0; \
+ echo " $(MKDIR_P) '$(DESTDIR)$(man3dir)'"; \
+ $(MKDIR_P) "$(DESTDIR)$(man3dir)" || exit 1; \
+ { for i in $$list1; do echo "$$i"; done; \
+ if test -n "$$list2"; then \
+ for i in $$list2; do echo "$$i"; done \
+ | sed -n '/\.3[a-z]*$$/p'; \
+ fi; \
+ } | while read p; do \
+ if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
+ echo "$$d$$p"; echo "$$p"; \
+ done | \
+ sed -e 'n;s,.*/,,;p;h;s,.*\.,,;s,^[^3][0-9a-z]*$$,3,;x' \
+ -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,' | \
+ sed 'N;N;s,\n, ,g' | { \
+ list=; while read file base inst; do \
+ if test "$$base" = "$$inst"; then list="$$list $$file"; else \
+ echo " $(INSTALL_DATA) '$$file' '$(DESTDIR)$(man3dir)/$$inst'"; \
+ $(INSTALL_DATA) "$$file" "$(DESTDIR)$(man3dir)/$$inst" || exit $$?; \
+ fi; \
+ done; \
+ for i in $$list; do echo "$$i"; done | $(am__base_list) | \
+ while read files; do \
+ test -z "$$files" || { \
+ echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(man3dir)'"; \
+ $(INSTALL_DATA) $$files "$(DESTDIR)$(man3dir)" || exit $$?; }; \
+ done; }
+
+uninstall-man3:
+ @$(NORMAL_UNINSTALL)
+ @list=''; test -n "$(man3dir)" || exit 0; \
+ files=`{ for i in $$list; do echo "$$i"; done; \
+ l2='$(man_MANS)'; for i in $$l2; do echo "$$i"; done | \
+ sed -n '/\.3[a-z]*$$/p'; \
+ } | sed -e 's,.*/,,;h;s,.*\.,,;s,^[^3][0-9a-z]*$$,3,;x' \
+ -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,'`; \
+ dir='$(DESTDIR)$(man3dir)'; $(am__uninstall_files_from_dir)
+install-man5: $(man_MANS)
+ @$(NORMAL_INSTALL)
+ @list1=''; \
+ list2='$(man_MANS)'; \
+ test -n "$(man5dir)" \
+ && test -n "`echo $$list1$$list2`" \
+ || exit 0; \
+ echo " $(MKDIR_P) '$(DESTDIR)$(man5dir)'"; \
+ $(MKDIR_P) "$(DESTDIR)$(man5dir)" || exit 1; \
+ { for i in $$list1; do echo "$$i"; done; \
+ if test -n "$$list2"; then \
+ for i in $$list2; do echo "$$i"; done \
+ | sed -n '/\.5[a-z]*$$/p'; \
+ fi; \
+ } | while read p; do \
+ if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
+ echo "$$d$$p"; echo "$$p"; \
+ done | \
+ sed -e 'n;s,.*/,,;p;h;s,.*\.,,;s,^[^5][0-9a-z]*$$,5,;x' \
+ -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,' | \
+ sed 'N;N;s,\n, ,g' | { \
+ list=; while read file base inst; do \
+ if test "$$base" = "$$inst"; then list="$$list $$file"; else \
+ echo " $(INSTALL_DATA) '$$file' '$(DESTDIR)$(man5dir)/$$inst'"; \
+ $(INSTALL_DATA) "$$file" "$(DESTDIR)$(man5dir)/$$inst" || exit $$?; \
+ fi; \
+ done; \
+ for i in $$list; do echo "$$i"; done | $(am__base_list) | \
+ while read files; do \
+ test -z "$$files" || { \
+ echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(man5dir)'"; \
+ $(INSTALL_DATA) $$files "$(DESTDIR)$(man5dir)" || exit $$?; }; \
+ done; }
+
+uninstall-man5:
+ @$(NORMAL_UNINSTALL)
+ @list=''; test -n "$(man5dir)" || exit 0; \
+ files=`{ for i in $$list; do echo "$$i"; done; \
+ l2='$(man_MANS)'; for i in $$l2; do echo "$$i"; done | \
+ sed -n '/\.5[a-z]*$$/p'; \
+ } | sed -e 's,.*/,,;h;s,.*\.,,;s,^[^5][0-9a-z]*$$,5,;x' \
+ -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,'`; \
+ dir='$(DESTDIR)$(man5dir)'; $(am__uninstall_files_from_dir)
+install-man8: $(man_MANS)
+ @$(NORMAL_INSTALL)
+ @list1=''; \
+ list2='$(man_MANS)'; \
+ test -n "$(man8dir)" \
+ && test -n "`echo $$list1$$list2`" \
+ || exit 0; \
+ echo " $(MKDIR_P) '$(DESTDIR)$(man8dir)'"; \
+ $(MKDIR_P) "$(DESTDIR)$(man8dir)" || exit 1; \
+ { for i in $$list1; do echo "$$i"; done; \
+ if test -n "$$list2"; then \
+ for i in $$list2; do echo "$$i"; done \
+ | sed -n '/\.8[a-z]*$$/p'; \
+ fi; \
+ } | while read p; do \
+ if test -f $$p; then d=; else d="$(srcdir)/"; fi; \
+ echo "$$d$$p"; echo "$$p"; \
+ done | \
+ sed -e 'n;s,.*/,,;p;h;s,.*\.,,;s,^[^8][0-9a-z]*$$,8,;x' \
+ -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,' | \
+ sed 'N;N;s,\n, ,g' | { \
+ list=; while read file base inst; do \
+ if test "$$base" = "$$inst"; then list="$$list $$file"; else \
+ echo " $(INSTALL_DATA) '$$file' '$(DESTDIR)$(man8dir)/$$inst'"; \
+ $(INSTALL_DATA) "$$file" "$(DESTDIR)$(man8dir)/$$inst" || exit $$?; \
+ fi; \
+ done; \
+ for i in $$list; do echo "$$i"; done | $(am__base_list) | \
+ while read files; do \
+ test -z "$$files" || { \
+ echo " $(INSTALL_DATA) $$files '$(DESTDIR)$(man8dir)'"; \
+ $(INSTALL_DATA) $$files "$(DESTDIR)$(man8dir)" || exit $$?; }; \
+ done; }
+
+uninstall-man8:
+ @$(NORMAL_UNINSTALL)
+ @list=''; test -n "$(man8dir)" || exit 0; \
+ files=`{ for i in $$list; do echo "$$i"; done; \
+ l2='$(man_MANS)'; for i in $$l2; do echo "$$i"; done | \
+ sed -n '/\.8[a-z]*$$/p'; \
+ } | sed -e 's,.*/,,;h;s,.*\.,,;s,^[^8][0-9a-z]*$$,8,;x' \
+ -e 's,\.[0-9a-z]*$$,,;$(transform);G;s,\n,.,'`; \
+ dir='$(DESTDIR)$(man8dir)'; $(am__uninstall_files_from_dir)
+tags TAGS:
+
+ctags CTAGS:
+
+cscope cscopelist:
+
+
+distdir: $(DISTFILES)
+ @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
+ list='$(DISTFILES)'; \
+ dist_files=`for file in $$list; do echo $$file; done | \
+ sed -e "s|^$$srcdirstrip/||;t" \
+ -e "s|^$$topsrcdirstrip/|$(top_builddir)/|;t"`; \
+ case $$dist_files in \
+ */*) $(MKDIR_P) `echo "$$dist_files" | \
+ sed '/\//!d;s|^|$(distdir)/|;s,/[^/]*$$,,' | \
+ sort -u` ;; \
+ esac; \
+ for file in $$dist_files; do \
+ if test -f $$file || test -d $$file; then d=.; else d=$(srcdir); fi; \
+ if test -d $$d/$$file; then \
+ dir=`echo "/$$file" | sed -e 's,/[^/]*$$,,'`; \
+ if test -d "$(distdir)/$$file"; then \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ if test -d $(srcdir)/$$file && test $$d != $(srcdir); then \
+ cp -fpR $(srcdir)/$$file "$(distdir)$$dir" || exit 1; \
+ find "$(distdir)/$$file" -type d ! -perm -700 -exec chmod u+rwx {} \;; \
+ fi; \
+ cp -fpR $$d/$$file "$(distdir)$$dir" || exit 1; \
+ else \
+ test -f "$(distdir)/$$file" \
+ || cp -p $$d/$$file "$(distdir)/$$file" \
+ || exit 1; \
+ fi; \
+ done
+check-am: all-am
+check: check-am
+all-am: Makefile $(MANS)
+installdirs:
+ for dir in "$(DESTDIR)$(man1dir)" "$(DESTDIR)$(man3dir)" "$(DESTDIR)$(man5dir)" "$(DESTDIR)$(man8dir)"; do \
+ test -z "$$dir" || $(MKDIR_P) "$$dir"; \
+ done
+install: install-am
+install-exec: install-exec-am
+install-data: install-data-am
+uninstall: uninstall-am
+
+install-am: all-am
+ @$(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am
+
+installcheck: installcheck-am
+install-strip:
+ if test -z '$(STRIP)'; then \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ install; \
+ else \
+ $(MAKE) $(AM_MAKEFLAGS) INSTALL_PROGRAM="$(INSTALL_STRIP_PROGRAM)" \
+ install_sh_PROGRAM="$(INSTALL_STRIP_PROGRAM)" INSTALL_STRIP_FLAG=-s \
+ "INSTALL_PROGRAM_ENV=STRIPPROG='$(STRIP)'" install; \
+ fi
+mostlyclean-generic:
+
+clean-generic:
+ -test -z "$(CLEANFILES)" || rm -f $(CLEANFILES)
+
+distclean-generic:
+ -test -z "$(CONFIG_CLEAN_FILES)" || rm -f $(CONFIG_CLEAN_FILES)
+ -test . = "$(srcdir)" || test -z "$(CONFIG_CLEAN_VPATH_FILES)" || rm -f $(CONFIG_CLEAN_VPATH_FILES)
+
+maintainer-clean-generic:
+ @echo "This command is intended for maintainers to use"
+ @echo "it deletes files that may require special tools to rebuild."
+@ENABLE_REGENERATE_MAN_FALSE@clean-local:
+clean: clean-am
+
+clean-am: clean-generic clean-libtool clean-local mostlyclean-am
+
+distclean: distclean-am
+ -rm -f Makefile
+distclean-am: clean-am distclean-generic
+
+dvi: dvi-am
+
+dvi-am:
+
+html: html-am
+
+html-am:
+
+info: info-am
+
+info-am:
+
+install-data-am: install-man
+
+install-dvi: install-dvi-am
+
+install-dvi-am:
+
+install-exec-am:
+
+install-html: install-html-am
+
+install-html-am:
+
+install-info: install-info-am
+
+install-info-am:
+
+install-man: install-man1 install-man3 install-man5 install-man8
+
+install-pdf: install-pdf-am
+
+install-pdf-am:
+
+install-ps: install-ps-am
+
+install-ps-am:
+
+installcheck-am:
+
+maintainer-clean: maintainer-clean-am
+ -rm -f Makefile
+maintainer-clean-am: distclean-am maintainer-clean-generic
+
+mostlyclean: mostlyclean-am
+
+mostlyclean-am: mostlyclean-generic mostlyclean-libtool
+
+pdf: pdf-am
+
+pdf-am:
+
+ps: ps-am
+
+ps-am:
+
+uninstall-am: uninstall-man
+
+uninstall-man: uninstall-man1 uninstall-man3 uninstall-man5 \
+ uninstall-man8
+
+.MAKE: install-am install-strip
+
+.PHONY: all all-am check check-am clean clean-generic clean-libtool \
+ clean-local cscopelist-am ctags-am distclean distclean-generic \
+ distclean-libtool distdir dvi dvi-am html html-am info info-am \
+ install install-am install-data install-data-am install-dvi \
+ install-dvi-am install-exec install-exec-am install-html \
+ install-html-am install-info install-info-am install-man \
+ install-man1 install-man3 install-man5 install-man8 \
+ install-pdf install-pdf-am install-ps install-ps-am \
+ install-strip installcheck installcheck-am installdirs \
+ maintainer-clean maintainer-clean-generic mostlyclean \
+ mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
+ tags-am uninstall uninstall-am uninstall-man uninstall-man1 \
+ uninstall-man3 uninstall-man5 uninstall-man8
+
+.PRECIOUS: Makefile
+
+
+@ENABLE_REGENERATE_MAN_TRUE@config.xml: ../config.xml.in
+@ENABLE_REGENERATE_MAN_TRUE@ $(MAKE) -C .. config.xml
+@ENABLE_REGENERATE_MAN_TRUE@ cp ../config.xml $@
+
+@ENABLE_REGENERATE_MAN_TRUE@%.xml: ../%.xml ../po/$(LANG).po
+@ENABLE_REGENERATE_MAN_TRUE@ xml2po --expand-all-entities -l $(LANG) -p ../po/$(LANG).po -o $@ ../$@
+@ENABLE_REGENERATE_MAN_TRUE@ sed -i 's:\(^<refentry .*\)>:\1 lang="$(LANG)">:' $@
+
+@ENABLE_REGENERATE_MAN_TRUE@%.xml-config: %.xml
+@ENABLE_REGENERATE_MAN_TRUE@ if grep -q SHADOW-CONFIG-HERE $<; then \
+@ENABLE_REGENERATE_MAN_TRUE@ sed -e 's/^<!-- SHADOW-CONFIG-HERE -->/<!ENTITY % config SYSTEM "config.xml">%config;/' $< > $@; \
+@ENABLE_REGENERATE_MAN_TRUE@ else \
+@ENABLE_REGENERATE_MAN_TRUE@ sed -e 's/^\(<!DOCTYPE .*docbookx.dtd"\)>/\1 [<!ENTITY % config SYSTEM "config.xml">%config;]>/' $< > $@; \
+@ENABLE_REGENERATE_MAN_TRUE@ fi
+
+@ENABLE_REGENERATE_MAN_TRUE@man1/% man3/% man5/% man8/%: %.xml-config Makefile config.xml
+@ENABLE_REGENERATE_MAN_TRUE@ $(XSLTPROC) --stringparam profile.condition "$(PAM_COND);$(SHADOWGRP_COND);$(TCB_COND);$(SHA_CRYPT_COND);$(SUBIDS_COND)" \
+@ENABLE_REGENERATE_MAN_TRUE@ --param "man.authors.section.enabled" "0" \
+@ENABLE_REGENERATE_MAN_TRUE@ --stringparam "man.output.base.dir" "" \
+@ENABLE_REGENERATE_MAN_TRUE@ --param "man.output.in.separate.dir" "1" \
+@ENABLE_REGENERATE_MAN_TRUE@ -nonet http://docbook.sourceforge.net/release/xsl/current/manpages/profile-docbook.xsl $<
+
+@ENABLE_REGENERATE_MAN_TRUE@clean-local:
+@ENABLE_REGENERATE_MAN_TRUE@ rm -rf man1 man3 man5 man8
+
+#$(man_MANS):
+# @echo you need to run configure with --enable-man to generate man pages
+
+@ENABLE_REGENERATE_MAN_TRUE@man8/grpconv.8 man8/grpunconv.8 man8/pwunconv.8: man8/pwconv.8
+
+@ENABLE_REGENERATE_MAN_TRUE@man3/getspnam.3: man3/shadow.3
+
+@ENABLE_REGENERATE_MAN_TRUE@man8/vigr.8: man8/vipw.8
+
+@ENABLE_REGENERATE_MAN_FALSE@$(man_MANS):
+@ENABLE_REGENERATE_MAN_FALSE@ @echo you need to run configure with --enable-man to generate man pages
+
+# Tell versions [3.59,3.63) of GNU make to not export all variables.
+# Otherwise a system limit (for SysV at least) may be exceeded.
+.NOEXPORT:
diff --git a/man/ru/man1/chage.1 b/man/ru/man1/chage.1
new file mode 100644
index 00000000..ef8d01a9
--- /dev/null
+++ b/man/ru/man1/chage.1
@@ -0,0 +1,179 @@
+'\" t
+.\" Title: chage
+.\" Author: Julianne Frances Haugh
+.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
+.\" Date: 06/13/2019
+.\" Manual: Пользовательские команды
+.\" Source: shadow-utils 4.7
+.\" Language: Russian
+.\"
+.TH "chage" "1" "06/13/2019" "shadow\-utils 4\&.7" "Пользовательские команды"
+.\" -----------------------------------------------------------------
+.\" * Define some portability stuff
+.\" -----------------------------------------------------------------
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.\" http://bugs.debian.org/507673
+.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.ie \n(.g .ds Aq \(aq
+.el .ds Aq '
+.\" -----------------------------------------------------------------
+.\" * set default formatting
+.\" -----------------------------------------------------------------
+.\" disable hyphenation
+.nh
+.\" disable justification (adjust text to left margin only)
+.ad l
+.\" -----------------------------------------------------------------
+.\" * MAIN CONTENT STARTS HERE *
+.\" -----------------------------------------------------------------
+.SH "НАЗВАНИЕ"
+chage \- изменяет информацию об устаревании пароля пользователя
+.SH "СИНТАКСИС"
+.HP \w'\fBchage\fR\ 'u
+\fBchage\fR [\fIпараметры\fR] \fIУЧЁТНАЯ_ЗАПИСЬ\fR
+.SH "ОПИСАНИЕ"
+.PP
+Программа
+\fBchage\fR
+изменяет количество дней между датой смены пароля и датой последней смены пароля\&. Эта информация используется системой для определения момента, когда пользователь должен сменить свой пароль\&.
+.SH "ПАРАМЕТРЫ"
+.PP
+Параметры команды
+\fBchage\fR:
+.PP
+\fB\-d\fR, \fB\-\-lastday\fR\ \&\fIПОСЛ_ДЕНЬ\fR
+.RS 4
+Установить число дней прошедших с 1 января 1970 года, когда была последняя смена пароля\&. Дата может быть также указана в виде ГГГГ\-ММ\-ДД (или в форме согласно региональным настройкам)\&.
+.RE
+.PP
+\fB\-E\fR, \fB\-\-expiredate\fR \fIДАТА_УСТАРЕВАНИЯ\fR
+.RS 4
+Установить дату устаревания учётной записи пользователя, которая задаётся числом дней прошедших с 1 января 1970 года\&. Дата может быть также задана в виде ГГГГ\-ММ\-ДД (или в форме согласно региональным настройкам)\&. Пользователь, чья учётная запись была заблокирована, должен обратиться к системному администратору, если хочет в дальнейшем работать с системой\&.
+.sp
+Значение
+\fI\-1\fR
+в параметре
+\fIДАТА_УСТАРЕВАНИЯ\fR
+отменяет устаревание учётной записи\&.
+.RE
+.PP
+\fB\-h\fR, \fB\-\-help\fR
+.RS 4
+Показать краткую справку и закончить работу\&.
+.RE
+.PP
+\fB\-I\fR, \fB\-\-inactive\fR\ \&\fIДНЕЙ\fR
+.RS 4
+Установить количество дней неактивности после устаревания пароля перед тем как учётная запись будет заблокирована\&. В параметре
+\fIДНЕЙ\fR
+задаётся количество дней неактивности\&. Пользователь, чья учётная запись была заблокирована, должен обратиться к системному администратору, если хочет в дальнейшем работать с системой\&.
+.sp
+Значение
+\fI\-1\fR
+в параметре
+\fIДНЕЙ\fR
+отменяет неактивность учётной записи\&.
+.RE
+.PP
+\fB\-l\fR, \fB\-\-list\fR
+.RS 4
+Показать информацию об устаревании учётной записи\&.
+.RE
+.PP
+\fB\-m\fR, \fB\-\-mindays\fR\ \&\fIМИН_ДНЕЙ\fR
+.RS 4
+Задать
+\fIминимальное количество дней\fR
+между сменами пароля\&. Нулевое значение этого поля указывает на то, что пользователь может менять свой пароль когда захочет\&.
+.RE
+.PP
+\fB\-M\fR, \fB\-\-maxdays\fR\ \&\fIМАКС_ДНЕЙ\fR
+.RS 4
+Установить максимальное количество дней работоспособности пароля\&. Если сумма значений
+\fIМАКС_ДНЕЙ\fR
+\fIПОСЛ_ДЕНЬ\fR
+раньше текущего дня, то пользователю придётся изменить свой пароль перед использованием учётной записи\&. Для того, чтобы это не было неожиданностью можно воспользоваться параметром
+\fB\-W\fR, который активирует выдачу предупреждения о смене пароля пользователя заранее\&.
+.sp
+Значение
+\fI\-1\fR
+в параметре
+\fIМАКС_ДНЕЙ\fR
+отменяет проверку пароля\&.
+.RE
+.PP
+\fB\-R\fR, \fB\-\-root\fR\ \&\fIКАТ_CHROOT\fR
+.RS 4
+Выполнить изменения в каталоге
+\fIКАТ_CHROOT\fR
+и использовать файлы настройки из каталога
+\fIКАТ_CHROOT\fR\&.
+.RE
+.PP
+\fB\-W\fR, \fB\-\-warndays\fR\ \&\fIПРЕДУП_ДНЕЙ\fR
+.RS 4
+Установить количество дней выдачи предупреждения, перед тем как потребуется смена пароля\&. Параметр
+\fIПРЕДУП_ДНЕЙ\fR
+считается в днях, в течении которых пользователь будет получать предупреждение об устаревании пароля, перед тем как это случится\&.
+.RE
+.PP
+Если ни один параметр не указан, то
+\fBchage\fR
+переходит в интерактивный режим, предлагая запустившему пользователю изменить значения всех полей своей учётной записи\&. Вводимое значение заменяет текущее значение поля; если введена пустая строка, то текущее значение остаётся неизменным\&. Текущее значение показано в скобках
+\fI[ ]\fR\&.
+.SH "ЗАМЕЧАНИЕ"
+.PP
+Программа
+\fBchage\fR
+требует наличия файла теневых паролей\&.
+.PP
+Программа
+\fBchage\fR
+работает только от суперпользователя, за исключением вызова с параметром
+\fB\-l\fR, который может использоваться непривилегированным пользователем для определения даты устаревания своего пароля\&.
+.SH "НАСТРОЙКА"
+.PP
+На работу этого инструмента влияют следующие переменные настройки из
+/etc/login\&.defs:
+.SH "ФАЙЛЫ"
+.PP
+/etc/passwd
+.RS 4
+содержит информацию о пользователях
+.RE
+.PP
+/etc/shadow
+.RS 4
+содержит защищаемую информацию о пользователях
+.RE
+.SH "ВОЗВРАЩАЕМЫЕ ЗНАЧЕНИЯ"
+.PP
+Программа
+\fBchage\fR
+завершая работу, возвращает следующие значения:
+.PP
+\fI0\fR
+.RS 4
+успешное выполнение
+.RE
+.PP
+\fI1\fR
+.RS 4
+доступ запрещён
+.RE
+.PP
+\fI2\fR
+.RS 4
+ошибка в параметрах команды
+.RE
+.PP
+\fI15\fR
+.RS 4
+не удалось найти файл теневых паролей
+.RE
+.SH "СМОТРИТЕ ТАКЖЕ"
+.PP
+\fBpasswd\fR(5),
+\fBshadow\fR(5)\&.
diff --git a/man/ru/man1/chfn.1 b/man/ru/man1/chfn.1
new file mode 100644
index 00000000..d32fce2d
--- /dev/null
+++ b/man/ru/man1/chfn.1
@@ -0,0 +1,154 @@
+'\" t
+.\" Title: chfn
+.\" Author: Julianne Frances Haugh
+.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
+.\" Date: 06/13/2019
+.\" Manual: Пользовательские команды
+.\" Source: shadow-utils 4.7
+.\" Language: Russian
+.\"
+.TH "chfn" "1" "06/13/2019" "shadow\-utils 4\&.7" "Пользовательские команды"
+.\" -----------------------------------------------------------------
+.\" * Define some portability stuff
+.\" -----------------------------------------------------------------
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.\" http://bugs.debian.org/507673
+.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.ie \n(.g .ds Aq \(aq
+.el .ds Aq '
+.\" -----------------------------------------------------------------
+.\" * set default formatting
+.\" -----------------------------------------------------------------
+.\" disable hyphenation
+.nh
+.\" disable justification (adjust text to left margin only)
+.ad l
+.\" -----------------------------------------------------------------
+.\" * MAIN CONTENT STARTS HERE *
+.\" -----------------------------------------------------------------
+.SH "НАЗВАНИЕ"
+chfn \- изменяет информацию о пользователе
+.SH "СИНТАКСИС"
+.HP \w'\fBchfn\fR\ 'u
+\fBchfn\fR [\fIпараметры\fR] [\fIУЧЁТНАЯ_ЗАПИСЬ\fR]
+.SH "ОПИСАНИЕ"
+.PP
+Программа
+\fBchfn\fR
+изменяет ФИО, рабочий телефон, рабочий номер комнаты, рабочий и домашний номер телефона для учётной записи пользователя\&. Обычно, эти данные выводятся командой
+\fBfinger\fR(1)
+и ей подобными программами\&. Обычный пользователь может изменить только определённые данные собственной учётной записи, разрешённые в файле
+/etc/login\&.defs
+(настройкой по умолчанию пользователю не разрешается менять своё имя и фамилию)\&. Суперпользователь может изменять любые данные любой учётной записи\&. Кроме того, только суперпользователь может использовать параметр
+\fB\-o\fR
+для изменения нестандартизованной части данных GECOS\&.
+.PP
+Части поля GECOS не должны содержать двоеточий\&. За исключением части
+\fIдругая\fR, в них не должно содержаться запятых и знаков равно\&. Также рекомендуется избегать символов не в кодировке US\-ASCII, но это касается только номеров телефонов\&. Часть
+\fIдругая\fR
+используется для хранения информации об учётной записи, которая используется другими приложениями\&.
+.SH "ПАРАМЕТРЫ"
+.PP
+Параметры команды
+\fBchfn\fR:
+.PP
+\fB\-f\fR, \fB\-\-full\-name\fR\ \&\fIФИО\fR
+.RS 4
+Изменяет ФИО пользователя\&.
+.RE
+.PP
+\fB\-h\fR, \fB\-\-home\-phone\fR\ \&\fIДОМАШНИЙ_ТЕЛЕФОН\fR
+.RS 4
+Изменяет номер домашнего телефона пользователя\&.
+.RE
+.PP
+\fB\-o\fR, \fB\-\-other\fR\ \&\fIДРУГАЯ\fR
+.RS 4
+Изменяет другую информацию GECOS о пользователе\&. Эта часть используется для хранения информации об учётной записи, используемой другими приложениями, и может изменяться только суперпользователем\&.
+.RE
+.PP
+\fB\-r\fR, \fB\-\-room\fR\ \&\fIНОМЕР_КОМНАТЫ\fR
+.RS 4
+Изменяет номер комнаты пользователя\&.
+.RE
+.PP
+\fB\-R\fR, \fB\-\-root\fR\ \&\fIКАТ_CHROOT\fR
+.RS 4
+Выполнить изменения в каталоге
+\fIКАТ_CHROOT\fR
+и использовать файлы настройки из каталога
+\fIКАТ_CHROOT\fR\&.
+.RE
+.PP
+\fB\-u\fR, \fB\-\-help\fR
+.RS 4
+Показать краткую справку и закончить работу\&.
+.RE
+.PP
+\fB\-w\fR, \fB\-\-work\-phone\fR\ \&\fIРАБОЧИЙ_ТЕЛЕФОН\fR
+.RS 4
+Изменяет номер рабочего телефона пользователя\&.
+.RE
+.PP
+Если ни один параметр не указан, то
+\fBchfn\fR
+переходит в интерактивный режим, предлагая запустившему пользователю изменить данные своей учётной записи\&. Вводимое значение заменяет текущее значение записи; если введена пустая строка, то текущее значение остаётся неизменным\&. Текущее значение показано в скобках
+\fB[ ]\fR\&. При вызове без параметров программа
+\fBchfn\fR
+изменяет учётную запись запустившего пользователя\&.
+.SH "НАСТРОЙКА"
+.PP
+На работу этого инструмента влияют следующие переменные настройки из
+/etc/login\&.defs:
+.PP
+\fBCHFN_AUTH\fR (логический)
+.RS 4
+Если равно yes, chfn
+.RE
+.PP
+\fBCHFN_RESTRICT\fR (строка)
+.RS 4
+Этим параметром определяются части поля
+\fIgecos\fR
+в файле
+/etc/passwd, которые могут изменять обычные пользователи с помощью программы
+\fBchfn\fR\&. Строка может содержать любую комбинацию букв
+\fIf\fR,
+\fIr\fR,
+\fIw\fR,
+\fIh\fR
+для изменения полного имени пользователя, номера комнаты, рабочего и домашнего телефона, соответственно\&. Для совместимости значение
+\fIyes\fR
+эквивалентно
+\fIrwh\fR
+\fIno\fR
+эквивалентно
+\fIfrwh\fR\&. Если ничего не задано, то только суперпользователь может выполнять любые изменения\&. Наиболее ограничительная настройка достигается снятием SUID бита с файла
+chfn\&.
+.RE
+.PP
+\fBLOGIN_STRING\fR (строка)
+.RS 4
+Строка\-приглашение к вводу пароля\&. Значение по умолчанию: \(FoPassword:\(Fc или перевод этой строки на разные языки\&. Если вы измените эту переменную, то перевод будет отсутствовать\&.
+.sp
+Если в строке содержится подстрока
+\fI%s\fR, то она будет заменена на имя пользователя\&.
+.RE
+.SH "ФАЙЛЫ"
+.PP
+/etc/login\&.defs
+.RS 4
+содержит конфигурацию подсистемы теневых паролей
+.RE
+.PP
+/etc/passwd
+.RS 4
+содержит информацию о пользователях
+.RE
+.SH "СМОТРИТЕ ТАКЖЕ"
+.PP
+\fBchsh\fR(1),
+\fBlogin.defs\fR(5),
+\fBpasswd\fR(5)\&.
diff --git a/man/ru/man1/chsh.1 b/man/ru/man1/chsh.1
new file mode 100644
index 00000000..eaa2abd1
--- /dev/null
+++ b/man/ru/man1/chsh.1
@@ -0,0 +1,117 @@
+'\" t
+.\" Title: chsh
+.\" Author: Julianne Frances Haugh
+.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
+.\" Date: 06/13/2019
+.\" Manual: Пользовательские команды
+.\" Source: shadow-utils 4.7
+.\" Language: Russian
+.\"
+.TH "chsh" "1" "06/13/2019" "shadow\-utils 4\&.7" "Пользовательские команды"
+.\" -----------------------------------------------------------------
+.\" * Define some portability stuff
+.\" -----------------------------------------------------------------
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.\" http://bugs.debian.org/507673
+.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.ie \n(.g .ds Aq \(aq
+.el .ds Aq '
+.\" -----------------------------------------------------------------
+.\" * set default formatting
+.\" -----------------------------------------------------------------
+.\" disable hyphenation
+.nh
+.\" disable justification (adjust text to left margin only)
+.ad l
+.\" -----------------------------------------------------------------
+.\" * MAIN CONTENT STARTS HERE *
+.\" -----------------------------------------------------------------
+.SH "НАЗВАНИЕ"
+chsh \- изменяет регистрационную оболочку пользователя
+.SH "СИНТАКСИС"
+.HP \w'\fBchsh\fR\ 'u
+\fBchsh\fR [\fIпараметры\fR] [\fIУЧЁТНАЯ_ЗАПИСЬ\fR]
+.SH "ОПИСАНИЕ"
+.PP
+Программа
+\fBchsh\fR
+изменяет регистрационную оболочку пользователя\&. Она определяет какая команда будет запущена после регистрации пользователя в системе\&. Обычный пользователь может изменять регистрационную оболочку только для своей учётной записи; суперпользователь может изменять регистрационную оболочку любой учётной записи\&.
+.SH "ПАРАМЕТРЫ"
+.PP
+Параметры команды
+\fBchsh\fR:
+.PP
+\fB\-h\fR, \fB\-\-help\fR
+.RS 4
+Показать краткую справку и закончить работу\&.
+.RE
+.PP
+\fB\-R\fR, \fB\-\-root\fR\ \&\fIКАТ_CHROOT\fR
+.RS 4
+Выполнить изменения в каталоге
+\fIКАТ_CHROOT\fR
+и использовать файлы настройки из каталога
+\fIКАТ_CHROOT\fR\&.
+.RE
+.PP
+\fB\-s\fR, \fB\-\-shell\fR\ \&\fIОБОЛОЧКА\fR
+.RS 4
+Имя новой регистрационной оболочки пользователя\&. Если задать пустое значение, то будет использована регистрационная оболочка по умолчанию\&.
+.RE
+.PP
+Если параметр
+\fB\-s\fR
+не задан, то
+\fBchsh\fR
+переходит в интерактивный режим, предлагая пользователю изменить свою регистрационную оболочку\&. Вводимое значение заменяет текущее значение поля; если введена пустая строка, то текущее значение остаётся неизменным\&. Текущее значение регистрационной оболочки указано в скобках
+\fI[ ]\fR\&.
+.SH "ЗАМЕЧАНИЕ"
+.PP
+Все допустимые имена регистрационных оболочек должны быть указаны в файле
+/etc/shells\&. На суперпользователя это ограничение не действует и поэтому ему разрешено указывать любое значение\&. Для учётной записи с ограниченной регистрационной оболочкой пользователь не может изменить свою регистрационную оболочку\&. Поэтому
+/bin/rsh
+в файле
+/etc/shells
+лучше не указывать, так как, если пользователь случайно изменит свою регистрационную оболочку на эту ограниченную оболочку, то не сможет восстановить её первоначальное значение\&.
+.SH "НАСТРОЙКА"
+.PP
+На работу этого инструмента влияют следующие переменные настройки из
+/etc/login\&.defs:
+.PP
+\fBCHSH_AUTH\fR (логический)
+.RS 4
+Если равно
+\fIyes\fR, то программа
+\fBchsh\fR
+будет проводить аутентификацию перед тем как выполнить любые изменения, в случае если команда не запущены суперпользователем\&.
+.RE
+.PP
+\fBLOGIN_STRING\fR (строка)
+.RS 4
+Строка\-приглашение к вводу пароля\&. Значение по умолчанию: \(FoPassword:\(Fc или перевод этой строки на разные языки\&. Если вы измените эту переменную, то перевод будет отсутствовать\&.
+.sp
+Если в строке содержится подстрока
+\fI%s\fR, то она будет заменена на имя пользователя\&.
+.RE
+.SH "ФАЙЛЫ"
+.PP
+/etc/passwd
+.RS 4
+содержит информацию о пользователях
+.RE
+.PP
+/etc/shells
+.RS 4
+содержит список разрешённых регистрационных оболочек
+.RE
+.PP
+/etc/login\&.defs
+.RS 4
+содержит конфигурацию подсистемы теневых паролей
+.RE
+.SH "СМОТРИТЕ ТАКЖЕ"
+.PP
+\fBchfn\fR(1),
+\fBlogin.defs\fR(5),
+\fBpasswd\fR(5)\&.
diff --git a/man/ru/man1/expiry.1 b/man/ru/man1/expiry.1
new file mode 100644
index 00000000..12e29862
--- /dev/null
+++ b/man/ru/man1/expiry.1
@@ -0,0 +1,75 @@
+'\" t
+.\" Title: expiry
+.\" Author: Julianne Frances Haugh
+.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
+.\" Date: 06/13/2019
+.\" Manual: Пользовательские команды
+.\" Source: shadow-utils 4.7
+.\" Language: Russian
+.\"
+.TH "expiry" "1" "06/13/2019" "shadow\-utils 4\&.7" "Пользовательские команды"
+.\" -----------------------------------------------------------------
+.\" * Define some portability stuff
+.\" -----------------------------------------------------------------
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.\" http://bugs.debian.org/507673
+.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.ie \n(.g .ds Aq \(aq
+.el .ds Aq '
+.\" -----------------------------------------------------------------
+.\" * set default formatting
+.\" -----------------------------------------------------------------
+.\" disable hyphenation
+.nh
+.\" disable justification (adjust text to left margin only)
+.ad l
+.\" -----------------------------------------------------------------
+.\" * MAIN CONTENT STARTS HERE *
+.\" -----------------------------------------------------------------
+.SH "НАЗВАНИЕ"
+expiry \- проверяет и изменяет пароль согласно политике устаревания
+.SH "СИНТАКСИС"
+.HP \w'\fBexpiry\fR\ 'u
+\fBexpiry\fR \fIпараметр\fR
+.SH "ОПИСАНИЕ"
+.PP
+Программа
+\fBexpiry\fR
+проверяет (параметр
+\fB\-c\fR) сколько ещё времени будет работоспособен текущий пароль и вынуждает изменить его (параметр
+\fB\-f\fR), если это требуется\&. Она может запускаться обычным пользователем\&.
+.SH "ПАРАМЕТРЫ"
+.PP
+Параметры команды
+\fBexpiry\fR:
+.PP
+\fB\-c\fR, \fB\-\-check\fR
+.RS 4
+Проверяет и изменяет срок действия пароля у текущего пользователя\&.
+.RE
+.PP
+\fB\-f\fR, \fB\-\-force\fR
+.RS 4
+Принудительно меняет пароль, если его срок действия истёк\&.
+.RE
+.PP
+\fB\-h\fR, \fB\-\-help\fR
+.RS 4
+Показать краткую справку и закончить работу\&.
+.RE
+.SH "ФАЙЛЫ"
+.PP
+/etc/passwd
+.RS 4
+содержит информацию о пользователях
+.RE
+.PP
+/etc/shadow
+.RS 4
+содержит защищаемую информацию о пользователях
+.RE
+.SH "СМОТРИТЕ ТАКЖЕ"
+.PP
+\fBpasswd\fR(5),
+\fBshadow\fR(5)\&.
diff --git a/man/ru/man1/gpasswd.1 b/man/ru/man1/gpasswd.1
new file mode 100644
index 00000000..3a035d45
--- /dev/null
+++ b/man/ru/man1/gpasswd.1
@@ -0,0 +1,226 @@
+'\" t
+.\" Title: gpasswd
+.\" Author: Rafal Maszkowski
+.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
+.\" Date: 06/13/2019
+.\" Manual: Пользовательские команды
+.\" Source: shadow-utils 4.7
+.\" Language: Russian
+.\"
+.TH "gpasswd" "1" "06/13/2019" "shadow\-utils 4\&.7" "Пользовательские команды"
+.\" -----------------------------------------------------------------
+.\" * Define some portability stuff
+.\" -----------------------------------------------------------------
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.\" http://bugs.debian.org/507673
+.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.ie \n(.g .ds Aq \(aq
+.el .ds Aq '
+.\" -----------------------------------------------------------------
+.\" * set default formatting
+.\" -----------------------------------------------------------------
+.\" disable hyphenation
+.nh
+.\" disable justification (adjust text to left margin only)
+.ad l
+.\" -----------------------------------------------------------------
+.\" * MAIN CONTENT STARTS HERE *
+.\" -----------------------------------------------------------------
+.SH "НАЗВАНИЕ"
+gpasswd \- управление /etc/group и /etc/gshadow
+.SH "СИНТАКСИС"
+.HP \w'\fBgpasswd\fR\ 'u
+\fBgpasswd\fR [\fIпараметр\fR] \fIгруппа\fR
+.SH "ОПИСАНИЕ"
+.PP
+Программа
+\fBgpasswd\fR
+используется для управления файлом
+/etc/group
+и /etc/gshadow\&. В каждой группе могут быть определены
+администраторы,
+члены и пароль\&.
+.PP
+Системные администраторы могут использовать параметр
+\fB\-A\fR, чтобы назначить группе администратора(ов) и параметр
+\fB\-M\fR
+для определения списка членов, а также имеют все права администраторов и членов группы\&.
+.PP
+Программа
+\fBgpasswd\fR, запущенная
+администратором группы
+с указанием в командной строке только имени группы, предложит назначить пароль
+\fIгруппе\fR\&.
+.PP
+Если пароль не пустой, то для членов группы вызов
+\fBnewgrp\fR(1)
+пароля не требует, а не члены группы должны ввести пароль\&.
+.SS "Замечания о паролях групп"
+.PP
+Пароли групп имеют врождённую проблему с безопасностью, так как пароль знает более одного человека\&. Однако, группы являются полезным инструментом совместной работы различных пользователей\&.
+.SH "ПАРАМЕТРЫ"
+.PP
+За исключением параметров
+\fB\-A\fR
+\fB\-M\fR, параметры нельзя использовать вместе\&.
+.PP
+Параметры команды
+\fBgpasswd\fR:
+.PP
+\fB\-a\fR, \fB\-\-add\fR\ \&\fIпользователь\fR
+.RS 4
+Добавить
+\fIпользователя\fR
+в указанную
+\fIгруппу\fR\&.
+.RE
+.PP
+\fB\-d\fR, \fB\-\-delete\fR\ \&\fIпользователь\fR
+.RS 4
+Удалить
+\fIпользователя\fR
+из указанной
+\fIгруппы\fR\&.
+.RE
+.PP
+\fB\-h\fR, \fB\-\-help\fR
+.RS 4
+Показать краткую справку и закончить работу\&.
+.RE
+.PP
+\fB\-Q\fR, \fB\-\-root\fR\ \&\fIКАТ_CHROOT\fR
+.RS 4
+Выполнить изменения в каталоге
+\fIКАТ_CHROOT\fR
+и использовать файлы настройки из каталога
+\fIКАТ_CHROOT\fR\&.
+.RE
+.PP
+\fB\-r\fR, \fB\-\-remove\-password\fR
+.RS 4
+Удалить пароль указанной
+\fIгруппы\fR\&. Пароль группы будет пустым\&. Только члены группы смогут использовать
+\fBnewgrp\fR
+для входа в указанную
+\fIгруппу\fR\&.
+.RE
+.PP
+\fB\-R\fR, \fB\-\-restrict\fR
+.RS 4
+Ограничить доступ к указанной
+\fIгруппе\fR\&. Пароль группы становится равным \(Fo!\(Fc\&. Только члены группы имеющие пароль смогут использовать
+\fBnewgrp\fR
+для входа в указанную
+\fIгруппу\fR\&.
+.RE
+.PP
+\fB\-A\fR, \fB\-\-administrators\fR \fIпользователь\fR, \&...
+.RS 4
+Задать список администраторов группы\&.
+.RE
+.PP
+\fB\-M\fR, \fB\-\-members\fR\ \&\fIпользователь\fR, \&...
+.RS 4
+Задать список членов группы\&.
+.RE
+.SH "ПРЕДОСТЕРЕЖЕНИЯ"
+.PP
+Данная утилита работает только с файлом
+/etc/group
+и /etc/gshadow\&.
+Она не может изменить группу NIS или LDAP, это нужно делать на соответствующем сервере\&.
+.SH "НАСТРОЙКА"
+.PP
+На работу этого инструмента влияют следующие переменные настройки из
+/etc/login\&.defs:
+.PP
+\fBENCRYPT_METHOD\fR (строка)
+.RS 4
+Задаёт системный алгоритм шифрования по умолчанию для шифрования паролей (используется, если алгоритм не указан в командной строке)\&.
+.sp
+Возможны следующие значения:
+\fIDES\fR
+(по умолчанию),
+\fIMD5\fR, \fISHA256\fR, \fISHA512\fR\&.
+.sp
+Замечание: этот параметр переопределяет переменную
+\fBMD5_CRYPT_ENAB\fR\&.
+.RE
+.PP
+\fBMAX_MEMBERS_PER_GROUP\fR (число)
+.RS 4
+Максимальное количество членов в записи о группе\&. При достижения максимума заводится новая запись группы (строка) в
+/etc/group
+(с тем же именем, паролем и тем же GID)\&.
+.sp
+Значение по умолчанию равно 0, означающее, что ограничения на количество членов в группе нет\&.
+.sp
+Данная возможность (разделение группы) позволяет ограничить длину строк в файле групп\&. Это полезно для ограничения длины строк групп NIS в 1024 символа\&.
+.sp
+Если вам нужно такое ограничение, укажите значение 25\&.
+.sp
+Замечание: разделение групп поддерживается не всеми инструментами (даже в наборе инструментов Shadow)\&. Вы не должны использовать эту переменную, если вам действительно это ненужно\&.
+.RE
+.PP
+\fBMD5_CRYPT_ENAB\fR (логический)
+.RS 4
+Обозначает, что пароль должен быть зашифрован по алгоритму на основе MD5\&. Если значение равно
+\fIyes\fR, то новые пароли будут зашифрованы по алгоритму на основе MD5, совместимому с используемым в новых версиях FreeBSD\&. Он поддерживает пароли неограниченной длины и имеет более длинную строку соли\&. Установите в
+\fIno\fR, если вам нужно копировать шифрованные пароли в другие системы, которые не поддерживают новый алгоритм\&. По умолчанию
+\fIno\fR\&.
+.sp
+Эта переменная переопределяется переменной
+\fBENCRYPT_METHOD\fR
+или любым параметром командной строки, который задаёт алгоритм шифрования\&.
+.sp
+Эта переменная устарела; используйте
+\fBENCRYPT_METHOD\fR\&.
+.RE
+.PP
+\fBSHA_CRYPT_MIN_ROUNDS\fR (число), \fBSHA_CRYPT_MAX_ROUNDS\fR (число)
+.RS 4
+Если значение
+\fBENCRYPT_METHOD\fR
+равно
+\fISHA256\fR
+или
+\fISHA512\fR, эта переменная определяет количество раундов SHA, используемых алгоритмом шифрования по умолчанию (если количество раундов не задано в командной строке)\&.
+.sp
+Увеличение количества раундов повышает сложность подбора пароля простым перебором\&. Но заметим, что при этом для аутентификации пользователей требуется большее количество процессорных ресурсов\&.
+.sp
+Если не задана, то libc выбирает значение количества раундов по умолчанию (5000)\&.
+.sp
+Значения должны лежать в диапазоне 1000\-999999999\&.
+.sp
+Если задано какое\-то одно значение \(em
+\fBSHA_CRYPT_MIN_ROUNDS\fR
+или
+\fBSHA_CRYPT_MAX_ROUNDS\fR
+\(em то будет использовано это значение\&.
+.sp
+Если
+\fBSHA_CRYPT_MIN_ROUNDS\fR
+>
+\fBSHA_CRYPT_MAX_ROUNDS\fR, то используется большее значение\&.
+.RE
+.SH "ФАЙЛЫ"
+.PP
+/etc/group
+.RS 4
+содержит информацию о группах
+.RE
+.PP
+/etc/gshadow
+.RS 4
+содержит защищаемую информацию о группах
+.RE
+.SH "СМОТРИТЕ ТАКЖЕ"
+.PP
+\fBnewgrp\fR(1),
+\fBgroupadd\fR(8),
+\fBgroupdel\fR(8),
+\fBgroupmod\fR(8),
+\fBgrpck\fR(8),
+\fBgroup\fR(5), \fBgshadow\fR(5)\&.
diff --git a/man/ru/man1/groups.1 b/man/ru/man1/groups.1
new file mode 100644
index 00000000..9937315d
--- /dev/null
+++ b/man/ru/man1/groups.1
@@ -0,0 +1,62 @@
+'\" t
+.\" Title: groups
+.\" Author: Julianne Frances Haugh
+.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
+.\" Date: 06/13/2019
+.\" Manual: Пользовательские команды
+.\" Source: shadow-utils 4.7
+.\" Language: Russian
+.\"
+.TH "groups" "1" "06/13/2019" "shadow\-utils 4\&.7" "Пользовательские команды"
+.\" -----------------------------------------------------------------
+.\" * Define some portability stuff
+.\" -----------------------------------------------------------------
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.\" http://bugs.debian.org/507673
+.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.ie \n(.g .ds Aq \(aq
+.el .ds Aq '
+.\" -----------------------------------------------------------------
+.\" * set default formatting
+.\" -----------------------------------------------------------------
+.\" disable hyphenation
+.nh
+.\" disable justification (adjust text to left margin only)
+.ad l
+.\" -----------------------------------------------------------------
+.\" * MAIN CONTENT STARTS HERE *
+.\" -----------------------------------------------------------------
+.SH "НАЗВАНИЕ"
+groups \- показывает имена групп запустившего программу пользователя
+.SH "СИНТАКСИС"
+.HP \w'\fBgroups\fR\ 'u
+\fBgroups\fR [\fIимя\fR]
+.SH "ОПИСАНИЕ"
+.PP
+Команда
+\fBgroups\fR
+показывает имена групп запустившего программу пользователя или их числовые идентификаторы (ID)\&. Если для номера группы нет соответствующей записи в файле
+/etc/group, то отображается числовое значение\&. При указании необязательного параметра
+\fIимя\fR
+выводятся группы для учётной записи с указанным
+\fIименем\fR\&.
+.SH "ЗАМЕЧАНИЕ"
+.PP
+В системах, не имеющих поддержки одновременного членства в нескольких группах, используется информация из файла
+/etc/group\&. Для смены своей текущей реальной или эффективной группы пользователь должен использовать команды
+\fBnewgrp\fR
+или
+\fBsg\fR\&.
+.SH "ФАЙЛЫ"
+.PP
+/etc/group
+.RS 4
+содержит информацию о группах
+.RE
+.SH "СМОТРИТЕ ТАКЖЕ"
+.PP
+\fBnewgrp\fR(1),
+\fBgetgid\fR(2),
+\fBgetgroups\fR(2),
+\fBgetuid\fR(2)\&.
diff --git a/man/ru/man1/id.1 b/man/ru/man1/id.1
new file mode 100644
index 00000000..3e713ead
--- /dev/null
+++ b/man/ru/man1/id.1
@@ -0,0 +1,60 @@
+'\" t
+.\" Title: id
+.\" Author: Julianne Frances Haugh
+.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
+.\" Date: 06/13/2019
+.\" Manual: Пользовательские команды
+.\" Source: shadow-utils 4.7
+.\" Language: Russian
+.\"
+.TH "id" "1" "06/13/2019" "shadow\-utils 4\&.7" "Пользовательские команды"
+.\" -----------------------------------------------------------------
+.\" * Define some portability stuff
+.\" -----------------------------------------------------------------
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.\" http://bugs.debian.org/507673
+.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.ie \n(.g .ds Aq \(aq
+.el .ds Aq '
+.\" -----------------------------------------------------------------
+.\" * set default formatting
+.\" -----------------------------------------------------------------
+.\" disable hyphenation
+.nh
+.\" disable justification (adjust text to left margin only)
+.ad l
+.\" -----------------------------------------------------------------
+.\" * MAIN CONTENT STARTS HERE *
+.\" -----------------------------------------------------------------
+.SH "НАЗВАНИЕ"
+id \- display current user and group ID names
+.SH "СИНТАКСИС"
+.HP \w'\fBid\fR\ 'u
+\fBid\fR [\-a]
+.SH "ОПИСАНИЕ"
+.PP
+The
+\fBid\fR
+command displays the current real and effective user and group ID names or values\&. If the value does not have a corresponding entry in
+/etc/passwd
+or
+/etc/group, the value will be displayed without the corresponding name\&. The optional
+\fB\-a\fR
+flag will display the group set on systems which support multiple concurrent group membership\&.
+.SH "ФАЙЛЫ"
+.PP
+/etc/group
+.RS 4
+содержит информацию о группах
+.RE
+.PP
+/etc/passwd
+.RS 4
+содержит информацию о пользователях
+.RE
+.SH "СМОТРИТЕ ТАКЖЕ"
+.PP
+\fBgetgid\fR(2),
+\fBgetgroups\fR(2),
+\fBgetuid\fR(2)
diff --git a/man/ru/man1/login.1 b/man/ru/man1/login.1
new file mode 100644
index 00000000..66acb88e
--- /dev/null
+++ b/man/ru/man1/login.1
@@ -0,0 +1,480 @@
+'\" t
+.\" Title: login
+.\" Author: Julianne Frances Haugh
+.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
+.\" Date: 06/13/2019
+.\" Manual: Пользовательские команды
+.\" Source: shadow-utils 4.7
+.\" Language: Russian
+.\"
+.TH "login" "1" "06/13/2019" "shadow\-utils 4\&.7" "Пользовательские команды"
+.\" -----------------------------------------------------------------
+.\" * Define some portability stuff
+.\" -----------------------------------------------------------------
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.\" http://bugs.debian.org/507673
+.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.ie \n(.g .ds Aq \(aq
+.el .ds Aq '
+.\" -----------------------------------------------------------------
+.\" * set default formatting
+.\" -----------------------------------------------------------------
+.\" disable hyphenation
+.nh
+.\" disable justification (adjust text to left margin only)
+.ad l
+.\" -----------------------------------------------------------------
+.\" * MAIN CONTENT STARTS HERE *
+.\" -----------------------------------------------------------------
+.SH "НАЗВАНИЕ"
+login \- начинает сеанс в системе
+.SH "СИНТАКСИС"
+.HP \w'\fBlogin\fR\ 'u
+\fBlogin\fR [\-p] [\-h\ \fIузел\fR] [\fIимя_пользователя\fR] [\fIПЕРЕМЕННАЯ_ОКРУЖЕНИЯ=ЗНАЧЕНИЕ\fR...]
+.HP \w'\fBlogin\fR\ 'u
+\fBlogin\fR [\-p] [\-h\ \fIузел\fR] \-f \fIимя_пользователя\fR
+.HP \w'\fBlogin\fR\ 'u
+\fBlogin\fR [\-p] \-r\ \fIузел\fR
+.SH "ОПИСАНИЕ"
+.PP
+Программа
+\fBlogin\fR
+используется для запуска нового сеанса в системе\&. Как правило, эта программа вызывается автоматически и выводит приглашение
+\fIlogin:\fR
+на терминал пользователя\&. Программа
+\fBlogin\fR
+может восприниматься оболочкой командной строки не как простая программа и вызываться не как подпроцесс\&. При вызове из оболочки
+\fBlogin\fR
+должна запускаться посредством вызова
+\fBexec login\fR, что приводит к завершению работы пользователя в текущей оболочке (и, таким образом, вновь входящий в систему пользователь не попадёт в сеанс вызвавшего)\&. Попытка запустить
+\fBlogin\fR
+из любой оболочки, отличной от регистрационной, приводит к сообщению об ошибке\&.
+.PP
+В какой\-то момент пользователя попросят ввести свой пароль\&. Чтобы не допустить раскрытия, символы при вводе пароля не отображаются\&. Разрешено очень маленькое количество попыток ввода неправильного пароля, перед тем как
+\fBlogin\fR
+закончит работу и прервёт подключение\&.
+.PP
+Если включён механизм устаревания пароля учётной записи, то перед входом в систему может потребоваться смена пароля\&. Для этого нужно ввести старый пароль и новый пароль\&. Подробней об этом написано в
+\fBpasswd\fR(1)\&.
+.PP
+После успешного входа в систему, будут показаны сообщения от системы и о наличии почты\&. Можно отключить вывод файла системных сообщений из файла
+/etc/motd, создав в домашнем каталоге файл нулевой длины с именем
+\&.hushlogin\&. Сообщение о наличии почты может быть одним из: \(Fo\fIУ вас есть новая почта\&.\fR\(Fc, \(Fo\fIУ вас есть почта\&.\fR\(Fc или \(Fo\fIУ вас нет почты\&.\fR\(Fc, в зависимости от наполненности почтового ящика\&.
+.PP
+Значение идентификатора учётной записи и группы будет взято из файла
+/etc/passwd\&. Значения переменных
+\fB$HOME\fR,
+\fB$SHELL\fR,
+\fB$PATH\fR,
+\fB$LOGNAME\fR
+\fB$MAIL\fR
+устанавливаются согласно соответствующим полям учётной записи пользователя\&. Также могут быть установлены значения ulimit, umask и nice из поля GECOS\&.
+.PP
+В некоторых системах переменной окружения
+\fB$TERM\fR
+будет присвоен тип терминала линии tty, согласно данным из файла
+/etc/ttytype\&.
+.PP
+Также может быть выполнен сценарий инициализации пользовательского интерпретатора команд\&. Подробней об этой функции смотрите соответствующую справочную страницу\&.
+.PP
+Субсистемный вход в систему можно распознать по наличию символа \(Fo*\(Fc в начале регистрационной оболочки\&. Заданный домашний каталог будет использован как корень новой файловой системы, в которой регистрируется пользователь\&.
+.PP
+Программа
+\fBlogin\fR
+НЕ удаляет записи о пользователях из файла utmp\&. Эта задача программ
+\fBgetty\fR(8)
+\fBinit\fR(8)
+\(em удалять записи о владельце терминального сеанса\&. Если
+\fBlogin\fR
+запускается из командной строки без
+\fBexec\fR, то пользователь продолжает находиться в системе даже после завершения работы в \(Foпорождённом сеансе\(Fc\&.
+.SH "ПАРАМЕТРЫ"
+.PP
+\fB\-f\fR
+.RS 4
+Не выполнять аутентификацию, пользователь уже прошёл проверку\&.
+.sp
+Замечание: в этом случае
+\fIимя_пользователя\fR
+обязательно\&.
+.RE
+.PP
+\fB\-h\fR
+.RS 4
+Имя удалённого узла, на который нужно войти\&.
+.RE
+.PP
+\fB\-p\fR
+.RS 4
+Сохранить окружение\&.
+.RE
+.PP
+\fB\-r\fR
+.RS 4
+Выполнить протокол autologin для rlogin\&.
+.RE
+.PP
+Параметры
+\fB\-r\fR,
+\fB\-h\fR
+\fB\-f\fR
+используются только если
+\fBlogin\fR
+запускается суперпользователем\&.
+.SH "ПРЕДОСТЕРЕЖЕНИЯ"
+.PP
+Данная версия
+\fBlogin\fR
+может быть собрана с разными параметрами и только некоторые из них смогут быть использованы на любой машине\&.
+.PP
+Расположение файлов может отличаться на разных системах\&.
+.PP
+Программа
+\fBlogin\fR
+НЕ удаляет записи о пользователях из файла utmp\&. Эта задача программ
+\fBgetty\fR(8)
+\fBinit\fR(8)
+\(em удалять записи о владельце терминального сеанса\&. Если
+\fBlogin\fR
+запускается из командной строки без
+\fBexec\fR, то пользователь продолжает находиться в системе даже после завершения работы в \(Foпорождённом сеансе\(Fc\&.
+.PP
+Как и для любой программы, запуск
+\fBlogin\fR
+может быть подделан\&. Если неуполномоченные пользователи имеют физический доступ к машине, то атакующий может использовать это для получения пароля следующего человека, который будет работать за машиной\&. Под Linux пользователи могут использовать механизм SAK для установления достоверного пути и таким образом предотвращения атаки\&.
+.SH "НАСТРОЙКА"
+.PP
+На работу этого инструмента влияют следующие переменные настройки из
+/etc/login\&.defs:
+.PP
+\fBCONSOLE\fR (строка)
+.RS 4
+Если определена, то значение равно или полному пути к файлу с именами устройств (одно на строку), или списку имён устройств, перечисленных через \(Fo:\(Fc\&. Вход суперпользователя будет разрешён только с этих устройств\&.
+.sp
+Если не определена, то суперпользователь может входить в систему с любого устройства\&.
+.sp
+Устройства должны указываться без начального префикса /dev/\&.
+.RE
+.PP
+\fBCONSOLE_GROUPS\fR (строка)
+.RS 4
+Список групп для добавления к набору пользовательских дополнительных групп при входе с консоли (определяемой переменной CONSOLE)\&. По умолчанию не указана\&.
+
+Используйте осторожно \(em может дать пользователям постоянный доступ к этим группам, даже если они не входили с консоли\&.
+.RE
+.PP
+\fBDEFAULT_HOME\fR (логический)
+.RS 4
+Определяет, можно ли войти в систему, если нельзя выполнить cd в домашний каталог\&. По умолчанию \(Fono\(Fc\&.
+.sp
+Если равно
+\fIyes\fR, то пользователь будет попадать в корневой каталог (/), если невозможно выполнить cd в его домашний каталог\&.
+.RE
+.PP
+\fBENV_HZ\fR (строка)
+.RS 4
+Если установлена, то будет использоваться для определения переменной окружения HZ при входе пользователя в систему\&. Значение должно начинаться с
+\fIHZ=\fR\&. Обычное значение для Linux \(em
+\fIHZ=100\fR\&.
+.RE
+.PP
+\fBENV_PATH\fR (строка)
+.RS 4
+If set, it will be used to define the PATH environment variable when a regular user login\&. The value is a colon separated list of paths (for example
+\fI/bin:/usr/bin\fR) and can be preceded by
+\fIPATH=\fR\&. The default value is
+\fIPATH=/bin:/usr/bin\fR\&.
+.RE
+.PP
+\fBENV_SUPATH\fR (строка)
+.RS 4
+If set, it will be used to define the PATH environment variable when the superuser login\&. The value is a colon separated list of paths (for example
+\fI/sbin:/bin:/usr/sbin:/usr/bin\fR) and can be preceded by
+\fIPATH=\fR\&. The default value is
+\fIPATH=/sbin:/bin:/usr/sbin:/usr/bin\fR\&.
+.RE
+.PP
+\fBENV_TZ\fR (строка)
+.RS 4
+Если установлена, то будет использоваться для определения переменной окружения TZ при входе пользователя\&. Значение может быть равно имени часового пояса, начинающегося
+\fITZ=\fR
+(например,
+\fITZ=CST6CDT\fR), или полному пути к файлу с параметрами часового пояса (например,
+/etc/tzname)\&.
+.sp
+Если указан полный путь, но файл не существует или недоступен для чтения, то используется значение по умолчанию:
+\fITZ=CST6CDT\fR\&.
+.RE
+.PP
+\fBENVIRON_FILE\fR (строка)
+.RS 4
+Если этот файл существует и доступ для чтения, то из него читает регистрационное окружение\&. Каждая строка должна иметь формат: имя=значение\&.
+.sp
+Строки, начинающиеся с #, считаются комментарием и игнорируются\&.
+.RE
+.PP
+\fBERASECHAR\fR (число)
+.RS 4
+Символ ERASE у терминала (\fI010\fR
+= backspace,
+\fI0177\fR
+= DEL)\&.
+.sp
+Значение может начинаться с \(Fo0\(Fc при указании значения в восьмеричной системе счисления или \(Fo0x\(Fc при указании значения в шестнадцатеричной системе счисления\&.
+.RE
+.PP
+\fBFAIL_DELAY\fR (число)
+.RS 4
+Задержка в секундах перед повторной попыткой после неудачного входа\&.
+.RE
+.PP
+\fBFAILLOG_ENAB\fR (логический)
+.RS 4
+Включить протоколирование и показ информации о неудачных входах из
+/var/log/faillog\&.
+.RE
+.PP
+\fBFAKE_SHELL\fR (строка)
+.RS 4
+Если установлена, то программа
+\fBlogin\fR
+запустит указанную оболочку вместо пользовательской оболочки заданной в
+/etc/passwd\&.
+.RE
+.PP
+\fBFTMP_FILE\fR (строка)
+.RS 4
+Если определена, то неудачные попытки входа будут протоколироваться в этот файл в формате utmp\&.
+.RE
+.PP
+\fBHUSHLOGIN_FILE\fR (строка)
+.RS 4
+Если определена, то этот файл может заблокировать все обычные переговоры (chatter) при входе\&. Если указан полный путь к файлу, то будет включён сокращённый (hushed) режим, если в этом файле указано имя пользователя или оболочка\&. Если указан не полный путь, то будет включён сокращённый (hushed) режим, если файл находится в домашнем каталоге пользователя\&.
+.RE
+.PP
+\fBISSUE_FILE\fR (строка)
+.RS 4
+Если определена, то этот файл будет показан перед каждым появлением приглашения на вход\&.
+.RE
+.PP
+\fBKILLCHAR\fR (число)
+.RS 4
+Символ KILL у терминала (\fI025\fR
+= CTRL/U)\&.
+.sp
+Значение может начинаться с \(Fo0\(Fc при указании значения в восьмеричной системе счисления или \(Fo0x\(Fc при указании значения в шестнадцатеричной системе счисления\&.
+.RE
+.PP
+\fBLASTLOG_ENAB\fR (логический)
+.RS 4
+Включить протоколирование и показ информации о времени входа из /var/log/lastlog\&.
+.RE
+.PP
+\fBLOGIN_RETRIES\fR (число)
+.RS 4
+Максимальное количество попыток входа при вводе неверного пароля\&.
+.RE
+.PP
+\fBLOGIN_STRING\fR (строка)
+.RS 4
+Строка\-приглашение к вводу пароля\&. Значение по умолчанию: \(FoPassword:\(Fc или перевод этой строки на разные языки\&. Если вы измените эту переменную, то перевод будет отсутствовать\&.
+.sp
+Если в строке содержится подстрока
+\fI%s\fR, то она будет заменена на имя пользователя\&.
+.RE
+.PP
+\fBLOGIN_TIMEOUT\fR (число)
+.RS 4
+Максимальное время в секундах, отведённое на вход\&.
+.RE
+.PP
+\fBLOG_OK_LOGINS\fR (логический)
+.RS 4
+Включить протоколирование успешных входов\&.
+.RE
+.PP
+\fBLOG_UNKFAIL_ENAB\fR (логический)
+.RS 4
+Включить показ неизвестных имён пользователей при записи неудачных попыток входа\&.
+.sp
+Замечание: протоколирование неизвестных имён пользователя может привести к проблемам с безопасностью, если пользователь введёт свой пароль вместо своего имени\&.
+.RE
+.PP
+\fBMAIL_CHECK_ENAB\fR (логический)
+.RS 4
+Включает проверку и показ состояния почтового ящика при входе\&.
+.sp
+Вы должны выключить это, если почтовый ящик проверяется из файлов автозапуска оболочки (\(Fomailx \-e\(Fc или похожей командой)\&.
+.RE
+.PP
+\fBMAIL_DIR\fR (строка)
+.RS 4
+Почтовый каталог\&. Данный параметр нужен для управления почтовым ящиком при изменении или удалении учётной записи пользователя\&. Если параметр не задан, то используется значение указанное при сборке\&.
+.RE
+.PP
+\fBMAIL_FILE\fR (строка)
+.RS 4
+Определяет расположение почтовых файлов пользователя относительно домашнего каталога\&.
+.RE
+.PP
+Переменные
+\fBMAIL_DIR\fR
+\fBMAIL_FILE\fR
+используются командами
+\fBuseradd\fR,
+\fBusermod\fR
+\fBuserdel\fR
+для создания, перемещения или удаления почты пользователя\&.
+.PP
+Если значение
+\fBMAIL_CHECK_ENAB\fR
+равно
+\fIyes\fR, то они также используются для определения переменной окружения
+\fBMAIL\fR\&.
+.PP
+\fBMOTD_FILE\fR (строка)
+.RS 4
+Если определена, то при входе будет показано \(Foсообщение дня\(Fc из файла со списком значений, разделённых \(Fo:\(Fc\&.
+.RE
+.PP
+\fBNOLOGINS_FILE\fR (строка)
+.RS 4
+Если определена, значение равно имени файла, чьё существование запретит вход для не суперпользователей\&. В файле должно содержаться сообщение, описывающее почему запрещён вход\&.
+.RE
+.PP
+\fBPORTTIME_CHECKS_ENAB\fR (логический)
+.RS 4
+Включить проверку временных ограничений, заданных в
+/etc/porttime\&.
+.RE
+.PP
+\fBQUOTAS_ENAB\fR (логический)
+.RS 4
+Включает установку ограничений ресурсов из
+/etc/limits
+и ulimit, umask и niceness из поля gecos файла passwd\&.
+.RE
+.PP
+\fBTTYGROUP\fR (строка), \fBTTYPERM\fR (строка)
+.RS 4
+Права терминала: tty входа будет принадлежать группе
+\fBTTYGROUP\fR, а права будут назначены в соответствии с
+\fBTTYPERM\fR\&.
+.sp
+По умолчанию, терминалом владеет первичная группа пользователя, а права устанавливаются в
+\fI0600\fR\&.
+.sp
+\fBTTYGROUP\fR
+может задаваться или имя группы, или числовой идентификатор группы\&.
+.sp
+Если ваша программа
+\fBwrite\fR
+имеет \(Fosetgid\(Fc со специальной группой, которой принадлежат терминалы, то присвойте TTYGROUP номер этой группы, а TTYPERM значение 0620\&. В противном случае оставьте TTYGROUP закомментированной и назначьте TTYPERM значение 622 или 600\&.
+.RE
+.PP
+\fBTTYTYPE_FILE\fR (строка)
+.RS 4
+Если определена, то в ней указывается имя файла, в котором описано соответствие между линией tty и параметром окружения TERM\&. Каждая строка файла имеет формат вида \(Fovt100 tty01\(Fc\&.
+.RE
+.PP
+\fBULIMIT\fR (число)
+.RS 4
+Значение
+\fBulimit\fR
+по умолчанию\&.
+.RE
+.PP
+\fBUMASK\fR (число)
+.RS 4
+Задаёт начальное значение маски доступа для создаваемых файлов\&. Если не указано, то маска устанавливается в 022\&.
+.sp
+Команды
+\fBuseradd\fR
+\fBnewusers\fR
+используют эту маску для установки прав доступа к домашнему каталогу, который они создают\&.
+.sp
+Также она используется программой
+\fBlogin\fR
+для задания начального значения umask пользователя\&. Заметим, что эта маска может быть переопределена из пользовательской строки GECOS (если установлена переменная
+\fBQUOTAS_ENAB\fR) или указанием ограничения с идентификатором
+\fIK\fR, в
+\fBlimits\fR(5)\&.
+.RE
+.PP
+\fBUSERGROUPS_ENAB\fR (логический)
+.RS 4
+Включает установку группы битов umask равной битам владельца (пример: 022 \-> 002, 077 \-> 007) для не суперпользователей, если uid равен gid и имя пользователя совпадает с именем первичной группы\&.
+.sp
+Если значение равно
+\fIyes\fR, то
+\fBuserdel\fR
+удаляет пользовательскую группу, если в ней нет больше членов, а
+\fBuseradd\fR
+по умолчанию создаёт группу с именем пользователя\&.
+.RE
+.SH "ФАЙЛЫ"
+.PP
+/var/run/utmp
+.RS 4
+содержит список работающих сеансов в системе
+.RE
+.PP
+/var/log/wtmp
+.RS 4
+содержит список завершённых сеансов работы с системой
+.RE
+.PP
+/etc/passwd
+.RS 4
+содержит информацию о пользователях
+.RE
+.PP
+/etc/shadow
+.RS 4
+содержит защищаемую информацию о пользователях
+.RE
+.PP
+/etc/motd
+.RS 4
+содержит системные сообщения за день
+.RE
+.PP
+/etc/nologin
+.RS 4
+при существовании файла блокируется доступ в систему обычным пользователям
+.RE
+.PP
+/etc/ttytype
+.RS 4
+содержит список типов терминалов
+.RE
+.PP
+$HOME/\&.hushlogin
+.RS 4
+при существовании файла системные сообщения при входе в систему не выводятся
+.RE
+.PP
+/etc/login\&.defs
+.RS 4
+содержит конфигурацию подсистемы теневых паролей
+.RE
+.SH "СМОТРИТЕ ТАКЖЕ"
+.PP
+\fBmail\fR(1),
+\fBpasswd\fR(1),
+\fBsh\fR(1),
+\fBsu\fR(1),
+\fBlogin.defs\fR(5),
+\fBnologin\fR(5),
+\fBpasswd\fR(5),
+\fBsecuretty\fR(5),
+\fBgetty\fR(8)\&.
diff --git a/man/ru/man1/newgrp.1 b/man/ru/man1/newgrp.1
new file mode 100644
index 00000000..423db6ff
--- /dev/null
+++ b/man/ru/man1/newgrp.1
@@ -0,0 +1,92 @@
+'\" t
+.\" Title: newgrp
+.\" Author: Julianne Frances Haugh
+.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
+.\" Date: 06/13/2019
+.\" Manual: Пользовательские команды
+.\" Source: shadow-utils 4.7
+.\" Language: Russian
+.\"
+.TH "newgrp" "1" "06/13/2019" "shadow\-utils 4\&.7" "Пользовательские команды"
+.\" -----------------------------------------------------------------
+.\" * Define some portability stuff
+.\" -----------------------------------------------------------------
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.\" http://bugs.debian.org/507673
+.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.ie \n(.g .ds Aq \(aq
+.el .ds Aq '
+.\" -----------------------------------------------------------------
+.\" * set default formatting
+.\" -----------------------------------------------------------------
+.\" disable hyphenation
+.nh
+.\" disable justification (adjust text to left margin only)
+.ad l
+.\" -----------------------------------------------------------------
+.\" * MAIN CONTENT STARTS HERE *
+.\" -----------------------------------------------------------------
+.SH "НАЗВАНИЕ"
+newgrp \- выполняет регистрацию пользователя в новой группе
+.SH "СИНТАКСИС"
+.HP \w'\fBnewgrp\fR\ 'u
+\fBnewgrp\fR [\-] [\fIгруппа\fR]
+.SH "ОПИСАНИЕ"
+.PP
+Программа
+\fBnewgrp\fR
+используется для изменения ID текущей группы в работающем сеансе\&. Если указан необязательный параметр
+\fB\-\fR, то окружение пользователя будет инициализировано повторно, как если бы пользователь заново вошёл в систему, иначе имеющееся окружение, включая текущий рабочий каталог, изменено не будет\&.
+.PP
+Программа
+\fBnewgrp\fR
+изменяет идентификатор текущей реальной группы на заданный или на группу по умолчанию, указанную в файле
+/etc/passwd, в случае если имя группы не указано\&. Программа
+\fBnewgrp\fR
+также пытается добавить группу в список групп пользователя\&. Если пользователь не является суперпользователем, то его попросят ввести пароль, даже если он его не имеет (в файле
+/etc/shadow, если для этого пользователя имеется запись в файле теневых паролей, иначе используется файл
+/etc/passwd), а группа имеет, или если пользователь не является членом группы, а группа имеет пароль\&. Если пользователь не является членом группы, а у группы пустой пароль, то пользователю будет отказано в доступе\&.
+.PP
+Если есть запись для этой группы в файле
+/etc/gshadow, то список членов и пароль этой группы будут взяты из этого файла, иначе используется запись из файла
+/etc/group\&.
+.SH "НАСТРОЙКА"
+.PP
+На работу этого инструмента влияют следующие переменные настройки из
+/etc/login\&.defs:
+.PP
+\fBSYSLOG_SG_ENAB\fR (логический)
+.RS 4
+Включить протоколирование \(Fosyslog\(Fc действий
+\fBsg\fR\&.
+.RE
+.SH "ФАЙЛЫ"
+.PP
+/etc/passwd
+.RS 4
+содержит информацию о пользователях
+.RE
+.PP
+/etc/shadow
+.RS 4
+содержит защищаемую информацию о пользователях
+.RE
+.PP
+/etc/group
+.RS 4
+содержит информацию о группах
+.RE
+.PP
+/etc/gshadow
+.RS 4
+содержит защищаемую информацию о группах
+.RE
+.SH "СМОТРИТЕ ТАКЖЕ"
+.PP
+\fBid\fR(1),
+\fBlogin\fR(1),
+\fBsu\fR(1),
+\fBsg\fR(1),
+\fBgpasswd\fR(1),
+\fBgroup\fR(5), \fBgshadow\fR(5)\&.
diff --git a/man/ru/man1/passwd.1 b/man/ru/man1/passwd.1
new file mode 100644
index 00000000..9500dca8
--- /dev/null
+++ b/man/ru/man1/passwd.1
@@ -0,0 +1,358 @@
+'\" t
+.\" Title: passwd
+.\" Author: Julianne Frances Haugh
+.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
+.\" Date: 06/13/2019
+.\" Manual: Пользовательские команды
+.\" Source: shadow-utils 4.7
+.\" Language: Russian
+.\"
+.TH "passwd" "1" "06/13/2019" "shadow\-utils 4\&.7" "Пользовательские команды"
+.\" -----------------------------------------------------------------
+.\" * Define some portability stuff
+.\" -----------------------------------------------------------------
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.\" http://bugs.debian.org/507673
+.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.ie \n(.g .ds Aq \(aq
+.el .ds Aq '
+.\" -----------------------------------------------------------------
+.\" * set default formatting
+.\" -----------------------------------------------------------------
+.\" disable hyphenation
+.nh
+.\" disable justification (adjust text to left margin only)
+.ad l
+.\" -----------------------------------------------------------------
+.\" * MAIN CONTENT STARTS HERE *
+.\" -----------------------------------------------------------------
+.SH "НАЗВАНИЕ"
+passwd \- изменяет пароль пользователя
+.SH "СИНТАКСИС"
+.HP \w'\fBpasswd\fR\ 'u
+\fBpasswd\fR [\fIпараметры\fR] [\fIУЧЁТНАЯ_ЗАПИСЬ\fR]
+.SH "ОПИСАНИЕ"
+.PP
+Программа
+\fBpasswd\fR
+изменяет пароли пользовательских учётных записей\&. Обычный пользователь может изменить пароль только своей учётной записи, суперпользователь может изменить пароль любой учётной записи\&. Программа
+\fBpasswd\fR
+также изменяет информацию об учётной записи или срок действия пароля\&.
+.SS "Изменение пароля"
+.PP
+Сначала пользователя попросят ввести старый пароль, если он был\&. Этот пароль зашифровывается и сравнивается с имеющимся\&. У пользователя есть только одна попытка ввести правильный пароль\&. Для суперпользователя этот шаг пропускается, для того чтобы можно было изменить забытый пароль\&.
+.PP
+После ввода пароля проверяется информация об устаревании пароля, чтобы убедиться, что пользователю разрешено изменять пароль в настоящий момент\&. Если нет, то
+\fBpasswd\fR
+не производит изменение пароля и завершает работу\&.
+.PP
+Затем пользователю предложат дважды ввести новый пароль\&. Значение второго ввода сравнивается с первым и для изменения пароли из обеих попыток должны совпасть\&.
+.PP
+Затем пароль тестируется на сложность подбора\&. Согласно общим принципам, пароли должны быть длиной от 6 до 8 символов и включать один или более символов каждого типа:
+.sp
+.RS 4
+.ie n \{\
+\h'-04'\(bu\h'+03'\c
+.\}
+.el \{\
+.sp -1
+.IP \(bu 2.3
+.\}
+строчные буквы
+.RE
+.sp
+.RS 4
+.ie n \{\
+\h'-04'\(bu\h'+03'\c
+.\}
+.el \{\
+.sp -1
+.IP \(bu 2.3
+.\}
+цифры от 0 до 9
+.RE
+.sp
+.RS 4
+.ie n \{\
+\h'-04'\(bu\h'+03'\c
+.\}
+.el \{\
+.sp -1
+.IP \(bu 2.3
+.\}
+знаки пунктуации
+.RE
+.PP
+Не включайте системные символы стирания и удаления\&. Программа
+\fBpasswd\fR
+не примет пароль, который не имеет достаточной сложности\&.
+.SS "Выбор пароля"
+.PP
+Безопасность пароля зависит от стойкости алгоритма шифрования и размера пространства ключа\&. В старых системах
+\fIUNIX\fR
+метод шифрования основывался на алгоритме NBS DES\&. Сейчас рекомендуют более новые методы (смотрите
+\fBENCRYPT_METHOD\fR)\&. Размер пространства ключа зависит от степени произвольности выбранного пароля\&.
+.PP
+При обеспечении безопасности пароля выбирают нечто среднее между сложным паролем и сложностью работы с ним\&. По этой причине, вы не должны использовать пароль, который является словом из словаря или который придётся записать из\-за его сложности\&. Также, пароль не должен быть названием чего\-либо, номером вашей лицензии, днём рождения и домашним адресом\&. Обо всём этом легко догадаться, что приведёт к нарушению безопасности системы\&.
+.PP
+You can find advice on how to choose a strong password on http://en\&.wikipedia\&.org/wiki/Password_strength
+.SH "ПАРАМЕТРЫ"
+.PP
+Параметры команды
+\fBpasswd\fR:
+.PP
+\fB\-a\fR, \fB\-\-all\fR
+.RS 4
+Этот параметр можно использовать только вместе с
+\fB\-S\fR
+для вывода статуса всех пользователей\&.
+.RE
+.PP
+\fB\-d\fR, \fB\-\-delete\fR
+.RS 4
+Удалить пароль пользователя (сделать его пустым)\&. Это быстрый способ заблокировать пароль учётной записи\&. Это сделает указанную учётную запись беспарольной\&.
+.RE
+.PP
+\fB\-e\fR, \fB\-\-expire\fR
+.RS 4
+Немедленно сделать пароль устаревшим\&. В результате это заставит пользователя изменить пароль при следующем входе в систему\&.
+.RE
+.PP
+\fB\-h\fR, \fB\-\-help\fR
+.RS 4
+Показать краткую справку и закончить работу\&.
+.RE
+.PP
+\fB\-i\fR, \fB\-\-inactive\fR\ \&\fIДНЕЙ\fR
+.RS 4
+Этот параметр используется для блокировки учётной записи по прошествии заданного числа дней после устаревания пароля\&. То есть, если пароль устарел и прошло более указанных
+\fIДНЕЙ\fR, то пользователь больше не сможет использовать данную учётную запись\&.
+.RE
+.PP
+\fB\-k\fR, \fB\-\-keep\-tokens\fR
+.RS 4
+Указывает, что изменение пароля нужно выполнить только для устаревших ключей аутентификации (паролей)\&. Пользователи хотят оставить свои непросроченные ключи нетронутыми\&.
+.RE
+.PP
+\fB\-l\fR, \fB\-\-lock\fR
+.RS 4
+Заблокировать пароль указанной учётной записи\&. Этот параметр блокирует пароль, изменяя его значение на вариант, который не может быть шифрованным паролем (добавляется символ \(Fo!\(Fc в начало пароля)\&.
+.sp
+Заметим, что это не блокирует учётную запись\&. Пользователь всё ещё может войти в систему с помощью другого способа аутентификации (например, с помощью ключа SSH)\&. Чтобы заблокировать учётную запись, администратор должен использовать команду
+\fBusermod \-\-expiredate 1\fR
+(это установит дату устаревания учётной запись равной 2 января 1970 года)\&.
+.sp
+Посетитель с заблокированным паролем не может изменить свой пароль\&.
+.RE
+.PP
+\fB\-n\fR, \fB\-\-mindays\fR\ \&\fIМИН_ДНЕЙ\fR
+.RS 4
+Задать
+\fIминимальное количество дней\fR
+между сменами пароля\&. Нулевое значение этого поля указывает на то, что пользователь может менять свой пароль когда захочет\&.
+.RE
+.PP
+\fB\-q\fR, \fB\-\-quiet\fR
+.RS 4
+Не выводить сообщений при работе\&.
+.RE
+.PP
+\fB\-r\fR, \fB\-\-repository\fR\ \&\fIРЕПОЗИТОРИЙ\fR
+.RS 4
+Изменить пароль в
+\fIРЕПОЗИТОРИИ\fR\&.
+.RE
+.PP
+\fB\-R\fR, \fB\-\-root\fR\ \&\fIКАТ_CHROOT\fR
+.RS 4
+Выполнить изменения в каталоге
+\fIКАТ_CHROOT\fR
+и использовать файлы настройки из каталога
+\fIКАТ_CHROOT\fR\&.
+.RE
+.PP
+\fB\-S\fR, \fB\-\-status\fR
+.RS 4
+Показать состояние учётной записи\&. Информация о состоянии содержит 7 полей\&. Первое поле содержит имя учётной записи\&. Второе поле указывает, заблокирован ли пароль учётной записи (L), она без пароля (NP) или у неё есть рабочий пароль (P)\&. Третье поле хранит дату последнего изменения пароля\&. В следующих четырёх полях хранятся минимальный срок, максимальный срок, период выдачи предупреждения и период неактивности пароля\&. Эти сроки измеряются в днях\&.
+.RE
+.PP
+\fB\-u\fR, \fB\-\-unlock\fR
+.RS 4
+Разблокировать пароль указанной учётной записи\&. Этот параметр разблокирует пароль, возвращая его прежнее значение (которое было перед использованием параметра
+\fB\-l\fR)\&.
+.RE
+.PP
+\fB\-w\fR, \fB\-\-warndays\fR\ \&\fIПРЕД_ДНЕЙ\fR
+.RS 4
+Установить число дней выдачи предупреждения, перед тем как потребуется смена пароля\&. В параметре
+\fIПРЕД_ДНЕЙ\fR
+указывается число дней перед тем как пароль устареет, в течении которых пользователю будут напоминать, что пароль скоро устареет\&.
+.RE
+.PP
+\fB\-x\fR, \fB\-\-maxdays\fR\ \&\fIМАКС_ДНЕЙ\fR
+.RS 4
+Установить максимальное количество дней, в течении которых пароль остаётся рабочим\&. После
+\fIМАКС_ДНЕЙ\fR
+пароль нужно изменить\&.
+.sp
+Значение
+\fI\-1\fR
+в параметре
+\fIМАКС_ДНЕЙ\fR
+отменяет проверку пароля\&.
+.RE
+.SH "ПРЕДОСТЕРЕЖЕНИЯ"
+.PP
+Сложность пароля проверяется на разных машинах по разному\&. Пользователю настоятельно рекомендуется выбирать пароль такой сложности, чтобы ему нормально работалось\&.
+.PP
+Пользователи не могут изменять свои пароли в системе, если включён NIS и они не вошли на сервер NIS\&.
+.SH "НАСТРОЙКА"
+.PP
+На работу этого инструмента влияют следующие переменные настройки из
+/etc/login\&.defs:
+.PP
+\fBENCRYPT_METHOD\fR (строка)
+.RS 4
+Задаёт системный алгоритм шифрования по умолчанию для шифрования паролей (используется, если алгоритм не указан в командной строке)\&.
+.sp
+Возможны следующие значения:
+\fIDES\fR
+(по умолчанию),
+\fIMD5\fR, \fISHA256\fR, \fISHA512\fR\&.
+.sp
+Замечание: этот параметр переопределяет переменную
+\fBMD5_CRYPT_ENAB\fR\&.
+.RE
+.PP
+\fBMD5_CRYPT_ENAB\fR (логический)
+.RS 4
+Обозначает, что пароль должен быть зашифрован по алгоритму на основе MD5\&. Если значение равно
+\fIyes\fR, то новые пароли будут зашифрованы по алгоритму на основе MD5, совместимому с используемым в новых версиях FreeBSD\&. Он поддерживает пароли неограниченной длины и имеет более длинную строку соли\&. Установите в
+\fIno\fR, если вам нужно копировать шифрованные пароли в другие системы, которые не поддерживают новый алгоритм\&. По умолчанию
+\fIno\fR\&.
+.sp
+Эта переменная переопределяется переменной
+\fBENCRYPT_METHOD\fR
+или любым параметром командной строки, который задаёт алгоритм шифрования\&.
+.sp
+Эта переменная устарела; используйте
+\fBENCRYPT_METHOD\fR\&.
+.RE
+.PP
+\fBOBSCURE_CHECKS_ENAB\fR (логический)
+.RS 4
+Включает дополнительные проверки при смене пароля\&.
+.RE
+.PP
+\fBPASS_ALWAYS_WARN\fR (логический)
+.RS 4
+Предупреждать о слабых паролях (но разрешать их использовать) для суперпользователя\&.
+.RE
+.PP
+\fBPASS_CHANGE_TRIES\fR (число)
+.RS 4
+Максимальное количество попыток смены пароля (слишком простого) при непрохождении проверки\&.
+.RE
+.PP
+\fBPASS_MAX_LEN\fR (число), \fBPASS_MIN_LEN\fR (число)
+.RS 4
+Количество значимых символов в пароле для crypt()\&. По умолчанию значение
+\fBPASS_MAX_LEN\fR
+равно 8\&. Не изменяйте, если ваш crypt() лучше\&. Игнорируется, если значение
+\fBMD5_CRYPT_ENAB\fR
+равно
+\fIyes\fR\&.
+.RE
+.PP
+\fBSHA_CRYPT_MIN_ROUNDS\fR (число), \fBSHA_CRYPT_MAX_ROUNDS\fR (число)
+.RS 4
+Если значение
+\fBENCRYPT_METHOD\fR
+равно
+\fISHA256\fR
+или
+\fISHA512\fR, эта переменная определяет количество раундов SHA, используемых алгоритмом шифрования по умолчанию (если количество раундов не задано в командной строке)\&.
+.sp
+Увеличение количества раундов повышает сложность подбора пароля простым перебором\&. Но заметим, что при этом для аутентификации пользователей требуется большее количество процессорных ресурсов\&.
+.sp
+Если не задана, то libc выбирает значение количества раундов по умолчанию (5000)\&.
+.sp
+Значения должны лежать в диапазоне 1000\-999999999\&.
+.sp
+Если задано какое\-то одно значение \(em
+\fBSHA_CRYPT_MIN_ROUNDS\fR
+или
+\fBSHA_CRYPT_MAX_ROUNDS\fR
+\(em то будет использовано это значение\&.
+.sp
+Если
+\fBSHA_CRYPT_MIN_ROUNDS\fR
+>
+\fBSHA_CRYPT_MAX_ROUNDS\fR, то используется большее значение\&.
+.RE
+.SH "ФАЙЛЫ"
+.PP
+/etc/passwd
+.RS 4
+содержит информацию о пользователях
+.RE
+.PP
+/etc/shadow
+.RS 4
+содержит защищаемую информацию о пользователях
+.RE
+.PP
+/etc/login\&.defs
+.RS 4
+содержит конфигурацию подсистемы теневых паролей
+.RE
+.SH "ВОЗВРАЩАЕМЫЕ ЗНАЧЕНИЯ"
+.PP
+Программа
+\fBpasswd\fR
+завершая работу, возвращает следующие значения:
+.PP
+\fI0\fR
+.RS 4
+успешное выполнение
+.RE
+.PP
+\fI1\fR
+.RS 4
+доступ запрещён
+.RE
+.PP
+\fI2\fR
+.RS 4
+недопустимая комбинация параметров
+.RE
+.PP
+\fI3\fR
+.RS 4
+неожиданная ошибка при работе, ничего не сделано
+.RE
+.PP
+\fI4\fR
+.RS 4
+неожиданная ошибка при работе, отсутствует файл
+passwd
+.RE
+.PP
+\fI5\fR
+.RS 4
+файл
+passwd
+занят другой программой, попробуйте ещё раз
+.RE
+.PP
+\fI6\fR
+.RS 4
+недопустимое значение параметра
+.RE
+.SH "СМОТРИТЕ ТАКЖЕ"
+.PP
+\fBchpasswd\fR(8),
+\fBpasswd\fR(5),
+\fBshadow\fR(5),
+\fBlogin.defs\fR(5),\fBusermod\fR(8)\&.
diff --git a/man/ru/man1/sg.1 b/man/ru/man1/sg.1
new file mode 100644
index 00000000..e77c4536
--- /dev/null
+++ b/man/ru/man1/sg.1
@@ -0,0 +1,91 @@
+'\" t
+.\" Title: sg
+.\" Author: Julianne Frances Haugh
+.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
+.\" Date: 06/13/2019
+.\" Manual: Пользовательские команды
+.\" Source: shadow-utils 4.7
+.\" Language: Russian
+.\"
+.TH "sg" "1" "06/13/2019" "shadow\-utils 4\&.7" "Пользовательские команды"
+.\" -----------------------------------------------------------------
+.\" * Define some portability stuff
+.\" -----------------------------------------------------------------
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.\" http://bugs.debian.org/507673
+.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.ie \n(.g .ds Aq \(aq
+.el .ds Aq '
+.\" -----------------------------------------------------------------
+.\" * set default formatting
+.\" -----------------------------------------------------------------
+.\" disable hyphenation
+.nh
+.\" disable justification (adjust text to left margin only)
+.ad l
+.\" -----------------------------------------------------------------
+.\" * MAIN CONTENT STARTS HERE *
+.\" -----------------------------------------------------------------
+.SH "НАЗВАНИЕ"
+sg \- выполняет команду с правами другой группы
+.SH "СИНТАКСИС"
+.HP \w'\fBsg\fR\ 'u
+\fBsg\fR [\-] [группа\ [\-c]\ команда]
+.SH "ОПИСАНИЕ"
+.PP
+Команда
+\fBsg\fR
+работает подобно команде
+\fBnewgrp\fR, но в качестве параметра ожидает команду\&. Команда будет выполнена оболочкой
+/bin/sh\&. В большинстве оболочек, откуда может запускаться
+\fBsg\fR, команду из нескольких слов нужно заключать в кавычки\&. Другим отличием между
+\fBnewgrp\fR
+\fBsg\fR
+является то, что некоторые оболочки воспринимают
+\fBnewgrp\fR
+особенным образом, заменяя себя новым экземпляром оболочки, которую создаёт
+\fBnewgrp\fR\&. Этого не происходит с командой
+\fBsg\fR, поэтому после завершения работы
+\fBsg\fR
+вы возвращаетесь в предыдущую группу\&.
+.SH "НАСТРОЙКА"
+.PP
+На работу этого инструмента влияют следующие переменные настройки из
+/etc/login\&.defs:
+.PP
+\fBSYSLOG_SG_ENAB\fR (логический)
+.RS 4
+Включить протоколирование \(Fosyslog\(Fc действий
+\fBsg\fR\&.
+.RE
+.SH "ФАЙЛЫ"
+.PP
+/etc/passwd
+.RS 4
+содержит информацию о пользователях
+.RE
+.PP
+/etc/shadow
+.RS 4
+содержит защищаемую информацию о пользователях
+.RE
+.PP
+/etc/group
+.RS 4
+содержит информацию о группах
+.RE
+.PP
+/etc/gshadow
+.RS 4
+содержит защищаемую информацию о группах
+.RE
+.SH "СМОТРИТЕ ТАКЖЕ"
+.PP
+\fBid\fR(1),
+\fBlogin\fR(1),
+\fBnewgrp\fR(1),
+\fBsu\fR(1),
+\fBgpasswd\fR(1),
+\fBgroup\fR(5), \fBgshadow\fR(5)\&.
diff --git a/man/ru/man1/su.1 b/man/ru/man1/su.1
new file mode 100644
index 00000000..d64319c4
--- /dev/null
+++ b/man/ru/man1/su.1
@@ -0,0 +1,442 @@
+'\" t
+.\" Title: su
+.\" Author: Julianne Frances Haugh
+.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
+.\" Date: 06/13/2019
+.\" Manual: Пользовательские команды
+.\" Source: shadow-utils 4.7
+.\" Language: Russian
+.\"
+.TH "su" "1" "06/13/2019" "shadow\-utils 4\&.7" "Пользовательские команды"
+.\" -----------------------------------------------------------------
+.\" * Define some portability stuff
+.\" -----------------------------------------------------------------
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.\" http://bugs.debian.org/507673
+.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.ie \n(.g .ds Aq \(aq
+.el .ds Aq '
+.\" -----------------------------------------------------------------
+.\" * set default formatting
+.\" -----------------------------------------------------------------
+.\" disable hyphenation
+.nh
+.\" disable justification (adjust text to left margin only)
+.ad l
+.\" -----------------------------------------------------------------
+.\" * MAIN CONTENT STARTS HERE *
+.\" -----------------------------------------------------------------
+.SH "НАЗВАНИЕ"
+su \- изменяет ID пользователя или делает его суперпользователем
+.SH "СИНТАКСИС"
+.HP \w'\fBsu\fR\ 'u
+\fBsu\fR [\fIпараметры\fR] [\fI\-\fR] [\fIимя_пользователя\fR\ [\ \fIargs\fR\ ]]
+.SH "ОПИСАНИЕ"
+.PP
+The
+\fBsu\fR
+command is used to become another user during a login session\&. Invoked without a
+\fBusername\fR,
+\fBsu\fR
+defaults to becoming the superuser\&. The
+\fB\-\fR
+option may be used to provide an environment similar to what the user would expect had the user logged in directly\&. The
+\fB\-c\fR
+option may be used to treat the next argument as a command by most shells\&.
+.PP
+Options are recognized everywhere in the argument list\&. You can use the
+\fB\-\-\fR
+argument to stop option parsing\&. The
+\fB\-\fR
+option is special: it is also recognized after
+\fB\-\-\fR, but has to be placed before
+\fBusername\fR\&.
+.PP
+Пользователю предложат ввести пароль, если он задан\&. При неверном пароле возникает сообщение об ошибке\&. Все попытки, удачные и неудачные, протоколируются системой с целью обнаружения злоупотреблений\&.
+.PP
+Текущее окружение передаётся новой оболочке\&. Значение
+\fB$PATH\fR
+сбрасывается в значение
+/bin:/usr/bin
+для обычных пользователей или в
+/sbin:/bin:/usr/sbin:/usr/bin
+для суперпользователя\&. Эти значения можно изменить в переменных
+\fBENV_PATH\fR
+\fBENV_SUPATH\fR
+в файле
+/etc/login\&.defs\&.
+.PP
+Субсистемный вход в систему можно распознать по наличию символа \(Fo*\(Fc в начале регистрационной оболочки\&. Заданный домашний каталог будет использован как корень новой файловой системы, в которой регистрируется пользователь\&.
+.SH "ПАРАМЕТРЫ"
+.PP
+Параметры команды
+\fBsu\fR:
+.PP
+\fB\-c\fR, \fB\-\-command\fR\ \&\fIКОМАНДА\fR
+.RS 4
+Указать команду, которая будет запущена оболочкой в виде параметра для
+\fB\-c\fR\&.
+.sp
+The executed command will have no controlling terminal\&. This option cannot be used to execute interactive programs which need a controlling TTY\&.
+.RE
+.PP
+\fB\-\fR, \fB\-l\fR, \fB\-\-login\fR
+.RS 4
+Предоставляет окружение, как если бы пользователь непосредственно регистрировался в системе\&.
+.sp
+When
+\fB\-\fR
+is used, it must be specified before any
+\fBusername\fR\&. For portability it is recommended to use it as last option, before any
+\fBusername\fR\&. The other forms (\fB\-l\fR
+and
+\fB\-\-login\fR) do not have this restriction\&.
+.RE
+.PP
+\fB\-s\fR, \fB\-\-shell\fR\ \&\fIОБОЛОЧКА\fR
+.RS 4
+Оболочка, которая будет запущена\&.
+.sp
+Запущенная оболочка выбирается из (в порядке убывания приоритета):
+.PP
+.RS 4
+Оболочка указанная в параметре \-\-shell\&.
+.RE
+.PP
+.RS 4
+Если используется
+\fB\-\-preserve\-environment\fR, то оболочка задаётся переменной окружения
+\fB$SHELL\fR\&.
+.RE
+.PP
+.RS 4
+Оболочка, указанная в записи файла
+/etc/passwd
+для заданного пользователя\&.
+.RE
+.PP
+.RS 4
+/bin/sh, если ни одной оболочке не было найдено с помощью методов, указанных выше\&.
+.RE
+.sp
+Если заданный пользователь имеет ограниченную оболочку (то есть оболочка в поле пользовательской записи в файле
+/etc/passwd
+отсутствует в файле
+/etc/shells), то параметр
+\fB\-\-shell\fR
+или переменная окружения
+\fB$SHELL\fR
+не будут учтены, если
+\fBsu\fR
+не была запущена суперпользователем\&.
+.RE
+.PP
+\fB\-m\fR, \fB\-p\fR, \fB\-\-preserve\-environment\fR
+.RS 4
+Сохранить текущее окружение за исключением:
+.PP
+\fB$PATH\fR
+.RS 4
+сбрасывается в значение
+\fBENV_PATH\fR
+или
+\fBENV_SUPATH\fR
+(смотрите далее) из
+/etc/login\&.defs;
+.RE
+.PP
+\fB$IFS\fR
+.RS 4
+сбрасывается в значение
+\(Fo<space><tab><newline>\(Fc, если она установлена\&.
+.RE
+.sp
+Если заданный пользователь имеет ограниченную оболочку, то этот параметр не сработает (если
+\fBsu\fR
+не запускается суперпользователем)\&.
+.sp
+Заметим, что поведение окружения по умолчанию таково:
+.PP
+.RS 4
+Переменные окружение
+\fB$HOME\fR,
+\fB$SHELL\fR,
+\fB$USER\fR,
+\fB$LOGNAME\fR,
+\fB$PATH\fR
+\fB$IFS\fR
+сбрасываются\&.
+.RE
+.PP
+.RS 4
+Если параметр
+\fB\-\-login\fR
+не указан, то окружение копируется, за исключением переменных, перечисленных выше\&.
+.RE
+.PP
+.RS 4
+Если параметр
+\fB\-\-login\fR
+указан, то переменные окружения
+\fB$TERM\fR,
+\fB$COLORTERM\fR,
+\fB$DISPLAY\fR
+\fB$XAUTHORITY\fR
+копируются (если они установлены)\&.
+.RE
+.PP
+.RS 4
+Если параметр
+\fB\-\-login\fR
+указан, то переменные окружения
+\fB$TZ\fR,
+\fB$HZ\fR
+\fB$MAIL\fR
+устанавливаются согласно переменным файла
+/etc/login\&.defs:
+\fBENV_TZ\fR,
+\fBENV_HZ\fR,
+\fBMAIL_DIR\fR
+\fBMAIL_FILE\fR
+(смотрите далее)\&.
+.RE
+.PP
+.RS 4
+Если параметр
+\fB\-\-login\fR
+указан, то дополнительные переменные окружения могут быть установлены из файла
+\fBENVIRON_FILE\fR
+(смотрите далее)\&.
+.RE
+.RE
+.SH "ПРЕДОСТЕРЕЖЕНИЯ"
+.PP
+Данная версия программы
+\fBsu\fR
+может быть собрана с разными параметрами и только некоторые из них смогут быть использованы на любой машине\&.
+.SH "НАСТРОЙКА"
+.PP
+На работу этого инструмента влияют следующие переменные настройки из
+/etc/login\&.defs:
+.PP
+\fBCONSOLE\fR (строка)
+.RS 4
+Если определена, то значение равно или полному пути к файлу с именами устройств (одно на строку), или списку имён устройств, перечисленных через \(Fo:\(Fc\&. Вход суперпользователя будет разрешён только с этих устройств\&.
+.sp
+Если не определена, то суперпользователь может входить в систему с любого устройства\&.
+.sp
+Устройства должны указываться без начального префикса /dev/\&.
+.RE
+.PP
+\fBCONSOLE_GROUPS\fR (строка)
+.RS 4
+Список групп для добавления к набору пользовательских дополнительных групп при входе с консоли (определяемой переменной CONSOLE)\&. По умолчанию не указана\&.
+
+Используйте осторожно \(em может дать пользователям постоянный доступ к этим группам, даже если они не входили с консоли\&.
+.RE
+.PP
+\fBDEFAULT_HOME\fR (логический)
+.RS 4
+Определяет, можно ли войти в систему, если нельзя выполнить cd в домашний каталог\&. По умолчанию \(Fono\(Fc\&.
+.sp
+Если равно
+\fIyes\fR, то пользователь будет попадать в корневой каталог (/), если невозможно выполнить cd в его домашний каталог\&.
+.RE
+.PP
+\fBENV_HZ\fR (строка)
+.RS 4
+Если установлена, то будет использоваться для определения переменной окружения HZ при входе пользователя в систему\&. Значение должно начинаться с
+\fIHZ=\fR\&. Обычное значение для Linux \(em
+\fIHZ=100\fR\&.
+.RE
+.PP
+\fBENVIRON_FILE\fR (строка)
+.RS 4
+Если этот файл существует и доступ для чтения, то из него читает регистрационное окружение\&. Каждая строка должна иметь формат: имя=значение\&.
+.sp
+Строки, начинающиеся с #, считаются комментарием и игнорируются\&.
+.RE
+.PP
+\fBENV_PATH\fR (строка)
+.RS 4
+If set, it will be used to define the PATH environment variable when a regular user login\&. The value is a colon separated list of paths (for example
+\fI/bin:/usr/bin\fR) and can be preceded by
+\fIPATH=\fR\&. The default value is
+\fIPATH=/bin:/usr/bin\fR\&.
+.RE
+.PP
+\fBENV_SUPATH\fR (строка)
+.RS 4
+If set, it will be used to define the PATH environment variable when the superuser login\&. The value is a colon separated list of paths (for example
+\fI/sbin:/bin:/usr/sbin:/usr/bin\fR) and can be preceded by
+\fIPATH=\fR\&. The default value is
+\fIPATH=/sbin:/bin:/usr/sbin:/usr/bin\fR\&.
+.RE
+.PP
+\fBENV_TZ\fR (строка)
+.RS 4
+Если установлена, то будет использоваться для определения переменной окружения TZ при входе пользователя\&. Значение может быть равно имени часового пояса, начинающегося
+\fITZ=\fR
+(например,
+\fITZ=CST6CDT\fR), или полному пути к файлу с параметрами часового пояса (например,
+/etc/tzname)\&.
+.sp
+Если указан полный путь, но файл не существует или недоступен для чтения, то используется значение по умолчанию:
+\fITZ=CST6CDT\fR\&.
+.RE
+.PP
+\fBLOGIN_STRING\fR (строка)
+.RS 4
+Строка\-приглашение к вводу пароля\&. Значение по умолчанию: \(FoPassword:\(Fc или перевод этой строки на разные языки\&. Если вы измените эту переменную, то перевод будет отсутствовать\&.
+.sp
+Если в строке содержится подстрока
+\fI%s\fR, то она будет заменена на имя пользователя\&.
+.RE
+.PP
+\fBMAIL_CHECK_ENAB\fR (логический)
+.RS 4
+Включает проверку и показ состояния почтового ящика при входе\&.
+.sp
+Вы должны выключить это, если почтовый ящик проверяется из файлов автозапуска оболочки (\(Fomailx \-e\(Fc или похожей командой)\&.
+.RE
+.PP
+\fBMAIL_DIR\fR (строка)
+.RS 4
+Почтовый каталог\&. Данный параметр нужен для управления почтовым ящиком при изменении или удалении учётной записи пользователя\&. Если параметр не задан, то используется значение указанное при сборке\&.
+.RE
+.PP
+\fBMAIL_FILE\fR (строка)
+.RS 4
+Определяет расположение почтовых файлов пользователя относительно домашнего каталога\&.
+.RE
+.PP
+Переменные
+\fBMAIL_DIR\fR
+\fBMAIL_FILE\fR
+используются командами
+\fBuseradd\fR,
+\fBusermod\fR
+\fBuserdel\fR
+для создания, перемещения или удаления почты пользователя\&.
+.PP
+Если значение
+\fBMAIL_CHECK_ENAB\fR
+равно
+\fIyes\fR, то они также используются для определения переменной окружения
+\fBMAIL\fR\&.
+.PP
+\fBQUOTAS_ENAB\fR (логический)
+.RS 4
+Включает установку ограничений ресурсов из
+/etc/limits
+и ulimit, umask и niceness из поля gecos файла passwd\&.
+.RE
+.PP
+\fBSULOG_FILE\fR (строка)
+.RS 4
+Если определена, то любая активность su будет протоколироваться в этот файл\&.
+.RE
+.PP
+\fBSU_NAME\fR (строка)
+.RS 4
+Если определена, то выводится имя команды когда работает \(Fosu \-\(Fc\&. Например, если значение равно \(Fosu\(Fc, то \(Fops\(Fc покажет команду как \(Fo\-su\(Fc\&. Если не определена, то \(Fops\(Fc покажет имя запускаемой оболочки например как \(Fo\-sh\(Fc\&.
+.RE
+.PP
+\fBSU_WHEEL_ONLY\fR (логический)
+.RS 4
+Если равна
+\fIyes\fR, то пользователь должен быть членом первой группы с gid 0 в файле
+/etc/group
+(в большинстве систем Linux называется
+\fIroot\fR), чтобы иметь возможность запускать
+\fBsu\fR
+для получения uid 0\&. Если группа не существует, или пуста, то никто не сможет получить uid 0 с помощью
+\fBsu\fR\&.
+.RE
+.PP
+\fBSYSLOG_SU_ENAB\fR (логический)
+.RS 4
+Включить протоколирование \(Fosyslog\(Fc действий
+\fBsu\fR
+\(em дополнительно к протоколированию в файле sulog\&.
+.RE
+.PP
+\fBUSERGROUPS_ENAB\fR (логический)
+.RS 4
+Включает установку группы битов umask равной битам владельца (пример: 022 \-> 002, 077 \-> 007) для не суперпользователей, если uid равен gid и имя пользователя совпадает с именем первичной группы\&.
+.sp
+Если значение равно
+\fIyes\fR, то
+\fBuserdel\fR
+удаляет пользовательскую группу, если в ней нет больше членов, а
+\fBuseradd\fR
+по умолчанию создаёт группу с именем пользователя\&.
+.RE
+.SH "ФАЙЛЫ"
+.PP
+/etc/passwd
+.RS 4
+содержит информацию о пользователях
+.RE
+.PP
+/etc/shadow
+.RS 4
+содержит защищаемую информацию о пользователях
+.RE
+.PP
+/etc/login\&.defs
+.RS 4
+содержит конфигурацию подсистемы теневых паролей
+.RE
+.SH "ВОЗВРАЩАЕМЫЕ ЗНАЧЕНИЯ"
+.PP
+При успешном выполнении
+\fBsu\fR
+возвращает код выхода команды, которая была выполнена\&.
+.PP
+Если выполнение команды завершилось по сигналу, то
+\fBsu\fR
+возвращает номер этого сигнала плюс 128\&.
+.PP
+Если su завершила команду (так как был запрос сделать это и команда не завершилась в положенное время), то
+\fBsu\fR
+завершается с кодом 255\&.
+.PP
+Некоторые коды выхода
+\fBsu\fR
+не зависят от запускаемой команды:
+.PP
+\fI0\fR
+.RS 4
+Успешно (только для
+\fB\-\-help\fR)
+.RE
+.PP
+\fI1\fR
+.RS 4
+Сбой аутентификации или системы
+.RE
+.PP
+\fI126\fR
+.RS 4
+Запрошенная команда не найдена
+.RE
+.PP
+\fI127\fR
+.RS 4
+Запрошенная команда не может быть выполнена
+.RE
+.SH "СМОТРИТЕ ТАКЖЕ"
+.PP
+\fBlogin\fR(1),
+\fBlogin.defs\fR(5),
+\fBsg\fR(1),
+\fBsh\fR(1)\&.
diff --git a/man/ru/man3/getspnam.3 b/man/ru/man3/getspnam.3
new file mode 100644
index 00000000..cd473da3
--- /dev/null
+++ b/man/ru/man3/getspnam.3
@@ -0,0 +1 @@
+.so man3/shadow.3
diff --git a/man/ru/man3/shadow.3 b/man/ru/man3/shadow.3
new file mode 100644
index 00000000..6b720266
--- /dev/null
+++ b/man/ru/man3/shadow.3
@@ -0,0 +1,242 @@
+'\" t
+.\" Title: shadow
+.\" Author: Julianne Frances Haugh
+.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
+.\" Date: 06/13/2019
+.\" Manual: Библиотечные функции
+.\" Source: shadow-utils 4.7
+.\" Language: Russian
+.\"
+.TH "shadow" "3" "06/13/2019" "shadow\-utils 4\&.7" "Библиотечные функции"
+.\" -----------------------------------------------------------------
+.\" * Define some portability stuff
+.\" -----------------------------------------------------------------
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.\" http://bugs.debian.org/507673
+.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.ie \n(.g .ds Aq \(aq
+.el .ds Aq '
+.\" -----------------------------------------------------------------
+.\" * set default formatting
+.\" -----------------------------------------------------------------
+.\" disable hyphenation
+.nh
+.\" disable justification (adjust text to left margin only)
+.ad l
+.\" -----------------------------------------------------------------
+.\" * MAIN CONTENT STARTS HERE *
+.\" -----------------------------------------------------------------
+.SH "НАЗВАНИЕ"
+shadow, getspnam \- процедуры для работы с файлом шифрованных паролей
+.SH "СИНТАКСИС"
+.PP
+\fI#include <shadow\&.h>\fR
+.PP
+\fIstruct spwd *getspent();\fR
+.PP
+\fIstruct spwd *getspnam(char\fR
+\fI*name\fR\fI);\fR
+.PP
+\fIvoid setspent();\fR
+.PP
+\fIvoid endspent();\fR
+.PP
+\fIstruct spwd *fgetspent(FILE\fR
+\fI*fp\fR\fI);\fR
+.PP
+\fIstruct spwd *sgetspent(char\fR
+\fI*cp\fR\fI);\fR
+.PP
+\fIint putspent(struct spwd\fR
+\fI*p,\fR
+\fIФАЙЛ\fR
+\fI*fp\fR\fI);\fR
+.PP
+\fIint lckpwdf();\fR
+.PP
+\fIint ulckpwdf();\fR
+.SH "ОПИСАНИЕ"
+.PP
+\fIshadow\fR
+управляет содержимым файла теневых паролей,
+/etc/shadow\&. Структура в файле
+\fI#include\fR:
+.sp
+.if n \{\
+.RS 4
+.\}
+.nf
+struct spwd {
+ char *sp_namp; /* имя пользователя */
+ char *sp_pwdp; /* шифрованный пароль */
+ long int sp_lstchg; /* дата последней смены пароля */
+ long int sp_min; /* дней должно пройти между сменами пароля\&. */
+ long int sp_max; /* дней перед необходимостью смены пароля */
+ long int sp_warn; /* дней вывода предупреждения об устаревании */
+ long int sp_inact; /* дней перед тем как учётная запись заблокируется */
+ long int sp_expire; /* дата устаревания учётной записи */
+ unsigned long int sp_flag; /* зарезервировано */
+}
+.fi
+.if n \{\
+.RE
+.\}
+.PP
+Значение каждого поля:
+.sp
+.RS 4
+.ie n \{\
+\h'-04'\(bu\h'+03'\c
+.\}
+.el \{\
+.sp -1
+.IP \(bu 2.3
+.\}
+sp_namp \- указатель на строку с именем пользователя, завершающуюся нулевым символом
+.RE
+.sp
+.RS 4
+.ie n \{\
+\h'-04'\(bu\h'+03'\c
+.\}
+.el \{\
+.sp -1
+.IP \(bu 2.3
+.\}
+sp_pwdp \- указатель на строку с паролем, завершающуюся нулевым символом
+.RE
+.sp
+.RS 4
+.ie n \{\
+\h'-04'\(bu\h'+03'\c
+.\}
+.el \{\
+.sp -1
+.IP \(bu 2.3
+.\}
+sp_lstchg \- количество дней, когда был изменён пароль последний раз, начиная с 1 января 1970 года
+.RE
+.sp
+.RS 4
+.ie n \{\
+\h'-04'\(bu\h'+03'\c
+.\}
+.el \{\
+.sp -1
+.IP \(bu 2.3
+.\}
+sp_min \- количество дней, когда можно не менять пароль
+.RE
+.sp
+.RS 4
+.ie n \{\
+\h'-04'\(bu\h'+03'\c
+.\}
+.el \{\
+.sp -1
+.IP \(bu 2.3
+.\}
+sp_max \- количество дней, которое должно пройти, чтобы нужно было поменять пароль
+.RE
+.sp
+.RS 4
+.ie n \{\
+\h'-04'\(bu\h'+03'\c
+.\}
+.el \{\
+.sp -1
+.IP \(bu 2.3
+.\}
+sp_warn \- количество дней, когда будет выдаваться предупреждение о скором устаревании пароля перед тем как пароль устареет
+.RE
+.sp
+.RS 4
+.ie n \{\
+\h'-04'\(bu\h'+03'\c
+.\}
+.el \{\
+.sp -1
+.IP \(bu 2.3
+.\}
+sp_inact \- количество дней, которые должны пройти после устаревания пароля, когда начинать считать, что учётная запись неактивна и заблокирована
+.RE
+.sp
+.RS 4
+.ie n \{\
+\h'-04'\(bu\h'+03'\c
+.\}
+.el \{\
+.sp -1
+.IP \(bu 2.3
+.\}
+sp_expire \- дней, после которых учётная запись будет заблокирована, начиная с 1 января 1970 года
+.RE
+.sp
+.RS 4
+.ie n \{\
+\h'-04'\(bu\h'+03'\c
+.\}
+.el \{\
+.sp -1
+.IP \(bu 2.3
+.\}
+sp_flag \- зарезервировано
+.RE
+.SH "ОПИСАНИЕ"
+.PP
+Функции
+\fIgetspent\fR,
+\fIgetspname\fR,
+\fIfgetspent\fR
+\fIsgetspent\fR
+возвращают указатель на структуру
+\fIstruct spwd\fR\&.
+\fIgetspent\fR
+возвращает следующую запись из файла, а
+\fIfgetspent\fR
+возвращает следующую запись из заданного канала, предполагая, что это файл правильного формата\&.\fIsgetspent\fR
+возвращает указатель на
+\fIstruct spwd\fR, используя предоставленную строку в качестве входящих данных\&.
+\fIgetspnam\fR
+ищет начиная с текущей позиции в файле запись по имени
+\fIname\fR\&.
+.PP
+Функции
+\fIsetspent\fR
+\fIendspent\fR
+можно использовать для перемещения в начало и конец файла теневых паролей соответственно\&.
+.PP
+Функции
+\fIlckpwdf\fR
+\fIulckpwdf\fR
+используются для получения монопольного доступа к файлу
+/etc/shadow\&.
+\fIlckpwdf\fR
+пытается выполнить блокировку с помощью
+\fIpw_lock\fR
+в течении 15 секунд\&. Далее выполняется попытка получить вторую блокировку с помощью
+\fIspw_lock\fR
+в течении времени оставшегося от первоначальных 15 секунд\&. При неудаче в любой из блокировок в течении 15 секунд, функция
+\fIlckpwdf\fR
+возвращает \-1\&. Если обе блокировки прошли успешно возвращается 0\&.
+.SH "ДИАГНОСТИКА"
+.PP
+Функции возвращают NULL, если все записи кончились или произошла ошибка во время работы\&. Функции, возвращающие
+\fIint\fR, возвращают 0 при успешном выполнении и \-1 в случае неудачи\&.
+.SH "ПРЕДОСТЕРЕЖЕНИЯ"
+.PP
+Данные функции могут использоваться только суперпользователем, так как доступ к файлу теневых паролей ограничен\&.
+.SH "ФАЙЛЫ"
+.PP
+/etc/shadow
+.RS 4
+содержит защищаемую информацию о пользователях
+.RE
+.SH "СМОТРИТЕ ТАКЖЕ"
+.PP
+\fBgetpwent\fR(3),
+\fBshadow\fR(5)\&.
diff --git a/man/ru/man5/faillog.5 b/man/ru/man5/faillog.5
new file mode 100644
index 00000000..b745bf9f
--- /dev/null
+++ b/man/ru/man5/faillog.5
@@ -0,0 +1,65 @@
+'\" t
+.\" Title: faillog
+.\" Author: Julianne Frances Haugh
+.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
+.\" Date: 06/13/2019
+.\" Manual: Форматы файлов
+.\" Source: shadow-utils 4.7
+.\" Language: Russian
+.\"
+.TH "faillog" "5" "06/13/2019" "shadow\-utils 4\&.7" "Форматы файлов"
+.\" -----------------------------------------------------------------
+.\" * Define some portability stuff
+.\" -----------------------------------------------------------------
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.\" http://bugs.debian.org/507673
+.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.ie \n(.g .ds Aq \(aq
+.el .ds Aq '
+.\" -----------------------------------------------------------------
+.\" * set default formatting
+.\" -----------------------------------------------------------------
+.\" disable hyphenation
+.nh
+.\" disable justification (adjust text to left margin only)
+.ad l
+.\" -----------------------------------------------------------------
+.\" * MAIN CONTENT STARTS HERE *
+.\" -----------------------------------------------------------------
+.SH "НАЗВАНИЕ"
+faillog \- файл протокола неудачных попыток входа в систему
+.SH "ОПИСАНИЕ"
+.PP
+В файле
+/var/log/faillog
+содержатся счётчики неудачных попыток входа и ограничения для каждой учётной записи\&.
+.PP
+Этот файл состоит из записей постоянной длины, упорядоченных по числовому идентификатору учётной записи\&. Каждая запись содержит количество неудачных попыток входа с момента последнего успешного входа в систему, максимальное количество неудачных попыток перед тем как учётная запись будет заблокирована, терминал, с которого осуществлялась последняя неудачная попытка входа, дату этого события и интервал (в секундах) на сколько учётная запись будет заблокирована в случае неудачной попытки\&.
+.PP
+Структура файла:
+.sp
+.if n \{\
+.RS 4
+.\}
+.nf
+struct faillog {
+ short fail_cnt;
+ short fail_max;
+ char fail_line[12];
+ time_t fail_time;
+ long fail_locktime;
+};
+.fi
+.if n \{\
+.RE
+.\}
+.SH "ФАЙЛЫ"
+.PP
+/var/log/faillog
+.RS 4
+журнал неудавшихся попыток входа в систему
+.RE
+.SH "СМОТРИТЕ ТАКЖЕ"
+.PP
+\fBfaillog\fR(8)
diff --git a/man/ru/man5/gshadow.5 b/man/ru/man5/gshadow.5
new file mode 100644
index 00000000..445533a2
--- /dev/null
+++ b/man/ru/man5/gshadow.5
@@ -0,0 +1,101 @@
+'\" t
+.\" Title: gshadow
+.\" Author: Nicolas Fran\(,cois <nicolas.francois@centraliens.net>
+.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
+.\" Date: 06/13/2019
+.\" Manual: Форматы файлов
+.\" Source: shadow-utils 4.7
+.\" Language: Russian
+.\"
+.TH "gshadow" "5" "06/13/2019" "shadow\-utils 4\&.7" "Форматы файлов"
+.\" -----------------------------------------------------------------
+.\" * Define some portability stuff
+.\" -----------------------------------------------------------------
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.\" http://bugs.debian.org/507673
+.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.ie \n(.g .ds Aq \(aq
+.el .ds Aq '
+.\" -----------------------------------------------------------------
+.\" * set default formatting
+.\" -----------------------------------------------------------------
+.\" disable hyphenation
+.nh
+.\" disable justification (adjust text to left margin only)
+.ad l
+.\" -----------------------------------------------------------------
+.\" * MAIN CONTENT STARTS HERE *
+.\" -----------------------------------------------------------------
+.SH "НАЗВАНИЕ"
+gshadow \- файл с защищаемой информацией о группах
+.SH "ОПИСАНИЕ"
+.PP
+Файл
+/etc/gshadow
+содержит защищаемую информацию о группах\&.
+.PP
+Этот файл должен быть недоступен обычному пользователю, если нужно обеспечить безопасность паролей\&.
+.PP
+Каждая строка файла содержит поля, отделёнными друг от друга двоеточием:
+.PP
+\fBимя группы\fR
+.RS 4
+Должно содержать правильное имя группы, которая существует в системе\&.
+.RE
+.PP
+\fBшифрованный пароль\fR
+.RS 4
+Подробней о пароле смотрите в справочной странице
+\fBcrypt\fR(3)\&.
+.sp
+Если поле пароля содержит строку, которая не удовлетворяет требованиям
+\fBcrypt\fR(3), например содержит ! или *, то пользователь не сможет использовать пароль unix для доступа в группу (а члену группы пароль не нужен)\&.
+.sp
+The password is used when a user who is not a member of the group wants to gain the permissions of this group (see
+\fBnewgrp\fR(1))\&.
+.sp
+Это поле может быть пустым; в этом случае только члены группы могут пользоваться правами группы\&.
+.sp
+A password field which starts with an exclamation mark means that the password is locked\&. The remaining characters on the line represent the password field before the password was locked\&.
+.sp
+Данный пароль заменяет любой пароль, указанный в файле
+/etc/group\&.
+.RE
+.PP
+\fBадминистраторы\fR
+.RS 4
+Список имён пользователей, перечисленных через запятую\&.
+.sp
+Администраторы могут менять пароль или членство в группе\&.
+.sp
+Администраторы также имеют те же права, что и члены группы (смотрите далее)\&.
+.RE
+.PP
+\fBчлены\fR
+.RS 4
+Список имён пользователей, перечисленных через запятую\&.
+.sp
+Члены могут иметь доступ к группе без ввода пароля\&.
+.sp
+Вы должны использовать тот же список пользователей что и в
+/etc/group\&.
+.RE
+.SH "ФАЙЛЫ"
+.PP
+/etc/group
+.RS 4
+содержит информацию о группах
+.RE
+.PP
+/etc/gshadow
+.RS 4
+содержит защищаемую информацию о группах
+.RE
+.SH "СМОТРИТЕ ТАКЖЕ"
+.PP
+\fBgpasswd\fR(5),
+\fBgroup\fR(5),
+\fBgrpck\fR(8),
+\fBgrpconv\fR(8),
+\fBnewgrp\fR(1)\&.
diff --git a/man/ru/man5/limits.5 b/man/ru/man5/limits.5
new file mode 100644
index 00000000..454dbe7f
--- /dev/null
+++ b/man/ru/man5/limits.5
@@ -0,0 +1,274 @@
+'\" t
+.\" Title: limits
+.\" Author: Luca Berra
+.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
+.\" Date: 06/13/2019
+.\" Manual: Форматы файлов
+.\" Source: shadow-utils 4.7
+.\" Language: Russian
+.\"
+.TH "limits" "5" "06/13/2019" "shadow\-utils 4\&.7" "Форматы файлов"
+.\" -----------------------------------------------------------------
+.\" * Define some portability stuff
+.\" -----------------------------------------------------------------
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.\" http://bugs.debian.org/507673
+.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.ie \n(.g .ds Aq \(aq
+.el .ds Aq '
+.\" -----------------------------------------------------------------
+.\" * set default formatting
+.\" -----------------------------------------------------------------
+.\" disable hyphenation
+.nh
+.\" disable justification (adjust text to left margin only)
+.ad l
+.\" -----------------------------------------------------------------
+.\" * MAIN CONTENT STARTS HERE *
+.\" -----------------------------------------------------------------
+.SH "НАЗВАНИЕ"
+limits \- файл контроля ресурсов
+.SH "ОПИСАНИЕ"
+.PP
+В файле
+\fIlimits\fR
+(по умолчанию
+/etc/limits
+или определяется значением LIMITS_FILE в файле
+config\&.h) описываются ограничения, которые можно изменять\&. Этот файл должен принадлежать суперпользователю и право на чтение должно быть только у суперпользователя\&.
+.PP
+По умолчанию учётная запись \(Foroot\(Fc ничем не ограничена\&. Фактически, никак нельзя установить ограничения с помощью этой процедуры на учётные записи, имеющие права суперпользователя (учётные записи с UID равным 0)\&.
+.PP
+Каждая строка описывает ограничение для одного пользователя имеет вид:
+.PP
+\fIuser СТРОКА_ОГРАНИЧЕНИЙ\fR
+.PP
+или в виде:
+.PP
+\fI@group СТРОКА_ОГРАНИЧЕНИЙ\fR
+.PP
+\fIСТРОКА_ОГРАНИЧЕНИЙ\fR
+\(em это строка, в которой указаны сразу несколько ограничений\&. Каждое ограничение состоит из буквенного идентификатора и числового значения\&.
+.PP
+Допустимые идентификаторы:
+.sp
+.RS 4
+.ie n \{\
+\h'-04'\(bu\h'+03'\c
+.\}
+.el \{\
+.sp -1
+.IP \(bu 2.3
+.\}
+A: максимальное адресное пространство (КБ)
+.RE
+.sp
+.RS 4
+.ie n \{\
+\h'-04'\(bu\h'+03'\c
+.\}
+.el \{\
+.sp -1
+.IP \(bu 2.3
+.\}
+C: максимальный размер файла core (КБ)
+.RE
+.sp
+.RS 4
+.ie n \{\
+\h'-04'\(bu\h'+03'\c
+.\}
+.el \{\
+.sp -1
+.IP \(bu 2.3
+.\}
+D: максимальный размер данных (КБ)
+.RE
+.sp
+.RS 4
+.ie n \{\
+\h'-04'\(bu\h'+03'\c
+.\}
+.el \{\
+.sp -1
+.IP \(bu 2.3
+.\}
+F: maximum file size (KB)
+.RE
+.sp
+.RS 4
+.ie n \{\
+\h'-04'\(bu\h'+03'\c
+.\}
+.el \{\
+.sp -1
+.IP \(bu 2.3
+.\}
+K: маска создаваемых файлов, устанавливается с помощью вызова
+\fBumask\fR(2)\&.
+.RE
+.sp
+.RS 4
+.ie n \{\
+\h'-04'\(bu\h'+03'\c
+.\}
+.el \{\
+.sp -1
+.IP \(bu 2.3
+.\}
+I: максимальное значение уступчивости (nice) (0\&.\&.39, преобразуемые в 20\&.\&.\-19)
+.RE
+.sp
+.RS 4
+.ie n \{\
+\h'-04'\(bu\h'+03'\c
+.\}
+.el \{\
+.sp -1
+.IP \(bu 2.3
+.\}
+L: максимальное число возможных регистраций в системе этого пользователя
+.RE
+.sp
+.RS 4
+.ie n \{\
+\h'-04'\(bu\h'+03'\c
+.\}
+.el \{\
+.sp -1
+.IP \(bu 2.3
+.\}
+M: максимальное синхронизируемое адресное пространство памяти (КБ)
+.RE
+.sp
+.RS 4
+.ie n \{\
+\h'-04'\(bu\h'+03'\c
+.\}
+.el \{\
+.sp -1
+.IP \(bu 2.3
+.\}
+N: максимальное число открытых файлов
+.RE
+.sp
+.RS 4
+.ie n \{\
+\h'-04'\(bu\h'+03'\c
+.\}
+.el \{\
+.sp -1
+.IP \(bu 2.3
+.\}
+O: максимальный приоритет реального времени
+.RE
+.sp
+.RS 4
+.ie n \{\
+\h'-04'\(bu\h'+03'\c
+.\}
+.el \{\
+.sp -1
+.IP \(bu 2.3
+.\}
+P: приоритет процесса, устанавливается с помощью вызова
+\fBsetpriority\fR(2)\&.
+.RE
+.sp
+.RS 4
+.ie n \{\
+\h'-04'\(bu\h'+03'\c
+.\}
+.el \{\
+.sp -1
+.IP \(bu 2.3
+.\}
+R: максимальный размер резидентного сегмента (КБ)
+.RE
+.sp
+.RS 4
+.ie n \{\
+\h'-04'\(bu\h'+03'\c
+.\}
+.el \{\
+.sp -1
+.IP \(bu 2.3
+.\}
+S: максимальный размер стека (КБ)
+.RE
+.sp
+.RS 4
+.ie n \{\
+\h'-04'\(bu\h'+03'\c
+.\}
+.el \{\
+.sp -1
+.IP \(bu 2.3
+.\}
+T: максимальное время использования процессора (минут)
+.RE
+.sp
+.RS 4
+.ie n \{\
+\h'-04'\(bu\h'+03'\c
+.\}
+.el \{\
+.sp -1
+.IP \(bu 2.3
+.\}
+U: максимальное число процессов
+.RE
+.PP
+Например, значение
+\fIL2D2048N5\fR
+допустимо для
+\fIСТРОКИ_ОГРАНИЧЕНИЙ\fR\&. Для удобства чтения, следующие записи эквивалентны:
+.sp
+.if n \{\
+.RS 4
+.\}
+.nf
+ username L2D2048N5
+ username L2 D2048 N5
+
+.fi
+.if n \{\
+.RE
+.\}
+.PP
+Be aware that after
+\fIusername\fR
+the rest of the line is considered a limit string, thus comments are not allowed\&. An invalid limits string will be rejected (not considered) by the
+\fBlogin\fR
+program\&.
+.PP
+Запись по умолчанию выглядит как username "\fI*\fR"\&. Если у вас есть несколько записей
+\fIпо умолчанию\fR
+в файле
+\fILIMITS_FILE\fR, то будет использоваться последняя\&.
+.PP
+Ограничения, задаваемые в виде \(Fo\fI@group\fR\(Fc, применяются к членам указанной группы
+\fIgroup\fR\&.
+.PP
+If more than one line with limits for a user exist, only the first line for this user will be considered\&.
+.PP
+If no lines are specified for a user, the last
+\fI@group\fR
+line matching a group whose the user is a member of will be considered, or the last line with default limits if no groups contain the user\&.
+.PP
+Чтобы полностью снять ограничения с пользователя, используется одиночное тире \(Fo\fI\-\fR\(Fc\&.
+.PP
+Чтобы снять ограничение с пользователя, вместо числового значения ограничения можно использовать одиночное тире \(Fo\fI\-\fR\(Fc\&.
+.PP
+Также заметьте, что все настройки ограничений делаются ДЛЯ КОНКРЕТНОЙ УЧЁТНОЙ ЗАПИСИ\&. Они не являются глобальными и не постоянны\&. Возможно глобальные ограничения и появятся, но пока это только в планах ;)
+.SH "ФАЙЛЫ"
+.PP
+/etc/limits
+.RS 4
+.RE
+.SH "СМОТРИТЕ ТАКЖЕ"
+.PP
+\fBlogin\fR(1),
+\fBsetpriority\fR(2),
+\fBsetrlimit\fR(2)\&.
diff --git a/man/ru/man5/login.access.5 b/man/ru/man5/login.access.5
new file mode 100644
index 00000000..10fc2896
--- /dev/null
+++ b/man/ru/man5/login.access.5
@@ -0,0 +1,67 @@
+'\" t
+.\" Title: login.access
+.\" Author: Marek Micha\(/lkiewicz
+.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
+.\" Date: 06/13/2019
+.\" Manual: Форматы файлов
+.\" Source: shadow-utils 4.7
+.\" Language: Russian
+.\"
+.TH "login\&.access" "5" "06/13/2019" "shadow\-utils 4\&.7" "Форматы файлов"
+.\" -----------------------------------------------------------------
+.\" * Define some portability stuff
+.\" -----------------------------------------------------------------
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.\" http://bugs.debian.org/507673
+.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.ie \n(.g .ds Aq \(aq
+.el .ds Aq '
+.\" -----------------------------------------------------------------
+.\" * set default formatting
+.\" -----------------------------------------------------------------
+.\" disable hyphenation
+.nh
+.\" disable justification (adjust text to left margin only)
+.ad l
+.\" -----------------------------------------------------------------
+.\" * MAIN CONTENT STARTS HERE *
+.\" -----------------------------------------------------------------
+.SH "НАЗВАНИЕ"
+login.access \- файл контроля доступа в систему
+.SH "ОПИСАНИЕ"
+.PP
+В файле
+\fIlogin\&.access\fR
+определяются комбинации (пользователь, узел) и/или (пользователь, терминал), которым будет разрешён или запрещён вход в систему\&.
+.PP
+Когда кто\-то пытается войти в систему выполняется сканирование файла
+\fIlogin\&.access\fR
+в поисках первой совпадающей записи (пользователь, узел), или в случае не сетевого входа, первой совпадающей записи (пользователь, терминал)\&. Из найденной записи выбирается поле прав доступа, по которому определяется разрешать ли данной учётной записи вход в систему или нет\&.
+.PP
+Каждая строка таблицы контроля доступа в систему состоит из трёх полей разделённых символом \(Fo:\(Fc и выглядит так:
+.PP
+\fIправа_доступа\fR:\fIпользователи\fR:\fIисточники\fR
+.PP
+Первое поле должно содержать символ \(Fo\fI+\fR\(Fc (доступ разрешён) или \(Fo\fI\-\fR\(Fc (доступ запрещён)\&. Второе поле должно содержать имя одной или более учётных записей, имена групп или
+\fIALL\fR
+(всегда совпадает)\&. Третье поле должно содержать одно или нескольких имён терминалов (для доступа не из сети), имена узлов, доменных имён (начинаются с \(Fo\&.\(Fc), адреса узлов, адреса подсетей (заканчиваются на \(Fo\&.\(Fc),
+\fIALL\fR
+(всегда совпадает) или
+\fILOCAL\fR
+(любая строка, не содержащая символа \(Fo\&.\(Fc)\&. Если используется NIS, то также можно использовать @имя_сетевой_группы в шаблонах узлов или именах пользователей\&.
+.PP
+Оператор
+\fIEXCEPT\fR
+помогает в написании компактных правил\&.
+.PP
+Поиск в файле групп производится только когда имя не совпадает с регистрирующимся пользователем\&. Рассматриваются группы только с явно прописанными в них пользователями: программа не принимает во внимание значение первичной группы пользователя\&.
+.SH "ФАЙЛЫ"
+.PP
+/etc/login\&.defs
+.RS 4
+содержит конфигурацию подсистемы теневых паролей
+.RE
+.SH "СМОТРИТЕ ТАКЖЕ"
+.PP
+\fBlogin\fR(1)\&.
diff --git a/man/ru/man5/login.defs.5 b/man/ru/man5/login.defs.5
new file mode 100644
index 00000000..08af57a4
--- /dev/null
+++ b/man/ru/man5/login.defs.5
@@ -0,0 +1,830 @@
+'\" t
+.\" Title: login.defs
+.\" Author: Julianne Frances Haugh
+.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
+.\" Date: 06/13/2019
+.\" Manual: Форматы файлов
+.\" Source: shadow-utils 4.7
+.\" Language: Russian
+.\"
+.TH "login\&.defs" "5" "06/13/2019" "shadow\-utils 4\&.7" "Форматы файлов"
+.\" -----------------------------------------------------------------
+.\" * Define some portability stuff
+.\" -----------------------------------------------------------------
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.\" http://bugs.debian.org/507673
+.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.ie \n(.g .ds Aq \(aq
+.el .ds Aq '
+.\" -----------------------------------------------------------------
+.\" * set default formatting
+.\" -----------------------------------------------------------------
+.\" disable hyphenation
+.nh
+.\" disable justification (adjust text to left margin only)
+.ad l
+.\" -----------------------------------------------------------------
+.\" * MAIN CONTENT STARTS HERE *
+.\" -----------------------------------------------------------------
+.SH "НАЗВАНИЕ"
+login.defs \- содержит конфигурацию подсистемы теневых паролей
+.SH "ОПИСАНИЕ"
+.PP
+Файл
+/etc/login\&.defs
+содержит настройки подсистемы теневых паролей (shadow password suite)\&. Этот файл является обязательным\&. Отсутствие данного файла не повлияет на работу системы, но, вероятно, приведёт к выполнению нежелаемых операций\&.
+.PP
+Файл представляет собой обычный текстовый файл; каждая строка описывает один параметр настройки\&. Строки состоят из названия параметра и его значения, которые разделяются пробельным символом\&. Пустые строки и комментарии игнорируются\&. Комментарии начинаются со знака фунта \(Fo#\(Fc, который должен быть первым непробельным символом в строке\&.
+.PP
+Значения параметров могут быть четырёх типов: строки, логические значения, числа и длинные числа\&. Строки состоят из любых печатных символов\&. Под логическими значениями подразумеваются
+\fIyes\fR
+или
+\fIno\fR\&. Неопределённый логический параметр или имеющий значение, отличное от указанных выше, считается как имеющий значение
+\fIno\fR\&. Числа (обычные и длинные) можно задавать в десятичной, восьмеричной (перед значением ставится \(Fo\fI0\fR\(Fc) или шестнадцатеричной (перед значением ставится \(Fo\fI0x\fR\(Fc) системах счисления\&. Максимальные значения параметра обычного и длинного числа зависят от архитектуры компьютера\&.
+.PP
+Возможны следующие параметры настройки:
+.PP
+\fBCHFN_AUTH\fR (логический)
+.RS 4
+Если равно yes, chfn
+.RE
+.PP
+\fBCHFN_RESTRICT\fR (строка)
+.RS 4
+Этим параметром определяются части поля
+\fIgecos\fR
+в файле
+/etc/passwd, которые могут изменять обычные пользователи с помощью программы
+\fBchfn\fR\&. Строка может содержать любую комбинацию букв
+\fIf\fR,
+\fIr\fR,
+\fIw\fR,
+\fIh\fR
+для изменения полного имени пользователя, номера комнаты, рабочего и домашнего телефона, соответственно\&. Для совместимости значение
+\fIyes\fR
+эквивалентно
+\fIrwh\fR
+\fIno\fR
+эквивалентно
+\fIfrwh\fR\&. Если ничего не задано, то только суперпользователь может выполнять любые изменения\&. Наиболее ограничительная настройка достигается снятием SUID бита с файла
+chfn\&.
+.RE
+.PP
+\fBCHSH_AUTH\fR (логический)
+.RS 4
+Если равно
+\fIyes\fR, то программа
+\fBchsh\fR
+будет проводить аутентификацию перед тем как выполнить любые изменения, в случае если команда не запущены суперпользователем\&.
+.RE
+.PP
+\fBCONSOLE\fR (строка)
+.RS 4
+Если определена, то значение равно или полному пути к файлу с именами устройств (одно на строку), или списку имён устройств, перечисленных через \(Fo:\(Fc\&. Вход суперпользователя будет разрешён только с этих устройств\&.
+.sp
+Если не определена, то суперпользователь может входить в систему с любого устройства\&.
+.sp
+Устройства должны указываться без начального префикса /dev/\&.
+.RE
+.PP
+\fBCONSOLE_GROUPS\fR (строка)
+.RS 4
+Список групп для добавления к набору пользовательских дополнительных групп при входе с консоли (определяемой переменной CONSOLE)\&. По умолчанию не указана\&.
+
+Используйте осторожно \(em может дать пользователям постоянный доступ к этим группам, даже если они не входили с консоли\&.
+.RE
+.PP
+\fBCREATE_HOME\fR (логический)
+.RS 4
+Определяет, должен ли создаваться по умолчанию домашний каталог для новых пользователей\&.
+.sp
+Эта переменная не влияет на системных пользователей и может быть переопределена из командной строки\&.
+.RE
+.PP
+\fBDEFAULT_HOME\fR (логический)
+.RS 4
+Определяет, можно ли войти в систему, если нельзя выполнить cd в домашний каталог\&. По умолчанию \(Fono\(Fc\&.
+.sp
+Если равно
+\fIyes\fR, то пользователь будет попадать в корневой каталог (/), если невозможно выполнить cd в его домашний каталог\&.
+.RE
+.PP
+\fBENCRYPT_METHOD\fR (строка)
+.RS 4
+Задаёт системный алгоритм шифрования по умолчанию для шифрования паролей (используется, если алгоритм не указан в командной строке)\&.
+.sp
+Возможны следующие значения:
+\fIDES\fR
+(по умолчанию),
+\fIMD5\fR, \fISHA256\fR, \fISHA512\fR\&.
+.sp
+Замечание: этот параметр переопределяет переменную
+\fBMD5_CRYPT_ENAB\fR\&.
+.RE
+.PP
+\fBENV_HZ\fR (строка)
+.RS 4
+Если установлена, то будет использоваться для определения переменной окружения HZ при входе пользователя в систему\&. Значение должно начинаться с
+\fIHZ=\fR\&. Обычное значение для Linux \(em
+\fIHZ=100\fR\&.
+.RE
+.PP
+\fBENV_PATH\fR (строка)
+.RS 4
+If set, it will be used to define the PATH environment variable when a regular user login\&. The value is a colon separated list of paths (for example
+\fI/bin:/usr/bin\fR) and can be preceded by
+\fIPATH=\fR\&. The default value is
+\fIPATH=/bin:/usr/bin\fR\&.
+.RE
+.PP
+\fBENV_SUPATH\fR (строка)
+.RS 4
+If set, it will be used to define the PATH environment variable when the superuser login\&. The value is a colon separated list of paths (for example
+\fI/sbin:/bin:/usr/sbin:/usr/bin\fR) and can be preceded by
+\fIPATH=\fR\&. The default value is
+\fIPATH=/sbin:/bin:/usr/sbin:/usr/bin\fR\&.
+.RE
+.PP
+\fBENV_TZ\fR (строка)
+.RS 4
+Если установлена, то будет использоваться для определения переменной окружения TZ при входе пользователя\&. Значение может быть равно имени часового пояса, начинающегося
+\fITZ=\fR
+(например,
+\fITZ=CST6CDT\fR), или полному пути к файлу с параметрами часового пояса (например,
+/etc/tzname)\&.
+.sp
+Если указан полный путь, но файл не существует или недоступен для чтения, то используется значение по умолчанию:
+\fITZ=CST6CDT\fR\&.
+.RE
+.PP
+\fBENVIRON_FILE\fR (строка)
+.RS 4
+Если этот файл существует и доступ для чтения, то из него читает регистрационное окружение\&. Каждая строка должна иметь формат: имя=значение\&.
+.sp
+Строки, начинающиеся с #, считаются комментарием и игнорируются\&.
+.RE
+.PP
+\fBERASECHAR\fR (число)
+.RS 4
+Символ ERASE у терминала (\fI010\fR
+= backspace,
+\fI0177\fR
+= DEL)\&.
+.sp
+Значение может начинаться с \(Fo0\(Fc при указании значения в восьмеричной системе счисления или \(Fo0x\(Fc при указании значения в шестнадцатеричной системе счисления\&.
+.RE
+.PP
+\fBFAIL_DELAY\fR (число)
+.RS 4
+Задержка в секундах перед повторной попыткой после неудачного входа\&.
+.RE
+.PP
+\fBFAILLOG_ENAB\fR (логический)
+.RS 4
+Включить протоколирование и показ информации о неудачных входах из
+/var/log/faillog\&.
+.RE
+.PP
+\fBFAKE_SHELL\fR (строка)
+.RS 4
+Если установлена, то программа
+\fBlogin\fR
+запустит указанную оболочку вместо пользовательской оболочки заданной в
+/etc/passwd\&.
+.RE
+.PP
+\fBFTMP_FILE\fR (строка)
+.RS 4
+Если определена, то неудачные попытки входа будут протоколироваться в этот файл в формате utmp\&.
+.RE
+.PP
+\fBGID_MAX\fR (число), \fBGID_MIN\fR (число)
+.RS 4
+Диапазон идентификаторов групп, используемый в программах
+\fBuseradd\fR,
+\fBgroupadd\fR
+или
+\fBnewusers\fR
+для создания обычных групп\&.
+.sp
+Значение по умолчанию для
+\fBGID_MIN\fR
+(соотв\&.
+\fBGID_MAX\fR) равно 1000 (соотв\&. 60000)\&.
+.RE
+.PP
+\fBHUSHLOGIN_FILE\fR (строка)
+.RS 4
+Если определена, то этот файл может заблокировать все обычные переговоры (chatter) при входе\&. Если указан полный путь к файлу, то будет включён сокращённый (hushed) режим, если в этом файле указано имя пользователя или оболочка\&. Если указан не полный путь, то будет включён сокращённый (hushed) режим, если файл находится в домашнем каталоге пользователя\&.
+.RE
+.PP
+\fBISSUE_FILE\fR (строка)
+.RS 4
+Если определена, то этот файл будет показан перед каждым появлением приглашения на вход\&.
+.RE
+.PP
+\fBKILLCHAR\fR (число)
+.RS 4
+Символ KILL у терминала (\fI025\fR
+= CTRL/U)\&.
+.sp
+Значение может начинаться с \(Fo0\(Fc при указании значения в восьмеричной системе счисления или \(Fo0x\(Fc при указании значения в шестнадцатеричной системе счисления\&.
+.RE
+.PP
+\fBLASTLOG_ENAB\fR (логический)
+.RS 4
+Включить протоколирование и показ информации о времени входа из /var/log/lastlog\&.
+.RE
+.PP
+\fBLASTLOG_UID_MAX\fR (number)
+.RS 4
+Highest user ID number for which the lastlog entries should be updated\&. As higher user IDs are usually tracked by remote user identity and authentication services there is no need to create a huge sparse lastlog file for them\&.
+.sp
+No
+\fBLASTLOG_UID_MAX\fR
+option present in the configuration means that there is no user ID limit for writing lastlog entries\&.
+.RE
+.PP
+\fBLOG_OK_LOGINS\fR (логический)
+.RS 4
+Включить протоколирование успешных входов\&.
+.RE
+.PP
+\fBLOG_UNKFAIL_ENAB\fR (логический)
+.RS 4
+Включить показ неизвестных имён пользователей при записи неудачных попыток входа\&.
+.sp
+Замечание: протоколирование неизвестных имён пользователя может привести к проблемам с безопасностью, если пользователь введёт свой пароль вместо своего имени\&.
+.RE
+.PP
+\fBLOGIN_RETRIES\fR (число)
+.RS 4
+Максимальное количество попыток входа при вводе неверного пароля\&.
+.RE
+.PP
+\fBLOGIN_STRING\fR (строка)
+.RS 4
+Строка\-приглашение к вводу пароля\&. Значение по умолчанию: \(FoPassword:\(Fc или перевод этой строки на разные языки\&. Если вы измените эту переменную, то перевод будет отсутствовать\&.
+.sp
+Если в строке содержится подстрока
+\fI%s\fR, то она будет заменена на имя пользователя\&.
+.RE
+.PP
+\fBLOGIN_TIMEOUT\fR (число)
+.RS 4
+Максимальное время в секундах, отведённое на вход\&.
+.RE
+.PP
+\fBMAIL_CHECK_ENAB\fR (логический)
+.RS 4
+Включает проверку и показ состояния почтового ящика при входе\&.
+.sp
+Вы должны выключить это, если почтовый ящик проверяется из файлов автозапуска оболочки (\(Fomailx \-e\(Fc или похожей командой)\&.
+.RE
+.PP
+\fBMAIL_DIR\fR (строка)
+.RS 4
+Почтовый каталог\&. Данный параметр нужен для управления почтовым ящиком при изменении или удалении учётной записи пользователя\&. Если параметр не задан, то используется значение указанное при сборке\&.
+.RE
+.PP
+\fBMAIL_FILE\fR (строка)
+.RS 4
+Определяет расположение почтовых файлов пользователя относительно домашнего каталога\&.
+.RE
+.PP
+Переменные
+\fBMAIL_DIR\fR
+\fBMAIL_FILE\fR
+используются командами
+\fBuseradd\fR,
+\fBusermod\fR
+\fBuserdel\fR
+для создания, перемещения или удаления почты пользователя\&.
+.PP
+Если значение
+\fBMAIL_CHECK_ENAB\fR
+равно
+\fIyes\fR, то они также используются для определения переменной окружения
+\fBMAIL\fR\&.
+.PP
+\fBMAX_MEMBERS_PER_GROUP\fR (число)
+.RS 4
+Максимальное количество членов в записи о группе\&. При достижения максимума заводится новая запись группы (строка) в
+/etc/group
+(с тем же именем, паролем и тем же GID)\&.
+.sp
+Значение по умолчанию равно 0, означающее, что ограничения на количество членов в группе нет\&.
+.sp
+Данная возможность (разделение группы) позволяет ограничить длину строк в файле групп\&. Это полезно для ограничения длины строк групп NIS в 1024 символа\&.
+.sp
+Если вам нужно такое ограничение, укажите значение 25\&.
+.sp
+Замечание: разделение групп поддерживается не всеми инструментами (даже в наборе инструментов Shadow)\&. Вы не должны использовать эту переменную, если вам действительно это ненужно\&.
+.RE
+.PP
+\fBMD5_CRYPT_ENAB\fR (логический)
+.RS 4
+Обозначает, что пароль должен быть зашифрован по алгоритму на основе MD5\&. Если значение равно
+\fIyes\fR, то новые пароли будут зашифрованы по алгоритму на основе MD5, совместимому с используемым в новых версиях FreeBSD\&. Он поддерживает пароли неограниченной длины и имеет более длинную строку соли\&. Установите в
+\fIno\fR, если вам нужно копировать шифрованные пароли в другие системы, которые не поддерживают новый алгоритм\&. По умолчанию
+\fIno\fR\&.
+.sp
+Эта переменная переопределяется переменной
+\fBENCRYPT_METHOD\fR
+или любым параметром командной строки, который задаёт алгоритм шифрования\&.
+.sp
+Эта переменная устарела; используйте
+\fBENCRYPT_METHOD\fR\&.
+.RE
+.PP
+\fBMOTD_FILE\fR (строка)
+.RS 4
+Если определена, то при входе будет показано \(Foсообщение дня\(Fc из файла со списком значений, разделённых \(Fo:\(Fc\&.
+.RE
+.PP
+\fBNOLOGINS_FILE\fR (строка)
+.RS 4
+Если определена, значение равно имени файла, чьё существование запретит вход для не суперпользователей\&. В файле должно содержаться сообщение, описывающее почему запрещён вход\&.
+.RE
+.PP
+\fBOBSCURE_CHECKS_ENAB\fR (логический)
+.RS 4
+Включает дополнительные проверки при смене пароля\&.
+.RE
+.PP
+\fBPASS_ALWAYS_WARN\fR (логический)
+.RS 4
+Предупреждать о слабых паролях (но разрешать их использовать) для суперпользователя\&.
+.RE
+.PP
+\fBPASS_CHANGE_TRIES\fR (число)
+.RS 4
+Максимальное количество попыток смены пароля (слишком простого) при непрохождении проверки\&.
+.RE
+.PP
+\fBPASS_MAX_DAYS\fR (число)
+.RS 4
+Максимальное число дней использования пароля\&. Если пароль старее этого числа, то будет запущена процедура смены пароля\&. Если значение не задано, то предполагается значение \-1 (то есть возможность ограничения не используется)\&.
+.RE
+.PP
+\fBPASS_MIN_DAYS\fR (число)
+.RS 4
+Максимальное число дней между изменениями пароля\&. Любая смена пароля ранее заданного срока выполнена не будет\&. Если значение не задано, то предполагается значение \-1 (то есть возможность ограничения не используется)\&.
+.RE
+.PP
+\fBPASS_WARN_AGE\fR (число)
+.RS 4
+Число дней за которое начнёт выдаваться предупреждение об устаревании пароля\&. Нулевое значение означает, что предупреждение выдаётся в день устаревания, при отрицательном значении предупреждение выдаваться не будет\&. Если значение не задано, выдача предупреждения отключается\&.
+.RE
+.PP
+Параметры
+\fBPASS_MAX_DAYS\fR,
+\fBPASS_MIN_DAYS\fR
+\fBPASS_WARN_AGE\fR
+используются только при создании учётной записи\&. Любые изменения этих параметров не влияют на уже существующие учётные записи\&.
+.PP
+\fBPASS_MAX_LEN\fR (число), \fBPASS_MIN_LEN\fR (число)
+.RS 4
+Количество значимых символов в пароле для crypt()\&. По умолчанию значение
+\fBPASS_MAX_LEN\fR
+равно 8\&. Не изменяйте, если ваш crypt() лучше\&. Игнорируется, если значение
+\fBMD5_CRYPT_ENAB\fR
+равно
+\fIyes\fR\&.
+.RE
+.PP
+\fBPORTTIME_CHECKS_ENAB\fR (логический)
+.RS 4
+Включить проверку временных ограничений, заданных в
+/etc/porttime\&.
+.RE
+.PP
+\fBQUOTAS_ENAB\fR (логический)
+.RS 4
+Включает установку ограничений ресурсов из
+/etc/limits
+и ulimit, umask и niceness из поля gecos файла passwd\&.
+.RE
+.PP
+\fBSHA_CRYPT_MIN_ROUNDS\fR (число), \fBSHA_CRYPT_MAX_ROUNDS\fR (число)
+.RS 4
+Если значение
+\fBENCRYPT_METHOD\fR
+равно
+\fISHA256\fR
+или
+\fISHA512\fR, эта переменная определяет количество раундов SHA, используемых алгоритмом шифрования по умолчанию (если количество раундов не задано в командной строке)\&.
+.sp
+Увеличение количества раундов повышает сложность подбора пароля простым перебором\&. Но заметим, что при этом для аутентификации пользователей требуется большее количество процессорных ресурсов\&.
+.sp
+Если не задана, то libc выбирает значение количества раундов по умолчанию (5000)\&.
+.sp
+Значения должны лежать в диапазоне 1000\-999999999\&.
+.sp
+Если задано какое\-то одно значение \(em
+\fBSHA_CRYPT_MIN_ROUNDS\fR
+или
+\fBSHA_CRYPT_MAX_ROUNDS\fR
+\(em то будет использовано это значение\&.
+.sp
+Если
+\fBSHA_CRYPT_MIN_ROUNDS\fR
+>
+\fBSHA_CRYPT_MAX_ROUNDS\fR, то используется большее значение\&.
+.RE
+.PP
+\fBSULOG_FILE\fR (строка)
+.RS 4
+Если определена, то любая активность su будет протоколироваться в этот файл\&.
+.RE
+.PP
+\fBSU_NAME\fR (строка)
+.RS 4
+Если определена, то выводится имя команды когда работает \(Fosu \-\(Fc\&. Например, если значение равно \(Fosu\(Fc, то \(Fops\(Fc покажет команду как \(Fo\-su\(Fc\&. Если не определена, то \(Fops\(Fc покажет имя запускаемой оболочки например как \(Fo\-sh\(Fc\&.
+.RE
+.PP
+\fBSU_WHEEL_ONLY\fR (логический)
+.RS 4
+Если равна
+\fIyes\fR, то пользователь должен быть членом первой группы с gid 0 в файле
+/etc/group
+(в большинстве систем Linux называется
+\fIroot\fR), чтобы иметь возможность запускать
+\fBsu\fR
+для получения uid 0\&. Если группа не существует, или пуста, то никто не сможет получить uid 0 с помощью
+\fBsu\fR\&.
+.RE
+.PP
+\fBSUB_GID_MIN\fR (number), \fBSUB_GID_MAX\fR (number), \fBSUB_GID_COUNT\fR (number)
+.RS 4
+If
+/etc/subuid
+exists, the commands
+\fBuseradd\fR
+and
+\fBnewusers\fR
+(unless the user already have subordinate group IDs) allocate
+\fBSUB_GID_COUNT\fR
+unused group IDs from the range
+\fBSUB_GID_MIN\fR
+to
+\fBSUB_GID_MAX\fR
+for each new user\&.
+.sp
+The default values for
+\fBSUB_GID_MIN\fR,
+\fBSUB_GID_MAX\fR,
+\fBSUB_GID_COUNT\fR
+are respectively 100000, 600100000 and 65536\&.
+.RE
+.PP
+\fBSUB_UID_MIN\fR (number), \fBSUB_UID_MAX\fR (number), \fBSUB_UID_COUNT\fR (number)
+.RS 4
+If
+/etc/subuid
+exists, the commands
+\fBuseradd\fR
+and
+\fBnewusers\fR
+(unless the user already have subordinate user IDs) allocate
+\fBSUB_UID_COUNT\fR
+unused user IDs from the range
+\fBSUB_UID_MIN\fR
+to
+\fBSUB_UID_MAX\fR
+for each new user\&.
+.sp
+The default values for
+\fBSUB_UID_MIN\fR,
+\fBSUB_UID_MAX\fR,
+\fBSUB_UID_COUNT\fR
+are respectively 100000, 600100000 and 65536\&.
+.RE
+.PP
+\fBSYS_GID_MAX\fR (число), \fBSYS_GID_MIN\fR (число)
+.RS 4
+Диапазон идентификаторов групп, используемый в программах
+\fBuseradd\fR,
+\fBgroupadd\fR
+или
+\fBnewusers\fR
+для создания системных групп\&.
+.sp
+Значение по умолчанию для
+\fBSYS_GID_MIN\fR
+(соотв\&.\fBSYS_GID_MAX\fR) равно 101 (соотв\&.
+\fBGID_MIN\fR\-1)\&.
+.RE
+.PP
+\fBSYS_UID_MAX\fR (число), \fBSYS_UID_MIN\fR (число)
+.RS 4
+Диапазон идентификаторов пользователей, используемый в программах
+\fBuseradd\fR
+или
+\fBnewusers\fR
+для создания системных пользователей\&.
+.sp
+Значение по умолчанию для
+\fBSYS_UID_MIN\fR
+(соотв\&.
+\fBSYS_UID_MAX\fR) равно 101 (соотв\&.
+\fBUID_MIN\fR\-1)\&.
+.RE
+.PP
+\fBSYSLOG_SG_ENAB\fR (логический)
+.RS 4
+Включить протоколирование \(Fosyslog\(Fc действий
+\fBsg\fR\&.
+.RE
+.PP
+\fBSYSLOG_SU_ENAB\fR (логический)
+.RS 4
+Включить протоколирование \(Fosyslog\(Fc действий
+\fBsu\fR
+\(em дополнительно к протоколированию в файле sulog\&.
+.RE
+.PP
+\fBTTYGROUP\fR (строка), \fBTTYPERM\fR (строка)
+.RS 4
+Права терминала: tty входа будет принадлежать группе
+\fBTTYGROUP\fR, а права будут назначены в соответствии с
+\fBTTYPERM\fR\&.
+.sp
+По умолчанию, терминалом владеет первичная группа пользователя, а права устанавливаются в
+\fI0600\fR\&.
+.sp
+\fBTTYGROUP\fR
+может задаваться или имя группы, или числовой идентификатор группы\&.
+.sp
+Если ваша программа
+\fBwrite\fR
+имеет \(Fosetgid\(Fc со специальной группой, которой принадлежат терминалы, то присвойте TTYGROUP номер этой группы, а TTYPERM значение 0620\&. В противном случае оставьте TTYGROUP закомментированной и назначьте TTYPERM значение 622 или 600\&.
+.RE
+.PP
+\fBTTYTYPE_FILE\fR (строка)
+.RS 4
+Если определена, то в ней указывается имя файла, в котором описано соответствие между линией tty и параметром окружения TERM\&. Каждая строка файла имеет формат вида \(Fovt100 tty01\(Fc\&.
+.RE
+.PP
+\fBUID_MAX\fR (число), \fBUID_MIN\fR (число)
+.RS 4
+Диапазон идентификаторов пользователей, используемый в программах
+\fBuseradd\fR
+или
+\fBnewusers\fR
+для создания обычных пользователей\&.
+.sp
+Значение по умолчанию для
+\fBUID_MIN\fR
+(соотв\&.
+\fBUID_MAX\fR) равно 1000 (соотв\&. 60000)\&.
+.RE
+.PP
+\fBULIMIT\fR (число)
+.RS 4
+Значение
+\fBulimit\fR
+по умолчанию\&.
+.RE
+.PP
+\fBUMASK\fR (число)
+.RS 4
+Задаёт начальное значение маски доступа для создаваемых файлов\&. Если не указано, то маска устанавливается в 022\&.
+.sp
+Команды
+\fBuseradd\fR
+\fBnewusers\fR
+используют эту маску для установки прав доступа к домашнему каталогу, который они создают\&.
+.sp
+Также она используется программой
+\fBlogin\fR
+для задания начального значения umask пользователя\&. Заметим, что эта маска может быть переопределена из пользовательской строки GECOS (если установлена переменная
+\fBQUOTAS_ENAB\fR) или указанием ограничения с идентификатором
+\fIK\fR, в
+\fBlimits\fR(5)\&.
+.RE
+.PP
+\fBUSERDEL_CMD\fR (строка)
+.RS 4
+Определяет программу, которая будет запущена при удалении пользователя\&. Она должна удалять любые задания at/cron/печати удаляемого пользователя (передаётся в качестве первого аргумента)\&.
+.sp
+Возвращаемый сценарием код завершения не учитывается\&.
+.sp
+Вот простой сценарий, который удаляет задания печати, cron и at:
+.sp
+.if n \{\
+.RS 4
+.\}
+.nf
+#! /bin/sh
+
+# проверить все необходимые параметры
+if [ $# != 1 ]; then
+ echo "Использование: $0 имя_пользователя"
+ exit 1
+fi
+
+# удалить задания cron
+crontab \-r \-u $1
+
+# удалить задания at
+# Заметим, что это удалит все задания с указанным UID,
+# даже если он используется для другой учётной записи\&.
+AT_SPOOL_DIR=/var/spool/cron/atjobs
+find $AT_SPOOL_DIR \-name "[^\&.]*" \-type f \-user $1 \-delete \e;
+
+# удалить задания печати
+lprm $1
+
+# всё
+exit 0
+
+.fi
+.if n \{\
+.RE
+.\}
+.RE
+.PP
+\fBUSERGROUPS_ENAB\fR (логический)
+.RS 4
+Включает установку группы битов umask равной битам владельца (пример: 022 \-> 002, 077 \-> 007) для не суперпользователей, если uid равен gid и имя пользователя совпадает с именем первичной группы\&.
+.sp
+Если значение равно
+\fIyes\fR, то
+\fBuserdel\fR
+удаляет пользовательскую группу, если в ней нет больше членов, а
+\fBuseradd\fR
+по умолчанию создаёт группу с именем пользователя\&.
+.RE
+.SH "ПЕРЕКРЁСТНЫЕ ССЫЛКИ"
+.PP
+Следующие перекрёстные ссылки отражают связь между программами и их параметрам из набора для работы с теневыми паролями\&.
+.PP
+chfn
+.RS 4
+CHFN_AUTH
+CHFN_RESTRICT
+LOGIN_STRING
+.RE
+.PP
+chgpasswd
+.RS 4
+ENCRYPT_METHOD MAX_MEMBERS_PER_GROUP MD5_CRYPT_ENAB
+SHA_CRYPT_MAX_ROUNDS SHA_CRYPT_MIN_ROUNDS
+.RE
+.PP
+chpasswd
+.RS 4
+ENCRYPT_METHOD MD5_CRYPT_ENAB
+SHA_CRYPT_MAX_ROUNDS SHA_CRYPT_MIN_ROUNDS
+.RE
+.PP
+chsh
+.RS 4
+CHSH_AUTH LOGIN_STRING
+.RE
+.PP
+gpasswd
+.RS 4
+ENCRYPT_METHOD MAX_MEMBERS_PER_GROUP MD5_CRYPT_ENAB
+SHA_CRYPT_MAX_ROUNDS SHA_CRYPT_MIN_ROUNDS
+.RE
+.PP
+groupadd
+.RS 4
+GID_MAX GID_MIN MAX_MEMBERS_PER_GROUP SYS_GID_MAX SYS_GID_MIN
+.RE
+.PP
+groupdel
+.RS 4
+MAX_MEMBERS_PER_GROUP
+.RE
+.PP
+groupmems
+.RS 4
+MAX_MEMBERS_PER_GROUP
+.RE
+.PP
+groupmod
+.RS 4
+MAX_MEMBERS_PER_GROUP
+.RE
+.PP
+grpck
+.RS 4
+MAX_MEMBERS_PER_GROUP
+.RE
+.PP
+grpconv
+.RS 4
+MAX_MEMBERS_PER_GROUP
+.RE
+.PP
+grpunconv
+.RS 4
+MAX_MEMBERS_PER_GROUP
+.RE
+.PP
+lastlog
+.RS 4
+LASTLOG_UID_MAX
+.RE
+.PP
+login
+.RS 4
+CONSOLE
+CONSOLE_GROUPS DEFAULT_HOME
+ENV_HZ ENV_PATH ENV_SUPATH ENV_TZ ENVIRON_FILE
+ERASECHAR FAIL_DELAY
+FAILLOG_ENAB
+FAKE_SHELL
+FTMP_FILE
+HUSHLOGIN_FILE
+ISSUE_FILE
+KILLCHAR
+LASTLOG_ENAB LASTLOG_UID_MAX
+LOGIN_RETRIES
+LOGIN_STRING
+LOGIN_TIMEOUT LOG_OK_LOGINS LOG_UNKFAIL_ENAB
+MAIL_CHECK_ENAB MAIL_DIR MAIL_FILE MOTD_FILE NOLOGINS_FILE PORTTIME_CHECKS_ENAB QUOTAS_ENAB
+TTYGROUP TTYPERM TTYTYPE_FILE
+ULIMIT UMASK
+USERGROUPS_ENAB
+.RE
+.PP
+newgrp / sg
+.RS 4
+SYSLOG_SG_ENAB
+.RE
+.PP
+newusers
+.RS 4
+ENCRYPT_METHOD GID_MAX GID_MIN MAX_MEMBERS_PER_GROUP MD5_CRYPT_ENAB PASS_MAX_DAYS PASS_MIN_DAYS PASS_WARN_AGE
+SHA_CRYPT_MAX_ROUNDS SHA_CRYPT_MIN_ROUNDS
+SUB_GID_COUNT SUB_GID_MAX SUB_GID_MIN SUB_UID_COUNT SUB_UID_MAX SUB_UID_MIN SYS_GID_MAX SYS_GID_MIN SYS_UID_MAX SYS_UID_MIN UID_MAX UID_MIN UMASK
+.RE
+.PP
+passwd
+.RS 4
+ENCRYPT_METHOD MD5_CRYPT_ENAB OBSCURE_CHECKS_ENAB PASS_ALWAYS_WARN PASS_CHANGE_TRIES PASS_MAX_LEN PASS_MIN_LEN
+SHA_CRYPT_MAX_ROUNDS SHA_CRYPT_MIN_ROUNDS
+.RE
+.PP
+pwck
+.RS 4
+PASS_MAX_DAYS PASS_MIN_DAYS PASS_WARN_AGE
+.RE
+.PP
+pwconv
+.RS 4
+PASS_MAX_DAYS PASS_MIN_DAYS PASS_WARN_AGE
+.RE
+.PP
+su
+.RS 4
+CONSOLE
+CONSOLE_GROUPS DEFAULT_HOME
+ENV_HZ ENVIRON_FILE
+ENV_PATH ENV_SUPATH
+ENV_TZ LOGIN_STRING MAIL_CHECK_ENAB MAIL_DIR MAIL_FILE QUOTAS_ENAB
+SULOG_FILE SU_NAME
+SU_WHEEL_ONLY
+SYSLOG_SU_ENAB
+USERGROUPS_ENAB
+.RE
+.PP
+sulogin
+.RS 4
+ENV_HZ
+ENV_TZ
+.RE
+.PP
+useradd
+.RS 4
+CREATE_HOME GID_MAX GID_MIN LASTLOG_UID_MAX MAIL_DIR MAX_MEMBERS_PER_GROUP PASS_MAX_DAYS PASS_MIN_DAYS PASS_WARN_AGE SUB_GID_COUNT SUB_GID_MAX SUB_GID_MIN SUB_UID_COUNT SUB_UID_MAX SUB_UID_MIN SYS_GID_MAX SYS_GID_MIN SYS_UID_MAX SYS_UID_MIN UID_MAX UID_MIN UMASK
+.RE
+.PP
+userdel
+.RS 4
+MAIL_DIR MAIL_FILE MAX_MEMBERS_PER_GROUP USERDEL_CMD USERGROUPS_ENAB
+.RE
+.PP
+usermod
+.RS 4
+LASTLOG_UID_MAX MAIL_DIR MAIL_FILE MAX_MEMBERS_PER_GROUP
+.RE
+.SH "СМОТРИТЕ ТАКЖЕ"
+.PP
+\fBlogin\fR(1),
+\fBpasswd\fR(1),
+\fBsu\fR(1),
+\fBpasswd\fR(5),
+\fBshadow\fR(5),
+\fBpam\fR(8)\&.
diff --git a/man/ru/man5/passwd.5 b/man/ru/man5/passwd.5
new file mode 100644
index 00000000..ae414367
--- /dev/null
+++ b/man/ru/man5/passwd.5
@@ -0,0 +1,175 @@
+'\" t
+.\" Title: passwd
+.\" Author: Julianne Frances Haugh
+.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
+.\" Date: 06/13/2019
+.\" Manual: Форматы файлов
+.\" Source: shadow-utils 4.7
+.\" Language: Russian
+.\"
+.TH "passwd" "5" "06/13/2019" "shadow\-utils 4\&.7" "Форматы файлов"
+.\" -----------------------------------------------------------------
+.\" * Define some portability stuff
+.\" -----------------------------------------------------------------
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.\" http://bugs.debian.org/507673
+.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.ie \n(.g .ds Aq \(aq
+.el .ds Aq '
+.\" -----------------------------------------------------------------
+.\" * set default formatting
+.\" -----------------------------------------------------------------
+.\" disable hyphenation
+.nh
+.\" disable justification (adjust text to left margin only)
+.ad l
+.\" -----------------------------------------------------------------
+.\" * MAIN CONTENT STARTS HERE *
+.\" -----------------------------------------------------------------
+.SH "НАЗВАНИЕ"
+passwd \- файл паролей
+.SH "ОПИСАНИЕ"
+.PP
+Файл
+/etc/passwd
+содержит учётные записи пользователей, по одной в каждой строке\&. Строка состоит из семи полей, разделённых двоеточиями (\(Fo:\(Fc)\&. Поля:
+.sp
+.RS 4
+.ie n \{\
+\h'-04'\(bu\h'+03'\c
+.\}
+.el \{\
+.sp -1
+.IP \(bu 2.3
+.\}
+имя пользователя для входа в систему
+.RE
+.sp
+.RS 4
+.ie n \{\
+\h'-04'\(bu\h'+03'\c
+.\}
+.el \{\
+.sp -1
+.IP \(bu 2.3
+.\}
+необязательный зашифрованный пароль
+.RE
+.sp
+.RS 4
+.ie n \{\
+\h'-04'\(bu\h'+03'\c
+.\}
+.el \{\
+.sp -1
+.IP \(bu 2.3
+.\}
+числовой идентификатор пользователя
+.RE
+.sp
+.RS 4
+.ie n \{\
+\h'-04'\(bu\h'+03'\c
+.\}
+.el \{\
+.sp -1
+.IP \(bu 2.3
+.\}
+числовой идентификатор группы
+.RE
+.sp
+.RS 4
+.ie n \{\
+\h'-04'\(bu\h'+03'\c
+.\}
+.el \{\
+.sp -1
+.IP \(bu 2.3
+.\}
+ФИО пользователя или поле комментария
+.RE
+.sp
+.RS 4
+.ie n \{\
+\h'-04'\(bu\h'+03'\c
+.\}
+.el \{\
+.sp -1
+.IP \(bu 2.3
+.\}
+домашний каталог пользователя
+.RE
+.sp
+.RS 4
+.ie n \{\
+\h'-04'\(bu\h'+03'\c
+.\}
+.el \{\
+.sp -1
+.IP \(bu 2.3
+.\}
+необязательный интерпретатор командной строки пользователя
+.RE
+.PP
+Поле с зашифрованным паролем может быть пустым, и тогда для входа под этой учётной записью пароль не требуется\&. Однако, некоторые приложения, которые читают файл
+/etc/passwd, могут решить не позволять
+\fIлюбой\fR
+доступ, если поле
+\fIпароля\fR
+пустое\&. Если поле
+\fIпароля\fR
+содержит строчную
+\(Fox\(Fc, то шифрованный пароль хранится в файле
+\fBshadow\fR(5); в файле
+shadow
+\fIдолжна\fR
+быть соответствующая строка, иначе учётная запись считается недействительной\&. Если в поле
+\fIпароля\fR
+содержится какая\-то другая строка, то она воспринимается как шифрованный пароль, согласно формату
+\fBcrypt\fR(3)\&.
+.PP
+Поле комментария используется различными системными утилитами, такими как
+\fBfinger\fR(1)\&.
+.PP
+В поле домашнего каталога хранится начальный рабочий каталог\&. Программа
+\fBlogin\fR
+использует эту информацию для установки значения переменной окружения
+\fB$HOME\fR\&.
+.PP
+В поле интерпретатора командной строки хранится название интерпретатора командной строки пользователя или программы, которая будет запущена первой\&. Программа
+\fBlogin\fR
+использует эту информацию для установки значения переменной окружения
+\fB$SHELL\fR\&. Если это поле пустое, то используется значение по умолчанию
+/bin/sh\&.
+.SH "ФАЙЛЫ"
+.PP
+/etc/passwd
+.RS 4
+содержит информацию о пользователях
+.RE
+.PP
+/etc/shadow
+.RS 4
+необязательный файл с шифрованными паролями
+.RE
+.PP
+/etc/passwd\-
+.RS 4
+резервная копия файла /etc/passwd
+.sp
+Заметим, что этот файл используется программами из комплекта утилит shadow, но не всеми инструментами управления пользователями и паролями\&.
+.RE
+.SH "СМОТРИТЕ ТАКЖЕ"
+.PP
+\fBcrypt\fR(3),
+\fBgetent\fR(1),
+\fBgetpwnam\fR(3),
+\fBlogin\fR(1),
+\fBpasswd\fR(1),
+\fBpwck\fR(8),
+\fBpwconv\fR(8),
+\fBpwunconv\fR(8),
+\fBshadow\fR(5),
+\fBsu\fR(1),
+\fBsulogin\fR(8)\&.
diff --git a/man/ru/man5/porttime.5 b/man/ru/man5/porttime.5
new file mode 100644
index 00000000..803b27e0
--- /dev/null
+++ b/man/ru/man5/porttime.5
@@ -0,0 +1,98 @@
+'\" t
+.\" Title: porttime
+.\" Author: Julianne Frances Haugh
+.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
+.\" Date: 06/13/2019
+.\" Manual: Форматы файлов
+.\" Source: shadow-utils 4.7
+.\" Language: Russian
+.\"
+.TH "porttime" "5" "06/13/2019" "shadow\-utils 4\&.7" "Форматы файлов"
+.\" -----------------------------------------------------------------
+.\" * Define some portability stuff
+.\" -----------------------------------------------------------------
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.\" http://bugs.debian.org/507673
+.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.ie \n(.g .ds Aq \(aq
+.el .ds Aq '
+.\" -----------------------------------------------------------------
+.\" * set default formatting
+.\" -----------------------------------------------------------------
+.\" disable hyphenation
+.nh
+.\" disable justification (adjust text to left margin only)
+.ad l
+.\" -----------------------------------------------------------------
+.\" * MAIN CONTENT STARTS HERE *
+.\" -----------------------------------------------------------------
+.SH "НАЗВАНИЕ"
+porttime \- файл с временами доступа к портам
+.SH "ОПИСАНИЕ"
+.PP
+Файл
+\fIporttime\fR
+содержит список устройств tty, имена пользователей и разрешённое время входа\&.
+.PP
+Каждая запись состоит из трёх полей, разделённых двоеточиями\&. В первом поле содержится список устройств tty (перечисленных через запятую) или звёздочка, указывающая, что все устройства tty попадают под правило этой записи\&. Во втором поле содержится список имён пользователей (перечисленных через запятую) или звёздочка, указывающая, что все имена пользователей попадают под правило этой записи\&. В третьем поле содержится список (через запятую) допустимого времени работы\&.
+.PP
+Каждая запись времени доступа состоит из нуля или более дней недели, обозначенных как
+\fISu\fR,
+\fIMo\fR,
+\fITu\fR,
+\fIWe\fR,
+\fITh\fR,
+\fIFr\fR
+\fISa\fR, а также временем начала и конца, записанного через дефис\&. Сокращение
+\fIWk\fR
+можно использовать для обозначения периода с понедельника по пятницу, а
+\fIAl\fR
+обозначает каждый день\&. Если день не задан, то предполагается
+\fIAl\fR
+в качестве значения по умолчанию\&.
+.SH "ПРИМЕРЫ"
+.PP
+Следующая запись разрешает доступ пользователю
+\fBjfh\fR
+с любого порта по будням с 9:00 до 17:00\&.
+.PP
+*:jfh:Wk0900\-1700
+.PP
+Следующие записи разрешают доступ только пользователям
+\fIroot\fR
+\fIoper\fR
+/dev/console
+в любое время\&. Это показывает, что файл
+/etc/porttime
+обрабатывается в порядке появления записей в файле\&. Любой другой пользователь попадёт под правило второй записи, которая не разрешает доступ в любое время\&.
+.sp
+.if n \{\
+.RS 4
+.\}
+.nf
+ console:root,oper:Al0000\-2400
+ console:*:
+
+.fi
+.if n \{\
+.RE
+.\}
+.PP
+Следующая запись разрешает доступ пользователю
+\fIgames\fR
+с любого порта в нерабочие часы\&.
+.PP
+*:games:Wk1700\-0900,SaSu0000\-2400
+.SH "ФАЙЛЫ"
+.PP
+/etc/porttime
+.RS 4
+содержит разрешённое время работы определённых пользователей с определённых портов
+.RE
+.SH "СМОТРИТЕ ТАКЖЕ"
+.PP
+\fBlogin\fR(1)\&.
diff --git a/man/ru/man5/shadow.5 b/man/ru/man5/shadow.5
new file mode 100644
index 00000000..67e4f5b6
--- /dev/null
+++ b/man/ru/man5/shadow.5
@@ -0,0 +1,147 @@
+'\" t
+.\" Title: shadow
+.\" Author: Julianne Frances Haugh
+.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
+.\" Date: 06/13/2019
+.\" Manual: Форматы файлов
+.\" Source: shadow-utils 4.7
+.\" Language: Russian
+.\"
+.TH "shadow" "5" "06/13/2019" "shadow\-utils 4\&.7" "Форматы файлов"
+.\" -----------------------------------------------------------------
+.\" * Define some portability stuff
+.\" -----------------------------------------------------------------
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.\" http://bugs.debian.org/507673
+.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.ie \n(.g .ds Aq \(aq
+.el .ds Aq '
+.\" -----------------------------------------------------------------
+.\" * set default formatting
+.\" -----------------------------------------------------------------
+.\" disable hyphenation
+.nh
+.\" disable justification (adjust text to left margin only)
+.ad l
+.\" -----------------------------------------------------------------
+.\" * MAIN CONTENT STARTS HERE *
+.\" -----------------------------------------------------------------
+.SH "НАЗВАНИЕ"
+shadow \- файл теневых паролей
+.SH "ОПИСАНИЕ"
+.PP
+Файл
+shadow
+содержит шифрованные пароли учётных записей пользователей и необязательную информацию об устаревании пароля\&.
+.PP
+Этот файл должен быть недоступен обычному пользователю, если нужно обеспечить безопасность паролей\&.
+.PP
+Каждая строка файла содержит 9 полей, разделённых двоеточиями (\(Fo:\(Fc), расположенных в следующем порядке:
+.PP
+\fBимя пользователя для входа в систему\fR
+.RS 4
+Должно содержать правильное имя учётной записи, которая существует в системе\&.
+.RE
+.PP
+\fBшифрованный пароль\fR
+.RS 4
+Подробней о пароле смотрите в справочной странице
+\fBcrypt\fR(3)\&.
+.sp
+Если поле пароля содержит строку, которая не удовлетворяет требованиям
+\fBcrypt\fR(3), например содержит ! или *, то пользователь не сможет использовать этот пароль unix для входа (но может войти в систему под другими паролями)\&.
+.sp
+Это поле может быть пустым, то есть для указанной учётной записи не требуется аутентификация по паролю\&. Однако, некоторые приложения, читающие файл
+/etc/shadow, могут вообще отказать в доступе, если поле пароля пусто\&.
+.sp
+A password field which starts with an exclamation mark means that the password is locked\&. The remaining characters on the line represent the password field before the password was locked\&.
+.RE
+.PP
+\fBдата последней смены пароля\fR
+.RS 4
+Дата последней смены пароля в днях начиная с 1 января 1970 года\&.
+.sp
+The value 0 has a special meaning, which is that the user should change her password the next time she will log in the system\&.
+.sp
+Пустое значение обозначает, что проверка устаревания пароля выключена\&.
+.RE
+.PP
+\fBминимальный срок действия пароля\fR
+.RS 4
+Минимальный срок действия пароля в днях, которые пользователь должен ждать, чтобы поменять пароль\&.
+.sp
+Пустое значение поля и 0 отключают минимальный срок действия пароля\&.
+.RE
+.PP
+\fBмаксимальный срок действия пароля\fR
+.RS 4
+Максимальный срок действия пароля в днях, после которого пользователь должен изменить пароль\&.
+.sp
+По прошествии этого количества дней пароль может быть ещё действительным\&. Пользователя нужно попросить изменить пароль при следующем входе\&.
+.sp
+Пустое значение поля означает, что нет максимального срока действия пароля, нет периода предупреждения о пароле и нет периода неактивности пароля (смотрите далее)\&.
+.sp
+Если максимальный срок действия пароля меньше чем минимальный срок действия пароля, то пользователь не сможет изменить свой пароль\&.
+.RE
+.PP
+\fBпериод предупреждения о пароле\fR
+.RS 4
+Количество дней до устаревания пароля (смотрите максимальный срок действия пароля) во время которых пользователю выдаётся предупреждение\&.
+.sp
+Пустое значение поля и 0 отключают период предупреждения о пароле\&.
+.RE
+.PP
+\fBпериод неактивности пароля\fR
+.RS 4
+Количество дней после устаревания пароля (смотрите максимальный срок действия пароля) во время которых пароль всё ещё принимается (и пользователь должен обновить свой пароль при следующем входе)\&.
+.sp
+После устаревания пароля и истечения этого периода устаревания вход с текущим паролем становится невозможным\&. Пользователь должен обратиться к администратору\&.
+.sp
+Пустое значение поля означает, что период неактивности отсутствует\&.
+.RE
+.PP
+\fBдата истечения срока действия учётной записи\fR
+.RS 4
+Дата истечения срока действия учётной записи, указывается в днях начиная с 1 января 1970 года\&.
+.sp
+Note that an account expiration differs from a password expiration\&. In case of an account expiration, the user shall not be allowed to login\&. In case of a password expiration, the user is not allowed to login using her password\&.
+.sp
+Пустое значение обозначает, что учётная запись никогда не устаревает\&.
+.sp
+Значение 0 не должно использоваться, так как это может рассматриваться как неустаревающая учётная запись или что запись устарела 1 января 1970 года\&.
+.RE
+.PP
+\fBзарезервированное поле\fR
+.RS 4
+Это поле зарезервировано для использования в будущем\&.
+.RE
+.SH "ФАЙЛЫ"
+.PP
+/etc/passwd
+.RS 4
+содержит информацию о пользователях
+.RE
+.PP
+/etc/shadow
+.RS 4
+содержит защищаемую информацию о пользователях
+.RE
+.PP
+/etc/shadow\-
+.RS 4
+резервная копия файла /etc/shadow
+.sp
+Заметим, что этот файл используется программами из комплекта утилит shadow, но не всеми инструментами управления пользователями и паролями\&.
+.RE
+.SH "СМОТРИТЕ ТАКЖЕ"
+.PP
+\fBchage\fR(1),
+\fBlogin\fR(1),
+\fBpasswd\fR(1),
+\fBpasswd\fR(5),
+\fBpwck\fR(8),
+\fBpwconv\fR(8),
+\fBpwunconv\fR(8),
+\fBsu\fR(1),
+\fBsulogin\fR(8)\&.
diff --git a/man/ru/man5/suauth.5 b/man/ru/man5/suauth.5
new file mode 100644
index 00000000..de147024
--- /dev/null
+++ b/man/ru/man5/suauth.5
@@ -0,0 +1,145 @@
+'\" t
+.\" Title: suauth
+.\" Author: Marek Micha\(/lkiewicz
+.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
+.\" Date: 06/13/2019
+.\" Manual: Форматы файлов
+.\" Source: shadow-utils 4.7
+.\" Language: Russian
+.\"
+.TH "suauth" "5" "06/13/2019" "shadow\-utils 4\&.7" "Форматы файлов"
+.\" -----------------------------------------------------------------
+.\" * Define some portability stuff
+.\" -----------------------------------------------------------------
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.\" http://bugs.debian.org/507673
+.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.ie \n(.g .ds Aq \(aq
+.el .ds Aq '
+.\" -----------------------------------------------------------------
+.\" * set default formatting
+.\" -----------------------------------------------------------------
+.\" disable hyphenation
+.nh
+.\" disable justification (adjust text to left margin only)
+.ad l
+.\" -----------------------------------------------------------------
+.\" * MAIN CONTENT STARTS HERE *
+.\" -----------------------------------------------------------------
+.SH "НАЗВАНИЕ"
+suauth \- файл управления командой su
+.SH "СИНТАКСИС"
+.HP \w'\fB/etc/suauth\fR\ 'u
+\fB/etc/suauth\fR
+.SH "ОПИСАНИЕ"
+.PP
+Файл
+/etc/suauth
+проверяется каждый раз при запуске команды su\&. Он влияет на поведение команды su, в зависимости от:
+.sp
+.if n \{\
+.RS 4
+.\}
+.nf
+ 1) the user su is targeting
+
+.fi
+.if n \{\
+.RE
+.\}
+.PP
+2) пользователя, запустившего команду su (или группы, членом которой он может быть)
+.PP
+Формат файла показан ниже, строки начинающиеся с # считаются комментарием и игнорируются;
+.sp
+.if n \{\
+.RS 4
+.\}
+.nf
+ желаемый\-id:желающий\-id:ДЕЙСТВИЕ
+
+.fi
+.if n \{\
+.RE
+.\}
+.PP
+Где желаемый\-id может быть словом
+\fIALL\fR, списком имён пользователей, перечисленных через запятую (\(Fo,\(Fc) или фразы
+\fIALL EXCEPT\fR, после которой идёт список имён пользователей перечисленных через \(Fo,\(Fc\&.
+.PP
+from\-id is formatted the same as to\-id except the extra word
+\fIGROUP\fR
+is recognized\&.
+\fIALL EXCEPT GROUP\fR
+is perfectly valid too\&. Following
+\fIGROUP\fR
+appears one or more group names, delimited by ","\&. It is not sufficient to have primary group id of the relevant group, an entry in
+\fB/etc/group\fR(5)
+is necessary\&.
+.PP
+В поле ДЕЙСТВИЕ может быть только одно из следующих значений:
+.PP
+\fIDENY\fR
+.RS 4
+Команда su останавливает выполнение, даже не спрашивая пароль\&.
+.RE
+.PP
+\fINOPASS\fR
+.RS 4
+Команда su выполняется без запроса пароля\&.
+.RE
+.PP
+\fIOWNPASS\fR
+.RS 4
+Чтобы успешно выполнить команду su, пользователь должен ввести свой собственный пароль\&.
+.RE
+.PP
+Заметим, что тут используются три поля, разделённых двоеточиями\&. Никаких пробелов не допускается около двоеточий\&. Также заметим, что файл просматривается строка за строкой, и первое подходящее правило будет использовано без проверки оставшихся правил\&. Это позволяет системному администратору осуществлять любой контроль, какой он пожелает\&.
+.SH "ПРИМЕР"
+.sp
+.if n \{\
+.RS 4
+.\}
+.nf
+ # пример файла /etc/suauth
+ #
+ # Пара привилегированных имён пользователей
+ # могут выполнить su, чтобы получить права суперпользователя введя свой пароль\&.
+ #
+ root:chris,birddog:OWNPASS
+ #
+ # Все остальные не могут выполнить su для получения root, если они
+ # не члены группы wheel\&. Так настроено в BSD\&.
+ #
+ root:ALL EXCEPT GROUP wheel:DENY
+ #
+ # Возможно учётными записями terry и birddog
+ # владеет один человек\&.
+ # Переход из одной записи в другую
+ # можно сделать без запроса пароля\&.
+ #
+ terry:birddog:NOPASS
+ birddog:terry:NOPASS
+ #
+
+.fi
+.if n \{\
+.RE
+.\}
+.SH "ФАЙЛЫ"
+.PP
+/etc/suauth
+.RS 4
+.RE
+.SH "ОШИБКИ РЕАЛИЗАЦИИ"
+.PP
+Может быть несколько угроз\&. Анализатор файла, в частности, не прощает синтаксических ошибок, ожидая, что не будет недопустимых пробелов (кроме как в начале и конце строк) и специальных слов, разделяющих различные вещи\&.
+.SH "ДИАГНОСТИКА"
+.PP
+Ошибки при анализе файла выводятся с помощью
+\fBsyslogd\fR(8)
+с уровнем ERR средства AUTH\&.
+.SH "СМОТРИТЕ ТАКЖЕ"
+.PP
+\fBsu\fR(1)\&.
diff --git a/man/ru/man8/chgpasswd.8 b/man/ru/man8/chgpasswd.8
new file mode 100644
index 00000000..80536ccd
--- /dev/null
+++ b/man/ru/man8/chgpasswd.8
@@ -0,0 +1,203 @@
+'\" t
+.\" Title: chgpasswd
+.\" Author: Thomas K\(/loczko <kloczek@pld.org.pl>
+.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
+.\" Date: 06/13/2019
+.\" Manual: Команды управления системой
+.\" Source: shadow-utils 4.7
+.\" Language: Russian
+.\"
+.TH "chgpasswd" "8" "06/13/2019" "shadow\-utils 4\&.7" "Команды управления системой"
+.\" -----------------------------------------------------------------
+.\" * Define some portability stuff
+.\" -----------------------------------------------------------------
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.\" http://bugs.debian.org/507673
+.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.ie \n(.g .ds Aq \(aq
+.el .ds Aq '
+.\" -----------------------------------------------------------------
+.\" * set default formatting
+.\" -----------------------------------------------------------------
+.\" disable hyphenation
+.nh
+.\" disable justification (adjust text to left margin only)
+.ad l
+.\" -----------------------------------------------------------------
+.\" * MAIN CONTENT STARTS HERE *
+.\" -----------------------------------------------------------------
+.SH "НАЗВАНИЕ"
+chgpasswd \- обновляет пароли групп в пакетном режиме
+.SH "СИНТАКСИС"
+.HP \w'\fBchgpasswd\fR\ 'u
+\fBchgpasswd\fR [\fIпараметры\fR]
+.SH "ОПИСАНИЕ"
+.PP
+Программа
+\fBchgpasswd\fR
+читает список пар \(Foгруппа пароль\(Fc из стандартного входного потока и обновляет информацию о существующих группах\&. Каждая строка имеет вид:
+.PP
+\fIимя_группы\fR:\fIпароль\fR
+.PP
+По умолчанию, передаваемый пароль должен быть в виде обычного текста и шифруется командой
+\fBchgpasswd\fR\&.
+.PP
+The default encryption algorithm can be defined for the system with the
+\fBENCRYPT_METHOD\fR
+variable of
+/etc/login\&.defs, and can be overwritten with the
+\fB\-e\fR,
+\fB\-m\fR, or
+\fB\-c\fR
+options\&.
+.PP
+Данная команда предназначена для работы в крупных системных средах, где за один раз заводится несколько учётных записей\&.
+.SH "ПАРАМЕТРЫ"
+.PP
+Параметры команды
+\fBchgpasswd\fR:
+.PP
+\fB\-c\fR, \fB\-\-crypt\-method\fR
+.RS 4
+Использовать указанный метод для шифрования паролей\&.
+.sp
+Возможные методы: DES, MD5, NONE и SHA256 или SHA512, если эти методы поддерживается libc\&.
+.RE
+.PP
+\fB\-e\fR, \fB\-\-encrypted\fR
+.RS 4
+Передаваемые пароли заданы в шифрованном виде\&.
+.RE
+.PP
+\fB\-h\fR, \fB\-\-help\fR
+.RS 4
+Показать краткую справку и закончить работу\&.
+.RE
+.PP
+\fB\-m\fR, \fB\-\-md5\fR
+.RS 4
+Использовать алгоритм шифрования MD5 вместо DES, если пароли передаются не шифрованными\&.
+.RE
+.PP
+\fB\-R\fR, \fB\-\-root\fR\ \&\fIКАТ_CHROOT\fR
+.RS 4
+Выполнить изменения в каталоге
+\fIКАТ_CHROOT\fR
+и использовать файлы настройки из каталога
+\fIКАТ_CHROOT\fR\&.
+.RE
+.PP
+\fB\-s\fR, \fB\-\-sha\-rounds\fR
+.RS 4
+Использовать указанное количество раундов шифрования паролей\&.
+.sp
+Значение 0 означает, что система выберет количество раундов по умолчанию для выбранного метода шифрования (5000)\&.
+.sp
+Минимальное значение равно 1000, а максимальное значение равно 999,999,999\&.
+.sp
+Вы можете использовать этот параметр только при методе шифрования SHA256 или SHA512\&.
+.sp
+По умолчанию, количество раундов определяется переменными SHA_CRYPT_MIN_ROUNDS и SHA_CRYPT_MAX_ROUNDS из
+/etc/login\&.defs\&.
+.RE
+.SH "ПРЕДОСТЕРЕЖЕНИЯ"
+.PP
+Не забудьте установить права или umask, чтобы не позволить чтение не шифрованных файлов другими пользователями\&.
+.PP
+Вы должны проверить, что пароль и метод шифрования соответствует политике системных паролей\&.
+.SH "НАСТРОЙКА"
+.PP
+На работу этого инструмента влияют следующие переменные настройки из
+/etc/login\&.defs:
+.PP
+\fBENCRYPT_METHOD\fR (строка)
+.RS 4
+Задаёт системный алгоритм шифрования по умолчанию для шифрования паролей (используется, если алгоритм не указан в командной строке)\&.
+.sp
+Возможны следующие значения:
+\fIDES\fR
+(по умолчанию),
+\fIMD5\fR, \fISHA256\fR, \fISHA512\fR\&.
+.sp
+Замечание: этот параметр переопределяет переменную
+\fBMD5_CRYPT_ENAB\fR\&.
+.RE
+.PP
+\fBMAX_MEMBERS_PER_GROUP\fR (число)
+.RS 4
+Максимальное количество членов в записи о группе\&. При достижения максимума заводится новая запись группы (строка) в
+/etc/group
+(с тем же именем, паролем и тем же GID)\&.
+.sp
+Значение по умолчанию равно 0, означающее, что ограничения на количество членов в группе нет\&.
+.sp
+Данная возможность (разделение группы) позволяет ограничить длину строк в файле групп\&. Это полезно для ограничения длины строк групп NIS в 1024 символа\&.
+.sp
+Если вам нужно такое ограничение, укажите значение 25\&.
+.sp
+Замечание: разделение групп поддерживается не всеми инструментами (даже в наборе инструментов Shadow)\&. Вы не должны использовать эту переменную, если вам действительно это ненужно\&.
+.RE
+.PP
+\fBMD5_CRYPT_ENAB\fR (логический)
+.RS 4
+Обозначает, что пароль должен быть зашифрован по алгоритму на основе MD5\&. Если значение равно
+\fIyes\fR, то новые пароли будут зашифрованы по алгоритму на основе MD5, совместимому с используемым в новых версиях FreeBSD\&. Он поддерживает пароли неограниченной длины и имеет более длинную строку соли\&. Установите в
+\fIno\fR, если вам нужно копировать шифрованные пароли в другие системы, которые не поддерживают новый алгоритм\&. По умолчанию
+\fIno\fR\&.
+.sp
+Эта переменная переопределяется переменной
+\fBENCRYPT_METHOD\fR
+или любым параметром командной строки, который задаёт алгоритм шифрования\&.
+.sp
+Эта переменная устарела; используйте
+\fBENCRYPT_METHOD\fR\&.
+.RE
+.PP
+\fBSHA_CRYPT_MIN_ROUNDS\fR (число), \fBSHA_CRYPT_MAX_ROUNDS\fR (число)
+.RS 4
+Если значение
+\fBENCRYPT_METHOD\fR
+равно
+\fISHA256\fR
+или
+\fISHA512\fR, эта переменная определяет количество раундов SHA, используемых алгоритмом шифрования по умолчанию (если количество раундов не задано в командной строке)\&.
+.sp
+Увеличение количества раундов повышает сложность подбора пароля простым перебором\&. Но заметим, что при этом для аутентификации пользователей требуется большее количество процессорных ресурсов\&.
+.sp
+Если не задана, то libc выбирает значение количества раундов по умолчанию (5000)\&.
+.sp
+Значения должны лежать в диапазоне 1000\-999999999\&.
+.sp
+Если задано какое\-то одно значение \(em
+\fBSHA_CRYPT_MIN_ROUNDS\fR
+или
+\fBSHA_CRYPT_MAX_ROUNDS\fR
+\(em то будет использовано это значение\&.
+.sp
+Если
+\fBSHA_CRYPT_MIN_ROUNDS\fR
+>
+\fBSHA_CRYPT_MAX_ROUNDS\fR, то используется большее значение\&.
+.RE
+.SH "ФАЙЛЫ"
+.PP
+/etc/group
+.RS 4
+содержит информацию о группах
+.RE
+.PP
+/etc/gshadow
+.RS 4
+содержит защищаемую информацию о группах
+.RE
+.PP
+/etc/login\&.defs
+.RS 4
+содержит конфигурацию подсистемы теневых паролей
+.RE
+.SH "СМОТРИТЕ ТАКЖЕ"
+.PP
+\fBgpasswd\fR(1),
+\fBgroupadd\fR(8),
+\fBlogin.defs\fR(5)\&.
diff --git a/man/ru/man8/chpasswd.8 b/man/ru/man8/chpasswd.8
new file mode 100644
index 00000000..9161eb1b
--- /dev/null
+++ b/man/ru/man8/chpasswd.8
@@ -0,0 +1,205 @@
+'\" t
+.\" Title: chpasswd
+.\" Author: Julianne Frances Haugh
+.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
+.\" Date: 06/13/2019
+.\" Manual: Команды управления системой
+.\" Source: shadow-utils 4.7
+.\" Language: Russian
+.\"
+.TH "chpasswd" "8" "06/13/2019" "shadow\-utils 4\&.7" "Команды управления системой"
+.\" -----------------------------------------------------------------
+.\" * Define some portability stuff
+.\" -----------------------------------------------------------------
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.\" http://bugs.debian.org/507673
+.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.ie \n(.g .ds Aq \(aq
+.el .ds Aq '
+.\" -----------------------------------------------------------------
+.\" * set default formatting
+.\" -----------------------------------------------------------------
+.\" disable hyphenation
+.nh
+.\" disable justification (adjust text to left margin only)
+.ad l
+.\" -----------------------------------------------------------------
+.\" * MAIN CONTENT STARTS HERE *
+.\" -----------------------------------------------------------------
+.SH "НАЗВАНИЕ"
+chpasswd \- обновляет пароли в пакетном режиме
+.SH "СИНТАКСИС"
+.HP \w'\fBchpasswd\fR\ 'u
+\fBchpasswd\fR [\fIпараметры\fR]
+.SH "ОПИСАНИЕ"
+.PP
+Программа
+\fBchpasswd\fR
+читает список пар \(Foпользователь пароль\(Fc из стандартного входного потока и обновляет информацию о существующих пользователях\&. Каждая строка имеет вид:
+.PP
+\fIимя_пользователя\fR:\fIпароль\fR
+.PP
+По умолчанию, передаваемый пароль должен быть в виде обычного текста и шифруется командой
+\fBchpasswd\fR\&. Также, если есть срок действия пароля, то он будет обновлён\&.
+.PP
+The default encryption algorithm can be defined for the system with the
+\fBENCRYPT_METHOD\fR
+or
+\fBMD5_CRYPT_ENAB\fR
+variables of
+/etc/login\&.defs, and can be overwritten with the
+\fB\-e\fR,
+\fB\-m\fR, or
+\fB\-c\fR
+options\&.
+.PP
+\fBchpasswd\fR
+first updates all the passwords in memory, and then commits all the changes to disk if no errors occurred for any user\&.
+.PP
+Данная команда предназначена для работы в крупных системных средах, где за один раз заводится несколько учётных записей\&.
+.SH "ПАРАМЕТРЫ"
+.PP
+Параметры команды
+\fBchpasswd\fR:
+.PP
+\fB\-c\fR, \fB\-\-crypt\-method\fR\ \&\fIМЕТОД\fR
+.RS 4
+Использовать указанный метод для шифрования паролей\&.
+.sp
+Возможные методы: DES, MD5, NONE и SHA256 или SHA512, если эти методы поддерживается libc\&.
+.sp
+По умолчанию (если не указан параметр\fB\-c\fR,
+\fB\-m\fR
+или
+\fB\-e\fR), метод шифрования определяется переменной
+\fBENCRYPT_METHOD\fR
+или
+\fBMD5_CRYPT_ENAB\fR
+из файла
+/etc/login\&.defs\&.
+.RE
+.PP
+\fB\-e\fR, \fB\-\-encrypted\fR
+.RS 4
+Передаваемые пароли заданы в шифрованном виде\&.
+.RE
+.PP
+\fB\-h\fR, \fB\-\-help\fR
+.RS 4
+Показать краткую справку и закончить работу\&.
+.RE
+.PP
+\fB\-m\fR, \fB\-\-md5\fR
+.RS 4
+Использовать алгоритм шифрования MD5 вместо DES, если пароли передаются не шифрованными\&.
+.RE
+.PP
+\fB\-R\fR, \fB\-\-root\fR\ \&\fIКАТ_CHROOT\fR
+.RS 4
+Выполнить изменения в каталоге
+\fIКАТ_CHROOT\fR
+и использовать файлы настройки из каталога
+\fIКАТ_CHROOT\fR\&.
+.RE
+.PP
+\fB\-s\fR, \fB\-\-sha\-rounds\fR\ \&\fIРАУНДОВ\fR
+.RS 4
+Использовать указанное количество раундов шифрования паролей\&.
+.sp
+Значение 0 означает, что система выберет количество раундов по умолчанию для выбранного метода шифрования (5000)\&.
+.sp
+Минимальное значение равно 1000, а максимальное значение равно 999,999,999\&.
+.sp
+Вы можете использовать этот параметр только при методе шифрования SHA256 или SHA512\&.
+.sp
+По умолчанию, количество раундов определяется переменными
+\fBSHA_CRYPT_MIN_ROUNDS\fR
+\fBSHA_CRYPT_MAX_ROUNDS\fR
+/etc/login\&.defs\&.
+.RE
+.SH "ПРЕДОСТЕРЕЖЕНИЯ"
+.PP
+Не забудьте установить права или umask, чтобы не позволить чтение не шифрованных файлов другими пользователями\&.
+.SH "НАСТРОЙКА"
+.PP
+На работу этого инструмента влияют следующие переменные настройки из
+/etc/login\&.defs:
+.PP
+\fBENCRYPT_METHOD\fR (строка)
+.RS 4
+Задаёт системный алгоритм шифрования по умолчанию для шифрования паролей (используется, если алгоритм не указан в командной строке)\&.
+.sp
+Возможны следующие значения:
+\fIDES\fR
+(по умолчанию),
+\fIMD5\fR, \fISHA256\fR, \fISHA512\fR\&.
+.sp
+Замечание: этот параметр переопределяет переменную
+\fBMD5_CRYPT_ENAB\fR\&.
+.RE
+.PP
+\fBMD5_CRYPT_ENAB\fR (логический)
+.RS 4
+Обозначает, что пароль должен быть зашифрован по алгоритму на основе MD5\&. Если значение равно
+\fIyes\fR, то новые пароли будут зашифрованы по алгоритму на основе MD5, совместимому с используемым в новых версиях FreeBSD\&. Он поддерживает пароли неограниченной длины и имеет более длинную строку соли\&. Установите в
+\fIno\fR, если вам нужно копировать шифрованные пароли в другие системы, которые не поддерживают новый алгоритм\&. По умолчанию
+\fIno\fR\&.
+.sp
+Эта переменная переопределяется переменной
+\fBENCRYPT_METHOD\fR
+или любым параметром командной строки, который задаёт алгоритм шифрования\&.
+.sp
+Эта переменная устарела; используйте
+\fBENCRYPT_METHOD\fR\&.
+.RE
+.PP
+\fBSHA_CRYPT_MIN_ROUNDS\fR (число), \fBSHA_CRYPT_MAX_ROUNDS\fR (число)
+.RS 4
+Если значение
+\fBENCRYPT_METHOD\fR
+равно
+\fISHA256\fR
+или
+\fISHA512\fR, эта переменная определяет количество раундов SHA, используемых алгоритмом шифрования по умолчанию (если количество раундов не задано в командной строке)\&.
+.sp
+Увеличение количества раундов повышает сложность подбора пароля простым перебором\&. Но заметим, что при этом для аутентификации пользователей требуется большее количество процессорных ресурсов\&.
+.sp
+Если не задана, то libc выбирает значение количества раундов по умолчанию (5000)\&.
+.sp
+Значения должны лежать в диапазоне 1000\-999999999\&.
+.sp
+Если задано какое\-то одно значение \(em
+\fBSHA_CRYPT_MIN_ROUNDS\fR
+или
+\fBSHA_CRYPT_MAX_ROUNDS\fR
+\(em то будет использовано это значение\&.
+.sp
+Если
+\fBSHA_CRYPT_MIN_ROUNDS\fR
+>
+\fBSHA_CRYPT_MAX_ROUNDS\fR, то используется большее значение\&.
+.RE
+.SH "ФАЙЛЫ"
+.PP
+/etc/passwd
+.RS 4
+содержит информацию о пользователях
+.RE
+.PP
+/etc/shadow
+.RS 4
+содержит защищаемую информацию о пользователях
+.RE
+.PP
+/etc/login\&.defs
+.RS 4
+содержит конфигурацию подсистемы теневых паролей
+.RE
+.SH "СМОТРИТЕ ТАКЖЕ"
+.PP
+\fBpasswd\fR(1),
+\fBnewusers\fR(8),
+\fBlogin.defs\fR(5),\fBuseradd\fR(8)\&.
diff --git a/man/ru/man8/faillog.8 b/man/ru/man8/faillog.8
new file mode 100644
index 00000000..a4d6a2e9
--- /dev/null
+++ b/man/ru/man8/faillog.8
@@ -0,0 +1,159 @@
+'\" t
+.\" Title: faillog
+.\" Author: Julianne Frances Haugh
+.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
+.\" Date: 06/13/2019
+.\" Manual: Команды управления системой
+.\" Source: shadow-utils 4.7
+.\" Language: Russian
+.\"
+.TH "faillog" "8" "06/13/2019" "shadow\-utils 4\&.7" "Команды управления системой"
+.\" -----------------------------------------------------------------
+.\" * Define some portability stuff
+.\" -----------------------------------------------------------------
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.\" http://bugs.debian.org/507673
+.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.ie \n(.g .ds Aq \(aq
+.el .ds Aq '
+.\" -----------------------------------------------------------------
+.\" * set default formatting
+.\" -----------------------------------------------------------------
+.\" disable hyphenation
+.nh
+.\" disable justification (adjust text to left margin only)
+.ad l
+.\" -----------------------------------------------------------------
+.\" * MAIN CONTENT STARTS HERE *
+.\" -----------------------------------------------------------------
+.SH "НАЗВАНИЕ"
+faillog \- показывает записи из файла faillog или задаёт предел неудачных попыток входа в систему
+.SH "СИНТАКСИС"
+.HP \w'\fBfaillog\fR\ 'u
+\fBfaillog\fR [\fIпараметры\fR]
+.SH "ОПИСАНИЕ"
+.PP
+Программа
+\fBfaillog\fR
+показывает содержимое журнала неудачных попыток (файл
+/var/log/faillog)\&. Также она может быть использована для управления счётчиком неудачных попыток и их ограничением\&. При запуске
+\fBfaillog\fR
+без параметров выводятся записи faillog только тех пользователей, у которых имеется хотя бы одна неудачная попытка входа\&.
+.SH "ПАРАМЕТРЫ"
+.PP
+Параметры команды
+\fBfaillog\fR:
+.PP
+\fB\-a\fR, \fB\-\-all\fR
+.RS 4
+Показать записи faillog для всех пользователей из базы данных
+faillog\&.
+.sp
+Список пользователей можно ограничить с помощью параметра
+\fB\-u\fR\&.
+.sp
+В режиме вывода это ограничивает вывод списком существующих пользователей, но при этом для них выводятся даже пустые записи faillog\&.
+.sp
+Параметры
+\fB\-l\fR,
+\fB\-m\fR,
+\fB\-r\fR,
+\fB\-t\fR
+изменяют записи пользователей, даже если они не существует в системе\&. Это полезно для сброса записей пользователей, которые были удалены или для предварительной установки политики для диапазона пользователей\&.
+.RE
+.PP
+\fB\-h\fR, \fB\-\-help\fR
+.RS 4
+Показать краткую справку и закончить работу\&.
+.RE
+.PP
+\fB\-l\fR, \fB\-\-lock\-secs\fR\ \&\fIСЕКУНД\fR
+.RS 4
+Блокировать учётную запись на указанное количество
+\fIСЕКУНД\fR
+после неудачной попытки входа\&.
+.sp
+Для этого параметра требуется право на запись в
+/var/log/faillog\&.
+.RE
+.PP
+\fB\-m\fR, \fB\-\-maximum\fR\ \&\fIМАКС_ЧИСЛО\fR
+.RS 4
+Установить максимальное количество неудачных попыток входа перед блокировкой учётной записи равным
+\fIМАКС_ЧИСЛО\fR\&.
+.sp
+Если значение
+\fIМАКС_ЧИСЛО\fR
+равно 0, то количество неудачных попыток входа не ограничивается\&.
+.sp
+Для предотвращения атаки отказа в обслуживании максимальное количество неудачных попыток входа у
+\fIroot\fR
+всегда должно быть равно 0\&.
+.sp
+Для этого параметра требуется право на запись в
+/var/log/faillog\&.
+.RE
+.PP
+\fB\-r\fR, \fB\-\-reset\fR
+.RS 4
+Сбросить счётчик неудачных попыток входа\&.
+.sp
+Для этого параметра требуется право на запись в
+/var/log/faillog\&.
+.RE
+.PP
+\fB\-R\fR, \fB\-\-root\fR\ \&\fIКАТ_CHROOT\fR
+.RS 4
+Выполнить изменения в каталоге
+\fIКАТ_CHROOT\fR
+и использовать файлы настройки из каталога
+\fIКАТ_CHROOT\fR\&.
+.RE
+.PP
+\fB\-t\fR, \fB\-\-time\fR\ \&\fIДНЕЙ\fR
+.RS 4
+Показать записи faillog новее чем
+\fIДНЕЙ\fR\&.
+.RE
+.PP
+\fB\-u\fR, \fB\-\-user\fR\ \&\fIУЧЁТНАЯ ЗАПИСЬ\fR|\fIДИАПАЗОН\fR
+.RS 4
+Показать запись faillog или изменить счётчики неудачных попыток и ограничения (если задан параметр
+\fB\-l\fR,
+\fB\-m\fR
+или
+\fB\-r\fR) только для указанных учётных записей\&.
+.sp
+Пользователя можно указать по отдельному имени, числовому идентификатору или в виде
+\fIДИАПАЗОНА\fR
+пользователей\&. Такой
+\fIДИАПАЗОН\fR
+можно задавать в виде максимального и минимального значений(\fIUID_МИН\-UID_МАКС\fR), максимального (\fI\-UID_МАКС\fR) или минимального (\fIUID_МИН\-\fR) значения\&.
+.RE
+.PP
+Если параметры
+\fB\-l\fR,
+\fB\-m\fR
+или
+\fB\-r\fR
+не заданы, то
+\fBfaillog\fR
+показывает записи faillog указанных пользователей\&.
+.SH "ПРЕДОСТЕРЕЖЕНИЯ"
+.PP
+Программа
+\fBfaillog\fR
+выводит только записи о пользователях, последняя попытка входа которых была неудачной\&. Чтобы увидеть запись о пользователе, последняя попытка входа которого была удачной, вы должны специально указать имя пользователя с помощью параметра
+\fB\-u\fR, или для показа всех пользователей указать параметр
+\fB\-a\fR\&.
+.SH "ФАЙЛЫ"
+.PP
+/var/log/faillog
+.RS 4
+журнал неудавшихся попыток входа в систему
+.RE
+.SH "СМОТРИТЕ ТАКЖЕ"
+.PP
+\fBlogin\fR(1),
+\fBfaillog\fR(5)\&.
diff --git a/man/ru/man8/groupadd.8 b/man/ru/man8/groupadd.8
new file mode 100644
index 00000000..a15dab12
--- /dev/null
+++ b/man/ru/man8/groupadd.8
@@ -0,0 +1,251 @@
+'\" t
+.\" Title: groupadd
+.\" Author: Julianne Frances Haugh
+.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
+.\" Date: 06/13/2019
+.\" Manual: Команды управления системой
+.\" Source: shadow-utils 4.7
+.\" Language: Russian
+.\"
+.TH "groupadd" "8" "06/13/2019" "shadow\-utils 4\&.7" "Команды управления системой"
+.\" -----------------------------------------------------------------
+.\" * Define some portability stuff
+.\" -----------------------------------------------------------------
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.\" http://bugs.debian.org/507673
+.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.ie \n(.g .ds Aq \(aq
+.el .ds Aq '
+.\" -----------------------------------------------------------------
+.\" * set default formatting
+.\" -----------------------------------------------------------------
+.\" disable hyphenation
+.nh
+.\" disable justification (adjust text to left margin only)
+.ad l
+.\" -----------------------------------------------------------------
+.\" * MAIN CONTENT STARTS HERE *
+.\" -----------------------------------------------------------------
+.SH "НАЗВАНИЕ"
+groupadd \- создаёт новую группу
+.SH "СИНТАКСИС"
+.HP \w'\fBgroupadd\fR\ 'u
+\fBgroupadd\fR [\fIпараметры\fR] \fIгруппа\fR
+.SH "ОПИСАНИЕ"
+.PP
+Программа
+\fBgroupadd\fR
+создаёт новую группу согласно указанным значениям командной строки и системным значениям по умолчанию\&. Новая группа будет добавлена в системные файлы\&.
+.SH "ПАРАМЕТРЫ"
+.PP
+Параметры команды
+\fBgroupadd\fR:
+.PP
+\fB\-f\fR, \fB\-\-force\fR
+.RS 4
+Завершить работу и вернуть состояние успешного выполнения, если группа уже существует\&. Если используется вместе с параметром
+\fB\-g\fR
+и указанный GID уже существует, то выбирается другой (уникальный) GID (то есть параметр
+\fB\-g\fR
+игнорируется)\&.
+.RE
+.PP
+\fB\-g\fR, \fB\-\-gid\fR\ \&\fIGID\fR
+.RS 4
+Числовое значение идентификатора группы (ID)\&. Оно должно быть уникальным, если не используется параметр
+\fB\-o\fR\&. Значение должно быть неотрицательным\&. По умолчанию используется наименьшее значение ID большее или равное
+\fBGID_MIN\fR
+и большее чем у остальных групп\&.
+.sp
+Смотрите также описание
+\fB\-r\fR
+\fBGID_MAX\fR\&.
+.RE
+.PP
+\fB\-h\fR, \fB\-\-help\fR
+.RS 4
+Показать краткую справку и закончить работу\&.
+.RE
+.PP
+\fB\-K\fR, \fB\-\-key\fR\ \&\fIКЛЮЧ\fR=\fIЗНАЧЕНИЕ\fR
+.RS 4
+Изменить значения по умолчанию (GID_MIN, GID_MAX и другие), которые хранятся в файле
+/etc/login\&.defs\&. Можно указать несколько параметров
+\fB\-K\fR\&.
+.sp
+Пример:
+\fB\-K\fR\ \&\fIGID_MIN\fR=\fI100\fR\ \&\fB\-K\fR\ \&\fIGID_MAX\fR=\fI499\fR
+.sp
+Замечание: запись вида
+\fB\-K\fR\ \&\fIGID_MIN\fR=\fI10\fR,\fIGID_MAX\fR=\fI499\fR
+пока не работает\&.
+.RE
+.PP
+\fB\-o\fR, \fB\-\-non\-unique\fR
+.RS 4
+Разрешить добавление группы с не уникальным GID\&.
+.RE
+.PP
+\fB\-p\fR, \fB\-\-password\fR\ \&\fIПАРОЛЬ\fR
+.RS 4
+Шифрованное значение пароля, которое возвращает функция
+\fBcrypt\fR(3)\&. По умолчанию пароль отключён\&.
+.sp
+\fBЗамечание:\fR
+Этот параметр использовать не рекомендуется, так как пароль (или не шифрованный пароль) будет видим другими пользователям в списке процессов\&.
+.sp
+Вы должны проверить, что пароль соответствует политике системных паролей\&.
+.RE
+.PP
+\fB\-r\fR, \fB\-\-system\fR
+.RS 4
+Создать системную группу\&.
+.sp
+Числовые идентификаторы для системных групп выбираются из диапазона
+\fBSYS_GID_MIN\fR\-\fBSYS_GID_MAX\fR, определённых в
+login\&.defs, а не из
+\fBGID_MIN\fR\-\fBGID_MAX\fR\&.
+.RE
+.PP
+\fB\-R\fR, \fB\-\-root\fR\ \&\fIКАТ_CHROOT\fR
+.RS 4
+Выполнить изменения в каталоге
+\fIКАТ_CHROOT\fR
+и использовать файлы настройки из каталога
+\fIКАТ_CHROOT\fR\&.
+.RE
+.PP
+\fB\-P\fR, \fB\-\-prefix\fR\ \&\fIPREFIX_DIR\fR
+.RS 4
+Apply changes in the
+\fIPREFIX_DIR\fR
+directory and use the configuration files from the
+\fIPREFIX_DIR\fR
+directory\&. This option does not chroot and is intended for preparing a cross\-compilation target\&. Some limitations: NIS and LDAP users/groups are not verified\&. PAM authentication is using the host files\&. No SELINUX support\&.
+.RE
+.SH "НАСТРОЙКА"
+.PP
+На работу этого инструмента влияют следующие переменные настройки из
+/etc/login\&.defs:
+.PP
+\fBGID_MAX\fR (число), \fBGID_MIN\fR (число)
+.RS 4
+Диапазон идентификаторов групп, используемый в программах
+\fBuseradd\fR,
+\fBgroupadd\fR
+или
+\fBnewusers\fR
+для создания обычных групп\&.
+.sp
+Значение по умолчанию для
+\fBGID_MIN\fR
+(соотв\&.
+\fBGID_MAX\fR) равно 1000 (соотв\&. 60000)\&.
+.RE
+.PP
+\fBMAX_MEMBERS_PER_GROUP\fR (число)
+.RS 4
+Максимальное количество членов в записи о группе\&. При достижения максимума заводится новая запись группы (строка) в
+/etc/group
+(с тем же именем, паролем и тем же GID)\&.
+.sp
+Значение по умолчанию равно 0, означающее, что ограничения на количество членов в группе нет\&.
+.sp
+Данная возможность (разделение группы) позволяет ограничить длину строк в файле групп\&. Это полезно для ограничения длины строк групп NIS в 1024 символа\&.
+.sp
+Если вам нужно такое ограничение, укажите значение 25\&.
+.sp
+Замечание: разделение групп поддерживается не всеми инструментами (даже в наборе инструментов Shadow)\&. Вы не должны использовать эту переменную, если вам действительно это ненужно\&.
+.RE
+.PP
+\fBSYS_GID_MAX\fR (число), \fBSYS_GID_MIN\fR (число)
+.RS 4
+Диапазон идентификаторов групп, используемый в программах
+\fBuseradd\fR,
+\fBgroupadd\fR
+или
+\fBnewusers\fR
+для создания системных групп\&.
+.sp
+Значение по умолчанию для
+\fBSYS_GID_MIN\fR
+(соотв\&.\fBSYS_GID_MAX\fR) равно 101 (соотв\&.
+\fBGID_MIN\fR\-1)\&.
+.RE
+.SH "ФАЙЛЫ"
+.PP
+/etc/group
+.RS 4
+содержит информацию о группах
+.RE
+.PP
+/etc/gshadow
+.RS 4
+содержит защищаемую информацию о группах
+.RE
+.PP
+/etc/login\&.defs
+.RS 4
+содержит конфигурацию подсистемы теневых паролей
+.RE
+.SH "ПРЕДОСТЕРЕЖЕНИЯ"
+.PP
+Имена групп должны начинаться со строчной буквы или символа подчёркивания, и должны состоять только из строчных букв, цифр, символов подчёркивания и минус\&. Они могут заканчиваться знаком доллара\&. Это можно описать регулярным выражением: [a\-z_][a\-z0\-9_\-]*[$]?
+.PP
+Имена групп могут быть длиной не более 16 знаков\&.
+.PP
+Нельзя добавить группу NIS или LDAP\&. Это необходимо делать на соответствующем сервере\&.
+.PP
+Если имя группы уже существует во внешней базе данных групп, например в NIS или LDAP, то
+\fBgroupadd\fR
+не станет создавать группу\&.
+.SH "ВОЗВРАЩАЕМЫЕ ЗНАЧЕНИЯ"
+.PP
+Программа
+\fBgroupadd\fR
+завершая работу, возвращает следующие значения:
+.PP
+\fI0\fR
+.RS 4
+успешное выполнение
+.RE
+.PP
+\fI2\fR
+.RS 4
+ошибка в параметрах команды
+.RE
+.PP
+\fI3\fR
+.RS 4
+недопустимое значение параметра
+.RE
+.PP
+\fI4\fR
+.RS 4
+не уникальный GID (если не задан параметр
+\fB\-o\fR)
+.RE
+.PP
+\fI9\fR
+.RS 4
+не уникальное имя группы
+.RE
+.PP
+\fI10\fR
+.RS 4
+не удалось изменить файл групп
+.RE
+.SH "СМОТРИТЕ ТАКЖЕ"
+.PP
+\fBchfn\fR(1),
+\fBchsh\fR(1),
+\fBpasswd\fR(1),
+\fBgpasswd\fR(8),
+\fBgroupdel\fR(8),
+\fBgroupmod\fR(8),
+\fBlogin.defs\fR(5),
+\fBuseradd\fR(8),
+\fBuserdel\fR(8),
+\fBusermod\fR(8)\&.
diff --git a/man/ru/man8/groupdel.8 b/man/ru/man8/groupdel.8
new file mode 100644
index 00000000..a5664021
--- /dev/null
+++ b/man/ru/man8/groupdel.8
@@ -0,0 +1,142 @@
+'\" t
+.\" Title: groupdel
+.\" Author: Julianne Frances Haugh
+.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
+.\" Date: 06/13/2019
+.\" Manual: Команды управления системой
+.\" Source: shadow-utils 4.7
+.\" Language: Russian
+.\"
+.TH "groupdel" "8" "06/13/2019" "shadow\-utils 4\&.7" "Команды управления системой"
+.\" -----------------------------------------------------------------
+.\" * Define some portability stuff
+.\" -----------------------------------------------------------------
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.\" http://bugs.debian.org/507673
+.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.ie \n(.g .ds Aq \(aq
+.el .ds Aq '
+.\" -----------------------------------------------------------------
+.\" * set default formatting
+.\" -----------------------------------------------------------------
+.\" disable hyphenation
+.nh
+.\" disable justification (adjust text to left margin only)
+.ad l
+.\" -----------------------------------------------------------------
+.\" * MAIN CONTENT STARTS HERE *
+.\" -----------------------------------------------------------------
+.SH "НАЗВАНИЕ"
+groupdel \- удаляет группу
+.SH "СИНТАКСИС"
+.HP \w'\fBgroupdel\fR\ 'u
+\fBgroupdel\fR [\fIпараметры\fR] \fIГРУППА\fR
+.SH "ОПИСАНИЕ"
+.PP
+Программа
+\fBgroupdel\fR
+изменяет системные файлы учётных записей, удаляя все записи, относящиеся к
+\fIГРУППЕ\fR\&. Группа с таким именем должна существовать\&.
+.SH "ПАРАМЕТРЫ"
+.PP
+Параметры команды
+\fBgroupdel\fR:
+.PP
+\fB\-h\fR, \fB\-\-help\fR
+.RS 4
+Показать краткую справку и закончить работу\&.
+.RE
+.PP
+\fB\-R\fR, \fB\-\-root\fR\ \&\fIКАТ_CHROOT\fR
+.RS 4
+Выполнить изменения в каталоге
+\fIКАТ_CHROOT\fR
+и использовать файлы настройки из каталога
+\fIКАТ_CHROOT\fR\&.
+.RE
+.PP
+\fB\-P\fR, \fB\-\-prefix\fR\ \&\fIPREFIX_DIR\fR
+.RS 4
+Apply changes in the
+\fIPREFIX_DIR\fR
+directory and use the configuration files from the
+\fIPREFIX_DIR\fR
+directory\&. This option does not chroot and is intended for preparing a cross\-compilation target\&. Some limitations: NIS and LDAP users/groups are not verified\&. PAM authentication is using the host files\&. No SELINUX support\&.
+.RE
+.SH "ПРЕДОСТЕРЕЖЕНИЯ"
+.PP
+Вы не можете удалить группу, если она является первичной для существующего пользователя\&. Вы должны удалить пользователя перед тем как удалять группу\&.
+.PP
+Вы должны вручную проверить все файловые системы, чтобы убедиться, что не осталось файлов, принадлежащих удалённой группе\&.
+.SH "НАСТРОЙКА"
+.PP
+На работу этого инструмента влияют следующие переменные настройки из
+/etc/login\&.defs:
+.PP
+\fBMAX_MEMBERS_PER_GROUP\fR (число)
+.RS 4
+Максимальное количество членов в записи о группе\&. При достижения максимума заводится новая запись группы (строка) в
+/etc/group
+(с тем же именем, паролем и тем же GID)\&.
+.sp
+Значение по умолчанию равно 0, означающее, что ограничения на количество членов в группе нет\&.
+.sp
+Данная возможность (разделение группы) позволяет ограничить длину строк в файле групп\&. Это полезно для ограничения длины строк групп NIS в 1024 символа\&.
+.sp
+Если вам нужно такое ограничение, укажите значение 25\&.
+.sp
+Замечание: разделение групп поддерживается не всеми инструментами (даже в наборе инструментов Shadow)\&. Вы не должны использовать эту переменную, если вам действительно это ненужно\&.
+.RE
+.SH "ФАЙЛЫ"
+.PP
+/etc/group
+.RS 4
+содержит информацию о группах
+.RE
+.PP
+/etc/gshadow
+.RS 4
+содержит защищаемую информацию о группах
+.RE
+.SH "ВОЗВРАЩАЕМЫЕ ЗНАЧЕНИЯ"
+.PP
+Программа
+\fBgroupdel\fR
+завершая работу, возвращает следующие значения:
+.PP
+\fI0\fR
+.RS 4
+успешное выполнение
+.RE
+.PP
+\fI2\fR
+.RS 4
+ошибка в параметрах команды
+.RE
+.PP
+\fI6\fR
+.RS 4
+указанная группа не существует
+.RE
+.PP
+\fI8\fR
+.RS 4
+не удалось удалить первичную пользовательскую группу
+.RE
+.PP
+\fI10\fR
+.RS 4
+не удалось изменить файл групп
+.RE
+.SH "СМОТРИТЕ ТАКЖЕ"
+.PP
+\fBchfn\fR(1),
+\fBchsh\fR(1),
+\fBpasswd\fR(1),
+\fBgpasswd\fR(8),
+\fBgroupadd\fR(8),
+\fBgroupmod\fR(8),
+\fBuseradd\fR(8),
+\fBuserdel\fR(8),
+\fBusermod\fR(8)\&.
diff --git a/man/ru/man8/groupmems.8 b/man/ru/man8/groupmems.8
new file mode 100644
index 00000000..3b7c915a
--- /dev/null
+++ b/man/ru/man8/groupmems.8
@@ -0,0 +1,170 @@
+'\" t
+.\" Title: groupmems
+.\" Author: George Kraft, IV
+.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
+.\" Date: 06/13/2019
+.\" Manual: Команды управления системой
+.\" Source: shadow-utils 4.7
+.\" Language: Russian
+.\"
+.TH "groupmems" "8" "06/13/2019" "shadow\-utils 4\&.7" "Команды управления системой"
+.\" -----------------------------------------------------------------
+.\" * Define some portability stuff
+.\" -----------------------------------------------------------------
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.\" http://bugs.debian.org/507673
+.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.ie \n(.g .ds Aq \(aq
+.el .ds Aq '
+.\" -----------------------------------------------------------------
+.\" * set default formatting
+.\" -----------------------------------------------------------------
+.\" disable hyphenation
+.nh
+.\" disable justification (adjust text to left margin only)
+.ad l
+.\" -----------------------------------------------------------------
+.\" * MAIN CONTENT STARTS HERE *
+.\" -----------------------------------------------------------------
+.SH "НАЗВАНИЕ"
+groupmems \- управляет членами первичной группы пользователя
+.SH "СИНТАКСИС"
+.HP \w'\fBgroupmems\fR\ 'u
+\fBgroupmems\fR \-a\ \fIимя_пользователя\fR | \-d\ \fIимя_пользователя\fR | [\-g\ \fIимя_группы\fR] | \-l | \-p
+.SH "ОПИСАНИЕ"
+.PP
+Программа
+\fBgroupmems\fR
+позволяет пользователю управлять списком членов своей группы не имея привилегий суперпользователя\&. Программа
+\fBgroupmems\fR
+работает в системах, где в качестве первичной группы пользователя является группа с именем совпадающим с именем пользователя (то есть, guest / guest)\&.
+.PP
+Только суперпользователь как администратор может использовать
+\fBgroupmems\fR, чтобы изменить список членов не своей группы\&.
+.SH "ПАРАМЕТРЫ"
+.PP
+Параметры команды
+\fBgroupmems\fR:
+.PP
+\fB\-a\fR, \fB\-\-add\fR\ \&\fIимя_пользователя\fR
+.RS 4
+Add a user to the group membership list\&.
+.sp
+Если существует файл
+/etc/gshadow
+и записи о группе нет в файле
+/etc/gshadow, то будет создана новая запись\&.
+.RE
+.PP
+\fB\-d\fR, \fB\-\-delete\fR\ \&\fIимя_пользователя\fR
+.RS 4
+Удалить пользователя из группы\&.
+.sp
+Если существует файл
+/etc/gshadow, то пользователь будет удалён из списка членов и администраторов группы\&.
+.sp
+Если существует файл
+/etc/gshadow
+и записи о группе нет в файле
+/etc/gshadow, то будет создана новая запись\&.
+.RE
+.PP
+\fB\-g\fR, \fB\-\-group\fR\ \&\fIимя_группы\fR
+.RS 4
+Суперпользователь может указать группу, в которой нужно изменить список членов\&.
+.RE
+.PP
+\fB\-h\fR, \fB\-\-help\fR
+.RS 4
+Показать краткую справку и закончить работу\&.
+.RE
+.PP
+\fB\-l\fR, \fB\-\-list\fR
+.RS 4
+Показать список членов группы\&.
+.RE
+.PP
+\fB\-p\fR, \fB\-\-purge\fR
+.RS 4
+Вычистить всех пользователей из списка членов группы\&.
+.sp
+Если существует файл
+/etc/gshadow
+и записи о группе нет в файле
+/etc/gshadow, то будет создана новая запись\&.
+.RE
+.PP
+\fB\-R\fR, \fB\-\-root\fR\ \&\fIКАТ_CHROOT\fR
+.RS 4
+Выполнить изменения в каталоге
+\fIКАТ_CHROOT\fR
+и использовать файлы настройки из каталога
+\fIКАТ_CHROOT\fR\&.
+.RE
+.SH "НАСТРОЙКА"
+.PP
+Исполняемый файл программы
+\fBgroupmems\fR
+должен иметь права
+2770, принадлежать пользователю
+\fIroot\fR
+и группе
+\fIgroups\fR\&. Системный администратор может добавлять пользователей в группу
+\fIgroups\fR, разрешая или запрещая им запускать программу
+\fBgroupmems\fR
+для управления членством в своей группе\&.
+.sp
+.if n \{\
+.RS 4
+.\}
+.nf
+ $ groupadd \-r groups
+ $ chmod 2770 groupmems
+ $ chown root\&.groups groupmems
+ $ groupmems \-g groups \-a gk4
+
+.fi
+.if n \{\
+.RE
+.\}
+.SH "НАСТРОЙКА"
+.PP
+На работу этого инструмента влияют следующие переменные настройки из
+/etc/login\&.defs:
+.PP
+\fBMAX_MEMBERS_PER_GROUP\fR (число)
+.RS 4
+Максимальное количество членов в записи о группе\&. При достижения максимума заводится новая запись группы (строка) в
+/etc/group
+(с тем же именем, паролем и тем же GID)\&.
+.sp
+Значение по умолчанию равно 0, означающее, что ограничения на количество членов в группе нет\&.
+.sp
+Данная возможность (разделение группы) позволяет ограничить длину строк в файле групп\&. Это полезно для ограничения длины строк групп NIS в 1024 символа\&.
+.sp
+Если вам нужно такое ограничение, укажите значение 25\&.
+.sp
+Замечание: разделение групп поддерживается не всеми инструментами (даже в наборе инструментов Shadow)\&. Вы не должны использовать эту переменную, если вам действительно это ненужно\&.
+.RE
+.SH "ФАЙЛЫ"
+.PP
+/etc/group
+.RS 4
+содержит информацию о группах
+.RE
+.PP
+/etc/gshadow
+.RS 4
+содержит защищаемую информацию о группах
+.RE
+.SH "СМОТРИТЕ ТАКЖЕ"
+.PP
+\fBchfn\fR(1),
+\fBchsh\fR(1),
+\fBpasswd\fR(1),
+\fBgroupadd\fR(8),
+\fBgroupdel\fR(8),
+\fBuseradd\fR(8),
+\fBuserdel\fR(8),
+\fBusermod\fR(8)\&.
diff --git a/man/ru/man8/groupmod.8 b/man/ru/man8/groupmod.8
new file mode 100644
index 00000000..c44bab7c
--- /dev/null
+++ b/man/ru/man8/groupmod.8
@@ -0,0 +1,229 @@
+'\" t
+.\" Title: groupmod
+.\" Author: Julianne Frances Haugh
+.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
+.\" Date: 06/13/2019
+.\" Manual: Команды управления системой
+.\" Source: shadow-utils 4.7
+.\" Language: Russian
+.\"
+.TH "groupmod" "8" "06/13/2019" "shadow\-utils 4\&.7" "Команды управления системой"
+.\" -----------------------------------------------------------------
+.\" * Define some portability stuff
+.\" -----------------------------------------------------------------
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.\" http://bugs.debian.org/507673
+.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.ie \n(.g .ds Aq \(aq
+.el .ds Aq '
+.\" -----------------------------------------------------------------
+.\" * set default formatting
+.\" -----------------------------------------------------------------
+.\" disable hyphenation
+.nh
+.\" disable justification (adjust text to left margin only)
+.ad l
+.\" -----------------------------------------------------------------
+.\" * MAIN CONTENT STARTS HERE *
+.\" -----------------------------------------------------------------
+.SH "НАЗВАНИЕ"
+groupmod \- изменяет определение группы в системе
+.SH "СИНТАКСИС"
+.HP \w'\fBgroupmod\fR\ 'u
+\fBgroupmod\fR [\fIпараметры\fR] \fIГРУППА\fR
+.SH "ОПИСАНИЕ"
+.PP
+Команда
+\fBgroupmod\fR
+изменяет определение указанной
+\fIГРУППЫ\fR, изменяя соответствующую запись в базе данных групп\&.
+.SH "ПАРАМЕТРЫ"
+.PP
+Параметры команды
+\fBgroupmod\fR:
+.PP
+\fB\-g\fR, \fB\-\-gid\fR\ \&\fIGID\fR
+.RS 4
+Имя группы будет изменено с
+\fIГРУППА\fR
+на
+\fIGID\fR\&.
+.sp
+Десятичное значение
+\fIGID\fR
+должно быть неотрицательным\&. Это значение должно быть уникальным, если не указан параметр
+\fB\-o\fR\&.
+.sp
+У пользователей, которых эта группа является первичной, будет выполнено соответствующее обновление\&.
+.sp
+У всех файлов, которые имеют ID старой группы и должны продолжать принадлежать
+\fIGROUP\fR, нужно изменить их ID вручную\&.
+.sp
+Никаких проверок по
+\fBGID_MIN\fR,
+\fBGID_MAX\fR,
+\fBSYS_GID_MIN\fR
+или
+\fBSYS_GID_MAX\fR
+из
+/etc/login\&.defs
+не производится\&.
+.RE
+.PP
+\fB\-h\fR, \fB\-\-help\fR
+.RS 4
+Показать краткую справку и закончить работу\&.
+.RE
+.PP
+\fB\-n\fR, \fB\-\-new\-name\fR\ \&\fIНОВАЯ_ГРУППА\fR
+.RS 4
+Имя группы будет изменено с
+\fIГРУППА\fR
+на
+\fIНОВАЯ_ГРУППА\fR\&.
+.RE
+.PP
+\fB\-o\fR, \fB\-\-non\-unique\fR
+.RS 4
+При использовании с параметром
+\fB\-g\fR
+разрешается изменять
+\fIGID\fR
+группы не уникальным значением\&.
+.RE
+.PP
+\fB\-p\fR, \fB\-\-password\fR\ \&\fIПАРОЛЬ\fR
+.RS 4
+Шифрованное значение пароля, которое возвращает функция
+\fBcrypt\fR(3)\&.
+.sp
+\fBЗамечание:\fR
+Этот параметр использовать не рекомендуется, так как пароль (или не шифрованный пароль) будет видим другими пользователям в списке процессов\&.
+.sp
+Вы должны проверить, что пароль соответствует политике системных паролей\&.
+.RE
+.PP
+\fB\-R\fR, \fB\-\-root\fR\ \&\fIКАТ_CHROOT\fR
+.RS 4
+Выполнить изменения в каталоге
+\fIКАТ_CHROOT\fR
+и использовать файлы настройки из каталога
+\fIКАТ_CHROOT\fR\&.
+.RE
+.PP
+\fB\-P\fR, \fB\-\-prefix\fR\ \&\fIPREFIX_DIR\fR
+.RS 4
+Apply changes in the
+\fIPREFIX_DIR\fR
+directory and use the configuration files from the
+\fIPREFIX_DIR\fR
+directory\&. This option does not chroot and is intended for preparing a cross\-compilation target\&. Some limitations: NIS and LDAP users/groups are not verified\&. PAM authentication is using the host files\&. No SELINUX support\&.
+.RE
+.SH "НАСТРОЙКА"
+.PP
+На работу этого инструмента влияют следующие переменные настройки из
+/etc/login\&.defs:
+.PP
+\fBMAX_MEMBERS_PER_GROUP\fR (число)
+.RS 4
+Максимальное количество членов в записи о группе\&. При достижения максимума заводится новая запись группы (строка) в
+/etc/group
+(с тем же именем, паролем и тем же GID)\&.
+.sp
+Значение по умолчанию равно 0, означающее, что ограничения на количество членов в группе нет\&.
+.sp
+Данная возможность (разделение группы) позволяет ограничить длину строк в файле групп\&. Это полезно для ограничения длины строк групп NIS в 1024 символа\&.
+.sp
+Если вам нужно такое ограничение, укажите значение 25\&.
+.sp
+Замечание: разделение групп поддерживается не всеми инструментами (даже в наборе инструментов Shadow)\&. Вы не должны использовать эту переменную, если вам действительно это ненужно\&.
+.RE
+.SH "ФАЙЛЫ"
+.PP
+/etc/group
+.RS 4
+содержит информацию о группах
+.RE
+.PP
+/etc/gshadow
+.RS 4
+содержит защищаемую информацию о группах
+.RE
+.PP
+/etc/login\&.defs
+.RS 4
+содержит конфигурацию подсистемы теневых паролей
+.RE
+.PP
+/etc/passwd
+.RS 4
+содержит информацию о пользователях
+.RE
+.SH "ВОЗВРАЩАЕМЫЕ ЗНАЧЕНИЯ"
+.PP
+Команда
+\fBgroupmod\fR
+завершая работу, возвращает следующие значения:
+.PP
+\fI0\fR
+.RS 4
+E_SUCCESS: success
+.RE
+.PP
+\fI2\fR
+.RS 4
+E_USAGE: invalid command syntax
+.RE
+.PP
+\fI3\fR
+.RS 4
+E_BAD_ARG: invalid argument to option
+.RE
+.PP
+\fI4\fR
+.RS 4
+E_GID_IN_USE: specified group doesn\*(Aqt exist
+.RE
+.PP
+\fI6\fR
+.RS 4
+E_NOTFOUND: specified group doesn\*(Aqt exist
+.RE
+.PP
+\fI9\fR
+.RS 4
+E_NAME_IN_USE: group name already in use
+.RE
+.PP
+\fI10\fR
+.RS 4
+E_GRP_UPDATE: can\*(Aqt update group file
+.RE
+.PP
+\fI11\fR
+.RS 4
+E_CLEANUP_SERVICE: can\*(Aqt setup cleanup service
+.RE
+.PP
+\fI12\fR
+.RS 4
+E_PAM_USERNAME: can\*(Aqt determine your username for use with pam
+.RE
+.PP
+\fI13\fR
+.RS 4
+E_PAM_ERROR: pam returned an error, see syslog facility id groupmod for the PAM error message
+.RE
+.SH "СМОТРИТЕ ТАКЖЕ"
+.PP
+\fBchfn\fR(1),
+\fBchsh\fR(1),
+\fBpasswd\fR(1),
+\fBgpasswd\fR(8),
+\fBgroupadd\fR(8),
+\fBgroupdel\fR(8),
+\fBlogin.defs\fR(5),
+\fBuseradd\fR(8),
+\fBuserdel\fR(8),
+\fBusermod\fR(8)\&.
diff --git a/man/ru/man8/grpck.8 b/man/ru/man8/grpck.8
new file mode 100644
index 00000000..a5e8abef
--- /dev/null
+++ b/man/ru/man8/grpck.8
@@ -0,0 +1,238 @@
+'\" t
+.\" Title: grpck
+.\" Author: Julianne Frances Haugh
+.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
+.\" Date: 06/13/2019
+.\" Manual: Команды управления системой
+.\" Source: shadow-utils 4.7
+.\" Language: Russian
+.\"
+.TH "grpck" "8" "06/13/2019" "shadow\-utils 4\&.7" "Команды управления системой"
+.\" -----------------------------------------------------------------
+.\" * Define some portability stuff
+.\" -----------------------------------------------------------------
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.\" http://bugs.debian.org/507673
+.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.ie \n(.g .ds Aq \(aq
+.el .ds Aq '
+.\" -----------------------------------------------------------------
+.\" * set default formatting
+.\" -----------------------------------------------------------------
+.\" disable hyphenation
+.nh
+.\" disable justification (adjust text to left margin only)
+.ad l
+.\" -----------------------------------------------------------------
+.\" * MAIN CONTENT STARTS HERE *
+.\" -----------------------------------------------------------------
+.SH "НАЗВАНИЕ"
+grpck \- проверяет корректность файлов групп
+.SH "СИНТАКСИС"
+.HP \w'\fBgrpck\fR\ 'u
+\fBgrpck\fR [параметры] [\fIгруппа\fR\ [\ \fIshadow\fR\ ]]
+.SH "ОПИСАНИЕ"
+.PP
+Программа
+\fBgrpck\fR
+проверяет целостность информации о группах в системе\&. Проверяются формат и правильность данных всех записей в файлах
+/etc/group
+/etc/gshadow\&. В случае обнаружения ошибок пользователю предлагается подтвердить удаление записей, имеющих неверный формат или восстановление которых невозможно\&.
+.PP
+Выполняются следующие проверки:
+.sp
+.RS 4
+.ie n \{\
+\h'-04'\(bu\h'+03'\c
+.\}
+.el \{\
+.sp -1
+.IP \(bu 2.3
+.\}
+правильное количество полей
+.RE
+.sp
+.RS 4
+.ie n \{\
+\h'-04'\(bu\h'+03'\c
+.\}
+.el \{\
+.sp -1
+.IP \(bu 2.3
+.\}
+уникальность и корректность имени группы
+.RE
+.sp
+.RS 4
+.ie n \{\
+\h'-04'\(bu\h'+03'\c
+.\}
+.el \{\
+.sp -1
+.IP \(bu 2.3
+.\}
+корректность идентификатора группы
+(только для /etc/group)
+.RE
+.sp
+.RS 4
+.ie n \{\
+\h'-04'\(bu\h'+03'\c
+.\}
+.el \{\
+.sp -1
+.IP \(bu 2.3
+.\}
+корректность списка членов
+и администраторов
+.RE
+.sp
+.RS 4
+.ie n \{\
+\h'-04'\(bu\h'+03'\c
+.\}
+.el \{\
+.sp -1
+.IP \(bu 2.3
+.\}
+соответствие записи в файле
+/etc/gshadow
+(и
+/etc/group
+при проверках
+gshadow)
+.RE
+.PP
+Ошибки в количестве полей и уникальности имён групп невосстановимы\&. Если запись содержит неверное число полей, пользователя попросят подтвердить удаление всей строки\&. Если пользователь ответит отрицательно, дальнейшая проверка выполняться не будет\&. При ошибке повторения имени группы также возникает запрос на удаление, но в случае отказа проверка будет продолжена\&. Обо всех остальных ошибках выводится предупреждение и пользователю предлагается запустить команду
+\fBgroupmod\fR, чтобы исправить ошибку\&.
+.PP
+Команды, которые работают с файлом
+/etc/group
+и /etc/gshadow, не способны изменить повреждённые или дублирующиеся записи\&. В этом случае нужно использовать
+\fBgrpck\fR
+для удаления испорченной записи\&.
+.SH "ПАРАМЕТРЫ"
+.PP
+Параметры
+\fB\-r\fR,
+\fB\-s\fR
+не могут использоваться одновременно\&.
+.PP
+Параметры команды
+\fBgrpck\fR:
+.PP
+\fB\-h\fR, \fB\-\-help\fR
+.RS 4
+Показать краткую справку и закончить работу\&.
+.RE
+.PP
+\fB\-r\fR, \fB\-\-read\-only\fR
+.RS 4
+Запускать команду
+\fBgrpck\fR
+в режиме только для чтения\&. При этом на все вопросы об изменениях устанавливается ответ
+\fIнет\fR
+и участие пользователя не требуется\&.
+.RE
+.PP
+\fB\-R\fR, \fB\-\-root\fR\ \&\fIКАТ_CHROOT\fR
+.RS 4
+Выполнить изменения в каталоге
+\fIКАТ_CHROOT\fR
+и использовать файлы настройки из каталога
+\fIКАТ_CHROOT\fR\&.
+.RE
+.PP
+\fB\-s\fR, \fB\-\-sort\fR
+.RS 4
+Отсортировать все записи в файле
+/etc/groupи /etc/gshadow
+по числовому идентификатору группы (GID)\&.
+.RE
+.PP
+By default,
+\fBgrpck\fR
+operates on
+/etc/group
+and /etc/gshadow\&. The user may select alternate files with the
+\fIgroup\fR
+and \fIshadow\fR parameters\&.
+.SH "НАСТРОЙКА"
+.PP
+На работу этого инструмента влияют следующие переменные настройки из
+/etc/login\&.defs:
+.PP
+\fBMAX_MEMBERS_PER_GROUP\fR (число)
+.RS 4
+Максимальное количество членов в записи о группе\&. При достижения максимума заводится новая запись группы (строка) в
+/etc/group
+(с тем же именем, паролем и тем же GID)\&.
+.sp
+Значение по умолчанию равно 0, означающее, что ограничения на количество членов в группе нет\&.
+.sp
+Данная возможность (разделение группы) позволяет ограничить длину строк в файле групп\&. Это полезно для ограничения длины строк групп NIS в 1024 символа\&.
+.sp
+Если вам нужно такое ограничение, укажите значение 25\&.
+.sp
+Замечание: разделение групп поддерживается не всеми инструментами (даже в наборе инструментов Shadow)\&. Вы не должны использовать эту переменную, если вам действительно это ненужно\&.
+.RE
+.SH "ФАЙЛЫ"
+.PP
+/etc/group
+.RS 4
+содержит информацию о группах
+.RE
+.PP
+/etc/gshadow
+.RS 4
+содержит защищаемую информацию о группах
+.RE
+.PP
+/etc/passwd
+.RS 4
+содержит информацию о пользователях
+.RE
+.SH "ВОЗВРАЩАЕМЫЕ ЗНАЧЕНИЯ"
+.PP
+Команда
+\fBgrpck\fR
+завершая работу, возвращает следующие значения:
+.PP
+\fI0\fR
+.RS 4
+успешное выполнение
+.RE
+.PP
+\fI1\fR
+.RS 4
+ошибка в параметрах команды
+.RE
+.PP
+\fI2\fR
+.RS 4
+есть одна или более неправильных записей групп
+.RE
+.PP
+\fI3\fR
+.RS 4
+не удалось открыть файл групп
+.RE
+.PP
+\fI4\fR
+.RS 4
+не удалось заблокировать файл групп
+.RE
+.PP
+\fI5\fR
+.RS 4
+не удалось изменить файл групп
+.RE
+.SH "СМОТРИТЕ ТАКЖЕ"
+.PP
+\fBgroup\fR(5),
+\fBgroupmod\fR(8),
+\fBgshadow\fR(5),\fBpasswd\fR(5),
+\fBpwck\fR(8),
+\fBshadow\fR(5)\&.
diff --git a/man/ru/man8/grpconv.8 b/man/ru/man8/grpconv.8
new file mode 100644
index 00000000..6eed9e8b
--- /dev/null
+++ b/man/ru/man8/grpconv.8
@@ -0,0 +1 @@
+.so man8/pwconv.8
diff --git a/man/ru/man8/grpunconv.8 b/man/ru/man8/grpunconv.8
new file mode 100644
index 00000000..6eed9e8b
--- /dev/null
+++ b/man/ru/man8/grpunconv.8
@@ -0,0 +1 @@
+.so man8/pwconv.8
diff --git a/man/ru/man8/lastlog.8 b/man/ru/man8/lastlog.8
new file mode 100644
index 00000000..cbdf456e
--- /dev/null
+++ b/man/ru/man8/lastlog.8
@@ -0,0 +1,132 @@
+'\" t
+.\" Title: lastlog
+.\" Author: Julianne Frances Haugh
+.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
+.\" Date: 06/13/2019
+.\" Manual: Команды управления системой
+.\" Source: shadow-utils 4.7
+.\" Language: Russian
+.\"
+.TH "lastlog" "8" "06/13/2019" "shadow\-utils 4\&.7" "Команды управления системой"
+.\" -----------------------------------------------------------------
+.\" * Define some portability stuff
+.\" -----------------------------------------------------------------
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.\" http://bugs.debian.org/507673
+.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.ie \n(.g .ds Aq \(aq
+.el .ds Aq '
+.\" -----------------------------------------------------------------
+.\" * set default formatting
+.\" -----------------------------------------------------------------
+.\" disable hyphenation
+.nh
+.\" disable justification (adjust text to left margin only)
+.ad l
+.\" -----------------------------------------------------------------
+.\" * MAIN CONTENT STARTS HERE *
+.\" -----------------------------------------------------------------
+.SH "НАЗВАНИЕ"
+lastlog \- выводит отчёт о последней регистрации в системе всех или указанного пользователя
+.SH "СИНТАКСИС"
+.HP \w'\fBlastlog\fR\ 'u
+\fBlastlog\fR [\fIпараметры\fR]
+.SH "ОПИСАНИЕ"
+.PP
+Программа
+\fBlastlog\fR
+упорядочивает и выводит содержимое файла
+/var/log/lastlog, который содержит даты последнего входа пользователей в систему\&. Выводятся
+\fIимя пользователя\fR,
+\fIпорт\fR
+\fIдата последнего входа в систему\fR\&. По умолчанию (вызов без параметров) показываются записи файла lastlog, отсортированные согласно расположению пользователей в файле
+/etc/passwd\&.
+.SH "ПАРАМЕТРЫ"
+.PP
+Параметры команды
+\fBlastlog\fR:
+.PP
+\fB\-b\fR, \fB\-\-before\fR\ \&\fIДНЕЙ\fR
+.RS 4
+Показать записи lastlog за последние
+\fIДНЕЙ\fR\&.
+.RE
+.PP
+\fB\-C\fR, \fB\-\-clear\fR
+.RS 4
+Clear lastlog record of a user\&. This option can be used only together with
+\fB\-u\fR
+(\fB\-\-user\fR))\&.
+.RE
+.PP
+\fB\-h\fR, \fB\-\-help\fR
+.RS 4
+Показать краткую справку и закончить работу\&.
+.RE
+.PP
+\fB\-R\fR, \fB\-\-root\fR\ \&\fIКАТ_CHROOT\fR
+.RS 4
+Выполнить изменения в каталоге
+\fIКАТ_CHROOT\fR
+и использовать файлы настройки из каталога
+\fIКАТ_CHROOT\fR\&.
+.RE
+.PP
+\fB\-S\fR, \fB\-\-set\fR
+.RS 4
+Set lastlog record of a user to the current time\&. This option can be used only together with
+\fB\-u\fR
+(\fB\-\-user\fR))\&.
+.RE
+.PP
+\fB\-t\fR, \fB\-\-time\fR\ \&\fIДНЕЙ\fR
+.RS 4
+Показать записи lastlog новее чем
+\fIДНЕЙ\fR\&.
+.RE
+.PP
+\fB\-u\fR, \fB\-\-user\fR\ \&\fIУЧЁТНАЯ ЗАПИСЬ\fR|\fIДИАПАЗОН\fR
+.RS 4
+Показать запись lastlog только для указанного пользователя(ей)\&.
+.sp
+Пользователя можно указать по отдельному имени, числовому идентификатору или в виде
+\fIДИАПАЗОНА\fR
+пользователей\&. Такой
+\fIДИАПАЗОН\fR
+можно задавать в виде максимального и минимального значений(\fIUID_МИН\-UID_МАКС\fR), максимального (\fI\-UID_МАКС\fR) или минимального (\fIUID_МИН\-\fR) значения\&.
+.RE
+.PP
+Если пользователь никогда не регистрировался в системе, то будет показано сообщение
+\fI** Никогда не входил в систему**\fR
+вместо названия порта и даты\&.
+.PP
+Будут показаны записи только для пользователей, имеющих в системе данный момент\&. В журнале могут существовать записи для удалённых ранее пользователей\&.
+.SH "ЗАМЕЧАНИЕ"
+.PP
+Файл
+lastlog
+содержит информацию о последней регистрации в системе каждого пользователя\&. Вы не должны применять к нему ротацию журнальных файлов\&. Этот файл является разреженным, поэтому его размер на диске гораздо меньше, чем показывает команда \(Fo\fBls \-l\fR\(Fc (которая может показывать, что это очень большой файл, если значения идентификаторов пользователей в системе достигают больших значений)\&. Чтобы увидеть реальный размер введите \(Fo\fBls \-s\fR\(Fc\&.
+.SH "НАСТРОЙКА"
+.PP
+На работу этого инструмента влияют следующие переменные настройки из
+/etc/login\&.defs:
+.PP
+\fBLASTLOG_UID_MAX\fR (number)
+.RS 4
+Highest user ID number for which the lastlog entries should be updated\&. As higher user IDs are usually tracked by remote user identity and authentication services there is no need to create a huge sparse lastlog file for them\&.
+.sp
+No
+\fBLASTLOG_UID_MAX\fR
+option present in the configuration means that there is no user ID limit for writing lastlog entries\&.
+.RE
+.SH "ФАЙЛЫ"
+.PP
+/var/log/lastlog
+.RS 4
+содержит список завершённых сеансов работы с системой
+.RE
+.SH "ПРЕДОСТЕРЕЖЕНИЯ"
+.PP
+Большие промежутки в значениях идентификаторов пользователей приводят к тому, что программа некоторое время ничего не выводит на экран (то есть, если в базе данных lastlog нет пользователей с идентификаторами с 170 по 800, то во время обработки UID с 171 по 799 программа кажется повисшей)\&.
diff --git a/man/ru/man8/logoutd.8 b/man/ru/man8/logoutd.8
new file mode 100644
index 00000000..5b843e0a
--- /dev/null
+++ b/man/ru/man8/logoutd.8
@@ -0,0 +1,57 @@
+'\" t
+.\" Title: logoutd
+.\" Author: Julianne Frances Haugh
+.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
+.\" Date: 06/13/2019
+.\" Manual: Команды управления системой
+.\" Source: shadow-utils 4.7
+.\" Language: Russian
+.\"
+.TH "logoutd" "8" "06/13/2019" "shadow\-utils 4\&.7" "Команды управления системой"
+.\" -----------------------------------------------------------------
+.\" * Define some portability stuff
+.\" -----------------------------------------------------------------
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.\" http://bugs.debian.org/507673
+.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.ie \n(.g .ds Aq \(aq
+.el .ds Aq '
+.\" -----------------------------------------------------------------
+.\" * set default formatting
+.\" -----------------------------------------------------------------
+.\" disable hyphenation
+.nh
+.\" disable justification (adjust text to left margin only)
+.ad l
+.\" -----------------------------------------------------------------
+.\" * MAIN CONTENT STARTS HERE *
+.\" -----------------------------------------------------------------
+.SH "НАЗВАНИЕ"
+logoutd \- контролирует временные интервалы работы в системе
+.SH "СИНТАКСИС"
+.HP \w'\fBlogoutd\fR\ 'u
+\fBlogoutd\fR
+.SH "ОПИСАНИЕ"
+.PP
+Программа
+\fBlogoutd\fR
+контролирует временные ограничения работы в системе и порты, заданные в файле
+/etc/porttime\&. Программа
+\fBlogoutd\fR
+должна запускаться из сценария
+/etc/rc\&. Файл
+/var/run/utmp
+периодически сканируется и для каждого имени пользователя проверяется, разрешено ли данному пользователю работать в настоящий момент на данном порту\&. Любой сеанс, который нарушает ограничения, описанные в файле
+/etc/porttime, будет завершён\&.
+.SH "ФАЙЛЫ"
+.PP
+/etc/porttime
+.RS 4
+содержит разрешённое время работы определённых пользователей с определённых портов
+.RE
+.PP
+/var/run/utmp
+.RS 4
+содержит список работающих сеансов в системе
+.RE
diff --git a/man/ru/man8/newusers.8 b/man/ru/man8/newusers.8
new file mode 100644
index 00000000..309c3851
--- /dev/null
+++ b/man/ru/man8/newusers.8
@@ -0,0 +1,431 @@
+'\" t
+.\" Title: newusers
+.\" Author: Julianne Frances Haugh
+.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
+.\" Date: 06/13/2019
+.\" Manual: Команды управления системой
+.\" Source: shadow-utils 4.7
+.\" Language: Russian
+.\"
+.TH "newusers" "8" "06/13/2019" "shadow\-utils 4\&.7" "Команды управления системой"
+.\" -----------------------------------------------------------------
+.\" * Define some portability stuff
+.\" -----------------------------------------------------------------
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.\" http://bugs.debian.org/507673
+.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.ie \n(.g .ds Aq \(aq
+.el .ds Aq '
+.\" -----------------------------------------------------------------
+.\" * set default formatting
+.\" -----------------------------------------------------------------
+.\" disable hyphenation
+.nh
+.\" disable justification (adjust text to left margin only)
+.ad l
+.\" -----------------------------------------------------------------
+.\" * MAIN CONTENT STARTS HERE *
+.\" -----------------------------------------------------------------
+.SH "НАЗВАНИЕ"
+newusers \- обновляет и создаёт новые учётные записи пользователей в пакетном режиме
+.SH "СИНТАКСИС"
+.HP \w'\fBnewusers\fR\ 'u
+\fBnewusers\fR [\fIпараметры\fR] [\fIфайл\fR]
+.SH "ОПИСАНИЕ"
+.PP
+Программа
+\fBnewusers\fR
+читает
+\fIфайл\fR
+(или по умолчанию стандартный ввод) и использует эту информацию для обновления группы существующих или создания новых учётных записей\&. Каждая строка имеет формат стандартного файла паролей (смотрите
+\fBpasswd\fR(5)) за исключением:
+.PP
+pw_name:pw_passwd:pw_uid:pw_gid:pw_gecos:pw_dir:pw_shell
+.PP
+\fIpw_name\fR
+.RS 4
+Имя пользователя\&.
+.sp
+It can be the name of a new user or the name of an existing user (or a user created before by
+\fBnewusers\fR)\&. In case of an existing user, the user\*(Aqs information will be changed, otherwise a new user will be created\&.
+.RE
+.PP
+\fIpw_passwd\fR
+.RS 4
+Это поле будет зашифровано и использовано как новое значение шифрованного пароля\&.
+.RE
+.PP
+\fI pw_gid\fR
+.RS 4
+Это поле используется для определения UID пользователя\&.
+.sp
+If the field is empty, a new (unused) UID will be defined automatically by
+\fBnewusers\fR\&.
+.sp
+Если в этом поле указано число, то оно будет использовано в качестве UID\&.
+.sp
+If this field contains the name of an existing user (or the name of a user created before by
+\fBnewusers\fR), the UID of the specified user will be used\&.
+.sp
+Если изменяется UID существующего пользователя, то у файлов, которыми владел этот пользователь, нужно вручную переопределить владельца\&.
+.RE
+.PP
+\fIpw_gid\fR
+.RS 4
+Это поле используется для определения ID первичной группы пользователя\&.
+.sp
+Если в этом поле содержится имя существующей группы (или группы, созданной
+\fBnewusers\fR
+ранее), то в качестве ID первичной группы пользователя будет использован GID этой группы\&.
+.sp
+Если в этом поле содержится число, то это число будет использовано как ID первичной группы пользователя\&. Если с таким GID не существует, то будет создана новая группа с этим GID и именем пользователя\&.
+.sp
+Если это поле пусто, то новая группа будет создана с именем пользователя, а GID будет определён
+\fBnewusers\fR
+автоматически (для использования в качестве ID первичной группы пользователя и GID новой группы)\&.
+.sp
+Если поле содержит имя группы, которой не существует (и которая не была создана
+\fBnewusers\fR
+ранее), то будет создана новая группа с указанным именем, GID будет определён
+\fBnewusers\fR
+автоматически (для использования в качестве ID первичной группы пользователя и GID новой группы)\&.
+.RE
+.PP
+\fIpw_gecos\fR
+.RS 4
+Это поле копируется в поле GECOS записи пользователя\&.
+.RE
+.PP
+\fIpw_dir\fR
+.RS 4
+Это поле используется для определения домашнего каталога пользователя\&.
+.sp
+Если это поле указывает на несуществующий каталог, то указанный каталог создаётся, его владельцем назначается создаваемый или обновляемый пользователь и его первичная группа\&.
+.sp
+Если изменяется домашний каталог существующего пользователя, то команда
+\fBnewusers\fR
+не перемещает или копирует содержимое старого каталога в новое место\&. Это нужно выполнить вручную\&.
+.RE
+.PP
+\fIpw_shell\fR
+.RS 4
+В этом поле задаётся пользовательская оболочка\&. Никаких проверок поля не делается\&.
+.RE
+.PP
+Команда
+\fBnewusers\fR
+сначала пытается создать или изменить всех указанных пользователей, а затем записать эти изменения в базы данных пользователей или групп\&. Если происходит ошибка (кроме ошибок при последней записи в базы данных), то изменения в базы не сохраняются\&.
+.PP
+Данная команда предназначена для работы в крупных системных средах, где за один раз обновляется несколько учётных записей\&.
+.SH "ПАРАМЕТРЫ"
+.PP
+Параметры команды
+\fBnewusers\fR:
+.PP
+\fB\-c\fR, \fB\-\-crypt\-method\fR
+.RS 4
+Использовать указанный метод для шифрования паролей\&.
+.sp
+Возможные методы: DES, MD5, NONE и SHA256 или SHA512, если эти методы поддерживается libc\&.
+.RE
+.PP
+\fB\-h\fR, \fB\-\-help\fR
+.RS 4
+Показать краткую справку и закончить работу\&.
+.RE
+.PP
+\fB\-r\fR, \fB\-\-system\fR
+.RS 4
+Создать системную учётную запись\&.
+.sp
+Системные пользователи создаются без информации об устаревании в
+/etc/shadow, и их числовые идентификаторы выбираются из диапазона
+\fBSYS_UID_MIN\fR\-\fBSYS_UID_MAX\fR, определённого в
+login\&.defs, а не из
+\fBUID_MIN\fR\-\fBUID_MAX\fR
+(это же касается и части с
+\fBGID\fR
+при создании групп)\&.
+.RE
+.PP
+\fB\-R\fR, \fB\-\-root\fR\ \&\fIКАТ_CHROOT\fR
+.RS 4
+Выполнить изменения в каталоге
+\fIКАТ_CHROOT\fR
+и использовать файлы настройки из каталога
+\fIКАТ_CHROOT\fR\&.
+.RE
+.PP
+\fB\-s\fR, \fB\-\-sha\-rounds\fR
+.RS 4
+Использовать указанное количество раундов шифрования паролей\&.
+.sp
+Значение 0 означает, что система выберет количество раундов по умолчанию для выбранного метода шифрования (5000)\&.
+.sp
+Минимальное значение равно 1000, а максимальное значение равно 999,999,999\&.
+.sp
+Вы можете использовать этот параметр только при методе шифрования SHA256 или SHA512\&.
+.sp
+По умолчанию, количество раундов определяется переменными SHA_CRYPT_MIN_ROUNDS и SHA_CRYPT_MAX_ROUNDS из
+/etc/login\&.defs\&.
+.RE
+.SH "ПРЕДОСТЕРЕЖЕНИЯ"
+.PP
+Файл с входными данными должен быть защищён, так как в нём содержатся не шифрованные пароли\&.
+.PP
+Вы должны проверить, что пароль и метод шифрования соответствует политике системных паролей\&.
+.SH "НАСТРОЙКА"
+.PP
+На работу этого инструмента влияют следующие переменные настройки из
+/etc/login\&.defs:
+.PP
+\fBENCRYPT_METHOD\fR (строка)
+.RS 4
+Задаёт системный алгоритм шифрования по умолчанию для шифрования паролей (используется, если алгоритм не указан в командной строке)\&.
+.sp
+Возможны следующие значения:
+\fIDES\fR
+(по умолчанию),
+\fIMD5\fR, \fISHA256\fR, \fISHA512\fR\&.
+.sp
+Замечание: этот параметр переопределяет переменную
+\fBMD5_CRYPT_ENAB\fR\&.
+.RE
+.PP
+\fBGID_MAX\fR (число), \fBGID_MIN\fR (число)
+.RS 4
+Диапазон идентификаторов групп, используемый в программах
+\fBuseradd\fR,
+\fBgroupadd\fR
+или
+\fBnewusers\fR
+для создания обычных групп\&.
+.sp
+Значение по умолчанию для
+\fBGID_MIN\fR
+(соотв\&.
+\fBGID_MAX\fR) равно 1000 (соотв\&. 60000)\&.
+.RE
+.PP
+\fBMAX_MEMBERS_PER_GROUP\fR (число)
+.RS 4
+Максимальное количество членов в записи о группе\&. При достижения максимума заводится новая запись группы (строка) в
+/etc/group
+(с тем же именем, паролем и тем же GID)\&.
+.sp
+Значение по умолчанию равно 0, означающее, что ограничения на количество членов в группе нет\&.
+.sp
+Данная возможность (разделение группы) позволяет ограничить длину строк в файле групп\&. Это полезно для ограничения длины строк групп NIS в 1024 символа\&.
+.sp
+Если вам нужно такое ограничение, укажите значение 25\&.
+.sp
+Замечание: разделение групп поддерживается не всеми инструментами (даже в наборе инструментов Shadow)\&. Вы не должны использовать эту переменную, если вам действительно это ненужно\&.
+.RE
+.PP
+\fBMD5_CRYPT_ENAB\fR (логический)
+.RS 4
+Обозначает, что пароль должен быть зашифрован по алгоритму на основе MD5\&. Если значение равно
+\fIyes\fR, то новые пароли будут зашифрованы по алгоритму на основе MD5, совместимому с используемым в новых версиях FreeBSD\&. Он поддерживает пароли неограниченной длины и имеет более длинную строку соли\&. Установите в
+\fIno\fR, если вам нужно копировать шифрованные пароли в другие системы, которые не поддерживают новый алгоритм\&. По умолчанию
+\fIno\fR\&.
+.sp
+Эта переменная переопределяется переменной
+\fBENCRYPT_METHOD\fR
+или любым параметром командной строки, который задаёт алгоритм шифрования\&.
+.sp
+Эта переменная устарела; используйте
+\fBENCRYPT_METHOD\fR\&.
+.RE
+.PP
+\fBPASS_MAX_DAYS\fR (число)
+.RS 4
+Максимальное число дней использования пароля\&. Если пароль старее этого числа, то будет запущена процедура смены пароля\&. Если значение не задано, то предполагается значение \-1 (то есть возможность ограничения не используется)\&.
+.RE
+.PP
+\fBPASS_MIN_DAYS\fR (число)
+.RS 4
+Максимальное число дней между изменениями пароля\&. Любая смена пароля ранее заданного срока выполнена не будет\&. Если значение не задано, то предполагается значение \-1 (то есть возможность ограничения не используется)\&.
+.RE
+.PP
+\fBPASS_WARN_AGE\fR (число)
+.RS 4
+Число дней за которое начнёт выдаваться предупреждение об устаревании пароля\&. Нулевое значение означает, что предупреждение выдаётся в день устаревания, при отрицательном значении предупреждение выдаваться не будет\&. Если значение не задано, выдача предупреждения отключается\&.
+.RE
+.PP
+\fBSHA_CRYPT_MIN_ROUNDS\fR (число), \fBSHA_CRYPT_MAX_ROUNDS\fR (число)
+.RS 4
+Если значение
+\fBENCRYPT_METHOD\fR
+равно
+\fISHA256\fR
+или
+\fISHA512\fR, эта переменная определяет количество раундов SHA, используемых алгоритмом шифрования по умолчанию (если количество раундов не задано в командной строке)\&.
+.sp
+Увеличение количества раундов повышает сложность подбора пароля простым перебором\&. Но заметим, что при этом для аутентификации пользователей требуется большее количество процессорных ресурсов\&.
+.sp
+Если не задана, то libc выбирает значение количества раундов по умолчанию (5000)\&.
+.sp
+Значения должны лежать в диапазоне 1000\-999999999\&.
+.sp
+Если задано какое\-то одно значение \(em
+\fBSHA_CRYPT_MIN_ROUNDS\fR
+или
+\fBSHA_CRYPT_MAX_ROUNDS\fR
+\(em то будет использовано это значение\&.
+.sp
+Если
+\fBSHA_CRYPT_MIN_ROUNDS\fR
+>
+\fBSHA_CRYPT_MAX_ROUNDS\fR, то используется большее значение\&.
+.RE
+.PP
+\fBSUB_GID_MIN\fR (number), \fBSUB_GID_MAX\fR (number), \fBSUB_GID_COUNT\fR (number)
+.RS 4
+If
+/etc/subuid
+exists, the commands
+\fBuseradd\fR
+and
+\fBnewusers\fR
+(unless the user already have subordinate group IDs) allocate
+\fBSUB_GID_COUNT\fR
+unused group IDs from the range
+\fBSUB_GID_MIN\fR
+to
+\fBSUB_GID_MAX\fR
+for each new user\&.
+.sp
+The default values for
+\fBSUB_GID_MIN\fR,
+\fBSUB_GID_MAX\fR,
+\fBSUB_GID_COUNT\fR
+are respectively 100000, 600100000 and 65536\&.
+.RE
+.PP
+\fBSUB_UID_MIN\fR (number), \fBSUB_UID_MAX\fR (number), \fBSUB_UID_COUNT\fR (number)
+.RS 4
+If
+/etc/subuid
+exists, the commands
+\fBuseradd\fR
+and
+\fBnewusers\fR
+(unless the user already have subordinate user IDs) allocate
+\fBSUB_UID_COUNT\fR
+unused user IDs from the range
+\fBSUB_UID_MIN\fR
+to
+\fBSUB_UID_MAX\fR
+for each new user\&.
+.sp
+The default values for
+\fBSUB_UID_MIN\fR,
+\fBSUB_UID_MAX\fR,
+\fBSUB_UID_COUNT\fR
+are respectively 100000, 600100000 and 65536\&.
+.RE
+.PP
+\fBSYS_GID_MAX\fR (число), \fBSYS_GID_MIN\fR (число)
+.RS 4
+Диапазон идентификаторов групп, используемый в программах
+\fBuseradd\fR,
+\fBgroupadd\fR
+или
+\fBnewusers\fR
+для создания системных групп\&.
+.sp
+Значение по умолчанию для
+\fBSYS_GID_MIN\fR
+(соотв\&.\fBSYS_GID_MAX\fR) равно 101 (соотв\&.
+\fBGID_MIN\fR\-1)\&.
+.RE
+.PP
+\fBSYS_UID_MAX\fR (число), \fBSYS_UID_MIN\fR (число)
+.RS 4
+Диапазон идентификаторов пользователей, используемый в программах
+\fBuseradd\fR
+или
+\fBnewusers\fR
+для создания системных пользователей\&.
+.sp
+Значение по умолчанию для
+\fBSYS_UID_MIN\fR
+(соотв\&.
+\fBSYS_UID_MAX\fR) равно 101 (соотв\&.
+\fBUID_MIN\fR\-1)\&.
+.RE
+.PP
+\fBUID_MAX\fR (число), \fBUID_MIN\fR (число)
+.RS 4
+Диапазон идентификаторов пользователей, используемый в программах
+\fBuseradd\fR
+или
+\fBnewusers\fR
+для создания обычных пользователей\&.
+.sp
+Значение по умолчанию для
+\fBUID_MIN\fR
+(соотв\&.
+\fBUID_MAX\fR) равно 1000 (соотв\&. 60000)\&.
+.RE
+.PP
+\fBUMASK\fR (число)
+.RS 4
+Задаёт начальное значение маски доступа для создаваемых файлов\&. Если не указано, то маска устанавливается в 022\&.
+.sp
+Команды
+\fBuseradd\fR
+\fBnewusers\fR
+используют эту маску для установки прав доступа к домашнему каталогу, который они создают\&.
+.sp
+Также она используется программой
+\fBlogin\fR
+для задания начального значения umask пользователя\&. Заметим, что эта маска может быть переопределена из пользовательской строки GECOS (если установлена переменная
+\fBQUOTAS_ENAB\fR) или указанием ограничения с идентификатором
+\fIK\fR, в
+\fBlimits\fR(5)\&.
+.RE
+.SH "ФАЙЛЫ"
+.PP
+/etc/passwd
+.RS 4
+содержит информацию о пользователях
+.RE
+.PP
+/etc/shadow
+.RS 4
+содержит защищаемую информацию о пользователях
+.RE
+.PP
+/etc/group
+.RS 4
+содержит информацию о группах
+.RE
+.PP
+/etc/gshadow
+.RS 4
+содержит защищаемую информацию о группах
+.RE
+.PP
+/etc/login\&.defs
+.RS 4
+содержит конфигурацию подсистемы теневых паролей
+.RE
+.PP
+/etc/subgid
+.RS 4
+Per user subordinate group IDs\&.
+.RE
+.PP
+/etc/subuid
+.RS 4
+Per user subordinate user IDs\&.
+.RE
+.SH "СМОТРИТЕ ТАКЖЕ"
+.PP
+\fBlogin.defs\fR(5),
+\fBpasswd\fR(1),
+\fBsubgid\fR(5), \fBsubuid\fR(5),
+\fBuseradd\fR(8)\&.
diff --git a/man/ru/man8/nologin.8 b/man/ru/man8/nologin.8
new file mode 100644
index 00000000..d3f2dbb3
--- /dev/null
+++ b/man/ru/man8/nologin.8
@@ -0,0 +1,51 @@
+'\" t
+.\" Title: nologin
+.\" Author: Nicolas Fran\(,cois <nicolas.francois@centraliens.net>
+.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
+.\" Date: 06/13/2019
+.\" Manual: Команды управления системой
+.\" Source: shadow-utils 4.7
+.\" Language: Russian
+.\"
+.TH "nologin" "8" "06/13/2019" "shadow\-utils 4\&.7" "Команды управления системой"
+.\" -----------------------------------------------------------------
+.\" * Define some portability stuff
+.\" -----------------------------------------------------------------
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.\" http://bugs.debian.org/507673
+.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.ie \n(.g .ds Aq \(aq
+.el .ds Aq '
+.\" -----------------------------------------------------------------
+.\" * set default formatting
+.\" -----------------------------------------------------------------
+.\" disable hyphenation
+.nh
+.\" disable justification (adjust text to left margin only)
+.ad l
+.\" -----------------------------------------------------------------
+.\" * MAIN CONTENT STARTS HERE *
+.\" -----------------------------------------------------------------
+.SH "НАЗВАНИЕ"
+nologin \- вежливо отказывает во входе в систему
+.SH "СИНТАКСИС"
+.HP \w'\fBnologin\fR\ 'u
+\fBnologin\fR
+.SH "ОПИСАНИЕ"
+.PP
+Программа
+\fBnologin\fR
+выдаёт сообщение, что учётная запись недоступна и завершает работу с ненулевым кодом возврата\&. Она предназначена для замены оболочки командной строки в поле оболочки у заблокированных учётных записей\&.
+.PP
+Чтобы заблокировать все учётные записи посмотрите справочную страницу
+\fBnologin\fR(5)\&.
+.SH "СМОТРИТЕ ТАКЖЕ"
+.PP
+\fBlogin\fR(1),
+\fBnologin\fR(5)\&.
+.SH "ИСТОРИЯ"
+.PP
+The
+\fBnologin\fR
+command appeared in BSD 4\&.4\&.
diff --git a/man/ru/man8/pwck.8 b/man/ru/man8/pwck.8
new file mode 100644
index 00000000..c6a2b5fb
--- /dev/null
+++ b/man/ru/man8/pwck.8
@@ -0,0 +1,316 @@
+'\" t
+.\" Title: pwck
+.\" Author: Julianne Frances Haugh
+.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
+.\" Date: 06/13/2019
+.\" Manual: Команды управления системой
+.\" Source: shadow-utils 4.7
+.\" Language: Russian
+.\"
+.TH "pwck" "8" "06/13/2019" "shadow\-utils 4\&.7" "Команды управления системой"
+.\" -----------------------------------------------------------------
+.\" * Define some portability stuff
+.\" -----------------------------------------------------------------
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.\" http://bugs.debian.org/507673
+.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.ie \n(.g .ds Aq \(aq
+.el .ds Aq '
+.\" -----------------------------------------------------------------
+.\" * set default formatting
+.\" -----------------------------------------------------------------
+.\" disable hyphenation
+.nh
+.\" disable justification (adjust text to left margin only)
+.ad l
+.\" -----------------------------------------------------------------
+.\" * MAIN CONTENT STARTS HERE *
+.\" -----------------------------------------------------------------
+.SH "НАЗВАНИЕ"
+pwck \- проверяет целостность файлов паролей
+.SH "СИНТАКСИС"
+.HP \w'\fBpwck\fR\ 'u
+\fBpwck\fR [параметры] [\fIpasswd\fR\ [\ \fIshadow\fR\ ]]
+.SH "ОПИСАНИЕ"
+.PP
+Программа
+\fBpwck\fR
+проверяет целостность информации о пользователях и аутентификации\&. Проверяется формат всех записей файлов
+/etc/passwd
+/etc/shadow
+и корректность данных каждого поля\&. В случае обнаружения ошибок пользователю предлагается подтвердить удаление записей, имеющих неверный формат или восстановление которых невозможно\&.
+.PP
+Выполняются следующие проверки:
+.sp
+.RS 4
+.ie n \{\
+\h'-04'\(bu\h'+03'\c
+.\}
+.el \{\
+.sp -1
+.IP \(bu 2.3
+.\}
+правильное количество полей
+.RE
+.sp
+.RS 4
+.ie n \{\
+\h'-04'\(bu\h'+03'\c
+.\}
+.el \{\
+.sp -1
+.IP \(bu 2.3
+.\}
+уникальность и корректность имени пользователя
+.RE
+.sp
+.RS 4
+.ie n \{\
+\h'-04'\(bu\h'+03'\c
+.\}
+.el \{\
+.sp -1
+.IP \(bu 2.3
+.\}
+корректность идентификатора пользователя и группы
+.RE
+.sp
+.RS 4
+.ie n \{\
+\h'-04'\(bu\h'+03'\c
+.\}
+.el \{\
+.sp -1
+.IP \(bu 2.3
+.\}
+корректность первичной группы
+.RE
+.sp
+.RS 4
+.ie n \{\
+\h'-04'\(bu\h'+03'\c
+.\}
+.el \{\
+.sp -1
+.IP \(bu 2.3
+.\}
+корректность домашнего каталога
+.RE
+.sp
+.RS 4
+.ie n \{\
+\h'-04'\(bu\h'+03'\c
+.\}
+.el \{\
+.sp -1
+.IP \(bu 2.3
+.\}
+корректность регистрационной оболочки
+.RE
+.PP
+Проверки
+shadow
+выполняются, если указан второй файловый параметр или когда в системе существует файл
+/etc/shadow\&.
+.PP
+Выполняются следующие проверки:
+.sp
+.RS 4
+.ie n \{\
+\h'-04'\(bu\h'+03'\c
+.\}
+.el \{\
+.sp -1
+.IP \(bu 2.3
+.\}
+что каждая запись passwd имеет соответствующую запись shadow и каждая запись shadow имеет соответствующую запись passwd
+.RE
+.sp
+.RS 4
+.ie n \{\
+\h'-04'\(bu\h'+03'\c
+.\}
+.el \{\
+.sp -1
+.IP \(bu 2.3
+.\}
+пароли указаны в теневом файле
+.RE
+.sp
+.RS 4
+.ie n \{\
+\h'-04'\(bu\h'+03'\c
+.\}
+.el \{\
+.sp -1
+.IP \(bu 2.3
+.\}
+записи shadow содержат корректное количество полей
+.RE
+.sp
+.RS 4
+.ie n \{\
+\h'-04'\(bu\h'+03'\c
+.\}
+.el \{\
+.sp -1
+.IP \(bu 2.3
+.\}
+записи shadow уникальны в shadow
+.RE
+.sp
+.RS 4
+.ie n \{\
+\h'-04'\(bu\h'+03'\c
+.\}
+.el \{\
+.sp -1
+.IP \(bu 2.3
+.\}
+дата последней смены пароля не находится в будущем
+.RE
+.PP
+Ошибки в количестве полей и уникальности имён пользователей невосстановимы\&. Если запись содержит неверное число полей, пользователя попросят подтвердить удаление всей записи\&. Если пользователь ответит отрицательно, дальнейшая проверка выполняться не будет\&. При ошибке повторения имени пользователя также возникает запрос на удаление, но в случае отказа проверка будет продолжена\&. Обо всех остальных ошибках выводится предупреждение и пользователю предлагается запустить команду
+\fBusermod\fR, чтобы исправить ошибку\&.
+.PP
+Команды, которые работают с файлом
+/etc/passwd, не могут изменять повреждённые или дублирующиеся записи\&. Как раз в этом случае и нужно использовать
+\fBpwck\fR
+для удаления испорченной записи\&.
+.SH "ПАРАМЕТРЫ"
+.PP
+Параметры
+\fB\-r\fR,
+\fB\-s\fR
+не могут использоваться одновременно\&.
+.PP
+Параметры команды
+\fBpwck\fR:
+.PP
+\fB\-h\fR, \fB\-\-help\fR
+.RS 4
+Показать краткую справку и закончить работу\&.
+.RE
+.PP
+\fB\-q\fR, \fB\-\-quiet\fR
+.RS 4
+Сообщать только об ошибках\&. Предупреждения, которые не требуют от пользователя никаких действий, показаны не будут\&.
+.RE
+.PP
+\fB\-r\fR, \fB\-\-read\-only\fR
+.RS 4
+Выполнять команду
+\fBpwck\fR
+в режиме \(Foтолько чтение\(Fc\&.
+.RE
+.PP
+\fB\-R\fR, \fB\-\-root\fR\ \&\fIКАТ_CHROOT\fR
+.RS 4
+Выполнить изменения в каталоге
+\fIКАТ_CHROOT\fR
+и использовать файлы настройки из каталога
+\fIКАТ_CHROOT\fR\&.
+.RE
+.PP
+\fB\-s\fR, \fB\-\-sort\fR
+.RS 4
+Отсортировать все записи в файлах
+/etc/passwd
+/etc/shadow
+по числовому идентификатору пользователя\&.
+.RE
+.PP
+По умолчанию, команда
+\fBpwck\fR
+работает с файлами
+/etc/passwd
+/etc/shadow\&. Пользователь может указать другие файлы с помощью параметров
+\fIpasswd\fR
+\fIshadow\fR\&.
+.SH "НАСТРОЙКА"
+.PP
+На работу этого инструмента влияют следующие переменные настройки из
+/etc/login\&.defs:
+.PP
+\fBPASS_MAX_DAYS\fR (число)
+.RS 4
+Максимальное число дней использования пароля\&. Если пароль старее этого числа, то будет запущена процедура смены пароля\&. Если значение не задано, то предполагается значение \-1 (то есть возможность ограничения не используется)\&.
+.RE
+.PP
+\fBPASS_MIN_DAYS\fR (число)
+.RS 4
+Максимальное число дней между изменениями пароля\&. Любая смена пароля ранее заданного срока выполнена не будет\&. Если значение не задано, то предполагается значение \-1 (то есть возможность ограничения не используется)\&.
+.RE
+.PP
+\fBPASS_WARN_AGE\fR (число)
+.RS 4
+Число дней за которое начнёт выдаваться предупреждение об устаревании пароля\&. Нулевое значение означает, что предупреждение выдаётся в день устаревания, при отрицательном значении предупреждение выдаваться не будет\&. Если значение не задано, выдача предупреждения отключается\&.
+.RE
+.SH "ФАЙЛЫ"
+.PP
+/etc/group
+.RS 4
+содержит информацию о группах
+.RE
+.PP
+/etc/passwd
+.RS 4
+содержит информацию о пользователях
+.RE
+.PP
+/etc/shadow
+.RS 4
+содержит защищаемую информацию о пользователях
+.RE
+.SH "ВОЗВРАЩАЕМЫЕ ЗНАЧЕНИЯ"
+.PP
+Команда
+\fBpwck\fR
+завершая работу, возвращает следующие значения:
+.PP
+\fI0\fR
+.RS 4
+успешное выполнение
+.RE
+.PP
+\fI1\fR
+.RS 4
+ошибка в параметрах команды
+.RE
+.PP
+\fI2\fR
+.RS 4
+есть одна или более записей с недопустимыми паролями
+.RE
+.PP
+\fI3\fR
+.RS 4
+не удалось открыть файл паролей
+.RE
+.PP
+\fI4\fR
+.RS 4
+не удалось заблокировать файл паролей
+.RE
+.PP
+\fI5\fR
+.RS 4
+не удалось изменить файл паролей
+.RE
+.PP
+\fI6\fR
+.RS 4
+не удалось отсортировать файл паролей
+.RE
+.SH "СМОТРИТЕ ТАКЖЕ"
+.PP
+\fBgroup\fR(5),
+\fBgrpck\fR(8),
+\fBpasswd\fR(5),
+\fBshadow\fR(5),
+\fBusermod\fR(8)\&.
diff --git a/man/ru/man8/pwconv.8 b/man/ru/man8/pwconv.8
new file mode 100644
index 00000000..bf3d1352
--- /dev/null
+++ b/man/ru/man8/pwconv.8
@@ -0,0 +1,192 @@
+'\" t
+.\" Title: pwconv
+.\" Author: Marek Micha\(/lkiewicz
+.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
+.\" Date: 06/13/2019
+.\" Manual: Команды управления системой
+.\" Source: shadow-utils 4.7
+.\" Language: Russian
+.\"
+.TH "pwconv" "8" "06/13/2019" "shadow\-utils 4\&.7" "Команды управления системой"
+.\" -----------------------------------------------------------------
+.\" * Define some portability stuff
+.\" -----------------------------------------------------------------
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.\" http://bugs.debian.org/507673
+.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.ie \n(.g .ds Aq \(aq
+.el .ds Aq '
+.\" -----------------------------------------------------------------
+.\" * set default formatting
+.\" -----------------------------------------------------------------
+.\" disable hyphenation
+.nh
+.\" disable justification (adjust text to left margin only)
+.ad l
+.\" -----------------------------------------------------------------
+.\" * MAIN CONTENT STARTS HERE *
+.\" -----------------------------------------------------------------
+.SH "НАЗВАНИЕ"
+pwconv, pwunconv, grpconv, grpunconv \- преобразует пароли пользователей и групп в/из защищённую форму
+.SH "СИНТАКСИС"
+.HP \w'\fBpwconv\fR\ 'u
+\fBpwconv\fR [\fIпараметры\fR]
+.HP \w'\fBpwunconv\fR\ 'u
+\fBpwunconv\fR [\fIпараметры\fR]
+.HP \w'\fBgrpconv\fR\ 'u
+\fBgrpconv\fR [\fIпараметры\fR]
+.HP \w'\fBgrpunconv\fR\ 'u
+\fBgrpunconv\fR [\fIпараметры\fR]
+.SH "ОПИСАНИЕ"
+.PP
+Команда
+\fBpwconv\fR
+создаёт файл
+\fIshadow\fR
+из файла
+\fIpasswd\fR
+и необязательно существующего файла
+\fIshadow\fR\&.
+.PP
+Команда
+\fBpwunconv\fR
+создаёт файл
+\fIpasswd\fR
+из файлов
+\fIpasswd\fR
+\fIshadow\fR, а затем удаляет файл
+\fIshadow\fR\&.
+.PP
+Команда
+\fBgrpconv\fR
+создаёт файл
+\fIgshadow\fR
+из файла
+\fIgroup\fR
+и необязательно существующего файла
+\fIgshadow\fR\&.
+.PP
+Команда
+\fBgrpunconv\fR
+создаёт файл
+\fIgroup\fR
+из файлов
+\fIgroup\fR
+\fIgshadow\fR, а затем удаляет файл
+\fIgshadow\fR\&.
+.PP
+Эти четыре программы работают с файлами обычных или теневых паролей пользователей и групп:
+/etc/passwd,
+/etc/group,
+/etc/shadow
+/etc/gshadow\&.
+.PP
+Каждая программа выполняет необходимые блокировки перед преобразованиями\&. Команды
+\fBpwconv\fR
+\fBgrpconv\fR
+выполняют схожий порядок действий\&. Сначала удаляются записи из теневого файла которых нет в главном файле\&. Затем обновляются записи в теневом файле которые не содержат \(Fox\(Fc вместо пароля в главном файле\&. Далее добавляются отсутствующие теневые записи\&. Наконец, пароли в главном файле заменяются символом \(Fox\(Fc\&. Данные программы можно использовать как для первоначального преобразования, так и для обновления теневого файла, если главный файл редактировался вручную\&.
+.PP
+Команда
+\fBpwconv\fR
+использует значения переменных
+\fIPASS_MIN_DAYS\fR,
+\fIPASS_MAX_DAYS\fR
+\fIPASS_WARN_AGE\fR
+из файла
+/etc/login\&.defs
+при добавлении новых записей в файл
+/etc/shadow\&.
+.PP
+Программы
+\fBpwunconv\fR
+\fBgrpunconv\fR
+также выполняют схожий порядок действий\&. Пароли в главном файле обновляются из теневого файла\&. Записи, которые существуют в главном файле, но не существуют в теневом файле оставляются как есть\&. По окончании, теневой файл удаляется\&. Информация об устаревании пароля не учитывается программой
+\fBpwunconv\fR\&. Конвертируется только возможное\&.
+.SH "ПАРАМЕТРЫ"
+.PP
+Параметры, применимые к
+\fBpwconv\fR,
+\fBpwunconv\fR,
+\fBgrpconv\fR
+\fBgrpunconv\fR:
+.PP
+\fB\-h\fR, \fB\-\-help\fR
+.RS 4
+Показать краткую справку и закончить работу\&.
+.RE
+.PP
+\fB\-R\fR, \fB\-\-root\fR\ \&\fIКАТ_CHROOT\fR
+.RS 4
+Выполнить изменения в каталоге
+\fIКАТ_CHROOT\fR
+и использовать файлы настройки из каталога
+\fIКАТ_CHROOT\fR\&.
+.RE
+.SH "ОШИБКИ РЕАЛИЗАЦИИ"
+.PP
+Ошибки в файлах паролей или групп (типа неверных или дублирующихся записей) могут зациклить программу или произойдут какие\-то другие странные вещи\&. Перед конвертацией запустите
+\fBpwck\fR
+\fBgrpck\fR, чтобы исправить возможные ошибки\&.
+.SH "НАСТРОЙКА"
+.PP
+Следующая переменная настройки в
+/etc/login\&.defs
+изменяет поведение
+\fBgrpconv\fR
+\fBgrpunconv\fR:
+.PP
+\fBMAX_MEMBERS_PER_GROUP\fR (число)
+.RS 4
+Максимальное количество членов в записи о группе\&. При достижения максимума заводится новая запись группы (строка) в
+/etc/group
+(с тем же именем, паролем и тем же GID)\&.
+.sp
+Значение по умолчанию равно 0, означающее, что ограничения на количество членов в группе нет\&.
+.sp
+Данная возможность (разделение группы) позволяет ограничить длину строк в файле групп\&. Это полезно для ограничения длины строк групп NIS в 1024 символа\&.
+.sp
+Если вам нужно такое ограничение, укажите значение 25\&.
+.sp
+Замечание: разделение групп поддерживается не всеми инструментами (даже в наборе инструментов Shadow)\&. Вы не должны использовать эту переменную, если вам действительно это ненужно\&.
+.RE
+.PP
+Следующая переменная настройки в
+/etc/login\&.defs
+изменяет поведение
+\fBpwconv\fR:
+.PP
+\fBPASS_MAX_DAYS\fR (число)
+.RS 4
+Максимальное число дней использования пароля\&. Если пароль старее этого числа, то будет запущена процедура смены пароля\&. Если значение не задано, то предполагается значение \-1 (то есть возможность ограничения не используется)\&.
+.RE
+.PP
+\fBPASS_MIN_DAYS\fR (число)
+.RS 4
+Максимальное число дней между изменениями пароля\&. Любая смена пароля ранее заданного срока выполнена не будет\&. Если значение не задано, то предполагается значение \-1 (то есть возможность ограничения не используется)\&.
+.RE
+.PP
+\fBPASS_WARN_AGE\fR (число)
+.RS 4
+Число дней за которое начнёт выдаваться предупреждение об устаревании пароля\&. Нулевое значение означает, что предупреждение выдаётся в день устаревания, при отрицательном значении предупреждение выдаваться не будет\&. Если значение не задано, выдача предупреждения отключается\&.
+.RE
+.SH "ФАЙЛЫ"
+.PP
+/etc/login\&.defs
+.RS 4
+содержит конфигурацию подсистемы теневых паролей
+.RE
+.SH "СМОТРИТЕ ТАКЖЕ"
+.PP
+\fBgrpck\fR(8),
+\fBlogin.defs\fR(5),
+\fBpwck\fR(8)\&.
diff --git a/man/ru/man8/pwunconv.8 b/man/ru/man8/pwunconv.8
new file mode 100644
index 00000000..6eed9e8b
--- /dev/null
+++ b/man/ru/man8/pwunconv.8
@@ -0,0 +1 @@
+.so man8/pwconv.8
diff --git a/man/ru/man8/sulogin.8 b/man/ru/man8/sulogin.8
new file mode 100644
index 00000000..7ebdd359
--- /dev/null
+++ b/man/ru/man8/sulogin.8
@@ -0,0 +1,114 @@
+'\" t
+.\" Title: sulogin
+.\" Author: Julianne Frances Haugh
+.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
+.\" Date: 06/13/2019
+.\" Manual: Команды управления системой
+.\" Source: shadow-utils 4.7
+.\" Language: Russian
+.\"
+.TH "sulogin" "8" "06/13/2019" "shadow\-utils 4\&.7" "Команды управления системой"
+.\" -----------------------------------------------------------------
+.\" * Define some portability stuff
+.\" -----------------------------------------------------------------
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.\" http://bugs.debian.org/507673
+.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.ie \n(.g .ds Aq \(aq
+.el .ds Aq '
+.\" -----------------------------------------------------------------
+.\" * set default formatting
+.\" -----------------------------------------------------------------
+.\" disable hyphenation
+.nh
+.\" disable justification (adjust text to left margin only)
+.ad l
+.\" -----------------------------------------------------------------
+.\" * MAIN CONTENT STARTS HERE *
+.\" -----------------------------------------------------------------
+.SH "НАЗВАНИЕ"
+sulogin \- Single\-user login
+.SH "СИНТАКСИС"
+.PP
+\fBsulogin\fR
+[\fItty\-device\fR]
+.SH "ОПИСАНИЕ"
+.PP
+The
+\fBsulogin\fR
+command is invoked by
+\fBinit\fR
+prior to allowing the user access to the system when in single user mode\&. This feature may only be available on certain systems where
+\fBinit\fR
+has been modified accordingly, or where the
+/etc/inittab
+has an entry for a single user login\&.
+.PP
+The user is prompted
+.PP
+Type control\-d to proceed with normal startup, (or give root password for system maintenance):
+.PP
+Input and output will be performed with the standard file descriptors unless the optional device name argument is provided\&.
+.PP
+If the user enters the correct root password, a login session is initiated\&. When
+\fIEOF\fR
+is pressed instead, the system enters multi\-user mode\&.
+.PP
+After the user exits the single\-user shell, or presses
+\fIEOF\fR, the system begins the initialization process required to enter multi\-user mode\&.
+.SH "ПРЕДОСТЕРЕЖЕНИЯ"
+.PP
+This command can only be used if
+\fBinit\fR
+has been modified to call
+\fBsulogin\fR
+instead of
+/bin/sh, or if the user has set the
+\fIinittab\fR
+to support a single user login\&. For example, the line:
+.PP
+co:s:respawn:/etc/sulogin /dev/console
+.PP
+should execute the sulogin command in single user mode\&.
+.PP
+As complete an environment as possible is created\&. However, various devices may be unmounted or uninitialized and many of the user commands may be unavailable or nonfunctional as a result\&.
+.SH "НАСТРОЙКА"
+.PP
+На работу этого инструмента влияют следующие переменные настройки из
+/etc/login\&.defs:
+.PP
+\fBENV_HZ\fR (строка)
+.RS 4
+Если установлена, то будет использоваться для определения переменной окружения HZ при входе пользователя в систему\&. Значение должно начинаться с
+\fIHZ=\fR\&. Обычное значение для Linux \(em
+\fIHZ=100\fR\&.
+.RE
+.PP
+\fBENV_TZ\fR (строка)
+.RS 4
+Если установлена, то будет использоваться для определения переменной окружения TZ при входе пользователя\&. Значение может быть равно имени часового пояса, начинающегося
+\fITZ=\fR
+(например,
+\fITZ=CST6CDT\fR), или полному пути к файлу с параметрами часового пояса (например,
+/etc/tzname)\&.
+.sp
+Если указан полный путь, но файл не существует или недоступен для чтения, то используется значение по умолчанию:
+\fITZ=CST6CDT\fR\&.
+.RE
+.SH "ФАЙЛЫ"
+.PP
+/etc/passwd
+.RS 4
+содержит информацию о пользователях
+.RE
+.PP
+/etc/shadow
+.RS 4
+содержит защищаемую информацию о пользователях
+.RE
+.SH "СМОТРИТЕ ТАКЖЕ"
+.PP
+\fBlogin\fR(1),
+\fBsh\fR(1),
+\fBinit\fR(8)\&.
diff --git a/man/ru/man8/useradd.8 b/man/ru/man8/useradd.8
new file mode 100644
index 00000000..0a8d15e5
--- /dev/null
+++ b/man/ru/man8/useradd.8
@@ -0,0 +1,758 @@
+'\" t
+.\" Title: useradd
+.\" Author: Julianne Frances Haugh
+.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
+.\" Date: 06/13/2019
+.\" Manual: Команды управления системой
+.\" Source: shadow-utils 4.7
+.\" Language: Russian
+.\"
+.TH "useradd" "8" "06/13/2019" "shadow\-utils 4\&.7" "Команды управления системой"
+.\" -----------------------------------------------------------------
+.\" * Define some portability stuff
+.\" -----------------------------------------------------------------
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.\" http://bugs.debian.org/507673
+.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.ie \n(.g .ds Aq \(aq
+.el .ds Aq '
+.\" -----------------------------------------------------------------
+.\" * set default formatting
+.\" -----------------------------------------------------------------
+.\" disable hyphenation
+.nh
+.\" disable justification (adjust text to left margin only)
+.ad l
+.\" -----------------------------------------------------------------
+.\" * MAIN CONTENT STARTS HERE *
+.\" -----------------------------------------------------------------
+.SH "НАЗВАНИЕ"
+useradd \- регистрирует нового пользователя или изменяет информацию по умолчанию о новых пользователях
+.SH "СИНТАКСИС"
+.HP \w'\fBuseradd\fR\ 'u
+\fBuseradd\fR [\fIпараметры\fR] \fIУЧЁТНАЯ_ЗАПИСЬ\fR
+.HP \w'\fBuseradd\fR\ 'u
+\fBuseradd\fR \-D
+.HP \w'\fBuseradd\fR\ 'u
+\fBuseradd\fR \-D [\fIпараметры\fR]
+.SH "ОПИСАНИЕ"
+.PP
+При запуске без параметра
+\fB\-D\fR
+команда
+\fBuseradd\fR
+создаёт новую учётную запись пользователя, используя значения из командной строки и системные значения по умолчанию\&. В зависимости от параметров командной строки, команда
+\fBuseradd\fR
+обновляет системные файлы, а также может создать домашний каталог нового пользователя и скопировать начальные файлы настроек\&.
+.PP
+По умолчанию, для нового пользователя также создаётся группа (смотрите параметры
+\fB\-g\fR,
+\fB\-N\fR,
+\fB\-U\fR
+\fBUSERGROUPS_ENAB\fR)\&.
+.SH "ПАРАМЕТРЫ"
+.PP
+Параметры команды
+\fBuseradd\fR:
+.PP
+\fB\-b\fR, \fB\-\-base\-dir\fR \fIБАЗОВЫЙ_КАТАЛОГ\fR
+.RS 4
+Базовый системный каталог по умолчанию, если другой каталог не указан с помощью параметра
+\fB\-d\fR\&. Значение
+\fIБАЗОВЫЙ_КАТАЛОГ\fR
+объединяется с именем учётной записи для определения домашнего каталога\&. Если не указан параметр
+\fB\-m\fR, то
+\fIБАЗОВЫЙ_КАТАЛОГ\fR
+должен существовать\&.
+.sp
+Если этот параметр не задан, то команда
+\fBuseradd\fR
+будет использовать базовый каталог, указанный в переменной
+\fBHOME\fR
+в файле
+/etc/default/useradd
+иначе
+/home
+(по умолчанию)\&.
+.RE
+.PP
+\fB\-c\fR, \fB\-\-comment\fR\ \&\fIКОММЕНТАРИЙ\fR
+.RS 4
+Любая текстовая строка\&. Обычно, здесь коротко описывается учётная запись, и в настоящее время используется как поле для имени и фамилии пользователя\&.
+.RE
+.PP
+\fB\-d\fR, \fB\-\-home\-dir\fR \fIДОМАШНИЙ_КАТАЛОГ\fR
+.RS 4
+Для создаваемого пользователя будет использован каталог
+\fIДОМАШНИЙ_КАТАЛОГ\fR
+в качестве начального каталога\&. По умолчанию, это значение получается объединением
+\fIИМЕНИ\fR
+пользователя с
+\fIБАЗОВЫМ_КАТАЛОГОМ\fR
+и используется как имя домашнего каталога\&. Каталог
+\fIДОМАШНИЙ_КАТАЛОГ\fR
+необязательно должен существовать, но не будет создан, если его нет\&.
+.RE
+.PP
+\fB\-D\fR, \fB\-\-defaults\fR
+.RS 4
+Смотрите далее в подразделе \(FoИзменение значений по умолчанию\(Fc\&.
+.RE
+.PP
+\fB\-e\fR, \fB\-\-expiredate\fR \fIДАТА_УСТАРЕВАНИЯ\fR
+.RS 4
+Дата, когда учётная запись пользователя будет заблокирована\&. Дата задаётся в формате
+\fIГГГГ\-ММ\-ДД\fR\&.
+.sp
+Если этот параметр не задан, то команда
+\fBuseradd\fR
+будет использовать дату устаревания по умолчанию, указанную в переменной
+\fBEXPIRE\fR
+в файле
+/etc/default/useradd, иначе пустую строку (без устаревания, по умолчанию)\&.
+.RE
+.PP
+\fB\-f\fR, \fB\-\-inactive\fR\ \&\fIДНЕЙ\fR
+.RS 4
+Если указано значение 0, то учётная запись блокируется сразу после устаревания пароля, а при значении \-1 данная возможность не используется\&.
+.sp
+Если этот параметр не задан, то команда
+\fBuseradd\fR
+будет использовать срок неактивности по умолчанию, указанный в переменной
+\fBINACTIVE\fR
+в файле
+/etc/default/useradd
+или \-1 (по умолчанию)\&.
+.RE
+.PP
+\fB\-g\fR, \fB\-\-gid\fR\ \&\fIГРУППА\fR
+.RS 4
+Имя или числовой идентификатор первичной группы пользователя\&. Группа с таким именем должна существовать\&. Идентификатор группы должен указывать на уже существующую группу\&.
+.sp
+Если не указан, то поведение
+\fBuseradd\fR
+зависит от переменной
+\fBUSERGROUPS_ENAB\fR
+в файле
+/etc/login\&.defs\&. Если значение этой переменной равно
+\fIyes\fR
+(или в командной строке указан параметр
+\fB\-U/\-\-user\-group\fR), то для пользователя будет создана группа с тем же именем как его имя для входа\&. Если значение переменной равно
+\fIno\fR
+(или в командной строке указан параметр
+\fB\-N/\-\-no\-user\-group\fR), то useradd установит первичную группу нового пользователя равной значению переменной
+\fBGROUP\fR
+из файла
+/etc/default/useradd, или 100 (по умолчанию)\&.
+.RE
+.PP
+\fB\-G\fR, \fB\-\-groups\fR\ \&\fIГРУППА1\fR[\fI,ГРУППА2,\&...\fR[\fI,ГРУППАN\fR]]]
+.RS 4
+Список дополнительных групп, в которых числится пользователь\&. Перечисление групп осуществляется через запятую, без промежуточных пробелов\&. На указанные группы действуют те же ограничения, что и для группы указанной в параметре
+\fB\-g\fR\&. По умолчанию пользователь входит только в начальную группу\&.
+.RE
+.PP
+\fB\-h\fR, \fB\-\-help\fR
+.RS 4
+Показать краткую справку и закончить работу\&.
+.RE
+.PP
+\fB\-k\fR, \fB\-\-skel\fR\ \&\fIКАТАЛОГ_ШАБЛОНОВ\fR
+.RS 4
+Каталог с шаблонами, который содержит файлы и каталоги для копирования в домашний каталог пользователя при создании домашнего каталога командой
+\fBuseradd\fR\&.
+.sp
+Этот параметр можно использовать только с параметром
+\fB\-m\fR
+(или
+\fB\-\-create\-home\fR)\&.
+.sp
+Если этот параметр не задан, то каталог шаблонов определяется переменной
+\fBSKEL\fR
+из файла
+/etc/default/useradd, или равен
+/etc/skel
+(по умолчанию)\&.
+.sp
+Если возможно, выполняется копирование ACL и расширенных атрибутов\&.
+.RE
+.PP
+\fB\-K\fR, \fB\-\-key\fR\ \&\fIКЛЮЧ\fR=\fIЗНАЧЕНИЕ\fR
+.RS 4
+Overrides
+/etc/login\&.defs
+defaults (\fBUID_MIN\fR,
+\fBUID_MAX\fR,
+\fBUMASK\fR,
+\fBPASS_MAX_DAYS\fR
+and others)\&.
+
+Example:
+\fB\-K\fR\ \&\fIPASS_MAX_DAYS\fR=\fI\-1\fR
+can be used when creating system account to turn off password aging, even though system account has no password at all\&. Multiple
+\fB\-K\fR
+options can be specified, e\&.g\&.:
+\fB\-K\fR\ \&\fIUID_MIN\fR=\fI100\fR\ \&
+\fB\-K\fR\ \&\fIUID_MAX\fR=\fI499\fR
+.RE
+.PP
+\fB\-l\fR, \fB\-\-no\-log\-init\fR
+.RS 4
+Не добавлять пользователя в базы данных lastlog и faillog\&.
+.sp
+By default, the user\*(Aqs entries in the lastlog and faillog databases are reset to avoid reusing the entry from a previously deleted user\&.
+.RE
+.PP
+\fB\-m\fR, \fB\-\-create\-home\fR
+.RS 4
+Создать домашний каталог пользователя, если он не существует\&. Файлы и каталоги, содержащиеся в каталоге шаблонов (который можно указать с помощью параметра the
+\fB\-k\fR
+option), будут скопированы в домашний каталог\&.
+.sp
+По умолчанию, если этот параметр не указан и не задана переменная
+\fBCREATE_HOME\fR, домашний каталог не создаётся\&.
+.RE
+.PP
+\fB\-M\fR, \fB\-\-no\-create\-home\fR
+.RS 4
+Не создавать домашний каталог пользователя, даже если значение системной переменной в файле
+/etc/login\&.defs
+(\fBCREATE_HOME\fR) равно
+\fIyes\fR\&.
+.RE
+.PP
+\fB\-N\fR, \fB\-\-no\-user\-group\fR
+.RS 4
+Не создавать группу с тем же именем как у пользователя, но добавить пользователя в группу, заданную параметром
+\fB\-g\fR
+или переменной
+\fBGROUP\fR
+из файла
+/etc/default/useradd\&.
+.sp
+Поведение по умолчанию (если не указан параметр
+\fB\-g\fR,
+\fB\-N\fR
+\fB\-U\fR) определяется переменной
+\fBUSERGROUPS_ENAB\fR
+из файла
+/etc/login\&.defs\&.
+.RE
+.PP
+\fB\-o\fR, \fB\-\-non\-unique\fR
+.RS 4
+Разрешить создание учётной записи с уже имеющимся (не уникальным) UID\&.
+.sp
+Этот параметр можно использовать только с параметром
+\fB\-u\fR\&.
+.RE
+.PP
+\fB\-p\fR, \fB\-\-password\fR\ \&\fIПАРОЛЬ\fR
+.RS 4
+Шифрованное значение пароля, которое возвращает функция
+\fBcrypt\fR(3)\&. По умолчанию пароль отключён\&.
+.sp
+\fBЗамечание:\fR
+Этот параметр использовать не рекомендуется, так как пароль (или не шифрованный пароль) будет видим другими пользователям в списке процессов\&.
+.sp
+Вы должны проверить, что пароль соответствует политике системных паролей\&.
+.RE
+.PP
+\fB\-r\fR, \fB\-\-system\fR
+.RS 4
+Создать системную учётную запись\&.
+.sp
+Системные пользователи создаются без информации об устаревании в
+/etc/shadow, и их числовые идентификаторы выбираются из диапазона
+\fBSYS_UID_MIN\fR\-\fBSYS_UID_MAX\fR, определённого в
+/etc/login\&.defs, а не из
+\fBUID_MIN\fR\-\fBUID_MAX\fR
+(это же касается и части с
+\fBGID\fR
+при создании групп)\&.
+.sp
+Note that
+\fBuseradd\fR
+will not create a home directory for such a user, regardless of the default setting in
+/etc/login\&.defs
+(\fBCREATE_HOME\fR)\&. You have to specify the
+\fB\-m\fR
+options if you want a home directory for a system account to be created\&.
+.RE
+.PP
+\fB\-R\fR, \fB\-\-root\fR\ \&\fIКАТ_CHROOT\fR
+.RS 4
+Выполнить изменения в каталоге
+\fIКАТ_CHROOT\fR
+и использовать файлы настройки из каталога
+\fIКАТ_CHROOT\fR\&.
+.RE
+.PP
+\fB\-P\fR, \fB\-\-prefix\fR\ \&\fIPREFIX_DIR\fR
+.RS 4
+Apply changes in the
+\fIPREFIX_DIR\fR
+directory and use the configuration files from the
+\fIPREFIX_DIR\fR
+directory\&. This option does not chroot and is intended for preparing a cross\-compilation target\&. Some limitations: NIS and LDAP users/groups are not verified\&. PAM authentication is using the host files\&. No SELINUX support\&.
+.RE
+.PP
+\fB\-s\fR, \fB\-\-shell\fR\ \&\fIОБОЛОЧКА\fR
+.RS 4
+Имя регистрационной оболочки пользователя\&. По умолчанию это поле пусто, что вызывает выбор регистрационной оболочки по умолчанию согласно значению переменной
+\fBSHELL\fR
+из файла
+/etc/default/useradd, или по умолчанию используется пустая строка\&.
+.RE
+.PP
+\fB\-u\fR, \fB\-\-uid\fR\ \&\fIUID\fR
+.RS 4
+Числовое значение идентификатора пользователя (ID)\&. Оно должно быть уникальным, если не используется параметр
+\fB\-o\fR\&. Значение должно быть неотрицательным\&. По умолчанию используется наименьшее значение ID большее или равное
+\fBUID_MIN\fR
+и большее чем у остальных пользователей\&.
+.sp
+Смотрите также описание
+\fB\-r\fR
+\fBUID_MAX\fR\&.
+.RE
+.PP
+\fB\-U\fR, \fB\-\-user\-group\fR
+.RS 4
+Создать группу с тем же именем что и у пользователя, и добавить пользователя в эту группу\&.
+.sp
+Поведение по умолчанию (если не указан параметр
+\fB\-g\fR,
+\fB\-N\fR
+\fB\-U\fR) определяется переменной
+\fBUSERGROUPS_ENAB\fR
+из файла
+/etc/login\&.defs\&.
+.RE
+.PP
+\fB\-Z\fR, \fB\-\-selinux\-user\fR\ \&\fISEUSER\fR
+.RS 4
+Пользователь SELinux для регистрационной оболочки пользователя\&. По умолчанию это поле пусто, что заставляет систему выбрать пользователя SELinux по умолчанию\&.
+.RE
+.SS "Изменение значений по умолчанию"
+.PP
+При запуске программы только с параметром
+\fB\-D\fR
+команда
+\fBuseradd\fR
+показывает текущие значения по умолчанию\&. Если программа запускается с параметром
+\fB\-D\fR
+вместе с другими параметрами, то
+\fBuseradd\fR
+обновляет значения по умолчанию этих указанных параметров\&. Изменяемые параметры:
+.PP
+\fB\-b\fR, \fB\-\-base\-dir\fR \fIБАЗОВЫЙ_КАТАЛОГ\fR
+.RS 4
+Начальная часть пути нового домашнего каталога пользователя\&. Имя пользователя будет добавлено в конец
+\fIДОМАШНЕГО_КАТАЛОГА\fR
+для создания имени нового каталога, если при создании новой учётной записи не указан параметр
+\fB\-d\fR\&.
+.sp
+Этот параметр изменяет переменную
+\fBHOME\fR
+в файле
+/etc/default/useradd\&.
+.RE
+.PP
+\fB\-e\fR, \fB\-\-expiredate\fR \fIДАТА_УСТАРЕВАНИЯ\fR
+.RS 4
+Дата, когда учётная запись пользователя заблокирована\&.
+.sp
+Этот параметр изменяет переменную
+\fBEXPIRE\fR
+в файле
+/etc/default/useradd\&.
+.RE
+.PP
+\fB\-f\fR, \fB\-\-inactive\fR\ \&\fIДНЕЙ\fR
+.RS 4
+Число дней, которые должны пройти после устаревания пароля, перед тем как учётная запись будет заблокирована\&.
+.sp
+Этот параметр изменяет переменную
+\fBINACTIVE\fR
+в файле
+/etc/default/useradd\&.
+.RE
+.PP
+\fB\-g\fR, \fB\-\-gid\fR\ \&\fIГРУППА\fR
+.RS 4
+Имя группы или ID новой первичной группы пользователя (если используется
+\fB\-N/\-\-no\-user\-group\fR
+или когда значение переменной
+\fBUSERGROUPS_ENAB\fR
+равно
+\fIno\fR
+(файл
+/etc/login\&.defs)\&. Группа с указанным именем должна существовать, а для числового идентификатора группы должна быть соответствующая запись\&.
+.sp
+Этот параметр изменяет переменную
+\fBGROUP\fR
+в файле
+/etc/default/useradd\&.
+.RE
+.PP
+\fB\-s\fR, \fB\-\-shell\fR\ \&\fIОБОЛОЧКА\fR
+.RS 4
+Имя новой регистрационной командной оболочки пользователя\&.
+.sp
+Этот параметр изменяет переменную
+\fBSHELL\fR
+в файле
+/etc/default/useradd\&.
+.RE
+.SH "ЗАМЕЧАНИЯ"
+.PP
+Системный администратор сам решает, какие файлы нужно положить в каталог
+/etc/skel/
+(или в любой другой каталог шаблонов, указанный в
+/etc/default/useradd
+или в командной строке)\&.
+.SH "ПРЕДОСТЕРЕЖЕНИЯ"
+.PP
+Нельзя добавить пользователя в группу NIS или LDAP\&. Это необходимо делать на соответствующем сервере\&.
+.PP
+Также, если имя пользователя уже существует во внешней базе данных такой как NIS или LDAP, то
+\fBuseradd\fR
+не станет создавать учётную запись пользователя\&.
+.PP
+Имена пользователей должны начинаться со строчной буквы или символа подчёркивания, и должны состоять только из строчных букв, цифр, символов подчёркивания и минус\&. Они могут заканчиваться знаком доллара\&. Это можно описать регулярным выражением: [a\-z_][a\-z0\-9_\-]*[$]?
+.PP
+Имена пользователей могут быть длиной не более 32 знаков\&.
+.SH "НАСТРОЙКА"
+.PP
+На работу этого инструмента влияют следующие переменные настройки из
+/etc/login\&.defs:
+.PP
+\fBCREATE_HOME\fR (логический)
+.RS 4
+Определяет, должен ли создаваться по умолчанию домашний каталог для новых пользователей\&.
+.sp
+Эта переменная не влияет на системных пользователей и может быть переопределена из командной строки\&.
+.RE
+.PP
+\fBGID_MAX\fR (число), \fBGID_MIN\fR (число)
+.RS 4
+Диапазон идентификаторов групп, используемый в программах
+\fBuseradd\fR,
+\fBgroupadd\fR
+или
+\fBnewusers\fR
+для создания обычных групп\&.
+.sp
+Значение по умолчанию для
+\fBGID_MIN\fR
+(соотв\&.
+\fBGID_MAX\fR) равно 1000 (соотв\&. 60000)\&.
+.RE
+.PP
+\fBLASTLOG_UID_MAX\fR (number)
+.RS 4
+Highest user ID number for which the lastlog entries should be updated\&. As higher user IDs are usually tracked by remote user identity and authentication services there is no need to create a huge sparse lastlog file for them\&.
+.sp
+No
+\fBLASTLOG_UID_MAX\fR
+option present in the configuration means that there is no user ID limit for writing lastlog entries\&.
+.RE
+.PP
+\fBMAIL_DIR\fR (строка)
+.RS 4
+Почтовый каталог\&. Данный параметр нужен для управления почтовым ящиком при изменении или удалении учётной записи пользователя\&. Если параметр не задан, то используется значение указанное при сборке\&.
+.RE
+.PP
+\fBMAIL_FILE\fR (строка)
+.RS 4
+Определяет расположение почтовых файлов пользователя относительно домашнего каталога\&.
+.RE
+.PP
+Переменные
+\fBMAIL_DIR\fR
+\fBMAIL_FILE\fR
+используются командами
+\fBuseradd\fR,
+\fBusermod\fR
+\fBuserdel\fR
+для создания, перемещения или удаления почты пользователя\&.
+.PP
+Если значение
+\fBMAIL_CHECK_ENAB\fR
+равно
+\fIyes\fR, то они также используются для определения переменной окружения
+\fBMAIL\fR\&.
+.PP
+\fBMAX_MEMBERS_PER_GROUP\fR (число)
+.RS 4
+Максимальное количество членов в записи о группе\&. При достижения максимума заводится новая запись группы (строка) в
+/etc/group
+(с тем же именем, паролем и тем же GID)\&.
+.sp
+Значение по умолчанию равно 0, означающее, что ограничения на количество членов в группе нет\&.
+.sp
+Данная возможность (разделение группы) позволяет ограничить длину строк в файле групп\&. Это полезно для ограничения длины строк групп NIS в 1024 символа\&.
+.sp
+Если вам нужно такое ограничение, укажите значение 25\&.
+.sp
+Замечание: разделение групп поддерживается не всеми инструментами (даже в наборе инструментов Shadow)\&. Вы не должны использовать эту переменную, если вам действительно это ненужно\&.
+.RE
+.PP
+\fBPASS_MAX_DAYS\fR (число)
+.RS 4
+Максимальное число дней использования пароля\&. Если пароль старее этого числа, то будет запущена процедура смены пароля\&. Если значение не задано, то предполагается значение \-1 (то есть возможность ограничения не используется)\&.
+.RE
+.PP
+\fBPASS_MIN_DAYS\fR (число)
+.RS 4
+Максимальное число дней между изменениями пароля\&. Любая смена пароля ранее заданного срока выполнена не будет\&. Если значение не задано, то предполагается значение \-1 (то есть возможность ограничения не используется)\&.
+.RE
+.PP
+\fBPASS_WARN_AGE\fR (число)
+.RS 4
+Число дней за которое начнёт выдаваться предупреждение об устаревании пароля\&. Нулевое значение означает, что предупреждение выдаётся в день устаревания, при отрицательном значении предупреждение выдаваться не будет\&. Если значение не задано, выдача предупреждения отключается\&.
+.RE
+.PP
+\fBSUB_GID_MIN\fR (number), \fBSUB_GID_MAX\fR (number), \fBSUB_GID_COUNT\fR (number)
+.RS 4
+If
+/etc/subuid
+exists, the commands
+\fBuseradd\fR
+and
+\fBnewusers\fR
+(unless the user already have subordinate group IDs) allocate
+\fBSUB_GID_COUNT\fR
+unused group IDs from the range
+\fBSUB_GID_MIN\fR
+to
+\fBSUB_GID_MAX\fR
+for each new user\&.
+.sp
+The default values for
+\fBSUB_GID_MIN\fR,
+\fBSUB_GID_MAX\fR,
+\fBSUB_GID_COUNT\fR
+are respectively 100000, 600100000 and 65536\&.
+.RE
+.PP
+\fBSUB_UID_MIN\fR (number), \fBSUB_UID_MAX\fR (number), \fBSUB_UID_COUNT\fR (number)
+.RS 4
+If
+/etc/subuid
+exists, the commands
+\fBuseradd\fR
+and
+\fBnewusers\fR
+(unless the user already have subordinate user IDs) allocate
+\fBSUB_UID_COUNT\fR
+unused user IDs from the range
+\fBSUB_UID_MIN\fR
+to
+\fBSUB_UID_MAX\fR
+for each new user\&.
+.sp
+The default values for
+\fBSUB_UID_MIN\fR,
+\fBSUB_UID_MAX\fR,
+\fBSUB_UID_COUNT\fR
+are respectively 100000, 600100000 and 65536\&.
+.RE
+.PP
+\fBSYS_GID_MAX\fR (число), \fBSYS_GID_MIN\fR (число)
+.RS 4
+Диапазон идентификаторов групп, используемый в программах
+\fBuseradd\fR,
+\fBgroupadd\fR
+или
+\fBnewusers\fR
+для создания системных групп\&.
+.sp
+Значение по умолчанию для
+\fBSYS_GID_MIN\fR
+(соотв\&.\fBSYS_GID_MAX\fR) равно 101 (соотв\&.
+\fBGID_MIN\fR\-1)\&.
+.RE
+.PP
+\fBSYS_UID_MAX\fR (число), \fBSYS_UID_MIN\fR (число)
+.RS 4
+Диапазон идентификаторов пользователей, используемый в программах
+\fBuseradd\fR
+или
+\fBnewusers\fR
+для создания системных пользователей\&.
+.sp
+Значение по умолчанию для
+\fBSYS_UID_MIN\fR
+(соотв\&.
+\fBSYS_UID_MAX\fR) равно 101 (соотв\&.
+\fBUID_MIN\fR\-1)\&.
+.RE
+.PP
+\fBUID_MAX\fR (число), \fBUID_MIN\fR (число)
+.RS 4
+Диапазон идентификаторов пользователей, используемый в программах
+\fBuseradd\fR
+или
+\fBnewusers\fR
+для создания обычных пользователей\&.
+.sp
+Значение по умолчанию для
+\fBUID_MIN\fR
+(соотв\&.
+\fBUID_MAX\fR) равно 1000 (соотв\&. 60000)\&.
+.RE
+.PP
+\fBUMASK\fR (число)
+.RS 4
+Задаёт начальное значение маски доступа для создаваемых файлов\&. Если не указано, то маска устанавливается в 022\&.
+.sp
+Команды
+\fBuseradd\fR
+\fBnewusers\fR
+используют эту маску для установки прав доступа к домашнему каталогу, который они создают\&.
+.sp
+Также она используется программой
+\fBlogin\fR
+для задания начального значения umask пользователя\&. Заметим, что эта маска может быть переопределена из пользовательской строки GECOS (если установлена переменная
+\fBQUOTAS_ENAB\fR) или указанием ограничения с идентификатором
+\fIK\fR, в
+\fBlimits\fR(5)\&.
+.RE
+.PP
+\fBUSERGROUPS_ENAB\fR (логический)
+.RS 4
+Включает установку группы битов umask равной битам владельца (пример: 022 \-> 002, 077 \-> 007) для не суперпользователей, если uid равен gid и имя пользователя совпадает с именем первичной группы\&.
+.sp
+Если значение равно
+\fIyes\fR, то
+\fBuserdel\fR
+удаляет пользовательскую группу, если в ней нет больше членов, а
+\fBuseradd\fR
+по умолчанию создаёт группу с именем пользователя\&.
+.RE
+.SH "ФАЙЛЫ"
+.PP
+/etc/passwd
+.RS 4
+содержит информацию о пользователях
+.RE
+.PP
+/etc/shadow
+.RS 4
+содержит защищаемую информацию о пользователях
+.RE
+.PP
+/etc/group
+.RS 4
+содержит информацию о группах
+.RE
+.PP
+/etc/gshadow
+.RS 4
+содержит защищаемую информацию о группах
+.RE
+.PP
+/etc/default/useradd
+.RS 4
+значения по умолчанию для создаваемой учётной записи
+.RE
+.PP
+/etc/skel/
+.RS 4
+каталог, содержащий файлы по умолчанию
+.RE
+.PP
+/etc/subgid
+.RS 4
+Per user subordinate group IDs\&.
+.RE
+.PP
+/etc/subuid
+.RS 4
+Per user subordinate user IDs\&.
+.RE
+.PP
+/etc/login\&.defs
+.RS 4
+содержит конфигурацию подсистемы теневых паролей
+.RE
+.SH "ВОЗВРАЩАЕМЫЕ ЗНАЧЕНИЯ"
+.PP
+Команда
+\fBuseradd\fR
+завершая работу, возвращает следующие значения:
+.PP
+\fI0\fR
+.RS 4
+успешное выполнение
+.RE
+.PP
+\fI1\fR
+.RS 4
+не удалось изменить файл паролей
+.RE
+.PP
+\fI2\fR
+.RS 4
+ошибка в параметрах команды
+.RE
+.PP
+\fI3\fR
+.RS 4
+недопустимое значение параметра
+.RE
+.PP
+\fI4\fR
+.RS 4
+такой UID уже существует (и не задан параметр
+\fB\-o\fR)
+.RE
+.PP
+\fI6\fR
+.RS 4
+указанная группа не существует
+.RE
+.PP
+\fI9\fR
+.RS 4
+имя пользователя уже существует
+.RE
+.PP
+\fI10\fR
+.RS 4
+не удалось изменить файл групп
+.RE
+.PP
+\fI12\fR
+.RS 4
+не удалось создать домашний каталог
+.RE
+.PP
+\fI14\fR
+.RS 4
+can\*(Aqt update SELinux user mapping
+.RE
+.SH "СМОТРИТЕ ТАКЖЕ"
+.PP
+\fBchfn\fR(1),
+\fBchsh\fR(1),
+\fBpasswd\fR(1),
+\fBcrypt\fR(3),
+\fBgroupadd\fR(8),
+\fBgroupdel\fR(8),
+\fBgroupmod\fR(8),
+\fBlogin.defs\fR(5),
+\fBnewusers\fR(8),
+\fBsubgid\fR(5), \fBsubuid\fR(5),
+\fBuserdel\fR(8),
+\fBusermod\fR(8)\&.
diff --git a/man/ru/man8/userdel.8 b/man/ru/man8/userdel.8
new file mode 100644
index 00000000..1a1af96b
--- /dev/null
+++ b/man/ru/man8/userdel.8
@@ -0,0 +1,303 @@
+'\" t
+.\" Title: userdel
+.\" Author: Julianne Frances Haugh
+.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
+.\" Date: 06/13/2019
+.\" Manual: Команды управления системой
+.\" Source: shadow-utils 4.7
+.\" Language: Russian
+.\"
+.TH "userdel" "8" "06/13/2019" "shadow\-utils 4\&.7" "Команды управления системой"
+.\" -----------------------------------------------------------------
+.\" * Define some portability stuff
+.\" -----------------------------------------------------------------
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.\" http://bugs.debian.org/507673
+.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.ie \n(.g .ds Aq \(aq
+.el .ds Aq '
+.\" -----------------------------------------------------------------
+.\" * set default formatting
+.\" -----------------------------------------------------------------
+.\" disable hyphenation
+.nh
+.\" disable justification (adjust text to left margin only)
+.ad l
+.\" -----------------------------------------------------------------
+.\" * MAIN CONTENT STARTS HERE *
+.\" -----------------------------------------------------------------
+.SH "НАЗВАНИЕ"
+userdel \- удаляет учётную запись и файлы пользователя
+.SH "СИНТАКСИС"
+.HP \w'\fBuserdel\fR\ 'u
+\fBuserdel\fR [параметры] \fIУЧЁТНАЯ_ЗАПИСЬ\fR
+.SH "ОПИСАНИЕ"
+.PP
+Команда
+\fBuserdel\fR
+изменяет системные файлы учётных записей, удаляя все записи, относящиеся к указанному
+\fIимени_пользователя\fR\&. Заданная учётная запись должна существовать\&.
+.SH "ПАРАМЕТРЫ"
+.PP
+Параметры команды
+\fBuserdel\fR:
+.PP
+\fB\-f\fR, \fB\-\-force\fR
+.RS 4
+С этим параметром учётная запись будет удалена, даже если пользователь в этот момент работает в системе\&. Он также заставляет
+\fBuserdel\fR
+удалить домашний каталог пользователя и почтовый ящик, даже если другой пользователь использует тот же домашний каталог или если почтовый ящик не принадлежит данному пользователю\&. Если значение
+\fBUSERGROUPS_ENAB\fR
+равно
+\fIyes\fR
+в файле
+/etc/login\&.defs
+и если существует группа с именем удаляемого пользователя, то это группа будет удалена, даже если она всё ещё является первичной группой другого пользователя\&.
+.sp
+\fIЗамечание:\fR
+Этот параметр опасно использовать; он может привести систему в нерабочее состояние\&.
+.RE
+.PP
+\fB\-h\fR, \fB\-\-help\fR
+.RS 4
+Показать краткую справку и закончить работу\&.
+.RE
+.PP
+\fB\-r\fR, \fB\-\-remove\fR
+.RS 4
+Файлы в домашнем каталоге пользователя будут удалены вместе с самим домашним каталогом и почтовым ящиком\&. Пользовательские файлы, расположенные в других файловых системах, нужно искать и удалять вручную\&.
+.sp
+Имя файла почтового ящика задаётся переменной
+\fBMAIL_DIR\fR
+в файле
+login\&.defs\&.
+.RE
+.PP
+\fB\-R\fR, \fB\-\-root\fR\ \&\fIКАТ_CHROOT\fR
+.RS 4
+Выполнить изменения в каталоге
+\fIКАТ_CHROOT\fR
+и использовать файлы настройки из каталога
+\fIКАТ_CHROOT\fR\&.
+.RE
+.PP
+\fB\-P\fR, \fB\-\-prefix\fR\ \&\fIPREFIX_DIR\fR
+.RS 4
+Apply changes in the
+\fIPREFIX_DIR\fR
+directory and use the configuration files from the
+\fIPREFIX_DIR\fR
+directory\&. This option does not chroot and is intended for preparing a cross\-compilation target\&. Some limitations: NIS and LDAP users/groups are not verified\&. PAM authentication is using the host files\&. No SELINUX support\&.
+.RE
+.PP
+\fB\-Z\fR, \fB\-\-selinux\-user\fR
+.RS 4
+Удаляет все пользовательские сопоставления SELinux для учётной записи пользователя\&.
+.RE
+.SH "НАСТРОЙКА"
+.PP
+На работу этого инструмента влияют следующие переменные настройки из
+/etc/login\&.defs:
+.PP
+\fBMAIL_DIR\fR (строка)
+.RS 4
+Почтовый каталог\&. Данный параметр нужен для управления почтовым ящиком при изменении или удалении учётной записи пользователя\&. Если параметр не задан, то используется значение указанное при сборке\&.
+.RE
+.PP
+\fBMAIL_FILE\fR (строка)
+.RS 4
+Определяет расположение почтовых файлов пользователя относительно домашнего каталога\&.
+.RE
+.PP
+Переменные
+\fBMAIL_DIR\fR
+\fBMAIL_FILE\fR
+используются командами
+\fBuseradd\fR,
+\fBusermod\fR
+\fBuserdel\fR
+для создания, перемещения или удаления почты пользователя\&.
+.PP
+Если значение
+\fBMAIL_CHECK_ENAB\fR
+равно
+\fIyes\fR, то они также используются для определения переменной окружения
+\fBMAIL\fR\&.
+.PP
+\fBMAX_MEMBERS_PER_GROUP\fR (число)
+.RS 4
+Максимальное количество членов в записи о группе\&. При достижения максимума заводится новая запись группы (строка) в
+/etc/group
+(с тем же именем, паролем и тем же GID)\&.
+.sp
+Значение по умолчанию равно 0, означающее, что ограничения на количество членов в группе нет\&.
+.sp
+Данная возможность (разделение группы) позволяет ограничить длину строк в файле групп\&. Это полезно для ограничения длины строк групп NIS в 1024 символа\&.
+.sp
+Если вам нужно такое ограничение, укажите значение 25\&.
+.sp
+Замечание: разделение групп поддерживается не всеми инструментами (даже в наборе инструментов Shadow)\&. Вы не должны использовать эту переменную, если вам действительно это ненужно\&.
+.RE
+.PP
+\fBUSERDEL_CMD\fR (строка)
+.RS 4
+Определяет программу, которая будет запущена при удалении пользователя\&. Она должна удалять любые задания at/cron/печати удаляемого пользователя (передаётся в качестве первого аргумента)\&.
+.sp
+Возвращаемый сценарием код завершения не учитывается\&.
+.sp
+Вот простой сценарий, который удаляет задания печати, cron и at:
+.sp
+.if n \{\
+.RS 4
+.\}
+.nf
+#! /bin/sh
+
+# проверить все необходимые параметры
+if [ $# != 1 ]; then
+ echo "Использование: $0 имя_пользователя"
+ exit 1
+fi
+
+# удалить задания cron
+crontab \-r \-u $1
+
+# удалить задания at
+# Заметим, что это удалит все задания с указанным UID,
+# даже если он используется для другой учётной записи\&.
+AT_SPOOL_DIR=/var/spool/cron/atjobs
+find $AT_SPOOL_DIR \-name "[^\&.]*" \-type f \-user $1 \-delete \e;
+
+# удалить задания печати
+lprm $1
+
+# всё
+exit 0
+
+.fi
+.if n \{\
+.RE
+.\}
+.RE
+.PP
+\fBUSERGROUPS_ENAB\fR (логический)
+.RS 4
+Включает установку группы битов umask равной битам владельца (пример: 022 \-> 002, 077 \-> 007) для не суперпользователей, если uid равен gid и имя пользователя совпадает с именем первичной группы\&.
+.sp
+Если значение равно
+\fIyes\fR, то
+\fBuserdel\fR
+удаляет пользовательскую группу, если в ней нет больше членов, а
+\fBuseradd\fR
+по умолчанию создаёт группу с именем пользователя\&.
+.RE
+.SH "ФАЙЛЫ"
+.PP
+/etc/group
+.RS 4
+содержит информацию о группах
+.RE
+.PP
+/etc/login\&.defs
+.RS 4
+содержит конфигурацию подсистемы теневых паролей
+.RE
+.PP
+/etc/passwd
+.RS 4
+содержит информацию о пользователях
+.RE
+.PP
+/etc/shadow
+.RS 4
+содержит защищаемую информацию о пользователях
+.RE
+.PP
+/etc/subgid
+.RS 4
+Per user subordinate group IDs\&.
+.RE
+.PP
+/etc/subuid
+.RS 4
+Per user subordinate user IDs\&.
+.RE
+.SH "ВОЗВРАЩАЕМЫЕ ЗНАЧЕНИЯ"
+.PP
+Команда
+\fBuserdel\fR
+завершая работу, возвращает следующие значения:
+.PP
+\fI0\fR
+.RS 4
+успешное выполнение
+.RE
+.PP
+\fI1\fR
+.RS 4
+не удалось изменить файл паролей
+.RE
+.PP
+\fI2\fR
+.RS 4
+ошибка в параметрах команды
+.RE
+.PP
+\fI6\fR
+.RS 4
+указанный пользователь не существует
+.RE
+.PP
+\fI8\fR
+.RS 4
+пользователь сейчас работает в системе
+.RE
+.PP
+\fI10\fR
+.RS 4
+не удалось изменить файл групп
+.RE
+.PP
+\fI12\fR
+.RS 4
+не удалось удалить домашний каталог
+.RE
+.SH "ПРЕДОСТЕРЕЖЕНИЯ"
+.PP
+Команда
+\fBuserdel\fR
+не позволит удалить учётную запись, если есть запущенные процессы, принадлежащие данной учётной записи\&. В этом случае вы можете удалить эти процессы или заблокировать пароль пользователя или учётную запись, а затем удалить учётную запись\&. Если указан параметр
+\fB\-f\fR, то учётная запись будет удалена несмотря ни на что\&.
+.PP
+Вы должны вручную проверить все файловые системы, чтобы убедиться, что не осталось файлов, принадлежащих этому пользователю\&.
+.PP
+Нельзя удалить NIS атрибуты клиента NIS\&. Это необходимо сделать на NIS сервере\&.
+.PP
+Если значение переменной
+\fBUSERGROUPS_ENAB\fR
+равно
+\fIyes\fR
+в файле
+/etc/login\&.defs, то
+\fBuserdel\fR
+удалит группу с именем как у пользователя\&. Чтобы избежать рассогласованности в базах данных групп и паролей,
+\fBuserdel\fR
+проверит, что данная группа не используется в качестве первичной для другого пользователя, и выдаст предупреждение без удаления, если такое случится\&. Параметр
+\fB\-f\fR
+поможет удалить группу в любом случае\&.
+.SH "СМОТРИТЕ ТАКЖЕ"
+.PP
+\fBchfn\fR(1),
+\fBchsh\fR(1),
+\fBpasswd\fR(1),
+\fBlogin.defs\fR(5),
+\fBgpasswd\fR(8),
+\fBgroupadd\fR(8),
+\fBgroupdel\fR(8),
+\fBgroupmod\fR(8),
+\fBsubgid\fR(5), \fBsubuid\fR(5),
+\fBuseradd\fR(8),
+\fBusermod\fR(8)\&.
diff --git a/man/ru/man8/usermod.8 b/man/ru/man8/usermod.8
new file mode 100644
index 00000000..e4473989
--- /dev/null
+++ b/man/ru/man8/usermod.8
@@ -0,0 +1,455 @@
+'\" t
+.\" Title: usermod
+.\" Author: Julianne Frances Haugh
+.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
+.\" Date: 06/13/2019
+.\" Manual: Команды управления системой
+.\" Source: shadow-utils 4.7
+.\" Language: Russian
+.\"
+.TH "usermod" "8" "06/13/2019" "shadow\-utils 4\&.7" "Команды управления системой"
+.\" -----------------------------------------------------------------
+.\" * Define some portability stuff
+.\" -----------------------------------------------------------------
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.\" http://bugs.debian.org/507673
+.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.ie \n(.g .ds Aq \(aq
+.el .ds Aq '
+.\" -----------------------------------------------------------------
+.\" * set default formatting
+.\" -----------------------------------------------------------------
+.\" disable hyphenation
+.nh
+.\" disable justification (adjust text to left margin only)
+.ad l
+.\" -----------------------------------------------------------------
+.\" * MAIN CONTENT STARTS HERE *
+.\" -----------------------------------------------------------------
+.SH "НАЗВАНИЕ"
+usermod \- изменяет учётную запись пользователя
+.SH "СИНТАКСИС"
+.HP \w'\fBusermod\fR\ 'u
+\fBusermod\fR [\fIпараметры\fR] \fIУЧЁТНАЯ_ЗАПИСЬ\fR
+.SH "ОПИСАНИЕ"
+.PP
+Команда
+\fBusermod\fR
+изменяет системные файлы учётных записей согласно переданным в командной строке параметрам\&.
+.SH "ПАРАМЕТРЫ"
+.PP
+Параметры команды
+\fBusermod\fR:
+.PP
+\fB\-a\fR, \fB\-\-append\fR
+.RS 4
+Добавить пользователя в дополнительную группу(ы)\&. Использовать только вместе с параметром
+\fB\-G\fR\&.
+.RE
+.PP
+\fB\-c\fR, \fB\-\-comment\fR\ \&\fIКОММЕНТАРИЙ\fR
+.RS 4
+Новое значение поля комментария в файле пользовательских паролей\&. Обычно его изменяют с помощью программы
+\fBchfn\fR(1)\&.
+.RE
+.PP
+\fB\-d\fR, \fB\-\-home\fR\ \&\fIHOME_DIR\fR
+.RS 4
+Домашний каталог нового пользователя\&.
+.sp
+Если указан параметр
+\fB\-m\fR, то содержимое текущего домашнего каталога будет перемещено в новый домашний каталог, который будет создан, если он ещё не существует\&.
+.RE
+.PP
+\fB\-e\fR, \fB\-\-expiredate\fR \fIДАТА_УСТАРЕВАНИЯ\fR
+.RS 4
+Дата, когда учётная запись пользователя будет заблокирована\&. Дата задаётся в формате
+\fIГГГГ\-ММ\-ДД\fR\&.
+.sp
+Пустое значение аргумента
+\fIДАТА_УСТАРЕВАНИЯ\fR
+отключает устаревание учётной записи\&.
+.sp
+Для этого параметра требуется файл
+/etc/shadow\&. При отсутствии в
+/etc/shadow
+создаётся необходимая запись\&.
+.RE
+.PP
+\fB\-f\fR, \fB\-\-inactive\fR\ \&\fIДНЕЙ\fR
+.RS 4
+Количество дней, которые должны пройти после устаревания пароля, чтобы учётная запись заблокировалась навсегда\&.
+.sp
+Если указано значение 0, то учётная запись блокируется сразу после устаревания пароля, а при значении \-1 данная возможность не используется\&.
+.sp
+Для этого параметра требуется файл
+/etc/shadow\&. При отсутствии в
+/etc/shadow
+создаётся необходимая запись\&.
+.RE
+.PP
+\fB\-g\fR, \fB\-\-gid\fR\ \&\fIГРУППА\fR
+.RS 4
+Имя или числовой идентификатор новой первичной группы пользователя\&. Группа с таким именем должна существовать\&.
+.sp
+Все файлы в домашнем каталоге пользователя, принадлежавшие предыдущей первичной группе пользователя, будут принадлежать новой группе\&.
+.sp
+Группового владельца файлов вне домашнего каталога нужно изменить вручную\&.
+.RE
+.PP
+\fB\-G\fR, \fB\-\-groups\fR\ \&\fIГРУППА1\fR[\fI,ГРУППА2,\&...\fR[\fI,ГРУППАN\fR]]]
+.RS 4
+Список дополнительных групп, в которых числится пользователь\&. Перечисление групп осуществляется через запятую, без промежуточных пробелов\&. На указанные группы действуют те же ограничения, что и для группы указанной в параметре
+\fB\-g\fR\&.
+.sp
+Если пользователь \(em член группы, которой в указанном списке нет, то пользователь удаляется из этой группы\&. Такое поведение можно изменить с помощью параметра
+\fB\-a\fR, при указании которого к уже имеющемуся списку групп пользователя добавляется список указанных дополнительных групп\&.
+.RE
+.PP
+\fB\-l\fR, \fB\-\-login\fR\ \&\fIНОВОЕ_ИМЯ\fR
+.RS 4
+Имя пользователя будет изменено с
+\fIИМЯ\fR
+на
+\fIНОВОЕ_ИМЯ\fR\&. Больше ничего не меняется\&. В частности, вероятно, должно быть изменено имя домашнего каталога и почтового ящика, чтобы отразить изменение имени пользователя\&.
+.RE
+.PP
+\fB\-L\fR, \fB\-\-lock\fR
+.RS 4
+Заблокировать пароль пользователя\&. Это делается помещением символа \(Fo!\(Fc в начало шифрованного пароля, чтобы приводит к блокировке пароля\&. Не используйте этот параметр вместе с
+\fB\-p\fR
+или
+\fB\-U\fR\&.
+.sp
+Замечание: если вы хотите заблокировать учётную запись (не только доступ по паролю), также установите значение
+\fIEXPIRE_DATE\fR
+\fI1\fR\&.
+.RE
+.PP
+\fB\-m\fR, \fB\-\-move\-home\fR
+.RS 4
+Переместить содержимое домашнего каталога в новое место\&.
+.sp
+Этот параметр можно использовать только с параметром
+\fB\-d\fR
+(или
+\fB\-\-home\fR)\&.
+.sp
+Команда
+\fBusermod\fR
+пытается изменить владельцев файлов и копирует права, ACL и расширенные атрибуты, но после неё всё равно могут потребоваться некоторые ручные действия\&.
+.RE
+.PP
+\fB\-o\fR, \fB\-\-non\-unique\fR
+.RS 4
+При использовании с параметром
+\fB\-u\fR, этот параметр позволяет указывать не уникальный числовой идентификатор пользователя\&.
+.RE
+.PP
+\fB\-p\fR, \fB\-\-password\fR\ \&\fIПАРОЛЬ\fR
+.RS 4
+Шифрованное значение пароля, которое возвращает функция
+\fBcrypt\fR(3)\&.
+.sp
+\fBЗамечание:\fR
+Этот параметр использовать не рекомендуется, так как пароль (или не шифрованный пароль) будет видим другими пользователям в списке процессов\&.
+.sp
+Вы должны проверить, что пароль соответствует политике системных паролей\&.
+.RE
+.PP
+\fB\-R\fR, \fB\-\-root\fR\ \&\fIКАТ_CHROOT\fR
+.RS 4
+Выполнить изменения в каталоге
+\fIКАТ_CHROOT\fR
+и использовать файлы настройки из каталога
+\fIКАТ_CHROOT\fR\&.
+.RE
+.PP
+\fB\-P\fR, \fB\-\-prefix\fR\ \&\fIPREFIX_DIR\fR
+.RS 4
+Apply changes in the
+\fIPREFIX_DIR\fR
+directory and use the configuration files from the
+\fIPREFIX_DIR\fR
+directory\&. This option does not chroot and is intended for preparing a cross\-compilation target\&. Some limitations: NIS and LDAP users/groups are not verified\&. PAM authentication is using the host files\&. No SELINUX support\&.
+.RE
+.PP
+\fB\-s\fR, \fB\-\-shell\fR\ \&\fIОБОЛОЧКА\fR
+.RS 4
+Имя новой регистрационной оболочки пользователя\&. Если задать пустое значение, то будет использована регистрационная оболочка по умолчанию\&.
+.RE
+.PP
+\fB\-u\fR, \fB\-\-uid\fR\ \&\fIUID\fR
+.RS 4
+Новый числовой идентификатор пользователя (UID)\&.
+.sp
+Оно должно быть уникальным, если не используется параметр
+\fB\-o\fR\&. Значение должно быть неотрицательным\&.
+.sp
+Для почтового ящика и всех файлов, которыми владеет пользователь и которые расположены в его домашнем каталоге, идентификатор владельца файла будет изменён автоматически\&.
+.sp
+Для файлов, расположенных вне домашнего каталога, идентификатор нужно изменять вручную\&.
+.sp
+Никаких проверок по
+\fBUID_MIN\fR,
+\fBUID_MAX\fR,
+\fBSYS_UID_MIN\fR
+или
+\fBSYS_UID_MAX\fR
+из
+/etc/login\&.defs
+не производится\&.
+.RE
+.PP
+\fB\-U\fR, \fB\-\-unlock\fR
+.RS 4
+Разблокировать пароль пользователя\&. Это выполняется удалением символа \(Fo!\(Fc из начала шифрованного пароля\&. Не используйте этот параметр вместе с
+\fB\-p\fR
+или
+\fB\-L\fR\&.
+.sp
+Замечание: если вы хотите разблокировать учётную запись (не только доступ по паролю), также установите значение
+\fIEXPIRE_DATE\fR
+(например, в to
+\fI99999\fR
+или равным значению
+\fBEXPIRE\fR
+из файла
+/etc/default/useradd)\&.
+.RE
+.PP
+\fB\-v\fR, \fB\-\-add\-subuids\fR\ \&\fIFIRST\fR\-\fILAST\fR
+.RS 4
+Add a range of subordinate uids to the user\*(Aqs account\&.
+.sp
+This option may be specified multiple times to add multiple ranges to a users account\&.
+.sp
+No checks will be performed with regard to
+\fBSUB_UID_MIN\fR,
+\fBSUB_UID_MAX\fR, or
+\fBSUB_UID_COUNT\fR
+from /etc/login\&.defs\&.
+.RE
+.PP
+\fB\-V\fR, \fB\-\-del\-subuids\fR\ \&\fIFIRST\fR\-\fILAST\fR
+.RS 4
+Remove a range of subordinate uids from the user\*(Aqs account\&.
+.sp
+This option may be specified multiple times to remove multiple ranges to a users account\&. When both
+\fB\-\-del\-subuids\fR
+and
+\fB\-\-add\-subuids\fR
+are specified, the removal of all subordinate uid ranges happens before any subordinate uid range is added\&.
+.sp
+No checks will be performed with regard to
+\fBSUB_UID_MIN\fR,
+\fBSUB_UID_MAX\fR, or
+\fBSUB_UID_COUNT\fR
+from /etc/login\&.defs\&.
+.RE
+.PP
+\fB\-w\fR, \fB\-\-add\-subgids\fR\ \&\fIFIRST\fR\-\fILAST\fR
+.RS 4
+Add a range of subordinate gids to the user\*(Aqs account\&.
+.sp
+This option may be specified multiple times to add multiple ranges to a users account\&.
+.sp
+No checks will be performed with regard to
+\fBSUB_GID_MIN\fR,
+\fBSUB_GID_MAX\fR, or
+\fBSUB_GID_COUNT\fR
+from /etc/login\&.defs\&.
+.RE
+.PP
+\fB\-W\fR, \fB\-\-del\-subgids\fR\ \&\fIFIRST\fR\-\fILAST\fR
+.RS 4
+Remove a range of subordinate gids from the user\*(Aqs account\&.
+.sp
+This option may be specified multiple times to remove multiple ranges to a users account\&. When both
+\fB\-\-del\-subgids\fR
+and
+\fB\-\-add\-subgids\fR
+are specified, the removal of all subordinate gid ranges happens before any subordinate gid range is added\&.
+.sp
+No checks will be performed with regard to
+\fBSUB_GID_MIN\fR,
+\fBSUB_GID_MAX\fR, or
+\fBSUB_GID_COUNT\fR
+from /etc/login\&.defs\&.
+.RE
+.PP
+\fB\-Z\fR, \fB\-\-selinux\-user\fR\ \&\fISEUSER\fR
+.RS 4
+Новый пользователь SELinux для пользовательского входа\&.
+.sp
+При пустом значении
+\fISEUSER\fR
+пользовательское сопоставление SELinux для пользователя
+\fILOGIN\fR
+удаляется (если есть)\&.
+.RE
+.SH "ПРЕДОСТЕРЕЖЕНИЯ"
+.PP
+You must make certain that the named user is not executing any processes when this command is being executed if the user\*(Aqs numerical user ID, the user\*(Aqs name, or the user\*(Aqs home directory is being changed\&.
+\fBusermod\fR
+checks this on Linux\&. On other platforms it only uses utmp to check if the user is logged in\&.
+.PP
+Вы должны вручную изменить владельца всех файлов
+\fBcrontab\fR
+или заданий
+\fBat\fR\&.
+.PP
+Вы должны сделать все изменения NIS на сервере NIS самостоятельно\&.
+.SH "НАСТРОЙКА"
+.PP
+На работу этого инструмента влияют следующие переменные настройки из
+/etc/login\&.defs:
+.PP
+\fBLASTLOG_UID_MAX\fR (number)
+.RS 4
+Highest user ID number for which the lastlog entries should be updated\&. As higher user IDs are usually tracked by remote user identity and authentication services there is no need to create a huge sparse lastlog file for them\&.
+.sp
+No
+\fBLASTLOG_UID_MAX\fR
+option present in the configuration means that there is no user ID limit for writing lastlog entries\&.
+.RE
+.PP
+\fBMAIL_DIR\fR (строка)
+.RS 4
+Почтовый каталог\&. Данный параметр нужен для управления почтовым ящиком при изменении или удалении учётной записи пользователя\&. Если параметр не задан, то используется значение указанное при сборке\&.
+.RE
+.PP
+\fBMAIL_FILE\fR (строка)
+.RS 4
+Определяет расположение почтовых файлов пользователя относительно домашнего каталога\&.
+.RE
+.PP
+Переменные
+\fBMAIL_DIR\fR
+\fBMAIL_FILE\fR
+используются командами
+\fBuseradd\fR,
+\fBusermod\fR
+\fBuserdel\fR
+для создания, перемещения или удаления почты пользователя\&.
+.PP
+Если значение
+\fBMAIL_CHECK_ENAB\fR
+равно
+\fIyes\fR, то они также используются для определения переменной окружения
+\fBMAIL\fR\&.
+.PP
+\fBMAX_MEMBERS_PER_GROUP\fR (число)
+.RS 4
+Максимальное количество членов в записи о группе\&. При достижения максимума заводится новая запись группы (строка) в
+/etc/group
+(с тем же именем, паролем и тем же GID)\&.
+.sp
+Значение по умолчанию равно 0, означающее, что ограничения на количество членов в группе нет\&.
+.sp
+Данная возможность (разделение группы) позволяет ограничить длину строк в файле групп\&. Это полезно для ограничения длины строк групп NIS в 1024 символа\&.
+.sp
+Если вам нужно такое ограничение, укажите значение 25\&.
+.sp
+Замечание: разделение групп поддерживается не всеми инструментами (даже в наборе инструментов Shadow)\&. Вы не должны использовать эту переменную, если вам действительно это ненужно\&.
+.RE
+.PP
+\fBSUB_GID_MIN\fR (number), \fBSUB_GID_MAX\fR (number), \fBSUB_GID_COUNT\fR (number)
+.RS 4
+If
+/etc/subuid
+exists, the commands
+\fBuseradd\fR
+and
+\fBnewusers\fR
+(unless the user already have subordinate group IDs) allocate
+\fBSUB_GID_COUNT\fR
+unused group IDs from the range
+\fBSUB_GID_MIN\fR
+to
+\fBSUB_GID_MAX\fR
+for each new user\&.
+.sp
+The default values for
+\fBSUB_GID_MIN\fR,
+\fBSUB_GID_MAX\fR,
+\fBSUB_GID_COUNT\fR
+are respectively 100000, 600100000 and 65536\&.
+.RE
+.PP
+\fBSUB_UID_MIN\fR (number), \fBSUB_UID_MAX\fR (number), \fBSUB_UID_COUNT\fR (number)
+.RS 4
+If
+/etc/subuid
+exists, the commands
+\fBuseradd\fR
+and
+\fBnewusers\fR
+(unless the user already have subordinate user IDs) allocate
+\fBSUB_UID_COUNT\fR
+unused user IDs from the range
+\fBSUB_UID_MIN\fR
+to
+\fBSUB_UID_MAX\fR
+for each new user\&.
+.sp
+The default values for
+\fBSUB_UID_MIN\fR,
+\fBSUB_UID_MAX\fR,
+\fBSUB_UID_COUNT\fR
+are respectively 100000, 600100000 and 65536\&.
+.RE
+.SH "ФАЙЛЫ"
+.PP
+/etc/group
+.RS 4
+содержит информацию о группах
+.RE
+.PP
+/etc/gshadow
+.RS 4
+содержит защищаемую информацию о группах
+.RE
+.PP
+/etc/login\&.defs
+.RS 4
+содержит конфигурацию подсистемы теневых паролей
+.RE
+.PP
+/etc/passwd
+.RS 4
+содержит информацию о пользователях
+.RE
+.PP
+/etc/shadow
+.RS 4
+содержит защищаемую информацию о пользователях
+.RE
+.PP
+/etc/subgid
+.RS 4
+Per user subordinate group IDs\&.
+.RE
+.PP
+/etc/subuid
+.RS 4
+Per user subordinate user IDs\&.
+.RE
+.SH "СМОТРИТЕ ТАКЖЕ"
+.PP
+\fBchfn\fR(1),
+\fBchsh\fR(1),
+\fBpasswd\fR(1),
+\fBcrypt\fR(3),
+\fBgpasswd\fR(8),
+\fBgroupadd\fR(8),
+\fBgroupdel\fR(8),
+\fBgroupmod\fR(8),
+\fBlogin.defs\fR(5),
+\fBsubgid\fR(5), \fBsubuid\fR(5),
+\fBuseradd\fR(8),
+\fBuserdel\fR(8)\&.
diff --git a/man/ru/man8/vigr.8 b/man/ru/man8/vigr.8
new file mode 100644
index 00000000..ff72d7ae
--- /dev/null
+++ b/man/ru/man8/vigr.8
@@ -0,0 +1 @@
+.so man8/vipw.8
diff --git a/man/ru/man8/vipw.8 b/man/ru/man8/vipw.8
new file mode 100644
index 00000000..a5f33989
--- /dev/null
+++ b/man/ru/man8/vipw.8
@@ -0,0 +1,132 @@
+'\" t
+.\" Title: vipw
+.\" Author: Marek Micha\(/lkiewicz
+.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/>
+.\" Date: 06/13/2019
+.\" Manual: Команды управления системой
+.\" Source: shadow-utils 4.7
+.\" Language: Russian
+.\"
+.TH "vipw" "8" "06/13/2019" "shadow\-utils 4\&.7" "Команды управления системой"
+.\" -----------------------------------------------------------------
+.\" * Define some portability stuff
+.\" -----------------------------------------------------------------
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.\" http://bugs.debian.org/507673
+.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
+.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+.ie \n(.g .ds Aq \(aq
+.el .ds Aq '
+.\" -----------------------------------------------------------------
+.\" * set default formatting
+.\" -----------------------------------------------------------------
+.\" disable hyphenation
+.nh
+.\" disable justification (adjust text to left margin only)
+.ad l
+.\" -----------------------------------------------------------------
+.\" * MAIN CONTENT STARTS HERE *
+.\" -----------------------------------------------------------------
+.SH "НАЗВАНИЕ"
+vipw, vigr \- позволяют редактировать файлы паролей, групп, теневых паролей пользователей или групп\&.
+.SH "СИНТАКСИС"
+.HP \w'\fBvipw\fR\ 'u
+\fBvipw\fR [\fIпараметры\fR]
+.HP \w'\fBvigr\fR\ 'u
+\fBvigr\fR [\fIпараметры\fR]
+.SH "ОПИСАНИЕ"
+.PP
+С помощью программ
+\fBvipw\fR
+\fBvigr\fR
+можно изменять файлы
+/etc/passwd
+/etc/group, соответственно\&. Если указан параметр
+\fB\-s\fR, то будут редактироваться теневые версии этих файлов,
+/etc/shadow
+/etc/gshadow, соответственно\&. На время работы программы устанавливают блокировку для предотвращения повреждения файла\&. При выборе редактора программы сначала проверяют переменную окружения
+\fB$VISUAL\fR, затем
+\fB$EDITOR\fR, и если ничего не найдено, запускают стандартный редактор
+\fBvi\fR(1)\&.
+.SH "ПАРАМЕТРЫ"
+.PP
+Параметры команд
+\fBvipw\fR
+\fBvigr\fR:
+.PP
+\fB\-g\fR, \fB\-\-group\fR
+.RS 4
+Редактировать базу данных групп\&.
+.RE
+.PP
+\fB\-h\fR, \fB\-\-help\fR
+.RS 4
+Показать краткую справку и закончить работу\&.
+.RE
+.PP
+\fB\-p\fR, \fB\-\-passwd\fR
+.RS 4
+Редактировать базу данных passwd\&.
+.RE
+.PP
+\fB\-q\fR, \fB\-\-quiet\fR
+.RS 4
+Не выводить сообщений при работе\&.
+.RE
+.PP
+\fB\-R\fR, \fB\-\-root\fR\ \&\fIКАТ_CHROOT\fR
+.RS 4
+Выполнить изменения в каталоге
+\fIКАТ_CHROOT\fR
+и использовать файлы настройки из каталога
+\fIКАТ_CHROOT\fR\&.
+.RE
+.PP
+\fB\-s\fR, \fB\-\-shadow\fR
+.RS 4
+Редактировать базу данных shadow или gshadow\&.
+.RE
+.SH "ОКРУЖЕНИЕ"
+.PP
+\fBVISUAL\fR
+.RS 4
+Редактор, который будет вызван\&.
+.RE
+.PP
+\fBEDITOR\fR
+.RS 4
+Редактор, который будет вызван, если не задана переменная
+\fBVISUAL\fR\&.
+.RE
+.SH "ФАЙЛЫ"
+.PP
+/etc/group
+.RS 4
+содержит информацию о группах
+.RE
+.PP
+/etc/gshadow
+.RS 4
+содержит защищаемую информацию о группах
+.RE
+.PP
+/etc/passwd
+.RS 4
+содержит информацию о пользователях
+.RE
+.PP
+/etc/shadow
+.RS 4
+содержит защищаемую информацию о пользователях
+.RE
+.SH "СМОТРИТЕ ТАКЖЕ"
+.PP
+\fBvi\fR(1),
+\fBgroup\fR(5),
+\fBgshadow\fR(5),
+\fBpasswd\fR(5), ,
+\fBshadow\fR(5)\&.