From 3fcf082618704e4361653a2112cec97b8252a53e Mon Sep 17 00:00:00 2001 From: Serge Hallyn Date: Thu, 13 Oct 2016 10:14:46 -0500 Subject: [PATCH] Imported Upstream version 4.4 --- .gitignore | 47 - ABOUT-NLS | 1101 ++ ChangeLog.orig | 14622 ---------------------- ChangeLog~ | 14677 ---------------------- Makefile.in | 852 ++ aclocal.m4 | 12674 +++++++++++++++++++ autogen.sh | 12 - compile | 347 + config.guess | 1441 +++ config.h.in | 603 + config.rpath | 614 + config.sub | 1813 +++ configure | 21472 ++++++++++++++++++++++++++++++++ configure.in => configure.ac | 14 +- contrib/Makefile.in | 475 + depcomp | 791 ++ doc/Makefile.in | 474 + etc/Makefile.in | 769 ++ etc/login.defs | 9 +- etc/pam.d/Makefile.in | 549 + install-sh | 508 + lib/Makefile.in | 686 + lib/commonio.c | 8 +- lib/commonio.h | 6 + lib/getdef.c | 80 +- lib/getulong.c | 9 +- lib/groupio.c | 3 + lib/groupio.c~ | 458 - lib/groupmem.c | 17 +- lib/pwio.c | 3 + lib/pwmem.c | 20 +- lib/sgroupio.c | 5 + lib/shadowio.c | 5 + lib/subordinateio.c | 87 + libmisc/Makefile.in | 781 ++ libmisc/find_new_sub_gids.c | 2 +- libmisc/find_new_sub_uids.c | 2 +- libmisc/getdate.c | 2666 ++++ libmisc/idmapping.c | 35 +- libmisc/user_busy.c | 9 + ltmain.sh | 11156 +++++++++++++++++ man/.gitignore | 8 - man/Makefile.in | 1066 ++ man/chgpasswd.8.xml | 2 +- man/chpasswd.8.xml | 4 +- man/cs/Makefile.in | 661 + man/da/Makefile.in | 702 ++ man/da/man1/chfn.1 | 162 + man/da/man1/groups.1 | 64 + man/da/man1/id.1 | 60 + man/da/man1/newgrp.1 | 98 + man/da/man1/sg.1 | 97 + man/da/man5/gshadow.5 | 101 + man/da/man8/groupdel.8 | 135 + man/da/man8/logoutd.8 | 57 + man/da/man8/nologin.8 | 51 + man/{es => da}/man8/vigr.8 | 0 man/da/man8/vipw.8 | 135 + man/de/Makefile.in | 757 ++ man/de/man1/chage.1 | 183 + man/de/man1/chfn.1 | 163 + man/de/man1/chsh.1 | 122 + man/de/man1/expiry.1 | 78 + man/de/man1/gpasswd.1 | 235 + man/de/man1/groups.1 | 66 + man/de/man1/id.1 | 60 + man/de/man1/login.1 | 500 + man/de/man1/newgrp.1 | 96 + man/de/man1/passwd.1 | 359 + man/de/man1/sg.1 | 96 + man/de/man1/su.1 | 463 + man/de/man3/getspnam.3 | 1 + man/de/man3/shadow.3 | 248 + man/de/man5/faillog.5 | 65 + man/de/man5/gshadow.5 | 105 + man/de/man5/limits.5 | 277 + man/de/man5/login.access.5 | 62 + man/de/man5/login.defs.5 | 839 ++ man/de/man5/passwd.5 | 179 + man/de/man5/porttime.5 | 97 + man/de/man5/shadow.5 | 149 + man/de/man5/suauth.5 | 145 + man/de/man8/chgpasswd.8 | 208 + man/de/man8/chpasswd.8 | 214 + man/de/man8/faillog.8 | 167 + man/de/man8/groupadd.8 | 255 + man/de/man8/groupdel.8 | 136 + man/de/man8/groupmems.8 | 174 + man/de/man8/groupmod.8 | 211 + man/de/man8/grpck.8 | 240 + man/de/man8/grpconv.8 | 1 + man/de/man8/grpunconv.8 | 1 + man/de/man8/lastlog.8 | 125 + man/de/man8/logoutd.8 | 59 + man/de/man8/newusers.8 | 445 + man/de/man8/nologin.8 | 51 + man/de/man8/pwck.8 | 323 + man/de/man8/pwconv.8 | 185 + man/de/man8/pwunconv.8 | 1 + man/de/man8/sulogin.8 | 117 + man/de/man8/useradd.8 | 776 ++ man/de/man8/userdel.8 | 300 + man/de/man8/usermod.8 | 451 + man/de/man8/vigr.8 | 1 + man/de/man8/vipw.8 | 136 + man/es/Makefile.in | 481 + man/es/man1/login.1 | 332 - man/es/man1/newgrp.1 | 32 - man/es/man1/passwd.1 | 138 - man/es/man1/su.1 | 139 - man/es/man5/passwd.5 | 138 - man/es/man8/vipw.8 | 92 - man/fi/Makefile.in | 557 + man/fi/man1/passwd.1 | 95 - man/fr/Makefile.in | 766 ++ man/fr/man1/chage.1 | 180 + man/fr/man1/chfn.1 | 160 + man/fr/man1/chsh.1 | 118 + man/fr/man1/expiry.1 | 76 + man/fr/man1/gpasswd.1 | 226 + man/fr/man1/groups.1 | 63 + man/fr/man1/id.1 | 60 + man/fr/man1/login.1 | 476 + man/fr/man1/newgidmap.1 | 97 + man/fr/man1/newgrp.1 | 96 + man/fr/man1/newuidmap.1 | 97 + man/fr/man1/passwd.1 | 355 + man/fr/man1/sg.1 | 92 + man/fr/man1/su.1 | 451 + man/fr/man3/getspnam.3 | 1 + man/fr/man3/shadow.3 | 243 + man/fr/man5/faillog.5 | 63 + man/fr/man5/gshadow.5 | 101 + man/fr/man5/limits.5 | 273 + man/fr/man5/login.access.5 | 67 + man/fr/man5/login.defs.5 | 829 ++ man/fr/man5/passwd.5 | 171 + man/fr/man5/porttime.5 | 99 + man/fr/man5/shadow.5 | 148 + man/fr/man5/suauth.5 | 147 + man/fr/man5/subgid.5 | 100 + man/fr/man5/subuid.5 | 100 + man/fr/man8/chgpasswd.8 | 206 + man/fr/man8/chpasswd.8 | 210 + man/fr/man8/faillog.8 | 162 + man/fr/man8/groupadd.8 | 248 + man/fr/man8/groupdel.8 | 135 + man/fr/man8/groupmems.8 | 173 + man/fr/man8/groupmod.8 | 204 + man/fr/man8/grpck.8 | 245 + man/fr/man8/grpconv.8 | 1 + man/fr/man8/grpunconv.8 | 1 + man/fr/man8/lastlog.8 | 123 + man/fr/man8/logoutd.8 | 57 + man/fr/man8/newusers.8 | 432 + man/fr/man8/nologin.8 | 51 + man/fr/man8/pwck.8 | 319 + man/fr/man8/pwconv.8 | 203 + man/fr/man8/pwunconv.8 | 1 + man/fr/man8/sulogin.8 | 115 + man/fr/man8/useradd.8 | 746 ++ man/fr/man8/userdel.8 | 296 + man/fr/man8/usermod.8 | 438 + man/fr/man8/vigr.8 | 1 + man/fr/man8/vipw.8 | 134 + man/groupmems.8.xml | 2 +- man/gshadow.5.xml | 4 +- man/hu/Makefile.in | 651 + man/hu/man1/chfn.1 | 75 - man/hu/man1/id.1 | 63 - man/id/Makefile.in | 598 + man/it/Makefile.in | 757 ++ man/it/man1/chage.1 | 177 + man/it/man1/chfn.1 | 159 + man/it/man1/chsh.1 | 117 + man/it/man1/expiry.1 | 73 + man/it/man1/gpasswd.1 | 232 + man/it/man1/groups.1 | 62 + man/it/man1/id.1 | 60 + man/it/man1/login.1 | 485 + man/it/man1/newgrp.1 | 94 + man/it/man1/passwd.1 | 316 + man/it/man1/sg.1 | 94 + man/it/man1/su.1 | 453 + man/it/man3/getspnam.3 | 1 + man/it/man3/shadow.3 | 246 + man/it/man5/faillog.5 | 64 + man/it/man5/gshadow.5 | 101 + man/it/man5/limits.5 | 276 + man/it/man5/login.access.5 | 65 + man/it/man5/login.defs.5 | 824 ++ man/it/man5/passwd.5 | 177 + man/it/man5/porttime.5 | 98 + man/it/man5/shadow.5 | 148 + man/it/man5/suauth.5 | 146 + man/it/man8/chgpasswd.8 | 206 + man/it/man8/chpasswd.8 | 209 + man/it/man8/faillog.8 | 160 + man/it/man8/groupadd.8 | 213 + man/it/man8/groupdel.8 | 135 + man/it/man8/groupmems.8 | 171 + man/it/man8/groupmod.8 | 171 + man/it/man8/grpck.8 | 240 + man/it/man8/grpconv.8 | 1 + man/it/man8/grpunconv.8 | 1 + man/it/man8/lastlog.8 | 120 + man/it/man8/logoutd.8 | 57 + man/it/man8/newusers.8 | 431 + man/it/man8/nologin.8 | 51 + man/it/man8/pwck.8 | 319 + man/it/man8/pwconv.8 | 191 + man/it/man8/pwunconv.8 | 1 + man/it/man8/sulogin.8 | 115 + man/it/man8/useradd.8 | 696 ++ man/it/man8/userdel.8 | 297 + man/it/man8/usermod.8 | 439 + man/it/man8/vigr.8 | 1 + man/it/man8/vipw.8 | 135 + man/ja/Makefile.in | 656 + man/ko/Makefile.in | 651 + man/ko/man1/id.1 | 52 - man/ko/man1/newgrp.1 | 29 - man/lastlog.8.xml | 22 + man/limits.5.xml | 8 +- man/man1/chage.1 | 184 + man/man1/chfn.1 | 163 + man/man1/chsh.1 | 121 + man/man1/expiry.1 | 74 + man/man1/gpasswd.1 | 232 + man/man1/groups.1 | 64 + man/man1/id.1 | 60 + man/man1/login.1 | 485 + man/man1/newgidmap.1 | 97 + man/man1/newgrp.1 | 98 + man/man1/newuidmap.1 | 97 + man/man1/passwd.1 | 359 + man/man1/sg.1 | 97 + man/man1/su.1 | 450 + man/man3/getspnam.3 | 1 + man/man3/shadow.3 | 245 + man/man5/faillog.5 | 64 + man/man5/gshadow.5 | 101 + man/man5/limits.5 | 274 + man/man5/login.access.5 | 67 + man/man5/login.defs.5 | 826 ++ man/man5/passwd.5 | 179 + man/man5/porttime.5 | 96 + man/man5/shadow.5 | 148 + man/man5/suauth.5 | 146 + man/man5/subgid.5 | 100 + man/man5/subuid.5 | 100 + man/man8/chgpasswd.8 | 208 + man/man8/chpasswd.8 | 212 + man/man8/faillog.8 | 165 + man/man8/groupadd.8 | 248 + man/man8/groupdel.8 | 136 + man/man8/groupmems.8 | 180 + man/man8/groupmod.8 | 209 + man/man8/grpck.8 | 247 + man/man8/grpconv.8 | 1 + man/man8/grpunconv.8 | 1 + man/man8/lastlog.8 | 123 + man/man8/logoutd.8 | 57 + man/man8/newusers.8 | 430 + man/man8/nologin.8 | 51 + man/man8/pwck.8 | 323 + man/man8/pwconv.8 | 193 + man/man8/pwunconv.8 | 1 + man/man8/sulogin.8 | 116 + man/man8/useradd.8 | 747 ++ man/man8/userdel.8 | 299 + man/man8/usermod.8 | 446 + man/man8/vigr.8 | 1 + man/man8/vipw.8 | 137 + man/newgidmap.1.xml | 13 +- man/newuidmap.1.xml | 10 +- man/newusers.8.xml | 6 +- man/nologin.8.xml | 2 +- man/passwd.1.xml | 2 +- man/pl/Makefile.in | 752 ++ man/pl/man1/chage.1 | 181 + man/pl/man1/chsh.1 | 118 + man/pl/man1/expiry.1 | 74 + man/pl/man1/groups.1 | 64 + man/pl/man1/id.1 | 60 + man/pl/man1/newgrp.1 | 98 + man/pl/man1/sg.1 | 97 + man/pl/man3/getspnam.3 | 1 + man/pl/man3/shadow.3 | 245 + man/pl/man5/faillog.5 | 64 + man/pl/man5/porttime.5 | 96 + man/pl/man8/faillog.8 | 165 + man/pl/man8/groupadd.8 | 248 + man/pl/man8/groupdel.8 | 136 + man/pl/man8/groupmems.8 | 180 + man/pl/man8/groupmod.8 | 208 + man/pl/man8/grpck.8 | 247 + man/pl/man8/lastlog.8 | 124 + man/pl/man8/logoutd.8 | 56 + man/pl/man8/userdel.8 | 299 + man/pl/man8/usermod.8 | 445 + man/pl/man8/vigr.8 | 1 + man/pl/man8/vipw.8 | 141 + man/po/da.po | 379 +- man/po/de.po | 495 +- man/po/fr.po | 485 +- man/po/it.po | 489 +- man/po/pl.po | 347 +- man/po/ru.po | 487 +- man/po/shadow-man-pages.pot | 152 +- man/po/stamp-po | 1 + man/po/sv.po | 358 +- man/po/zh_CN.po | 459 +- man/pt_BR/Makefile.in | 647 + man/pwck.8.xml | 2 +- man/ru/Makefile.in | 757 ++ man/ru/man1/chage.1 | 179 + man/ru/man1/chfn.1 | 154 + man/ru/man1/chsh.1 | 117 + man/ru/man1/expiry.1 | 75 + man/ru/man1/gpasswd.1 | 226 + man/ru/man1/groups.1 | 62 + man/ru/man1/id.1 | 60 + man/ru/man1/login.1 | 480 + man/ru/man1/newgrp.1 | 92 + man/ru/man1/passwd.1 | 352 + man/ru/man1/sg.1 | 91 + man/ru/man1/su.1 | 443 + man/ru/man3/getspnam.3 | 1 + man/ru/man3/shadow.3 | 242 + man/ru/man5/faillog.5 | 65 + man/ru/man5/gshadow.5 | 101 + man/ru/man5/limits.5 | 274 + man/ru/man5/login.access.5 | 67 + man/ru/man5/login.defs.5 | 816 ++ man/ru/man5/passwd.5 | 175 + man/ru/man5/porttime.5 | 98 + man/ru/man5/shadow.5 | 147 + man/ru/man5/suauth.5 | 145 + man/ru/man8/chgpasswd.8 | 203 + man/ru/man8/chpasswd.8 | 205 + man/ru/man8/faillog.8 | 159 + man/ru/man8/groupadd.8 | 242 + man/ru/man8/groupdel.8 | 133 + man/ru/man8/groupmems.8 | 170 + man/ru/man8/groupmod.8 | 205 + man/ru/man8/grpck.8 | 238 + man/ru/man8/grpconv.8 | 1 + man/ru/man8/grpunconv.8 | 1 + man/ru/man8/lastlog.8 | 119 + man/ru/man8/logoutd.8 | 57 + man/ru/man8/newusers.8 | 431 + man/ru/man8/nologin.8 | 51 + man/ru/man8/pwck.8 | 316 + man/ru/man8/pwconv.8 | 192 + man/ru/man8/pwunconv.8 | 1 + man/ru/man8/sulogin.8 | 114 + man/ru/man8/useradd.8 | 740 ++ man/ru/man8/userdel.8 | 294 + man/ru/man8/usermod.8 | 437 + man/ru/man8/vigr.8 | 1 + man/ru/man8/vipw.8 | 132 + man/shadow.5.xml | 6 +- man/su.1.xml | 4 +- man/suauth.5.xml | 6 +- man/subgid.5.xml | 9 +- man/subuid.5.xml | 9 +- man/sv/Makefile.in | 754 ++ man/sv/man1/chage.1 | 184 + man/sv/man1/chsh.1 | 121 + man/sv/man1/expiry.1 | 74 + man/sv/man1/groups.1 | 64 + man/sv/man1/id.1 | 60 + man/sv/man1/newgrp.1 | 98 + man/sv/man1/passwd.1 | 361 + man/sv/man1/sg.1 | 97 + man/sv/man3/getspnam.3 | 1 + man/sv/man3/shadow.3 | 245 + man/sv/man5/faillog.5 | 64 + man/sv/man5/gshadow.5 | 101 + man/sv/man5/limits.5 | 274 + man/sv/man5/passwd.5 | 179 + man/sv/man5/porttime.5 | 96 + man/sv/man5/suauth.5 | 146 + man/sv/man8/faillog.8 | 165 + man/sv/man8/groupadd.8 | 248 + man/sv/man8/groupdel.8 | 136 + man/sv/man8/groupmems.8 | 180 + man/sv/man8/groupmod.8 | 209 + man/sv/man8/grpck.8 | 247 + man/sv/man8/lastlog.8 | 123 + man/sv/man8/logoutd.8 | 57 + man/sv/man8/nologin.8 | 51 + man/sv/man8/pwck.8 | 323 + man/sv/man8/userdel.8 | 299 + man/sv/man8/vigr.8 | 1 + man/sv/man8/vipw.8 | 137 + man/tr/Makefile.in | 654 + man/useradd.8.xml | 8 +- man/useradd.8.xml~ | 848 -- man/usermod.8.xml | 3 +- man/zh_CN/Makefile.in | 757 ++ man/zh_CN/man1/chage.1 | 176 + man/zh_CN/man1/chfn.1 | 161 + man/zh_CN/man1/chsh.1 | 119 + man/zh_CN/man1/expiry.1 | 73 + man/zh_CN/man1/gpasswd.1 | 229 + man/zh_CN/man1/groups.1 | 64 + man/zh_CN/man1/id.1 | 60 + man/zh_CN/man1/login.1 | 481 + man/zh_CN/man1/newgrp.1 | 98 + man/zh_CN/man1/passwd.1 | 347 + man/zh_CN/man1/sg.1 | 95 + man/zh_CN/man1/su.1 | 425 + man/zh_CN/man3/getspnam.3 | 1 + man/zh_CN/man3/shadow.3 | 243 + man/zh_CN/man5/faillog.5 | 64 + man/zh_CN/man5/gshadow.5 | 102 + man/zh_CN/man5/limits.5 | 274 + man/zh_CN/man5/login.access.5 | 66 + man/zh_CN/man5/login.defs.5 | 813 ++ man/zh_CN/man5/passwd.5 | 178 + man/zh_CN/man5/porttime.5 | 93 + man/zh_CN/man5/shadow.5 | 149 + man/zh_CN/man5/suauth.5 | 141 + man/zh_CN/man8/chgpasswd.8 | 206 + man/zh_CN/man8/chpasswd.8 | 209 + man/zh_CN/man8/faillog.8 | 165 + man/zh_CN/man8/groupadd.8 | 242 + man/zh_CN/man8/groupdel.8 | 134 + man/zh_CN/man8/groupmems.8 | 179 + man/zh_CN/man8/groupmod.8 | 207 + man/zh_CN/man8/grpck.8 | 243 + man/zh_CN/man8/grpconv.8 | 1 + man/zh_CN/man8/grpunconv.8 | 1 + man/zh_CN/man8/lastlog.8 | 124 + man/zh_CN/man8/logoutd.8 | 57 + man/zh_CN/man8/newusers.8 | 429 + man/zh_CN/man8/nologin.8 | 50 + man/zh_CN/man8/pwck.8 | 318 + man/zh_CN/man8/pwconv.8 | 187 + man/zh_CN/man8/pwunconv.8 | 1 + man/zh_CN/man8/sulogin.8 | 116 + man/zh_CN/man8/useradd.8 | 744 ++ man/zh_CN/man8/userdel.8 | 288 + man/zh_CN/man8/usermod.8 | 449 + man/zh_CN/man8/vigr.8 | 1 + man/zh_CN/man8/vipw.8 | 134 + man/zh_TW/Makefile.in | 655 + missing | 215 + po/Makefile.in.in | 403 + po/Rules-quot | 47 + po/boldquot.sed | 10 + po/bs.gmo | Bin 0 -> 3012 bytes po/bs.po | 153 +- po/ca.gmo | Bin 0 -> 69110 bytes po/ca.po | 201 +- po/cs.gmo | Bin 0 -> 54857 bytes po/cs.po | 201 +- po/da.gmo | Bin 0 -> 64695 bytes po/da.po | 188 +- po/de.gmo | Bin 0 -> 70203 bytes po/de.po | 195 +- po/dz.gmo | Bin 0 -> 33439 bytes po/dz.po | 185 +- po/el.gmo | Bin 0 -> 86879 bytes po/el.po | 202 +- po/en@boldquot.header | 25 + po/en@quot.header | 22 + po/es.gmo | Bin 0 -> 62178 bytes po/es.po | 201 +- po/eu.gmo | Bin 0 -> 49600 bytes po/eu.po | 194 +- po/fi.gmo | Bin 0 -> 20312 bytes po/fi.po | 183 +- po/fr.gmo | Bin 0 -> 74230 bytes po/fr.po | 201 +- po/gl.gmo | Bin 0 -> 19464 bytes po/gl.po | 187 +- po/he.gmo | Bin 0 -> 4699 bytes po/he.po | 162 +- po/hu.gmo | Bin 0 -> 20162 bytes po/hu.po | 187 +- po/id.gmo | Bin 0 -> 16358 bytes po/id.po | 183 +- po/insert-header.sin | 23 + po/it.gmo | Bin 0 -> 22888 bytes po/it.po | 186 +- po/ja.gmo | Bin 0 -> 74158 bytes po/ja.po | 191 +- po/kk.gmo | Bin 0 -> 81155 bytes po/kk.po | 193 +- po/km.gmo | Bin 0 -> 28822 bytes po/km.po | 183 +- po/ko.gmo | Bin 0 -> 33111 bytes po/ko.po | 179 +- po/nb.gmo | Bin 0 -> 64155 bytes po/nb.po | 209 +- po/ne.gmo | Bin 0 -> 28797 bytes po/ne.po | 187 +- po/nl.gmo | Bin 0 -> 20525 bytes po/nl.po | 187 +- po/nn.gmo | Bin 0 -> 12845 bytes po/nn.po | 177 +- po/pl.gmo | Bin 0 -> 20430 bytes po/pl.po | 185 +- po/pt.gmo | Bin 0 -> 68564 bytes po/pt.po | 193 +- po/pt_BR.gmo | Bin 0 -> 59505 bytes po/pt_BR.po | 203 +- po/quot.sed | 6 + po/remove-potcdate.sin | 19 + po/ro.gmo | Bin 0 -> 19329 bytes po/ro.po | 187 +- po/ru.gmo | Bin 0 -> 88101 bytes po/ru.po | 194 +- po/shadow.pot | 153 +- po/sk.gmo | Bin 0 -> 45486 bytes po/sk.po | 201 +- po/sq.gmo | Bin 0 -> 1068 bytes po/sq.po | 153 +- po/stamp-po | 1 + po/stats | 20 - po/sv.gmo | Bin 0 -> 56876 bytes po/sv.po | 189 +- po/tl.gmo | Bin 0 -> 20382 bytes po/tl.po | 187 +- po/tr.gmo | Bin 0 -> 22330 bytes po/tr.po | 190 +- po/uk.gmo | Bin 0 -> 24819 bytes po/uk.po | 185 +- po/vi.gmo | Bin 0 -> 57831 bytes po/vi.po | 193 +- po/zh_CN.gmo | Bin 0 -> 60594 bytes po/zh_CN.po | 193 +- po/zh_TW.gmo | Bin 0 -> 14002 bytes po/zh_TW.po | 177 +- src/.gitignore | 35 - src/Makefile.am | 6 +- src/Makefile.in | 1251 ++ src/chage.c | 4 +- src/chfn.c | 2 +- src/chgpasswd.c | 4 +- src/chpasswd.c | 4 +- src/chsh.c | 2 +- src/expiry.c | 2 +- src/gpasswd.c | 9 +- src/groupadd.c | 4 +- src/groupdel.c | 15 +- src/groupmems.c | 4 +- src/groupmod.c | 6 +- src/grpck.c | 4 +- src/grpconv.c | 2 +- src/grpunconv.c | 2 +- src/lastlog.c | 115 +- src/login.c | 11 +- src/newgidmap.c | 13 +- src/newgrp.c | 9 +- src/newuidmap.c | 13 +- src/newusers.c | 12 +- src/passwd.c | 4 +- src/pwck.c | 6 +- src/pwconv.c | 5 +- src/pwunconv.c | 2 +- src/su.c | 21 +- src/sulogin.c | 2 +- src/useradd.c | 28 +- src/userdel.c | 12 +- src/usermod.c | 128 +- ylwrap | 247 + 570 files changed, 147956 insertions(+), 34445 deletions(-) delete mode 100644 .gitignore create mode 100644 ABOUT-NLS delete mode 100644 ChangeLog.orig delete mode 100644 ChangeLog~ create mode 100644 Makefile.in create mode 100644 aclocal.m4 delete mode 100755 autogen.sh create mode 100755 compile create mode 100755 config.guess create mode 100644 config.h.in create mode 100755 config.rpath create mode 100755 config.sub create mode 100755 configure rename configure.in => configure.ac (98%) create mode 100644 contrib/Makefile.in create mode 100755 depcomp create mode 100644 doc/Makefile.in create mode 100644 etc/Makefile.in create mode 100644 etc/pam.d/Makefile.in create mode 100755 install-sh create mode 100644 lib/Makefile.in delete mode 100644 lib/groupio.c~ create mode 100644 libmisc/Makefile.in create mode 100644 libmisc/getdate.c create mode 100644 ltmain.sh delete mode 100644 man/.gitignore create mode 100644 man/Makefile.in create mode 100644 man/cs/Makefile.in create mode 100644 man/da/Makefile.in create mode 100644 man/da/man1/chfn.1 create mode 100644 man/da/man1/groups.1 create mode 100644 man/da/man1/id.1 create mode 100644 man/da/man1/newgrp.1 create mode 100644 man/da/man1/sg.1 create mode 100644 man/da/man5/gshadow.5 create mode 100644 man/da/man8/groupdel.8 create mode 100644 man/da/man8/logoutd.8 create mode 100644 man/da/man8/nologin.8 rename man/{es => da}/man8/vigr.8 (100%) create mode 100644 man/da/man8/vipw.8 create mode 100644 man/de/Makefile.in create mode 100644 man/de/man1/chage.1 create mode 100644 man/de/man1/chfn.1 create mode 100644 man/de/man1/chsh.1 create mode 100644 man/de/man1/expiry.1 create mode 100644 man/de/man1/gpasswd.1 create mode 100644 man/de/man1/groups.1 create mode 100644 man/de/man1/id.1 create mode 100644 man/de/man1/login.1 create mode 100644 man/de/man1/newgrp.1 create mode 100644 man/de/man1/passwd.1 create mode 100644 man/de/man1/sg.1 create mode 100644 man/de/man1/su.1 create mode 100644 man/de/man3/getspnam.3 create mode 100644 man/de/man3/shadow.3 create mode 100644 man/de/man5/faillog.5 create mode 100644 man/de/man5/gshadow.5 create mode 100644 man/de/man5/limits.5 create mode 100644 man/de/man5/login.access.5 create mode 100644 man/de/man5/login.defs.5 create mode 100644 man/de/man5/passwd.5 create mode 100644 man/de/man5/porttime.5 create mode 100644 man/de/man5/shadow.5 create mode 100644 man/de/man5/suauth.5 create mode 100644 man/de/man8/chgpasswd.8 create mode 100644 man/de/man8/chpasswd.8 create mode 100644 man/de/man8/faillog.8 create mode 100644 man/de/man8/groupadd.8 create mode 100644 man/de/man8/groupdel.8 create mode 100644 man/de/man8/groupmems.8 create mode 100644 man/de/man8/groupmod.8 create mode 100644 man/de/man8/grpck.8 create mode 100644 man/de/man8/grpconv.8 create mode 100644 man/de/man8/grpunconv.8 create mode 100644 man/de/man8/lastlog.8 create mode 100644 man/de/man8/logoutd.8 create mode 100644 man/de/man8/newusers.8 create mode 100644 man/de/man8/nologin.8 create mode 100644 man/de/man8/pwck.8 create mode 100644 man/de/man8/pwconv.8 create mode 100644 man/de/man8/pwunconv.8 create mode 100644 man/de/man8/sulogin.8 create mode 100644 man/de/man8/useradd.8 create mode 100644 man/de/man8/userdel.8 create mode 100644 man/de/man8/usermod.8 create mode 100644 man/de/man8/vigr.8 create mode 100644 man/de/man8/vipw.8 create mode 100644 man/es/Makefile.in delete mode 100644 man/es/man1/login.1 delete mode 100644 man/es/man1/newgrp.1 delete mode 100644 man/es/man1/passwd.1 delete mode 100644 man/es/man1/su.1 delete mode 100644 man/es/man5/passwd.5 delete mode 100644 man/es/man8/vipw.8 create mode 100644 man/fi/Makefile.in delete mode 100644 man/fi/man1/passwd.1 create mode 100644 man/fr/Makefile.in create mode 100644 man/fr/man1/chage.1 create mode 100644 man/fr/man1/chfn.1 create mode 100644 man/fr/man1/chsh.1 create mode 100644 man/fr/man1/expiry.1 create mode 100644 man/fr/man1/gpasswd.1 create mode 100644 man/fr/man1/groups.1 create mode 100644 man/fr/man1/id.1 create mode 100644 man/fr/man1/login.1 create mode 100644 man/fr/man1/newgidmap.1 create mode 100644 man/fr/man1/newgrp.1 create mode 100644 man/fr/man1/newuidmap.1 create mode 100644 man/fr/man1/passwd.1 create mode 100644 man/fr/man1/sg.1 create mode 100644 man/fr/man1/su.1 create mode 100644 man/fr/man3/getspnam.3 create mode 100644 man/fr/man3/shadow.3 create mode 100644 man/fr/man5/faillog.5 create mode 100644 man/fr/man5/gshadow.5 create mode 100644 man/fr/man5/limits.5 create mode 100644 man/fr/man5/login.access.5 create mode 100644 man/fr/man5/login.defs.5 create mode 100644 man/fr/man5/passwd.5 create mode 100644 man/fr/man5/porttime.5 create mode 100644 man/fr/man5/shadow.5 create mode 100644 man/fr/man5/suauth.5 create mode 100644 man/fr/man5/subgid.5 create mode 100644 man/fr/man5/subuid.5 create mode 100644 man/fr/man8/chgpasswd.8 create mode 100644 man/fr/man8/chpasswd.8 create mode 100644 man/fr/man8/faillog.8 create mode 100644 man/fr/man8/groupadd.8 create mode 100644 man/fr/man8/groupdel.8 create mode 100644 man/fr/man8/groupmems.8 create mode 100644 man/fr/man8/groupmod.8 create mode 100644 man/fr/man8/grpck.8 create mode 100644 man/fr/man8/grpconv.8 create mode 100644 man/fr/man8/grpunconv.8 create mode 100644 man/fr/man8/lastlog.8 create mode 100644 man/fr/man8/logoutd.8 create mode 100644 man/fr/man8/newusers.8 create mode 100644 man/fr/man8/nologin.8 create mode 100644 man/fr/man8/pwck.8 create mode 100644 man/fr/man8/pwconv.8 create mode 100644 man/fr/man8/pwunconv.8 create mode 100644 man/fr/man8/sulogin.8 create mode 100644 man/fr/man8/useradd.8 create mode 100644 man/fr/man8/userdel.8 create mode 100644 man/fr/man8/usermod.8 create mode 100644 man/fr/man8/vigr.8 create mode 100644 man/fr/man8/vipw.8 create mode 100644 man/hu/Makefile.in delete mode 100644 man/hu/man1/chfn.1 delete mode 100644 man/hu/man1/id.1 create mode 100644 man/id/Makefile.in create mode 100644 man/it/Makefile.in create mode 100644 man/it/man1/chage.1 create mode 100644 man/it/man1/chfn.1 create mode 100644 man/it/man1/chsh.1 create mode 100644 man/it/man1/expiry.1 create mode 100644 man/it/man1/gpasswd.1 create mode 100644 man/it/man1/groups.1 create mode 100644 man/it/man1/id.1 create mode 100644 man/it/man1/login.1 create mode 100644 man/it/man1/newgrp.1 create mode 100644 man/it/man1/passwd.1 create mode 100644 man/it/man1/sg.1 create mode 100644 man/it/man1/su.1 create mode 100644 man/it/man3/getspnam.3 create mode 100644 man/it/man3/shadow.3 create mode 100644 man/it/man5/faillog.5 create mode 100644 man/it/man5/gshadow.5 create mode 100644 man/it/man5/limits.5 create mode 100644 man/it/man5/login.access.5 create mode 100644 man/it/man5/login.defs.5 create mode 100644 man/it/man5/passwd.5 create mode 100644 man/it/man5/porttime.5 create mode 100644 man/it/man5/shadow.5 create mode 100644 man/it/man5/suauth.5 create mode 100644 man/it/man8/chgpasswd.8 create mode 100644 man/it/man8/chpasswd.8 create mode 100644 man/it/man8/faillog.8 create mode 100644 man/it/man8/groupadd.8 create mode 100644 man/it/man8/groupdel.8 create mode 100644 man/it/man8/groupmems.8 create mode 100644 man/it/man8/groupmod.8 create mode 100644 man/it/man8/grpck.8 create mode 100644 man/it/man8/grpconv.8 create mode 100644 man/it/man8/grpunconv.8 create mode 100644 man/it/man8/lastlog.8 create mode 100644 man/it/man8/logoutd.8 create mode 100644 man/it/man8/newusers.8 create mode 100644 man/it/man8/nologin.8 create mode 100644 man/it/man8/pwck.8 create mode 100644 man/it/man8/pwconv.8 create mode 100644 man/it/man8/pwunconv.8 create mode 100644 man/it/man8/sulogin.8 create mode 100644 man/it/man8/useradd.8 create mode 100644 man/it/man8/userdel.8 create mode 100644 man/it/man8/usermod.8 create mode 100644 man/it/man8/vigr.8 create mode 100644 man/it/man8/vipw.8 create mode 100644 man/ja/Makefile.in create mode 100644 man/ko/Makefile.in delete mode 100644 man/ko/man1/id.1 delete mode 100644 man/ko/man1/newgrp.1 create mode 100644 man/man1/chage.1 create mode 100644 man/man1/chfn.1 create mode 100644 man/man1/chsh.1 create mode 100644 man/man1/expiry.1 create mode 100644 man/man1/gpasswd.1 create mode 100644 man/man1/groups.1 create mode 100644 man/man1/id.1 create mode 100644 man/man1/login.1 create mode 100644 man/man1/newgidmap.1 create mode 100644 man/man1/newgrp.1 create mode 100644 man/man1/newuidmap.1 create mode 100644 man/man1/passwd.1 create mode 100644 man/man1/sg.1 create mode 100644 man/man1/su.1 create mode 100644 man/man3/getspnam.3 create mode 100644 man/man3/shadow.3 create mode 100644 man/man5/faillog.5 create mode 100644 man/man5/gshadow.5 create mode 100644 man/man5/limits.5 create mode 100644 man/man5/login.access.5 create mode 100644 man/man5/login.defs.5 create mode 100644 man/man5/passwd.5 create mode 100644 man/man5/porttime.5 create mode 100644 man/man5/shadow.5 create mode 100644 man/man5/suauth.5 create mode 100644 man/man5/subgid.5 create mode 100644 man/man5/subuid.5 create mode 100644 man/man8/chgpasswd.8 create mode 100644 man/man8/chpasswd.8 create mode 100644 man/man8/faillog.8 create mode 100644 man/man8/groupadd.8 create mode 100644 man/man8/groupdel.8 create mode 100644 man/man8/groupmems.8 create mode 100644 man/man8/groupmod.8 create mode 100644 man/man8/grpck.8 create mode 100644 man/man8/grpconv.8 create mode 100644 man/man8/grpunconv.8 create mode 100644 man/man8/lastlog.8 create mode 100644 man/man8/logoutd.8 create mode 100644 man/man8/newusers.8 create mode 100644 man/man8/nologin.8 create mode 100644 man/man8/pwck.8 create mode 100644 man/man8/pwconv.8 create mode 100644 man/man8/pwunconv.8 create mode 100644 man/man8/sulogin.8 create mode 100644 man/man8/useradd.8 create mode 100644 man/man8/userdel.8 create mode 100644 man/man8/usermod.8 create mode 100644 man/man8/vigr.8 create mode 100644 man/man8/vipw.8 create mode 100644 man/pl/Makefile.in create mode 100644 man/pl/man1/chage.1 create mode 100644 man/pl/man1/chsh.1 create mode 100644 man/pl/man1/expiry.1 create mode 100644 man/pl/man1/groups.1 create mode 100644 man/pl/man1/id.1 create mode 100644 man/pl/man1/newgrp.1 create mode 100644 man/pl/man1/sg.1 create mode 100644 man/pl/man3/getspnam.3 create mode 100644 man/pl/man3/shadow.3 create mode 100644 man/pl/man5/faillog.5 create mode 100644 man/pl/man5/porttime.5 create mode 100644 man/pl/man8/faillog.8 create mode 100644 man/pl/man8/groupadd.8 create mode 100644 man/pl/man8/groupdel.8 create mode 100644 man/pl/man8/groupmems.8 create mode 100644 man/pl/man8/groupmod.8 create mode 100644 man/pl/man8/grpck.8 create mode 100644 man/pl/man8/lastlog.8 create mode 100644 man/pl/man8/logoutd.8 create mode 100644 man/pl/man8/userdel.8 create mode 100644 man/pl/man8/usermod.8 create mode 100644 man/pl/man8/vigr.8 create mode 100644 man/pl/man8/vipw.8 create mode 100644 man/po/stamp-po create mode 100644 man/pt_BR/Makefile.in create mode 100644 man/ru/Makefile.in create mode 100644 man/ru/man1/chage.1 create mode 100644 man/ru/man1/chfn.1 create mode 100644 man/ru/man1/chsh.1 create mode 100644 man/ru/man1/expiry.1 create mode 100644 man/ru/man1/gpasswd.1 create mode 100644 man/ru/man1/groups.1 create mode 100644 man/ru/man1/id.1 create mode 100644 man/ru/man1/login.1 create mode 100644 man/ru/man1/newgrp.1 create mode 100644 man/ru/man1/passwd.1 create mode 100644 man/ru/man1/sg.1 create mode 100644 man/ru/man1/su.1 create mode 100644 man/ru/man3/getspnam.3 create mode 100644 man/ru/man3/shadow.3 create mode 100644 man/ru/man5/faillog.5 create mode 100644 man/ru/man5/gshadow.5 create mode 100644 man/ru/man5/limits.5 create mode 100644 man/ru/man5/login.access.5 create mode 100644 man/ru/man5/login.defs.5 create mode 100644 man/ru/man5/passwd.5 create mode 100644 man/ru/man5/porttime.5 create mode 100644 man/ru/man5/shadow.5 create mode 100644 man/ru/man5/suauth.5 create mode 100644 man/ru/man8/chgpasswd.8 create mode 100644 man/ru/man8/chpasswd.8 create mode 100644 man/ru/man8/faillog.8 create mode 100644 man/ru/man8/groupadd.8 create mode 100644 man/ru/man8/groupdel.8 create mode 100644 man/ru/man8/groupmems.8 create mode 100644 man/ru/man8/groupmod.8 create mode 100644 man/ru/man8/grpck.8 create mode 100644 man/ru/man8/grpconv.8 create mode 100644 man/ru/man8/grpunconv.8 create mode 100644 man/ru/man8/lastlog.8 create mode 100644 man/ru/man8/logoutd.8 create mode 100644 man/ru/man8/newusers.8 create mode 100644 man/ru/man8/nologin.8 create mode 100644 man/ru/man8/pwck.8 create mode 100644 man/ru/man8/pwconv.8 create mode 100644 man/ru/man8/pwunconv.8 create mode 100644 man/ru/man8/sulogin.8 create mode 100644 man/ru/man8/useradd.8 create mode 100644 man/ru/man8/userdel.8 create mode 100644 man/ru/man8/usermod.8 create mode 100644 man/ru/man8/vigr.8 create mode 100644 man/ru/man8/vipw.8 create mode 100644 man/sv/Makefile.in create mode 100644 man/sv/man1/chage.1 create mode 100644 man/sv/man1/chsh.1 create mode 100644 man/sv/man1/expiry.1 create mode 100644 man/sv/man1/groups.1 create mode 100644 man/sv/man1/id.1 create mode 100644 man/sv/man1/newgrp.1 create mode 100644 man/sv/man1/passwd.1 create mode 100644 man/sv/man1/sg.1 create mode 100644 man/sv/man3/getspnam.3 create mode 100644 man/sv/man3/shadow.3 create mode 100644 man/sv/man5/faillog.5 create mode 100644 man/sv/man5/gshadow.5 create mode 100644 man/sv/man5/limits.5 create mode 100644 man/sv/man5/passwd.5 create mode 100644 man/sv/man5/porttime.5 create mode 100644 man/sv/man5/suauth.5 create mode 100644 man/sv/man8/faillog.8 create mode 100644 man/sv/man8/groupadd.8 create mode 100644 man/sv/man8/groupdel.8 create mode 100644 man/sv/man8/groupmems.8 create mode 100644 man/sv/man8/groupmod.8 create mode 100644 man/sv/man8/grpck.8 create mode 100644 man/sv/man8/lastlog.8 create mode 100644 man/sv/man8/logoutd.8 create mode 100644 man/sv/man8/nologin.8 create mode 100644 man/sv/man8/pwck.8 create mode 100644 man/sv/man8/userdel.8 create mode 100644 man/sv/man8/vigr.8 create mode 100644 man/sv/man8/vipw.8 create mode 100644 man/tr/Makefile.in delete mode 100644 man/useradd.8.xml~ create mode 100644 man/zh_CN/Makefile.in create mode 100644 man/zh_CN/man1/chage.1 create mode 100644 man/zh_CN/man1/chfn.1 create mode 100644 man/zh_CN/man1/chsh.1 create mode 100644 man/zh_CN/man1/expiry.1 create mode 100644 man/zh_CN/man1/gpasswd.1 create mode 100644 man/zh_CN/man1/groups.1 create mode 100644 man/zh_CN/man1/id.1 create mode 100644 man/zh_CN/man1/login.1 create mode 100644 man/zh_CN/man1/newgrp.1 create mode 100644 man/zh_CN/man1/passwd.1 create mode 100644 man/zh_CN/man1/sg.1 create mode 100644 man/zh_CN/man1/su.1 create mode 100644 man/zh_CN/man3/getspnam.3 create mode 100644 man/zh_CN/man3/shadow.3 create mode 100644 man/zh_CN/man5/faillog.5 create mode 100644 man/zh_CN/man5/gshadow.5 create mode 100644 man/zh_CN/man5/limits.5 create mode 100644 man/zh_CN/man5/login.access.5 create mode 100644 man/zh_CN/man5/login.defs.5 create mode 100644 man/zh_CN/man5/passwd.5 create mode 100644 man/zh_CN/man5/porttime.5 create mode 100644 man/zh_CN/man5/shadow.5 create mode 100644 man/zh_CN/man5/suauth.5 create mode 100644 man/zh_CN/man8/chgpasswd.8 create mode 100644 man/zh_CN/man8/chpasswd.8 create mode 100644 man/zh_CN/man8/faillog.8 create mode 100644 man/zh_CN/man8/groupadd.8 create mode 100644 man/zh_CN/man8/groupdel.8 create mode 100644 man/zh_CN/man8/groupmems.8 create mode 100644 man/zh_CN/man8/groupmod.8 create mode 100644 man/zh_CN/man8/grpck.8 create mode 100644 man/zh_CN/man8/grpconv.8 create mode 100644 man/zh_CN/man8/grpunconv.8 create mode 100644 man/zh_CN/man8/lastlog.8 create mode 100644 man/zh_CN/man8/logoutd.8 create mode 100644 man/zh_CN/man8/newusers.8 create mode 100644 man/zh_CN/man8/nologin.8 create mode 100644 man/zh_CN/man8/pwck.8 create mode 100644 man/zh_CN/man8/pwconv.8 create mode 100644 man/zh_CN/man8/pwunconv.8 create mode 100644 man/zh_CN/man8/sulogin.8 create mode 100644 man/zh_CN/man8/useradd.8 create mode 100644 man/zh_CN/man8/userdel.8 create mode 100644 man/zh_CN/man8/usermod.8 create mode 100644 man/zh_CN/man8/vigr.8 create mode 100644 man/zh_CN/man8/vipw.8 create mode 100644 man/zh_TW/Makefile.in create mode 100755 missing create mode 100644 po/Makefile.in.in create mode 100644 po/Rules-quot create mode 100644 po/boldquot.sed create mode 100644 po/bs.gmo create mode 100644 po/ca.gmo create mode 100644 po/cs.gmo create mode 100644 po/da.gmo create mode 100644 po/de.gmo create mode 100644 po/dz.gmo create mode 100644 po/el.gmo create mode 100644 po/en@boldquot.header create mode 100644 po/en@quot.header create mode 100644 po/es.gmo create mode 100644 po/eu.gmo create mode 100644 po/fi.gmo create mode 100644 po/fr.gmo create mode 100644 po/gl.gmo create mode 100644 po/he.gmo create mode 100644 po/hu.gmo create mode 100644 po/id.gmo create mode 100644 po/insert-header.sin create mode 100644 po/it.gmo create mode 100644 po/ja.gmo create mode 100644 po/kk.gmo create mode 100644 po/km.gmo create mode 100644 po/ko.gmo create mode 100644 po/nb.gmo create mode 100644 po/ne.gmo create mode 100644 po/nl.gmo create mode 100644 po/nn.gmo create mode 100644 po/pl.gmo create mode 100644 po/pt.gmo create mode 100644 po/pt_BR.gmo create mode 100644 po/quot.sed create mode 100644 po/remove-potcdate.sin create mode 100644 po/ro.gmo create mode 100644 po/ru.gmo create mode 100644 po/sk.gmo create mode 100644 po/sq.gmo create mode 100644 po/stamp-po delete mode 100644 po/stats create mode 100644 po/sv.gmo create mode 100644 po/tl.gmo create mode 100644 po/tr.gmo create mode 100644 po/uk.gmo create mode 100644 po/vi.gmo create mode 100644 po/zh_CN.gmo create mode 100644 po/zh_TW.gmo delete mode 100644 src/.gitignore create mode 100644 src/Makefile.in create mode 100755 ylwrap diff --git a/.gitignore b/.gitignore deleted file mode 100644 index 4a1f96e2..00000000 --- a/.gitignore +++ /dev/null @@ -1,47 +0,0 @@ -*~ -lib*.a -*.o -*.lo -*.la -*.gmo -.deps -.libs - -*.patch -*.rej -*.orig - -Makefile -Makefile.in - -/ABOUT-NLS -/aclocal.m4 -/autom4te.cache -/config.guess -/config.h -/config.h.in -/config.log -/config.rpath -/config.status -/config.sub -/configure -/depcomp -/install-sh -/libtool -/ltmain.sh -/m4 -/missing -/stamp-h1 -/ylwrap - -/po/*.header -/po/*.sed -/po/*.sin -/po/Makefile.in.in -/po/Makevars.template -/po/POTFILES -/po/Rules-quot -/po/stamp-po - -/shadow.spec -/libmisc/getdate.c diff --git a/ABOUT-NLS b/ABOUT-NLS new file mode 100644 index 00000000..ec20977e --- /dev/null +++ b/ABOUT-NLS @@ -0,0 +1,1101 @@ +1 Notes on the Free Translation Project +*************************************** + +Free software is going international! The Free Translation Project is +a way to get maintainers of free software, translators, and users all +together, so that free software will gradually become able to speak many +languages. A few packages already provide translations for their +messages. + + If you found this `ABOUT-NLS' file inside a distribution, you may +assume that the distributed package does use GNU `gettext' internally, +itself available at your nearest GNU archive site. But you do _not_ +need to install GNU `gettext' prior to configuring, installing or using +this package with messages translated. + + Installers will find here some useful hints. These notes also +explain how users should proceed for getting the programs to use the +available translations. They tell how people wanting to contribute and +work on translations can contact the appropriate team. + + When reporting bugs in the `intl/' directory or bugs which may be +related to internationalization, you should tell about the version of +`gettext' which is used. The information can be found in the +`intl/VERSION' file, in internationalized packages. + +1.1 Quick configuration advice +============================== + +If you want to exploit the full power of internationalization, you +should configure it using + + ./configure --with-included-gettext + +to force usage of internationalizing routines provided within this +package, despite the existence of internationalizing capabilities in the +operating system where this package is being installed. So far, only +the `gettext' implementation in the GNU C library version 2 provides as +many features (such as locale alias, message inheritance, automatic +charset conversion or plural form handling) as the implementation here. +It is also not possible to offer this additional functionality on top +of a `catgets' implementation. Future versions of GNU `gettext' will +very likely convey even more functionality. So it might be a good idea +to change to GNU `gettext' as soon as possible. + + So you need _not_ provide this option if you are using GNU libc 2 or +you have installed a recent copy of the GNU gettext package with the +included `libintl'. + +1.2 INSTALL Matters +=================== + +Some packages are "localizable" when properly installed; the programs +they contain can be made to speak your own native language. Most such +packages use GNU `gettext'. Other packages have their own ways to +internationalization, predating GNU `gettext'. + + By default, this package will be installed to allow translation of +messages. It will automatically detect whether the system already +provides the GNU `gettext' functions. If not, the included GNU +`gettext' library will be used. This library is wholly contained +within this package, usually in the `intl/' subdirectory, so prior +installation of the GNU `gettext' package is _not_ required. +Installers may use special options at configuration time for changing +the default behaviour. The commands: + + ./configure --with-included-gettext + ./configure --disable-nls + +will, respectively, bypass any pre-existing `gettext' to use the +internationalizing routines provided within this package, or else, +_totally_ disable translation of messages. + + When you already have GNU `gettext' installed on your system and run +configure without an option for your new package, `configure' will +probably detect the previously built and installed `libintl.a' file and +will decide to use this. This might not be desirable. You should use +the more recent version of the GNU `gettext' library. I.e. if the file +`intl/VERSION' shows that the library which comes with this package is +more recent, you should use + + ./configure --with-included-gettext + +to prevent auto-detection. + + The configuration process will not test for the `catgets' function +and therefore it will not be used. The reason is that even an +emulation of `gettext' on top of `catgets' could not provide all the +extensions of the GNU `gettext' library. + + Internationalized packages usually have many `po/LL.po' files, where +LL gives an ISO 639 two-letter code identifying the language. Unless +translations have been forbidden at `configure' time by using the +`--disable-nls' switch, all available translations are installed +together with the package. However, the environment variable `LINGUAS' +may be set, prior to configuration, to limit the installed set. +`LINGUAS' should then contain a space separated list of two-letter +codes, stating which languages are allowed. + +1.3 Using This Package +====================== + +As a user, if your language has been installed for this package, you +only have to set the `LANG' environment variable to the appropriate +`LL_CC' combination. Here `LL' is an ISO 639 two-letter language code, +and `CC' is an ISO 3166 two-letter country code. For example, let's +suppose that you speak German and live in Germany. At the shell +prompt, merely execute `setenv LANG de_DE' (in `csh'), +`export LANG; LANG=de_DE' (in `sh') or `export LANG=de_DE' (in `bash'). +This can be done from your `.login' or `.profile' file, once and for +all. + + You might think that the country code specification is redundant. +But in fact, some languages have dialects in different countries. For +example, `de_AT' is used for Austria, and `pt_BR' for Brazil. The +country code serves to distinguish the dialects. + + The locale naming convention of `LL_CC', with `LL' denoting the +language and `CC' denoting the country, is the one use on systems based +on GNU libc. On other systems, some variations of this scheme are +used, such as `LL' or `LL_CC.ENCODING'. You can get the list of +locales supported by your system for your language by running the +command `locale -a | grep '^LL''. + + Not all programs have translations for all languages. By default, an +English message is shown in place of a nonexistent translation. If you +understand other languages, you can set up a priority list of languages. +This is done through a different environment variable, called +`LANGUAGE'. GNU `gettext' gives preference to `LANGUAGE' over `LANG' +for the purpose of message handling, but you still need to have `LANG' +set to the primary language; this is required by other parts of the +system libraries. For example, some Swedish users who would rather +read translations in German than English for when Swedish is not +available, set `LANGUAGE' to `sv:de' while leaving `LANG' to `sv_SE'. + + Special advice for Norwegian users: The language code for Norwegian +bokma*l changed from `no' to `nb' recently (in 2003). During the +transition period, while some message catalogs for this language are +installed under `nb' and some older ones under `no', it's recommended +for Norwegian users to set `LANGUAGE' to `nb:no' so that both newer and +older translations are used. + + In the `LANGUAGE' environment variable, but not in the `LANG' +environment variable, `LL_CC' combinations can be abbreviated as `LL' +to denote the language's main dialect. For example, `de' is equivalent +to `de_DE' (German as spoken in Germany), and `pt' to `pt_PT' +(Portuguese as spoken in Portugal) in this context. + +1.4 Translating Teams +===================== + +For the Free Translation Project to be a success, we need interested +people who like their own language and write it well, and who are also +able to synergize with other translators speaking the same language. +Each translation team has its own mailing list. The up-to-date list of +teams can be found at the Free Translation Project's homepage, +`http://www.iro.umontreal.ca/contrib/po/HTML/', in the "National teams" +area. + + If you'd like to volunteer to _work_ at translating messages, you +should become a member of the translating team for your own language. +The subscribing address is _not_ the same as the list itself, it has +`-request' appended. For example, speakers of Swedish can send a +message to `sv-request@li.org', having this message body: + + subscribe + + Keep in mind that team members are expected to participate +_actively_ in translations, or at solving translational difficulties, +rather than merely lurking around. If your team does not exist yet and +you want to start one, or if you are unsure about what to do or how to +get started, please write to `translation@iro.umontreal.ca' to reach the +coordinator for all translator teams. + + The English team is special. It works at improving and uniformizing +the terminology in use. Proven linguistic skills are praised more than +programming skills, here. + +1.5 Available Packages +====================== + +Languages are not equally supported in all packages. The following +matrix shows the current state of internationalization, as of October +2006. The matrix shows, in regard of each package, for which languages +PO files have been submitted to translation coordination, with a +translation percentage of at least 50%. + + Ready PO files af am ar az be bg bs ca cs cy da de el en en_GB eo + +----------------------------------------------------+ + GNUnet | [] | + a2ps | [] [] [] [] [] | + aegis | () | + ant-phone | () | + anubis | [] | + ap-utils | | + aspell | [] [] [] [] [] | + bash | [] [] [] | + batchelor | [] | + bfd | | + bibshelf | [] | + binutils | [] | + bison | [] [] | + bison-runtime | | + bluez-pin | [] [] [] [] [] | + cflow | [] | + clisp | [] [] | + console-tools | [] [] | + coreutils | [] [] [] | + cpio | | + cpplib | [] [] [] | + cryptonit | [] | + darkstat | [] () [] | + dialog | [] [] [] [] [] [] | + diffutils | [] [] [] [] [] [] | + doodle | [] | + e2fsprogs | [] [] | + enscript | [] [] [] [] | + error | [] [] [] [] | + fetchmail | [] [] () [] | + fileutils | [] [] | + findutils | [] [] [] | + flex | [] [] [] | + fslint | [] | + gas | | + gawk | [] [] [] | + gbiff | [] | + gcal | [] | + gcc | [] | + gettext-examples | [] [] [] [] [] | + gettext-runtime | [] [] [] [] [] | + gettext-tools | [] [] | + gimp-print | [] [] [] [] | + gip | [] | + gliv | [] | + glunarclock | [] | + gmult | [] [] | + gnubiff | () | + gnucash | () () [] | + gnucash-glossary | [] () | + gnuedu | | + gnulib | [] [] [] [] [] [] | + gnunet-gtk | | + gnutls | | + gpe-aerial | [] [] | + gpe-beam | [] [] | + gpe-calendar | | + gpe-clock | [] [] | + gpe-conf | [] [] | + gpe-contacts | | + gpe-edit | [] | + gpe-filemanager | | + gpe-go | [] | + gpe-login | [] [] | + gpe-ownerinfo | [] [] | + gpe-package | | + gpe-sketchbook | [] [] | + gpe-su | [] [] | + gpe-taskmanager | [] [] | + gpe-timesheet | [] | + gpe-today | [] [] | + gpe-todo | | + gphoto2 | [] [] [] [] | + gprof | [] [] | + gpsdrive | () () | + gramadoir | [] [] | + grep | [] [] [] [] [] [] | + gretl | | + gsasl | | + gss | | + gst-plugins | [] [] [] [] | + gst-plugins-base | [] [] [] | + gst-plugins-good | [] [] [] [] [] [] [] | + gstreamer | [] [] [] [] [] [] [] | + gtick | () | + gtkam | [] [] [] | + gtkorphan | [] [] | + gtkspell | [] [] [] [] | + gutenprint | [] | + hello | [] [] [] [] [] | + id-utils | [] [] | + impost | | + indent | [] [] [] | + iso_3166 | [] [] | + iso_3166_2 | | + iso_4217 | [] | + iso_639 | [] [] | + jpilot | [] | + jtag | | + jwhois | | + kbd | [] [] [] [] | + keytouch | | + keytouch-editor | | + keytouch-keyboa... | | + latrine | () | + ld | [] | + leafpad | [] [] [] [] [] | + libc | [] [] [] [] [] | + libexif | [] | + libextractor | [] | + libgpewidget | [] [] [] | + libgpg-error | [] | + libgphoto2 | [] [] | + libgphoto2_port | [] [] | + libgsasl | | + libiconv | [] [] | + libidn | [] [] | + lifelines | [] () | + lilypond | [] | + lingoteach | | + lynx | [] [] [] [] | + m4 | [] [] [] [] | + mailutils | [] | + make | [] [] | + man-db | [] () [] [] | + minicom | [] [] [] | + mysecretdiary | [] [] | + nano | [] [] [] | + nano_1_0 | [] () [] [] | + opcodes | [] | + parted | | + pilot-qof | [] | + psmisc | [] | + pwdutils | | + python | | + qof | | + radius | [] | + recode | [] [] [] [] [] [] | + rpm | [] [] | + screem | | + scrollkeeper | [] [] [] [] [] [] [] [] | + sed | [] [] [] | + sh-utils | [] [] | + shared-mime-info | [] [] [] [] | + sharutils | [] [] [] [] [] [] | + shishi | | + silky | | + skencil | [] () | + sketch | [] () | + solfege | | + soundtracker | [] [] | + sp | [] | + stardict | [] | + system-tools-ba... | [] [] [] [] [] [] [] [] [] | + tar | [] | + texinfo | [] [] [] | + textutils | [] [] [] | + tin | () () | + tp-robot | [] | + tuxpaint | [] [] [] [] [] | + unicode-han-tra... | | + unicode-transla... | | + util-linux | [] [] [] [] | + vorbis-tools | [] [] [] [] | + wastesedge | () | + wdiff | [] [] [] [] | + wget | [] [] | + xchat | [] [] [] [] [] [] | + xkeyboard-config | | + xpad | [] [] | + +----------------------------------------------------+ + af am ar az be bg bs ca cs cy da de el en en_GB eo + 10 0 1 2 9 22 1 42 41 2 60 95 16 1 17 16 + + es et eu fa fi fr ga gl gu he hi hr hu id is it + +--------------------------------------------------+ + GNUnet | | + a2ps | [] [] [] () | + aegis | | + ant-phone | [] | + anubis | [] | + ap-utils | [] [] | + aspell | [] [] [] | + bash | [] [] [] | + batchelor | [] [] | + bfd | [] | + bibshelf | [] [] [] | + binutils | [] [] [] | + bison | [] [] [] [] [] [] | + bison-runtime | [] [] [] [] [] | + bluez-pin | [] [] [] [] [] | + cflow | [] | + clisp | [] [] | + console-tools | | + coreutils | [] [] [] [] [] [] | + cpio | [] [] [] | + cpplib | [] [] | + cryptonit | [] | + darkstat | [] () [] [] [] | + dialog | [] [] [] [] [] [] [] [] | + diffutils | [] [] [] [] [] [] [] [] [] | + doodle | [] [] | + e2fsprogs | [] [] [] | + enscript | [] [] [] | + error | [] [] [] [] [] | + fetchmail | [] | + fileutils | [] [] [] [] [] [] | + findutils | [] [] [] [] | + flex | [] [] [] | + fslint | [] | + gas | [] [] | + gawk | [] [] [] [] | + gbiff | [] | + gcal | [] [] | + gcc | [] | + gettext-examples | [] [] [] [] [] [] | + gettext-runtime | [] [] [] [] [] [] | + gettext-tools | [] [] [] | + gimp-print | [] [] | + gip | [] [] [] | + gliv | () | + glunarclock | [] [] [] | + gmult | [] [] [] | + gnubiff | () () | + gnucash | () () () | + gnucash-glossary | [] [] | + gnuedu | [] | + gnulib | [] [] [] [] [] [] [] [] | + gnunet-gtk | | + gnutls | | + gpe-aerial | [] [] | + gpe-beam | [] [] | + gpe-calendar | | + gpe-clock | [] [] [] [] | + gpe-conf | [] | + gpe-contacts | [] [] | + gpe-edit | [] [] [] [] | + gpe-filemanager | [] | + gpe-go | [] [] [] | + gpe-login | [] [] [] | + gpe-ownerinfo | [] [] [] [] [] | + gpe-package | [] | + gpe-sketchbook | [] [] | + gpe-su | [] [] [] [] | + gpe-taskmanager | [] [] [] | + gpe-timesheet | [] [] [] [] | + gpe-today | [] [] [] [] | + gpe-todo | [] | + gphoto2 | [] [] [] [] [] | + gprof | [] [] [] [] | + gpsdrive | () () [] () | + gramadoir | [] [] | + grep | [] [] [] [] [] [] [] [] [] [] [] [] | + gretl | [] [] [] | + gsasl | [] [] | + gss | [] | + gst-plugins | [] [] [] | + gst-plugins-base | [] [] | + gst-plugins-good | [] [] [] | + gstreamer | [] [] [] | + gtick | [] | + gtkam | [] [] [] [] | + gtkorphan | [] [] | + gtkspell | [] [] [] [] [] [] | + gutenprint | [] | + hello | [] [] [] [] [] [] [] [] [] [] [] [] [] | + id-utils | [] [] [] [] [] | + impost | [] [] | + indent | [] [] [] [] [] [] [] [] [] [] | + iso_3166 | [] [] [] | + iso_3166_2 | [] | + iso_4217 | [] [] [] [] | + iso_639 | [] [] [] [] [] | + jpilot | [] [] | + jtag | [] | + jwhois | [] [] [] [] [] | + kbd | [] [] | + keytouch | [] | + keytouch-editor | [] | + keytouch-keyboa... | [] | + latrine | [] [] [] | + ld | [] [] | + leafpad | [] [] [] [] [] [] | + libc | [] [] [] [] [] | + libexif | [] | + libextractor | [] | + libgpewidget | [] [] [] [] [] | + libgpg-error | | + libgphoto2 | [] [] [] | + libgphoto2_port | [] [] | + libgsasl | [] [] | + libiconv | [] [] | + libidn | [] [] | + lifelines | () | + lilypond | [] | + lingoteach | [] [] [] | + lynx | [] [] [] | + m4 | [] [] [] [] | + mailutils | [] [] | + make | [] [] [] [] [] [] [] [] | + man-db | () | + minicom | [] [] [] [] | + mysecretdiary | [] [] [] | + nano | [] [] [] [] [] [] | + nano_1_0 | [] [] [] [] [] | + opcodes | [] [] [] [] | + parted | [] [] [] [] | + pilot-qof | | + psmisc | [] [] [] | + pwdutils | | + python | | + qof | [] | + radius | [] [] | + recode | [] [] [] [] [] [] [] [] | + rpm | [] [] | + screem | | + scrollkeeper | [] [] [] | + sed | [] [] [] [] [] | + sh-utils | [] [] [] [] [] [] [] | + shared-mime-info | [] [] [] [] [] [] | + sharutils | [] [] [] [] [] [] [] [] | + shishi | | + silky | [] | + skencil | [] [] | + sketch | [] [] | + solfege | [] | + soundtracker | [] [] [] | + sp | [] | + stardict | [] | + system-tools-ba... | [] [] [] [] [] [] [] [] | + tar | [] [] [] [] [] [] [] | + texinfo | [] [] | + textutils | [] [] [] [] [] | + tin | [] () | + tp-robot | [] [] [] [] | + tuxpaint | [] [] | + unicode-han-tra... | | + unicode-transla... | [] [] | + util-linux | [] [] [] [] [] [] [] | + vorbis-tools | [] [] | + wastesedge | () | + wdiff | [] [] [] [] [] [] [] [] | + wget | [] [] [] [] [] [] [] [] | + xchat | [] [] [] [] [] [] [] [] | + xkeyboard-config | [] [] [] [] | + xpad | [] [] [] | + +--------------------------------------------------+ + es et eu fa fi fr ga gl gu he hi hr hu id is it + 88 22 14 2 40 115 61 14 1 8 1 6 59 31 0 52 + + ja ko ku ky lg lt lv mk mn ms mt nb ne nl nn no + +-------------------------------------------------+ + GNUnet | | + a2ps | () [] [] () | + aegis | () | + ant-phone | [] | + anubis | [] [] [] | + ap-utils | [] | + aspell | [] [] | + bash | [] | + batchelor | [] [] | + bfd | | + bibshelf | [] | + binutils | | + bison | [] [] [] | + bison-runtime | [] [] [] | + bluez-pin | [] [] [] | + cflow | | + clisp | [] | + console-tools | | + coreutils | [] | + cpio | | + cpplib | [] | + cryptonit | [] | + darkstat | [] [] | + dialog | [] [] | + diffutils | [] [] [] | + doodle | | + e2fsprogs | [] | + enscript | [] | + error | [] | + fetchmail | [] [] | + fileutils | [] [] | + findutils | [] | + flex | [] [] | + fslint | [] [] | + gas | | + gawk | [] [] | + gbiff | [] | + gcal | | + gcc | | + gettext-examples | [] [] | + gettext-runtime | [] [] [] | + gettext-tools | [] [] | + gimp-print | [] [] | + gip | [] [] | + gliv | [] | + glunarclock | [] [] | + gmult | [] [] | + gnubiff | | + gnucash | () () | + gnucash-glossary | [] | + gnuedu | | + gnulib | [] [] [] [] | + gnunet-gtk | | + gnutls | | + gpe-aerial | [] | + gpe-beam | [] | + gpe-calendar | [] | + gpe-clock | [] [] [] | + gpe-conf | [] [] | + gpe-contacts | [] | + gpe-edit | [] [] [] | + gpe-filemanager | [] [] | + gpe-go | [] [] [] | + gpe-login | [] [] [] | + gpe-ownerinfo | [] [] | + gpe-package | [] [] | + gpe-sketchbook | [] [] | + gpe-su | [] [] [] | + gpe-taskmanager | [] [] [] [] | + gpe-timesheet | [] | + gpe-today | [] [] | + gpe-todo | [] | + gphoto2 | [] [] | + gprof | | + gpsdrive | () () () | + gramadoir | () | + grep | [] [] [] [] | + gretl | | + gsasl | [] | + gss | | + gst-plugins | [] | + gst-plugins-base | | + gst-plugins-good | [] | + gstreamer | [] | + gtick | | + gtkam | [] | + gtkorphan | [] | + gtkspell | [] [] | + gutenprint | | + hello | [] [] [] [] [] [] | + id-utils | [] | + impost | | + indent | [] [] | + iso_3166 | [] | + iso_3166_2 | [] | + iso_4217 | [] [] [] | + iso_639 | [] [] | + jpilot | () () () | + jtag | | + jwhois | [] | + kbd | [] | + keytouch | [] | + keytouch-editor | | + keytouch-keyboa... | | + latrine | [] | + ld | | + leafpad | [] [] | + libc | [] [] [] [] [] | + libexif | | + libextractor | | + libgpewidget | [] | + libgpg-error | | + libgphoto2 | [] | + libgphoto2_port | [] | + libgsasl | [] | + libiconv | | + libidn | [] [] | + lifelines | [] | + lilypond | | + lingoteach | [] | + lynx | [] [] | + m4 | [] [] | + mailutils | | + make | [] [] [] | + man-db | () | + minicom | [] | + mysecretdiary | [] | + nano | [] [] [] | + nano_1_0 | [] [] [] | + opcodes | [] | + parted | [] [] | + pilot-qof | | + psmisc | [] [] [] | + pwdutils | | + python | | + qof | | + radius | | + recode | [] | + rpm | [] [] | + screem | [] | + scrollkeeper | [] [] [] [] | + sed | [] [] | + sh-utils | [] [] | + shared-mime-info | [] [] [] [] [] | + sharutils | [] [] | + shishi | | + silky | [] | + skencil | | + sketch | | + solfege | | + soundtracker | | + sp | () | + stardict | [] [] | + system-tools-ba... | [] [] [] [] | + tar | [] [] [] | + texinfo | [] [] [] | + textutils | [] [] [] | + tin | | + tp-robot | [] | + tuxpaint | [] | + unicode-han-tra... | | + unicode-transla... | | + util-linux | [] [] | + vorbis-tools | [] | + wastesedge | [] | + wdiff | [] [] | + wget | [] [] | + xchat | [] [] [] [] | + xkeyboard-config | [] | + xpad | [] [] [] | + +-------------------------------------------------+ + ja ko ku ky lg lt lv mk mn ms mt nb ne nl nn no + 52 24 2 2 1 3 0 2 3 21 0 15 1 97 5 1 + + nso or pa pl pt pt_BR rm ro ru rw sk sl sq sr sv ta + +------------------------------------------------------+ + GNUnet | | + a2ps | () [] [] [] [] [] [] | + aegis | () () | + ant-phone | [] [] | + anubis | [] [] [] | + ap-utils | () | + aspell | [] [] | + bash | [] [] [] | + batchelor | [] [] | + bfd | | + bibshelf | [] | + binutils | [] [] | + bison | [] [] [] [] [] | + bison-runtime | [] [] [] [] | + bluez-pin | [] [] [] [] [] [] [] [] [] | + cflow | [] | + clisp | [] | + console-tools | [] | + coreutils | [] [] [] [] | + cpio | [] [] [] | + cpplib | [] | + cryptonit | [] [] | + darkstat | [] [] [] [] [] [] | + dialog | [] [] [] [] [] [] [] [] [] | + diffutils | [] [] [] [] [] [] | + doodle | [] [] | + e2fsprogs | [] [] | + enscript | [] [] [] [] [] | + error | [] [] [] [] | + fetchmail | [] [] [] | + fileutils | [] [] [] [] [] | + findutils | [] [] [] [] [] [] | + flex | [] [] [] [] [] | + fslint | [] [] [] [] | + gas | | + gawk | [] [] [] [] | + gbiff | [] | + gcal | [] | + gcc | [] | + gettext-examples | [] [] [] [] [] [] [] [] | + gettext-runtime | [] [] [] [] [] [] [] [] | + gettext-tools | [] [] [] [] [] [] [] | + gimp-print | [] [] | + gip | [] [] [] [] | + gliv | [] [] [] [] | + glunarclock | [] [] [] [] [] [] | + gmult | [] [] [] [] | + gnubiff | () | + gnucash | () [] | + gnucash-glossary | [] [] [] | + gnuedu | | + gnulib | [] [] [] [] [] | + gnunet-gtk | [] | + gnutls | [] [] | + gpe-aerial | [] [] [] [] [] [] [] | + gpe-beam | [] [] [] [] [] [] [] | + gpe-calendar | [] | + gpe-clock | [] [] [] [] [] [] [] [] | + gpe-conf | [] [] [] [] [] [] [] | + gpe-contacts | [] [] [] [] [] | + gpe-edit | [] [] [] [] [] [] [] [] | + gpe-filemanager | [] [] | + gpe-go | [] [] [] [] [] [] | + gpe-login | [] [] [] [] [] [] [] [] | + gpe-ownerinfo | [] [] [] [] [] [] [] [] | + gpe-package | [] [] | + gpe-sketchbook | [] [] [] [] [] [] [] [] | + gpe-su | [] [] [] [] [] [] [] [] | + gpe-taskmanager | [] [] [] [] [] [] [] [] | + gpe-timesheet | [] [] [] [] [] [] [] [] | + gpe-today | [] [] [] [] [] [] [] [] | + gpe-todo | [] [] [] [] | + gphoto2 | [] [] [] [] [] | + gprof | [] [] [] | + gpsdrive | [] [] [] | + gramadoir | [] [] | + grep | [] [] [] [] [] [] [] [] | + gretl | [] | + gsasl | [] [] [] | + gss | [] [] [] | + gst-plugins | [] [] [] [] | + gst-plugins-base | [] | + gst-plugins-good | [] [] [] [] | + gstreamer | [] [] [] | + gtick | [] | + gtkam | [] [] [] [] | + gtkorphan | [] | + gtkspell | [] [] [] [] [] [] [] [] | + gutenprint | [] | + hello | [] [] [] [] [] [] [] [] | + id-utils | [] [] [] [] | + impost | [] | + indent | [] [] [] [] [] [] | + iso_3166 | [] [] [] [] [] [] | + iso_3166_2 | | + iso_4217 | [] [] [] [] | + iso_639 | [] [] [] [] | + jpilot | | + jtag | [] | + jwhois | [] [] [] [] | + kbd | [] [] [] | + keytouch | [] | + keytouch-editor | [] | + keytouch-keyboa... | [] | + latrine | [] [] | + ld | [] | + leafpad | [] [] [] [] [] [] | + libc | [] [] [] [] [] | + libexif | [] | + libextractor | [] [] | + libgpewidget | [] [] [] [] [] [] [] | + libgpg-error | [] [] | + libgphoto2 | [] | + libgphoto2_port | [] [] [] | + libgsasl | [] [] [] [] | + libiconv | [] [] | + libidn | [] [] () | + lifelines | [] [] | + lilypond | | + lingoteach | [] | + lynx | [] [] [] | + m4 | [] [] [] [] [] | + mailutils | [] [] [] [] | + make | [] [] [] [] | + man-db | [] [] | + minicom | [] [] [] [] [] | + mysecretdiary | [] [] [] [] | + nano | [] [] [] | + nano_1_0 | [] [] [] [] | + opcodes | [] [] | + parted | [] | + pilot-qof | [] | + psmisc | [] [] | + pwdutils | [] [] | + python | | + qof | [] [] | + radius | [] [] | + recode | [] [] [] [] [] [] [] | + rpm | [] [] [] [] | + screem | | + scrollkeeper | [] [] [] [] [] [] [] | + sed | [] [] [] [] [] [] [] [] [] | + sh-utils | [] [] [] | + shared-mime-info | [] [] [] [] [] | + sharutils | [] [] [] [] | + shishi | [] | + silky | [] | + skencil | [] [] [] | + sketch | [] [] [] | + solfege | [] | + soundtracker | [] [] | + sp | | + stardict | [] [] [] | + system-tools-ba... | [] [] [] [] [] [] [] [] [] | + tar | [] [] [] [] [] | + texinfo | [] [] [] [] | + textutils | [] [] [] | + tin | () | + tp-robot | [] | + tuxpaint | [] [] [] [] [] | + unicode-han-tra... | | + unicode-transla... | | + util-linux | [] [] [] [] | + vorbis-tools | [] [] | + wastesedge | | + wdiff | [] [] [] [] [] [] | + wget | [] [] [] [] | + xchat | [] [] [] [] [] [] [] | + xkeyboard-config | [] [] | + xpad | [] [] [] | + +------------------------------------------------------+ + nso or pa pl pt pt_BR rm ro ru rw sk sl sq sr sv ta + 0 2 3 58 30 54 5 73 72 4 40 46 11 50 128 2 + + tg th tk tr uk ven vi wa xh zh_CN zh_HK zh_TW zu + +---------------------------------------------------+ + GNUnet | [] | 2 + a2ps | [] [] [] | 19 + aegis | | 0 + ant-phone | [] [] | 6 + anubis | [] [] [] | 11 + ap-utils | () [] | 4 + aspell | [] [] [] | 15 + bash | [] | 11 + batchelor | [] [] | 9 + bfd | | 1 + bibshelf | [] | 7 + binutils | [] [] [] | 9 + bison | [] [] [] | 19 + bison-runtime | [] [] [] | 15 + bluez-pin | [] [] [] [] [] [] | 28 + cflow | [] [] | 5 + clisp | | 6 + console-tools | [] [] | 5 + coreutils | [] [] | 16 + cpio | [] [] [] | 9 + cpplib | [] [] [] [] | 11 + cryptonit | | 5 + darkstat | [] () () | 15 + dialog | [] [] [] [] [] | 30 + diffutils | [] [] [] [] | 28 + doodle | [] | 6 + e2fsprogs | [] [] | 10 + enscript | [] [] [] | 16 + error | [] [] [] [] | 18 + fetchmail | [] [] | 12 + fileutils | [] [] [] | 18 + findutils | [] [] [] | 17 + flex | [] [] | 15 + fslint | [] | 9 + gas | [] | 3 + gawk | [] [] | 15 + gbiff | [] | 5 + gcal | [] | 5 + gcc | [] [] [] | 6 + gettext-examples | [] [] [] [] [] [] | 27 + gettext-runtime | [] [] [] [] [] [] | 28 + gettext-tools | [] [] [] [] [] | 19 + gimp-print | [] [] | 12 + gip | [] [] | 12 + gliv | [] [] | 8 + glunarclock | [] [] [] | 15 + gmult | [] [] [] [] | 15 + gnubiff | [] | 1 + gnucash | () | 2 + gnucash-glossary | [] [] | 9 + gnuedu | [] | 2 + gnulib | [] [] [] [] [] | 28 + gnunet-gtk | | 1 + gnutls | | 2 + gpe-aerial | [] [] | 14 + gpe-beam | [] [] | 14 + gpe-calendar | [] | 3 + gpe-clock | [] [] [] [] | 21 + gpe-conf | [] [] | 14 + gpe-contacts | [] [] | 10 + gpe-edit | [] [] [] [] | 20 + gpe-filemanager | [] | 6 + gpe-go | [] [] | 15 + gpe-login | [] [] [] [] [] | 21 + gpe-ownerinfo | [] [] [] [] | 21 + gpe-package | [] | 6 + gpe-sketchbook | [] [] | 16 + gpe-su | [] [] [] | 20 + gpe-taskmanager | [] [] [] | 20 + gpe-timesheet | [] [] [] [] | 18 + gpe-today | [] [] [] [] [] | 21 + gpe-todo | [] | 7 + gphoto2 | [] [] [] [] | 20 + gprof | [] [] | 11 + gpsdrive | | 4 + gramadoir | [] | 7 + grep | [] [] [] [] | 34 + gretl | | 4 + gsasl | [] [] | 8 + gss | [] | 5 + gst-plugins | [] [] [] | 15 + gst-plugins-base | [] [] [] | 9 + gst-plugins-good | [] [] [] [] [] | 20 + gstreamer | [] [] [] | 17 + gtick | [] | 3 + gtkam | [] | 13 + gtkorphan | [] | 7 + gtkspell | [] [] [] [] [] [] | 26 + gutenprint | | 3 + hello | [] [] [] [] [] | 37 + id-utils | [] [] | 14 + impost | [] | 4 + indent | [] [] [] [] | 25 + iso_3166 | [] [] [] [] | 16 + iso_3166_2 | | 2 + iso_4217 | [] [] | 14 + iso_639 | [] | 14 + jpilot | [] [] [] [] | 7 + jtag | [] | 3 + jwhois | [] [] [] | 13 + kbd | [] [] | 12 + keytouch | [] | 4 + keytouch-editor | | 2 + keytouch-keyboa... | [] | 3 + latrine | [] [] | 8 + ld | [] [] [] [] | 8 + leafpad | [] [] [] [] | 23 + libc | [] [] [] | 23 + libexif | [] | 4 + libextractor | [] | 5 + libgpewidget | [] [] [] | 19 + libgpg-error | [] | 4 + libgphoto2 | [] | 8 + libgphoto2_port | [] [] [] | 11 + libgsasl | [] | 8 + libiconv | [] | 7 + libidn | [] [] | 10 + lifelines | | 4 + lilypond | | 2 + lingoteach | [] | 6 + lynx | [] [] [] | 15 + m4 | [] [] [] | 18 + mailutils | [] | 8 + make | [] [] [] | 20 + man-db | [] | 6 + minicom | [] | 14 + mysecretdiary | [] [] | 12 + nano | [] [] | 17 + nano_1_0 | [] [] [] | 18 + opcodes | [] [] | 10 + parted | [] [] [] | 10 + pilot-qof | [] | 3 + psmisc | [] | 10 + pwdutils | [] | 3 + python | | 0 + qof | [] | 4 + radius | [] | 6 + recode | [] [] [] | 25 + rpm | [] [] [] [] | 14 + screem | [] | 2 + scrollkeeper | [] [] [] [] | 26 + sed | [] [] [] | 22 + sh-utils | [] | 15 + shared-mime-info | [] [] [] [] | 24 + sharutils | [] [] [] | 23 + shishi | | 1 + silky | [] | 4 + skencil | [] | 7 + sketch | | 6 + solfege | | 2 + soundtracker | [] [] | 9 + sp | [] | 3 + stardict | [] [] [] [] | 11 + system-tools-ba... | [] [] [] [] [] [] [] | 37 + tar | [] [] [] [] | 20 + texinfo | [] [] [] | 15 + textutils | [] [] [] | 17 + tin | | 1 + tp-robot | [] [] [] | 10 + tuxpaint | [] [] [] | 16 + unicode-han-tra... | | 0 + unicode-transla... | | 2 + util-linux | [] [] [] | 20 + vorbis-tools | [] [] | 11 + wastesedge | | 1 + wdiff | [] [] | 22 + wget | [] [] [] | 19 + xchat | [] [] [] [] | 29 + xkeyboard-config | [] [] [] [] | 11 + xpad | [] [] [] | 14 + +---------------------------------------------------+ + 77 teams tg th tk tr uk ven vi wa xh zh_CN zh_HK zh_TW zu + 170 domains 0 1 1 77 39 0 136 10 1 48 5 54 0 2028 + + Some counters in the preceding matrix are higher than the number of +visible blocks let us expect. This is because a few extra PO files are +used for implementing regional variants of languages, or language +dialects. + + For a PO file in the matrix above to be effective, the package to +which it applies should also have been internationalized and +distributed as such by its maintainer. There might be an observable +lag between the mere existence a PO file and its wide availability in a +distribution. + + If October 2006 seems to be old, you may fetch a more recent copy of +this `ABOUT-NLS' file on most GNU archive sites. The most up-to-date +matrix with full percentage details can be found at +`http://www.iro.umontreal.ca/contrib/po/HTML/matrix.html'. + +1.6 Using `gettext' in new packages +=================================== + +If you are writing a freely available program and want to +internationalize it you are welcome to use GNU `gettext' in your +package. Of course you have to respect the GNU Library General Public +License which covers the use of the GNU `gettext' library. This means +in particular that even non-free programs can use `libintl' as a shared +library, whereas only free software can use `libintl' as a static +library or use modified versions of `libintl'. + + Once the sources are changed appropriately and the setup can handle +the use of `gettext' the only thing missing are the translations. The +Free Translation Project is also available for packages which are not +developed inside the GNU project. Therefore the information given above +applies also for every other Free Software Project. Contact +`translation@iro.umontreal.ca' to make the `.pot' files available to +the translation teams. + diff --git a/ChangeLog.orig b/ChangeLog.orig deleted file mode 100644 index 1b90ceea..00000000 --- a/ChangeLog.orig +++ /dev/null @@ -1,14622 +0,0 @@ -2012-05-20 Christian Perrier - - * configure.in: Prepare for next point release 4.2. - * if using the static char* for pw_dir, strdup it so - pw_free() can be used. (Closes: Debian#691459) - * Kill the child process group, rather than just the - immediate child; this is needed now that su no - longer starts a controlling terminal when not running an - interactive shell (closes: Debian#713979) - Thansk to Colin Watson for the patch. - -2012-05-25 Nicolas François - - * NEWS: Set release date. - * man/po/shadow-man-pages.pot: Regenerated. - * man/po/*.po: Updated PO files. - -2012-05-25 Nicolas François - - * man/*.xml: Add author based on copyright statement. - * man//*.[1358], man//man[1358]/*.[1358], - man//Makefile.am: Sort manpages per section as the generated - manpages. - -2012-05-20 Nicolas François - - * po/shadow.pot, man/po/shadow-man-pages.pot: Regenerated. - * po/*.po, man/po/*.po: Updated PO files. - -2012-05-20 Nicolas François - - * man/Makefile.am, man/generate_mans.mak: Update clean targets, - due to the generation in separate sub folders. - -2012-05-20 Nicolas François - - * man/su.1.xml: Document author to avoid warnings during - generation. This needs to be rolled out to other manpages. - * man/generate_mans.mak: Do not add a AUTHOR section in the man - pages. - -2012-05-20 Nicolas François - - * src/su.c: non PAM enabled versions: do not fail if su is called - without a controlling terminal. Ignore ENXIO errors when opening - /dev/tty. - -2012-05-20 Nicolas François - - * src/useradd.c: Cleanup, return code 13 no more used. - * man/useradd.8.xml: Document return code 14, and remove return - code 13. - -2012-05-20 Nicolas François - - * NEWS, man/generate_mans.mak: Generate manpages in man1, man3, - man5, man8 subdirectories. This fix the generation of .so links - which did not point to a path relative to the top-level manual - hierarchy. - * man/generate_mans.mak: Update man paths accordingly. - * man/Makefile.am: Likewise. - * man/da/Makefile.am: Likewise. - * man/de/Makefile.am: Likewise. - * man/fr/Makefile.am: Likewise. - * man/it/Makefile.am: Likewise. - * man/pl/Makefile.am: Likewise. - * man/ru/Makefile.am: Likewise. - * man/sv/Makefile.am: Likewise. - * man/zh_CN/Makefile.am: Likewise. - -2012-05-20 Nicolas François - - * configure.in: Prepare for next point release 4.1.5.1. - -2012-05-19 Nitin A Kamble - - * configure.in: Remove deprecated AM_C_PROTOTYPES (no more - supported in automake 1.12). - -2012-05-18 Nicolas François - - * src/useradd.c: Keep the default file as much as possible to - avoid issue in case of crash. Use link instead of rename. - -2012-05-18 Peter Vrabec - - * lib/commonio.c: Fix labeling of /etc/{passwd,shadow,group,gshadow}. - It will basically label them with same context as - /etc/{passwd+,shadow+,group+,gshadow+} - -2012-05-18 Nicolas François - - * src/pwunconv.c: Do not check spw_close() return value (file is - opened readonly). - * src/grpunconv.c: Do not check sgr_close() return value (file is - opened readonly). - -2012-05-18 Nicolas François - - * NEWS, src/userdel.c: Fix segfault when userdel removes the - user's group. - -2012-05-17 Nicolas François - - * NEWS, src/login.c: Log in utmp / utmpx / wtmp also when PAM is - enabled. This is not done by pam_lastlog. This was broken on - 2011-07-23. - * NEWS, libmisc/utmp.c: Do not log in wtmp when PAM is enabled. - This is done by pam_lastlog. - -2012-05-17 Christian Perrier - - * man/po/fr.po: French translation of manpages completed - -2012-05-17 Simon Brandmair - - * man/po/de.po: German translation of manpages completed - -2012-02-12 Nicolas François - - * NEWS: New placeholder for the next release (4.1.5.1 expected) - -2012-04-15 Robert Luberda - - * man/po/pl.po: Complete translation of logoutd(8) in Polish. - -2012-02-13 Mike Frysinger - - * src/passwd.c: (non PAM flavour) Report permission denied when - access to /etc/shadow fails with EACCES. - -2012-02-13 Mike Frysinger - - * lib/nscd.c: Add missing newline to error message. - * lib/nscd.c: If nscd is installed but not in use, then running - `nscd -i` will exit(1). We shouldn't warn in this case since this - is not abnormal behavior. - -2012-02-13 Mike Frysinger - - * man/.gitignore: Add generate_mans.deps - -2012-02-13 Mike Frysinger - - * man/grpck.8.xml: Relocate space. - -2012-02-13 Mike Frysinger - - * libmisc/copydir.c: Add missing #include - -2012-02-12 Nicolas François - - * NEWS: Set release date. - -2012-02-12 Nicolas François - - * po/shadow.pot, man/po/shadow-man-pages.pot: Regenerated. - * po/*.po, man/po/*.po: Updated PO files. - -2012-02-11 Giuseppe Sacco - - * man/po/it.po: Updated after review. - -2012-02-11 Nicolas François - - * man/it/Makefile.am: Activate all manpages. - * man/po/it.po: Fix formal issues (end of lines). - -2012-02-11 Giuseppe Sacco - - * man/po/it.po: Updated to 1173t. - -2012-01-30 Nicolas François - - * man/useradd.8.xml, man/su.1.xml, man/po/da.po, man/po/ru.po, - man/po/fr.po, man/po/de.po, man/po/sv.po, man/po/pl.po, - man/po/it.po, man/po/shadow-man-pages.pot, man/po/zh_CN.po: Fix - two typos. Thanks to Giuseppe Sacco. Unfuzzy translations - * po/kk.po, po/nb.po, po/el.po, po/ca.po, po/ja.po: Re-generate. - * man/login.defs.d/ENV_PATH.xml, man/login.defs.d/ENV_SUPATH.xml: - Fix typo. - -2012-01-28 Innocent De Marchi - - * po/ca.po: Updated to 557t. - -2012-01-28 Nicolas François - - * NEWS, configure.in, man/da/Makefile.am, man/Makefile.am: Build - manpages with more than 50% translated messages. - * man/fr/Makefile.am: Add missing manpages: chgpasswd.8, - groupmems.8, nologin.8, sulogin.8. - * man/de/Makefile.am: Add missing manpages: chage.1, chgpasswd.8, - chpasswd.8, expiry.1, faillog.5, faillog.8, getspnam.3, gpasswd.1, - groupadd.8, groupdel.8, groupmems.8, groupmod.8, grpck.8, - grpconv.8, grpunconv.8, gshadow.5, lastlog.8, login.defs.5, - logoutd.8, newusers.8, nologin.8, pwck.8, pwconv.8, pwunconv.8, - sg.1, shadow.3, shadow.5, suauth.5, useradd.8, userdel.8, - usermod.8, limits.5, login.access.5, porttime.5, id.1, sulogin.8 - * man/zh_CN/Makefile.am: Add missing manpages: chgpasswd.8, - groupmems.8, nologin.8, sulogin.8 - * man/pl/Makefile.am, man/sv/Makefile.am, man/it/Makefile.am: - Translate only manpages with more than 50% translated messages. - * man/po/da.po: Do not translate names of manpages (newusers, - limits, groups) - -2012-01-28 Yuri Kozlov - - * man/po/ru.po: Updated to 1173t. - -2012-01-27 Thomas Blein - - * po/fr.po: Updated to 557t. - * man/po/fr.po: Updated to 1173t. - -2012-01-26 Joe Hansen - - * po/da.po: Updated to 557t. - * man/po/da.po: Updated to 294t879u. - -2012-01-23 Thomas Vasileiou - - * po/el.po: Updated to 553t. - -2012-01-22 Baurzhan Muftakhidinov - - * po/kk.po: Updated to 557t. - -2012-01-21 Miguel Figueiredo - - * po/pt.po: Updated to 557t. - -2012-01-19 Holger Wansing - - * po/de.po: Updated to 557t. - -2012-01-18 Bjørn Steensrud - - * po/nb.po: Updated to 557t. Thanks also to Hans Fredrik Nordhaug. - -2012-01-16 NAKANO Takeo - - * po/ja.po: Updated to 557t - -2012-01-16 Simon Brandmair - - * man/po/de.po: Updated to 1173t. - -2012-01-14 YunQiang Su - - * po/zh_CN.po: Updated to 551t2f4u - * man/po/zh_CN.po: Updated to 1026t15f132u - -2012-01-09 Yuri Kozlov - - * po/ru.po: Updated to 557t. - -2012-01-09 Nicolas François - - * po/shadow.pot, man/po/shadow-man-pages.pot: Regenerated. - * po/*.po, man/po/*.po: Updated PO files. - -2012-01-08 Nicolas François - - * lib/prototypes.h: Cleanup. - * lib/selinux.c, lib/semanage.c: prototypes.h was not included. - -2011-12-09 Peter Vrabec - - * lib/prototypes.h, lib/Makefile.am, po/POTFILES.in, - libmisc/copydir.c, lib/selinux.c: Move set_selinux_file_context() - and reset_selinux_file_context() from libmisc/copydir.c to - lib/selinux.c. - * lib/commonio.c: Use set_selinux_file_context() and - reset_selinux_file_context() instead of using the existing - database SELinux context to set the context for the newly created - files. - -2011-12-09 Nicolas François - - * src/vipw.c: Do not use a hardcoded program name in the usage - message. - -2011-12-04 Nicolas François - - * po/ca.po, po/cs.po, po/da.po, po/de.po, po/es.po, po/eu.po, - po/fr.po, po/ja.po, po/kk.po, po/pt.po, po/pt_BR.po, po/ru.po, - po/sk.po, po/sv.po, po/vi.po, po/zh_CN.po: Quick unfuzzy. - -2011-12-09 Nicolas François - - * src/newusers.c, src/chpasswd.c, src/chgpasswd.c: Harmonize - usage messages. - -2011-12-09 Nicolas François - - * lib/Makefile.am, lib/prototypes.h, lib/selinux.c, - lib/semanage.c, po/POTFILES.in: Move lib/selinux.c to - lib/semanage.c. - -2011-11-21 Nicolas François - - * src/usermod.c, man/usermod.8.xml: usermod -Z "" removes the - SELinux user mapping for the modified user. - * src/useradd.c: Zflg is #defined as user_selinux non empty. - -2011-11-21 Peter Vrabec - - * libmisc/copydir.c: Ignore errors to copy ACLs if the operation - is not supported. - -2011-11-19 Nicolas François - - * libmisc/root_flag.c, src/gpasswd.c, src/chsh.c: Add splint - annotations. - * src/pwconv.c, src/pwunconv.c, src/grpconv.c, src/grpunconv.c: - Ignore return value of spw_rewind, pw_rewind, sgr_rewind, and - gr_rewind. - * lib/commonio.h: Both head and tail cannot be owned. Set tail as - dependent. - * src/expiry.c: Ignore return value of expire (). - * src/expiry.c: The catch_signals function does not use its sig - parameter. - * src/userdel.c: Last audit_logger parameter is a - shadow_audit_result, use SHADOW_AUDIT_FAILURE instead of 0. - * lib/selinux.c: vasprintf requires _GNU_SOURCE to be defined - before including stdio.h. - * src/chage.c: Cast 3rd date_to_str parameter to a time_t - * src/passwd.c: Add missing cast. - * lib/commonio.c: Avoid multiple statements per line. - * lib/commonio.c: Ignore fclose return value when the file was - open read only or was not changed, or if an error is already - reported. - -2011-11-19 Nicolas François - - * src/faillog.c: The fail_max field is a short, use a short also - for the max argument of setmax / setmax_one. - * src/faillog.c: Fail with an error message when faillog fails to - write to the faillog database. - -2011-11-19 Nicolas François - - * man/gpasswd.1.xml: Document the difference between the -r and -R - options. - -2011-11-19 Nicolas François - - * man/useradd.8.xml, man/groupadd.8.xml, man/usermod.8.xml, - man/groupmod.8.xml: Avoid hardcoded values, and reference instead - the configuration options (e.g. UID_MIN) - * man/groupmod.8.xml, man/usermod.8.xml: Add missing reference to - login.defs - * man/login.defs.d/UID_MAX.xml, man/login.defs.d/SYS_UID_MAX.xml, - man/login.defs.d/GID_MAX.xml, man/login.defs.d/SYS_GID_MAX.xml: - Document the default values. - -2011-11-19 Nicolas François - - * src/gpasswd.c: Change of group password enforces gshadow - password. Set /etc/group password to "x". - -2011-11-16 Peter Vrabec - - * NEWS, src/userdel.c, man/userdel.8.xml: Add option -Z/--selinux-user. - * libmisc/system.c, lib/prototypes.h, libmisc/Makefile.am: Removed - safe_system(). - * lib/selinux.c, po/POTFILES.in, lib/prototypes.h, - lib/Makefile.am: Added helper functions for semanage. - * NEWS, README, src/useradd.c, src/usermod.c, src/userdel.c, - configure.in: Use libsemanage instead of semanage. - -2011-11-16 Peter Vrabec - - * src/Makefile.am: useradd may need the LIBATTR library. - -2011-11-16 Peter Vrabec - - * libmisc/copydir.c: Ignore perm_copy_file() errors with errno set - to ENOTSUP. - -2011-11-16 Nicolas François - - * src/useradd.c: Compilation fix when SHADOWGRP is not enabled. - * libmisc/root_flag.c: Add missing #include - -2011-11-13 Nicolas François - - * po/shadow.pot, man/po/shadow-man-pages.pot: Regenerated. - * po/*.po, man/po/*.po: Updated PO files. - -2011-11-12 Nicolas François - - * src/chage.c, src/chfn.c, src/chgpasswd.c, src/chpasswd.c, - src/chsh.c, src/groupadd.c, src/groupdel.c, src/groupmems.c, - src/groupmod.c, src/newusers.c, src/useradd.c, src/userdel.c, - src/usermod.c: Provide the PAM error - message instead of our own, and log error to syslog. - * src/groupmems.c: Exit with exit rather than fail_exit in usage(). - * src/newusers.c: Check the number of arguments. - * src/newusers.c: Do not create the home directory when it is not - changed. - * src/useradd.c: Set the group password to "!" rather "x" if there - are no gshadow file. - -2011-11-11 Nicolas François - - * src/pwck.c: Removed pw_opened. - * src/pwck.c: optind cannot be greater than argc. - * src/pwck.c: If spw_opened, then is_shadow is implicitly set. - * src/pwck.c: Do not report passwd entry without x password and a - shadow entry in --quiet mode (no interaction with the caller) - * src/pwck.c: Do not check if the last password change is in the - future if the time is set to 0. - -2011-11-11 Nicolas François - - * libmisc/root_flag.c: Drop privileges before changing root. The - --root option should not be used by regular users for suid utils. - * libmisc/root_flag.c: Improve error messages. - -2011-11-11 Nicolas François - - * src/pwck.c: Compile fix for TCB. - -2011-11-11 Nicolas François - - * libmisc/copydir.c: Avoid conflict with glibc. Rename error to - error_acl. - -2011-11-11 Nicolas François - - * man/newusers.8.xml: Document the optional file argument. - * man/newusers.8.xml: Fix the documentation of the inputs' format. - -2011-11-06 Nicolas François - - * man/groupmod.8.xml: Document that the primary group of users may - be changed by groupmod -g. - -2011-11-06 Nicolas François - - * NEWS, src/newusers.c, man/newusers.8.xml: Add --root option. - -2011-11-06 Nicolas François - - * src/vipw.c: Remove unused variable a. - -2011-11-06 Nicolas François - - * man/generate_mans.mak: The xml-config files do not depend on the - Makefile. - -2011-10-31 Nicolas François - - * src/chage.c, src/chgpasswd.c, src/chpasswd.c, src/chsh.c, - src/faillog.c, src/gpasswd.c, src/groupadd.c, src/groupdel.c, - src/groupmems.c, src/groupmod.c, src/grpconv.c, src/grpunconv.c, - src/lastlog.c, src/newusers.c, src/passwd.c, src/pwconv.c, - src/pwunconv.c, src/su.c, src/useradd.c, src/userdel.c, - src/usermod.c, src/vipw.c: Align and sort options. - -2011-10-31 Nicolas François - - * NEWS, src/pwck.c, man/pwck.8.xm, src/grpck.c, man/grpck.8.xml: - Add --root option. - -2011-10-31 Nicolas François - - * man/limits.5.xml, libmisc/limits.c: Sort limit identifiers. - * libmisc/limits.c: Fix support for the K limit identifier. - * libmisc/limits.c: Add missing default limit for L and U. - -2011-10-31 Nicolas François - - * src/pwck.c, man/pwck.8.xml: Add support for long options. - * src/pwck.c, man/pwck.8.xml: Add -h/--help option - * src/grpck.c, man/grpck.8.xml: Add support for long options. - * src/grpck.c, man/grpck.8.xml: Add -h/--help option - -2011-10-30 Nicolas François - - * src/expiry.c, man/expiry.1.xml: Add support for long options. - * src/expiry.c, man/expiry.1.xml: Add -h/--help option - -2011-10-30 Nicolas François - - * src/chfn.c, man/chfn.1.xml: Add support for long options. - * src/chfn.c, man/chfn.1.xml: Add -u/--help option - * NEWS, src/chfn.c, man/chfn.1.xml: Add --root option. - -2011-10-30 Nicolas François - - * NEWS, src/vipw.c, man/vipw.8.xml: Add --root option. - -2011-10-30 Nicolas François - - * NEWS, src/faillog.c, man/faillog.8.xml: Add --root option. - * NEWS, src/lastlog.c, man/lastlog.8.xml: Likewise. - * src/faillog.c: Add Prog variable, and prefix error messages with - Prog rather than "faillog". - * src/lastlog.c: Likewise. - * src/lastlog.c: Split usage in smaller messages. - -2011-10-30 Nicolas François - - * NEWS, src/chage.c, man/chage.1.xml: Add --root option. Open - audit and syslog after the potential chroot. chage's usage split - in smaller messages. - -2011-10-30 Nicolas François - - * src/login.c: re-indent. - * src/login.c: Fix support for sub-logins. - -2011-10-30 Nicolas François - - * src/faillog.c, src/chage.c, src/newusers.c, src/su.c: The getopt - index of long options is not used. - -2011-10-29 Nicolas François - - * lib/prototypes.h, libmisc/Makefile.am, libmisc/root_flag.c, - po/POTFILES.in: Add process_root_flag() to process the --root - option and chroot so that the chroot config is used and changes - are applied to the chroot. - * NEWS, src/useradd.c, man/useradd.8.xml: Add --root option. Open - audit after the potential chroot. - * NEWS, src/userdel.c, man/userdel.8.xml: Add --root option. Open - audit and syslog after the potential chroot. userdel's usage split - in smaller messages. - * NEWS, src/usermod.c, man/usermod.8.xml: Likewise - * NEWS, src/groupadd.c, man/groupadd.8.xml: Add --root option. Open - audit and syslog after the potential chroot. - * src/groupadd.c: Check atexit failures. - * src/groupadd.c: Return E_SUCCESS instead of exit'ing at the end - of main(). - * NEWS, src/groupadd.c, man/groupadd.8.xml: Add --root option. Open - audit and syslog after the potential chroot. - * src/groupmod.c: The getopt index of long options is not used. - * src/groupdel.c: Add process_flags(). - * src/groupdel.c, man/groupdel.8.xml: Add --help option. - * NEWS, src/groupdel.c, man/groupdel.8.xml: Add --root option. Open - audit and syslog after the potential chroot. - * src/groupdel.c: Check atexit failures. - * NEWS, src/pwconv.c, src/pwunconv.c, src/grpconv.c, - src/grpunconv.c, man/pwconv.8.xml: Add --root option. - * src/pwconv.c, src/pwunconv.c, src/grpconv.c, src/grpunconv.c: - Add --help option. - * src/pwconv.c, src/pwunconv.c, src/grpconv.c, src/grpunconv.c: - Add process_flags() and usage(). - * NEWS, src/chpasswd.c, man/chpasswd.8.xml, src/chgpasswd.c, - man/chgpasswd.8.xml: Add --root option. - * src/chpasswd.c, src/chgpasswd.c: The getopt index of long - options is not used. - * NEWS, src/passwd.c, man/passwd.1.xml: Add --root option. - passwd's usage split in smaller messages. - * src/passwd.c: Call sanitize_env() before setting the locales. - * NEWS, src/groupmems.c, man/groupmems.8.xml: Add --root option. - Open syslog after the potential chroot. - * src/groupmems.c: The getopt index of long options is not used. - * NEWS, src/chsh.c, man/chsh.1.xml: Add --root option. - chsh's usage split in smaller messages. - * src/chsh.c: The getopt index of long options is not used. - * NEWS, src/gpasswd.c, man/gpasswd.1.xml: Add --root option. - * src/gpasswd.c: The getopt index of long options is not used. - -2011-10-22 Nicolas François - - * man/ja/Makefile.am, man/fr/Makefile.am, man/ru/Makefile.am, - man/sv/Makefile.am, man/pl/Makefile.am, man/zh_CN/Makefile.am, - man/it/Makefile.am, man/Makefile.am: Include man_nopam in - EXTRA_DIST only when USE_PAM (they are already in man_MANS - otherwise). - -2011-10-22 Nicolas François - - * man/su.1.xml: Document that su -c does not providea controlling - terminal. - -2011-10-18 Nicolas François - - * src/newusers.c: Fix typo. - * src/useradd.c: Likewise. - * lib/nscd.c: Remove unused variable. - * lib/prototypes.h, libmisc/cleanup.c, lib/spawn.c, src/chage.c: - Add splint annotations. - * src/sulogin.c (main): env is only used when USE_PAM is not set. - -2011-10-15 Nicolas François - - * man/login.defs.d/LOGIN_STRING.xml: Fix typo. - -2011-09-18 Nicolas François - - * lib/prototypes, libmisc/basename.c (Basename): Input is a - constant string. - * lib/prototypes.h, lib/spawn.h, lib/spawn.c, src/userdel.c, - lib/nscd.c, lib/Makefile.am: Delete spawn.h. Move from spawn.h to - prototypes.h. - * src/userdel.c: Remove unused variables. - * lib/nscd.c: Remove unused header files. - * lib/nscd.c: Add the program name to error messages. - * lib/nscd.c: Indicate when nscd does not terminate normally (signal). - * lib/spawn.c: Updated header. - * lib/spawn.c: Flush stdout and stderr to avoid inheriting from - ongoing buffers. - * lib/spawn.c: Avoid implicit conversion of pointer to boolean. - * lib/spawn.c: Replace perror by a complete message. - * lib/spawn.c: Continue to wait for the child if another child - terminates. - * lib/prototypes.h: The name field from cleanup_info_mod is a - constant string. (username). - -2011-09-18 Nicolas François - - * libmisc/cleanup.c: Spawn children should no trigger cleanup - actions. Make sure only the parent (initial caller) perform the - cleanup actions. - -2011-09-18 Nicolas François - - * libmisc/salt.c (SHA_salt_rounds): It is statically ensured that - the format fits in rounds_prefix. - * libmisc/loginprompt.c: Likewise. - -2011-09-18 Nicolas François - - * src/grpconv.c: Fail if not called correctly. - * src/grpconv.c: At the end of main, the passwd and shadow files - are locked. No need to check before unlocking. No need to set the - lock as false neither since there cannot be anymore failures. - -2011-09-18 Nicolas François - - * src/chage.c: EPOCH is not needed, it's converted to -1 by - strtoday(). But we need to support "-1" specifically. - * src/chage.c: Fix usage: LOGIN is mandatory. - * src/chage.c: Display disabled expiry or last change as "-1" - instead of 1969-12-31. 1969-12-31 is still supported as input from - the user. - * src/chage.c: Exit cleanly with fail_exit() (lock files were not - removed). - -2011-09-18 Nicolas François - - * src/useradd.c: Remove def_file. It was always set to - USER_DEFAULTS_FILE. - * src/useradd.c: Fix cut&paste issue causing bad warning when - the useradd.default file contains an invalid INACTIVE= value. - * src/useradd.c: Added missing end of line for rename errors. - * src/useradd.c: Added -D synopsis to the usage message. - * src/useradd.c: Do not scale_age(-1), just use -1. - * src/useradd.c: Added FIXME to be fixed later. - * src/useradd.c: Allow -e -1 when there is no shadow file. - * src/useradd.c: Fail, but do not print the usage message when the - -e argument is not valid. - * src/useradd.c: No need to check for oflg since uflg is - already checked. - -2011-09-18 Nicolas François - - * src/su.c: Too much const were added on 2011-08-15. pw in - save_caller_context() is allocated and freed. - * src/su.c: Added missing #endif indication - * src/su.c (save_caller_context): password only needed if - SU_ACCESS and !USE_PAM. - -2011-09-18 Nicolas François - - * src/usermod.c: date_to_str() is always called with negativ set - to "never", remove this argument. - * src/usermod.c: Added missing cast for gr_free argument. - -2011-09-18 Nicolas François - - * src/pwconv.c: Fail if not called correctly. - * src/pwconv.c: At the end of main, the passwd and shadow files - are locked. No need to check before unlocking. - -2011-09-18 Nicolas François - - * src/newusers.c: Initially set the passwd's password to '*' - instead of 'x'. Only when it is confirmed that a shadow entry is - (will be) added, set the passwd's password to 'x'. - * src/newusers.c: An invalid line is an error. A failure needs to - be reported. - -2011-09-18 Nicolas François - - * src/gpasswd.c: Remove log_gpasswd_success_gshadow(). Writing in - gshadow is the last sub-task. - -2011-09-18 Nicolas François - - * src/chsh.c: No needto remove lines tarting with '#' from - /etc/shells. This is already done by getusershell() and these - shell would fail the access(X_OK) test. - -2011-09-18 Nicolas François - - * man/generate_mans.mak: Fix the generation of translated man - pages. xml2po removed the comment from empty headers and the - config was no more inserted. - -2011-09-18 Nicolas François - - * man/chage.1.xml: The LOGIN argument is not optional. - * man/login.defs.d/QUOTAS_ENAB.xml: Document the dependency - between /etc/limits and QUOTAS_ENAB. - -2011-08-20 Nicolas François - - * po/POTFILES.in: Added lib/spawn.c. - -2011-08-20 Jonathan Nieder - - * lib/Makefile.am: Added lib/spawn.c and lib/spawn.h. - * lib/nscd.c, lib/spawn.c, lib/spawn.h: It is not possible to - differentiate between an nscd failure, and a failure to execute - due to no nscd with posix_spawn. Use our own run_command routine. - * src/userdel.c: Use run_command() - -2011-08-15 Nicolas François - - * src/groupmod.c: Ignore return value from snprintf. - * src/groupmod.c: Add static qualifier to the cleanup structures. - * src/groupmod.c: Check atexit failures. - -2011-08-15 Nicolas François - - * src/usermod.c: Do not assign static to NULL. - * src/usermod.c (date_to_str): buf needs to be unique (e.g. - independent from negativ), and is an out buffer. - * src/usermod.c: Ignore return value from snprintf, and force - nul-termination of buffer. - * src/usermod.c: Improve memory management. - * src/usermod.c: An audit bloc was not reachable, moved above on - success to move the home directory. - * src/usermod.c: Ignore close() return value for the mailbox - (opened read only). - -2011-08-15 Nicolas François - - * src/su.c: Added const modifiers. - * lib/prototypes: Synchronize splint annotations. - -2011-08-14 Nicolas François - - * src/su.c: Add splint annotations. - * src/su.c: Set caller_on_console as boolean. - * src/su.c: Ignore return value from fputs (usage) / puts (prompt). - * src/su.c: Improved memory management. - -2011-08-14 Nicolas François - - * src/chgpasswd.c, src/chpasswd.c, src/newusers.c: Replace cflg by - a test on crypt_method. - -2011-08-14 Nicolas François - - * libmisc/chowndir.c: Add splint annotations. - * src/chgpasswd.c: Likewise. - * src/chpasswd.c: Likewise. - * src/newusers.c: Likewise. - * libmisc/salt.c, lib/prototypes.h (crypt_make_salt): Likewise. - -2011-08-14 Nicolas François - - * lib/gshadow_.h: Fix typo in comment. - -2011-08-14 Nicolas François - - * lib/prototypes.h, libmisc/getgr_nam_gid.c: getgr_nam_gid() - returns an allocated structure. - -2011-08-14 Nicolas François - - * src/su.c: Add annotations to indicate that su_failure() does - not return. - -2011-07-30 Nicolas François - - * lib/commonio.c: Display PID as unsigned long. - -2011-07-30 Nicolas François - - * src/useradd.c: Remove unused Zflg. - -2011-07-30 Nicolas François - - * src/chgpasswd.c: Fix typo sp -> sg. sg_namp -> sg_name - * src/chgpasswd.c: Always update the group file when SHADOWGRP is - not enabled. - -2011-07-30 Nicolas François - - * src/newgrp.c: Fix typo in notreached annotation. - -2011-07-30 Nicolas François - - * src/usermod.c: Add annotations to indicate that fail_exit() does - not return. - * src/usermod.c: Fix typo in notreached annotation. - -2011-07-30 Nicolas François - - * libmisc/find_new_uid.c: free (used_uids) on return. - * libmisc/find_new_gid.c: free (used_gids) on return. - -2011-07-28 Nicolas François - - * lib/commonio.c: Fix NIS commit from 2011-07-14. - -2011-07-28 Nicolas François - - * NEWS, src/chpasswd.c: Create a shadow entry if the password is - set to 'x' in passwd and there are no entry in shadow for the - user. - * NEWS, src/chgpasswd.c: Create a gshadow entry if the password is - set to 'x' in group and there are no entry in gshadow for the - group. - -2011-07-28 Nicolas François - - * src/pwunconv.c: Exit after printing usage when arguments or - options are provided. - * src/pwunconv.c: Re-indent. - * src/pwunconv.c: Open the shadow file read only. - * src/grpunconv.c: Exit after printing usage when arguments or - options are provided. - * src/grpunconv.c: Open the gshadow file read only. - -2011-07-28 Nicolas François - - * src/chgpasswd.c: Fix typo. - -2011-07-23 Nicolas François - - * NEWS, src/login.c: Do not log in utmp / utmpx / wtmp when PAM is - enabled. This is already done by pam_lastlog. Note that - pam_lastlog can only log the parent PID, not the PID of the - process forked by login. - -2011-07-23 Nicolas François - - * src/chpasswd.c: Add annotations to indicate that usage() does - not return. - * src/chpasswd.c: Reindent. - * src/chpasswd.c: Remove dead code. No need to set crypt_method - to NULL when it is already NULL. sflg is only set if crypt_method - is not NULL. - -2011-07-23 Nicolas François - - * src/lastlog.c: Add annotations to indicate that usage() does not - return. - -2011-07-23 Nicolas François - - * src/faillog.c: Add annotations to indicate that usage() does not - return. - * src/faillog.c: Fix message: this is faillog, not lastlog. - * src/faillog.c: Check that there are no extra arguments after - parsing the options. - -2011-07-23 Nicolas François - - * src/chgpasswd.c: Add annotations to indicate that usage() does - not return. - * src/chgpasswd.c: Split usage in smaller parts. Those parts are - already translated for chpasswd. Usage is now closer to - chpasswd's. - * src/chgpasswd.c: Remove dead code. No need to set crypt_method - to NULL when it is already NULL. sflg is only set if crypt_method - is not NULL. - -2011-07-23 Nicolas François - - * src/expiry.c: Remove dead code. - * src/expiry.c: Improve comments. - -2011-07-23 Nicolas François - - * src/grpck.c: Added comments. - * src/grpck.c: Avoid implicit conversion of pointer to boolean. - * src/grpck.c: Remove dead code. argc cannot be lower than optind. - Avoid checking twice in a row for NULL != list[i]. - -2011-07-22 Nicolas François - - * libmisc/find_new_gid.c, libmisc/find_new_uid.c: Fail in case of - invalid configuration. - * libmisc/find_new_gid.c, libmisc/find_new_uid.c: Updated - comments. - * libmisc/find_new_gid.c, libmisc/find_new_uid.c: Be more strict - on the loop stop conditions. Stop if we passed the limit, even if - the limit itself was never noticed. - -2011-07-14 Nicolas François - - * man/po/fr.po: Fix some spacing issues due to configuration - variants. - -2011-07-14 Nicolas François - - * src/passwd.c: Overflow when computing the number of days based - on the scaling. Use of long long needed. - -2011-07-14 Nicolas François - - * NEWS, lib/commonio.h, lib/commonio.c: Additional messages to - indicate why locking failed. - * NEWS, lib/commonio.c: Fix the sort algorithm in case of NIS. NIS - entries were dropped. - * lib/commonio.c: NIS entries can start by '+' or '-'. - -2011-07-14 Nicolas François - - * NEWS, src/groupmod.c: When the gshadow file exists but there are - no gshadow entries, an entry is created if the password is changed - and group requires a shadow entry. - -2011-07-14 Nicolas François - - * src/usermod.c: Fix typo in comment. - * src/usermod.c (move_home): It is always an error to use -m if - the new home directory already exist (independently from the - existence of the old home directory did not exist) - * src/usermod.c (process_flags): Report usage if no options are - provided. Update the error message. - * src/usermod.c (process_flags): Check option compatibility and - dependency before options are discarded when no changes are - requested. - * src/usermod.c (process_flags): Check for oflg is not needed to - check if changes are needed. - * src/usermod.c: usage() does not return. Add annotations. - * src/usermod.c (update_gshadow): is_member was computed twice. - * src/usermod.c (update_group, update_gshadow): Reduce complexity - and document checks. Some checks were always true/false within - their call context. - * NEWS, src/usermod.c; man/usermod.8.xml: When the shadow file - exists but there are no shadow entries, an entry has to be created - if the password is changed and passwd requires a shadow entry, or - if aging features are used (-e or -f). Document this and also that - -e and -f require a shadow file. - * man/usermod.8.xml: Document behavior of an empty EXPIRE_DATE. - * man/usermod.8.xml: Document that the mail spool might have to be - renamed (as for the homedir) - * src/usermod.c (new_pwent): Document that pw_locate will not fail - because getpwnam returned successfully. - * src/usermod.c (process_flags): Do not display the usage in case - of an invalid -f value (similar to -e). - * src/usermod.c (process_flags): Indicate that the user name is - invalid, instead of just a 'field'. - -2011-07-08 Nicolas François - - * src/groupadd.c: Fix typo in comment. - * src/userdel.c: Fix typo from 2011-06-04. Report failure on the - mailfile instead of user_home. - * lib/fields.c: Fixed typo from 2010-02-15. field instead of cp - ought to be checked. - * src/vipw.c: Use Prog instead of progname. This is needed since - Prog is used in the library. - * configure.in: Fix typo. libcrack default is 'no'. - * src/groupmod.c: Avoid implicit conversion of pointer to boolean. - * src/groupmod.c: osgrp can be set only if pflg || nflg. No need - to check for pflg || nflg again - -2011-07-08 Nicolas François - - * man/*.xml, man/config.xml.in: Add source and version - information. This reduce the amount of warnings during the - manpages generation. - -2011-06-25 Nicolas François - - * man/passwd.1.xml: Added reference to chpasswd(8). - * man/po/ru.po: Add space between option and argument. - -2011-06-16 Francisco Javier Cuadrado - - * po/es.po: Spanish translation - -2011-06-16 Nicolas François - - * libmisc/isexpired.c: Added parenthesis. - * libmisc/env.c: Added comments. - * libmisc/env.c: Avoid implicit conversion of pointer to boolean. - -2011-06-16 Nicolas François - - * src/su.c: environ is provided by . - * src/su.c: Added function prototypes. - * src/su.c: Rename shellstr parameter to shellname to avoid - collision with static variable. - * NEWS, src/su.c: Added support for PAM modules which change - PAM_USER. - -2011-06-13 Nicolas François - - * src/su.c (prepare_pam_close_session): Extract the creation of a - child and listening for signal in the parent from run_shell(). - prepare_pam_close_session() is now executed before the creation of - the pam session and before the UID is changed. This allows to - close the session as root. - * src/su.c: Also drop the controlling terminal when PAM is not - used. - * src/su.c: Remove run_shell(). - * src/su.c: After prepare_pam_close_session() there is no need to - close the session in the child. Added pam_setcred to - prepare_pam_close_session(). - -2011-06-12 Nicolas François - - * src/su.c (save_caller_context): Extract from main() the code - used to save the caller's context. - * src/su.c: Split check_perms() in to a PAM (check_perms_pam) and - a non-PAM (check_perms_nopam) version. - * src/su.c: Cleanup check_perms_nopam(). - * src/su.c: Merge environment setting blocks after the creation of - the session. - * src/su.c: Close the password databases together with syslog. - * src/su.c: Extract command line processing from main(). - * src/su.c: Extract export of environment from main(). - -2011-06-10 Nicolas François - - * src/su.c: Group some of the environment processing blocks. The - definition of shellstr, PATH and IFS is not influenced (getenv, - getdef, restricted_shell) by and does not influence (addenv does - not change environ) the authentication. And the authentication - did not overwrite those definitions. This will ease an extraction - from the big main() function. - * src/su.c: Move definition of change_environment and shellstr - after the switch to the final subsystem. The previous architecture - forced to always change the environment (the shell starts with a - '*' and was thus restricted, and change_environment could not be - reset to false). - * src/su.c: No need to change the user's shell in case of - subsystem root. Update the comments. - * src/su.c: Define shellstr before the environment so that - restricted_shell is called only once. This will allow moving the - environment definition after the switch to the new user. - * src/su.c: Extract the authentication from the main function. - * lib/prototypes.h, src/suauth.c, src/su.c (check_su_auth): Do not - use the pwent global variable to communicate between APIs of - different files. Added boolean parameter su_to_root to - check_su_auth(). - * src/su.c (check_perms): Return the passwd entry of the finally - authenticated user. Remove usage of the pwent variable. - * src/su.c: The password of the caller is the one from the - spwd structure only if the passwd's password is 'x'. - * src/su.c: Cleanup local variables. - -2011-06-10 Nicolas François - - * src/su.c: Updating pwent after expire() is not useful. Only the - password information may have changed and they are not used - anymore afterwards. - * src/su.c: No need to call expire() if there are no shadow entry. - No need to convert a passwd entry into an spwd entry in that case. - -2011-06-12 Thomas Blein - - * man/po/fr.po: French manpages translation - -2011-06-05 Nicolas François - - * NEWS, src/su.c: Do not forward the controlling terminal to - commands executed with -c. This prevents tty hijacking which could - lead to execution with the caller's privileges. This required to - forward signals from the terminal (SIGINT, SIGQUIT, SIGTSTP) to - the executed command. - -2011-06-05 Nicolas François - - * NEWS, src/userdel.c: Do not remove a group with the same name as - the user (usergroup) if this group isn't the user's primary group. - -2011-06-04 Nicolas François - - * NEWS, src/userdel.c: Check the existence of the user's mail - spool before trying to remove it. If it does not exist, a warning - is issued, but no failure. - -2011-06-03 Nicolas François - - * src/sulogin.c: Added Prog, needed because of the last xmalloc() - change. - -2011-06-03 Nicolas François - - * man/zh_CN/, man/zh_CN/Makefile.am: Added directory, and zh_CN - Makefile. - * man/Makefile.am: Build zh_CN pages. - * man/generate_translations.mak: Add config.xml to CLEANFILES. - * man/po/zh_CN.po: limits, groups, faillog, expiry should not be - translated (command name, file name), also this broke the build - system as they are used to derive manpage names. - -2011-06-02 Peter Vrabec - - * src/lastlog.c, src/faillog.c: Fix underflows causing wrong entry - to be displayed. - -2011-06-02 Nicolas François - - * libmisc/xmalloc.c: Harmonize message. - -2011-06-02 Peter Vrabec - - * libmisc/find_new_uid.c, libmisc/find_new_gid.c: Add missing - memory allocation check. - -2011-06-02 Cal Peake - - * NEWS, libmisc/addgrps.c: Fix allocator loop. Continue to - getgroups() when getgroups fails (-1) with errno==EINVAL. - -2011-06-01 Simon Brandmair - - * man/newusers.8.xml, man/suauth.5.xml, man/suauth.5.xml, - man/logoutd.8.xml, man/chgpasswd.8.xml, man/groups.1.xml, - man/faillog.5.xml, man/login.defs.d/MD5_CRYPT_ENAB.xml, - man/login.defs.d/DEFAULT_HOME.xml, - man/login.defs.d/LOGIN_RETRIES.xml, - man/login.defs.d/MD5_CRYPT_ENAB.xml, - man/login.defs.d/PORTTIME_CHECKS_ENAB.xml, - man/login.defs.d/SHA_CRYPT_MIN_ROUNDS.xml: - Fix typos - * man/po/de.po: German translation of manpages completed - -2011-05-23 Innocent De Marchi - - * po/ca.po: Catalan translation completed - -2011-04-22 Miguel Figueiredo - - * po/pt.po: Portuguese translation completed - -2011-04-22 Thomas Blein - - * po/fr.po: French translation completed - -2011-04-16 Holger Wansing - - * po/de.po: German translation completed - -2011-04-15 Fred Maranhão - - * po/pt_BR.po: Brazilian Portuguese translation completed - -2011-04-10 Yuri Kozlov - - * po/ru.po: Russian translation completed - -2011-04-07 Daniel Nylander - - * po/sv.po: Swedish translation completed - -2011-04-07 Joe Dalton - - * po/da.po: Danish translation completed - -2011-04-05 Timur Birsh - - * po/kk.po: Kazakh translation completed - -2011-04-05 NAKANO Takeo - - * po/ja.po: Japanese translation completed - -2011-03-30 YunQiang Su - - * man/po/zh_CN.po: convert Simplified Chinese translation - of manpages to gettext - * po/zh_CN.po: Simplified Chinese translation completed - -2010-02-15 Nicolas François - - * man/ru/Makefile.am: Remove double inclusion of $(man_nopam) - -2010-02-15 Nicolas François - - * libmisc/user_busy.c, src/userdel.c, src/usermod.c: Warn in - user_busy() rather than in src/userdel.c or src/usermod.c to - provide more accurate failure cause (user is logged in or user - still executes processes). - -2010-02-15 Nicolas François - - * lib/groupio.c, lib/sgroupio.c, lib/shadowio.c, lib/pwio.c: Check - entry validity before commits to databases. - * libmisc/fields.c, libmisc/Makefile.am, lib/fields.c, - lib/Makefile.am, po/POTFILES.in: fields.c moved from libmisc to - lib. - * lib/fields.c: Fail if input pointer is NULL. - -2010-02-13 Nicolas François - - * NEWS, src/chfn.c, src/chsh.c: Fix CVE-2011-0721: forbid \n in - gecos or shell. - -2011-02-12 Nicolas François - - * autogen.sh: Restore original autoreconf (see 2010-08-29's change - for autogen.sh) - * configure.in, man/po/Makefile.in.in, man/po/Makefile.in: - Makefile.in.in replaced by Makefile.in to avoid config.status - issues when there are multiple po directories. - * man/po/LINGUAS: Adapted to above change. - * man/po/POTFILES.in, man/po/XMLFILES: POTFILES.in replaced by - XMLFILES. - * man/Makefile.am: generate_mans.deps shall be included by make, - not automake. - -2010-11-19 Nicolas François - - * NEWS, libmisc/console.c: Fix CONSOLE parser. This caused login - to hang when CONSOLE was configured with a colon separated list of - TTYs. See http://bugs.gentoo.org/show_bug.cgi?id=324419 - -2010-09-05 Nicolas François - - Integrate review comments from Julien Cristau - * libmisc/copydir.c: Missing parenthesis in comment. - * libmisc/chowndir.c: Fixed memory leak on failed realloc(). - * libmisc/chowndir.c: Make sure the buffer for the path is large - enough. - * libmisc/remove_tree.c: Remove check for NULL before free(). - -2010-08-29 Nicolas François - - * man/po/fr.po: Fix 2 fuzzy strings. - -2010-08-29 Nicolas François - - * NEWS, src/usermod.c: Accept options in any order (username not - necessarily at the end) - -2010-08-29 Nicolas François - - * autogen.sh: Expand autoreconf to avoid running autopoint. - -2010-08-29 Nicolas François - - * po/shadow.pot, man/po/shadow-man-pages.pot: Regenerated. - * po/*.po, man/po/*.po: Updated PO files. - -2010-08-28 Brian M. Carlson - - * man/chsh.1.xml: Fix comma splice. - -2010-08-28 Nicolas François - - * lib/protoypes.h, libmisc/copydir.c, src/useradd.c: - selinux_file_context renamed set_selinux_file_context. - * lib/protoypes.h, libmisc/copydir.c, src/useradd.c: - Added reset_selinux_file_context. - * src/useradd.c: Check the return value of - set_selinux_file_context and reset_selinux_file_context. - * libmisc/copydir.c: Check the return value of - reset_selinux_file_context. - -2010-08-28 Nicolas François - - * src/su.c: Fix handling of environment variables when - the environment is not changed. In particular, this makes su - behave as documented regarding PATH and IFS (i.e. they are reset) - when -p is provided. - -2010-08-28 Nicolas François - - * man/su.1.xml: Fix typo. - -2010-08-22 Nicolas François - - * src/newgrp.c, src/userdel.c, src/grpck.c, src/gpasswd.c, - src/newusers.c, src/pwconv.c, src/chpasswd.c, src/logoutd.c, - src/chfn.c, src/groupmems.c, src/usermod.c, src/pwunconv.c, - src/expiry.c, src/groupdel.c, src/chgpasswd.c, src/useradd.c, - src/su.c, src/groupmod.c, src/passwd.c, src/pwck.c, src/chage.c, - src/groupadd.c, src/login.c, src/grpconv.c, src/groups.c, - src/grpunconv.c, src/chsh.c: Prog changed to a constant string. - -2010-08-22 Nicolas François - - * libmisc/limits.c: Avoid implicit conversion of integer to - boolean. - * libmisc/basename.c: Avoid implicit conversion of pointer to - boolean. - * libmisc/basename.c, lib/prototypes.h (Basename): Return a - constant string. - * libmisc/basename.c, libmisc/obscure.c, lib/prototypes.h, - libmisc/xmalloc.c, libmisc/getdate.h, libmisc/system.c, - libmisc/getgr_nam_gid.c, libmisc/failure.c, libmisc/valid.c: Add - splint annotations. - * libmisc/chowndir.c: Avoid memory leak. - * libmisc/chowndir.c: Do not check *printf/*puts return value. - * libmisc/chowntty.c: Avoid implicit conversion between integer - types. - * libmisc/obscure.c: Return a bool when possible instead of int. - * libmisc/shell.c: Do not check *printf/*puts return value. - * libmisc/shell.c: Do not check execle return value. - * libmisc/setupenv.c: Avoid implicit conversion between integer - types. - * libmisc/xmalloc.c: size should not be zero to avoid returning - NULL pointers. - * libmisc/hushed.c: Do not check *printf/*puts return value. - * libmisc/system.c: Avoid implicit conversion of integer to - boolean. safe_system last argument is a boolean. - * libmisc/system.c: Check return value of dup2. - * libmisc/system.c: Do not check *printf/*puts return value. - * libmisc/system.c: Do not check execve return value. - * libmisc/salt.c: Do not check *printf/*puts return value. - * libmisc/loginprompt.c: Do not check gethostname return value. - * libmisc/find_new_gid.c, libmisc/find_new_uid.c: Do not check - gr_rewind/pw_rewind return value. - * libmisc/ttytype.c: Limit the number of parsed characters in the - sscanf format. - * libmisc/ttytype.c: Test if a type was really read. - * libmisc/sub.c: Do not check *printf/*puts return value. - * libmisc/sub.c: Avoid implicit conversion of integer to boolean. - * src/userdel.c: Fix typo in comment. - * src/userdel.c: Avoid implicit conversion of boolean to integer. - * src/userdel.c: safe_system last argument is a boolean. - * src/newusers.c: Avoid implicit conversion of boolean to integer. - * src/newusers.c: Avoid implicit conversion of integer to boolean. - * src/usermod.c: Add brackets. - * src/usermod.c: Avoid implicit conversion of characters or - integers to booleans. - * src/vipw.c: Avoid implicit conversion of integer to boolean. - * src/su.c: Avoid implicit conversion of integer to boolean. - * src/su.c: Add brackets. - * src/useradd.c: Avoid implicit conversion of characters or - integers to booleans. - -2010-08-22 Nicolas François - - * libmisc/obscure.c, lib/prototypes.h (obscure): Return a bool - instead of an int. - * libmisc/obscure.c, libmisc/tz.c, src/passwd.c, lib/encrypt.c, - libmisc/copydir.c, lib/prototypes.h: Add splint annotations. - * libmisc/tz.c: Fix some const issues. - * libmisc/tz.c: Avoid multi-statements lines. - * libmisc/tz.c: Add brackets. - * libmisc/copydir.c: Do not check *printf/*puts return value. - * libmisc/copydir.c: Fail if we cannot set or reset the SELinux - fscreate context. - * libmisc/copydir.c: Use xmalloc instead of malloc. - * libmisc/copydir.c: Do not check lutimes return value - * src/vipw.c: Avoid implicit conversion of integer to boolean. - * src/su.c (iswheel): Return a bool instead of an int. - * src/passwd.c: Remove insert_crypt_passwd(). Use xstrdup instead. - * src/passwd.c: Return constant strings when sufficient. - * src/passwd.c: Do not check *printf/*puts return value. - * src/passwd.c: Avoid implicit conversion of character to boolean. - * src/passwd.c: Do not check sleep return value. - * src/sulogin.c: Do not check *printf/*puts return value. - * lib/encrypt.c: Do not check fprintf return value. - -2010-08-21 Nicolas François - - * src/passwd.c: Fix a const issue. - * src/passwd.c: Avoid multi-statements lines. - * src/sulogin.c: Fix a const issue. - -2010-08-21 Nicolas François - - * libmisc/copydir.c, lib/prototypes.h: Caller can choose not to - copy the extended attributes (the SELinux context is hence reset) - * src/usermod.c: Copy the extended attributes. - * src/useradd.c: Only reset the SELinux context. - -2010-08-21 Nicolas François - - * configure.in: Fixed typo. - -2010-08-21 Nicolas François - - * libmisc/console.c, libmisc/motd.c, libmisc/setupenv.c, - libmisc/sulog.c, libmisc/hushed.c, libmisc/failure.c, - libmisc/loginprompt.c, libmisc/ttytype.c, libmisc/obscure.c, - libmisc/pam_pass_non_interractive.c, src/userdel.c, src/login.c, - lib/commonio.c, lib/commonio.h, libmisc/setugid.c, - libmisc/setupenv.c: Fix some const issues. - * libmisc/motd.c: Avoid multi-statements lines. - * libmisc/motd.c: Support long MOTD_FILE. - * libmisc/list.c, lib/prototypes.h: Revert previous change. - dup_list and is_on_list are used with members as defined for the - group structure, and thus even if the list is not modified, the - list elements cannot be constant strings. - * libmisc/system.c: Avoid C++ comments. - * src/vipw.c: WITH_TCB cannot be tested inside a gettextized - string. Split the Usage string. - * lib/commonio.h: Re-indent. - -2010-08-21 Nicolas François - - * libmisc/audit_help.c (audit_logger):pgname is not used. We let - audit find out the name of the program. - * libmisc/audit_help.c: Re-indent. - -2010-08-20 Nicolas François - - * lib/groupio.c: Avoid implicit conversion from signed to unsigned. - -2010-08-20 Nicolas François - - * lib/commonio.c: Make sure there are no NULL pointer dereference. - -2010-08-20 Nicolas François - - * libmisc/remove_tree.c: Ignore snprintf return value. - -2010-08-20 Nicolas François - - * lib/prototypes.h, libmisc/list.c: dup_list() and is_on_list() do - not change the members of the list they receive. Added const - qualifiers. - -2010-08-20 Nicolas François - - * src/usermod.c: Re-indent. - -2010-08-20 Nicolas François - - * lib/commonio.c: Avoid multi-statements lines. - -2010-08-20 Nicolas François - - * man/po/fr.po: Fix a typo. - -2010-06-24 Baurzhan Muftakhidinov - - * NEWS, po/kk.po: Updated Kazakh translation. - -2010-04-12 Nicolas François - - * man/po/fr.po: Fix some typos. Minor updates: 886t70f187u. - -2010-04-12 Nicolas François - - * po/shadow.pot, man/po/shadow-man-pages.pot: Regenerated. - * po/*.po, man/po/*.po: Updated PO files. - -2010-04-05 Nicolas François - - * man/newusers.8.xml, man/useradd.8.xml, man/groupadd.8.xml, - man/login.defs.d/UMASK.xml, man/login.defs.d/CREATE_HOME.xml, - man/login.defs.d/LOGIN_RETRIES.xml: Fix typos: choosen, overriden, - bahavior. - -2010-04-04 Nicolas François - - * man/usermod.8.xml: Document changes of ownerships. - -2010-04-04 Nicolas François - - * man/vipw.8.xml: Fix formatting typo. - * man/vipw.8.xml: Document the login.defs parameters only when tcb - is enabled. - -2010-04-04 Nicolas François - - * src/useradd.c: spool is a constant string. - * src/useradd.c: Set the new copy_tree's paramater 'copy_root' to false - -2010-04-04 Nicolas François - - * src/usermod.c: move_home() is only called if mflg is set. - * src/usermod.c: Fail is -m is provided but the old home directory - is not a directory. - * src/usermod.c: Use the previous improvement of copy_tree to - provide better error diagnosis. - * src/usermod.c: When rename() is used, also change the ownership. - * src/usermod.c: Do not change the ownership of the root directory - twice. - * src/usermod.c: When -u is provided, only change the ownership of - the home directory if it is a directory. - * src/usermod.c: Also change ownerships when -g is used. - -2010-04-04 Nicolas François - - * lib/prototypes.h, libmisc/copydir.c: Add the old UID and GID to - copy_tree to detect when ownership shall be changed. - * libmisc/copydir.c: Document the behavior when the IDs are set to - -1. - * lib/prototypes.h, libmisc/copydir.c (copy_tree): Add parameter - copy_root. - * libmisc/copydir.c: error() and ctx can be static. - * libmisc/copydir.c (copy_hardlink): Remove parameter src. - -2010-04-04 Nicolas François - - * libmisc/chowndir.c: Dynamically allocate memory to support - path longer than 1024 characters. - * libmisc/chowndir.c: Fix typos in documentation. - * libmisc/chowndir.c: Support and document the behavior when a old - or new ID is set to -1. - * libmisc/chowndir.c: Improved error detection when chown fails. - * libmisc/chowndir.c: Harmonize error handling strategy when an - error occurs: stop changing ownership as soon as an error was - detected. - -2010-04-03 Nicolas François - - * man/hu/passwd.5: Fix formatting typo. - * man/id/login.1: Likewise. - -2010-03-31 Nicolas François - - * man/vipw.8.xml: When TCB is enabled, vipw uses login.defs. - -2010-03-31 Nicolas François - - * NEWS, libmisc/copydir.c: When a hardlink is detected, the - original hardlink should not be removed. - -2010-03-30 Nicolas François - - * po/POTFILES.in, libmisc/Makefile.am, lib/prototypes.h, - libmisc/remove_tree.c, libmisc/copydir.c: Split remove_tree() - outside of copydir.c to avoid linking against libacl or libattr. - -2010-03-30 Nicolas François - - * src/su.c: shell's name must be -su when a su fakes a login. - -2010-03-30 Nicolas François - - * NEWS, configure.in, libmisc/copydir.c, man/useradd.8.xml, - man/usermod.8.xml, src/Makefile.am: Added support for ACLs and - Extended Attributes. - -2010-03-30 Nicolas François - - * libmisc/copydir.c: Document the sections closed by #endif - -2010-03-27 Nicolas François - - * man/vipw.8.xml: Add section ENVIRONMENT. - -2010-03-26 Nicolas François - - * etc/login.defs: Updated description of UMASK to indicate its - usage by pam_umask. - * man/login.defs.d/UMASK.xml: Likewise. - -2010-03-25 Nicolas François - - * man/login.1.xml: login does not check for new mails in PAM - enabled versions. This is done by pam_mail. - -2010-03-25 Nicolas François - - * NEWS, src/chpasswd.c, man/chpasswd.8.xml, man/login.defs.5.xml: - PAM enabled versions: restore the -e option to allow restoring - passwords without knowing those passwords. Restore together the -m - and -c options. - -2010-03-23 Nicolas François - - * src/su.c, src/vipw.c, src/newgrp.c: When the child is - interrupted, stop ourself with a SIGSTOP signal. - -2010-03-23 Nicolas François - - * src/newgrp.c: Limit the scope of variable pid. - * src/login_nopam.c: Limit the scope of variables end, lineno, i, - str_len. - * src/logoutd.c: Limit the scope of variable c. - * src/vipw.c: Re-indent. - * src/vipw.c: Close the file after the creation of the backup. - * src/useradd.c (set_default): Close input file on failure. - * src/useradd.c: Limit the scope of variables spool, file, fd, gr, - gid, mode. - * src/passwd.c: Limit the scope of variables last and ok. - * src/chage.c: Fix typo (non breaking space). - * src/login.c: Limit the scope of variables erasechar killchar, c, - failed. - * src/groups.c: Limit the scope of variable ngroups, pri_grp, i. - * src/id.c: Limit the scope of variable i. - -2010-03-22 Nicolas François - - * lib/utent.c (getutline): Remove getutline(). This function is - no more used. - * lib/groupmem.c: Limit the scope of variable i. - * lib/shadow.c: Avoid implicit conversion of pointers and integers - to booleans. - * lib/shadow.c: Added brackets. - * libmisc/limits.c: Limit the scope of variable tmpmask. - * libmisc/copydir.c: Close opened file on failure. - * libmisc/loginprompt.c: Limit the scope of variable envc. - * libmisc/find_new_uid.c, libmisc/find_new_gid.c: Limit the scope - of variable id. - -2010-03-21 Nicolas François - - * libmisc/find_new_gid.c, libmisc/find_new_uid.c: Detect some - misconfigurations of UID_MIN, UID_MAX, SYS_UID_MIN, SYS_UID_MAX (and - the GID equivalents) - -2010-03-20 Nicolas François - - * NEWS, configure.in: Next version will be 4.1.5. - * po/shadow.pot, man/po/shadow-man-pages.pot: Regenerated. - * po/*.po, man/po/*.po: Updated PO files. - -2010-03-20 Nicolas François - - * libmisc/limits.c: Re-indent to make pmccabe happy. - -2010-03-20 Nicolas François - - * man/generate_translations.mak, man/generate_mans.mak: Fix - distcheck. All manpages generation code shall be enclosed in - ENABLE_REGENERATE_MAN conditions. - -2010-03-20 Nicolas François - - * man/useradd.8.xml: Do not document the features which are not - working. - * man/useradd.8.xml: Fix typo: -u was meant instead of -o. - * man/useradd.8.xml: Document that the default behavior depends on - CREATE_HOME. - -2010-03-20 Nicolas François - - * lib/groupio.c: Fix memory management insplit_groups(). - -2010-03-20 Nicolas François - - * libmisc/strtoday.c: Empty dates indicate a disabled date, this is - not an error. - -2010-03-19 Nicolas François - - * src/useradd.c, lib/commonio.c, po/POTFILES.in: Fix typos. - * libmisc/limits.c: Removed unused variable. - -2010-03-19 Nicolas François - - * lib/commonio.c: Stop sorting entries when we reach the first - NIS line. - -2010-03-18 Nicolas François - - * src/chsh.c: Even for root, warn if an invalid shell is - specified. Alioth#311305 - -2010-03-18 Nicolas François - - * man/limits.5.xml: Document the selection of the limits when - multiple lines match the user. - -2010-03-18 Nicolas François - - * libmisc/limits.c: Re-indent. - * libmisc/limits.c: Reformat the documentation. Avoid personal - comments. - * man/limits.5.xml: Document the new features. - -2010-03-18 Thomas Orgis - - * NEWS, libmisc/limits.c: Fix parsing of limits. - * NEWS, libmisc/limits.c: Add support for infinite limits. - * NEWS, libmisc/limits.c: Add support for @group syntax. - -2010-03-18 Nicolas François - - * lib/tcbfuncs.h: Re-indent. - * lib/tcbfuncs.h: Explicitly indicate function taking a void - parameter. - -2010-03-18 Nicolas François - - * src/useradd.c: When exiting because of a failure, warn if an - home directory created, but cannot be removed. - -2010-03-18 Nicolas François - - * libmisc/chowndir.c: Re-indent. - * libmisc/chowndir.c: Avoid assignment in comparisons. - * libmisc/chowndir.c: Added brackets and parenthesis. - -2010-03-18 Nicolas François - - * libmisc/strtoday.c: Add support for numerical dates, assuming - they are already specified in number of days since Epoch. Return - -2 in case of errors to support the specification of -1. - * src/usermod.c, src/useradd.c: Adapt to the new error value of - strtoday(). - * src/chage.c: Remove isnum(). Adapt to the new error value of - strtoday(). Support for numerical dates is moved to strtoday(). - -2010-03-18 Nicolas François - - * man/po/fr.po: Harmonize name of parameters. - -2010-03-18 Nicolas François - - * NEWS: Indicate which tools support TCB. - -2010-03-18 Nicolas François - - * src/pwck.c: Unlock the password and shadow files when there is a - failure to prepare the update in memory. - -2010-03-18 Nicolas François - - * src/pwck.c: Only log to SYSLOG when acting on system files. - -2010-03-18 Nicolas François - - * src/pwck.c: Document the sections closed by #endif - * src/pwck.c, man/pwck.8.xml: No alternative shadow file can be - given when USE_TCB is enabled. - * src/pwck.c: Remove the -s option from the usage when USE_TCB is - enabled. The option is still supported, but has no effect, as - documented in the manpage. - -2010-03-18 Nicolas François - - * src/pwck.c: Do not use pwd_file and spw_file. Always use the - dbname() functions. - -2010-03-18 Nicolas François - - * src/pwck.c: Re-indent. - -2010-03-18 Nicolas François - - * src/userdel.c, src/usermod.c, src/vipw.c, src/useradd.c, - src/pwck.c, src/chage.c, lib/shadowio.c: Explicitly use the - SHADOWTCB_FAILURE return code instead of 0 or implicit conversion - to booleans. - -2010-03-18 Paweł Hajdan, Jr. - - * src/pwck.c: Add support for TCB. - * src/pwck.c: Use spw_dbname() instead of spw_file since TCB - changes from a file to another depending on the user. Also use - pw_dbname() for consistency. - -2010-03-17 Nicolas François - - * src/faillog.c: Re-indent. - -2010-03-17 Nicolas François - - * lib/tcbfuncs.h: Added type shadowtcb_status. - * lib/tcbfuncs.h, lib/tcbfuncs.c: Return a shadowtcb_status - instead of an int. - * lib/tcbfuncs.c: Do not return in OUT_OF_MEMORY. - * lib/tcbfuncs.c: Only FreeBSD specify that the returned buffer is - NULL in case of failure. The return value of asprintf shall be - checked. - * lib/tcbfuncs.c: Avoid implicit conversion of pointers or - integers to booleans. - * lib/tcbfuncs.c: Avoid assignments in comparisons. - * lib/tcbfuncs.c: Do not free path before its last use. - * lib/tcbfuncs.c: Include shadowio.h, needed for the - spw_setdbname's prototype. - * lib/tcbfuncs.c: Ignore fflush() return value. - * lib/tcbfuncs.c: Avoid implicit signed to unsigned conversions. - * lib/tcbfuncs.c: Avoid integer to char conversions. - * lib/tcbfuncs.c: Include prototypes.h for the definition of Prog. - * lib/tcbfuncs.c: Removed dead return. - * lib/tcbfuncs.c: move_dir() and shadowtcb_move() need a non NULL - stored_tcb_user. - * lib/tcbfuncs.c: Avoid implicit int to mode_t conversion. - * lib/tcbfuncs.c: Added brackets and parenthesis. - * lib/tcbfuncs.c: Re-indent. - -2010-03-17 Nicolas François - - * lib/commonio.c: Avoid implicit conversion of pointers to - booleans. - * lib/commonio.c: Ignore the return value of close when a - failure is reported. - -2010-03-16 Nicolas François - - * man/faillog.8.xml: Document the behavior in display mode of the - -a option. - * NEWS, man/faillog.8.xml, src/faillog.c: Extend the -a option to - the non-display mode. This changes the default behavior of the -l, - -m, -r, -t options when -a is not specified (restrict to existing - users). - -2010-03-15 Nicolas François - - * man/chage.1.xml, man/login.defs.5.xml, man/pwck.8.xml, - man/pwconv.8.xml, man/useradd.8.xml, man/userdel.8.xml, - man/usermod.8.xml, man/vipw.8.xml: Document the usage of the - TCB_AUTH_GROUP, TCB_SYMLINKS, and USE_TCB configuration - parameters. - * man/pwconv.8.xml, man/pwck.8.xml: Document the behavior when - USE_TCB is enabled. - -2010-03-15 Nicolas François - - * po/POTFILES.in, lib/tcbfuncs.c: Add more strings for - translation. - * lib/tcbfuncs.c: Indicate the name of the program in error - messages. Avoid perror. - * src/useradd.c: Re-indent. - * src/useradd.c: Add more strings for translation. Indicate the - name of the program in error messages. - * src/userdel.c: Re-indent. - * src/userdel.c: Add more strings for translation. Indicate the - name of the program in error messages. - -2010-03-15 Nicolas François - - * src/usermod.c: user_newname and user_newid cannot be used to - test if the username or ID is changed. lflg and uflg should be - used instead. - -2010-03-15 Nicolas François - - * src/userdel.c: Avoid perror. Give more verbose warnings. - -2010-03-11 Nicolas François - - * man/Makefile.am: Indicate that man/generate_mans.deps is - generated. - -2010-03-11 Nicolas François - - * lib/commonio.c: Re-indent. - * lib/commonio.c: Document the sections closed by #endif - * lib/commonio.c: Added brackets. - * lib/commonio.c: Avoid implicit conversion of integer to - booleans. - -2010-03-11 Nicolas François - - * src/userdel.c: Re-indent. - * src/userdel.c: Added brackets. - * src/userdel.c: Avoid implicit conversion of pointers to - booleans. - -2010-03-11 Nicolas François - - * lib/shadowio.c: Re-indent. - * lib/shadowio.c: Added brackets and parenthesis. - * lib/shadowio.c: Document the sections closed by #endif - * lib/shadowio.c: Avoid negation of comparisons. - * lib/shadowio.c: Avoid implicit conversion of integer to booleans - and booleans to integers. - -2010-03-11 Nicolas François - - * src/useradd.c: Re-indent. - * src/useradd.c: Added brackets. - * src/useradd.c: Avoid implicit conversion of integers to - booleans. - * src/useradd.c: Harmonize error messages. - -2010-03-11 Nicolas François - - * src/vipw.c: Document the sections closed by #endif - * src/vipw.c: Avoid implicit conversion of pointers or integers to - booleans. - * src/vipw.c: Added brackets and parenthesis. - * src/vipw.c: Limit the definition of some variables and macros to - the WITH_TCB scope. - * src/vipw.c: Avoid assignment in comparisons. - * src/vipw.c: Replace PASSWD_FILE (resp. GROUP_FILE and - SGROUP_FILE) by pw_dbname () (resp. gr_dbname () and sgr_dbname ()). - This is more consistent with the shadow file handling and may be - useful to allow edition of another partition's files. - - -2010-03-11 Nicolas François - - * src/usermod.c: Re-indent. - * src/usermod.c: Avoid implicit conversion of pointers to - booleans. - * src/usermod.c: Added parenthesis. - -2010-03-11 Nicolas François - - * src/pwunconv.c: Only check USE_TCB if configured WITH_TCB. - -2010-03-10 Nicolas François - - * src/userdel.c: Re-indent. - * src/userdel.c: Avoid implicit conversion of pointers to - booleans. - * src/userdel.c: Document the sections closed by #endif - -2010-03-10 Nicolas François - - * src/pwconv.c: Only check USE_TCB if configured WITH_TCB. - -2010-03-10 Nicolas François - - * libmisc/copydir.c: Added parenthesis. - -2010-02-14 Michael Bunk - - * NEWS, lib/gshadow.c: Fix parsing of gshadow entries. - -2010-01-30 Paweł Hajdan, Jr. - - * NEWS: Add support for TCB. - * lib/tcbfuncs.h, lib/tcbfuncs.c, lib/Makefile.am: New library to - support TCB. - * lib/prototypes, libmisc/copydir.c (remove_tree): Add boolean - parameter remove_root. - * configure.in: Add conditional WITH_TCB. - * src/userdel.c, src/usermod.c: Add support for TCB. Update call to - remove_tree(). - * src/pwconv.c, src/pwunconv.c: Should not be used with TCB enabled. - * src/vipw.c: Add support for TCB. Update call to remove_tree(). - * src/useradd.c: Add support for TCB. Open the shadow file outside - of open_files(). - * src/chage.c: Add support for TCB. - * src/Makefile.am: Install passwd sgid shadow when TCB is enabled. - * lib/getdefs.c, man/vipw.8.xml, man/login.defs.5.xml, - man/login.defs/TCB_AUTH_GROUP.xml, man/login.defs/USE_TCB.xml, - man/login.defs/TCB_SYMLINKS.xml, man/generate_mans.mak, - man/generate_mans.deps, man/Makefile.am: New configuration - parameters: TCB_AUTH_GROUP, TCB_SYMLINKS, USE_TCB. - * lib/shadowio.c, lib/commonio.c: Add support for TCB. - -2010-01-24 Nicolas François - - * libmisc/env.c: Fix sanitize_env() noslash support. This fixes - Alioth#311740. - -2010-01-24 Nicolas François - - * src/su.c: Do not sanitize the environment. This breaks - --preserve-environment. This sanitation was disabled on Debian - since quite some time with no reported issues, and sanitize_env() - documentation agrees that it should be useless as all modern - Unixes will handle setuid executables properly. This fixes - Alioth#312287. - -2010-01-24 Nicolas François - - * libmisc/setupenv.c: Fix typo from 2009-11-01. - -2010-01-24 Paweł Hajdan, Jr. - - * configure.in: Add support for TCB in configure.in. Actual TCB - support will follow. - -2009-11-05 Nicolas François - - * NEWS, src/groupmod.c: Fixed groupmod when configured with - --enable-account-tools-setuid. - -2009-11-01 Nicolas François - - * NEWS, man/login.defs.d/ENV_SUPATH.xml, libmisc/setupenv.c: - Harmonize other paths and documentation with previous - change. - -2009-11-01 Michel Hermier - - * src/su.c: Set the default ENV_SUPATH to - /sbin:/bin:/usr/sbin:/usr/bin (i.e. PATH when no ENV_SUPATH is - specified). - -2009-10-15 Thorsten Kukuk - - * src/faillog.c, man/faillog.8.xml: Harmonize long option in code - and documentation. Use --lock-secs instead of --lock-time. - -2009-10-05 Miroslav Kure - - * po/cs.po: updated to 412t - -2009-09-29 Clytie Siddall - - * po/vi.po: updated to 412t - -2009-09-27 Miroslav Kure - - * po/cs.po: updated to 411t1f - -2009-09-24 Christian Perrier - - * man/po/fr.po: Updated French translation to 835t99f165 - -2009-09-24 Clytie Siddall - - * po/vi.po: updated to 348t30f34u - -2009-09-08 Nicolas François - - * lib/commonio.c: Avoid pre-decrement operator (--n). Add some - comments. - * libmisc/cleanup.c: Fix off by one in an assertion. - -2009-09-08 Nicolas François - - * src/su.c: Fix indentation. - * src/su.c: Add more messages for translation. - * src/su.c: Ignore kill() return value when sending the TERM - signal. If it fails, a KILL should be sent anyway. - -2009-09-08 Nicolas François - - * NEWS, src/su.c: When su receives a signal, wait for the child to - terminate (after sending a SIGTERM), and kill it only if it did - not terminate by itself. No delay will be enforced if the child - cooperates. See http://bugs.gentoo.org/282094 - * NEWS, man/su.1.xml: Document su's exit values. - -2009-09-08 Nicolas François - - * src/useradd.c: The default value for the CREATE_MAIL_SPOOL - variable (i.e. if CREATE_MAIL_SPOOL= is specified without any - values) is "no", not DCREATE_MAIL_SPOOL ("CREATE_MAIL_SPOOL="). - -2009-09-08 Nicolas François - - * src/useradd.c: Avoid redefinition of SHELL. Use DSHELL instead. - For consistency, change HOME, INACT, EXPIRE, SKEL, and - CREATE_MAIL_SPOOL to DHOME, DINACT, DEXPIRE, DSKEL, and - DCREATE_MAIL_SPOOL. - -2009-09-08 Nicolas François - - * src/newusers.c: Prefer #ifdef over #if. - -2009-09-08 Nicolas François - - * configure.in: We do not use SETPGRP_VOID, and already assume - that setpgrp has a void argument. Remove AC_FUNC_SETPGRP to ease - cross compiling. - -2009-09-07 Nicolas François - - * man/generate_translations.mak, man/generate_mans.mak, - po/Makefile.in.in: Removing and restoring the config.xml file - broke parallel builds. Build the manpages based on *.xml-config - files instead of *.xml files. The *.xml do not include config.xml - anymore, which permits to run xml2po without needing to remove - config.xml. The config.xml is restored in the *.xml-config files. - * man/groupadd.8.xml: Implementation of the above. - * man/generate_mans.deps: Updated dependencies - -2009-09-07 Steve Grubb - - * libmisc/limits.c: Fix the format to match the unsigned long - variable in argument. - * libmisc/utmp.c: Fix tests. tmptty is a variable stack. ut_host - is an array of the ut structure. None of them can be NULL. - -2009-09-07 Nicolas François - - * lib/shadowmem.c: Only copy the required fields of the struct - spwd. (start with the primitive types) - * lib/shadowmem.c: Avoid memzero() on a possibly NULL pointer. - * lib/groupmem.c: Only copy the required fields of the struct - group. (start with the primitive types) - * lib/groupmem.c: Avoid memzero() on a possibly NULL pointer. - * lib/groupmem.c: Free gr_mem in addition to its elements. - * lib/sgroupio.c: The struct sgrp has no primitive types to be - copied initially. - * lib/sgroupio.c: Avoid memzero() on a possibly NULL pointer. - * lib/sgroupio.c: Free sg_mem and sg_add in addition to their - elements. - * lib/pwmem.c: Only copy the required fields of the struct - passwd. (start with the primitive types) - -2009-09-07 Nicolas François - - * lib/sgroupio.h: Harmonize splint annotations of sgr_locate() - prototype with the one used in its definition. - -2009-09-07 Steve Grubb - - * libmisc/copydir.c, lib/shadowmem.c, lib/groupmem.c, lib/pwmem.c: - Fix some memory leaks. - -2009-09-06 Nicolas François - - * src/userdel.c, src/lastlog.c, src/gpasswd.c, src/newusers.c, - src/chpasswd.c, src/groupmems.c, src/usermod.c, src/chgpasswd.c, - src/vipw.c, src/su.c, src/useradd.c, src/groupmod.c, src/passwd.c, - src/groupadd.c, src/chage.c, src/faillog.c, src/chsh.c: Use - booleans for tests. - * src/userdel.c, src/gpasswd.c, src/groupmems.c, src/usermod.c, - src/groupmod.c, src/passwd.c: Use a break even after usage(). - -2009-09-05 Nicolas François - - * src/gpasswd.c, src/groupmems.c: Split the groupmems and gpasswd - Usage string. It was changed anyway to add the --help option. - -2009-09-05 Mike Frysinger - - * NEWS, src/userdel.c, src/lastlog.c, src/gpasswd.c, - src/newusers.c, src/chpasswd.c, src/groupmems.c, src/usermod.c, - src/chgpasswd.c, src/vipw.c, src/su.c, src/useradd.c, - src/groupmod.c, src/passwd.c, src/groupadd.c, src/chage.c, - src/faillog.c, src/chsh.c: If someone uses the -h/--help options, - the usage should not go to stderr nor should the utility exit with - non-zero status. All of the shadow utils do just this - unfortunately, so convert them over to sanity. - * man/groupmems.8.xml, man/gpasswd.1.xml: Added option -h/--help. - -2009-09-05 Nicolas François - - * src/useradd.c: Fixed wrong format string. - * lib/gshadow.c: Removed declaration of unused variable. - -2009-08-30 Mike Frysinger - - * man/generate_mans.mak, man/generate_translations.mak: Provide an - useful error message when --enable-man is not enabled and the - translated manpages are not generated. - -2009-08-21 Nicolas François - - * man/login.defs.d/ENCRYPT_METHOD.xml: Avoid using sub-lists. They - break the groff formatting. - -2009-07-24 Nicolas François - - * po/fr.po: Fix typos, based on reviews by the Debian French - translation team. - -2009-07-24 Nicolas François - - * NEWS, configure.in: Prepare for the next release 4.1.4.2. - * po/shadow.pot, man/po/shadow-man-pages.pot: Regenerated. - * po/*.po, man/po/*.po: Updated PO files. - -2009-07-23 Nicolas François - - * configure.in: Fixed definition of the SHELL configuration. - -2009-07-23 Nicolas François - - * etc/login.defs: SYS_GID_MIN /SYS_UID_MIN changed from 100 to - 101. GID 100 seems to be used statically. - -2009-07-22 Nicolas François - - * libmisc/shell.c, src/su.c: Execute the scripts with "sh -" - rather than "sh". - -2009-07-22 Nicolas François - - * configure.in, libmisc/shell.c, libmisc/setupenv.c, src/newgrp.c, - src/su.c: Let the system shell be configurable. - -2009-07-20 Nicolas François - - * NEWS, src/su.c, libmisc/shell.c: Added support for shells being a - shell script without a shebang. - -2009-07-19 Jean-Louis Dupond - - * po/nl.po: Fix obvious mistake in Dutch translation. - -2009-07-18 Peter Vrabec - - * NEWS, libmisc/find_new_gid.c, libmisc/find_new_uid.c: Do not use - getpwent / getgrent for system accounts. Trying the low-IDs with - getpwuid / getgrgid should be more efficient on LDAP configured - systems with many accounts. - * NEWS, libmisc/find_new_gid.c, libmisc/find_new_uid.c: Since - system accounts are allocated from SYS_?ID_MIN to SYS_?ID_MAX in - reverse order, accounts are packed close to SYS_?ID_MAX if - SYS_?ID_MIN is already used but there are still dome gaps. - -2009-07-05 Piarres Beobide - - * po/eu.po: Updated Basque translation. - -2009-06-20 Nicolas François - - * man/fi/Makefile.am: Stop distributing the Finnish translation of - passwd.1 (outdated). - -2009-06-20 Nicolas François - - * man/pwck.8.xml: The shadow file is optional. - * man/pwck.8.xml: Updated description of the checks. Added - description of the shadow checks. - * man/pwck.8.xml: Updated description of the checks. - -2009-06-12 Nicolas François - - * man/po/fr.po: Fixed typo (forunis) - -2009-06-12 Nicolas François - - * lib/fputsx.c: Compare the result of fgets() with the provided - buffer instead of NULL. - -2009-06-12 Nicolas François - - * lib/gshadow.c: Removed limitation on the length of the gshadow - lines. - * lib/gshadow.c: Compare the result of fgetsx() with the provided - buffer instead of NULL. - -2009-06-11 Nicolas François - - * libmisc/xgetXXbyYY.c, libmisc/xgetpwnam.c, libmisc/xgetgrnam.c, - libmisc/xgetpwuid.c, libmisc/xgetgrgid.c, libmisc/xgetspnam.c: Do - not limit the size of the buffer to hold the group or user - structure. It used to be limited to 16k, which caused issues with - groups having many users. - -2009-06-11 Nicolas François - - * src/su.c, man/su.1.xml: The default behavior (without -p or - --login) is to copy most of the environment variables. Revert a - previous change and update the documentation. - -2009-06-06 Nicolas François - - * man/passwd.5.xml, man/shadow.5.xml: Document the passwd- and - shadow- files. - -2009-06-06 Nicolas François - - * NEWS, src/su.c: Preserve the DISPLAY and XAUTHORITY environment - variables, even with --login. This was not the case before in the - PAM version. - -2009-06-06 Nicolas François - - * src/useradd.c, src/groupmod.c, src/groupadd.c, src/faillog.c: - Fix typos. Take this opportunity to split the usage messages into - smaller messages (one per option). - * src/pwck.c: Fix typo. - -2009-06-05 Petri Koistinen - - * man/passwd.1.xml: The short option for --mindays is -n, not -m. - -2009-06-04 Mike Frysinger - - * .gitignore, man/.gitignore, src/.gitignore: Added .gitignore - files. - -2009-06-04 Nicolas François - - * man/su.1.xml: Use , " #: vipw.8.xml:122(para) userdel.8.xml:125(para) useradd.8.xml:268(para) #: pwconv.8.xml:197(para) pwck.8.xml:188(para) passwd.1.xml:216(para) -#: newusers.8.xml:285(para) lastlog.8.xml:111(para) grpck.8.xml:159(para) +#: newusers.8.xml:285(para) lastlog.8.xml:122(para) grpck.8.xml:159(para) #: groupmod.8.xml:131(para) groupmems.8.xml:144(para) groupdel.8.xml:97(para) #: groupadd.8.xml:133(para) gpasswd.1.xml:175(para) faillog.8.xml:124(para) #: expiry.1.xml:114(para) chsh.1.xml:103(para) chpasswd.8.xml:173(para) @@ -366,7 +360,7 @@ msgstr "stiller Modus" #: vipw.8.xml:138(term) usermod.8.xml:311(term) userdel.8.xml:146(term) #: useradd.8.xml:445(term) pwconv.8.xml:201(term) pwck.8.xml:209(term) -#: passwd.1.xml:301(term) newusers.8.xml:308(term) lastlog.8.xml:115(term) +#: passwd.1.xml:301(term) newusers.8.xml:308(term) lastlog.8.xml:126(term) #: grpck.8.xml:173(term) groupmod.8.xml:178(term) groupmems.8.xml:165(term) #: groupdel.8.xml:101(term) groupadd.8.xml:204(term) faillog.8.xml:180(term) #: chsh.1.xml:107(term) chpasswd.8.xml:188(term) chgpasswd.8.xml:146(term) @@ -380,7 +374,7 @@ msgstr "" #: vipw.8.xml:142(para) usermod.8.xml:315(para) userdel.8.xml:150(para) #: useradd.8.xml:449(para) pwconv.8.xml:205(para) pwck.8.xml:213(para) -#: passwd.1.xml:305(para) newusers.8.xml:312(para) lastlog.8.xml:119(para) +#: passwd.1.xml:305(para) newusers.8.xml:312(para) lastlog.8.xml:130(para) #: grpck.8.xml:177(para) groupmod.8.xml:182(para) groupmems.8.xml:169(para) #: groupdel.8.xml:105(para) groupadd.8.xml:208(para) gpasswd.1.xml:185(para) #: faillog.8.xml:184(para) chsh.1.xml:111(para) chpasswd.8.xml:192(para) @@ -410,18 +404,18 @@ msgstr ", " msgid "Indicates which user's tcb shadow file to edit." msgstr "bestimmt, welche Tcb-Shadow-Datei des Benutzers bearbeitet werden soll" -#: vipw.8.xml:165(title) usermod.8.xml:497(title) userdel.8.xml:171(title) +#: vipw.8.xml:165(title) usermod.8.xml:496(title) userdel.8.xml:171(title) #: useradd.8.xml:647(title) su.1.xml:339(title) sg.1.xml:98(title) #: pwconv.8.xml:227(title) pwck.8.xml:252(title) passwd.1.xml:390(title) #: newusers.8.xml:362(title) newgrp.1.xml:109(title) login.1.xml:294(title) #: grpck.8.xml:209(title) groupmod.8.xml:193(title) groupmems.8.xml:199(title) -#: groupdel.8.xml:128(title) groupadd.8.xml:219(title) -#: gpasswd.1.xml:264(title) chsh.1.xml:154(title) chpasswd.8.xml:239(title) -#: chgpasswd.8.xml:198(title) chfn.1.xml:193(title) chage.1.xml:244(title) +#: groupdel.8.xml:128(title) groupadd.8.xml:219(title) gpasswd.1.xml:264(title) +#: chsh.1.xml:154(title) chpasswd.8.xml:239(title) chgpasswd.8.xml:198(title) +#: chfn.1.xml:193(title) chage.1.xml:244(title) msgid "CONFIGURATION" msgstr "KONFIGURATION" -#: vipw.8.xml:166(para) usermod.8.xml:498(para) userdel.8.xml:172(para) +#: vipw.8.xml:166(para) usermod.8.xml:497(para) userdel.8.xml:172(para) #: useradd.8.xml:648(para) su.1.xml:340(para) sg.1.xml:99(para) #: pwck.8.xml:253(para) passwd.1.xml:391(para) newusers.8.xml:363(para) #: newgrp.1.xml:110(para) login.1.xml:295(para) grpck.8.xml:210(para) @@ -474,37 +468,35 @@ msgstr "EDITOR" msgid "Editor to be used if is not set." msgstr "der verwendete Editor, wenn nicht gesetzt ist" -#: vipw.8.xml:195(title) usermod.8.xml:514(title) userdel.8.xml:188(title) +#: vipw.8.xml:195(title) usermod.8.xml:513(title) userdel.8.xml:188(title) #: useradd.8.xml:675(title) suauth.5.xml:193(title) su.1.xml:367(title) #: sg.1.xml:110(title) shadow.5.xml:255(title) shadow.3.xml:226(title) #: pwconv.8.xml:250(title) pwck.8.xml:269(title) porttime.5.xml:130(title) #: passwd.5.xml:141(title) passwd.1.xml:408(title) newusers.8.xml:397(title) #: newgrp.1.xml:121(title) logoutd.8.xml:89(title) -#: login.access.5.xml:121(title) login.1.xml:338(title) -#: limits.5.xml:196(title) lastlog.8.xml:182(title) gshadow.5.xml:156(title) -#: grpck.8.xml:221(title) groups.1.xml:100(title) groupmod.8.xml:205(title) -#: groupmems.8.xml:211(title) groupdel.8.xml:140(title) -#: groupadd.8.xml:233(title) gpasswd.1.xml:279(title) faillog.8.xml:243(title) -#: faillog.5.xml:96(title) expiry.1.xml:121(title) chsh.1.xml:167(title) -#: chpasswd.8.xml:255(title) chgpasswd.8.xml:213(title) chfn.1.xml:207(title) -#: chage.1.xml:256(title) +#: login.access.5.xml:121(title) login.1.xml:338(title) limits.5.xml:196(title) +#: lastlog.8.xml:204(title) gshadow.5.xml:156(title) grpck.8.xml:221(title) +#: groups.1.xml:100(title) groupmod.8.xml:205(title) groupmems.8.xml:211(title) +#: groupdel.8.xml:140(title) groupadd.8.xml:233(title) gpasswd.1.xml:279(title) +#: faillog.8.xml:243(title) faillog.5.xml:96(title) expiry.1.xml:121(title) +#: chsh.1.xml:167(title) chpasswd.8.xml:255(title) chgpasswd.8.xml:213(title) +#: chfn.1.xml:207(title) chage.1.xml:256(title) msgid "FILES" msgstr "DATEIEN" -#: vipw.8.xml:198(filename) usermod.8.xml:517(filename) +#: vipw.8.xml:198(filename) usermod.8.xml:516(filename) #: userdel.8.xml:191(filename) useradd.8.xml:690(filename) -#: sg.1.xml:125(filename) pwck.8.xml:272(filename) -#: newusers.8.xml:412(filename) newgrp.1.xml:136(filename) -#: gshadow.5.xml:159(filename) grpck.8.xml:224(filename) -#: groups.1.xml:103(filename) groupmod.8.xml:208(filename) -#: groupmems.8.xml:214(filename) groupdel.8.xml:143(filename) -#: groupadd.8.xml:236(filename) gpasswd.1.xml:72(filename) -#: gpasswd.1.xml:75(filename) gpasswd.1.xml:282(filename) -#: chgpasswd.8.xml:216(filename) +#: sg.1.xml:125(filename) pwck.8.xml:272(filename) newusers.8.xml:412(filename) +#: newgrp.1.xml:136(filename) gshadow.5.xml:159(filename) +#: grpck.8.xml:224(filename) groups.1.xml:103(filename) +#: groupmod.8.xml:208(filename) groupmems.8.xml:214(filename) +#: groupdel.8.xml:143(filename) groupadd.8.xml:236(filename) +#: gpasswd.1.xml:72(filename) gpasswd.1.xml:75(filename) +#: gpasswd.1.xml:282(filename) chgpasswd.8.xml:216(filename) msgid "/etc/group" msgstr "/etc/group" -#: vipw.8.xml:200(para) usermod.8.xml:519(para) userdel.8.xml:193(para) +#: vipw.8.xml:200(para) usermod.8.xml:518(para) userdel.8.xml:193(para) #: useradd.8.xml:692(para) sg.1.xml:127(para) pwck.8.xml:274(para) #: newusers.8.xml:414(para) newgrp.1.xml:138(para) gshadow.5.xml:161(para) #: grpck.8.xml:226(para) groups.1.xml:105(para) groupmod.8.xml:210(para) @@ -513,7 +505,7 @@ msgstr "/etc/group" msgid "Group account information." msgstr "Informationen zu den Gruppenkonten" -#: vipw.8.xml:204(filename) usermod.8.xml:523(filename) +#: vipw.8.xml:204(filename) usermod.8.xml:522(filename) #: useradd.8.xml:696(filename) sg.1.xml:131(filename) #: newusers.8.xml:418(filename) newgrp.1.xml:142(filename) #: gshadow.5.xml:165(filename) grpck.8.xml:230(filename) @@ -525,7 +517,7 @@ msgid "/etc/gshadow" msgstr "/etc/gshadow" # type: Plain text -#: vipw.8.xml:206(para) usermod.8.xml:525(para) useradd.8.xml:698(para) +#: vipw.8.xml:206(para) usermod.8.xml:524(para) useradd.8.xml:698(para) #: sg.1.xml:133(para) newusers.8.xml:420(para) newgrp.1.xml:144(para) #: gshadow.5.xml:167(para) grpck.8.xml:232(para) groupmod.8.xml:216(para) #: groupdel.8.xml:151(para) groupadd.8.xml:244(para) gpasswd.1.xml:290(para) @@ -533,7 +525,7 @@ msgstr "/etc/gshadow" msgid "Secure group account information." msgstr "sichere Informationen zu den Gruppenkonten" -#: vipw.8.xml:210(filename) usermod.8.xml:535(filename) +#: vipw.8.xml:210(filename) usermod.8.xml:534(filename) #: userdel.8.xml:203(filename) useradd.8.xml:678(filename) #: su.1.xml:370(filename) sg.1.xml:113(filename) shadow.5.xml:258(filename) #: pwck.8.xml:278(filename) passwd.5.xml:144(filename) @@ -546,7 +538,7 @@ msgstr "sichere Informationen zu den Gruppenkonten" msgid "/etc/passwd" msgstr "/etc/passwd" -#: vipw.8.xml:212(para) usermod.8.xml:537(para) userdel.8.xml:205(para) +#: vipw.8.xml:212(para) usermod.8.xml:536(para) userdel.8.xml:205(para) #: useradd.8.xml:680(para) su.1.xml:372(para) sg.1.xml:115(para) #: shadow.5.xml:260(para) pwck.8.xml:280(para) passwd.5.xml:146(para) #: passwd.1.xml:413(para) newusers.8.xml:402(para) newgrp.1.xml:126(para) @@ -556,7 +548,7 @@ msgstr "/etc/passwd" msgid "User account information." msgstr "Informationen zu den Benutzerkonten" -#: vipw.8.xml:216(filename) usermod.8.xml:541(filename) +#: vipw.8.xml:216(filename) usermod.8.xml:540(filename) #: userdel.8.xml:209(filename) useradd.8.xml:684(filename) #: su.1.xml:376(filename) sg.1.xml:119(filename) shadow.5.xml:264(filename) #: shadow.3.xml:229(filename) pwck.8.xml:284(filename) @@ -568,7 +560,7 @@ msgid "/etc/shadow" msgstr "/etc/shadow" # type: Plain text -#: vipw.8.xml:218(para) usermod.8.xml:543(para) userdel.8.xml:211(para) +#: vipw.8.xml:218(para) usermod.8.xml:542(para) userdel.8.xml:211(para) #: useradd.8.xml:686(para) su.1.xml:378(para) sg.1.xml:121(para) #: shadow.5.xml:266(para) shadow.3.xml:231(para) pwck.8.xml:286(para) #: passwd.1.xml:419(para) newusers.8.xml:408(para) newgrp.1.xml:132(para) @@ -577,7 +569,7 @@ msgstr "/etc/shadow" msgid "Secure user account information." msgstr "verschlüsselte Informationen zu den Benutzerkonten" -#: vipw.8.xml:225(title) usermod.8.xml:562(title) userdel.8.xml:308(title) +#: vipw.8.xml:225(title) usermod.8.xml:561(title) userdel.8.xml:308(title) #: useradd.8.xml:804(title) suauth.5.xml:222(title) su.1.xml:438(title) #: sg.1.xml:140(title) shadow.5.xml:283(title) shadow.3.xml:238(title) #: pwconv.8.xml:262(title) pwck.8.xml:344(title) porttime.5.xml:142(title) @@ -640,15 +632,15 @@ msgstr "Julianne Frances" #: usermod.8.xml:46(surname) userdel.8.xml:46(surname) #: useradd.8.xml:57(surname) su.1.xml:57(surname) sg.1.xml:41(surname) #: shadow.5.xml:40(surname) shadow.3.xml:40(surname) pwck.8.xml:46(surname) -#: porttime.5.xml:40(surname) passwd.5.xml:40(surname) -#: passwd.1.xml:47(surname) newusers.8.xml:55(surname) -#: newgrp.1.xml:41(surname) logoutd.8.xml:40(surname) -#: login.defs.5.xml:105(surname) login.1.xml:73(surname) -#: lastlog.8.xml:41(surname) grpck.8.xml:41(surname) groups.1.xml:40(surname) -#: groupmod.8.xml:41(surname) groupdel.8.xml:41(surname) -#: groupadd.8.xml:43(surname) faillog.8.xml:40(surname) -#: faillog.5.xml:40(surname) expiry.1.xml:44(surname) chsh.1.xml:43(surname) -#: chpasswd.8.xml:44(surname) chfn.1.xml:43(surname) chage.1.xml:41(surname) +#: porttime.5.xml:40(surname) passwd.5.xml:40(surname) passwd.1.xml:47(surname) +#: newusers.8.xml:55(surname) newgrp.1.xml:41(surname) +#: logoutd.8.xml:40(surname) login.defs.5.xml:105(surname) +#: login.1.xml:73(surname) lastlog.8.xml:41(surname) grpck.8.xml:41(surname) +#: groups.1.xml:40(surname) groupmod.8.xml:41(surname) +#: groupdel.8.xml:41(surname) groupadd.8.xml:43(surname) +#: faillog.8.xml:40(surname) faillog.5.xml:40(surname) expiry.1.xml:44(surname) +#: chsh.1.xml:43(surname) chpasswd.8.xml:44(surname) chfn.1.xml:43(surname) +#: chage.1.xml:41(surname) msgid "Haugh" msgstr "Haugh" @@ -1237,20 +1229,27 @@ msgstr "" #: usermod.8.xml:478(title) userdel.8.xml:281(title) useradd.8.xml:623(title) #: su.1.xml:331(title) shadow.3.xml:218(title) passwd.1.xml:372(title) -#: newusers.8.xml:350(title) login.1.xml:260(title) lastlog.8.xml:194(title) -#: groupdel.8.xml:116(title) groupadd.8.xml:257(title) -#: gpasswd.1.xml:252(title) faillog.8.xml:232(title) chpasswd.8.xml:231(title) +#: newusers.8.xml:350(title) login.1.xml:260(title) lastlog.8.xml:216(title) +#: groupdel.8.xml:116(title) groupadd.8.xml:257(title) gpasswd.1.xml:252(title) +#: faillog.8.xml:232(title) chpasswd.8.xml:231(title) #: chgpasswd.8.xml:186(title) msgid "CAVEATS" msgstr "WARNUNGEN" #: usermod.8.xml:479(para) +#, fuzzy +#| msgid "" +#| "You must make certain that the named user is not executing any processes " +#| "when this command is being executed if the user's numerical user ID, the " +#| "user's name, or the user's home directory is being changed. " +#| "usermod checks this on Linux, but only check if the " +#| "user is logged in according to utmp on other architectures." msgid "" "You must make certain that the named user is not executing any processes " "when this command is being executed if the user's numerical user ID, the " "user's name, or the user's home directory is being changed. " -"usermod checks this on Linux, but only check if the user " -"is logged in according to utmp on other architectures." +"usermod checks this on Linux. On other platforms it only " +"uses utmp to check if the user is logged in." msgstr "" "Wenn Sie mit diesem Befehl die numerische UID, den Namen oder das Home-" "Verzeichnis eines Benutzers verändern wollen, müssen Sie sicherstellen, dass " @@ -1258,7 +1257,7 @@ msgstr "" "usermod sicher, auf anderen Architekturen überprüft es " "nur, ob der Benutzer laut utmp eingeloggt ist." -#: usermod.8.xml:487(para) +#: usermod.8.xml:486(para) msgid "" "You must change the owner of any crontab files or " "at jobs manually." @@ -1266,7 +1265,7 @@ msgstr "" "Sie müssen den Eigentümer von crontab-Dateien oder " "at-Aufträgen per Hand ändern." -#: usermod.8.xml:491(para) +#: usermod.8.xml:490(para) msgid "You must make any changes involving NIS on the NIS server." msgstr "" "Sie müssen alle Änderung in Bezug auf NIS auf dem NIS-Server vornehmen." @@ -1540,7 +1539,7 @@ msgstr "" "nach dem folgenden Algorithmus aus der UID des Benutzers errechnet: " "" -#: usermod.8.xml:529(filename) userdel.8.xml:197(filename) +#: usermod.8.xml:528(filename) userdel.8.xml:197(filename) #: useradd.8.xml:726(filename) su.1.xml:382(filename) #: pwconv.8.xml:253(filename) passwd.1.xml:423(filename) #: newusers.8.xml:424(filename) login.access.5.xml:124(filename) @@ -1551,7 +1550,7 @@ msgstr "" msgid "/etc/login.defs" msgstr "/etc/login.defs" -#: usermod.8.xml:531(para) userdel.8.xml:199(para) useradd.8.xml:728(para) +#: usermod.8.xml:530(para) userdel.8.xml:199(para) useradd.8.xml:728(para) #: su.1.xml:384(para) pwconv.8.xml:255(para) passwd.1.xml:425(para) #: newusers.8.xml:426(para) login.access.5.xml:126(para) login.1.xml:391(para) #: groupmod.8.xml:222(para) groupadd.8.xml:250(para) chsh.1.xml:184(para) @@ -1559,31 +1558,31 @@ msgstr "/etc/login.defs" msgid "Shadow password suite configuration." msgstr "Konfiguration der Shadow-Passwort-Werkzeugsammlung" -#: usermod.8.xml:547(filename) userdel.8.xml:215(filename) +#: usermod.8.xml:546(filename) userdel.8.xml:215(filename) #: useradd.8.xml:714(filename) newusers.8.xml:436(filename) #, fuzzy #| msgid "/etc/suauth" msgid "/etc/subgid" msgstr "/etc/suauth" -#: usermod.8.xml:549(para) userdel.8.xml:217(para) useradd.8.xml:716(para) +#: usermod.8.xml:548(para) userdel.8.xml:217(para) useradd.8.xml:716(para) #: newusers.8.xml:438(para) msgid "Per user subordinate group IDs." msgstr "" -#: usermod.8.xml:553(filename) userdel.8.xml:221(filename) +#: usermod.8.xml:552(filename) userdel.8.xml:221(filename) #: useradd.8.xml:720(filename) newusers.8.xml:442(filename) #, fuzzy #| msgid "/etc/suauth" msgid "/etc/subuid" msgstr "/etc/suauth" -#: usermod.8.xml:555(para) userdel.8.xml:223(para) useradd.8.xml:722(para) +#: usermod.8.xml:554(para) userdel.8.xml:223(para) useradd.8.xml:722(para) #: newusers.8.xml:444(para) msgid "Per user subordinate user IDs." msgstr "" -#: usermod.8.xml:563(para) +#: usermod.8.xml:562(para) #, fuzzy #| msgid "" #| "chfn1useradd " -"von der Variable in /etc/default/" -"useradd ab. Wenn diese Variable auf yes gesetzt ist (oder auf der Befehlszeile in /etc/login." +"defs ab. Wenn diese Variable auf yes " +"gesetzt ist (oder auf der Befehlszeile " +"angegeben wurde), wird für den Benutzer eine Gruppe, die auf seinen Namen " +"lautet, erstellt. Wenn die Variable auf no " "gesetzt ist (oder auf der Befehlszeile " "angegeben wurde), legt useradd als Hauptgruppe des neuen Benutzers diejenige " "fest, die mit der Variable in /etc/default/" @@ -2299,13 +2297,25 @@ msgstr "" "replaceable>=WERT" #: useradd.8.xml:301(para) +#, fuzzy +#| msgid "" +#| "Overrides /etc/login.defs defaults (, , " +#| " and others). Example: " +#| " PASS_MAX_DAYS=-1 can be used when creating " +#| "system account to turn off password ageing, even though system account " +#| "has no password at all. Multiple options can be " +#| "specified, e.g.:  UID_MIN=100  " +#| "UID_MAX=499" msgid "" "Overrides /etc/login.defs defaults (, , " " and others). Example: " " PASS_MAX_DAYS=-1 can be used when creating system " -"account to turn off password ageing, even though system account has no " +"account to turn off password aging, even though system account has no " "password at all. Multiple options can be specified, e." "g.:  UID_MIN=100  " @@ -2332,9 +2342,13 @@ msgid "Do not add the user to the lastlog and faillog databases." msgstr "Fügt den Benutzer nicht zu den Datenbanken lastlog und faillog hinzu." #: useradd.8.xml:327(para) +#, fuzzy +#| msgid "" +#| "By default, the user's entries in the lastlog and faillog databases are " +#| "resetted to avoid reusing the entry from a previously deleted user." msgid "" "By default, the user's entries in the lastlog and faillog databases are " -"resetted to avoid reusing the entry from a previously deleted user." +"reset to avoid reusing the entry from a previously deleted user." msgstr "" "Standardmäßig werden die Benutzereinträge in den Datenbanken lastlog und " "faillog zurückgesetzt, um zu vermeiden, dass der Eintrag eines früher " @@ -2363,9 +2377,11 @@ msgstr "" "Wenn diese Option nicht angegeben wird und " "nicht aktiviert wurde, wird standardmäßig kein Home-Verzeichnis erstellt." -#: useradd.8.xml:354(option) -msgid "-M" -msgstr "-M" +#: useradd.8.xml:353(term) +#, fuzzy +#| msgid ", " +msgid ", " +msgstr ", " #: useradd.8.xml:357(para) msgid "" @@ -2451,12 +2467,19 @@ msgstr "" "für die GID bei der Erstellung von Gruppen)." #: useradd.8.xml:434(para) +#, fuzzy +#| msgid "" +#| "Note that useradd will not create a home directory for " +#| "such an user, regardless of the default setting in /etc/login." +#| "defs (). You have to specify the " +#| " options if you want a home directory for a system " +#| "account to be created." msgid "" "Note that useradd will not create a home directory for " -"such an user, regardless of the default setting in /etc/login." -"defs (). You have to specify the " -" options if you want a home directory for a system " -"account to be created." +"such a user, regardless of the default setting in /etc/login.defs (). You have to specify the options if you want a home directory for a system account to be " +"created." msgstr "" "Beachten Sie, dass useradd für einen solchen Benutzer " "unabhängig von der Einstellung in /etc/login.defs " @@ -3085,10 +3108,14 @@ msgstr "" #. .RS #: suauth.5.xml:83(literallayout) -#, no-wrap +#, fuzzy, no-wrap +#| msgid "" +#| "\n" +#| " 1) the user su is targetting\n" +#| " " msgid "" "\n" -" 1) the user su is targetting\n" +" 1) the user su is targeting\n" " " msgstr "" "\n" @@ -3135,14 +3162,23 @@ msgstr "" # SB: What is the meaning of the last sentence? #: suauth.5.xml:107(para) +#, fuzzy +#| msgid "" +#| "from-id is formatted the same as to-id except the extra word " +#| "GROUP is recognised. ALL EXCEPT GROUP is perfectly valid too. Following GROUP " +#| "appears one or more group names, delimited by \",\". It is not sufficient " +#| "to have primary group id of the relevant group, an entry in " +#| "/etc/group5 is neccessary." msgid "" "from-id is formatted the same as to-id except the extra word " -"GROUP is recognised. ALL EXCEPT GROUPGROUP is recognized. ALL EXCEPT GROUP is perfectly valid too. Following GROUP " "appears one or more group names, delimited by \",\". It is not sufficient to " "have primary group id of the relevant group, an entry in " "/etc/group5 is neccessary." +"manvolnum> is necessary." msgstr "" "from-id hat das gleiche Format wie to-id mit der Ausnahme, dass zusätzlich " "GROUP zulässig ist. Auch ALL EXCEPT GROUP." #: su.1.xml:58(contrib) shadow.5.xml:41(contrib) shadow.3.xml:41(contrib) -#: porttime.5.xml:41(contrib) passwd.5.xml:41(contrib) -#: passwd.1.xml:48(contrib) login.1.xml:74(contrib) faillog.8.xml:41(contrib) -#: faillog.5.xml:41(contrib) +#: porttime.5.xml:41(contrib) passwd.5.xml:41(contrib) passwd.1.xml:48(contrib) +#: login.1.xml:74(contrib) faillog.8.xml:41(contrib) faillog.5.xml:41(contrib) msgid "Creation, 1989" msgstr "ursprünglicher Autor, 1989" @@ -3424,9 +3459,14 @@ msgstr "" "option> ausgeführt wird" #: su.1.xml:158(para) +#, fuzzy +#| msgid "" +#| "The executed command will have no controlling terminal. This option " +#| "cannot be used to execute interractive programs which need a controlling " +#| "TTY." msgid "" "The executed command will have no controlling terminal. This option cannot " -"be used to execute interractive programs which need a controlling TTY." +"be used to execute interactive programs which need a controlling TTY." msgstr "" "Der ausgeführte Befehl hat kein ihn steuerndes Terminal. Mit dieser Option " "können keine interaktiven Programme, die ein sie steuerndes TTY benötigen, " @@ -4152,8 +4192,13 @@ msgstr "" "Zugang, wenn das Passwortfeld leer ist." #: shadow.5.xml:117(para) gshadow.5.xml:107(para) +#, fuzzy +#| msgid "" +#| "A password field which starts with a exclamation mark means that the " +#| "password is locked. The remaining characters on the line represent the " +#| "password field before the password was locked." msgid "" -"A password field which starts with a exclamation mark means that the " +"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." msgstr "" @@ -4174,9 +4219,13 @@ msgstr "" "der Tage seit dem 1. Januar 1970 ausgedrückt." #: shadow.5.xml:134(para) +#, fuzzy +#| msgid "" +#| "The value 0 has a special meaning, which is that the user should change " +#| "her pasword the next time she will log in the system." msgid "" "The value 0 has a special meaning, which is that the user should change her " -"pasword the next time she will log in the system." +"password the next time she will log in the system." msgstr "" "Dem Wert 0 kommt eine besondere Bedeutung zu: Der Benutzer sollte sein " "Passwort bei der nächsten Anmeldung ändern." @@ -4303,9 +4352,15 @@ msgstr "" "Januar 1970 ausgedrückt." #: shadow.5.xml:229(para) +#, fuzzy +#| msgid "" +#| "Note that an account expiration differs from a password expiration. In " +#| "case of an acount 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." msgid "" "Note that an account expiration differs from a password expiration. In case " -"of an acount expiration, the user shall not be allowed to login. In case of " +"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." msgstr "" "Beachten Sie, dass der Verfall eines Kontos sich von dem Ablaufen eines " @@ -4645,18 +4700,15 @@ msgstr "" msgid "pwconv" msgstr "pwconv" -#: pwconv.8.xml:71(refname) pwconv.8.xml:85(command) -#: login.defs.5.xml:438(term) +#: pwconv.8.xml:71(refname) pwconv.8.xml:85(command) login.defs.5.xml:438(term) msgid "pwunconv" msgstr "pwunconv" -#: pwconv.8.xml:72(refname) pwconv.8.xml:91(command) -#: login.defs.5.xml:340(term) +#: pwconv.8.xml:72(refname) pwconv.8.xml:91(command) login.defs.5.xml:340(term) msgid "grpconv" msgstr "grpconv" -#: pwconv.8.xml:73(refname) pwconv.8.xml:97(command) -#: login.defs.5.xml:346(term) +#: pwconv.8.xml:73(refname) pwconv.8.xml:97(command) login.defs.5.xml:346(term) msgid "grpunconv" msgstr "grpunconv" @@ -4880,8 +4932,7 @@ msgstr "überprüft die Stimmigkeit der Passwortdateien" #: pwck.8.xml:80(replaceable) passwd.5.xml:57(refentrytitle) #: passwd.5.xml:64(refname) passwd.1.xml:64(refentrytitle) -#: passwd.1.xml:71(refname) passwd.1.xml:77(command) -#: login.defs.5.xml:409(term) +#: passwd.1.xml:71(refname) passwd.1.xml:77(command) login.defs.5.xml:409(term) msgid "passwd" msgstr "passwd" @@ -5060,10 +5111,15 @@ msgstr "" "replaceable> und shadow auswählen." #: pwck.8.xml:243(para) +#, fuzzy +#| msgid "" +#| "Note that when is enabled, you cannot specify an " +#| "alternative shadow file. In future releases, " +#| "this paramater could be replaced by an alternate TCB directory." msgid "" "Note that when is enabled, you cannot specify an " "alternative shadow file. In future releases, this " -"paramater could be replaced by an alternate TCB directory." +"parameter could be replaced by an alternate TCB directory." msgstr "" "Hinweis: Wenn aktiviert ist, können Sie keine " "andere shadow-Datei angeben. In zukünftigen " @@ -5520,8 +5576,12 @@ msgstr "" "erraten, und stellt daher eine Gefahr für die Sicherheit Ihres Systems dar." #: passwd.1.xml:166(para) +#, fuzzy +#| msgid "" +#| "You can find advices on how to choose a strong password on http://en." +#| "wikipedia.org/wiki/Password_strength" msgid "" -"You can find advices on how to choose a strong password on http://en." +"You can find advice on how to choose a strong password on http://en." "wikipedia.org/wiki/Password_strength" msgstr "" "Ratschläge, wie Sie ein sicheres Passwort wählen, finden Sie unter http://de." @@ -5901,8 +5961,8 @@ msgstr " (Zahl)" #: passwd.1.xml:35(para) login.defs.5.xml:35(para) msgid "" "Number of significant characters in the password for crypt(). " -" is 8 by default. Don't change unless your crypt" -"() is better. This is ignored if set to " +" is 8 by default. Don't change unless your " +"crypt() is better. This is ignored if set to " "yes." msgstr "" "Anzahl der von crypt() berücksichtigten Zeichen des Passworts. Standardmäßig " @@ -6077,7 +6137,9 @@ msgid "HISTORY" msgstr "GESCHICHTE" #: nologin.8.xml:91(para) -msgid "The nologin command appearred in BSD 4.4." +#, fuzzy +#| msgid "The nologin command appearred in BSD 4.4." +msgid "The nologin command appeared in BSD 4.4." msgstr "Der Befehl nologin tauchte erstmals in BSD 4.4 auf." #: newusers.8.xml:72(refentrytitle) newusers.8.xml:79(refname) @@ -6122,8 +6184,14 @@ msgid "This is the name of the user." msgstr "Dies ist der Name des Benutzers." #: newusers.8.xml:116(para) +#, fuzzy +#| msgid "" +#| "It can be the name of a new user or the name of an existing user (or an " +#| "user created before by newusers). In case of an " +#| "existing user, the user's information will be changed, otherwise a new " +#| "user will be created." msgid "" -"It can be the name of a new user or the name of an existing user (or an user " +"It can be the name of a new user or the name of an existing user (or a user " "created before by newusers). In case of an existing user, " "the user's information will be changed, otherwise a new user will be created." msgstr "" @@ -6153,8 +6221,12 @@ msgid "This field is used to define the UID of the user." msgstr "Mit diesem Feld wird die UID des Benutzers bestimmt." #: newusers.8.xml:144(para) +#, fuzzy +#| msgid "" +#| "If the field is empty, an new (unused) UID will be defined automatically " +#| "by newusers." msgid "" -"If the field is empty, an new (unused) UID will be defined automatically by " +"If the field is empty, a new (unused) UID will be defined automatically by " "newusers." msgstr "" "Wenn dieses Feld leer ist, wird von newusers automatisch " @@ -6165,8 +6237,13 @@ msgid "If this field contains a number, this number will be used as the UID." msgstr "Wenn dieses Feld eine Zahl enthält, wird sie als UID verwendet." #: newusers.8.xml:152(para) +#, fuzzy +#| msgid "" +#| "If this field contains the name of an existing user (or the name of an " +#| "user created before by newusers), the UID of the " +#| "specified user will be used." msgid "" -"If this field contains the name of an existing user (or the name of an user " +"If this field contains the name of an existing user (or the name of a user " "created before by newusers), the UID of the specified " "user will be used." msgstr "" @@ -7750,7 +7827,9 @@ msgid "D: max data size (KB)" msgstr "D: maximale Datengröße (KB)" #: limits.5.xml:111(para) -msgid "F: maximum filesize (KB)" +#, fuzzy +#| msgid "F: maximum filesize (KB)" +msgid "F: maximum file size (KB)" msgstr "F: maximale Dateigröße (KB)" #: limits.5.xml:112(para) @@ -7831,9 +7910,15 @@ msgstr "" " " #: limits.5.xml:145(para) +#, fuzzy +#| msgid "" +#| "Be aware that after username the rest of " +#| "the line is considered a limit string, thus comments are not allowed. A " +#| "invalid limits string will be rejected (not considered) by the " +#| "login program." msgid "" "Be aware that after username the rest of " -"the line is considered a limit string, thus comments are not allowed. A " +"the line is considered a limit string, thus comments are not allowed. An " "invalid limits string will be rejected (not considered) by the " "login program." msgstr "" @@ -7864,16 +7949,26 @@ msgstr "" "group." #: limits.5.xml:165(para) +#, fuzzy +#| msgid "" +#| "If more than one line with limits for an user exist, only the first line " +#| "for this user will be considered." msgid "" -"If more than one line with limits for an user exist, only the first line for " +"If more than one line with limits for a user exist, only the first line for " "this user will be considered." msgstr "" "Wenn mehr als eine Zeile mit Beschränkungen für einen Benutzer vorhanden " "ist, wird für ihn nur die erste Zeile berücksichtigt." #: limits.5.xml:170(para) +#, fuzzy +#| msgid "" +#| "If no lines are specified for an user, the last @group 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." msgid "" -"If no lines are specified for an user, the last @group@group 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." @@ -7976,7 +8071,37 @@ msgstr "" "gibt nur Lastlog-Einträge aus, die älter als TAGE sind" -#: lastlog.8.xml:127(term) faillog.8.xml:192(term) +#: lastlog.8.xml:107(term) +#, fuzzy +#| msgid ", " +msgid ", " +msgstr ", " + +#: lastlog.8.xml:111(para) +#, fuzzy +#| msgid "" +#| "This option is only valid in combination with the (or " +#| ") option." +msgid "" +"Clear lastlog record of a user. This option can be used only together with " +" ())." +msgstr "" +"Diese Option ist nur in Verbindung mit der Option (oder " +") zulässig." + +#: lastlog.8.xml:138(term) +#, fuzzy +#| msgid ", " +msgid ", " +msgstr ", " + +#: lastlog.8.xml:142(para) +msgid "" +"Set lastlog record of a user to the current time. This option can be used " +"only together with ())." +msgstr "" + +#: lastlog.8.xml:149(term) faillog.8.xml:192(term) msgid "" ",  DAYS" @@ -7984,7 +8109,7 @@ msgstr "" ",  TAGE" -#: lastlog.8.xml:131(para) +#: lastlog.8.xml:153(para) msgid "" "Print the lastlog records more recent than DAYS." @@ -7992,7 +8117,7 @@ msgstr "" "gibt nur Lastlog-Einträge aus, die neuer als TAGE sind" -#: lastlog.8.xml:138(term) faillog.8.xml:202(term) +#: lastlog.8.xml:160(term) faillog.8.xml:202(term) msgid "" ",  LOGIN|RANGE" @@ -8000,11 +8125,11 @@ msgstr "" ",  LOGIN|MENGE" -#: lastlog.8.xml:142(para) +#: lastlog.8.xml:164(para) msgid "Print the lastlog record of the specified user(s)." msgstr "gibt nur die Lastlog-Einträge für die angegebenen Benutzer aus" -#: lastlog.8.xml:145(para) faillog.8.xml:211(para) +#: lastlog.8.xml:167(para) faillog.8.xml:211(para) msgid "" "The users can be specified by a login name, a numerical user ID, or a " "RANGE of users. This RANGEUID_MIN-UID_MAX) oder nur einem " "Minimumwert (UID_MIN-) bestimmt werden." -#: lastlog.8.xml:157(para) +#: lastlog.8.xml:179(para) msgid "" "If the user has never logged in the message ** Never logged in** will be displayed instead of the port and time." @@ -8028,7 +8153,7 @@ msgstr "" "** Never logged in** anstatt von Port und Zeit " "angezeigt." -#: lastlog.8.xml:162(para) +#: lastlog.8.xml:184(para) msgid "" "Only the entries for the current users of the system will be displayed. " "Other entries may exist for users that were deleted previously." @@ -8036,12 +8161,12 @@ msgstr "" "Es werden nur Einträge für auf dem System vorhandene Benutzer angezeigt, " "selbst wenn Einträge über gelöschte Benutzer noch vorhanden sind." -#: lastlog.8.xml:170(title) groups.1.xml:90(title) chsh.1.xml:140(title) +#: lastlog.8.xml:192(title) groups.1.xml:90(title) chsh.1.xml:140(title) #: chage.1.xml:231(title) msgid "NOTE" msgstr "ANMERKUNGEN" -#: lastlog.8.xml:171(para) +#: lastlog.8.xml:193(para) msgid "" "The lastlog file is a database which contains info on " "the last login of each user. You should not rotate it. It is a sparse file, " @@ -8059,15 +8184,15 @@ msgstr "" "filename> befinden). Die wirkliche Dateigröße lässt sich mit »ls -" "s« anzeigen." -#: lastlog.8.xml:185(filename) +#: lastlog.8.xml:207(filename) msgid "/var/log/lastlog" msgstr "/var/log/lastlog" -#: lastlog.8.xml:187(para) +#: lastlog.8.xml:209(para) msgid "Database times of previous user logins." msgstr "Datenbank mit Zeiten der letzten Anmeldung der Benutzer" -#: lastlog.8.xml:195(para) +#: lastlog.8.xml:217(para) msgid "" "Large gaps in UID numbers will cause the lastlog program to run longer with " "no output to the screen (i.e. if in lastlog database there is no entries for " @@ -8130,8 +8255,14 @@ msgstr "" "kein Passwort benötigen." #: gshadow.5.xml:97(para) +#, fuzzy +#| msgid "" +#| "The password is used when an user who is not a member of the group wants " +#| "to gain the permissions of this group (see " +#| "newgrp1)." msgid "" -"The password is used when an user who is not a member of the group wants to " +"The password is used when a user who is not a member of the group wants to " "gain the permissions of this group (see newgrp1)." msgstr "" @@ -8677,7 +8808,9 @@ msgstr "" "replaceable>" #: groupmems.8.xml:109(para) -msgid "Add an user to the group membership list." +#, fuzzy +#| msgid "Add an user to the group membership list." +msgid "Add a user to the group membership list." msgstr "Fügt einen Benutzer der Mitgliederliste der Gruppe hinzu." #: groupmems.8.xml:110(para) groupmems.8.xml:126(para) @@ -9726,10 +9859,17 @@ msgstr "" "Alter des Passworts aktualisiert." #: chpasswd.8.xml:97(para) +#, fuzzy +#| msgid "" +#| "The default encryption algorithm can be defined for the system with the " +#| " or " +#| "variables of /etc/login.defs, and can be overwitten " +#| "with the , , or " +#| "options." msgid "" "The default encryption algorithm can be defined for the system with the " " or variables " -"of /etc/login.defs, and can be overwitten with the " +"of /etc/login.defs, and can be overwritten with the " ", , or options." msgstr "" "Der standardmäßige Verschlüsselungsalgorithmus kann systemweit mit den " @@ -9750,10 +9890,16 @@ msgstr "" "nicht angeraten)." #: chpasswd.8.xml:111(para) +#, fuzzy +#| msgid "" +#| "Except when PAM is used to encrypt the " +#| "passwords,chpasswd first updates all the " +#| "passwords in memory, and then commits all the changes to disk if no " +#| "errors occured for any user." msgid "" "Except when PAM is used to encrypt the passwords,chpasswd first updates all the passwords in " -"memory, and then commits all the changes to disk if no errors occured for " +"memory, and then commits all the changes to disk if no errors occurred for " "any user." msgstr "" "PAM wird nicht zur Verschlüsselung der Passwörter " @@ -9921,10 +10067,16 @@ msgstr "" "Standardalgorithmus zur Verschlüsselung ist DES." #: chgpasswd.8.xml:92(para) +#, fuzzy +#| msgid "" +#| "The default encryption algorithm can be defined for the system with the " +#| " variable of /etc/login.defs, and can be overwiten with the , options." msgid "" "The default encryption algorithm can be defined for the system with the " " variable of /etc/login.defs, and can be overwiten with the , , options." msgstr "" "Der standardmäßige Verschlüsselungsalgorithmus wird systemweit mit der " @@ -10329,6 +10481,9 @@ msgstr "" msgid "translator-credits" msgstr "Simon Brandmair (sbrandmair@gmx.net), 2005, 2007, 2011." +#~ msgid "-M" +#~ msgstr "-M" + #~ msgid "Kłoczko" #~ msgstr "Kłoczko" diff --git a/man/po/fr.po b/man/po/fr.po index 3fb69a20..754bf683 100644 --- a/man/po/fr.po +++ b/man/po/fr.po @@ -20,7 +20,7 @@ msgid "" msgstr "" "Project-Id-Version: shadow-man-pages 4.0.18\n" -"POT-Creation-Date: 2013-08-23 01:54+0200\n" +"POT-Creation-Date: 2016-09-18 14:03-0500\n" "PO-Revision-Date: 2013-08-23 01:37+0200\n" "Last-Translator: Thomas Blein \n" "Language-Team: French \n" @@ -72,16 +72,15 @@ msgstr "" #: useradd.8.xml:62(surname) suauth.5.xml:45(surname) su.1.xml:62(surname) #: sg.1.xml:46(surname) shadow.5.xml:45(surname) shadow.3.xml:45(surname) #: pwconv.8.xml:51(surname) pwck.8.xml:51(surname) porttime.5.xml:45(surname) -#: passwd.5.xml:45(surname) passwd.1.xml:52(surname) -#: newusers.8.xml:60(surname) newgrp.1.xml:46(surname) -#: logoutd.8.xml:45(surname) login.defs.5.xml:110(surname) -#: login.access.5.xml:46(surname) login.1.xml:78(surname) -#: limits.5.xml:47(surname) lastlog.8.xml:46(surname) grpck.8.xml:46(surname) -#: groups.1.xml:45(surname) groupmod.8.xml:46(surname) +#: passwd.5.xml:45(surname) passwd.1.xml:52(surname) newusers.8.xml:60(surname) +#: newgrp.1.xml:46(surname) logoutd.8.xml:45(surname) +#: login.defs.5.xml:110(surname) login.access.5.xml:46(surname) +#: login.1.xml:78(surname) limits.5.xml:47(surname) lastlog.8.xml:46(surname) +#: grpck.8.xml:46(surname) groups.1.xml:45(surname) groupmod.8.xml:46(surname) #: groupmems.8.xml:49(surname) groupdel.8.xml:46(surname) #: groupadd.8.xml:48(surname) gpasswd.1.xml:50(surname) -#: faillog.8.xml:45(surname) faillog.5.xml:45(surname) -#: expiry.1.xml:49(surname) chsh.1.xml:48(surname) chpasswd.8.xml:49(surname) +#: faillog.8.xml:45(surname) faillog.5.xml:45(surname) expiry.1.xml:49(surname) +#: chsh.1.xml:48(surname) chpasswd.8.xml:49(surname) #: chgpasswd.8.xml:45(surname) chfn.1.xml:48(surname) chage.1.xml:46(surname) msgid "Kłoczko" msgstr "" @@ -106,17 +105,16 @@ msgstr "" #: useradd.8.xml:64(contrib) suauth.5.xml:47(contrib) su.1.xml:64(contrib) #: sg.1.xml:48(contrib) shadow.5.xml:47(contrib) shadow.3.xml:47(contrib) #: pwconv.8.xml:53(contrib) pwck.8.xml:53(contrib) porttime.5.xml:47(contrib) -#: passwd.5.xml:47(contrib) passwd.1.xml:54(contrib) -#: newusers.8.xml:62(contrib) newgrp.1.xml:48(contrib) -#: logoutd.8.xml:47(contrib) login.defs.5.xml:112(contrib) -#: login.access.5.xml:48(contrib) login.1.xml:80(contrib) -#: limits.5.xml:49(contrib) lastlog.8.xml:48(contrib) grpck.8.xml:48(contrib) -#: groups.1.xml:47(contrib) groupmod.8.xml:48(contrib) +#: passwd.5.xml:47(contrib) passwd.1.xml:54(contrib) newusers.8.xml:62(contrib) +#: newgrp.1.xml:48(contrib) logoutd.8.xml:47(contrib) +#: login.defs.5.xml:112(contrib) login.access.5.xml:48(contrib) +#: login.1.xml:80(contrib) limits.5.xml:49(contrib) lastlog.8.xml:48(contrib) +#: grpck.8.xml:48(contrib) groups.1.xml:47(contrib) groupmod.8.xml:48(contrib) #: groupmems.8.xml:51(contrib) groupdel.8.xml:48(contrib) #: groupadd.8.xml:50(contrib) gpasswd.1.xml:52(contrib) -#: faillog.8.xml:47(contrib) faillog.5.xml:47(contrib) -#: expiry.1.xml:51(contrib) chsh.1.xml:50(contrib) chpasswd.8.xml:51(contrib) -#: chfn.1.xml:50(contrib) chage.1.xml:48(contrib) +#: faillog.8.xml:47(contrib) faillog.5.xml:47(contrib) expiry.1.xml:51(contrib) +#: chsh.1.xml:50(contrib) chpasswd.8.xml:51(contrib) chfn.1.xml:50(contrib) +#: chage.1.xml:48(contrib) msgid "shadow-utils maintainer, 2000 - 2007" msgstr "" @@ -150,14 +148,13 @@ msgstr "" #: newusers.8.xml:66(surname) newgrp.1.xml:52(surname) #: logoutd.8.xml:51(surname) login.defs.5.xml:116(surname) #: login.access.5.xml:52(surname) login.1.xml:84(surname) -#: limits.5.xml:53(surname) lastlog.8.xml:52(surname) -#: gshadow.5.xml:39(surname) grpck.8.xml:52(surname) groups.1.xml:51(surname) -#: groupmod.8.xml:52(surname) groupmems.8.xml:55(surname) -#: groupdel.8.xml:52(surname) groupadd.8.xml:54(surname) -#: gpasswd.1.xml:56(surname) faillog.8.xml:51(surname) -#: faillog.5.xml:51(surname) expiry.1.xml:55(surname) chsh.1.xml:54(surname) -#: chpasswd.8.xml:55(surname) chgpasswd.8.xml:51(surname) -#: chfn.1.xml:54(surname) chage.1.xml:52(surname) +#: limits.5.xml:53(surname) lastlog.8.xml:52(surname) gshadow.5.xml:39(surname) +#: grpck.8.xml:52(surname) groups.1.xml:51(surname) groupmod.8.xml:52(surname) +#: groupmems.8.xml:55(surname) groupdel.8.xml:52(surname) +#: groupadd.8.xml:54(surname) gpasswd.1.xml:56(surname) +#: faillog.8.xml:51(surname) faillog.5.xml:51(surname) expiry.1.xml:55(surname) +#: chsh.1.xml:54(surname) chpasswd.8.xml:55(surname) +#: chgpasswd.8.xml:51(surname) chfn.1.xml:54(surname) chage.1.xml:52(surname) msgid "François" msgstr "" @@ -186,14 +183,13 @@ msgstr "" #: newusers.8.xml:68(contrib) newgrp.1.xml:54(contrib) #: logoutd.8.xml:53(contrib) login.defs.5.xml:118(contrib) #: login.access.5.xml:54(contrib) login.1.xml:86(contrib) -#: limits.5.xml:55(contrib) lastlog.8.xml:54(contrib) -#: gshadow.5.xml:42(contrib) grpck.8.xml:54(contrib) groups.1.xml:53(contrib) -#: groupmod.8.xml:54(contrib) groupmems.8.xml:57(contrib) -#: groupdel.8.xml:54(contrib) groupadd.8.xml:56(contrib) -#: gpasswd.1.xml:58(contrib) faillog.8.xml:53(contrib) -#: faillog.5.xml:53(contrib) expiry.1.xml:57(contrib) chsh.1.xml:56(contrib) -#: chpasswd.8.xml:57(contrib) chgpasswd.8.xml:53(contrib) -#: chfn.1.xml:56(contrib) chage.1.xml:54(contrib) +#: limits.5.xml:55(contrib) lastlog.8.xml:54(contrib) gshadow.5.xml:42(contrib) +#: grpck.8.xml:54(contrib) groups.1.xml:53(contrib) groupmod.8.xml:54(contrib) +#: groupmems.8.xml:57(contrib) groupdel.8.xml:54(contrib) +#: groupadd.8.xml:56(contrib) gpasswd.1.xml:58(contrib) +#: faillog.8.xml:53(contrib) faillog.5.xml:53(contrib) expiry.1.xml:57(contrib) +#: chsh.1.xml:56(contrib) chpasswd.8.xml:57(contrib) +#: chgpasswd.8.xml:53(contrib) chfn.1.xml:56(contrib) chage.1.xml:54(contrib) msgid "shadow-utils maintainer, 2007 - now" msgstr "" @@ -264,14 +260,13 @@ msgstr "Éditer les fichiers passwd, group, shadow ou gshadow" #: useradd.8.xml:88(replaceable) useradd.8.xml:100(replaceable) #: su.1.xml:88(replaceable) pwconv.8.xml:81(replaceable) #: pwconv.8.xml:87(replaceable) pwconv.8.xml:93(replaceable) -#: pwconv.8.xml:99(replaceable) pwck.8.xml:77(arg) -#: passwd.1.xml:79(replaceable) newusers.8.xml:87(replaceable) -#: lastlog.8.xml:73(replaceable) grpck.8.xml:72(arg) -#: groupmod.8.xml:73(replaceable) groupdel.8.xml:73(replaceable) -#: groupadd.8.xml:75(replaceable) faillog.8.xml:72(replaceable) -#: chsh.1.xml:75(replaceable) chpasswd.8.xml:76(replaceable) -#: chgpasswd.8.xml:72(replaceable) chfn.1.xml:75(replaceable) -#: chage.1.xml:72(replaceable) +#: pwconv.8.xml:99(replaceable) pwck.8.xml:77(arg) passwd.1.xml:79(replaceable) +#: newusers.8.xml:87(replaceable) lastlog.8.xml:73(replaceable) +#: grpck.8.xml:72(arg) groupmod.8.xml:73(replaceable) +#: groupdel.8.xml:73(replaceable) groupadd.8.xml:75(replaceable) +#: faillog.8.xml:72(replaceable) chsh.1.xml:75(replaceable) +#: chpasswd.8.xml:76(replaceable) chgpasswd.8.xml:72(replaceable) +#: chfn.1.xml:75(replaceable) chage.1.xml:72(replaceable) msgid "options" msgstr "options" @@ -321,11 +316,10 @@ msgstr "" #: useradd.8.xml:124(title) su.1.xml:145(title) pwconv.8.xml:187(title) #: pwck.8.xml:176(title) passwd.1.xml:174(title) newusers.8.xml:265(title) #: login.1.xml:210(title) lastlog.8.xml:91(title) grpck.8.xml:147(title) -#: groupmod.8.xml:89(title) groupmems.8.xml:100(title) -#: groupdel.8.xml:88(title) groupadd.8.xml:93(title) gpasswd.1.xml:134(title) -#: faillog.8.xml:89(title) expiry.1.xml:91(title) chsh.1.xml:95(title) -#: chpasswd.8.xml:130(title) chgpasswd.8.xml:105(title) chfn.1.xml:111(title) -#: chage.1.xml:91(title) +#: groupmod.8.xml:89(title) groupmems.8.xml:100(title) groupdel.8.xml:88(title) +#: groupadd.8.xml:93(title) gpasswd.1.xml:134(title) faillog.8.xml:89(title) +#: expiry.1.xml:91(title) chsh.1.xml:95(title) chpasswd.8.xml:130(title) +#: chgpasswd.8.xml:105(title) chfn.1.xml:111(title) chage.1.xml:91(title) msgid "OPTIONS" msgstr "OPTIONS" @@ -347,7 +341,7 @@ msgstr "Éditer la base de données de groupes." #: vipw.8.xml:120(term) userdel.8.xml:123(term) useradd.8.xml:266(term) #: pwconv.8.xml:195(term) pwck.8.xml:186(term) passwd.1.xml:214(term) -#: newusers.8.xml:283(term) lastlog.8.xml:107(term) grpck.8.xml:157(term) +#: newusers.8.xml:283(term) lastlog.8.xml:118(term) grpck.8.xml:157(term) #: groupmod.8.xml:129(term) groupmems.8.xml:142(term) groupdel.8.xml:95(term) #: groupadd.8.xml:131(term) gpasswd.1.xml:173(term) faillog.8.xml:122(term) #: expiry.1.xml:112(term) chsh.1.xml:101(term) chpasswd.8.xml:171(term) @@ -357,7 +351,7 @@ msgstr ", " #: vipw.8.xml:122(para) userdel.8.xml:125(para) useradd.8.xml:268(para) #: pwconv.8.xml:197(para) pwck.8.xml:188(para) passwd.1.xml:216(para) -#: newusers.8.xml:285(para) lastlog.8.xml:111(para) grpck.8.xml:159(para) +#: newusers.8.xml:285(para) lastlog.8.xml:122(para) grpck.8.xml:159(para) #: groupmod.8.xml:131(para) groupmems.8.xml:144(para) groupdel.8.xml:97(para) #: groupadd.8.xml:133(para) gpasswd.1.xml:175(para) faillog.8.xml:124(para) #: expiry.1.xml:114(para) chsh.1.xml:103(para) chpasswd.8.xml:173(para) @@ -383,7 +377,7 @@ msgstr "Mode silencieux." #: vipw.8.xml:138(term) usermod.8.xml:311(term) userdel.8.xml:146(term) #: useradd.8.xml:445(term) pwconv.8.xml:201(term) pwck.8.xml:209(term) -#: passwd.1.xml:301(term) newusers.8.xml:308(term) lastlog.8.xml:115(term) +#: passwd.1.xml:301(term) newusers.8.xml:308(term) lastlog.8.xml:126(term) #: grpck.8.xml:173(term) groupmod.8.xml:178(term) groupmems.8.xml:165(term) #: groupdel.8.xml:101(term) groupadd.8.xml:204(term) faillog.8.xml:180(term) #: chsh.1.xml:107(term) chpasswd.8.xml:188(term) chgpasswd.8.xml:146(term) @@ -397,7 +391,7 @@ msgstr "" #: vipw.8.xml:142(para) usermod.8.xml:315(para) userdel.8.xml:150(para) #: useradd.8.xml:449(para) pwconv.8.xml:205(para) pwck.8.xml:213(para) -#: passwd.1.xml:305(para) newusers.8.xml:312(para) lastlog.8.xml:119(para) +#: passwd.1.xml:305(para) newusers.8.xml:312(para) lastlog.8.xml:130(para) #: grpck.8.xml:177(para) groupmod.8.xml:182(para) groupmems.8.xml:169(para) #: groupdel.8.xml:105(para) groupadd.8.xml:208(para) gpasswd.1.xml:185(para) #: faillog.8.xml:184(para) chsh.1.xml:111(para) chpasswd.8.xml:192(para) @@ -427,18 +421,18 @@ msgstr ", " msgid "Indicates which user's tcb shadow file to edit." msgstr "Indique l'utilisateur dont le fichier shadow de tcb doit être édité." -#: vipw.8.xml:165(title) usermod.8.xml:497(title) userdel.8.xml:171(title) +#: vipw.8.xml:165(title) usermod.8.xml:496(title) userdel.8.xml:171(title) #: useradd.8.xml:647(title) su.1.xml:339(title) sg.1.xml:98(title) #: pwconv.8.xml:227(title) pwck.8.xml:252(title) passwd.1.xml:390(title) #: newusers.8.xml:362(title) newgrp.1.xml:109(title) login.1.xml:294(title) #: grpck.8.xml:209(title) groupmod.8.xml:193(title) groupmems.8.xml:199(title) -#: groupdel.8.xml:128(title) groupadd.8.xml:219(title) -#: gpasswd.1.xml:264(title) chsh.1.xml:154(title) chpasswd.8.xml:239(title) -#: chgpasswd.8.xml:198(title) chfn.1.xml:193(title) chage.1.xml:244(title) +#: groupdel.8.xml:128(title) groupadd.8.xml:219(title) gpasswd.1.xml:264(title) +#: chsh.1.xml:154(title) chpasswd.8.xml:239(title) chgpasswd.8.xml:198(title) +#: chfn.1.xml:193(title) chage.1.xml:244(title) msgid "CONFIGURATION" msgstr "CONFIGURATION" -#: vipw.8.xml:166(para) usermod.8.xml:498(para) userdel.8.xml:172(para) +#: vipw.8.xml:166(para) usermod.8.xml:497(para) userdel.8.xml:172(para) #: useradd.8.xml:648(para) su.1.xml:340(para) sg.1.xml:99(para) #: pwck.8.xml:253(para) passwd.1.xml:391(para) newusers.8.xml:363(para) #: newgrp.1.xml:110(para) login.1.xml:295(para) grpck.8.xml:210(para) @@ -491,37 +485,35 @@ msgstr "EDITOR" msgid "Editor to be used if is not set." msgstr "L'éditeur à utiliser si n'est pas définie." -#: vipw.8.xml:195(title) usermod.8.xml:514(title) userdel.8.xml:188(title) +#: vipw.8.xml:195(title) usermod.8.xml:513(title) userdel.8.xml:188(title) #: useradd.8.xml:675(title) suauth.5.xml:193(title) su.1.xml:367(title) #: sg.1.xml:110(title) shadow.5.xml:255(title) shadow.3.xml:226(title) #: pwconv.8.xml:250(title) pwck.8.xml:269(title) porttime.5.xml:130(title) #: passwd.5.xml:141(title) passwd.1.xml:408(title) newusers.8.xml:397(title) #: newgrp.1.xml:121(title) logoutd.8.xml:89(title) -#: login.access.5.xml:121(title) login.1.xml:338(title) -#: limits.5.xml:196(title) lastlog.8.xml:182(title) gshadow.5.xml:156(title) -#: grpck.8.xml:221(title) groups.1.xml:100(title) groupmod.8.xml:205(title) -#: groupmems.8.xml:211(title) groupdel.8.xml:140(title) -#: groupadd.8.xml:233(title) gpasswd.1.xml:279(title) faillog.8.xml:243(title) -#: faillog.5.xml:96(title) expiry.1.xml:121(title) chsh.1.xml:167(title) -#: chpasswd.8.xml:255(title) chgpasswd.8.xml:213(title) chfn.1.xml:207(title) -#: chage.1.xml:256(title) +#: login.access.5.xml:121(title) login.1.xml:338(title) limits.5.xml:196(title) +#: lastlog.8.xml:204(title) gshadow.5.xml:156(title) grpck.8.xml:221(title) +#: groups.1.xml:100(title) groupmod.8.xml:205(title) groupmems.8.xml:211(title) +#: groupdel.8.xml:140(title) groupadd.8.xml:233(title) gpasswd.1.xml:279(title) +#: faillog.8.xml:243(title) faillog.5.xml:96(title) expiry.1.xml:121(title) +#: chsh.1.xml:167(title) chpasswd.8.xml:255(title) chgpasswd.8.xml:213(title) +#: chfn.1.xml:207(title) chage.1.xml:256(title) msgid "FILES" msgstr "FICHIERS" -#: vipw.8.xml:198(filename) usermod.8.xml:517(filename) +#: vipw.8.xml:198(filename) usermod.8.xml:516(filename) #: userdel.8.xml:191(filename) useradd.8.xml:690(filename) -#: sg.1.xml:125(filename) pwck.8.xml:272(filename) -#: newusers.8.xml:412(filename) newgrp.1.xml:136(filename) -#: gshadow.5.xml:159(filename) grpck.8.xml:224(filename) -#: groups.1.xml:103(filename) groupmod.8.xml:208(filename) -#: groupmems.8.xml:214(filename) groupdel.8.xml:143(filename) -#: groupadd.8.xml:236(filename) gpasswd.1.xml:72(filename) -#: gpasswd.1.xml:75(filename) gpasswd.1.xml:282(filename) -#: chgpasswd.8.xml:216(filename) +#: sg.1.xml:125(filename) pwck.8.xml:272(filename) newusers.8.xml:412(filename) +#: newgrp.1.xml:136(filename) gshadow.5.xml:159(filename) +#: grpck.8.xml:224(filename) groups.1.xml:103(filename) +#: groupmod.8.xml:208(filename) groupmems.8.xml:214(filename) +#: groupdel.8.xml:143(filename) groupadd.8.xml:236(filename) +#: gpasswd.1.xml:72(filename) gpasswd.1.xml:75(filename) +#: gpasswd.1.xml:282(filename) chgpasswd.8.xml:216(filename) msgid "/etc/group" msgstr "/etc/group" -#: vipw.8.xml:200(para) usermod.8.xml:519(para) userdel.8.xml:193(para) +#: vipw.8.xml:200(para) usermod.8.xml:518(para) userdel.8.xml:193(para) #: useradd.8.xml:692(para) sg.1.xml:127(para) pwck.8.xml:274(para) #: newusers.8.xml:414(para) newgrp.1.xml:138(para) gshadow.5.xml:161(para) #: grpck.8.xml:226(para) groups.1.xml:105(para) groupmod.8.xml:210(para) @@ -530,7 +522,7 @@ msgstr "/etc/group" msgid "Group account information." msgstr "Informations sur les groupes." -#: vipw.8.xml:204(filename) usermod.8.xml:523(filename) +#: vipw.8.xml:204(filename) usermod.8.xml:522(filename) #: useradd.8.xml:696(filename) sg.1.xml:131(filename) #: newusers.8.xml:418(filename) newgrp.1.xml:142(filename) #: gshadow.5.xml:165(filename) grpck.8.xml:230(filename) @@ -541,7 +533,7 @@ msgstr "Informations sur les groupes." msgid "/etc/gshadow" msgstr "/etc/gshadow" -#: vipw.8.xml:206(para) usermod.8.xml:525(para) useradd.8.xml:698(para) +#: vipw.8.xml:206(para) usermod.8.xml:524(para) useradd.8.xml:698(para) #: sg.1.xml:133(para) newusers.8.xml:420(para) newgrp.1.xml:144(para) #: gshadow.5.xml:167(para) grpck.8.xml:232(para) groupmod.8.xml:216(para) #: groupdel.8.xml:151(para) groupadd.8.xml:244(para) gpasswd.1.xml:290(para) @@ -549,7 +541,7 @@ msgstr "/etc/gshadow" msgid "Secure group account information." msgstr "Informations sécurisées sur les groupes." -#: vipw.8.xml:210(filename) usermod.8.xml:535(filename) +#: vipw.8.xml:210(filename) usermod.8.xml:534(filename) #: userdel.8.xml:203(filename) useradd.8.xml:678(filename) #: su.1.xml:370(filename) sg.1.xml:113(filename) shadow.5.xml:258(filename) #: pwck.8.xml:278(filename) passwd.5.xml:144(filename) @@ -562,7 +554,7 @@ msgstr "Informations sécurisées sur les groupes." msgid "/etc/passwd" msgstr "/etc/passwd" -#: vipw.8.xml:212(para) usermod.8.xml:537(para) userdel.8.xml:205(para) +#: vipw.8.xml:212(para) usermod.8.xml:536(para) userdel.8.xml:205(para) #: useradd.8.xml:680(para) su.1.xml:372(para) sg.1.xml:115(para) #: shadow.5.xml:260(para) pwck.8.xml:280(para) passwd.5.xml:146(para) #: passwd.1.xml:413(para) newusers.8.xml:402(para) newgrp.1.xml:126(para) @@ -572,7 +564,7 @@ msgstr "/etc/passwd" msgid "User account information." msgstr "Informations sur les comptes des utilisateurs." -#: vipw.8.xml:216(filename) usermod.8.xml:541(filename) +#: vipw.8.xml:216(filename) usermod.8.xml:540(filename) #: userdel.8.xml:209(filename) useradd.8.xml:684(filename) #: su.1.xml:376(filename) sg.1.xml:119(filename) shadow.5.xml:264(filename) #: shadow.3.xml:229(filename) pwck.8.xml:284(filename) @@ -583,7 +575,7 @@ msgstr "Informations sur les comptes des utilisateurs." msgid "/etc/shadow" msgstr "/etc/shadow" -#: vipw.8.xml:218(para) usermod.8.xml:543(para) userdel.8.xml:211(para) +#: vipw.8.xml:218(para) usermod.8.xml:542(para) userdel.8.xml:211(para) #: useradd.8.xml:686(para) su.1.xml:378(para) sg.1.xml:121(para) #: shadow.5.xml:266(para) shadow.3.xml:231(para) pwck.8.xml:286(para) #: passwd.1.xml:419(para) newusers.8.xml:408(para) newgrp.1.xml:132(para) @@ -592,7 +584,7 @@ msgstr "/etc/shadow" msgid "Secure user account information." msgstr "Informations sécurisées sur les comptes utilisateurs." -#: vipw.8.xml:225(title) usermod.8.xml:562(title) userdel.8.xml:308(title) +#: vipw.8.xml:225(title) usermod.8.xml:561(title) userdel.8.xml:308(title) #: useradd.8.xml:804(title) suauth.5.xml:222(title) su.1.xml:438(title) #: sg.1.xml:140(title) shadow.5.xml:283(title) shadow.3.xml:238(title) #: pwconv.8.xml:262(title) pwck.8.xml:344(title) porttime.5.xml:142(title) @@ -655,15 +647,15 @@ msgstr "" #: usermod.8.xml:46(surname) userdel.8.xml:46(surname) #: useradd.8.xml:57(surname) su.1.xml:57(surname) sg.1.xml:41(surname) #: shadow.5.xml:40(surname) shadow.3.xml:40(surname) pwck.8.xml:46(surname) -#: porttime.5.xml:40(surname) passwd.5.xml:40(surname) -#: passwd.1.xml:47(surname) newusers.8.xml:55(surname) -#: newgrp.1.xml:41(surname) logoutd.8.xml:40(surname) -#: login.defs.5.xml:105(surname) login.1.xml:73(surname) -#: lastlog.8.xml:41(surname) grpck.8.xml:41(surname) groups.1.xml:40(surname) -#: groupmod.8.xml:41(surname) groupdel.8.xml:41(surname) -#: groupadd.8.xml:43(surname) faillog.8.xml:40(surname) -#: faillog.5.xml:40(surname) expiry.1.xml:44(surname) chsh.1.xml:43(surname) -#: chpasswd.8.xml:44(surname) chfn.1.xml:43(surname) chage.1.xml:41(surname) +#: porttime.5.xml:40(surname) passwd.5.xml:40(surname) passwd.1.xml:47(surname) +#: newusers.8.xml:55(surname) newgrp.1.xml:41(surname) +#: logoutd.8.xml:40(surname) login.defs.5.xml:105(surname) +#: login.1.xml:73(surname) lastlog.8.xml:41(surname) grpck.8.xml:41(surname) +#: groups.1.xml:40(surname) groupmod.8.xml:41(surname) +#: groupdel.8.xml:41(surname) groupadd.8.xml:43(surname) +#: faillog.8.xml:40(surname) faillog.5.xml:40(surname) expiry.1.xml:44(surname) +#: chsh.1.xml:43(surname) chpasswd.8.xml:44(surname) chfn.1.xml:43(surname) +#: chage.1.xml:41(surname) msgid "Haugh" msgstr "" @@ -1256,20 +1248,27 @@ msgstr "" #: usermod.8.xml:478(title) userdel.8.xml:281(title) useradd.8.xml:623(title) #: su.1.xml:331(title) shadow.3.xml:218(title) passwd.1.xml:372(title) -#: newusers.8.xml:350(title) login.1.xml:260(title) lastlog.8.xml:194(title) -#: groupdel.8.xml:116(title) groupadd.8.xml:257(title) -#: gpasswd.1.xml:252(title) faillog.8.xml:232(title) chpasswd.8.xml:231(title) +#: newusers.8.xml:350(title) login.1.xml:260(title) lastlog.8.xml:216(title) +#: groupdel.8.xml:116(title) groupadd.8.xml:257(title) gpasswd.1.xml:252(title) +#: faillog.8.xml:232(title) chpasswd.8.xml:231(title) #: chgpasswd.8.xml:186(title) msgid "CAVEATS" msgstr "AVERTISSEMENTS" #: usermod.8.xml:479(para) +#, fuzzy +#| msgid "" +#| "You must make certain that the named user is not executing any processes " +#| "when this command is being executed if the user's numerical user ID, the " +#| "user's name, or the user's home directory is being changed. " +#| "usermod checks this on Linux, but only check if the " +#| "user is logged in according to utmp on other architectures." msgid "" "You must make certain that the named user is not executing any processes " "when this command is being executed if the user's numerical user ID, the " "user's name, or the user's home directory is being changed. " -"usermod checks this on Linux, but only check if the user " -"is logged in according to utmp on other architectures." +"usermod checks this on Linux. On other platforms it only " +"uses utmp to check if the user is logged in." msgstr "" "Il est nécessaire de contrôler que l'identifiant indiqué n'a pas de " "processus en cours d'exécution si cette commande est utilisée pour modifier " @@ -1278,7 +1277,7 @@ msgstr "" "Linux mais vérifie seulement les informations d'utmp sur les autres " "architectures." -#: usermod.8.xml:487(para) +#: usermod.8.xml:486(para) msgid "" "You must change the owner of any crontab files or " "at jobs manually." @@ -1287,7 +1286,7 @@ msgstr "" "crontab ou des travaux programmés par at." -#: usermod.8.xml:491(para) +#: usermod.8.xml:490(para) msgid "You must make any changes involving NIS on the NIS server." msgstr "" "Les modifications qui concernent NIS doivent être effectuées sur le serveur " @@ -1565,7 +1564,7 @@ msgstr "" "user, mais sera calculé en fonction de l'UID de l'utilisateur, à l'aide de " "l'algorithme suivant : " -#: usermod.8.xml:529(filename) userdel.8.xml:197(filename) +#: usermod.8.xml:528(filename) userdel.8.xml:197(filename) #: useradd.8.xml:726(filename) su.1.xml:382(filename) #: pwconv.8.xml:253(filename) passwd.1.xml:423(filename) #: newusers.8.xml:424(filename) login.access.5.xml:124(filename) @@ -1576,7 +1575,7 @@ msgstr "" msgid "/etc/login.defs" msgstr "/etc/login.defs" -#: usermod.8.xml:531(para) userdel.8.xml:199(para) useradd.8.xml:728(para) +#: usermod.8.xml:530(para) userdel.8.xml:199(para) useradd.8.xml:728(para) #: su.1.xml:384(para) pwconv.8.xml:255(para) passwd.1.xml:425(para) #: newusers.8.xml:426(para) login.access.5.xml:126(para) login.1.xml:391(para) #: groupmod.8.xml:222(para) groupadd.8.xml:250(para) chsh.1.xml:184(para) @@ -1585,31 +1584,31 @@ msgid "Shadow password suite configuration." msgstr "" "Configuration de la suite des mots de passe cachés « shadow password »." -#: usermod.8.xml:547(filename) userdel.8.xml:215(filename) +#: usermod.8.xml:546(filename) userdel.8.xml:215(filename) #: useradd.8.xml:714(filename) newusers.8.xml:436(filename) #, fuzzy #| msgid "/etc/suauth" msgid "/etc/subgid" msgstr "/etc/suauth" -#: usermod.8.xml:549(para) userdel.8.xml:217(para) useradd.8.xml:716(para) +#: usermod.8.xml:548(para) userdel.8.xml:217(para) useradd.8.xml:716(para) #: newusers.8.xml:438(para) msgid "Per user subordinate group IDs." msgstr "" -#: usermod.8.xml:553(filename) userdel.8.xml:221(filename) +#: usermod.8.xml:552(filename) userdel.8.xml:221(filename) #: useradd.8.xml:720(filename) newusers.8.xml:442(filename) #, fuzzy #| msgid "/etc/suauth" msgid "/etc/subuid" msgstr "/etc/suauth" -#: usermod.8.xml:555(para) userdel.8.xml:223(para) useradd.8.xml:722(para) +#: usermod.8.xml:554(para) userdel.8.xml:223(para) useradd.8.xml:722(para) #: newusers.8.xml:444(para) msgid "Per user subordinate user IDs." msgstr "" -#: usermod.8.xml:563(para) +#: usermod.8.xml:562(para) #, fuzzy #| msgid "" #| "chfn1=VALEUR" #: useradd.8.xml:301(para) +#, fuzzy +#| msgid "" +#| "Overrides /etc/login.defs defaults (, , " +#| " and others). Example: " +#| " PASS_MAX_DAYS=-1 can be used when creating " +#| "system account to turn off password ageing, even though system account " +#| "has no password at all. Multiple options can be " +#| "specified, e.g.:  UID_MIN=100  " +#| "UID_MAX=499" msgid "" "Overrides /etc/login.defs defaults (, , " " and others). Example: " " PASS_MAX_DAYS=-1 can be used when creating system " -"account to turn off password ageing, even though system account has no " +"account to turn off password aging, even though system account has no " "password at all. Multiple options can be specified, e." "g.:  UID_MIN=100  " @@ -2352,9 +2362,13 @@ msgid "Do not add the user to the lastlog and faillog databases." msgstr "N'ajoute pas l'utilisateur aux bases de données lastlog et faillog." #: useradd.8.xml:327(para) +#, fuzzy +#| msgid "" +#| "By default, the user's entries in the lastlog and faillog databases are " +#| "resetted to avoid reusing the entry from a previously deleted user." msgid "" "By default, the user's entries in the lastlog and faillog databases are " -"resetted to avoid reusing the entry from a previously deleted user." +"reset to avoid reusing the entry from a previously deleted user." msgstr "" "Par défaut, les entrées de l'utilisateur dans les bases de données lastlog " "et faillog sont remises à zéro pour éviter de réutiliser les entrées d'un " @@ -2383,9 +2397,11 @@ msgstr "" "Par défaut, si cette option n'est pas précisée et si , " +msgid ", " +msgstr ", " #: useradd.8.xml:357(para) msgid "" @@ -2471,12 +2487,19 @@ msgstr "" " pour la création des groupes)." #: useradd.8.xml:434(para) +#, fuzzy +#| msgid "" +#| "Note that useradd will not create a home directory for " +#| "such an user, regardless of the default setting in /etc/login." +#| "defs (). You have to specify the " +#| " options if you want a home directory for a system " +#| "account to be created." msgid "" "Note that useradd will not create a home directory for " -"such an user, regardless of the default setting in /etc/login." -"defs (). You have to specify the " -" options if you want a home directory for a system " -"account to be created." +"such a user, regardless of the default setting in /etc/login.defs (). You have to specify the options if you want a home directory for a system account to be " +"created." msgstr "" "Notez que useradd ne créera pas de répertoire personnel " "pour ces utilisateurs, indépendamment de la configuration par défaut dans " @@ -3113,10 +3136,14 @@ msgstr "" #. .RS #: suauth.5.xml:83(literallayout) -#, no-wrap +#, fuzzy, no-wrap +#| msgid "" +#| "\n" +#| " 1) the user su is targetting\n" +#| " " msgid "" "\n" -" 1) the user su is targetting\n" +" 1) the user su is targeting\n" " " msgstr "" "\n" @@ -3160,14 +3187,23 @@ msgstr "" "suivi d'une liste d'utilisateurs séparés par une virgule." #: suauth.5.xml:107(para) +#, fuzzy +#| msgid "" +#| "from-id is formatted the same as to-id except the extra word " +#| "GROUP is recognised. ALL EXCEPT GROUP is perfectly valid too. Following GROUP " +#| "appears one or more group names, delimited by \",\". It is not sufficient " +#| "to have primary group id of the relevant group, an entry in " +#| "/etc/group5 is neccessary." msgid "" "from-id is formatted the same as to-id except the extra word " -"GROUP is recognised. ALL EXCEPT GROUPGROUP is recognized. ALL EXCEPT GROUP is perfectly valid too. Following GROUP " "appears one or more group names, delimited by \",\". It is not sufficient to " "have primary group id of the relevant group, an entry in " "/etc/group5 is neccessary." +"manvolnum> is necessary." msgstr "" "par-id utilise le même format que vers-id, mais accepte également le mot-clé " "GROUP. ALL EXCEPT GROUP est " @@ -3318,9 +3354,8 @@ msgstr "" "citerefentry>." #: su.1.xml:58(contrib) shadow.5.xml:41(contrib) shadow.3.xml:41(contrib) -#: porttime.5.xml:41(contrib) passwd.5.xml:41(contrib) -#: passwd.1.xml:48(contrib) login.1.xml:74(contrib) faillog.8.xml:41(contrib) -#: faillog.5.xml:41(contrib) +#: porttime.5.xml:41(contrib) passwd.5.xml:41(contrib) passwd.1.xml:48(contrib) +#: login.1.xml:74(contrib) faillog.8.xml:41(contrib) faillog.5.xml:41(contrib) msgid "Creation, 1989" msgstr "" @@ -3445,9 +3480,14 @@ msgstr "" "utilisant son option " #: su.1.xml:158(para) +#, fuzzy +#| msgid "" +#| "The executed command will have no controlling terminal. This option " +#| "cannot be used to execute interractive programs which need a controlling " +#| "TTY." msgid "" "The executed command will have no controlling terminal. This option cannot " -"be used to execute interractive programs which need a controlling TTY." +"be used to execute interactive programs which need a controlling TTY." msgstr "" "La commande exécutée n'aura aucun terminal de contrôle. Cette option ne peut " "pas être utilisée pour exécuter des programmes interactifs qui ont besoin " @@ -4177,8 +4217,13 @@ msgstr "" "filename> peuvent n'autoriser aucun accès si le mot de passe est vide." #: shadow.5.xml:117(para) gshadow.5.xml:107(para) +#, fuzzy +#| msgid "" +#| "A password field which starts with a exclamation mark means that the " +#| "password is locked. The remaining characters on the line represent the " +#| "password field before the password was locked." msgid "" -"A password field which starts with a exclamation mark means that the " +"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." msgstr "" @@ -4200,9 +4245,13 @@ msgstr "" "depuis le 1er janvier 1970." #: shadow.5.xml:134(para) +#, fuzzy +#| msgid "" +#| "The value 0 has a special meaning, which is that the user should change " +#| "her pasword the next time she will log in the system." msgid "" "The value 0 has a special meaning, which is that the user should change her " -"pasword the next time she will log in the system." +"password the next time she will log in the system." msgstr "" "La valeur 0 a une signification particulière : l'utilisateur devra changer " "son mot de passe la prochaine fois qu'il se connectera au système." @@ -4329,9 +4378,15 @@ msgstr "" "1er janvier 1970." #: shadow.5.xml:229(para) +#, fuzzy +#| msgid "" +#| "Note that an account expiration differs from a password expiration. In " +#| "case of an acount 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." msgid "" "Note that an account expiration differs from a password expiration. In case " -"of an acount expiration, the user shall not be allowed to login. In case of " +"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." msgstr "" "Veuillez noter que l'expiration d'un compte diffère de l'expiration d'un mot " @@ -4675,18 +4730,15 @@ msgstr "" msgid "pwconv" msgstr "pwconv" -#: pwconv.8.xml:71(refname) pwconv.8.xml:85(command) -#: login.defs.5.xml:438(term) +#: pwconv.8.xml:71(refname) pwconv.8.xml:85(command) login.defs.5.xml:438(term) msgid "pwunconv" msgstr "pwunconv" -#: pwconv.8.xml:72(refname) pwconv.8.xml:91(command) -#: login.defs.5.xml:340(term) +#: pwconv.8.xml:72(refname) pwconv.8.xml:91(command) login.defs.5.xml:340(term) msgid "grpconv" msgstr "grpconv" -#: pwconv.8.xml:73(refname) pwconv.8.xml:97(command) -#: login.defs.5.xml:346(term) +#: pwconv.8.xml:73(refname) pwconv.8.xml:97(command) login.defs.5.xml:346(term) msgid "grpunconv" msgstr "grpunconv" @@ -4910,8 +4962,7 @@ msgstr "Vérifier l'intégrité des fichiers de mots de passe" #: pwck.8.xml:80(replaceable) passwd.5.xml:57(refentrytitle) #: passwd.5.xml:64(refname) passwd.1.xml:64(refentrytitle) -#: passwd.1.xml:71(refname) passwd.1.xml:77(command) -#: login.defs.5.xml:409(term) +#: passwd.1.xml:71(refname) passwd.1.xml:77(command) login.defs.5.xml:409(term) msgid "passwd" msgstr "passwd" @@ -5089,10 +5140,15 @@ msgstr "" "passwd et shadow." #: pwck.8.xml:243(para) +#, fuzzy +#| msgid "" +#| "Note that when is enabled, you cannot specify an " +#| "alternative shadow file. In future releases, " +#| "this paramater could be replaced by an alternate TCB directory." msgid "" "Note that when is enabled, you cannot specify an " "alternative shadow file. In future releases, this " -"paramater could be replaced by an alternate TCB directory." +"parameter could be replaced by an alternate TCB directory." msgstr "" "Veuillez noter que quand est activée, vous ne " "pouvez pas indiquer de fichier shadow alternatif. " @@ -5551,8 +5607,12 @@ msgstr "" "pour violer la sécurité du système." #: passwd.1.xml:166(para) +#, fuzzy +#| msgid "" +#| "You can find advices on how to choose a strong password on http://en." +#| "wikipedia.org/wiki/Password_strength" msgid "" -"You can find advices on how to choose a strong password on http://en." +"You can find advice on how to choose a strong password on http://en." "wikipedia.org/wiki/Password_strength" msgstr "" "Vous pouvez trouver des conseils sur la façon choisir un mot de passe " @@ -5940,8 +6000,8 @@ msgstr " (nombre)" #: passwd.1.xml:35(para) login.defs.5.xml:35(para) msgid "" "Number of significant characters in the password for crypt(). " -" is 8 by default. Don't change unless your crypt" -"() is better. This is ignored if set to " +" is 8 by default. Don't change unless your " +"crypt() is better. This is ignored if set to " "yes." msgstr "" "Nombre de caractères significatifs dans le mot de passe pour crypt(). La " @@ -6118,7 +6178,9 @@ msgid "HISTORY" msgstr "HISTORIQUE" #: nologin.8.xml:91(para) -msgid "The nologin command appearred in BSD 4.4." +#, fuzzy +#| msgid "The nologin command appearred in BSD 4.4." +msgid "The nologin command appeared in BSD 4.4." msgstr "La commande nologin est apparue avec BSD 4.4." #: newusers.8.xml:72(refentrytitle) newusers.8.xml:79(refname) @@ -6164,8 +6226,14 @@ msgid "This is the name of the user." msgstr "C'est le nom de l'utilisateur." #: newusers.8.xml:116(para) +#, fuzzy +#| msgid "" +#| "It can be the name of a new user or the name of an existing user (or an " +#| "user created before by newusers). In case of an " +#| "existing user, the user's information will be changed, otherwise a new " +#| "user will be created." msgid "" -"It can be the name of a new user or the name of an existing user (or an user " +"It can be the name of a new user or the name of an existing user (or a user " "created before by newusers). In case of an existing user, " "the user's information will be changed, otherwise a new user will be created." msgstr "" @@ -6195,8 +6263,12 @@ msgid "This field is used to define the UID of the user." msgstr "Ce champ est utilisé pour définir l'UID de l'utilisateur." #: newusers.8.xml:144(para) +#, fuzzy +#| msgid "" +#| "If the field is empty, an new (unused) UID will be defined automatically " +#| "by newusers." msgid "" -"If the field is empty, an new (unused) UID will be defined automatically by " +"If the field is empty, a new (unused) UID will be defined automatically by " "newusers." msgstr "" "Si ce champ est vide, un nouvel UID (non utilisé) sera défini " @@ -6207,8 +6279,13 @@ msgid "If this field contains a number, this number will be used as the UID." msgstr "Si ce champ contient un nombre, ce nombre sera utilisé comme UID." #: newusers.8.xml:152(para) +#, fuzzy +#| msgid "" +#| "If this field contains the name of an existing user (or the name of an " +#| "user created before by newusers), the UID of the " +#| "specified user will be used." msgid "" -"If this field contains the name of an existing user (or the name of an user " +"If this field contains the name of an existing user (or the name of a user " "created before by newusers), the UID of the specified " "user will be used." msgstr "" @@ -7806,7 +7883,9 @@ msgstr "" "D : taille maximale du segment de données d'un programme (en kilo octets)" #: limits.5.xml:111(para) -msgid "F: maximum filesize (KB)" +#, fuzzy +#| msgid "F: maximum filesize (KB)" +msgid "F: maximum file size (KB)" msgstr "F : taille maximale des fichiers (en kilo octets)" #: limits.5.xml:112(para) @@ -7892,9 +7971,15 @@ msgstr "" " " #: limits.5.xml:145(para) +#, fuzzy +#| msgid "" +#| "Be aware that after username the rest of " +#| "the line is considered a limit string, thus comments are not allowed. A " +#| "invalid limits string will be rejected (not considered) by the " +#| "login program." msgid "" "Be aware that after username the rest of " -"the line is considered a limit string, thus comments are not allowed. A " +"the line is considered a limit string, thus comments are not allowed. An " "invalid limits string will be rejected (not considered) by the " "login program." msgstr "" @@ -7923,16 +8008,26 @@ msgstr "" "s'appliquent aux membres du groupe précisé." #: limits.5.xml:165(para) +#, fuzzy +#| msgid "" +#| "If more than one line with limits for an user exist, only the first line " +#| "for this user will be considered." msgid "" -"If more than one line with limits for an user exist, only the first line for " +"If more than one line with limits for a user exist, only the first line for " "this user will be considered." msgstr "" "Si plusieurs lignes avec des limites pour un utilisateur existent, seule la " "première ligne pour cet utilisateur sera prise en compte." #: limits.5.xml:170(para) +#, fuzzy +#| msgid "" +#| "If no lines are specified for an user, the last @group 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." msgid "" -"If no lines are specified for an user, the last @group@group 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." @@ -8033,7 +8128,37 @@ msgstr "" "N'afficher que les entrées du fichier lastlog plus anciennes que JOURS." -#: lastlog.8.xml:127(term) faillog.8.xml:192(term) +#: lastlog.8.xml:107(term) +#, fuzzy +#| msgid ", " +msgid ", " +msgstr ", " + +#: lastlog.8.xml:111(para) +#, fuzzy +#| msgid "" +#| "This option is only valid in combination with the (or " +#| ") option." +msgid "" +"Clear lastlog record of a user. This option can be used only together with " +" ())." +msgstr "" +"Cette option ne fonctionne que lorsqu'elle est combinée avec l'option " +" (ou )." + +#: lastlog.8.xml:138(term) +#, fuzzy +#| msgid ", " +msgid ", " +msgstr ", " + +#: lastlog.8.xml:142(para) +msgid "" +"Set lastlog record of a user to the current time. This option can be used " +"only together with ())." +msgstr "" + +#: lastlog.8.xml:149(term) faillog.8.xml:192(term) msgid "" ",  DAYS" @@ -8041,7 +8166,7 @@ msgstr "" ",  JOURS" -#: lastlog.8.xml:131(para) +#: lastlog.8.xml:153(para) msgid "" "Print the lastlog records more recent than DAYS." @@ -8049,7 +8174,7 @@ msgstr "" "Afficher les entrées du fichier lastlog plus récentes que JOURS." -#: lastlog.8.xml:138(term) faillog.8.xml:202(term) +#: lastlog.8.xml:160(term) faillog.8.xml:202(term) msgid "" ",  LOGIN|RANGE" @@ -8057,11 +8182,11 @@ msgstr "" ",  LOGIN|INTERVALLE" -#: lastlog.8.xml:142(para) +#: lastlog.8.xml:164(para) msgid "Print the lastlog record of the specified user(s)." msgstr "N'afficher que les entrées correspondant aux utilisateurs indiqués." -#: lastlog.8.xml:145(para) faillog.8.xml:211(para) +#: lastlog.8.xml:167(para) faillog.8.xml:211(para) msgid "" "The users can be specified by a login name, a numerical user ID, or a " "RANGE of users. This RANGE-UID_MAX) ou une valeur minimale " "(UID_MIN-)." -#: lastlog.8.xml:157(para) +#: lastlog.8.xml:179(para) msgid "" "If the user has never logged in the message ** Never logged in** will be displayed instead of the port and time." @@ -8087,7 +8212,7 @@ msgstr "" "connecté** ») est affiché à la place des champs Port et date de Dernière connexion." -#: lastlog.8.xml:162(para) +#: lastlog.8.xml:184(para) msgid "" "Only the entries for the current users of the system will be displayed. " "Other entries may exist for users that were deleted previously." @@ -8096,12 +8221,12 @@ msgstr "" "affichées. D'autres entrées peuvent exister pour les utilisateurs supprimés " "précédemment." -#: lastlog.8.xml:170(title) groups.1.xml:90(title) chsh.1.xml:140(title) +#: lastlog.8.xml:192(title) groups.1.xml:90(title) chsh.1.xml:140(title) #: chage.1.xml:231(title) msgid "NOTE" msgstr "NOTE" -#: lastlog.8.xml:171(para) +#: lastlog.8.xml:193(para) msgid "" "The lastlog file is a database which contains info on " "the last login of each user. You should not rotate it. It is a sparse file, " @@ -8119,16 +8244,16 @@ msgstr "" "UID élevés). Vous pouvez afficher sa taille réelle avec « ls -s »." -#: lastlog.8.xml:185(filename) +#: lastlog.8.xml:207(filename) msgid "/var/log/lastlog" msgstr "/var/log/lastlog" -#: lastlog.8.xml:187(para) +#: lastlog.8.xml:209(para) msgid "Database times of previous user logins." msgstr "" "Base de données de l'heure des connexions précédentes des utilisateurs." -#: lastlog.8.xml:195(para) +#: lastlog.8.xml:217(para) msgid "" "Large gaps in UID numbers will cause the lastlog program to run longer with " "no output to the screen (i.e. if in lastlog database there is no entries for " @@ -8190,8 +8315,14 @@ msgstr "" "groupe n'ont pas besoin de mot de passe)." #: gshadow.5.xml:97(para) +#, fuzzy +#| msgid "" +#| "The password is used when an user who is not a member of the group wants " +#| "to gain the permissions of this group (see " +#| "newgrp1)." msgid "" -"The password is used when an user who is not a member of the group wants to " +"The password is used when a user who is not a member of the group wants to " "gain the permissions of this group (see newgrp1)." msgstr "" @@ -8740,7 +8871,9 @@ msgstr "" "nom_utilisateur" #: groupmems.8.xml:109(para) -msgid "Add an user to the group membership list." +#, fuzzy +#| msgid "Add an user to the group membership list." +msgid "Add a user to the group membership list." msgstr "Ajouter un utilisateur à la liste des membres du groupe." #: groupmems.8.xml:110(para) groupmems.8.xml:126(para) @@ -9783,10 +9916,17 @@ msgstr "" "également mis à jour, s'il est présent." #: chpasswd.8.xml:97(para) +#, fuzzy +#| msgid "" +#| "The default encryption algorithm can be defined for the system with the " +#| " or " +#| "variables of /etc/login.defs, and can be overwitten " +#| "with the , , or " +#| "options." msgid "" "The default encryption algorithm can be defined for the system with the " " or variables " -"of /etc/login.defs, and can be overwitten with the " +"of /etc/login.defs, and can be overwritten with the " ", , or options." msgstr "" "L'algorithme de chiffrement par défaut peut être défini pour le système à " @@ -9807,10 +9947,16 @@ msgstr "" "option>." #: chpasswd.8.xml:111(para) +#, fuzzy +#| msgid "" +#| "Except when PAM is used to encrypt the " +#| "passwords,chpasswd first updates all the " +#| "passwords in memory, and then commits all the changes to disk if no " +#| "errors occured for any user." msgid "" "Except when PAM is used to encrypt the passwords,chpasswd first updates all the passwords in " -"memory, and then commits all the changes to disk if no errors occured for " +"memory, and then commits all the changes to disk if no errors occurred for " "any user." msgstr "" "Sauf quand PAM est utilisé pour chiffrer les mots " @@ -9978,10 +10124,16 @@ msgstr "" "chgpasswd." #: chgpasswd.8.xml:92(para) +#, fuzzy +#| msgid "" +#| "The default encryption algorithm can be defined for the system with the " +#| " variable of /etc/login.defs, and can be overwiten with the , options." msgid "" "The default encryption algorithm can be defined for the system with the " " variable of /etc/login.defs, and can be overwiten with the , , options." msgstr "" "L'algorithme de chiffrement peut être défini pour le système avec la " @@ -10386,6 +10538,9 @@ msgstr "" ", 2011-2012Debian French l10n team , 2011-2012" +#~ msgid "-M" +#~ msgstr "-M" + #~ msgid "" #~ "chfn1, chsh\n" "Language-Team: Italian \n" @@ -56,16 +56,15 @@ msgstr "" #: useradd.8.xml:62(surname) suauth.5.xml:45(surname) su.1.xml:62(surname) #: sg.1.xml:46(surname) shadow.5.xml:45(surname) shadow.3.xml:45(surname) #: pwconv.8.xml:51(surname) pwck.8.xml:51(surname) porttime.5.xml:45(surname) -#: passwd.5.xml:45(surname) passwd.1.xml:52(surname) -#: newusers.8.xml:60(surname) newgrp.1.xml:46(surname) -#: logoutd.8.xml:45(surname) login.defs.5.xml:110(surname) -#: login.access.5.xml:46(surname) login.1.xml:78(surname) -#: limits.5.xml:47(surname) lastlog.8.xml:46(surname) grpck.8.xml:46(surname) -#: groups.1.xml:45(surname) groupmod.8.xml:46(surname) +#: passwd.5.xml:45(surname) passwd.1.xml:52(surname) newusers.8.xml:60(surname) +#: newgrp.1.xml:46(surname) logoutd.8.xml:45(surname) +#: login.defs.5.xml:110(surname) login.access.5.xml:46(surname) +#: login.1.xml:78(surname) limits.5.xml:47(surname) lastlog.8.xml:46(surname) +#: grpck.8.xml:46(surname) groups.1.xml:45(surname) groupmod.8.xml:46(surname) #: groupmems.8.xml:49(surname) groupdel.8.xml:46(surname) #: groupadd.8.xml:48(surname) gpasswd.1.xml:50(surname) -#: faillog.8.xml:45(surname) faillog.5.xml:45(surname) -#: expiry.1.xml:49(surname) chsh.1.xml:48(surname) chpasswd.8.xml:49(surname) +#: faillog.8.xml:45(surname) faillog.5.xml:45(surname) expiry.1.xml:49(surname) +#: chsh.1.xml:48(surname) chpasswd.8.xml:49(surname) #: chgpasswd.8.xml:45(surname) chfn.1.xml:48(surname) chage.1.xml:46(surname) msgid "Kłoczko" msgstr "" @@ -90,17 +89,16 @@ msgstr "" #: useradd.8.xml:64(contrib) suauth.5.xml:47(contrib) su.1.xml:64(contrib) #: sg.1.xml:48(contrib) shadow.5.xml:47(contrib) shadow.3.xml:47(contrib) #: pwconv.8.xml:53(contrib) pwck.8.xml:53(contrib) porttime.5.xml:47(contrib) -#: passwd.5.xml:47(contrib) passwd.1.xml:54(contrib) -#: newusers.8.xml:62(contrib) newgrp.1.xml:48(contrib) -#: logoutd.8.xml:47(contrib) login.defs.5.xml:112(contrib) -#: login.access.5.xml:48(contrib) login.1.xml:80(contrib) -#: limits.5.xml:49(contrib) lastlog.8.xml:48(contrib) grpck.8.xml:48(contrib) -#: groups.1.xml:47(contrib) groupmod.8.xml:48(contrib) +#: passwd.5.xml:47(contrib) passwd.1.xml:54(contrib) newusers.8.xml:62(contrib) +#: newgrp.1.xml:48(contrib) logoutd.8.xml:47(contrib) +#: login.defs.5.xml:112(contrib) login.access.5.xml:48(contrib) +#: login.1.xml:80(contrib) limits.5.xml:49(contrib) lastlog.8.xml:48(contrib) +#: grpck.8.xml:48(contrib) groups.1.xml:47(contrib) groupmod.8.xml:48(contrib) #: groupmems.8.xml:51(contrib) groupdel.8.xml:48(contrib) #: groupadd.8.xml:50(contrib) gpasswd.1.xml:52(contrib) -#: faillog.8.xml:47(contrib) faillog.5.xml:47(contrib) -#: expiry.1.xml:51(contrib) chsh.1.xml:50(contrib) chpasswd.8.xml:51(contrib) -#: chfn.1.xml:50(contrib) chage.1.xml:48(contrib) +#: faillog.8.xml:47(contrib) faillog.5.xml:47(contrib) expiry.1.xml:51(contrib) +#: chsh.1.xml:50(contrib) chpasswd.8.xml:51(contrib) chfn.1.xml:50(contrib) +#: chage.1.xml:48(contrib) msgid "shadow-utils maintainer, 2000 - 2007" msgstr "" @@ -134,14 +132,13 @@ msgstr "" #: newusers.8.xml:66(surname) newgrp.1.xml:52(surname) #: logoutd.8.xml:51(surname) login.defs.5.xml:116(surname) #: login.access.5.xml:52(surname) login.1.xml:84(surname) -#: limits.5.xml:53(surname) lastlog.8.xml:52(surname) -#: gshadow.5.xml:39(surname) grpck.8.xml:52(surname) groups.1.xml:51(surname) -#: groupmod.8.xml:52(surname) groupmems.8.xml:55(surname) -#: groupdel.8.xml:52(surname) groupadd.8.xml:54(surname) -#: gpasswd.1.xml:56(surname) faillog.8.xml:51(surname) -#: faillog.5.xml:51(surname) expiry.1.xml:55(surname) chsh.1.xml:54(surname) -#: chpasswd.8.xml:55(surname) chgpasswd.8.xml:51(surname) -#: chfn.1.xml:54(surname) chage.1.xml:52(surname) +#: limits.5.xml:53(surname) lastlog.8.xml:52(surname) gshadow.5.xml:39(surname) +#: grpck.8.xml:52(surname) groups.1.xml:51(surname) groupmod.8.xml:52(surname) +#: groupmems.8.xml:55(surname) groupdel.8.xml:52(surname) +#: groupadd.8.xml:54(surname) gpasswd.1.xml:56(surname) +#: faillog.8.xml:51(surname) faillog.5.xml:51(surname) expiry.1.xml:55(surname) +#: chsh.1.xml:54(surname) chpasswd.8.xml:55(surname) +#: chgpasswd.8.xml:51(surname) chfn.1.xml:54(surname) chage.1.xml:52(surname) msgid "François" msgstr "" @@ -170,14 +167,13 @@ msgstr "" #: newusers.8.xml:68(contrib) newgrp.1.xml:54(contrib) #: logoutd.8.xml:53(contrib) login.defs.5.xml:118(contrib) #: login.access.5.xml:54(contrib) login.1.xml:86(contrib) -#: limits.5.xml:55(contrib) lastlog.8.xml:54(contrib) -#: gshadow.5.xml:42(contrib) grpck.8.xml:54(contrib) groups.1.xml:53(contrib) -#: groupmod.8.xml:54(contrib) groupmems.8.xml:57(contrib) -#: groupdel.8.xml:54(contrib) groupadd.8.xml:56(contrib) -#: gpasswd.1.xml:58(contrib) faillog.8.xml:53(contrib) -#: faillog.5.xml:53(contrib) expiry.1.xml:57(contrib) chsh.1.xml:56(contrib) -#: chpasswd.8.xml:57(contrib) chgpasswd.8.xml:53(contrib) -#: chfn.1.xml:56(contrib) chage.1.xml:54(contrib) +#: limits.5.xml:55(contrib) lastlog.8.xml:54(contrib) gshadow.5.xml:42(contrib) +#: grpck.8.xml:54(contrib) groups.1.xml:53(contrib) groupmod.8.xml:54(contrib) +#: groupmems.8.xml:57(contrib) groupdel.8.xml:54(contrib) +#: groupadd.8.xml:56(contrib) gpasswd.1.xml:58(contrib) +#: faillog.8.xml:53(contrib) faillog.5.xml:53(contrib) expiry.1.xml:57(contrib) +#: chsh.1.xml:56(contrib) chpasswd.8.xml:57(contrib) +#: chgpasswd.8.xml:53(contrib) chfn.1.xml:56(contrib) chage.1.xml:54(contrib) msgid "shadow-utils maintainer, 2007 - now" msgstr "" @@ -251,14 +247,13 @@ msgstr "" #: useradd.8.xml:88(replaceable) useradd.8.xml:100(replaceable) #: su.1.xml:88(replaceable) pwconv.8.xml:81(replaceable) #: pwconv.8.xml:87(replaceable) pwconv.8.xml:93(replaceable) -#: pwconv.8.xml:99(replaceable) pwck.8.xml:77(arg) -#: passwd.1.xml:79(replaceable) newusers.8.xml:87(replaceable) -#: lastlog.8.xml:73(replaceable) grpck.8.xml:72(arg) -#: groupmod.8.xml:73(replaceable) groupdel.8.xml:73(replaceable) -#: groupadd.8.xml:75(replaceable) faillog.8.xml:72(replaceable) -#: chsh.1.xml:75(replaceable) chpasswd.8.xml:76(replaceable) -#: chgpasswd.8.xml:72(replaceable) chfn.1.xml:75(replaceable) -#: chage.1.xml:72(replaceable) +#: pwconv.8.xml:99(replaceable) pwck.8.xml:77(arg) passwd.1.xml:79(replaceable) +#: newusers.8.xml:87(replaceable) lastlog.8.xml:73(replaceable) +#: grpck.8.xml:72(arg) groupmod.8.xml:73(replaceable) +#: groupdel.8.xml:73(replaceable) groupadd.8.xml:75(replaceable) +#: faillog.8.xml:72(replaceable) chsh.1.xml:75(replaceable) +#: chpasswd.8.xml:76(replaceable) chgpasswd.8.xml:72(replaceable) +#: chfn.1.xml:75(replaceable) chage.1.xml:72(replaceable) msgid "options" msgstr "opzioni" @@ -311,11 +306,10 @@ msgstr "" #: useradd.8.xml:124(title) su.1.xml:145(title) pwconv.8.xml:187(title) #: pwck.8.xml:176(title) passwd.1.xml:174(title) newusers.8.xml:265(title) #: login.1.xml:210(title) lastlog.8.xml:91(title) grpck.8.xml:147(title) -#: groupmod.8.xml:89(title) groupmems.8.xml:100(title) -#: groupdel.8.xml:88(title) groupadd.8.xml:93(title) gpasswd.1.xml:134(title) -#: faillog.8.xml:89(title) expiry.1.xml:91(title) chsh.1.xml:95(title) -#: chpasswd.8.xml:130(title) chgpasswd.8.xml:105(title) chfn.1.xml:111(title) -#: chage.1.xml:91(title) +#: groupmod.8.xml:89(title) groupmems.8.xml:100(title) groupdel.8.xml:88(title) +#: groupadd.8.xml:93(title) gpasswd.1.xml:134(title) faillog.8.xml:89(title) +#: expiry.1.xml:91(title) chsh.1.xml:95(title) chpasswd.8.xml:130(title) +#: chgpasswd.8.xml:105(title) chfn.1.xml:111(title) chage.1.xml:91(title) msgid "OPTIONS" msgstr "OPZIONI" @@ -340,7 +334,7 @@ msgstr "Modifica del database «group»." # type: TP #: vipw.8.xml:120(term) userdel.8.xml:123(term) useradd.8.xml:266(term) #: pwconv.8.xml:195(term) pwck.8.xml:186(term) passwd.1.xml:214(term) -#: newusers.8.xml:283(term) lastlog.8.xml:107(term) grpck.8.xml:157(term) +#: newusers.8.xml:283(term) lastlog.8.xml:118(term) grpck.8.xml:157(term) #: groupmod.8.xml:129(term) groupmems.8.xml:142(term) groupdel.8.xml:95(term) #: groupadd.8.xml:131(term) gpasswd.1.xml:173(term) faillog.8.xml:122(term) #: expiry.1.xml:112(term) chsh.1.xml:101(term) chpasswd.8.xml:171(term) @@ -351,7 +345,7 @@ msgstr ", " # type: Plain text #: vipw.8.xml:122(para) userdel.8.xml:125(para) useradd.8.xml:268(para) #: pwconv.8.xml:197(para) pwck.8.xml:188(para) passwd.1.xml:216(para) -#: newusers.8.xml:285(para) lastlog.8.xml:111(para) grpck.8.xml:159(para) +#: newusers.8.xml:285(para) lastlog.8.xml:122(para) grpck.8.xml:159(para) #: groupmod.8.xml:131(para) groupmems.8.xml:144(para) groupdel.8.xml:97(para) #: groupadd.8.xml:133(para) gpasswd.1.xml:175(para) faillog.8.xml:124(para) #: expiry.1.xml:114(para) chsh.1.xml:103(para) chpasswd.8.xml:173(para) @@ -380,7 +374,7 @@ msgstr "Modalità silenziosa." # type: IP #: vipw.8.xml:138(term) usermod.8.xml:311(term) userdel.8.xml:146(term) #: useradd.8.xml:445(term) pwconv.8.xml:201(term) pwck.8.xml:209(term) -#: passwd.1.xml:301(term) newusers.8.xml:308(term) lastlog.8.xml:115(term) +#: passwd.1.xml:301(term) newusers.8.xml:308(term) lastlog.8.xml:126(term) #: grpck.8.xml:173(term) groupmod.8.xml:178(term) groupmems.8.xml:165(term) #: groupdel.8.xml:101(term) groupadd.8.xml:204(term) faillog.8.xml:180(term) #: chsh.1.xml:107(term) chpasswd.8.xml:188(term) chgpasswd.8.xml:146(term) @@ -395,7 +389,7 @@ msgstr "" # type: Plain text #: vipw.8.xml:142(para) usermod.8.xml:315(para) userdel.8.xml:150(para) #: useradd.8.xml:449(para) pwconv.8.xml:205(para) pwck.8.xml:213(para) -#: passwd.1.xml:305(para) newusers.8.xml:312(para) lastlog.8.xml:119(para) +#: passwd.1.xml:305(para) newusers.8.xml:312(para) lastlog.8.xml:130(para) #: grpck.8.xml:177(para) groupmod.8.xml:182(para) groupmems.8.xml:169(para) #: groupdel.8.xml:105(para) groupadd.8.xml:208(para) gpasswd.1.xml:185(para) #: faillog.8.xml:184(para) chsh.1.xml:111(para) chpasswd.8.xml:192(para) @@ -427,18 +421,18 @@ msgstr ", " msgid "Indicates which user's tcb shadow file to edit." msgstr "Indica di quale utente modificare il file «shadow tcb»." -#: vipw.8.xml:165(title) usermod.8.xml:497(title) userdel.8.xml:171(title) +#: vipw.8.xml:165(title) usermod.8.xml:496(title) userdel.8.xml:171(title) #: useradd.8.xml:647(title) su.1.xml:339(title) sg.1.xml:98(title) #: pwconv.8.xml:227(title) pwck.8.xml:252(title) passwd.1.xml:390(title) #: newusers.8.xml:362(title) newgrp.1.xml:109(title) login.1.xml:294(title) #: grpck.8.xml:209(title) groupmod.8.xml:193(title) groupmems.8.xml:199(title) -#: groupdel.8.xml:128(title) groupadd.8.xml:219(title) -#: gpasswd.1.xml:264(title) chsh.1.xml:154(title) chpasswd.8.xml:239(title) -#: chgpasswd.8.xml:198(title) chfn.1.xml:193(title) chage.1.xml:244(title) +#: groupdel.8.xml:128(title) groupadd.8.xml:219(title) gpasswd.1.xml:264(title) +#: chsh.1.xml:154(title) chpasswd.8.xml:239(title) chgpasswd.8.xml:198(title) +#: chfn.1.xml:193(title) chage.1.xml:244(title) msgid "CONFIGURATION" msgstr "CONFIGURAZIONE" -#: vipw.8.xml:166(para) usermod.8.xml:498(para) userdel.8.xml:172(para) +#: vipw.8.xml:166(para) usermod.8.xml:497(para) userdel.8.xml:172(para) #: useradd.8.xml:648(para) su.1.xml:340(para) sg.1.xml:99(para) #: pwck.8.xml:253(para) passwd.1.xml:391(para) newusers.8.xml:363(para) #: newgrp.1.xml:110(para) login.1.xml:295(para) grpck.8.xml:210(para) @@ -494,38 +488,36 @@ msgid "Editor to be used if is not set." msgstr "Editor da utilizzare se non è impostata." # type: SH -#: vipw.8.xml:195(title) usermod.8.xml:514(title) userdel.8.xml:188(title) +#: vipw.8.xml:195(title) usermod.8.xml:513(title) userdel.8.xml:188(title) #: useradd.8.xml:675(title) suauth.5.xml:193(title) su.1.xml:367(title) #: sg.1.xml:110(title) shadow.5.xml:255(title) shadow.3.xml:226(title) #: pwconv.8.xml:250(title) pwck.8.xml:269(title) porttime.5.xml:130(title) #: passwd.5.xml:141(title) passwd.1.xml:408(title) newusers.8.xml:397(title) #: newgrp.1.xml:121(title) logoutd.8.xml:89(title) -#: login.access.5.xml:121(title) login.1.xml:338(title) -#: limits.5.xml:196(title) lastlog.8.xml:182(title) gshadow.5.xml:156(title) -#: grpck.8.xml:221(title) groups.1.xml:100(title) groupmod.8.xml:205(title) -#: groupmems.8.xml:211(title) groupdel.8.xml:140(title) -#: groupadd.8.xml:233(title) gpasswd.1.xml:279(title) faillog.8.xml:243(title) -#: faillog.5.xml:96(title) expiry.1.xml:121(title) chsh.1.xml:167(title) -#: chpasswd.8.xml:255(title) chgpasswd.8.xml:213(title) chfn.1.xml:207(title) -#: chage.1.xml:256(title) +#: login.access.5.xml:121(title) login.1.xml:338(title) limits.5.xml:196(title) +#: lastlog.8.xml:204(title) gshadow.5.xml:156(title) grpck.8.xml:221(title) +#: groups.1.xml:100(title) groupmod.8.xml:205(title) groupmems.8.xml:211(title) +#: groupdel.8.xml:140(title) groupadd.8.xml:233(title) gpasswd.1.xml:279(title) +#: faillog.8.xml:243(title) faillog.5.xml:96(title) expiry.1.xml:121(title) +#: chsh.1.xml:167(title) chpasswd.8.xml:255(title) chgpasswd.8.xml:213(title) +#: chfn.1.xml:207(title) chage.1.xml:256(title) msgid "FILES" msgstr "FILE" -#: vipw.8.xml:198(filename) usermod.8.xml:517(filename) +#: vipw.8.xml:198(filename) usermod.8.xml:516(filename) #: userdel.8.xml:191(filename) useradd.8.xml:690(filename) -#: sg.1.xml:125(filename) pwck.8.xml:272(filename) -#: newusers.8.xml:412(filename) newgrp.1.xml:136(filename) -#: gshadow.5.xml:159(filename) grpck.8.xml:224(filename) -#: groups.1.xml:103(filename) groupmod.8.xml:208(filename) -#: groupmems.8.xml:214(filename) groupdel.8.xml:143(filename) -#: groupadd.8.xml:236(filename) gpasswd.1.xml:72(filename) -#: gpasswd.1.xml:75(filename) gpasswd.1.xml:282(filename) -#: chgpasswd.8.xml:216(filename) +#: sg.1.xml:125(filename) pwck.8.xml:272(filename) newusers.8.xml:412(filename) +#: newgrp.1.xml:136(filename) gshadow.5.xml:159(filename) +#: grpck.8.xml:224(filename) groups.1.xml:103(filename) +#: groupmod.8.xml:208(filename) groupmems.8.xml:214(filename) +#: groupdel.8.xml:143(filename) groupadd.8.xml:236(filename) +#: gpasswd.1.xml:72(filename) gpasswd.1.xml:75(filename) +#: gpasswd.1.xml:282(filename) chgpasswd.8.xml:216(filename) msgid "/etc/group" msgstr "/etc/group" # type: Plain text -#: vipw.8.xml:200(para) usermod.8.xml:519(para) userdel.8.xml:193(para) +#: vipw.8.xml:200(para) usermod.8.xml:518(para) userdel.8.xml:193(para) #: useradd.8.xml:692(para) sg.1.xml:127(para) pwck.8.xml:274(para) #: newusers.8.xml:414(para) newgrp.1.xml:138(para) gshadow.5.xml:161(para) #: grpck.8.xml:226(para) groups.1.xml:105(para) groupmod.8.xml:210(para) @@ -534,7 +526,7 @@ msgstr "/etc/group" msgid "Group account information." msgstr "Informazioni sugli account di gruppo." -#: vipw.8.xml:204(filename) usermod.8.xml:523(filename) +#: vipw.8.xml:204(filename) usermod.8.xml:522(filename) #: useradd.8.xml:696(filename) sg.1.xml:131(filename) #: newusers.8.xml:418(filename) newgrp.1.xml:142(filename) #: gshadow.5.xml:165(filename) grpck.8.xml:230(filename) @@ -546,7 +538,7 @@ msgid "/etc/gshadow" msgstr "/etc/gshadow" # type: Plain text -#: vipw.8.xml:206(para) usermod.8.xml:525(para) useradd.8.xml:698(para) +#: vipw.8.xml:206(para) usermod.8.xml:524(para) useradd.8.xml:698(para) #: sg.1.xml:133(para) newusers.8.xml:420(para) newgrp.1.xml:144(para) #: gshadow.5.xml:167(para) grpck.8.xml:232(para) groupmod.8.xml:216(para) #: groupdel.8.xml:151(para) groupadd.8.xml:244(para) gpasswd.1.xml:290(para) @@ -554,7 +546,7 @@ msgstr "/etc/gshadow" msgid "Secure group account information." msgstr "Informazioni sicure sugli account di gruppo." -#: vipw.8.xml:210(filename) usermod.8.xml:535(filename) +#: vipw.8.xml:210(filename) usermod.8.xml:534(filename) #: userdel.8.xml:203(filename) useradd.8.xml:678(filename) #: su.1.xml:370(filename) sg.1.xml:113(filename) shadow.5.xml:258(filename) #: pwck.8.xml:278(filename) passwd.5.xml:144(filename) @@ -568,7 +560,7 @@ msgid "/etc/passwd" msgstr "/etc/passwd" # type: Plain text -#: vipw.8.xml:212(para) usermod.8.xml:537(para) userdel.8.xml:205(para) +#: vipw.8.xml:212(para) usermod.8.xml:536(para) userdel.8.xml:205(para) #: useradd.8.xml:680(para) su.1.xml:372(para) sg.1.xml:115(para) #: shadow.5.xml:260(para) pwck.8.xml:280(para) passwd.5.xml:146(para) #: passwd.1.xml:413(para) newusers.8.xml:402(para) newgrp.1.xml:126(para) @@ -578,7 +570,7 @@ msgstr "/etc/passwd" msgid "User account information." msgstr "Informazioni sugli account utente." -#: vipw.8.xml:216(filename) usermod.8.xml:541(filename) +#: vipw.8.xml:216(filename) usermod.8.xml:540(filename) #: userdel.8.xml:209(filename) useradd.8.xml:684(filename) #: su.1.xml:376(filename) sg.1.xml:119(filename) shadow.5.xml:264(filename) #: shadow.3.xml:229(filename) pwck.8.xml:284(filename) @@ -590,7 +582,7 @@ msgid "/etc/shadow" msgstr "/etc/shadow" # type: Plain text -#: vipw.8.xml:218(para) usermod.8.xml:543(para) userdel.8.xml:211(para) +#: vipw.8.xml:218(para) usermod.8.xml:542(para) userdel.8.xml:211(para) #: useradd.8.xml:686(para) su.1.xml:378(para) sg.1.xml:121(para) #: shadow.5.xml:266(para) shadow.3.xml:231(para) pwck.8.xml:286(para) #: passwd.1.xml:419(para) newusers.8.xml:408(para) newgrp.1.xml:132(para) @@ -600,7 +592,7 @@ msgid "Secure user account information." msgstr "Informazioni sicure sugli account utente." # type: SH -#: vipw.8.xml:225(title) usermod.8.xml:562(title) userdel.8.xml:308(title) +#: vipw.8.xml:225(title) usermod.8.xml:561(title) userdel.8.xml:308(title) #: useradd.8.xml:804(title) suauth.5.xml:222(title) su.1.xml:438(title) #: sg.1.xml:140(title) shadow.5.xml:283(title) shadow.3.xml:238(title) #: pwconv.8.xml:262(title) pwck.8.xml:344(title) porttime.5.xml:142(title) @@ -664,15 +656,15 @@ msgstr "" #: usermod.8.xml:46(surname) userdel.8.xml:46(surname) #: useradd.8.xml:57(surname) su.1.xml:57(surname) sg.1.xml:41(surname) #: shadow.5.xml:40(surname) shadow.3.xml:40(surname) pwck.8.xml:46(surname) -#: porttime.5.xml:40(surname) passwd.5.xml:40(surname) -#: passwd.1.xml:47(surname) newusers.8.xml:55(surname) -#: newgrp.1.xml:41(surname) logoutd.8.xml:40(surname) -#: login.defs.5.xml:105(surname) login.1.xml:73(surname) -#: lastlog.8.xml:41(surname) grpck.8.xml:41(surname) groups.1.xml:40(surname) -#: groupmod.8.xml:41(surname) groupdel.8.xml:41(surname) -#: groupadd.8.xml:43(surname) faillog.8.xml:40(surname) -#: faillog.5.xml:40(surname) expiry.1.xml:44(surname) chsh.1.xml:43(surname) -#: chpasswd.8.xml:44(surname) chfn.1.xml:43(surname) chage.1.xml:41(surname) +#: porttime.5.xml:40(surname) passwd.5.xml:40(surname) passwd.1.xml:47(surname) +#: newusers.8.xml:55(surname) newgrp.1.xml:41(surname) +#: logoutd.8.xml:40(surname) login.defs.5.xml:105(surname) +#: login.1.xml:73(surname) lastlog.8.xml:41(surname) grpck.8.xml:41(surname) +#: groups.1.xml:40(surname) groupmod.8.xml:41(surname) +#: groupdel.8.xml:41(surname) groupadd.8.xml:43(surname) +#: faillog.8.xml:40(surname) faillog.5.xml:40(surname) expiry.1.xml:44(surname) +#: chsh.1.xml:43(surname) chpasswd.8.xml:44(surname) chfn.1.xml:43(surname) +#: chage.1.xml:41(surname) msgid "Haugh" msgstr "" @@ -1300,20 +1292,27 @@ msgstr "" # type: SH #: usermod.8.xml:478(title) userdel.8.xml:281(title) useradd.8.xml:623(title) #: su.1.xml:331(title) shadow.3.xml:218(title) passwd.1.xml:372(title) -#: newusers.8.xml:350(title) login.1.xml:260(title) lastlog.8.xml:194(title) -#: groupdel.8.xml:116(title) groupadd.8.xml:257(title) -#: gpasswd.1.xml:252(title) faillog.8.xml:232(title) chpasswd.8.xml:231(title) +#: newusers.8.xml:350(title) login.1.xml:260(title) lastlog.8.xml:216(title) +#: groupdel.8.xml:116(title) groupadd.8.xml:257(title) gpasswd.1.xml:252(title) +#: faillog.8.xml:232(title) chpasswd.8.xml:231(title) #: chgpasswd.8.xml:186(title) msgid "CAVEATS" msgstr "AVVISI/CAVEAT" #: usermod.8.xml:479(para) +#, fuzzy +#| msgid "" +#| "You must make certain that the named user is not executing any processes " +#| "when this command is being executed if the user's numerical user ID, the " +#| "user's name, or the user's home directory is being changed. " +#| "usermod checks this on Linux, but only check if the " +#| "user is logged in according to utmp on other architectures." msgid "" "You must make certain that the named user is not executing any processes " "when this command is being executed if the user's numerical user ID, the " "user's name, or the user's home directory is being changed. " -"usermod checks this on Linux, but only check if the user " -"is logged in according to utmp on other architectures." +"usermod checks this on Linux. On other platforms it only " +"uses utmp to check if the user is logged in." msgstr "" "Se si cambia l'ID numerico, il nome dell'utente o la sua directory home, si " "deve verificare che l'utente in questione non stia eseguendo nessun processo " @@ -1321,7 +1320,7 @@ msgstr "" "usermod effettua questo controllo in Linux, ma su altri " "sistemi controlla solo che non sia registrato come collegato in utmp." -#: usermod.8.xml:487(para) +#: usermod.8.xml:486(para) msgid "" "You must change the owner of any crontab files or " "at jobs manually." @@ -1329,7 +1328,7 @@ msgstr "" "Si deve cambiare manualmente il proprietario di eventuali file " "crontab e compiti at." -#: usermod.8.xml:491(para) +#: usermod.8.xml:490(para) msgid "You must make any changes involving NIS on the NIS server." msgstr "" "Si devono apportare tutte le modifiche che riguardano NIS sul server NIS." @@ -1613,7 +1612,7 @@ msgstr "" "non verrà creata automaticamente come /etc/tcb/user, ma verrà determinato in " "base all'UID dell'utente secondo questo algoritmo: " -#: usermod.8.xml:529(filename) userdel.8.xml:197(filename) +#: usermod.8.xml:528(filename) userdel.8.xml:197(filename) #: useradd.8.xml:726(filename) su.1.xml:382(filename) #: pwconv.8.xml:253(filename) passwd.1.xml:423(filename) #: newusers.8.xml:424(filename) login.access.5.xml:124(filename) @@ -1624,7 +1623,7 @@ msgstr "" msgid "/etc/login.defs" msgstr "/etc/login.defs" -#: usermod.8.xml:531(para) userdel.8.xml:199(para) useradd.8.xml:728(para) +#: usermod.8.xml:530(para) userdel.8.xml:199(para) useradd.8.xml:728(para) #: su.1.xml:384(para) pwconv.8.xml:255(para) passwd.1.xml:425(para) #: newusers.8.xml:426(para) login.access.5.xml:126(para) login.1.xml:391(para) #: groupmod.8.xml:222(para) groupadd.8.xml:250(para) chsh.1.xml:184(para) @@ -1632,32 +1631,32 @@ msgstr "/etc/login.defs" msgid "Shadow password suite configuration." msgstr "Configurazione del pacchetto password shadow" -#: usermod.8.xml:547(filename) userdel.8.xml:215(filename) +#: usermod.8.xml:546(filename) userdel.8.xml:215(filename) #: useradd.8.xml:714(filename) newusers.8.xml:436(filename) #, fuzzy #| msgid "/etc/suauth" msgid "/etc/subgid" msgstr "/etc/suauth" -#: usermod.8.xml:549(para) userdel.8.xml:217(para) useradd.8.xml:716(para) +#: usermod.8.xml:548(para) userdel.8.xml:217(para) useradd.8.xml:716(para) #: newusers.8.xml:438(para) msgid "Per user subordinate group IDs." msgstr "" -#: usermod.8.xml:553(filename) userdel.8.xml:221(filename) +#: usermod.8.xml:552(filename) userdel.8.xml:221(filename) #: useradd.8.xml:720(filename) newusers.8.xml:442(filename) #, fuzzy #| msgid "/etc/suauth" msgid "/etc/subuid" msgstr "/etc/suauth" -#: usermod.8.xml:555(para) userdel.8.xml:223(para) useradd.8.xml:722(para) +#: usermod.8.xml:554(para) userdel.8.xml:223(para) useradd.8.xml:722(para) #: newusers.8.xml:444(para) msgid "Per user subordinate user IDs." msgstr "" # type: Plain text -#: usermod.8.xml:563(para) +#: usermod.8.xml:562(para) #, fuzzy #| msgid "" #| "chfn1=VALUE." #: useradd.8.xml:301(para) +#, fuzzy +#| msgid "" +#| "Overrides /etc/login.defs defaults (, , " +#| " and others). Example: " +#| " PASS_MAX_DAYS=-1 can be used when creating " +#| "system account to turn off password ageing, even though system account " +#| "has no password at all. Multiple options can be " +#| "specified, e.g.:  UID_MIN=100  " +#| "UID_MAX=499" msgid "" "Overrides /etc/login.defs defaults (, , " " and others). Example: " " PASS_MAX_DAYS=-1 can be used when creating system " -"account to turn off password ageing, even though system account has no " +"account to turn off password aging, even though system account has no " "password at all. Multiple options can be specified, e." "g.:  UID_MIN=100  " @@ -2431,9 +2441,13 @@ msgid "Do not add the user to the lastlog and faillog databases." msgstr "Non aggiunge l'utente ai database «lastlog» e «faillog»." #: useradd.8.xml:327(para) +#, fuzzy +#| msgid "" +#| "By default, the user's entries in the lastlog and faillog databases are " +#| "resetted to avoid reusing the entry from a previously deleted user." msgid "" "By default, the user's entries in the lastlog and faillog databases are " -"resetted to avoid reusing the entry from a previously deleted user." +"reset to avoid reusing the entry from a previously deleted user." msgstr "" "Normalmente i dati utente nei database «lastlog» e «faillog» vengono " "azzerati per evitare di riutilizzare dati di un utente cancellato in " @@ -2462,9 +2476,12 @@ msgstr "" "Se questa opzione non viene utilizzata e se non è attiva la voce " ", la directory non viene creata." -#: useradd.8.xml:354(option) -msgid "-M" -msgstr "-M" +# type: IP +#: useradd.8.xml:353(term) +#, fuzzy +#| msgid ", " +msgid ", " +msgstr ", " #: useradd.8.xml:357(para) msgid "" @@ -2551,12 +2568,19 @@ msgstr "" "creazione dei gruppi)." #: useradd.8.xml:434(para) +#, fuzzy +#| msgid "" +#| "Note that useradd will not create a home directory for " +#| "such an user, regardless of the default setting in /etc/login." +#| "defs (). You have to specify the " +#| " options if you want a home directory for a system " +#| "account to be created." msgid "" "Note that useradd will not create a home directory for " -"such an user, regardless of the default setting in /etc/login." -"defs (). You have to specify the " -" options if you want a home directory for a system " -"account to be created." +"such a user, regardless of the default setting in /etc/login.defs (). You have to specify the options if you want a home directory for a system account to be " +"created." msgstr "" "Notare che useradd non creerà la directory home per " "questi utenti indipendentemente da quanto impostato in /etc/login." @@ -3220,10 +3244,14 @@ msgstr "" #. .RS #: suauth.5.xml:83(literallayout) -#, no-wrap +#, fuzzy, no-wrap +#| msgid "" +#| "\n" +#| " 1) the user su is targetting\n" +#| " " msgid "" "\n" -" 1) the user su is targetting\n" +" 1) the user su is targeting\n" " " msgstr "" "\n" @@ -3268,14 +3296,23 @@ msgstr "" "seguite da una lista di nomi utente separati da «,»." #: suauth.5.xml:107(para) +#, fuzzy +#| msgid "" +#| "from-id is formatted the same as to-id except the extra word " +#| "GROUP is recognised. ALL EXCEPT GROUP is perfectly valid too. Following GROUP " +#| "appears one or more group names, delimited by \",\". It is not sufficient " +#| "to have primary group id of the relevant group, an entry in " +#| "/etc/group5 is neccessary." msgid "" "from-id is formatted the same as to-id except the extra word " -"GROUP is recognised. ALL EXCEPT GROUPGROUP is recognized. ALL EXCEPT GROUP is perfectly valid too. Following GROUP " "appears one or more group names, delimited by \",\". It is not sufficient to " "have primary group id of the relevant group, an entry in " "/etc/group5 is neccessary." +"manvolnum> is necessary." msgstr "" "«id-iniziale» è formattato come «id-iniziale» salvo il riconoscimento della " "parola aggiuntiva GROUP. Anche ALL EXCEPT " @@ -3433,9 +3470,8 @@ msgstr "" "citerefentry>." #: su.1.xml:58(contrib) shadow.5.xml:41(contrib) shadow.3.xml:41(contrib) -#: porttime.5.xml:41(contrib) passwd.5.xml:41(contrib) -#: passwd.1.xml:48(contrib) login.1.xml:74(contrib) faillog.8.xml:41(contrib) -#: faillog.5.xml:41(contrib) +#: porttime.5.xml:41(contrib) passwd.5.xml:41(contrib) passwd.1.xml:48(contrib) +#: login.1.xml:74(contrib) faillog.8.xml:41(contrib) faillog.5.xml:41(contrib) msgid "Creation, 1989" msgstr "" @@ -3565,9 +3601,14 @@ msgstr "" "." #: su.1.xml:158(para) +#, fuzzy +#| msgid "" +#| "The executed command will have no controlling terminal. This option " +#| "cannot be used to execute interractive programs which need a controlling " +#| "TTY." msgid "" "The executed command will have no controlling terminal. This option cannot " -"be used to execute interractive programs which need a controlling TTY." +"be used to execute interactive programs which need a controlling TTY." msgstr "" "Il comando eseguito non avrà un terminale di controllo. Questa opzione non " "può essere utilizzata per invocare programmi interattivi che richiedono un " @@ -4336,8 +4377,13 @@ msgstr "" "di non permettere nessun accesso se il campo password è vuoto." #: shadow.5.xml:117(para) gshadow.5.xml:107(para) +#, fuzzy +#| msgid "" +#| "A password field which starts with a exclamation mark means that the " +#| "password is locked. The remaining characters on the line represent the " +#| "password field before the password was locked." msgid "" -"A password field which starts with a exclamation mark means that the " +"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." msgstr "" @@ -4359,9 +4405,13 @@ msgstr "" "dal 1 gennaio 1970." #: shadow.5.xml:134(para) +#, fuzzy +#| msgid "" +#| "The value 0 has a special meaning, which is that the user should change " +#| "her pasword the next time she will log in the system." msgid "" "The value 0 has a special meaning, which is that the user should change her " -"pasword the next time she will log in the system." +"password the next time she will log in the system." msgstr "" "Il valore 0 ha un significato speciale, vale a dire che l'utente deve " "cambiare la propria password al prossimo accesso al sistema." @@ -4490,9 +4540,15 @@ msgstr "" "1970." #: shadow.5.xml:229(para) +#, fuzzy +#| msgid "" +#| "Note that an account expiration differs from a password expiration. In " +#| "case of an acount 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." msgid "" "Note that an account expiration differs from a password expiration. In case " -"of an acount expiration, the user shall not be allowed to login. In case of " +"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." msgstr "" "Notare che la scadenza dell'account differisce da quella della password. Nel " @@ -4859,18 +4915,15 @@ msgstr "" msgid "pwconv" msgstr "pwconv" -#: pwconv.8.xml:71(refname) pwconv.8.xml:85(command) -#: login.defs.5.xml:438(term) +#: pwconv.8.xml:71(refname) pwconv.8.xml:85(command) login.defs.5.xml:438(term) msgid "pwunconv" msgstr "pwunconv" -#: pwconv.8.xml:72(refname) pwconv.8.xml:91(command) -#: login.defs.5.xml:340(term) +#: pwconv.8.xml:72(refname) pwconv.8.xml:91(command) login.defs.5.xml:340(term) msgid "grpconv" msgstr "grpconv" -#: pwconv.8.xml:73(refname) pwconv.8.xml:97(command) -#: login.defs.5.xml:346(term) +#: pwconv.8.xml:73(refname) pwconv.8.xml:97(command) login.defs.5.xml:346(term) msgid "grpunconv" msgstr "grpunconv" @@ -5094,8 +5147,7 @@ msgstr "verifica l'integrità dei file delle password" #: pwck.8.xml:80(replaceable) passwd.5.xml:57(refentrytitle) #: passwd.5.xml:64(refname) passwd.1.xml:64(refentrytitle) -#: passwd.1.xml:71(refname) passwd.1.xml:77(command) -#: login.defs.5.xml:409(term) +#: passwd.1.xml:71(refname) passwd.1.xml:77(command) login.defs.5.xml:409(term) msgid "passwd" msgstr "passwd" @@ -5290,10 +5342,15 @@ msgstr "" "replaceable>." #: pwck.8.xml:243(para) +#, fuzzy +#| msgid "" +#| "Note that when is enabled, you cannot specify an " +#| "alternative shadow file. In future releases, " +#| "this paramater could be replaced by an alternate TCB directory." msgid "" "Note that when is enabled, you cannot specify an " "alternative shadow file. In future releases, this " -"paramater could be replaced by an alternate TCB directory." +"parameter could be replaced by an alternate TCB directory." msgstr "" "Notare che quando è abilitata, non si può " "specificare un file shadow alternativo. In future " @@ -5784,8 +5841,12 @@ msgstr "" "essere indovinato per violare la sicurezza del sistema." #: passwd.1.xml:166(para) +#, fuzzy +#| msgid "" +#| "You can find advices on how to choose a strong password on http://en." +#| "wikipedia.org/wiki/Password_strength" msgid "" -"You can find advices on how to choose a strong password on http://en." +"You can find advice on how to choose a strong password on http://en." "wikipedia.org/wiki/Password_strength" msgstr "" "Si possono trovare indicazioni su come scegliere una password forte su " @@ -6178,8 +6239,8 @@ msgstr " (numerico)" #: passwd.1.xml:35(para) login.defs.5.xml:35(para) msgid "" "Number of significant characters in the password for crypt(). " -" is 8 by default. Don't change unless your crypt" -"() is better. This is ignored if set to " +" is 8 by default. Don't change unless your " +"crypt() is better. This is ignored if set to " "yes." msgstr "" "Numero di caratteri significativi della password per crypt(). " @@ -6356,7 +6417,9 @@ msgstr "CRONOLOGIA" # type: TP #: nologin.8.xml:91(para) -msgid "The nologin command appearred in BSD 4.4." +#, fuzzy +#| msgid "The nologin command appearred in BSD 4.4." +msgid "The nologin command appeared in BSD 4.4." msgstr "Il comando nologin è apparso in BSD 4.4." #: newusers.8.xml:72(refentrytitle) newusers.8.xml:79(refname) @@ -6401,8 +6464,14 @@ msgid "This is the name of the user." msgstr "Il nome dell'utente." #: newusers.8.xml:116(para) +#, fuzzy +#| msgid "" +#| "It can be the name of a new user or the name of an existing user (or an " +#| "user created before by newusers). In case of an " +#| "existing user, the user's information will be changed, otherwise a new " +#| "user will be created." msgid "" -"It can be the name of a new user or the name of an existing user (or an user " +"It can be the name of a new user or the name of an existing user (or a user " "created before by newusers). In case of an existing user, " "the user's information will be changed, otherwise a new user will be created." msgstr "" @@ -6432,8 +6501,12 @@ msgid "This field is used to define the UID of the user." msgstr "Definisce l'UID dell'utente." #: newusers.8.xml:144(para) +#, fuzzy +#| msgid "" +#| "If the field is empty, an new (unused) UID will be defined automatically " +#| "by newusers." msgid "" -"If the field is empty, an new (unused) UID will be defined automatically by " +"If the field is empty, a new (unused) UID will be defined automatically by " "newusers." msgstr "" "Se il campo è vuoto, verrà generato automaticamente un nuovo UID (non " @@ -6444,8 +6517,13 @@ msgid "If this field contains a number, this number will be used as the UID." msgstr "Se questo campo contiene un numero, verrà utilizzato come UID." #: newusers.8.xml:152(para) +#, fuzzy +#| msgid "" +#| "If this field contains the name of an existing user (or the name of an " +#| "user created before by newusers), the UID of the " +#| "specified user will be used." msgid "" -"If this field contains the name of an existing user (or the name of an user " +"If this field contains the name of an existing user (or the name of a user " "created before by newusers), the UID of the specified " "user will be used." msgstr "" @@ -8077,7 +8155,9 @@ msgid "D: max data size (KB)" msgstr "D: spazio massimo per i dati (kB)" #: limits.5.xml:111(para) -msgid "F: maximum filesize (KB)" +#, fuzzy +#| msgid "F: maximum filesize (KB)" +msgid "F: maximum file size (KB)" msgstr "F: dimensione massima di file (kB)" # type: Plain text @@ -8162,9 +8242,15 @@ msgstr "" " " #: limits.5.xml:145(para) +#, fuzzy +#| msgid "" +#| "Be aware that after username the rest of " +#| "the line is considered a limit string, thus comments are not allowed. A " +#| "invalid limits string will be rejected (not considered) by the " +#| "login program." msgid "" "Be aware that after username the rest of " -"the line is considered a limit string, thus comments are not allowed. A " +"the line is considered a limit string, thus comments are not allowed. An " "invalid limits string will be rejected (not considered) by the " "login program." msgstr "" @@ -8195,16 +8281,26 @@ msgstr "" "applicano ai membri del gruppo specificato." #: limits.5.xml:165(para) +#, fuzzy +#| msgid "" +#| "If more than one line with limits for an user exist, only the first line " +#| "for this user will be considered." msgid "" -"If more than one line with limits for an user exist, only the first line for " +"If more than one line with limits for a user exist, only the first line for " "this user will be considered." msgstr "" "Se ci sono più righe per lo stesso utente nel file limits, allora solo la " "prima verrà considerata." #: limits.5.xml:170(para) +#, fuzzy +#| msgid "" +#| "If no lines are specified for an user, the last @group 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." msgid "" -"If no lines are specified for an user, the last @group@group 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." @@ -8310,7 +8406,40 @@ msgstr "" "\">GIORNI giorni." # type: IP -#: lastlog.8.xml:127(term) faillog.8.xml:192(term) +#: lastlog.8.xml:107(term) +#, fuzzy +#| msgid ", " +msgid ", " +msgstr ", " + +# type: IP +#: lastlog.8.xml:111(para) +#, fuzzy +#| msgid "" +#| "This option is only valid in combination with the (or " +#| ") option." +msgid "" +"Clear lastlog record of a user. This option can be used only together with " +" ())." +msgstr "" +"Questa opzione è valida solo in combinazioone con l'opzione )." + +# type: IP +#: lastlog.8.xml:138(term) +#, fuzzy +#| msgid ", " +msgid ", " +msgstr ", " + +#: lastlog.8.xml:142(para) +msgid "" +"Set lastlog record of a user to the current time. This option can be used " +"only together with ())." +msgstr "" + +# type: IP +#: lastlog.8.xml:149(term) faillog.8.xml:192(term) msgid "" ",  DAYS" @@ -8319,7 +8448,7 @@ msgstr "" "replaceable>" # type: Plain text -#: lastlog.8.xml:131(para) +#: lastlog.8.xml:153(para) msgid "" "Print the lastlog records more recent than DAYS." @@ -8328,7 +8457,7 @@ msgstr "" "\">GIORNI." # type: IP -#: lastlog.8.xml:138(term) faillog.8.xml:202(term) +#: lastlog.8.xml:160(term) faillog.8.xml:202(term) msgid "" ",  LOGIN|RANGE" @@ -8337,13 +8466,13 @@ msgstr "" "replaceable>|INTERVALLO" # type: Plain text -#: lastlog.8.xml:142(para) +#: lastlog.8.xml:164(para) msgid "Print the lastlog record of the specified user(s)." msgstr "" "Mostra il record di ultimo accesso per l'utente o gli utenti specificati da " "LOGIN." -#: lastlog.8.xml:145(para) faillog.8.xml:211(para) +#: lastlog.8.xml:167(para) faillog.8.xml:211(para) msgid "" "The users can be specified by a login name, a numerical user ID, or a " "RANGE of users. This RANGEUID_MIN-)." # type: Plain text -#: lastlog.8.xml:157(para) +#: lastlog.8.xml:179(para) msgid "" "If the user has never logged in the message ** Never logged in** will be displayed instead of the port and time." @@ -8368,7 +8497,7 @@ msgstr "" "posto della porta e della data, il messaggio «**Nessun accesso " "effettuato**»." -#: lastlog.8.xml:162(para) +#: lastlog.8.xml:184(para) msgid "" "Only the entries for the current users of the system will be displayed. " "Other entries may exist for users that were deleted previously." @@ -8377,12 +8506,12 @@ msgstr "" "Ci potrebbero essere altre registrazioni per utenti cancellati in precedenza." # type: SH -#: lastlog.8.xml:170(title) groups.1.xml:90(title) chsh.1.xml:140(title) +#: lastlog.8.xml:192(title) groups.1.xml:90(title) chsh.1.xml:140(title) #: chage.1.xml:231(title) msgid "NOTE" msgstr "NOTA" -#: lastlog.8.xml:171(para) +#: lastlog.8.xml:193(para) msgid "" "The lastlog file is a database which contains info on " "the last login of each user. You should not rotate it. It is a sparse file, " @@ -8399,16 +8528,16 @@ msgstr "" "filename>). Si può vedere la dimensione effettiva con «ls -s»." -#: lastlog.8.xml:185(filename) +#: lastlog.8.xml:207(filename) msgid "/var/log/lastlog" msgstr "/var/log/lastlog" -#: lastlog.8.xml:187(para) +#: lastlog.8.xml:209(para) msgid "Database times of previous user logins." msgstr "Database degli orari dei precedenti accessi utente." # type: Plain text -#: lastlog.8.xml:195(para) +#: lastlog.8.xml:217(para) msgid "" "Large gaps in UID numbers will cause the lastlog program to run longer with " "no output to the screen (i.e. if in lastlog database there is no entries for " @@ -8472,8 +8601,14 @@ msgstr "" # type: Plain text #: gshadow.5.xml:97(para) +#, fuzzy +#| msgid "" +#| "The password is used when an user who is not a member of the group wants " +#| "to gain the permissions of this group (see " +#| "newgrp1)." msgid "" -"The password is used when an user who is not a member of the group wants to " +"The password is used when a user who is not a member of the group wants to " "gain the permissions of this group (see newgrp1)." msgstr "" @@ -9045,7 +9180,9 @@ msgstr "" "replaceable>" #: groupmems.8.xml:109(para) -msgid "Add an user to the group membership list." +#, fuzzy +#| msgid "Add an user to the group membership list." +msgid "Add a user to the group membership list." msgstr "Aggiunge un utente all'elenco di membri del gruppo." #: groupmems.8.xml:110(para) groupmems.8.xml:126(para) @@ -10144,10 +10281,17 @@ msgstr "" "presenti, anche le informazioni sulla durata delle password." #: chpasswd.8.xml:97(para) +#, fuzzy +#| msgid "" +#| "The default encryption algorithm can be defined for the system with the " +#| " or " +#| "variables of /etc/login.defs, and can be overwitten " +#| "with the , , or " +#| "options." msgid "" "The default encryption algorithm can be defined for the system with the " " or variables " -"of /etc/login.defs, and can be overwitten with the " +"of /etc/login.defs, and can be overwritten with the " ", , or options." msgstr "" "L'algoritmo di cifratura predefinito può essere impostato con le variabili " @@ -10167,10 +10311,16 @@ msgstr "" "le opzioni , e ." #: chpasswd.8.xml:111(para) +#, fuzzy +#| msgid "" +#| "Except when PAM is used to encrypt the " +#| "passwords,chpasswd first updates all the " +#| "passwords in memory, and then commits all the changes to disk if no " +#| "errors occured for any user." msgid "" "Except when PAM is used to encrypt the passwords,chpasswd first updates all the passwords in " -"memory, and then commits all the changes to disk if no errors occured for " +"memory, and then commits all the changes to disk if no errors occurred for " "any user." msgstr "" "Escluso quando PAM viene utilizzato per cifrare le " @@ -10348,10 +10498,16 @@ msgstr "" "da chgpasswd." #: chgpasswd.8.xml:92(para) +#, fuzzy +#| msgid "" +#| "The default encryption algorithm can be defined for the system with the " +#| " variable of /etc/login.defs, and can be overwiten with the , options." msgid "" "The default encryption algorithm can be defined for the system with the " " variable of /etc/login.defs, and can be overwiten with the , , options." msgstr "" "L'algoritmo di cifratura utilizzato può essere definito per tutto il sistema " @@ -10782,6 +10938,9 @@ msgstr "" "Giuseppe Sacco , 2005, 2012.\n" "Danilo Piazzalunga , 2005." +#~ msgid "-M" +#~ msgstr "-M" + # type: Plain text #~ msgid "" #~ "chfn1\n" "Language-Team: Polish \n" @@ -51,16 +51,15 @@ msgstr "" #: useradd.8.xml:62(surname) suauth.5.xml:45(surname) su.1.xml:62(surname) #: sg.1.xml:46(surname) shadow.5.xml:45(surname) shadow.3.xml:45(surname) #: pwconv.8.xml:51(surname) pwck.8.xml:51(surname) porttime.5.xml:45(surname) -#: passwd.5.xml:45(surname) passwd.1.xml:52(surname) -#: newusers.8.xml:60(surname) newgrp.1.xml:46(surname) -#: logoutd.8.xml:45(surname) login.defs.5.xml:110(surname) -#: login.access.5.xml:46(surname) login.1.xml:78(surname) -#: limits.5.xml:47(surname) lastlog.8.xml:46(surname) grpck.8.xml:46(surname) -#: groups.1.xml:45(surname) groupmod.8.xml:46(surname) +#: passwd.5.xml:45(surname) passwd.1.xml:52(surname) newusers.8.xml:60(surname) +#: newgrp.1.xml:46(surname) logoutd.8.xml:45(surname) +#: login.defs.5.xml:110(surname) login.access.5.xml:46(surname) +#: login.1.xml:78(surname) limits.5.xml:47(surname) lastlog.8.xml:46(surname) +#: grpck.8.xml:46(surname) groups.1.xml:45(surname) groupmod.8.xml:46(surname) #: groupmems.8.xml:49(surname) groupdel.8.xml:46(surname) #: groupadd.8.xml:48(surname) gpasswd.1.xml:50(surname) -#: faillog.8.xml:45(surname) faillog.5.xml:45(surname) -#: expiry.1.xml:49(surname) chsh.1.xml:48(surname) chpasswd.8.xml:49(surname) +#: faillog.8.xml:45(surname) faillog.5.xml:45(surname) expiry.1.xml:49(surname) +#: chsh.1.xml:48(surname) chpasswd.8.xml:49(surname) #: chgpasswd.8.xml:45(surname) chfn.1.xml:48(surname) chage.1.xml:46(surname) msgid "Kłoczko" msgstr "" @@ -85,17 +84,16 @@ msgstr "" #: useradd.8.xml:64(contrib) suauth.5.xml:47(contrib) su.1.xml:64(contrib) #: sg.1.xml:48(contrib) shadow.5.xml:47(contrib) shadow.3.xml:47(contrib) #: pwconv.8.xml:53(contrib) pwck.8.xml:53(contrib) porttime.5.xml:47(contrib) -#: passwd.5.xml:47(contrib) passwd.1.xml:54(contrib) -#: newusers.8.xml:62(contrib) newgrp.1.xml:48(contrib) -#: logoutd.8.xml:47(contrib) login.defs.5.xml:112(contrib) -#: login.access.5.xml:48(contrib) login.1.xml:80(contrib) -#: limits.5.xml:49(contrib) lastlog.8.xml:48(contrib) grpck.8.xml:48(contrib) -#: groups.1.xml:47(contrib) groupmod.8.xml:48(contrib) +#: passwd.5.xml:47(contrib) passwd.1.xml:54(contrib) newusers.8.xml:62(contrib) +#: newgrp.1.xml:48(contrib) logoutd.8.xml:47(contrib) +#: login.defs.5.xml:112(contrib) login.access.5.xml:48(contrib) +#: login.1.xml:80(contrib) limits.5.xml:49(contrib) lastlog.8.xml:48(contrib) +#: grpck.8.xml:48(contrib) groups.1.xml:47(contrib) groupmod.8.xml:48(contrib) #: groupmems.8.xml:51(contrib) groupdel.8.xml:48(contrib) #: groupadd.8.xml:50(contrib) gpasswd.1.xml:52(contrib) -#: faillog.8.xml:47(contrib) faillog.5.xml:47(contrib) -#: expiry.1.xml:51(contrib) chsh.1.xml:50(contrib) chpasswd.8.xml:51(contrib) -#: chfn.1.xml:50(contrib) chage.1.xml:48(contrib) +#: faillog.8.xml:47(contrib) faillog.5.xml:47(contrib) expiry.1.xml:51(contrib) +#: chsh.1.xml:50(contrib) chpasswd.8.xml:51(contrib) chfn.1.xml:50(contrib) +#: chage.1.xml:48(contrib) msgid "shadow-utils maintainer, 2000 - 2007" msgstr "" @@ -129,14 +127,13 @@ msgstr "" #: newusers.8.xml:66(surname) newgrp.1.xml:52(surname) #: logoutd.8.xml:51(surname) login.defs.5.xml:116(surname) #: login.access.5.xml:52(surname) login.1.xml:84(surname) -#: limits.5.xml:53(surname) lastlog.8.xml:52(surname) -#: gshadow.5.xml:39(surname) grpck.8.xml:52(surname) groups.1.xml:51(surname) -#: groupmod.8.xml:52(surname) groupmems.8.xml:55(surname) -#: groupdel.8.xml:52(surname) groupadd.8.xml:54(surname) -#: gpasswd.1.xml:56(surname) faillog.8.xml:51(surname) -#: faillog.5.xml:51(surname) expiry.1.xml:55(surname) chsh.1.xml:54(surname) -#: chpasswd.8.xml:55(surname) chgpasswd.8.xml:51(surname) -#: chfn.1.xml:54(surname) chage.1.xml:52(surname) +#: limits.5.xml:53(surname) lastlog.8.xml:52(surname) gshadow.5.xml:39(surname) +#: grpck.8.xml:52(surname) groups.1.xml:51(surname) groupmod.8.xml:52(surname) +#: groupmems.8.xml:55(surname) groupdel.8.xml:52(surname) +#: groupadd.8.xml:54(surname) gpasswd.1.xml:56(surname) +#: faillog.8.xml:51(surname) faillog.5.xml:51(surname) expiry.1.xml:55(surname) +#: chsh.1.xml:54(surname) chpasswd.8.xml:55(surname) +#: chgpasswd.8.xml:51(surname) chfn.1.xml:54(surname) chage.1.xml:52(surname) msgid "François" msgstr "" @@ -165,14 +162,13 @@ msgstr "" #: newusers.8.xml:68(contrib) newgrp.1.xml:54(contrib) #: logoutd.8.xml:53(contrib) login.defs.5.xml:118(contrib) #: login.access.5.xml:54(contrib) login.1.xml:86(contrib) -#: limits.5.xml:55(contrib) lastlog.8.xml:54(contrib) -#: gshadow.5.xml:42(contrib) grpck.8.xml:54(contrib) groups.1.xml:53(contrib) -#: groupmod.8.xml:54(contrib) groupmems.8.xml:57(contrib) -#: groupdel.8.xml:54(contrib) groupadd.8.xml:56(contrib) -#: gpasswd.1.xml:58(contrib) faillog.8.xml:53(contrib) -#: faillog.5.xml:53(contrib) expiry.1.xml:57(contrib) chsh.1.xml:56(contrib) -#: chpasswd.8.xml:57(contrib) chgpasswd.8.xml:53(contrib) -#: chfn.1.xml:56(contrib) chage.1.xml:54(contrib) +#: limits.5.xml:55(contrib) lastlog.8.xml:54(contrib) gshadow.5.xml:42(contrib) +#: grpck.8.xml:54(contrib) groups.1.xml:53(contrib) groupmod.8.xml:54(contrib) +#: groupmems.8.xml:57(contrib) groupdel.8.xml:54(contrib) +#: groupadd.8.xml:56(contrib) gpasswd.1.xml:58(contrib) +#: faillog.8.xml:53(contrib) faillog.5.xml:53(contrib) expiry.1.xml:57(contrib) +#: chsh.1.xml:56(contrib) chpasswd.8.xml:57(contrib) +#: chgpasswd.8.xml:53(contrib) chfn.1.xml:56(contrib) chage.1.xml:54(contrib) msgid "shadow-utils maintainer, 2007 - now" msgstr "" @@ -245,14 +241,13 @@ msgstr "edytuj plik haseł, grup lub ich wersji chronionych" #: useradd.8.xml:88(replaceable) useradd.8.xml:100(replaceable) #: su.1.xml:88(replaceable) pwconv.8.xml:81(replaceable) #: pwconv.8.xml:87(replaceable) pwconv.8.xml:93(replaceable) -#: pwconv.8.xml:99(replaceable) pwck.8.xml:77(arg) -#: passwd.1.xml:79(replaceable) newusers.8.xml:87(replaceable) -#: lastlog.8.xml:73(replaceable) grpck.8.xml:72(arg) -#: groupmod.8.xml:73(replaceable) groupdel.8.xml:73(replaceable) -#: groupadd.8.xml:75(replaceable) faillog.8.xml:72(replaceable) -#: chsh.1.xml:75(replaceable) chpasswd.8.xml:76(replaceable) -#: chgpasswd.8.xml:72(replaceable) chfn.1.xml:75(replaceable) -#: chage.1.xml:72(replaceable) +#: pwconv.8.xml:99(replaceable) pwck.8.xml:77(arg) passwd.1.xml:79(replaceable) +#: newusers.8.xml:87(replaceable) lastlog.8.xml:73(replaceable) +#: grpck.8.xml:72(arg) groupmod.8.xml:73(replaceable) +#: groupdel.8.xml:73(replaceable) groupadd.8.xml:75(replaceable) +#: faillog.8.xml:72(replaceable) chsh.1.xml:75(replaceable) +#: chpasswd.8.xml:76(replaceable) chgpasswd.8.xml:72(replaceable) +#: chfn.1.xml:75(replaceable) chage.1.xml:72(replaceable) msgid "options" msgstr "opcje" @@ -302,11 +297,10 @@ msgstr "" #: useradd.8.xml:124(title) su.1.xml:145(title) pwconv.8.xml:187(title) #: pwck.8.xml:176(title) passwd.1.xml:174(title) newusers.8.xml:265(title) #: login.1.xml:210(title) lastlog.8.xml:91(title) grpck.8.xml:147(title) -#: groupmod.8.xml:89(title) groupmems.8.xml:100(title) -#: groupdel.8.xml:88(title) groupadd.8.xml:93(title) gpasswd.1.xml:134(title) -#: faillog.8.xml:89(title) expiry.1.xml:91(title) chsh.1.xml:95(title) -#: chpasswd.8.xml:130(title) chgpasswd.8.xml:105(title) chfn.1.xml:111(title) -#: chage.1.xml:91(title) +#: groupmod.8.xml:89(title) groupmems.8.xml:100(title) groupdel.8.xml:88(title) +#: groupadd.8.xml:93(title) gpasswd.1.xml:134(title) faillog.8.xml:89(title) +#: expiry.1.xml:91(title) chsh.1.xml:95(title) chpasswd.8.xml:130(title) +#: chgpasswd.8.xml:105(title) chfn.1.xml:111(title) chage.1.xml:91(title) msgid "OPTIONS" msgstr "OPCJE" @@ -329,7 +323,7 @@ msgstr "Edycja bazy grup." #: vipw.8.xml:120(term) userdel.8.xml:123(term) useradd.8.xml:266(term) #: pwconv.8.xml:195(term) pwck.8.xml:186(term) passwd.1.xml:214(term) -#: newusers.8.xml:283(term) lastlog.8.xml:107(term) grpck.8.xml:157(term) +#: newusers.8.xml:283(term) lastlog.8.xml:118(term) grpck.8.xml:157(term) #: groupmod.8.xml:129(term) groupmems.8.xml:142(term) groupdel.8.xml:95(term) #: groupadd.8.xml:131(term) gpasswd.1.xml:173(term) faillog.8.xml:122(term) #: expiry.1.xml:112(term) chsh.1.xml:101(term) chpasswd.8.xml:171(term) @@ -339,7 +333,7 @@ msgstr ", " #: vipw.8.xml:122(para) userdel.8.xml:125(para) useradd.8.xml:268(para) #: pwconv.8.xml:197(para) pwck.8.xml:188(para) passwd.1.xml:216(para) -#: newusers.8.xml:285(para) lastlog.8.xml:111(para) grpck.8.xml:159(para) +#: newusers.8.xml:285(para) lastlog.8.xml:122(para) grpck.8.xml:159(para) #: groupmod.8.xml:131(para) groupmems.8.xml:144(para) groupdel.8.xml:97(para) #: groupadd.8.xml:133(para) gpasswd.1.xml:175(para) faillog.8.xml:124(para) #: expiry.1.xml:114(para) chsh.1.xml:103(para) chpasswd.8.xml:173(para) @@ -365,7 +359,7 @@ msgstr "Cichy tryb pracy." #: vipw.8.xml:138(term) usermod.8.xml:311(term) userdel.8.xml:146(term) #: useradd.8.xml:445(term) pwconv.8.xml:201(term) pwck.8.xml:209(term) -#: passwd.1.xml:301(term) newusers.8.xml:308(term) lastlog.8.xml:115(term) +#: passwd.1.xml:301(term) newusers.8.xml:308(term) lastlog.8.xml:126(term) #: grpck.8.xml:173(term) groupmod.8.xml:178(term) groupmems.8.xml:165(term) #: groupdel.8.xml:101(term) groupadd.8.xml:204(term) faillog.8.xml:180(term) #: chsh.1.xml:107(term) chpasswd.8.xml:188(term) chgpasswd.8.xml:146(term) @@ -383,7 +377,7 @@ msgstr "" #: vipw.8.xml:142(para) usermod.8.xml:315(para) userdel.8.xml:150(para) #: useradd.8.xml:449(para) pwconv.8.xml:205(para) pwck.8.xml:213(para) -#: passwd.1.xml:305(para) newusers.8.xml:312(para) lastlog.8.xml:119(para) +#: passwd.1.xml:305(para) newusers.8.xml:312(para) lastlog.8.xml:130(para) #: grpck.8.xml:177(para) groupmod.8.xml:182(para) groupmems.8.xml:169(para) #: groupdel.8.xml:105(para) groupadd.8.xml:208(para) gpasswd.1.xml:185(para) #: faillog.8.xml:184(para) chsh.1.xml:111(para) chpasswd.8.xml:192(para) @@ -415,18 +409,18 @@ msgstr ", " msgid "Indicates which user's tcb shadow file to edit." msgstr "" -#: vipw.8.xml:165(title) usermod.8.xml:497(title) userdel.8.xml:171(title) +#: vipw.8.xml:165(title) usermod.8.xml:496(title) userdel.8.xml:171(title) #: useradd.8.xml:647(title) su.1.xml:339(title) sg.1.xml:98(title) #: pwconv.8.xml:227(title) pwck.8.xml:252(title) passwd.1.xml:390(title) #: newusers.8.xml:362(title) newgrp.1.xml:109(title) login.1.xml:294(title) #: grpck.8.xml:209(title) groupmod.8.xml:193(title) groupmems.8.xml:199(title) -#: groupdel.8.xml:128(title) groupadd.8.xml:219(title) -#: gpasswd.1.xml:264(title) chsh.1.xml:154(title) chpasswd.8.xml:239(title) -#: chgpasswd.8.xml:198(title) chfn.1.xml:193(title) chage.1.xml:244(title) +#: groupdel.8.xml:128(title) groupadd.8.xml:219(title) gpasswd.1.xml:264(title) +#: chsh.1.xml:154(title) chpasswd.8.xml:239(title) chgpasswd.8.xml:198(title) +#: chfn.1.xml:193(title) chage.1.xml:244(title) msgid "CONFIGURATION" msgstr "" -#: vipw.8.xml:166(para) usermod.8.xml:498(para) userdel.8.xml:172(para) +#: vipw.8.xml:166(para) usermod.8.xml:497(para) userdel.8.xml:172(para) #: useradd.8.xml:648(para) su.1.xml:340(para) sg.1.xml:99(para) #: pwck.8.xml:253(para) passwd.1.xml:391(para) newusers.8.xml:363(para) #: newgrp.1.xml:110(para) login.1.xml:295(para) grpck.8.xml:210(para) @@ -479,37 +473,35 @@ msgstr "" msgid "Editor to be used if is not set." msgstr "" -#: vipw.8.xml:195(title) usermod.8.xml:514(title) userdel.8.xml:188(title) +#: vipw.8.xml:195(title) usermod.8.xml:513(title) userdel.8.xml:188(title) #: useradd.8.xml:675(title) suauth.5.xml:193(title) su.1.xml:367(title) #: sg.1.xml:110(title) shadow.5.xml:255(title) shadow.3.xml:226(title) #: pwconv.8.xml:250(title) pwck.8.xml:269(title) porttime.5.xml:130(title) #: passwd.5.xml:141(title) passwd.1.xml:408(title) newusers.8.xml:397(title) #: newgrp.1.xml:121(title) logoutd.8.xml:89(title) -#: login.access.5.xml:121(title) login.1.xml:338(title) -#: limits.5.xml:196(title) lastlog.8.xml:182(title) gshadow.5.xml:156(title) -#: grpck.8.xml:221(title) groups.1.xml:100(title) groupmod.8.xml:205(title) -#: groupmems.8.xml:211(title) groupdel.8.xml:140(title) -#: groupadd.8.xml:233(title) gpasswd.1.xml:279(title) faillog.8.xml:243(title) -#: faillog.5.xml:96(title) expiry.1.xml:121(title) chsh.1.xml:167(title) -#: chpasswd.8.xml:255(title) chgpasswd.8.xml:213(title) chfn.1.xml:207(title) -#: chage.1.xml:256(title) +#: login.access.5.xml:121(title) login.1.xml:338(title) limits.5.xml:196(title) +#: lastlog.8.xml:204(title) gshadow.5.xml:156(title) grpck.8.xml:221(title) +#: groups.1.xml:100(title) groupmod.8.xml:205(title) groupmems.8.xml:211(title) +#: groupdel.8.xml:140(title) groupadd.8.xml:233(title) gpasswd.1.xml:279(title) +#: faillog.8.xml:243(title) faillog.5.xml:96(title) expiry.1.xml:121(title) +#: chsh.1.xml:167(title) chpasswd.8.xml:255(title) chgpasswd.8.xml:213(title) +#: chfn.1.xml:207(title) chage.1.xml:256(title) msgid "FILES" msgstr "PLIKI" -#: vipw.8.xml:198(filename) usermod.8.xml:517(filename) +#: vipw.8.xml:198(filename) usermod.8.xml:516(filename) #: userdel.8.xml:191(filename) useradd.8.xml:690(filename) -#: sg.1.xml:125(filename) pwck.8.xml:272(filename) -#: newusers.8.xml:412(filename) newgrp.1.xml:136(filename) -#: gshadow.5.xml:159(filename) grpck.8.xml:224(filename) -#: groups.1.xml:103(filename) groupmod.8.xml:208(filename) -#: groupmems.8.xml:214(filename) groupdel.8.xml:143(filename) -#: groupadd.8.xml:236(filename) gpasswd.1.xml:72(filename) -#: gpasswd.1.xml:75(filename) gpasswd.1.xml:282(filename) -#: chgpasswd.8.xml:216(filename) +#: sg.1.xml:125(filename) pwck.8.xml:272(filename) newusers.8.xml:412(filename) +#: newgrp.1.xml:136(filename) gshadow.5.xml:159(filename) +#: grpck.8.xml:224(filename) groups.1.xml:103(filename) +#: groupmod.8.xml:208(filename) groupmems.8.xml:214(filename) +#: groupdel.8.xml:143(filename) groupadd.8.xml:236(filename) +#: gpasswd.1.xml:72(filename) gpasswd.1.xml:75(filename) +#: gpasswd.1.xml:282(filename) chgpasswd.8.xml:216(filename) msgid "/etc/group" msgstr "/etc/group" -#: vipw.8.xml:200(para) usermod.8.xml:519(para) userdel.8.xml:193(para) +#: vipw.8.xml:200(para) usermod.8.xml:518(para) userdel.8.xml:193(para) #: useradd.8.xml:692(para) sg.1.xml:127(para) pwck.8.xml:274(para) #: newusers.8.xml:414(para) newgrp.1.xml:138(para) gshadow.5.xml:161(para) #: grpck.8.xml:226(para) groups.1.xml:105(para) groupmod.8.xml:210(para) @@ -518,7 +510,7 @@ msgstr "/etc/group" msgid "Group account information." msgstr "Informacje o grupach użytkowników." -#: vipw.8.xml:204(filename) usermod.8.xml:523(filename) +#: vipw.8.xml:204(filename) usermod.8.xml:522(filename) #: useradd.8.xml:696(filename) sg.1.xml:131(filename) #: newusers.8.xml:418(filename) newgrp.1.xml:142(filename) #: gshadow.5.xml:165(filename) grpck.8.xml:230(filename) @@ -529,7 +521,7 @@ msgstr "Informacje o grupach użytkowników." msgid "/etc/gshadow" msgstr "/etc/gshadow" -#: vipw.8.xml:206(para) usermod.8.xml:525(para) useradd.8.xml:698(para) +#: vipw.8.xml:206(para) usermod.8.xml:524(para) useradd.8.xml:698(para) #: sg.1.xml:133(para) newusers.8.xml:420(para) newgrp.1.xml:144(para) #: gshadow.5.xml:167(para) grpck.8.xml:232(para) groupmod.8.xml:216(para) #: groupdel.8.xml:151(para) groupadd.8.xml:244(para) gpasswd.1.xml:290(para) @@ -537,7 +529,7 @@ msgstr "/etc/gshadow" msgid "Secure group account information." msgstr "Informacje chronione o grupach użytkowników." -#: vipw.8.xml:210(filename) usermod.8.xml:535(filename) +#: vipw.8.xml:210(filename) usermod.8.xml:534(filename) #: userdel.8.xml:203(filename) useradd.8.xml:678(filename) #: su.1.xml:370(filename) sg.1.xml:113(filename) shadow.5.xml:258(filename) #: pwck.8.xml:278(filename) passwd.5.xml:144(filename) @@ -550,7 +542,7 @@ msgstr "Informacje chronione o grupach użytkowników." msgid "/etc/passwd" msgstr "/etc/passwd" -#: vipw.8.xml:212(para) usermod.8.xml:537(para) userdel.8.xml:205(para) +#: vipw.8.xml:212(para) usermod.8.xml:536(para) userdel.8.xml:205(para) #: useradd.8.xml:680(para) su.1.xml:372(para) sg.1.xml:115(para) #: shadow.5.xml:260(para) pwck.8.xml:280(para) passwd.5.xml:146(para) #: passwd.1.xml:413(para) newusers.8.xml:402(para) newgrp.1.xml:126(para) @@ -560,7 +552,7 @@ msgstr "/etc/passwd" msgid "User account information." msgstr "Informacja o kontach użytkowników." -#: vipw.8.xml:216(filename) usermod.8.xml:541(filename) +#: vipw.8.xml:216(filename) usermod.8.xml:540(filename) #: userdel.8.xml:209(filename) useradd.8.xml:684(filename) #: su.1.xml:376(filename) sg.1.xml:119(filename) shadow.5.xml:264(filename) #: shadow.3.xml:229(filename) pwck.8.xml:284(filename) @@ -571,7 +563,7 @@ msgstr "Informacja o kontach użytkowników." msgid "/etc/shadow" msgstr "/etc/shadow" -#: vipw.8.xml:218(para) usermod.8.xml:543(para) userdel.8.xml:211(para) +#: vipw.8.xml:218(para) usermod.8.xml:542(para) userdel.8.xml:211(para) #: useradd.8.xml:686(para) su.1.xml:378(para) sg.1.xml:121(para) #: shadow.5.xml:266(para) shadow.3.xml:231(para) pwck.8.xml:286(para) #: passwd.1.xml:419(para) newusers.8.xml:408(para) newgrp.1.xml:132(para) @@ -580,7 +572,7 @@ msgstr "/etc/shadow" msgid "Secure user account information." msgstr "Informacje chronione o użytkownikach." -#: vipw.8.xml:225(title) usermod.8.xml:562(title) userdel.8.xml:308(title) +#: vipw.8.xml:225(title) usermod.8.xml:561(title) userdel.8.xml:308(title) #: useradd.8.xml:804(title) suauth.5.xml:222(title) su.1.xml:438(title) #: sg.1.xml:140(title) shadow.5.xml:283(title) shadow.3.xml:238(title) #: pwconv.8.xml:262(title) pwck.8.xml:344(title) porttime.5.xml:142(title) @@ -655,15 +647,15 @@ msgstr "" #: usermod.8.xml:46(surname) userdel.8.xml:46(surname) #: useradd.8.xml:57(surname) su.1.xml:57(surname) sg.1.xml:41(surname) #: shadow.5.xml:40(surname) shadow.3.xml:40(surname) pwck.8.xml:46(surname) -#: porttime.5.xml:40(surname) passwd.5.xml:40(surname) -#: passwd.1.xml:47(surname) newusers.8.xml:55(surname) -#: newgrp.1.xml:41(surname) logoutd.8.xml:40(surname) -#: login.defs.5.xml:105(surname) login.1.xml:73(surname) -#: lastlog.8.xml:41(surname) grpck.8.xml:41(surname) groups.1.xml:40(surname) -#: groupmod.8.xml:41(surname) groupdel.8.xml:41(surname) -#: groupadd.8.xml:43(surname) faillog.8.xml:40(surname) -#: faillog.5.xml:40(surname) expiry.1.xml:44(surname) chsh.1.xml:43(surname) -#: chpasswd.8.xml:44(surname) chfn.1.xml:43(surname) chage.1.xml:41(surname) +#: porttime.5.xml:40(surname) passwd.5.xml:40(surname) passwd.1.xml:47(surname) +#: newusers.8.xml:55(surname) newgrp.1.xml:41(surname) +#: logoutd.8.xml:40(surname) login.defs.5.xml:105(surname) +#: login.1.xml:73(surname) lastlog.8.xml:41(surname) grpck.8.xml:41(surname) +#: groups.1.xml:40(surname) groupmod.8.xml:41(surname) +#: groupdel.8.xml:41(surname) groupadd.8.xml:43(surname) +#: faillog.8.xml:40(surname) faillog.5.xml:40(surname) expiry.1.xml:44(surname) +#: chsh.1.xml:43(surname) chpasswd.8.xml:44(surname) chfn.1.xml:43(surname) +#: chage.1.xml:41(surname) msgid "Haugh" msgstr "" @@ -1217,9 +1209,9 @@ msgstr "" #: usermod.8.xml:478(title) userdel.8.xml:281(title) useradd.8.xml:623(title) #: su.1.xml:331(title) shadow.3.xml:218(title) passwd.1.xml:372(title) -#: newusers.8.xml:350(title) login.1.xml:260(title) lastlog.8.xml:194(title) -#: groupdel.8.xml:116(title) groupadd.8.xml:257(title) -#: gpasswd.1.xml:252(title) faillog.8.xml:232(title) chpasswd.8.xml:231(title) +#: newusers.8.xml:350(title) login.1.xml:260(title) lastlog.8.xml:216(title) +#: groupdel.8.xml:116(title) groupadd.8.xml:257(title) gpasswd.1.xml:252(title) +#: faillog.8.xml:232(title) chpasswd.8.xml:231(title) #: chgpasswd.8.xml:186(title) msgid "CAVEATS" msgstr "OSTRZEŻENIA" @@ -1229,17 +1221,17 @@ msgid "" "You must make certain that the named user is not executing any processes " "when this command is being executed if the user's numerical user ID, the " "user's name, or the user's home directory is being changed. " -"usermod checks this on Linux, but only check if the user " -"is logged in according to utmp on other architectures." +"usermod checks this on Linux. On other platforms it only " +"uses utmp to check if the user is logged in." msgstr "" -#: usermod.8.xml:487(para) +#: usermod.8.xml:486(para) msgid "" "You must change the owner of any crontab files or " "at jobs manually." msgstr "" -#: usermod.8.xml:491(para) +#: usermod.8.xml:490(para) msgid "You must make any changes involving NIS on the NIS server." msgstr "" @@ -1455,7 +1447,7 @@ msgid "" "algorithm: " msgstr "" -#: usermod.8.xml:529(filename) userdel.8.xml:197(filename) +#: usermod.8.xml:528(filename) userdel.8.xml:197(filename) #: useradd.8.xml:726(filename) su.1.xml:382(filename) #: pwconv.8.xml:253(filename) passwd.1.xml:423(filename) #: newusers.8.xml:424(filename) login.access.5.xml:124(filename) @@ -1466,7 +1458,7 @@ msgstr "" msgid "/etc/login.defs" msgstr "/etc/login.defs" -#: usermod.8.xml:531(para) userdel.8.xml:199(para) useradd.8.xml:728(para) +#: usermod.8.xml:530(para) userdel.8.xml:199(para) useradd.8.xml:728(para) #: su.1.xml:384(para) pwconv.8.xml:255(para) passwd.1.xml:425(para) #: newusers.8.xml:426(para) login.access.5.xml:126(para) login.1.xml:391(para) #: groupmod.8.xml:222(para) groupadd.8.xml:250(para) chsh.1.xml:184(para) @@ -1474,31 +1466,31 @@ msgstr "/etc/login.defs" msgid "Shadow password suite configuration." msgstr "Konfiguracja pakietu shadow." -#: usermod.8.xml:547(filename) userdel.8.xml:215(filename) +#: usermod.8.xml:546(filename) userdel.8.xml:215(filename) #: useradd.8.xml:714(filename) newusers.8.xml:436(filename) #, fuzzy #| msgid "/etc/suauth" msgid "/etc/subgid" msgstr "/etc/suauth" -#: usermod.8.xml:549(para) userdel.8.xml:217(para) useradd.8.xml:716(para) +#: usermod.8.xml:548(para) userdel.8.xml:217(para) useradd.8.xml:716(para) #: newusers.8.xml:438(para) msgid "Per user subordinate group IDs." msgstr "" -#: usermod.8.xml:553(filename) userdel.8.xml:221(filename) +#: usermod.8.xml:552(filename) userdel.8.xml:221(filename) #: useradd.8.xml:720(filename) newusers.8.xml:442(filename) #, fuzzy #| msgid "/etc/suauth" msgid "/etc/subuid" msgstr "/etc/suauth" -#: usermod.8.xml:555(para) userdel.8.xml:223(para) useradd.8.xml:722(para) +#: usermod.8.xml:554(para) userdel.8.xml:223(para) useradd.8.xml:722(para) #: newusers.8.xml:444(para) msgid "Per user subordinate user IDs." msgstr "" -#: usermod.8.xml:563(para) +#: usermod.8.xml:562(para) #, fuzzy #| msgid "" #| "chfn1PASS_MAX_DAYS and others). Example: " " PASS_MAX_DAYS=-1 can be used when creating system " -"account to turn off password ageing, even though system account has no " +"account to turn off password aging, even though system account has no " "password at all. Multiple options can be specified, e." "g.:  UID_MIN=100  " @@ -2119,7 +2110,7 @@ msgstr "" #: useradd.8.xml:327(para) msgid "" "By default, the user's entries in the lastlog and faillog databases are " -"resetted to avoid reusing the entry from a previously deleted user." +"reset to avoid reusing the entry from a previously deleted user." msgstr "" #: useradd.8.xml:335(term) @@ -2139,11 +2130,11 @@ msgid "" "is not enabled, no home directories are created." msgstr "" -#: useradd.8.xml:354(option) +#: useradd.8.xml:353(term) #, fuzzy -#| msgid "-" -msgid "-M" -msgstr "-" +#| msgid ", " +msgid ", " +msgstr ", " #: useradd.8.xml:357(para) msgid "" @@ -2218,10 +2209,10 @@ msgstr "" #: useradd.8.xml:434(para) msgid "" "Note that useradd will not create a home directory for " -"such an user, regardless of the default setting in /etc/login." -"defs (). You have to specify the " -" options if you want a home directory for a system " -"account to be created." +"such a user, regardless of the default setting in /etc/login.defs (). You have to specify the options if you want a home directory for a system account to be " +"created." msgstr "" #: useradd.8.xml:461(para) @@ -2766,7 +2757,7 @@ msgstr "" #, no-wrap msgid "" "\n" -" 1) the user su is targetting\n" +" 1) the user su is targeting\n" " " msgstr "" @@ -2800,12 +2791,12 @@ msgstr "" #: suauth.5.xml:107(para) msgid "" "from-id is formatted the same as to-id except the extra word " -"GROUP is recognised. ALL EXCEPT GROUPGROUP is recognized. ALL EXCEPT GROUP is perfectly valid too. Following GROUP " "appears one or more group names, delimited by \",\". It is not sufficient to " "have primary group id of the relevant group, an entry in " "/etc/group5 is neccessary." +"manvolnum> is necessary." msgstr "" #: suauth.5.xml:118(para) @@ -2910,9 +2901,8 @@ msgstr "" "citerefentry>." #: su.1.xml:58(contrib) shadow.5.xml:41(contrib) shadow.3.xml:41(contrib) -#: porttime.5.xml:41(contrib) passwd.5.xml:41(contrib) -#: passwd.1.xml:48(contrib) login.1.xml:74(contrib) faillog.8.xml:41(contrib) -#: faillog.5.xml:41(contrib) +#: porttime.5.xml:41(contrib) passwd.5.xml:41(contrib) passwd.1.xml:48(contrib) +#: login.1.xml:74(contrib) faillog.8.xml:41(contrib) faillog.5.xml:41(contrib) msgid "Creation, 1989" msgstr "" @@ -3008,7 +2998,7 @@ msgstr "" #: su.1.xml:158(para) msgid "" "The executed command will have no controlling terminal. This option cannot " -"be used to execute interractive programs which need a controlling TTY." +"be used to execute interactive programs which need a controlling TTY." msgstr "" #: su.1.xml:168(term) @@ -3612,7 +3602,7 @@ msgstr "" #: shadow.5.xml:117(para) gshadow.5.xml:107(para) msgid "" -"A password field which starts with a exclamation mark means that the " +"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." msgstr "" @@ -3630,7 +3620,7 @@ msgstr "" #: shadow.5.xml:134(para) msgid "" "The value 0 has a special meaning, which is that the user should change her " -"pasword the next time she will log in the system." +"password the next time she will log in the system." msgstr "" #: shadow.5.xml:139(para) @@ -3732,7 +3722,7 @@ msgstr "" #: shadow.5.xml:229(para) msgid "" "Note that an account expiration differs from a password expiration. In case " -"of an acount expiration, the user shall not be allowed to login. In case of " +"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." msgstr "" @@ -4026,18 +4016,15 @@ msgstr "" msgid "pwconv" msgstr "pwconv" -#: pwconv.8.xml:71(refname) pwconv.8.xml:85(command) -#: login.defs.5.xml:438(term) +#: pwconv.8.xml:71(refname) pwconv.8.xml:85(command) login.defs.5.xml:438(term) msgid "pwunconv" msgstr "pwunconv" -#: pwconv.8.xml:72(refname) pwconv.8.xml:91(command) -#: login.defs.5.xml:340(term) +#: pwconv.8.xml:72(refname) pwconv.8.xml:91(command) login.defs.5.xml:340(term) msgid "grpconv" msgstr "grpconv" -#: pwconv.8.xml:73(refname) pwconv.8.xml:97(command) -#: login.defs.5.xml:346(term) +#: pwconv.8.xml:73(refname) pwconv.8.xml:97(command) login.defs.5.xml:346(term) msgid "grpunconv" msgstr "grpunconv" @@ -4210,8 +4197,7 @@ msgstr "" #: pwck.8.xml:80(replaceable) passwd.5.xml:57(refentrytitle) #: passwd.5.xml:64(refname) passwd.1.xml:64(refentrytitle) -#: passwd.1.xml:71(refname) passwd.1.xml:77(command) -#: login.defs.5.xml:409(term) +#: passwd.1.xml:71(refname) passwd.1.xml:77(command) login.defs.5.xml:409(term) msgid "passwd" msgstr "passwd" @@ -4361,7 +4347,7 @@ msgstr "" msgid "" "Note that when is enabled, you cannot specify an " "alternative shadow file. In future releases, this " -"paramater could be replaced by an alternate TCB directory." +"parameter could be replaced by an alternate TCB directory." msgstr "" #: pwck.8.xml:312(para) @@ -4755,7 +4741,7 @@ msgstr "" #: passwd.1.xml:166(para) msgid "" -"You can find advices on how to choose a strong password on http://en." +"You can find advice on how to choose a strong password on http://en." "wikipedia.org/wiki/Password_strength" msgstr "" @@ -5067,8 +5053,8 @@ msgstr "PASS_MIN_DAYS (numer)" #: passwd.1.xml:35(para) login.defs.5.xml:35(para) msgid "" "Number of significant characters in the password for crypt(). " -" is 8 by default. Don't change unless your crypt" -"() is better. This is ignored if set to " +" is 8 by default. Don't change unless your " +"crypt() is better. This is ignored if set to " "yes." msgstr "" @@ -5226,7 +5212,7 @@ msgid "HISTORY" msgstr "" #: nologin.8.xml:91(para) -msgid "The nologin command appearred in BSD 4.4." +msgid "The nologin command appeared in BSD 4.4." msgstr "" #: newusers.8.xml:72(refentrytitle) newusers.8.xml:79(refname) @@ -5282,7 +5268,7 @@ msgstr "" #: newusers.8.xml:116(para) msgid "" -"It can be the name of a new user or the name of an existing user (or an user " +"It can be the name of a new user or the name of an existing user (or a user " "created before by newusers). In case of an existing user, " "the user's information will be changed, otherwise a new user will be created." msgstr "" @@ -5310,7 +5296,7 @@ msgstr "" #: newusers.8.xml:144(para) msgid "" -"If the field is empty, an new (unused) UID will be defined automatically by " +"If the field is empty, a new (unused) UID will be defined automatically by " "newusers." msgstr "" @@ -5320,7 +5306,7 @@ msgstr "" #: newusers.8.xml:152(para) msgid "" -"If this field contains the name of an existing user (or the name of an user " +"If this field contains the name of an existing user (or the name of a user " "created before by newusers), the UID of the specified " "user will be used." msgstr "" @@ -6618,7 +6604,7 @@ msgid "D: max data size (KB)" msgstr "" #: limits.5.xml:111(para) -msgid "F: maximum filesize (KB)" +msgid "F: maximum file size (KB)" msgstr "" #: limits.5.xml:112(para) @@ -6692,7 +6678,7 @@ msgstr "" #: limits.5.xml:145(para) msgid "" "Be aware that after username the rest of " -"the line is considered a limit string, thus comments are not allowed. A " +"the line is considered a limit string, thus comments are not allowed. An " "invalid limits string will be rejected (not considered) by the " "login program." msgstr "" @@ -6716,13 +6702,13 @@ msgstr "" #: limits.5.xml:165(para) msgid "" -"If more than one line with limits for an user exist, only the first line for " +"If more than one line with limits for a user exist, only the first line for " "this user will be considered." msgstr "" #: limits.5.xml:170(para) msgid "" -"If no lines are specified for an user, the last @group@group 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." @@ -6810,7 +6796,33 @@ msgstr "" "Wyświetlenie rekordów lastlog starszych niż zadana DNI." -#: lastlog.8.xml:127(term) faillog.8.xml:192(term) +#: lastlog.8.xml:107(term) +#, fuzzy +#| msgid ", " +msgid ", " +msgstr ", " + +#: lastlog.8.xml:111(para) +#, fuzzy +#| msgid ", " +msgid "" +"Clear lastlog record of a user. This option can be used only together with " +" ())." +msgstr ", " + +#: lastlog.8.xml:138(term) +#, fuzzy +#| msgid ", " +msgid ", " +msgstr ", " + +#: lastlog.8.xml:142(para) +msgid "" +"Set lastlog record of a user to the current time. This option can be used " +"only together with ())." +msgstr "" + +#: lastlog.8.xml:149(term) faillog.8.xml:192(term) msgid "" ",  DAYS" @@ -6818,7 +6830,7 @@ msgstr "" ",  DNI" -#: lastlog.8.xml:131(para) +#: lastlog.8.xml:153(para) msgid "" "Print the lastlog records more recent than DAYS." @@ -6826,7 +6838,7 @@ msgstr "" "Wyświetlenie rekordów lastlog nie starszych niż zadana ilość DNI." -#: lastlog.8.xml:138(term) faillog.8.xml:202(term) +#: lastlog.8.xml:160(term) faillog.8.xml:202(term) #, fuzzy #| msgid "" #| ",  KEY-K,  KLUCZ=WARTOŚĆ" -#: lastlog.8.xml:142(para) +#: lastlog.8.xml:164(para) #, fuzzy #| msgid "" #| "Print the lastlog record for user with specified LOGIN." -#: lastlog.8.xml:145(para) faillog.8.xml:211(para) +#: lastlog.8.xml:167(para) faillog.8.xml:211(para) msgid "" "The users can be specified by a login name, a numerical user ID, or a " "RANGE of users. This RANGE), or a min value (UID_MIN-)." msgstr "" -#: lastlog.8.xml:157(para) +#: lastlog.8.xml:179(para) msgid "" "If the user has never logged in the message ** Never logged in** will be displayed instead of the port and time." @@ -6866,18 +6878,18 @@ msgstr "" "logowania wyświetlany jest komunikat **Nigdy nie zalogowany** (użytkownik nigdy się nie logował)." -#: lastlog.8.xml:162(para) +#: lastlog.8.xml:184(para) msgid "" "Only the entries for the current users of the system will be displayed. " "Other entries may exist for users that were deleted previously." msgstr "" -#: lastlog.8.xml:170(title) groups.1.xml:90(title) chsh.1.xml:140(title) +#: lastlog.8.xml:192(title) groups.1.xml:90(title) chsh.1.xml:140(title) #: chage.1.xml:231(title) msgid "NOTE" msgstr "UWAGI" -#: lastlog.8.xml:171(para) +#: lastlog.8.xml:193(para) msgid "" "The lastlog file is a database which contains info on " "the last login of each user. You should not rotate it. It is a sparse file, " @@ -6895,15 +6907,15 @@ msgstr "" "wartościami UID). Mozesz wyświetlić rzeczywisty rozmiar tego pliku używając " "polecenia \"ls -s\"." -#: lastlog.8.xml:185(filename) +#: lastlog.8.xml:207(filename) msgid "/var/log/lastlog" msgstr "/var/log/lastlog" -#: lastlog.8.xml:187(para) +#: lastlog.8.xml:209(para) msgid "Database times of previous user logins." msgstr "Baza danych ostatnich logowań użytkowników." -#: lastlog.8.xml:195(para) +#: lastlog.8.xml:217(para) msgid "" "Large gaps in UID numbers will cause the lastlog program to run longer with " "no output to the screen (i.e. if in lastlog database there is no entries for " @@ -6964,7 +6976,7 @@ msgstr "" #| "modified using the chfn1 utility." msgid "" -"The password is used when an user who is not a member of the group wants to " +"The password is used when a user who is not a member of the group wants to " "gain the permissions of this group (see newgrp1)." msgstr "" @@ -7473,7 +7485,7 @@ msgstr "" "replaceable>" #: groupmems.8.xml:109(para) -msgid "Add an user to the group membership list." +msgid "Add a user to the group membership list." msgstr "" #: groupmems.8.xml:110(para) groupmems.8.xml:126(para) @@ -8461,7 +8473,7 @@ msgstr "" msgid "" "The default encryption algorithm can be defined for the system with the " " or variables " -"of /etc/login.defs, and can be overwitten with the " +"of /etc/login.defs, and can be overwritten with the " ", , or options." msgstr "" @@ -8476,7 +8488,7 @@ msgstr "" msgid "" "Except when PAM is used to encrypt the passwords,chpasswd first updates all the passwords in " -"memory, and then commits all the changes to disk if no errors occured for " +"memory, and then commits all the changes to disk if no errors occurred for " "any user." msgstr "" @@ -8643,7 +8655,7 @@ msgstr "" msgid "" "The default encryption algorithm can be defined for the system with the " " variable of /etc/login.defs, and can be overwiten with the , , options." msgstr "" @@ -9028,6 +9040,11 @@ msgstr "" msgid "translator-credits" msgstr "Tomasz Kłoczko , 2006" +#, fuzzy +#~| msgid "-" +#~ msgid "-M" +#~ msgstr "-" + #~ msgid "" #~ "chfn1, chsh\n" "Language-Team: Russian \n" @@ -55,16 +55,15 @@ msgstr "" #: useradd.8.xml:62(surname) suauth.5.xml:45(surname) su.1.xml:62(surname) #: sg.1.xml:46(surname) shadow.5.xml:45(surname) shadow.3.xml:45(surname) #: pwconv.8.xml:51(surname) pwck.8.xml:51(surname) porttime.5.xml:45(surname) -#: passwd.5.xml:45(surname) passwd.1.xml:52(surname) -#: newusers.8.xml:60(surname) newgrp.1.xml:46(surname) -#: logoutd.8.xml:45(surname) login.defs.5.xml:110(surname) -#: login.access.5.xml:46(surname) login.1.xml:78(surname) -#: limits.5.xml:47(surname) lastlog.8.xml:46(surname) grpck.8.xml:46(surname) -#: groups.1.xml:45(surname) groupmod.8.xml:46(surname) +#: passwd.5.xml:45(surname) passwd.1.xml:52(surname) newusers.8.xml:60(surname) +#: newgrp.1.xml:46(surname) logoutd.8.xml:45(surname) +#: login.defs.5.xml:110(surname) login.access.5.xml:46(surname) +#: login.1.xml:78(surname) limits.5.xml:47(surname) lastlog.8.xml:46(surname) +#: grpck.8.xml:46(surname) groups.1.xml:45(surname) groupmod.8.xml:46(surname) #: groupmems.8.xml:49(surname) groupdel.8.xml:46(surname) #: groupadd.8.xml:48(surname) gpasswd.1.xml:50(surname) -#: faillog.8.xml:45(surname) faillog.5.xml:45(surname) -#: expiry.1.xml:49(surname) chsh.1.xml:48(surname) chpasswd.8.xml:49(surname) +#: faillog.8.xml:45(surname) faillog.5.xml:45(surname) expiry.1.xml:49(surname) +#: chsh.1.xml:48(surname) chpasswd.8.xml:49(surname) #: chgpasswd.8.xml:45(surname) chfn.1.xml:48(surname) chage.1.xml:46(surname) msgid "Kłoczko" msgstr "" @@ -89,17 +88,16 @@ msgstr "" #: useradd.8.xml:64(contrib) suauth.5.xml:47(contrib) su.1.xml:64(contrib) #: sg.1.xml:48(contrib) shadow.5.xml:47(contrib) shadow.3.xml:47(contrib) #: pwconv.8.xml:53(contrib) pwck.8.xml:53(contrib) porttime.5.xml:47(contrib) -#: passwd.5.xml:47(contrib) passwd.1.xml:54(contrib) -#: newusers.8.xml:62(contrib) newgrp.1.xml:48(contrib) -#: logoutd.8.xml:47(contrib) login.defs.5.xml:112(contrib) -#: login.access.5.xml:48(contrib) login.1.xml:80(contrib) -#: limits.5.xml:49(contrib) lastlog.8.xml:48(contrib) grpck.8.xml:48(contrib) -#: groups.1.xml:47(contrib) groupmod.8.xml:48(contrib) +#: passwd.5.xml:47(contrib) passwd.1.xml:54(contrib) newusers.8.xml:62(contrib) +#: newgrp.1.xml:48(contrib) logoutd.8.xml:47(contrib) +#: login.defs.5.xml:112(contrib) login.access.5.xml:48(contrib) +#: login.1.xml:80(contrib) limits.5.xml:49(contrib) lastlog.8.xml:48(contrib) +#: grpck.8.xml:48(contrib) groups.1.xml:47(contrib) groupmod.8.xml:48(contrib) #: groupmems.8.xml:51(contrib) groupdel.8.xml:48(contrib) #: groupadd.8.xml:50(contrib) gpasswd.1.xml:52(contrib) -#: faillog.8.xml:47(contrib) faillog.5.xml:47(contrib) -#: expiry.1.xml:51(contrib) chsh.1.xml:50(contrib) chpasswd.8.xml:51(contrib) -#: chfn.1.xml:50(contrib) chage.1.xml:48(contrib) +#: faillog.8.xml:47(contrib) faillog.5.xml:47(contrib) expiry.1.xml:51(contrib) +#: chsh.1.xml:50(contrib) chpasswd.8.xml:51(contrib) chfn.1.xml:50(contrib) +#: chage.1.xml:48(contrib) msgid "shadow-utils maintainer, 2000 - 2007" msgstr "" @@ -133,14 +131,13 @@ msgstr "" #: newusers.8.xml:66(surname) newgrp.1.xml:52(surname) #: logoutd.8.xml:51(surname) login.defs.5.xml:116(surname) #: login.access.5.xml:52(surname) login.1.xml:84(surname) -#: limits.5.xml:53(surname) lastlog.8.xml:52(surname) -#: gshadow.5.xml:39(surname) grpck.8.xml:52(surname) groups.1.xml:51(surname) -#: groupmod.8.xml:52(surname) groupmems.8.xml:55(surname) -#: groupdel.8.xml:52(surname) groupadd.8.xml:54(surname) -#: gpasswd.1.xml:56(surname) faillog.8.xml:51(surname) -#: faillog.5.xml:51(surname) expiry.1.xml:55(surname) chsh.1.xml:54(surname) -#: chpasswd.8.xml:55(surname) chgpasswd.8.xml:51(surname) -#: chfn.1.xml:54(surname) chage.1.xml:52(surname) +#: limits.5.xml:53(surname) lastlog.8.xml:52(surname) gshadow.5.xml:39(surname) +#: grpck.8.xml:52(surname) groups.1.xml:51(surname) groupmod.8.xml:52(surname) +#: groupmems.8.xml:55(surname) groupdel.8.xml:52(surname) +#: groupadd.8.xml:54(surname) gpasswd.1.xml:56(surname) +#: faillog.8.xml:51(surname) faillog.5.xml:51(surname) expiry.1.xml:55(surname) +#: chsh.1.xml:54(surname) chpasswd.8.xml:55(surname) +#: chgpasswd.8.xml:51(surname) chfn.1.xml:54(surname) chage.1.xml:52(surname) msgid "François" msgstr "" @@ -169,14 +166,13 @@ msgstr "" #: newusers.8.xml:68(contrib) newgrp.1.xml:54(contrib) #: logoutd.8.xml:53(contrib) login.defs.5.xml:118(contrib) #: login.access.5.xml:54(contrib) login.1.xml:86(contrib) -#: limits.5.xml:55(contrib) lastlog.8.xml:54(contrib) -#: gshadow.5.xml:42(contrib) grpck.8.xml:54(contrib) groups.1.xml:53(contrib) -#: groupmod.8.xml:54(contrib) groupmems.8.xml:57(contrib) -#: groupdel.8.xml:54(contrib) groupadd.8.xml:56(contrib) -#: gpasswd.1.xml:58(contrib) faillog.8.xml:53(contrib) -#: faillog.5.xml:53(contrib) expiry.1.xml:57(contrib) chsh.1.xml:56(contrib) -#: chpasswd.8.xml:57(contrib) chgpasswd.8.xml:53(contrib) -#: chfn.1.xml:56(contrib) chage.1.xml:54(contrib) +#: limits.5.xml:55(contrib) lastlog.8.xml:54(contrib) gshadow.5.xml:42(contrib) +#: grpck.8.xml:54(contrib) groups.1.xml:53(contrib) groupmod.8.xml:54(contrib) +#: groupmems.8.xml:57(contrib) groupdel.8.xml:54(contrib) +#: groupadd.8.xml:56(contrib) gpasswd.1.xml:58(contrib) +#: faillog.8.xml:53(contrib) faillog.5.xml:53(contrib) expiry.1.xml:57(contrib) +#: chsh.1.xml:56(contrib) chpasswd.8.xml:57(contrib) +#: chgpasswd.8.xml:53(contrib) chfn.1.xml:56(contrib) chage.1.xml:54(contrib) msgid "shadow-utils maintainer, 2007 - now" msgstr "" @@ -256,14 +252,13 @@ msgstr "" #: useradd.8.xml:88(replaceable) useradd.8.xml:100(replaceable) #: su.1.xml:88(replaceable) pwconv.8.xml:81(replaceable) #: pwconv.8.xml:87(replaceable) pwconv.8.xml:93(replaceable) -#: pwconv.8.xml:99(replaceable) pwck.8.xml:77(arg) -#: passwd.1.xml:79(replaceable) newusers.8.xml:87(replaceable) -#: lastlog.8.xml:73(replaceable) grpck.8.xml:72(arg) -#: groupmod.8.xml:73(replaceable) groupdel.8.xml:73(replaceable) -#: groupadd.8.xml:75(replaceable) faillog.8.xml:72(replaceable) -#: chsh.1.xml:75(replaceable) chpasswd.8.xml:76(replaceable) -#: chgpasswd.8.xml:72(replaceable) chfn.1.xml:75(replaceable) -#: chage.1.xml:72(replaceable) +#: pwconv.8.xml:99(replaceable) pwck.8.xml:77(arg) passwd.1.xml:79(replaceable) +#: newusers.8.xml:87(replaceable) lastlog.8.xml:73(replaceable) +#: grpck.8.xml:72(arg) groupmod.8.xml:73(replaceable) +#: groupdel.8.xml:73(replaceable) groupadd.8.xml:75(replaceable) +#: faillog.8.xml:72(replaceable) chsh.1.xml:75(replaceable) +#: chpasswd.8.xml:76(replaceable) chgpasswd.8.xml:72(replaceable) +#: chfn.1.xml:75(replaceable) chage.1.xml:72(replaceable) msgid "options" msgstr "параметры" @@ -314,11 +309,10 @@ msgstr "" #: useradd.8.xml:124(title) su.1.xml:145(title) pwconv.8.xml:187(title) #: pwck.8.xml:176(title) passwd.1.xml:174(title) newusers.8.xml:265(title) #: login.1.xml:210(title) lastlog.8.xml:91(title) grpck.8.xml:147(title) -#: groupmod.8.xml:89(title) groupmems.8.xml:100(title) -#: groupdel.8.xml:88(title) groupadd.8.xml:93(title) gpasswd.1.xml:134(title) -#: faillog.8.xml:89(title) expiry.1.xml:91(title) chsh.1.xml:95(title) -#: chpasswd.8.xml:130(title) chgpasswd.8.xml:105(title) chfn.1.xml:111(title) -#: chage.1.xml:91(title) +#: groupmod.8.xml:89(title) groupmems.8.xml:100(title) groupdel.8.xml:88(title) +#: groupadd.8.xml:93(title) gpasswd.1.xml:134(title) faillog.8.xml:89(title) +#: expiry.1.xml:91(title) chsh.1.xml:95(title) chpasswd.8.xml:130(title) +#: chgpasswd.8.xml:105(title) chfn.1.xml:111(title) chage.1.xml:91(title) msgid "OPTIONS" msgstr "ПАРАМЕТРЫ" @@ -339,7 +333,7 @@ msgstr "Редактировать базу данных групп." #: vipw.8.xml:120(term) userdel.8.xml:123(term) useradd.8.xml:266(term) #: pwconv.8.xml:195(term) pwck.8.xml:186(term) passwd.1.xml:214(term) -#: newusers.8.xml:283(term) lastlog.8.xml:107(term) grpck.8.xml:157(term) +#: newusers.8.xml:283(term) lastlog.8.xml:118(term) grpck.8.xml:157(term) #: groupmod.8.xml:129(term) groupmems.8.xml:142(term) groupdel.8.xml:95(term) #: groupadd.8.xml:131(term) gpasswd.1.xml:173(term) faillog.8.xml:122(term) #: expiry.1.xml:112(term) chsh.1.xml:101(term) chpasswd.8.xml:171(term) @@ -350,7 +344,7 @@ msgstr ", " # type: Content of: #: vipw.8.xml:122(para) userdel.8.xml:125(para) useradd.8.xml:268(para) #: pwconv.8.xml:197(para) pwck.8.xml:188(para) passwd.1.xml:216(para) -#: newusers.8.xml:285(para) lastlog.8.xml:111(para) grpck.8.xml:159(para) +#: newusers.8.xml:285(para) lastlog.8.xml:122(para) grpck.8.xml:159(para) #: groupmod.8.xml:131(para) groupmems.8.xml:144(para) groupdel.8.xml:97(para) #: groupadd.8.xml:133(para) gpasswd.1.xml:175(para) faillog.8.xml:124(para) #: expiry.1.xml:114(para) chsh.1.xml:103(para) chpasswd.8.xml:173(para) @@ -378,7 +372,7 @@ msgstr "Не выводить сообщений при работе." #: vipw.8.xml:138(term) usermod.8.xml:311(term) userdel.8.xml:146(term) #: useradd.8.xml:445(term) pwconv.8.xml:201(term) pwck.8.xml:209(term) -#: passwd.1.xml:301(term) newusers.8.xml:308(term) lastlog.8.xml:115(term) +#: passwd.1.xml:301(term) newusers.8.xml:308(term) lastlog.8.xml:126(term) #: grpck.8.xml:173(term) groupmod.8.xml:178(term) groupmems.8.xml:165(term) #: groupdel.8.xml:101(term) groupadd.8.xml:204(term) faillog.8.xml:180(term) #: chsh.1.xml:107(term) chpasswd.8.xml:188(term) chgpasswd.8.xml:146(term) @@ -392,7 +386,7 @@ msgstr "" #: vipw.8.xml:142(para) usermod.8.xml:315(para) userdel.8.xml:150(para) #: useradd.8.xml:449(para) pwconv.8.xml:205(para) pwck.8.xml:213(para) -#: passwd.1.xml:305(para) newusers.8.xml:312(para) lastlog.8.xml:119(para) +#: passwd.1.xml:305(para) newusers.8.xml:312(para) lastlog.8.xml:130(para) #: grpck.8.xml:177(para) groupmod.8.xml:182(para) groupmems.8.xml:169(para) #: groupdel.8.xml:105(para) groupadd.8.xml:208(para) gpasswd.1.xml:185(para) #: faillog.8.xml:184(para) chsh.1.xml:111(para) chpasswd.8.xml:192(para) @@ -423,18 +417,18 @@ msgstr ", " msgid "Indicates which user's tcb shadow file to edit." msgstr "Указать какой пользовательский теневой файл tcb редактировать." -#: vipw.8.xml:165(title) usermod.8.xml:497(title) userdel.8.xml:171(title) +#: vipw.8.xml:165(title) usermod.8.xml:496(title) userdel.8.xml:171(title) #: useradd.8.xml:647(title) su.1.xml:339(title) sg.1.xml:98(title) #: pwconv.8.xml:227(title) pwck.8.xml:252(title) passwd.1.xml:390(title) #: newusers.8.xml:362(title) newgrp.1.xml:109(title) login.1.xml:294(title) #: grpck.8.xml:209(title) groupmod.8.xml:193(title) groupmems.8.xml:199(title) -#: groupdel.8.xml:128(title) groupadd.8.xml:219(title) -#: gpasswd.1.xml:264(title) chsh.1.xml:154(title) chpasswd.8.xml:239(title) -#: chgpasswd.8.xml:198(title) chfn.1.xml:193(title) chage.1.xml:244(title) +#: groupdel.8.xml:128(title) groupadd.8.xml:219(title) gpasswd.1.xml:264(title) +#: chsh.1.xml:154(title) chpasswd.8.xml:239(title) chgpasswd.8.xml:198(title) +#: chfn.1.xml:193(title) chage.1.xml:244(title) msgid "CONFIGURATION" msgstr "НАСТРОЙКА" -#: vipw.8.xml:166(para) usermod.8.xml:498(para) userdel.8.xml:172(para) +#: vipw.8.xml:166(para) usermod.8.xml:497(para) userdel.8.xml:172(para) #: useradd.8.xml:648(para) su.1.xml:340(para) sg.1.xml:99(para) #: pwck.8.xml:253(para) passwd.1.xml:391(para) newusers.8.xml:363(para) #: newgrp.1.xml:110(para) login.1.xml:295(para) grpck.8.xml:210(para) @@ -492,39 +486,37 @@ msgstr "" "option>." # type: Content of: -#: vipw.8.xml:195(title) usermod.8.xml:514(title) userdel.8.xml:188(title) +#: vipw.8.xml:195(title) usermod.8.xml:513(title) userdel.8.xml:188(title) #: useradd.8.xml:675(title) suauth.5.xml:193(title) su.1.xml:367(title) #: sg.1.xml:110(title) shadow.5.xml:255(title) shadow.3.xml:226(title) #: pwconv.8.xml:250(title) pwck.8.xml:269(title) porttime.5.xml:130(title) #: passwd.5.xml:141(title) passwd.1.xml:408(title) newusers.8.xml:397(title) #: newgrp.1.xml:121(title) logoutd.8.xml:89(title) -#: login.access.5.xml:121(title) login.1.xml:338(title) -#: limits.5.xml:196(title) lastlog.8.xml:182(title) gshadow.5.xml:156(title) -#: grpck.8.xml:221(title) groups.1.xml:100(title) groupmod.8.xml:205(title) -#: groupmems.8.xml:211(title) groupdel.8.xml:140(title) -#: groupadd.8.xml:233(title) gpasswd.1.xml:279(title) faillog.8.xml:243(title) -#: faillog.5.xml:96(title) expiry.1.xml:121(title) chsh.1.xml:167(title) -#: chpasswd.8.xml:255(title) chgpasswd.8.xml:213(title) chfn.1.xml:207(title) -#: chage.1.xml:256(title) +#: login.access.5.xml:121(title) login.1.xml:338(title) limits.5.xml:196(title) +#: lastlog.8.xml:204(title) gshadow.5.xml:156(title) grpck.8.xml:221(title) +#: groups.1.xml:100(title) groupmod.8.xml:205(title) groupmems.8.xml:211(title) +#: groupdel.8.xml:140(title) groupadd.8.xml:233(title) gpasswd.1.xml:279(title) +#: faillog.8.xml:243(title) faillog.5.xml:96(title) expiry.1.xml:121(title) +#: chsh.1.xml:167(title) chpasswd.8.xml:255(title) chgpasswd.8.xml:213(title) +#: chfn.1.xml:207(title) chage.1.xml:256(title) msgid "FILES" msgstr "ФАЙЛЫ" # type: Content of: <refentry><refsect1><para><filename> -#: vipw.8.xml:198(filename) usermod.8.xml:517(filename) +#: vipw.8.xml:198(filename) usermod.8.xml:516(filename) #: userdel.8.xml:191(filename) useradd.8.xml:690(filename) -#: sg.1.xml:125(filename) pwck.8.xml:272(filename) -#: newusers.8.xml:412(filename) newgrp.1.xml:136(filename) -#: gshadow.5.xml:159(filename) grpck.8.xml:224(filename) -#: groups.1.xml:103(filename) groupmod.8.xml:208(filename) -#: groupmems.8.xml:214(filename) groupdel.8.xml:143(filename) -#: groupadd.8.xml:236(filename) gpasswd.1.xml:72(filename) -#: gpasswd.1.xml:75(filename) gpasswd.1.xml:282(filename) -#: chgpasswd.8.xml:216(filename) +#: sg.1.xml:125(filename) pwck.8.xml:272(filename) newusers.8.xml:412(filename) +#: newgrp.1.xml:136(filename) gshadow.5.xml:159(filename) +#: grpck.8.xml:224(filename) groups.1.xml:103(filename) +#: groupmod.8.xml:208(filename) groupmems.8.xml:214(filename) +#: groupdel.8.xml:143(filename) groupadd.8.xml:236(filename) +#: gpasswd.1.xml:72(filename) gpasswd.1.xml:75(filename) +#: gpasswd.1.xml:282(filename) chgpasswd.8.xml:216(filename) msgid "/etc/group" msgstr "/etc/group" # type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: vipw.8.xml:200(para) usermod.8.xml:519(para) userdel.8.xml:193(para) +#: vipw.8.xml:200(para) usermod.8.xml:518(para) userdel.8.xml:193(para) #: useradd.8.xml:692(para) sg.1.xml:127(para) pwck.8.xml:274(para) #: newusers.8.xml:414(para) newgrp.1.xml:138(para) gshadow.5.xml:161(para) #: grpck.8.xml:226(para) groups.1.xml:105(para) groupmod.8.xml:210(para) @@ -534,7 +526,7 @@ msgid "Group account information." msgstr "содержит информацию о группах" # type: Content of: <refentry><refsect1><para><filename> -#: vipw.8.xml:204(filename) usermod.8.xml:523(filename) +#: vipw.8.xml:204(filename) usermod.8.xml:522(filename) #: useradd.8.xml:696(filename) sg.1.xml:131(filename) #: newusers.8.xml:418(filename) newgrp.1.xml:142(filename) #: gshadow.5.xml:165(filename) grpck.8.xml:230(filename) @@ -546,7 +538,7 @@ msgid "/etc/gshadow" msgstr "/etc/gshadow" # type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: vipw.8.xml:206(para) usermod.8.xml:525(para) useradd.8.xml:698(para) +#: vipw.8.xml:206(para) usermod.8.xml:524(para) useradd.8.xml:698(para) #: sg.1.xml:133(para) newusers.8.xml:420(para) newgrp.1.xml:144(para) #: gshadow.5.xml:167(para) grpck.8.xml:232(para) groupmod.8.xml:216(para) #: groupdel.8.xml:151(para) groupadd.8.xml:244(para) gpasswd.1.xml:290(para) @@ -555,7 +547,7 @@ msgid "Secure group account information." msgstr "содержит защищаемую информацию о группах" # type: Content of: <refentry><refsect1><para><filename> -#: vipw.8.xml:210(filename) usermod.8.xml:535(filename) +#: vipw.8.xml:210(filename) usermod.8.xml:534(filename) #: userdel.8.xml:203(filename) useradd.8.xml:678(filename) #: su.1.xml:370(filename) sg.1.xml:113(filename) shadow.5.xml:258(filename) #: pwck.8.xml:278(filename) passwd.5.xml:144(filename) @@ -569,7 +561,7 @@ msgid "/etc/passwd" msgstr "/etc/passwd" # type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: vipw.8.xml:212(para) usermod.8.xml:537(para) userdel.8.xml:205(para) +#: vipw.8.xml:212(para) usermod.8.xml:536(para) userdel.8.xml:205(para) #: useradd.8.xml:680(para) su.1.xml:372(para) sg.1.xml:115(para) #: shadow.5.xml:260(para) pwck.8.xml:280(para) passwd.5.xml:146(para) #: passwd.1.xml:413(para) newusers.8.xml:402(para) newgrp.1.xml:126(para) @@ -580,7 +572,7 @@ msgid "User account information." msgstr "содержит информацию о пользователях" # type: Content of: <refentry><refsect1><para><filename> -#: vipw.8.xml:216(filename) usermod.8.xml:541(filename) +#: vipw.8.xml:216(filename) usermod.8.xml:540(filename) #: userdel.8.xml:209(filename) useradd.8.xml:684(filename) #: su.1.xml:376(filename) sg.1.xml:119(filename) shadow.5.xml:264(filename) #: shadow.3.xml:229(filename) pwck.8.xml:284(filename) @@ -592,7 +584,7 @@ msgid "/etc/shadow" msgstr "/etc/shadow" # type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: vipw.8.xml:218(para) usermod.8.xml:543(para) userdel.8.xml:211(para) +#: vipw.8.xml:218(para) usermod.8.xml:542(para) userdel.8.xml:211(para) #: useradd.8.xml:686(para) su.1.xml:378(para) sg.1.xml:121(para) #: shadow.5.xml:266(para) shadow.3.xml:231(para) pwck.8.xml:286(para) #: passwd.1.xml:419(para) newusers.8.xml:408(para) newgrp.1.xml:132(para) @@ -602,7 +594,7 @@ msgid "Secure user account information." msgstr "содержит защищаемую информацию о пользователях" # type: Content of: <refentry><refsect1><title> -#: vipw.8.xml:225(title) usermod.8.xml:562(title) userdel.8.xml:308(title) +#: vipw.8.xml:225(title) usermod.8.xml:561(title) userdel.8.xml:308(title) #: useradd.8.xml:804(title) suauth.5.xml:222(title) su.1.xml:438(title) #: sg.1.xml:140(title) shadow.5.xml:283(title) shadow.3.xml:238(title) #: pwconv.8.xml:262(title) pwck.8.xml:344(title) porttime.5.xml:142(title) @@ -665,15 +657,15 @@ msgstr "" #: usermod.8.xml:46(surname) userdel.8.xml:46(surname) #: useradd.8.xml:57(surname) su.1.xml:57(surname) sg.1.xml:41(surname) #: shadow.5.xml:40(surname) shadow.3.xml:40(surname) pwck.8.xml:46(surname) -#: porttime.5.xml:40(surname) passwd.5.xml:40(surname) -#: passwd.1.xml:47(surname) newusers.8.xml:55(surname) -#: newgrp.1.xml:41(surname) logoutd.8.xml:40(surname) -#: login.defs.5.xml:105(surname) login.1.xml:73(surname) -#: lastlog.8.xml:41(surname) grpck.8.xml:41(surname) groups.1.xml:40(surname) -#: groupmod.8.xml:41(surname) groupdel.8.xml:41(surname) -#: groupadd.8.xml:43(surname) faillog.8.xml:40(surname) -#: faillog.5.xml:40(surname) expiry.1.xml:44(surname) chsh.1.xml:43(surname) -#: chpasswd.8.xml:44(surname) chfn.1.xml:43(surname) chage.1.xml:41(surname) +#: porttime.5.xml:40(surname) passwd.5.xml:40(surname) passwd.1.xml:47(surname) +#: newusers.8.xml:55(surname) newgrp.1.xml:41(surname) +#: logoutd.8.xml:40(surname) login.defs.5.xml:105(surname) +#: login.1.xml:73(surname) lastlog.8.xml:41(surname) grpck.8.xml:41(surname) +#: groups.1.xml:40(surname) groupmod.8.xml:41(surname) +#: groupdel.8.xml:41(surname) groupadd.8.xml:43(surname) +#: faillog.8.xml:40(surname) faillog.5.xml:40(surname) expiry.1.xml:44(surname) +#: chsh.1.xml:43(surname) chpasswd.8.xml:44(surname) chfn.1.xml:43(surname) +#: chage.1.xml:41(surname) msgid "Haugh" msgstr "" @@ -1279,20 +1271,27 @@ msgstr "" # type: Content of: <refentry><refsect1><title> #: usermod.8.xml:478(title) userdel.8.xml:281(title) useradd.8.xml:623(title) #: su.1.xml:331(title) shadow.3.xml:218(title) passwd.1.xml:372(title) -#: newusers.8.xml:350(title) login.1.xml:260(title) lastlog.8.xml:194(title) -#: groupdel.8.xml:116(title) groupadd.8.xml:257(title) -#: gpasswd.1.xml:252(title) faillog.8.xml:232(title) chpasswd.8.xml:231(title) +#: newusers.8.xml:350(title) login.1.xml:260(title) lastlog.8.xml:216(title) +#: groupdel.8.xml:116(title) groupadd.8.xml:257(title) gpasswd.1.xml:252(title) +#: faillog.8.xml:232(title) chpasswd.8.xml:231(title) #: chgpasswd.8.xml:186(title) msgid "CAVEATS" msgstr "ПРЕДОСТЕРЕЖЕНИЯ" #: usermod.8.xml:479(para) +#, fuzzy +#| msgid "" +#| "You must make certain that the named user is not executing any processes " +#| "when this command is being executed if the user's numerical user ID, the " +#| "user's name, or the user's home directory is being changed. " +#| "<command>usermod</command> checks this on Linux, but only check if the " +#| "user is logged in according to utmp on other architectures." msgid "" "You must make certain that the named user is not executing any processes " "when this command is being executed if the user's numerical user ID, the " "user's name, or the user's home directory is being changed. " -"<command>usermod</command> checks this on Linux, but only check if the user " -"is logged in according to utmp on other architectures." +"<command>usermod</command> checks this on Linux. On other platforms it only " +"uses utmp to check if the user is logged in." msgstr "" "Вы должны убедиться, что от указанного пользователя не запущено никаких " "процессов, если при выполнении этой команды изменяется числовой " @@ -1301,7 +1300,7 @@ msgstr "" "других архитектурах проверяется только присутствие пользователя в системе " "согласно данным utmp." -#: usermod.8.xml:487(para) +#: usermod.8.xml:486(para) msgid "" "You must change the owner of any <command>crontab</command> files or " "<command>at</command> jobs manually." @@ -1309,7 +1308,7 @@ msgstr "" "Вы должны вручную изменить владельца всех файлов <command>crontab</command> " "или заданий <command>at</command>." -#: usermod.8.xml:491(para) +#: usermod.8.xml:490(para) msgid "You must make any changes involving NIS on the NIS server." msgstr "Вы должны сделать все изменения NIS на сервере NIS самостоятельно." @@ -1592,7 +1591,7 @@ msgstr "" "пользователя, согласно следующему алгоритму: <placeholder-1/>" # type: Content of: <refentry><refsect1><variablelist><varlistentry><term><filename> -#: usermod.8.xml:529(filename) userdel.8.xml:197(filename) +#: usermod.8.xml:528(filename) userdel.8.xml:197(filename) #: useradd.8.xml:726(filename) su.1.xml:382(filename) #: pwconv.8.xml:253(filename) passwd.1.xml:423(filename) #: newusers.8.xml:424(filename) login.access.5.xml:124(filename) @@ -1604,7 +1603,7 @@ msgid "/etc/login.defs" msgstr "/etc/login.defs" # type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: usermod.8.xml:531(para) userdel.8.xml:199(para) useradd.8.xml:728(para) +#: usermod.8.xml:530(para) userdel.8.xml:199(para) useradd.8.xml:728(para) #: su.1.xml:384(para) pwconv.8.xml:255(para) passwd.1.xml:425(para) #: newusers.8.xml:426(para) login.access.5.xml:126(para) login.1.xml:391(para) #: groupmod.8.xml:222(para) groupadd.8.xml:250(para) chsh.1.xml:184(para) @@ -1613,32 +1612,32 @@ msgid "Shadow password suite configuration." msgstr "содержит конфигурацию подсистемы теневых паролей" # type: Content of: <refentry><refsect1><variablelist><varlistentry><term><filename> -#: usermod.8.xml:547(filename) userdel.8.xml:215(filename) +#: usermod.8.xml:546(filename) userdel.8.xml:215(filename) #: useradd.8.xml:714(filename) newusers.8.xml:436(filename) #, fuzzy #| msgid "/etc/suauth" msgid "/etc/subgid" msgstr "/etc/suauth" -#: usermod.8.xml:549(para) userdel.8.xml:217(para) useradd.8.xml:716(para) +#: usermod.8.xml:548(para) userdel.8.xml:217(para) useradd.8.xml:716(para) #: newusers.8.xml:438(para) msgid "Per user subordinate group IDs." msgstr "" # type: Content of: <refentry><refsect1><variablelist><varlistentry><term><filename> -#: usermod.8.xml:553(filename) userdel.8.xml:221(filename) +#: usermod.8.xml:552(filename) userdel.8.xml:221(filename) #: useradd.8.xml:720(filename) newusers.8.xml:442(filename) #, fuzzy #| msgid "/etc/suauth" msgid "/etc/subuid" msgstr "/etc/suauth" -#: usermod.8.xml:555(para) userdel.8.xml:223(para) useradd.8.xml:722(para) +#: usermod.8.xml:554(para) userdel.8.xml:223(para) useradd.8.xml:722(para) #: newusers.8.xml:444(para) msgid "Per user subordinate user IDs." msgstr "" -#: usermod.8.xml:563(para) +#: usermod.8.xml:562(para) #, fuzzy #| msgid "" #| "<citerefentry><refentrytitle>chfn</refentrytitle><manvolnum>1</" @@ -1933,9 +1932,8 @@ msgstr "успешное выполнение" #: passwd.1.xml:449(replaceable) newgrp.1.xml:59(manvolnum) #: login.1.xml:91(manvolnum) grpck.8.xml:256(replaceable) #: groups.1.xml:58(manvolnum) gpasswd.1.xml:63(manvolnum) -#: expiry.1.xml:62(manvolnum) chsh.1.xml:61(manvolnum) -#: chfn.1.xml:61(manvolnum) chage.1.xml:59(manvolnum) -#: chage.1.xml:289(replaceable) +#: expiry.1.xml:62(manvolnum) chsh.1.xml:61(manvolnum) chfn.1.xml:61(manvolnum) +#: chage.1.xml:59(manvolnum) chage.1.xml:289(replaceable) msgid "1" msgstr "1" @@ -2377,13 +2375,25 @@ msgstr "" "replaceable>=<replaceable>ЗНАЧЕНИЕ</replaceable>" #: useradd.8.xml:301(para) +#, fuzzy +#| msgid "" +#| "Overrides <filename>/etc/login.defs</filename> defaults (<option>UID_MIN</" +#| "option>, <option>UID_MAX</option>, <option>UMASK</option>, " +#| "<option>PASS_MAX_DAYS</option> and others). <placeholder-1/> Example: " +#| "<option>-K</option> <replaceable>PASS_MAX_DAYS</" +#| "replaceable>=<replaceable>-1</replaceable> can be used when creating " +#| "system account to turn off password ageing, even though system account " +#| "has no password at all. Multiple <option>-K</option> options can be " +#| "specified, e.g.: <option>-K</option> <replaceable>UID_MIN</" +#| "replaceable>=<replaceable>100</replaceable> <option>-K</option> " +#| "<replaceable>UID_MAX</replaceable>=<replaceable>499</replaceable>" msgid "" "Overrides <filename>/etc/login.defs</filename> defaults (<option>UID_MIN</" "option>, <option>UID_MAX</option>, <option>UMASK</option>, " "<option>PASS_MAX_DAYS</option> and others). <placeholder-1/> Example: " "<option>-K</option> <replaceable>PASS_MAX_DAYS</" "replaceable>=<replaceable>-1</replaceable> can be used when creating system " -"account to turn off password ageing, even though system account has no " +"account to turn off password aging, even though system account has no " "password at all. Multiple <option>-K</option> options can be specified, e." "g.: <option>-K</option> <replaceable>UID_MIN</" "replaceable>=<replaceable>100</replaceable> <option>-K</option> " @@ -2409,9 +2419,13 @@ msgid "Do not add the user to the lastlog and faillog databases." msgstr "Не добавлять пользователя в базы данных lastlog и faillog." #: useradd.8.xml:327(para) +#, fuzzy +#| msgid "" +#| "By default, the user's entries in the lastlog and faillog databases are " +#| "resetted to avoid reusing the entry from a previously deleted user." msgid "" "By default, the user's entries in the lastlog and faillog databases are " -"resetted to avoid reusing the entry from a previously deleted user." +"reset to avoid reusing the entry from a previously deleted user." msgstr "" "По умолчанию, записи пользователя в базах данных lastlog и faillog " "сбрасываются во избежание повторного использования записи, оставшейся от " @@ -2440,10 +2454,11 @@ msgstr "" "По умолчанию, если этот параметр не указан и не задана переменная " "<option>CREATE_HOME</option>, домашний каталог не создаётся." -# type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para><option> -#: useradd.8.xml:354(option) -msgid "-M" -msgstr "-M" +#: useradd.8.xml:353(term) +#, fuzzy +#| msgid "<option>-m</option>, <option>--create-home</option>" +msgid "<option>-M</option>, <option>--no-create-home</option>" +msgstr "<option>-m</option>, <option>--create-home</option>" #: useradd.8.xml:357(para) msgid "" @@ -2528,12 +2543,19 @@ msgstr "" "создании групп)." #: useradd.8.xml:434(para) +#, fuzzy +#| msgid "" +#| "Note that <command>useradd</command> will not create a home directory for " +#| "such an user, regardless of the default setting in <filename>/etc/login." +#| "defs</filename> (<option>CREATE_HOME</option>). You have to specify the " +#| "<option>-m</option> options if you want a home directory for a system " +#| "account to be created." msgid "" "Note that <command>useradd</command> will not create a home directory for " -"such an user, regardless of the default setting in <filename>/etc/login." -"defs</filename> (<option>CREATE_HOME</option>). You have to specify the " -"<option>-m</option> options if you want a home directory for a system " -"account to be created." +"such a user, regardless of the default setting in <filename>/etc/login.defs</" +"filename> (<option>CREATE_HOME</option>). You have to specify the <option>-" +"m</option> options if you want a home directory for a system account to be " +"created." msgstr "" "Заметим, что <command>useradd</command> не создаёт домашний каталог для " "данного пользователя независимо от значения по умолчанию в <filename>/etc/" @@ -3212,10 +3234,14 @@ msgstr "" # type: Content of: <refentry><refsect1><literallayout> #. .RS #: suauth.5.xml:83(literallayout) -#, no-wrap +#, fuzzy, no-wrap +#| msgid "" +#| "\n" +#| " 1) the user su is targetting\n" +#| " " msgid "" "\n" -" 1) the user su is targetting\n" +" 1) the user su is targeting\n" " " msgstr "" "\n" @@ -3264,14 +3290,23 @@ msgstr "" "перечисленных через «,»." #: suauth.5.xml:107(para) +#, fuzzy +#| msgid "" +#| "from-id is formatted the same as to-id except the extra word " +#| "<emphasis>GROUP</emphasis> is recognised. <emphasis>ALL EXCEPT GROUP</" +#| "emphasis> is perfectly valid too. Following <emphasis>GROUP</emphasis> " +#| "appears one or more group names, delimited by \",\". It is not sufficient " +#| "to have primary group id of the relevant group, an entry in " +#| "<citerefentry><refentrytitle>/etc/group</refentrytitle><manvolnum>5</" +#| "manvolnum></citerefentry> is neccessary." msgid "" "from-id is formatted the same as to-id except the extra word " -"<emphasis>GROUP</emphasis> is recognised. <emphasis>ALL EXCEPT GROUP</" +"<emphasis>GROUP</emphasis> is recognized. <emphasis>ALL EXCEPT GROUP</" "emphasis> is perfectly valid too. Following <emphasis>GROUP</emphasis> " "appears one or more group names, delimited by \",\". It is not sufficient to " "have primary group id of the relevant group, an entry in " "<citerefentry><refentrytitle>/etc/group</refentrytitle><manvolnum>5</" -"manvolnum></citerefentry> is neccessary." +"manvolnum></citerefentry> is necessary." msgstr "" "желающий-id может содержать то же, что и желательный-id, плюс новое " "слово<emphasis>GROUP</emphasis>. <emphasis>ALL EXCEPT GROUP</emphasis> тоже " @@ -3431,9 +3466,8 @@ msgstr "" "citerefentry>." #: su.1.xml:58(contrib) shadow.5.xml:41(contrib) shadow.3.xml:41(contrib) -#: porttime.5.xml:41(contrib) passwd.5.xml:41(contrib) -#: passwd.1.xml:48(contrib) login.1.xml:74(contrib) faillog.8.xml:41(contrib) -#: faillog.5.xml:41(contrib) +#: porttime.5.xml:41(contrib) passwd.5.xml:41(contrib) passwd.1.xml:48(contrib) +#: login.1.xml:74(contrib) faillog.8.xml:41(contrib) faillog.5.xml:41(contrib) msgid "Creation, 1989" msgstr "" @@ -3563,9 +3597,14 @@ msgstr "" "<option>-c</option>." #: su.1.xml:158(para) +#, fuzzy +#| msgid "" +#| "The executed command will have no controlling terminal. This option " +#| "cannot be used to execute interractive programs which need a controlling " +#| "TTY." msgid "" "The executed command will have no controlling terminal. This option cannot " -"be used to execute interractive programs which need a controlling TTY." +"be used to execute interactive programs which need a controlling TTY." msgstr "" "Запускаемая программа не будет иметь управляющего терминала. Этот параметр " "не может быть использован для запуска интерактивных программ, которым " @@ -4327,8 +4366,13 @@ msgstr "" "поле пароля пусто." #: shadow.5.xml:117(para) gshadow.5.xml:107(para) +#, fuzzy +#| msgid "" +#| "A password field which starts with a exclamation mark means that the " +#| "password is locked. The remaining characters on the line represent the " +#| "password field before the password was locked." msgid "" -"A password field which starts with a exclamation mark means that the " +"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." msgstr "" @@ -4348,9 +4392,13 @@ msgid "" msgstr "Дата последней смены пароля в днях начиная с 1 января 1970 года." #: shadow.5.xml:134(para) +#, fuzzy +#| msgid "" +#| "The value 0 has a special meaning, which is that the user should change " +#| "her pasword the next time she will log in the system." msgid "" "The value 0 has a special meaning, which is that the user should change her " -"pasword the next time she will log in the system." +"password the next time she will log in the system." msgstr "" "Значение 0 имеет специальное предназначение: оно указывает, что пользователь " "должен сменить пароль в следующий раз при входе в систему." @@ -4476,9 +4524,15 @@ msgstr "" "января 1970 года." #: shadow.5.xml:229(para) +#, fuzzy +#| msgid "" +#| "Note that an account expiration differs from a password expiration. In " +#| "case of an acount 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." msgid "" "Note that an account expiration differs from a password expiration. In case " -"of an acount expiration, the user shall not be allowed to login. In case of " +"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." msgstr "" "Заметим, что устаревание учётной записи отличается от устаревания пароля. " @@ -4853,20 +4907,17 @@ msgid "pwconv" msgstr "pwconv" # type: Content of: <refentry><refsect1><para><command> -#: pwconv.8.xml:71(refname) pwconv.8.xml:85(command) -#: login.defs.5.xml:438(term) +#: pwconv.8.xml:71(refname) pwconv.8.xml:85(command) login.defs.5.xml:438(term) msgid "pwunconv" msgstr "pwunconv" # type: Content of: <refentry><refsect1><para><command> -#: pwconv.8.xml:72(refname) pwconv.8.xml:91(command) -#: login.defs.5.xml:340(term) +#: pwconv.8.xml:72(refname) pwconv.8.xml:91(command) login.defs.5.xml:340(term) msgid "grpconv" msgstr "grpconv" # type: Content of: <refentry><refsect1><para><command> -#: pwconv.8.xml:73(refname) pwconv.8.xml:97(command) -#: login.defs.5.xml:346(term) +#: pwconv.8.xml:73(refname) pwconv.8.xml:97(command) login.defs.5.xml:346(term) msgid "grpunconv" msgstr "grpunconv" @@ -5089,8 +5140,7 @@ msgstr "проверяет целостность файлов паролей" # type: Content of: <refentry><refsect1><para><emphasis> #: pwck.8.xml:80(replaceable) passwd.5.xml:57(refentrytitle) #: passwd.5.xml:64(refname) passwd.1.xml:64(refentrytitle) -#: passwd.1.xml:71(refname) passwd.1.xml:77(command) -#: login.defs.5.xml:409(term) +#: passwd.1.xml:71(refname) passwd.1.xml:77(command) login.defs.5.xml:409(term) msgid "passwd" msgstr "passwd" @@ -5277,10 +5327,15 @@ msgstr "" "<replaceable>passwd</replaceable> и <replaceable>shadow</replaceable>." #: pwck.8.xml:243(para) +#, fuzzy +#| msgid "" +#| "Note that when <option>USE_TCB</option> is enabled, you cannot specify an " +#| "alternative <replaceable>shadow</replaceable> file. In future releases, " +#| "this paramater could be replaced by an alternate TCB directory." msgid "" "Note that when <option>USE_TCB</option> is enabled, you cannot specify an " "alternative <replaceable>shadow</replaceable> file. In future releases, this " -"paramater could be replaced by an alternate TCB directory." +"parameter could be replaced by an alternate TCB directory." msgstr "" "Заметим, что если определена <option>USE_TCB</option>, то вы не можете " "указать другой файл <replaceable>shadow</replaceable>. В следующих версиях " @@ -5771,8 +5826,12 @@ msgstr "" "этом легко догадаться, что приведёт к нарушению безопасности системы." #: passwd.1.xml:166(para) +#, fuzzy +#| msgid "" +#| "You can find advices on how to choose a strong password on http://en." +#| "wikipedia.org/wiki/Password_strength" msgid "" -"You can find advices on how to choose a strong password on http://en." +"You can find advice on how to choose a strong password on http://en." "wikipedia.org/wiki/Password_strength" msgstr "" "О том, как выбрать стойкий пароль, читайте в http://ru.wikipedia.org/wiki/" @@ -6156,8 +6215,8 @@ msgstr "<option>PASS_MIN_LEN</option> (число)" #: passwd.1.xml:35(para) login.defs.5.xml:35(para) msgid "" "Number of significant characters in the password for crypt(). " -"<option>PASS_MAX_LEN</option> is 8 by default. Don't change unless your crypt" -"() is better. This is ignored if <option>MD5_CRYPT_ENAB</option> set to " +"<option>PASS_MAX_LEN</option> is 8 by default. Don't change unless your " +"crypt() is better. This is ignored if <option>MD5_CRYPT_ENAB</option> set to " "<replaceable>yes</replaceable>." msgstr "" "Количество значимых символов в пароле для crypt(). По умолчанию значение " @@ -6345,7 +6404,9 @@ msgstr "ИСТОРИЯ" # type: Content of: <refentry><refsect1><para> #: nologin.8.xml:91(para) -msgid "The <command>nologin</command> command appearred in BSD 4.4." +#, fuzzy +#| msgid "The <command>nologin</command> command appearred in BSD 4.4." +msgid "The <command>nologin</command> command appeared in BSD 4.4." msgstr "Программа <command>nologin</command> впервые появилась в BSD 4.4." # type: Content of: <refentry><refsect1><variablelist><varlistentry><term> @@ -6395,8 +6456,14 @@ msgid "This is the name of the user." msgstr "Имя пользователя." #: newusers.8.xml:116(para) +#, fuzzy +#| msgid "" +#| "It can be the name of a new user or the name of an existing user (or an " +#| "user created before by <command>newusers</command>). In case of an " +#| "existing user, the user's information will be changed, otherwise a new " +#| "user will be created." msgid "" -"It can be the name of a new user or the name of an existing user (or an user " +"It can be the name of a new user or the name of an existing user (or a user " "created before by <command>newusers</command>). In case of an existing user, " "the user's information will be changed, otherwise a new user will be created." msgstr "" @@ -6429,8 +6496,12 @@ msgid "This field is used to define the UID of the user." msgstr "Это поле используется для определения UID пользователя." #: newusers.8.xml:144(para) +#, fuzzy +#| msgid "" +#| "If the field is empty, an new (unused) UID will be defined automatically " +#| "by <command>newusers</command>." msgid "" -"If the field is empty, an new (unused) UID will be defined automatically by " +"If the field is empty, a new (unused) UID will be defined automatically by " "<command>newusers</command>." msgstr "" "Если это поле пусто, то командой <command>newusers</command> автоматически " @@ -6442,8 +6513,13 @@ msgstr "" "Если в этом поле указано число, то оно будет использовано в качестве UID." #: newusers.8.xml:152(para) +#, fuzzy +#| msgid "" +#| "If this field contains the name of an existing user (or the name of an " +#| "user created before by <command>newusers</command>), the UID of the " +#| "specified user will be used." msgid "" -"If this field contains the name of an existing user (or the name of an user " +"If this field contains the name of an existing user (or the name of a user " "created before by <command>newusers</command>), the UID of the specified " "user will be used." msgstr "" @@ -8130,7 +8206,9 @@ msgstr "D: максимальный размер данных (КБ)" # type: Content of: <refentry><refsect1><itemizedlist><listitem><para> #: limits.5.xml:111(para) -msgid "F: maximum filesize (KB)" +#, fuzzy +#| msgid "F: maximum filesize (KB)" +msgid "F: maximum file size (KB)" msgstr "F: максимальный размер файла (КБ)" #: limits.5.xml:112(para) @@ -8222,9 +8300,15 @@ msgstr "" # type: Content of: <refentry><refsect1><para> #: limits.5.xml:145(para) +#, fuzzy +#| msgid "" +#| "Be aware that after <emphasis remap=\"I\">username</emphasis> the rest of " +#| "the line is considered a limit string, thus comments are not allowed. A " +#| "invalid limits string will be rejected (not considered) by the " +#| "<command>login</command> program." msgid "" "Be aware that after <emphasis remap=\"I\">username</emphasis> the rest of " -"the line is considered a limit string, thus comments are not allowed. A " +"the line is considered a limit string, thus comments are not allowed. An " "invalid limits string will be rejected (not considered) by the " "<command>login</command> program." msgstr "" @@ -8253,16 +8337,26 @@ msgstr "" "применяются к членам указанной группы <replaceable>group</replaceable>." #: limits.5.xml:165(para) +#, fuzzy +#| msgid "" +#| "If more than one line with limits for an user exist, only the first line " +#| "for this user will be considered." msgid "" -"If more than one line with limits for an user exist, only the first line for " +"If more than one line with limits for a user exist, only the first line for " "this user will be considered." msgstr "" "Если для пользователя есть более одной строки ограничений, то учитывается " "только первая строка." #: limits.5.xml:170(para) +#, fuzzy +#| msgid "" +#| "If no lines are specified for an user, the last <replaceable>@group</" +#| "replaceable> 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." msgid "" -"If no lines are specified for an user, the last <replaceable>@group</" +"If no lines are specified for a user, the last <replaceable>@group</" "replaceable> 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." @@ -8367,7 +8461,37 @@ msgid "" msgstr "" "Показать записи lastlog за последние <emphasis remap=\"I\">ДНЕЙ</emphasis>." -#: lastlog.8.xml:127(term) faillog.8.xml:192(term) +#: lastlog.8.xml:107(term) +#, fuzzy +#| msgid "<option>-u</option>, <option>--user</option>" +msgid "<option>-C</option>, <option>--clear</option>" +msgstr "<option>-u</option>, <option>--user</option>" + +#: lastlog.8.xml:111(para) +#, fuzzy +#| msgid "" +#| "This option is only valid in combination with the <option>-d</option> (or " +#| "<option>--home</option>) option." +msgid "" +"Clear lastlog record of a user. This option can be used only together with " +"<option>-u</option> (<option>--user</option>))." +msgstr "" +"Этот параметр можно использовать только с параметром <option>-d</option> " +"(или <option>--home</option>)." + +#: lastlog.8.xml:138(term) +#, fuzzy +#| msgid "<option>-r</option>, <option>--reset</option>" +msgid "<option>-S</option>, <option>--set</option>" +msgstr "<option>-r</option>, <option>--reset</option>" + +#: lastlog.8.xml:142(para) +msgid "" +"Set lastlog record of a user to the current time. This option can be used " +"only together with <option>-u</option> (<option>--user</option>))." +msgstr "" + +#: lastlog.8.xml:149(term) faillog.8.xml:192(term) msgid "" "<option>-t</option>, <option>--time</option> <replaceable>DAYS</" "replaceable>" @@ -8376,14 +8500,14 @@ msgstr "" "replaceable>" # type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: lastlog.8.xml:131(para) +#: lastlog.8.xml:153(para) msgid "" "Print the lastlog records more recent than <emphasis remap=\"I\">DAYS</" "emphasis>." msgstr "" "Показать записи lastlog новее чем <emphasis remap=\"I\">ДНЕЙ</emphasis>." -#: lastlog.8.xml:138(term) faillog.8.xml:202(term) +#: lastlog.8.xml:160(term) faillog.8.xml:202(term) msgid "" "<option>-u</option>, <option>--user</option> <replaceable>LOGIN</" "replaceable>|<replaceable>RANGE</replaceable>" @@ -8392,11 +8516,11 @@ msgstr "" "ЗАПИСЬ</replaceable>|<replaceable>ДИАПАЗОН</replaceable>" # type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: lastlog.8.xml:142(para) +#: lastlog.8.xml:164(para) msgid "Print the lastlog record of the specified user(s)." msgstr "Показать запись lastlog только для указанного пользователя(ей)." -#: lastlog.8.xml:145(para) faillog.8.xml:211(para) +#: lastlog.8.xml:167(para) faillog.8.xml:211(para) msgid "" "The users can be specified by a login name, a numerical user ID, or a " "<replaceable>RANGE</replaceable> of users. This <replaceable>RANGE</" @@ -8411,7 +8535,7 @@ msgstr "" "максимального (<replaceable>-UID_МАКС</replaceable>) или минимального " "(<replaceable>UID_МИН-</replaceable>) значения." -#: lastlog.8.xml:157(para) +#: lastlog.8.xml:179(para) msgid "" "If the user has never logged in the message <emphasis>** Never logged in**</" "emphasis> will be displayed instead of the port and time." @@ -8420,7 +8544,7 @@ msgstr "" "сообщение <emphasis>** Никогда не входил в систему**</emphasis> вместо " "названия порта и даты." -#: lastlog.8.xml:162(para) +#: lastlog.8.xml:184(para) msgid "" "Only the entries for the current users of the system will be displayed. " "Other entries may exist for users that were deleted previously." @@ -8430,13 +8554,13 @@ msgstr "" "пользователей." # type: Content of: <refentry><refsect1><title> -#: lastlog.8.xml:170(title) groups.1.xml:90(title) chsh.1.xml:140(title) +#: lastlog.8.xml:192(title) groups.1.xml:90(title) chsh.1.xml:140(title) #: chage.1.xml:231(title) msgid "NOTE" msgstr "ЗАМЕЧАНИЕ" # type: Content of: <refentry><refsect1><para> -#: lastlog.8.xml:171(para) +#: lastlog.8.xml:193(para) msgid "" "The <filename>lastlog</filename> file is a database which contains info on " "the last login of each user. You should not rotate it. It is a sparse file, " @@ -8454,17 +8578,17 @@ msgstr "" "значений). Чтобы увидеть реальный размер введите «<command>ls -s</command>»." # type: Content of: <refentry><refsect1><variablelist><varlistentry><term><filename> -#: lastlog.8.xml:185(filename) +#: lastlog.8.xml:207(filename) msgid "/var/log/lastlog" msgstr "/var/log/lastlog" # type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> -#: lastlog.8.xml:187(para) +#: lastlog.8.xml:209(para) msgid "Database times of previous user logins." msgstr "содержит список завершённых сеансов работы с системой" # type: Content of: <refentry><refsect1><para> -#: lastlog.8.xml:195(para) +#: lastlog.8.xml:217(para) msgid "" "Large gaps in UID numbers will cause the lastlog program to run longer with " "no output to the screen (i.e. if in lastlog database there is no entries for " @@ -8527,8 +8651,14 @@ msgstr "" "нужен)." #: gshadow.5.xml:97(para) +#, fuzzy +#| msgid "" +#| "The password is used when an user who is not a member of the group wants " +#| "to gain the permissions of this group (see " +#| "<citerefentry><refentrytitle>newgrp</refentrytitle><manvolnum>1</" +#| "manvolnum></citerefentry>)." msgid "" -"The password is used when an user who is not a member of the group wants to " +"The password is used when a user who is not a member of the group wants to " "gain the permissions of this group (see <citerefentry><refentrytitle>newgrp</" "refentrytitle><manvolnum>1</manvolnum></citerefentry>)." msgstr "" @@ -9086,7 +9216,9 @@ msgstr "" # type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para> #: groupmems.8.xml:109(para) -msgid "Add an user to the group membership list." +#, fuzzy +#| msgid "Add an user to the group membership list." +msgid "Add a user to the group membership list." msgstr "Добавить нового пользователя в группу." #: groupmems.8.xml:110(para) groupmems.8.xml:126(para) @@ -10158,10 +10290,17 @@ msgstr "" "действия пароля, то он будет обновлён." #: chpasswd.8.xml:97(para) +#, fuzzy +#| msgid "" +#| "The default encryption algorithm can be defined for the system with the " +#| "<option>ENCRYPT_METHOD</option> or <option>MD5_CRYPT_ENAB</option> " +#| "variables of <filename>/etc/login.defs</filename>, and can be overwitten " +#| "with the <option>-e</option>, <option>-m</option>, or <option>-c</option> " +#| "options." msgid "" "The default encryption algorithm can be defined for the system with the " "<option>ENCRYPT_METHOD</option> or <option>MD5_CRYPT_ENAB</option> variables " -"of <filename>/etc/login.defs</filename>, and can be overwitten with the " +"of <filename>/etc/login.defs</filename>, and can be overwritten with the " "<option>-e</option>, <option>-m</option>, or <option>-c</option> options." msgstr "" "Системный алгоритм шифрования по умолчанию может быть задан в переменной " @@ -10180,10 +10319,16 @@ msgstr "" "option>, <option>-m</option> или <option>-c</option>." #: chpasswd.8.xml:111(para) +#, fuzzy +#| msgid "" +#| "<phrase condition=\"pam\">Except when PAM is used to encrypt the " +#| "passwords,</phrase><command>chpasswd</command> first updates all the " +#| "passwords in memory, and then commits all the changes to disk if no " +#| "errors occured for any user." msgid "" "<phrase condition=\"pam\">Except when PAM is used to encrypt the passwords,</" "phrase><command>chpasswd</command> first updates all the passwords in " -"memory, and then commits all the changes to disk if no errors occured for " +"memory, and then commits all the changes to disk if no errors occurred for " "any user." msgstr "" "Команда <command>chpasswd</command> <phrase condition=\"pam\">(когда для " @@ -10356,10 +10501,16 @@ msgstr "" "шифруется командой <command>chgpasswd</command>." #: chgpasswd.8.xml:92(para) +#, fuzzy +#| msgid "" +#| "The default encryption algorithm can be defined for the system with the " +#| "<option>ENCRYPT_METHOD</option> variable of <filename>/etc/login.defs</" +#| "filename>, and can be overwiten with the <option>-e</option>, <option>-m</" +#| "option>, or <option>-c</option> options." msgid "" "The default encryption algorithm can be defined for the system with the " "<option>ENCRYPT_METHOD</option> variable of <filename>/etc/login.defs</" -"filename>, and can be overwiten with the <option>-e</option>, <option>-m</" +"filename>, and can be overwritten with the <option>-e</option>, <option>-m</" "option>, or <option>-c</option> options." msgstr "" "Системный алгоритм шифрования по умолчанию может быть задан в переменной " @@ -10772,6 +10923,10 @@ msgstr "" "Yuri Kozlov <yuray@komyakino.ru>, 2005, 2006, 2012 Sergey Alyoshin <alyoshin." "s@gmail.com>, 2012 " +# type: Content of: <refentry><refsect1><variablelist><varlistentry><listitem><para><option> +#~ msgid "-M" +#~ msgstr "-M" + #~ msgid "" #~ "<citerefentry><refentrytitle>chfn</refentrytitle><manvolnum>1</" #~ "manvolnum></citerefentry>, <citerefentry><refentrytitle>chsh</" diff --git a/man/po/shadow-man-pages.pot b/man/po/shadow-man-pages.pot index 5b31daac..2a705d54 100644 --- a/man/po/shadow-man-pages.pot +++ b/man/po/shadow-man-pages.pot @@ -1,7 +1,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" -"POT-Creation-Date: 2013-08-23 01:54+0200\n" +"POT-Creation-Date: 2016-09-18 14:03-0500\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Language-Team: LANGUAGE <LL@li.org>\n" @@ -105,11 +105,11 @@ msgstr "" msgid "Edit group database." msgstr "" -#: vipw.8.xml:120(term) userdel.8.xml:123(term) useradd.8.xml:266(term) pwconv.8.xml:195(term) pwck.8.xml:186(term) passwd.1.xml:214(term) newusers.8.xml:283(term) lastlog.8.xml:107(term) grpck.8.xml:157(term) groupmod.8.xml:129(term) groupmems.8.xml:142(term) groupdel.8.xml:95(term) groupadd.8.xml:131(term) gpasswd.1.xml:173(term) faillog.8.xml:122(term) expiry.1.xml:112(term) chsh.1.xml:101(term) chpasswd.8.xml:171(term) chgpasswd.8.xml:131(term) chage.1.xml:129(term) +#: vipw.8.xml:120(term) userdel.8.xml:123(term) useradd.8.xml:266(term) pwconv.8.xml:195(term) pwck.8.xml:186(term) passwd.1.xml:214(term) newusers.8.xml:283(term) lastlog.8.xml:118(term) grpck.8.xml:157(term) groupmod.8.xml:129(term) groupmems.8.xml:142(term) groupdel.8.xml:95(term) groupadd.8.xml:131(term) gpasswd.1.xml:173(term) faillog.8.xml:122(term) expiry.1.xml:112(term) chsh.1.xml:101(term) chpasswd.8.xml:171(term) chgpasswd.8.xml:131(term) chage.1.xml:129(term) msgid "<option>-h</option>, <option>--help</option>" msgstr "" -#: vipw.8.xml:122(para) userdel.8.xml:125(para) useradd.8.xml:268(para) pwconv.8.xml:197(para) pwck.8.xml:188(para) passwd.1.xml:216(para) newusers.8.xml:285(para) lastlog.8.xml:111(para) grpck.8.xml:159(para) groupmod.8.xml:131(para) groupmems.8.xml:144(para) groupdel.8.xml:97(para) groupadd.8.xml:133(para) gpasswd.1.xml:175(para) faillog.8.xml:124(para) expiry.1.xml:114(para) chsh.1.xml:103(para) chpasswd.8.xml:173(para) chgpasswd.8.xml:133(para) chfn.1.xml:169(para) chage.1.xml:131(para) +#: vipw.8.xml:122(para) userdel.8.xml:125(para) useradd.8.xml:268(para) pwconv.8.xml:197(para) pwck.8.xml:188(para) passwd.1.xml:216(para) newusers.8.xml:285(para) lastlog.8.xml:122(para) grpck.8.xml:159(para) groupmod.8.xml:131(para) groupmems.8.xml:144(para) groupdel.8.xml:97(para) groupadd.8.xml:133(para) gpasswd.1.xml:175(para) faillog.8.xml:124(para) expiry.1.xml:114(para) chsh.1.xml:103(para) chpasswd.8.xml:173(para) chgpasswd.8.xml:133(para) chfn.1.xml:169(para) chage.1.xml:131(para) msgid "Display help message and exit." msgstr "" @@ -129,11 +129,11 @@ msgstr "" msgid "Quiet mode." msgstr "" -#: vipw.8.xml:138(term) usermod.8.xml:311(term) userdel.8.xml:146(term) useradd.8.xml:445(term) pwconv.8.xml:201(term) pwck.8.xml:209(term) passwd.1.xml:301(term) newusers.8.xml:308(term) lastlog.8.xml:115(term) grpck.8.xml:173(term) groupmod.8.xml:178(term) groupmems.8.xml:165(term) groupdel.8.xml:101(term) groupadd.8.xml:204(term) faillog.8.xml:180(term) chsh.1.xml:107(term) chpasswd.8.xml:188(term) chgpasswd.8.xml:146(term) chfn.1.xml:153(term) chage.1.xml:197(term) +#: vipw.8.xml:138(term) usermod.8.xml:311(term) userdel.8.xml:146(term) useradd.8.xml:445(term) pwconv.8.xml:201(term) pwck.8.xml:209(term) passwd.1.xml:301(term) newusers.8.xml:308(term) lastlog.8.xml:126(term) grpck.8.xml:173(term) groupmod.8.xml:178(term) groupmems.8.xml:165(term) groupdel.8.xml:101(term) groupadd.8.xml:204(term) faillog.8.xml:180(term) chsh.1.xml:107(term) chpasswd.8.xml:188(term) chgpasswd.8.xml:146(term) chfn.1.xml:153(term) chage.1.xml:197(term) msgid "<option>-R</option>, <option>--root</option> <replaceable>CHROOT_DIR</replaceable>" msgstr "" -#: vipw.8.xml:142(para) usermod.8.xml:315(para) userdel.8.xml:150(para) useradd.8.xml:449(para) pwconv.8.xml:205(para) pwck.8.xml:213(para) passwd.1.xml:305(para) newusers.8.xml:312(para) lastlog.8.xml:119(para) grpck.8.xml:177(para) groupmod.8.xml:182(para) groupmems.8.xml:169(para) groupdel.8.xml:105(para) groupadd.8.xml:208(para) gpasswd.1.xml:185(para) faillog.8.xml:184(para) chsh.1.xml:111(para) chpasswd.8.xml:192(para) chgpasswd.8.xml:150(para) chfn.1.xml:157(para) chage.1.xml:201(para) +#: vipw.8.xml:142(para) usermod.8.xml:315(para) userdel.8.xml:150(para) useradd.8.xml:449(para) pwconv.8.xml:205(para) pwck.8.xml:213(para) passwd.1.xml:305(para) newusers.8.xml:312(para) lastlog.8.xml:130(para) grpck.8.xml:177(para) groupmod.8.xml:182(para) groupmems.8.xml:169(para) groupdel.8.xml:105(para) groupadd.8.xml:208(para) gpasswd.1.xml:185(para) faillog.8.xml:184(para) chsh.1.xml:111(para) chpasswd.8.xml:192(para) chgpasswd.8.xml:150(para) chfn.1.xml:157(para) chage.1.xml:201(para) msgid "Apply changes in the <replaceable>CHROOT_DIR</replaceable> directory and use the configuration files from the <replaceable>CHROOT_DIR</replaceable> directory." msgstr "" @@ -153,11 +153,11 @@ msgstr "" msgid "Indicates which user's tcb shadow file to edit." msgstr "" -#: vipw.8.xml:165(title) usermod.8.xml:497(title) userdel.8.xml:171(title) useradd.8.xml:647(title) su.1.xml:339(title) sg.1.xml:98(title) pwconv.8.xml:227(title) pwck.8.xml:252(title) passwd.1.xml:390(title) newusers.8.xml:362(title) newgrp.1.xml:109(title) login.1.xml:294(title) grpck.8.xml:209(title) groupmod.8.xml:193(title) groupmems.8.xml:199(title) groupdel.8.xml:128(title) groupadd.8.xml:219(title) gpasswd.1.xml:264(title) chsh.1.xml:154(title) chpasswd.8.xml:239(title) chgpasswd.8.xml:198(title) chfn.1.xml:193(title) chage.1.xml:244(title) +#: vipw.8.xml:165(title) usermod.8.xml:496(title) userdel.8.xml:171(title) useradd.8.xml:647(title) su.1.xml:339(title) sg.1.xml:98(title) pwconv.8.xml:227(title) pwck.8.xml:252(title) passwd.1.xml:390(title) newusers.8.xml:362(title) newgrp.1.xml:109(title) login.1.xml:294(title) grpck.8.xml:209(title) groupmod.8.xml:193(title) groupmems.8.xml:199(title) groupdel.8.xml:128(title) groupadd.8.xml:219(title) gpasswd.1.xml:264(title) chsh.1.xml:154(title) chpasswd.8.xml:239(title) chgpasswd.8.xml:198(title) chfn.1.xml:193(title) chage.1.xml:244(title) msgid "CONFIGURATION" msgstr "" -#: vipw.8.xml:166(para) usermod.8.xml:498(para) userdel.8.xml:172(para) useradd.8.xml:648(para) su.1.xml:340(para) sg.1.xml:99(para) pwck.8.xml:253(para) passwd.1.xml:391(para) newusers.8.xml:363(para) newgrp.1.xml:110(para) login.1.xml:295(para) grpck.8.xml:210(para) groupmod.8.xml:194(para) groupmems.8.xml:200(para) groupdel.8.xml:129(para) groupadd.8.xml:220(para) gpasswd.1.xml:265(para) chsh.1.xml:155(para) chpasswd.8.xml:240(para) chgpasswd.8.xml:199(para) chfn.1.xml:194(para) chage.1.xml:245(para) +#: vipw.8.xml:166(para) usermod.8.xml:497(para) userdel.8.xml:172(para) useradd.8.xml:648(para) su.1.xml:340(para) sg.1.xml:99(para) pwck.8.xml:253(para) passwd.1.xml:391(para) newusers.8.xml:363(para) newgrp.1.xml:110(para) login.1.xml:295(para) grpck.8.xml:210(para) groupmod.8.xml:194(para) groupmems.8.xml:200(para) groupdel.8.xml:129(para) groupadd.8.xml:220(para) gpasswd.1.xml:265(para) chsh.1.xml:155(para) chpasswd.8.xml:240(para) chgpasswd.8.xml:199(para) chfn.1.xml:194(para) chage.1.xml:245(para) msgid "The following configuration variables in <filename>/etc/login.defs</filename> change the behavior of this tool:" msgstr "" @@ -189,43 +189,43 @@ msgstr "" msgid "Editor to be used if <option>VISUAL</option> is not set." msgstr "" -#: vipw.8.xml:195(title) usermod.8.xml:514(title) userdel.8.xml:188(title) useradd.8.xml:675(title) suauth.5.xml:193(title) su.1.xml:367(title) sg.1.xml:110(title) shadow.5.xml:255(title) shadow.3.xml:226(title) pwconv.8.xml:250(title) pwck.8.xml:269(title) porttime.5.xml:130(title) passwd.5.xml:141(title) passwd.1.xml:408(title) newusers.8.xml:397(title) newgrp.1.xml:121(title) logoutd.8.xml:89(title) login.access.5.xml:121(title) login.1.xml:338(title) limits.5.xml:196(title) lastlog.8.xml:182(title) gshadow.5.xml:156(title) grpck.8.xml:221(title) groups.1.xml:100(title) groupmod.8.xml:205(title) groupmems.8.xml:211(title) groupdel.8.xml:140(title) groupadd.8.xml:233(title) gpasswd.1.xml:279(title) faillog.8.xml:243(title) faillog.5.xml:96(title) expiry.1.xml:121(title) chsh.1.xml:167(title) chpasswd.8.xml:255(title) chgpasswd.8.xml:213(title) chfn.1.xml:207(title) chage.1.xml:256(title) +#: vipw.8.xml:195(title) usermod.8.xml:513(title) userdel.8.xml:188(title) useradd.8.xml:675(title) suauth.5.xml:193(title) su.1.xml:367(title) sg.1.xml:110(title) shadow.5.xml:255(title) shadow.3.xml:226(title) pwconv.8.xml:250(title) pwck.8.xml:269(title) porttime.5.xml:130(title) passwd.5.xml:141(title) passwd.1.xml:408(title) newusers.8.xml:397(title) newgrp.1.xml:121(title) logoutd.8.xml:89(title) login.access.5.xml:121(title) login.1.xml:338(title) limits.5.xml:196(title) lastlog.8.xml:204(title) gshadow.5.xml:156(title) grpck.8.xml:221(title) groups.1.xml:100(title) groupmod.8.xml:205(title) groupmems.8.xml:211(title) groupdel.8.xml:140(title) groupadd.8.xml:233(title) gpasswd.1.xml:279(title) faillog.8.xml:243(title) faillog.5.xml:96(title) expiry.1.xml:121(title) chsh.1.xml:167(title) chpasswd.8.xml:255(title) chgpasswd.8.xml:213(title) chfn.1.xml:207(title) chage.1.xml:256(title) msgid "FILES" msgstr "" -#: vipw.8.xml:198(filename) usermod.8.xml:517(filename) userdel.8.xml:191(filename) useradd.8.xml:690(filename) sg.1.xml:125(filename) pwck.8.xml:272(filename) newusers.8.xml:412(filename) newgrp.1.xml:136(filename) gshadow.5.xml:159(filename) grpck.8.xml:224(filename) groups.1.xml:103(filename) groupmod.8.xml:208(filename) groupmems.8.xml:214(filename) groupdel.8.xml:143(filename) groupadd.8.xml:236(filename) gpasswd.1.xml:72(filename) gpasswd.1.xml:75(filename) gpasswd.1.xml:282(filename) chgpasswd.8.xml:216(filename) +#: vipw.8.xml:198(filename) usermod.8.xml:516(filename) userdel.8.xml:191(filename) useradd.8.xml:690(filename) sg.1.xml:125(filename) pwck.8.xml:272(filename) newusers.8.xml:412(filename) newgrp.1.xml:136(filename) gshadow.5.xml:159(filename) grpck.8.xml:224(filename) groups.1.xml:103(filename) groupmod.8.xml:208(filename) groupmems.8.xml:214(filename) groupdel.8.xml:143(filename) groupadd.8.xml:236(filename) gpasswd.1.xml:72(filename) gpasswd.1.xml:75(filename) gpasswd.1.xml:282(filename) chgpasswd.8.xml:216(filename) msgid "/etc/group" msgstr "" -#: vipw.8.xml:200(para) usermod.8.xml:519(para) userdel.8.xml:193(para) useradd.8.xml:692(para) sg.1.xml:127(para) pwck.8.xml:274(para) newusers.8.xml:414(para) newgrp.1.xml:138(para) gshadow.5.xml:161(para) grpck.8.xml:226(para) groups.1.xml:105(para) groupmod.8.xml:210(para) groupmems.8.xml:216(para) groupdel.8.xml:145(para) groupadd.8.xml:238(para) gpasswd.1.xml:284(para) chgpasswd.8.xml:218(para) +#: vipw.8.xml:200(para) usermod.8.xml:518(para) userdel.8.xml:193(para) useradd.8.xml:692(para) sg.1.xml:127(para) pwck.8.xml:274(para) newusers.8.xml:414(para) newgrp.1.xml:138(para) gshadow.5.xml:161(para) grpck.8.xml:226(para) groups.1.xml:105(para) groupmod.8.xml:210(para) groupmems.8.xml:216(para) groupdel.8.xml:145(para) groupadd.8.xml:238(para) gpasswd.1.xml:284(para) chgpasswd.8.xml:218(para) msgid "Group account information." msgstr "" -#: vipw.8.xml:204(filename) usermod.8.xml:523(filename) useradd.8.xml:696(filename) sg.1.xml:131(filename) newusers.8.xml:418(filename) newgrp.1.xml:142(filename) gshadow.5.xml:165(filename) grpck.8.xml:230(filename) groupmod.8.xml:214(filename) groupmems.8.xml:220(filename) groupdel.8.xml:149(filename) groupadd.8.xml:242(filename) gpasswd.1.xml:76(filename) gpasswd.1.xml:288(filename) chgpasswd.8.xml:222(filename) +#: vipw.8.xml:204(filename) usermod.8.xml:522(filename) useradd.8.xml:696(filename) sg.1.xml:131(filename) newusers.8.xml:418(filename) newgrp.1.xml:142(filename) gshadow.5.xml:165(filename) grpck.8.xml:230(filename) groupmod.8.xml:214(filename) groupmems.8.xml:220(filename) groupdel.8.xml:149(filename) groupadd.8.xml:242(filename) gpasswd.1.xml:76(filename) gpasswd.1.xml:288(filename) chgpasswd.8.xml:222(filename) msgid "/etc/gshadow" msgstr "" -#: vipw.8.xml:206(para) usermod.8.xml:525(para) useradd.8.xml:698(para) sg.1.xml:133(para) newusers.8.xml:420(para) newgrp.1.xml:144(para) gshadow.5.xml:167(para) grpck.8.xml:232(para) groupmod.8.xml:216(para) groupdel.8.xml:151(para) groupadd.8.xml:244(para) gpasswd.1.xml:290(para) chgpasswd.8.xml:224(para) +#: vipw.8.xml:206(para) usermod.8.xml:524(para) useradd.8.xml:698(para) sg.1.xml:133(para) newusers.8.xml:420(para) newgrp.1.xml:144(para) gshadow.5.xml:167(para) grpck.8.xml:232(para) groupmod.8.xml:216(para) groupdel.8.xml:151(para) groupadd.8.xml:244(para) gpasswd.1.xml:290(para) chgpasswd.8.xml:224(para) msgid "Secure group account information." msgstr "" -#: vipw.8.xml:210(filename) usermod.8.xml:535(filename) userdel.8.xml:203(filename) useradd.8.xml:678(filename) su.1.xml:370(filename) sg.1.xml:113(filename) shadow.5.xml:258(filename) pwck.8.xml:278(filename) passwd.5.xml:144(filename) passwd.1.xml:411(filename) newusers.8.xml:400(filename) newgrp.1.xml:124(filename) login.1.xml:353(filename) grpck.8.xml:236(filename) groupmod.8.xml:226(filename) expiry.1.xml:124(filename) chsh.1.xml:170(filename) chpasswd.8.xml:258(filename) chfn.1.xml:216(filename) chage.1.xml:260(filename) +#: vipw.8.xml:210(filename) usermod.8.xml:534(filename) userdel.8.xml:203(filename) useradd.8.xml:678(filename) su.1.xml:370(filename) sg.1.xml:113(filename) shadow.5.xml:258(filename) pwck.8.xml:278(filename) passwd.5.xml:144(filename) passwd.1.xml:411(filename) newusers.8.xml:400(filename) newgrp.1.xml:124(filename) login.1.xml:353(filename) grpck.8.xml:236(filename) groupmod.8.xml:226(filename) expiry.1.xml:124(filename) chsh.1.xml:170(filename) chpasswd.8.xml:258(filename) chfn.1.xml:216(filename) chage.1.xml:260(filename) msgid "/etc/passwd" msgstr "" -#: vipw.8.xml:212(para) usermod.8.xml:537(para) userdel.8.xml:205(para) useradd.8.xml:680(para) su.1.xml:372(para) sg.1.xml:115(para) shadow.5.xml:260(para) pwck.8.xml:280(para) passwd.5.xml:146(para) passwd.1.xml:413(para) newusers.8.xml:402(para) newgrp.1.xml:126(para) login.1.xml:355(para) grpck.8.xml:238(para) groupmod.8.xml:228(para) expiry.1.xml:126(para) chsh.1.xml:172(para) chpasswd.8.xml:260(para) chfn.1.xml:218(para) chage.1.xml:263(para) +#: vipw.8.xml:212(para) usermod.8.xml:536(para) userdel.8.xml:205(para) useradd.8.xml:680(para) su.1.xml:372(para) sg.1.xml:115(para) shadow.5.xml:260(para) pwck.8.xml:280(para) passwd.5.xml:146(para) passwd.1.xml:413(para) newusers.8.xml:402(para) newgrp.1.xml:126(para) login.1.xml:355(para) grpck.8.xml:238(para) groupmod.8.xml:228(para) expiry.1.xml:126(para) chsh.1.xml:172(para) chpasswd.8.xml:260(para) chfn.1.xml:218(para) chage.1.xml:263(para) msgid "User account information." msgstr "" -#: vipw.8.xml:216(filename) usermod.8.xml:541(filename) userdel.8.xml:209(filename) useradd.8.xml:684(filename) su.1.xml:376(filename) sg.1.xml:119(filename) shadow.5.xml:264(filename) shadow.3.xml:229(filename) pwck.8.xml:284(filename) passwd.5.xml:150(filename) passwd.1.xml:417(filename) newusers.8.xml:406(filename) newgrp.1.xml:130(filename) login.1.xml:359(filename) expiry.1.xml:130(filename) chpasswd.8.xml:264(filename) chage.1.xml:268(filename) +#: vipw.8.xml:216(filename) usermod.8.xml:540(filename) userdel.8.xml:209(filename) useradd.8.xml:684(filename) su.1.xml:376(filename) sg.1.xml:119(filename) shadow.5.xml:264(filename) shadow.3.xml:229(filename) pwck.8.xml:284(filename) passwd.5.xml:150(filename) passwd.1.xml:417(filename) newusers.8.xml:406(filename) newgrp.1.xml:130(filename) login.1.xml:359(filename) expiry.1.xml:130(filename) chpasswd.8.xml:264(filename) chage.1.xml:268(filename) msgid "/etc/shadow" msgstr "" -#: vipw.8.xml:218(para) usermod.8.xml:543(para) userdel.8.xml:211(para) useradd.8.xml:686(para) su.1.xml:378(para) sg.1.xml:121(para) shadow.5.xml:266(para) shadow.3.xml:231(para) pwck.8.xml:286(para) passwd.1.xml:419(para) newusers.8.xml:408(para) newgrp.1.xml:132(para) login.1.xml:361(para) expiry.1.xml:132(para) chpasswd.8.xml:266(para) chage.1.xml:271(para) +#: vipw.8.xml:218(para) usermod.8.xml:542(para) userdel.8.xml:211(para) useradd.8.xml:686(para) su.1.xml:378(para) sg.1.xml:121(para) shadow.5.xml:266(para) shadow.3.xml:231(para) pwck.8.xml:286(para) passwd.1.xml:419(para) newusers.8.xml:408(para) newgrp.1.xml:132(para) login.1.xml:361(para) expiry.1.xml:132(para) chpasswd.8.xml:266(para) chage.1.xml:271(para) msgid "Secure user account information." msgstr "" -#: vipw.8.xml:225(title) usermod.8.xml:562(title) userdel.8.xml:308(title) useradd.8.xml:804(title) suauth.5.xml:222(title) su.1.xml:438(title) sg.1.xml:140(title) shadow.5.xml:283(title) shadow.3.xml:238(title) pwconv.8.xml:262(title) pwck.8.xml:344(title) porttime.5.xml:142(title) passwd.5.xml:169(title) passwd.1.xml:489(title) nologin.8.xml:78(title) newusers.8.xml:451(title) newgrp.1.xml:151(title) login.defs.5.xml:534(title) login.access.5.xml:133(title) login.1.xml:398(title) limits.5.xml:206(title) gshadow.5.xml:174(title) grpck.8.xml:290(title) groups.1.xml:112(title) groupmod.8.xml:286(title) groupmems.8.xml:229(title) groupdel.8.xml:197(title) groupadd.8.xml:324(title) gpasswd.1.xml:297(title) faillog.8.xml:255(title) faillog.5.xml:108(title) expiry.1.xml:139(title) chsh.1.xml:191(title) chpasswd.8.xml:285(title) chgpasswd.8.xml:237(title) chfn.1.xml:225(title) chage.1.xml:311(title) +#: vipw.8.xml:225(title) usermod.8.xml:561(title) userdel.8.xml:308(title) useradd.8.xml:804(title) suauth.5.xml:222(title) su.1.xml:438(title) sg.1.xml:140(title) shadow.5.xml:283(title) shadow.3.xml:238(title) pwconv.8.xml:262(title) pwck.8.xml:344(title) porttime.5.xml:142(title) passwd.5.xml:169(title) passwd.1.xml:489(title) nologin.8.xml:78(title) newusers.8.xml:451(title) newgrp.1.xml:151(title) login.defs.5.xml:534(title) login.access.5.xml:133(title) login.1.xml:398(title) limits.5.xml:206(title) gshadow.5.xml:174(title) grpck.8.xml:290(title) groups.1.xml:112(title) groupmod.8.xml:286(title) groupmems.8.xml:229(title) groupdel.8.xml:197(title) groupadd.8.xml:324(title) gpasswd.1.xml:297(title) faillog.8.xml:255(title) faillog.5.xml:108(title) expiry.1.xml:139(title) chsh.1.xml:191(title) chpasswd.8.xml:285(title) chgpasswd.8.xml:237(title) chfn.1.xml:225(title) chage.1.xml:311(title) msgid "SEE ALSO" msgstr "" @@ -521,19 +521,19 @@ msgstr "" msgid "A blank <replaceable>SEUSER</replaceable> will remove the SELinux user mapping for user <replaceable>LOGIN</replaceable> (if any)." msgstr "" -#: usermod.8.xml:478(title) userdel.8.xml:281(title) useradd.8.xml:623(title) su.1.xml:331(title) shadow.3.xml:218(title) passwd.1.xml:372(title) newusers.8.xml:350(title) login.1.xml:260(title) lastlog.8.xml:194(title) groupdel.8.xml:116(title) groupadd.8.xml:257(title) gpasswd.1.xml:252(title) faillog.8.xml:232(title) chpasswd.8.xml:231(title) chgpasswd.8.xml:186(title) +#: usermod.8.xml:478(title) userdel.8.xml:281(title) useradd.8.xml:623(title) su.1.xml:331(title) shadow.3.xml:218(title) passwd.1.xml:372(title) newusers.8.xml:350(title) login.1.xml:260(title) lastlog.8.xml:216(title) groupdel.8.xml:116(title) groupadd.8.xml:257(title) gpasswd.1.xml:252(title) faillog.8.xml:232(title) chpasswd.8.xml:231(title) chgpasswd.8.xml:186(title) msgid "CAVEATS" msgstr "" #: usermod.8.xml:479(para) -msgid "You must make certain that the named user is not executing any processes when this command is being executed if the user's numerical user ID, the user's name, or the user's home directory is being changed. <command>usermod</command> checks this on Linux, but only check if the user is logged in according to utmp on other architectures." +msgid "You must make certain that the named user is not executing any processes when this command is being executed if the user's numerical user ID, the user's name, or the user's home directory is being changed. <command>usermod</command> checks this on Linux. On other platforms it only uses utmp to check if the user is logged in." msgstr "" -#: usermod.8.xml:487(para) +#: usermod.8.xml:486(para) msgid "You must change the owner of any <command>crontab</command> files or <command>at</command> jobs manually." msgstr "" -#: usermod.8.xml:491(para) +#: usermod.8.xml:490(para) msgid "You must make any changes involving NIS on the NIS server." msgstr "" @@ -641,31 +641,31 @@ msgstr "" msgid "If <replaceable>yes</replaceable>, the location of the user tcb directory to be created will not be automatically set to /etc/tcb/user, but will be computed depending on the UID of the user, according to the following algorithm: <placeholder-1/>" msgstr "" -#: usermod.8.xml:529(filename) userdel.8.xml:197(filename) useradd.8.xml:726(filename) su.1.xml:382(filename) pwconv.8.xml:253(filename) passwd.1.xml:423(filename) newusers.8.xml:424(filename) login.access.5.xml:124(filename) login.1.xml:389(filename) groupmod.8.xml:220(filename) groupadd.8.xml:248(filename) chsh.1.xml:182(filename) chpasswd.8.xml:270(filename) chgpasswd.8.xml:228(filename) chfn.1.xml:210(filename) +#: usermod.8.xml:528(filename) userdel.8.xml:197(filename) useradd.8.xml:726(filename) su.1.xml:382(filename) pwconv.8.xml:253(filename) passwd.1.xml:423(filename) newusers.8.xml:424(filename) login.access.5.xml:124(filename) login.1.xml:389(filename) groupmod.8.xml:220(filename) groupadd.8.xml:248(filename) chsh.1.xml:182(filename) chpasswd.8.xml:270(filename) chgpasswd.8.xml:228(filename) chfn.1.xml:210(filename) msgid "/etc/login.defs" msgstr "" -#: usermod.8.xml:531(para) userdel.8.xml:199(para) useradd.8.xml:728(para) su.1.xml:384(para) pwconv.8.xml:255(para) passwd.1.xml:425(para) newusers.8.xml:426(para) login.access.5.xml:126(para) login.1.xml:391(para) groupmod.8.xml:222(para) groupadd.8.xml:250(para) chsh.1.xml:184(para) chpasswd.8.xml:272(para) chgpasswd.8.xml:230(para) chfn.1.xml:212(para) +#: usermod.8.xml:530(para) userdel.8.xml:199(para) useradd.8.xml:728(para) su.1.xml:384(para) pwconv.8.xml:255(para) passwd.1.xml:425(para) newusers.8.xml:426(para) login.access.5.xml:126(para) login.1.xml:391(para) groupmod.8.xml:222(para) groupadd.8.xml:250(para) chsh.1.xml:184(para) chpasswd.8.xml:272(para) chgpasswd.8.xml:230(para) chfn.1.xml:212(para) msgid "Shadow password suite configuration." msgstr "" -#: usermod.8.xml:547(filename) userdel.8.xml:215(filename) useradd.8.xml:714(filename) newusers.8.xml:436(filename) +#: usermod.8.xml:546(filename) userdel.8.xml:215(filename) useradd.8.xml:714(filename) newusers.8.xml:436(filename) msgid "/etc/subgid" msgstr "" -#: usermod.8.xml:549(para) userdel.8.xml:217(para) useradd.8.xml:716(para) newusers.8.xml:438(para) +#: usermod.8.xml:548(para) userdel.8.xml:217(para) useradd.8.xml:716(para) newusers.8.xml:438(para) msgid "Per user subordinate group IDs." msgstr "" -#: usermod.8.xml:553(filename) userdel.8.xml:221(filename) useradd.8.xml:720(filename) newusers.8.xml:442(filename) +#: usermod.8.xml:552(filename) userdel.8.xml:221(filename) useradd.8.xml:720(filename) newusers.8.xml:442(filename) msgid "/etc/subuid" msgstr "" -#: usermod.8.xml:555(para) userdel.8.xml:223(para) useradd.8.xml:722(para) newusers.8.xml:444(para) +#: usermod.8.xml:554(para) userdel.8.xml:223(para) useradd.8.xml:722(para) newusers.8.xml:444(para) msgid "Per user subordinate user IDs." msgstr "" -#: usermod.8.xml:563(para) +#: usermod.8.xml:562(para) msgid "<citerefentry><refentrytitle>chfn</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>chsh</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>passwd</refentrytitle><manvolnum>1</manvolnum></citerefentry>, <citerefentry><refentrytitle>crypt</refentrytitle><manvolnum>3</manvolnum></citerefentry>, <citerefentry><refentrytitle>gpasswd</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>groupadd</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>groupdel</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>groupmod</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>login.defs</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <phrase condition=\"subids\"><citerefentry><refentrytitle>subgid</refentrytitle><manvolnum>5</manvolnum></citerefentry>, <citerefentry><refentrytitle>subuid</refentrytitle><manvolnum>5</manvolnum></citerefentry>, </phrase><citerefentry><refentrytitle>useradd</refentrytitle><manvolnum>8</manvolnum></citerefentry>, <citerefentry><refentrytitle>userdel</refentrytitle><manvolnum>8</manvolnum></citerefentry>." msgstr "" @@ -935,7 +935,7 @@ msgid "<option>-K</option>, <option>--key</option> <replaceable>KEY</replac msgstr "" #: useradd.8.xml:301(para) -msgid "Overrides <filename>/etc/login.defs</filename> defaults (<option>UID_MIN</option>, <option>UID_MAX</option>, <option>UMASK</option>, <option>PASS_MAX_DAYS</option> and others). <placeholder-1/> Example: <option>-K</option> <replaceable>PASS_MAX_DAYS</replaceable>=<replaceable>-1</replaceable> can be used when creating system account to turn off password ageing, even though system account has no password at all. Multiple <option>-K</option> options can be specified, e.g.: <option>-K</option> <replaceable>UID_MIN</replaceable>=<replaceable>100</replaceable> <option>-K</option> <replaceable>UID_MAX</replaceable>=<replaceable>499</replaceable>" +msgid "Overrides <filename>/etc/login.defs</filename> defaults (<option>UID_MIN</option>, <option>UID_MAX</option>, <option>UMASK</option>, <option>PASS_MAX_DAYS</option> and others). <placeholder-1/> Example: <option>-K</option> <replaceable>PASS_MAX_DAYS</replaceable>=<replaceable>-1</replaceable> can be used when creating system account to turn off password aging, even though system account has no password at all. Multiple <option>-K</option> options can be specified, e.g.: <option>-K</option> <replaceable>UID_MIN</replaceable>=<replaceable>100</replaceable> <option>-K</option> <replaceable>UID_MAX</replaceable>=<replaceable>499</replaceable>" msgstr "" #: useradd.8.xml:322(term) @@ -947,7 +947,7 @@ msgid "Do not add the user to the lastlog and faillog databases." msgstr "" #: useradd.8.xml:327(para) -msgid "By default, the user's entries in the lastlog and faillog databases are resetted to avoid reusing the entry from a previously deleted user." +msgid "By default, the user's entries in the lastlog and faillog databases are reset to avoid reusing the entry from a previously deleted user." msgstr "" #: useradd.8.xml:335(term) @@ -962,8 +962,8 @@ msgstr "" msgid "By default, if this option is not specified and <option>CREATE_HOME</option> is not enabled, no home directories are created." msgstr "" -#: useradd.8.xml:354(option) -msgid "-M" +#: useradd.8.xml:353(term) +msgid "<option>-M</option>, <option>--no-create-home</option>" msgstr "" #: useradd.8.xml:357(para) @@ -1007,7 +1007,7 @@ msgid "System users will be created with no aging information in <filename>/etc/ msgstr "" #: useradd.8.xml:434(para) -msgid "Note that <command>useradd</command> will not create a home directory for such an user, regardless of the default setting in <filename>/etc/login.defs</filename> (<option>CREATE_HOME</option>). You have to specify the <option>-m</option> options if you want a home directory for a system account to be created." +msgid "Note that <command>useradd</command> will not create a home directory for such a user, regardless of the default setting in <filename>/etc/login.defs</filename> (<option>CREATE_HOME</option>). You have to specify the <option>-m</option> options if you want a home directory for a system account to be created." msgstr "" #: useradd.8.xml:461(para) @@ -1329,7 +1329,7 @@ msgstr "" #. .RS #: suauth.5.xml:83(literallayout) #, no-wrap -msgid "\n 1) the user su is targetting\n " +msgid "\n 1) the user su is targeting\n " msgstr "" #. .fi @@ -1351,7 +1351,7 @@ msgid "Where to-id is either the word <emphasis>ALL</emphasis>, a list of userna msgstr "" #: suauth.5.xml:107(para) -msgid "from-id is formatted the same as to-id except the extra word <emphasis>GROUP</emphasis> is recognised. <emphasis>ALL EXCEPT GROUP</emphasis> is perfectly valid too. Following <emphasis>GROUP</emphasis> appears one or more group names, delimited by \",\". It is not sufficient to have primary group id of the relevant group, an entry in <citerefentry><refentrytitle>/etc/group</refentrytitle><manvolnum>5</manvolnum></citerefentry> is neccessary." +msgid "from-id is formatted the same as to-id except the extra word <emphasis>GROUP</emphasis> is recognized. <emphasis>ALL EXCEPT GROUP</emphasis> is perfectly valid too. Following <emphasis>GROUP</emphasis> appears one or more group names, delimited by \",\". It is not sufficient to have primary group id of the relevant group, an entry in <citerefentry><refentrytitle>/etc/group</refentrytitle><manvolnum>5</manvolnum></citerefentry> is necessary." msgstr "" #: suauth.5.xml:118(para) @@ -1472,7 +1472,7 @@ msgid "Specify a command that will be invoked by the shell using its <option>-c< msgstr "" #: su.1.xml:158(para) -msgid "The executed command will have no controlling terminal. This option cannot be used to execute interractive programs which need a controlling TTY." +msgid "The executed command will have no controlling terminal. This option cannot be used to execute interactive programs which need a controlling TTY." msgstr "" #: su.1.xml:168(term) @@ -1854,7 +1854,7 @@ msgid "This field may be empty, in which case no passwords are required to authe msgstr "" #: shadow.5.xml:117(para) gshadow.5.xml:107(para) -msgid "A password field which starts with a exclamation mark means that the password is locked. The remaining characters on the line represent the password field before the password was locked." +msgid "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." msgstr "" #: shadow.5.xml:127(emphasis) @@ -1866,7 +1866,7 @@ msgid "The date of the last password change, expressed as the number of days sin msgstr "" #: shadow.5.xml:134(para) -msgid "The value 0 has a special meaning, which is that the user should change her pasword the next time she will log in the system." +msgid "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." msgstr "" #: shadow.5.xml:139(para) @@ -1942,7 +1942,7 @@ msgid "The date of expiration of the account, expressed as the number of days si msgstr "" #: shadow.5.xml:229(para) -msgid "Note that an account expiration differs from a password expiration. In case of an acount 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." +msgid "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." msgstr "" #: shadow.5.xml:235(para) @@ -2331,7 +2331,7 @@ msgid "By default, <command>pwck</command> operates on the files <filename>/etc/ msgstr "" #: pwck.8.xml:243(para) -msgid "Note that when <option>USE_TCB</option> is enabled, you cannot specify an alternative <replaceable>shadow</replaceable> file. In future releases, this paramater could be replaced by an alternate TCB directory." +msgid "Note that when <option>USE_TCB</option> is enabled, you cannot specify an alternative <replaceable>shadow</replaceable> file. In future releases, this parameter could be replaced by an alternate TCB directory." msgstr "" #: pwck.8.xml:312(para) @@ -2544,7 +2544,7 @@ msgid "Compromises in password security normally result from careless password s msgstr "" #: passwd.1.xml:166(para) -msgid "You can find advices on how to choose a strong password on http://en.wikipedia.org/wiki/Password_strength" +msgid "You can find advice on how to choose a strong password on http://en.wikipedia.org/wiki/Password_strength" msgstr "" #: passwd.1.xml:175(para) @@ -2832,7 +2832,7 @@ msgid "HISTORY" msgstr "" #: nologin.8.xml:91(para) -msgid "The <command>nologin</command> command appearred in BSD 4.4." +msgid "The <command>nologin</command> command appeared in BSD 4.4." msgstr "" #: newusers.8.xml:72(refentrytitle) newusers.8.xml:79(refname) newusers.8.xml:85(command) login.defs.5.xml:391(term) @@ -2864,7 +2864,7 @@ msgid "This is the name of the user." msgstr "" #: newusers.8.xml:116(para) -msgid "It can be the name of a new user or the name of an existing user (or an user created before by <command>newusers</command>). In case of an existing user, the user's information will be changed, otherwise a new user will be created." +msgid "It can be the name of a new user or the name of an existing user (or a user created before by <command>newusers</command>). In case of an existing user, the user's information will be changed, otherwise a new user will be created." msgstr "" #: newusers.8.xml:127(emphasis) @@ -2884,7 +2884,7 @@ msgid "This field is used to define the UID of the user." msgstr "" #: newusers.8.xml:144(para) -msgid "If the field is empty, an new (unused) UID will be defined automatically by <command>newusers</command>." +msgid "If the field is empty, a new (unused) UID will be defined automatically by <command>newusers</command>." msgstr "" #: newusers.8.xml:148(para) @@ -2892,7 +2892,7 @@ msgid "If this field contains a number, this number will be used as the UID." msgstr "" #: newusers.8.xml:152(para) -msgid "If this field contains the name of an existing user (or the name of an user created before by <command>newusers</command>), the UID of the specified user will be used." +msgid "If this field contains the name of an existing user (or the name of a user created before by <command>newusers</command>), the UID of the specified user will be used." msgstr "" #: newusers.8.xml:158(para) @@ -3704,7 +3704,7 @@ msgid "D: max data size (KB)" msgstr "" #: limits.5.xml:111(para) -msgid "F: maximum filesize (KB)" +msgid "F: maximum file size (KB)" msgstr "" #: limits.5.xml:112(para) @@ -3761,7 +3761,7 @@ msgid "\n username L2D2048N5\n username L2 D2048 N5\n " msgstr "" #: limits.5.xml:145(para) -msgid "Be aware that after <emphasis remap=\"I\">username</emphasis> the rest of the line is considered a limit string, thus comments are not allowed. A invalid limits string will be rejected (not considered) by the <command>login</command> program." +msgid "Be aware that after <emphasis remap=\"I\">username</emphasis> 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 <command>login</command> program." msgstr "" #: limits.5.xml:152(para) @@ -3773,11 +3773,11 @@ msgid "The limits specified in the form \"<replaceable>@group</replaceable>\" ap msgstr "" #: limits.5.xml:165(para) -msgid "If more than one line with limits for an user exist, only the first line for this user will be considered." +msgid "If more than one line with limits for a user exist, only the first line for this user will be considered." msgstr "" #: limits.5.xml:170(para) -msgid "If no lines are specified for an user, the last <replaceable>@group</replaceable> 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." +msgid "If no lines are specified for a user, the last <replaceable>@group</replaceable> 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." msgstr "" #: limits.5.xml:177(para) @@ -3824,51 +3824,67 @@ msgstr "" msgid "Print only lastlog records older than <emphasis remap=\"I\">DAYS</emphasis>." msgstr "" -#: lastlog.8.xml:127(term) faillog.8.xml:192(term) -msgid "<option>-t</option>, <option>--time</option> <replaceable>DAYS</replaceable>" +#: lastlog.8.xml:107(term) +msgid "<option>-C</option>, <option>--clear</option>" msgstr "" -#: lastlog.8.xml:131(para) -msgid "Print the lastlog records more recent than <emphasis remap=\"I\">DAYS</emphasis>." +#: lastlog.8.xml:111(para) +msgid "Clear lastlog record of a user. This option can be used only together with <option>-u</option> (<option>--user</option>))." msgstr "" -#: lastlog.8.xml:138(term) faillog.8.xml:202(term) -msgid "<option>-u</option>, <option>--user</option> <replaceable>LOGIN</replaceable>|<replaceable>RANGE</replaceable>" +#: lastlog.8.xml:138(term) +msgid "<option>-S</option>, <option>--set</option>" msgstr "" #: lastlog.8.xml:142(para) +msgid "Set lastlog record of a user to the current time. This option can be used only together with <option>-u</option> (<option>--user</option>))." +msgstr "" + +#: lastlog.8.xml:149(term) faillog.8.xml:192(term) +msgid "<option>-t</option>, <option>--time</option> <replaceable>DAYS</replaceable>" +msgstr "" + +#: lastlog.8.xml:153(para) +msgid "Print the lastlog records more recent than <emphasis remap=\"I\">DAYS</emphasis>." +msgstr "" + +#: lastlog.8.xml:160(term) faillog.8.xml:202(term) +msgid "<option>-u</option>, <option>--user</option> <replaceable>LOGIN</replaceable>|<replaceable>RANGE</replaceable>" +msgstr "" + +#: lastlog.8.xml:164(para) msgid "Print the lastlog record of the specified user(s)." msgstr "" -#: lastlog.8.xml:145(para) faillog.8.xml:211(para) +#: lastlog.8.xml:167(para) faillog.8.xml:211(para) msgid "The users can be specified by a login name, a numerical user ID, or a <replaceable>RANGE</replaceable> of users. This <replaceable>RANGE</replaceable> of users can be specified with a min and max values (<replaceable>UID_MIN-UID_MAX</replaceable>), a max value (<replaceable>-UID_MAX</replaceable>), or a min value (<replaceable>UID_MIN-</replaceable>)." msgstr "" -#: lastlog.8.xml:157(para) +#: lastlog.8.xml:179(para) msgid "If the user has never logged in the message <emphasis>** Never logged in**</emphasis> will be displayed instead of the port and time." msgstr "" -#: lastlog.8.xml:162(para) +#: lastlog.8.xml:184(para) msgid "Only the entries for the current users of the system will be displayed. Other entries may exist for users that were deleted previously." msgstr "" -#: lastlog.8.xml:170(title) groups.1.xml:90(title) chsh.1.xml:140(title) chage.1.xml:231(title) +#: lastlog.8.xml:192(title) groups.1.xml:90(title) chsh.1.xml:140(title) chage.1.xml:231(title) msgid "NOTE" msgstr "" -#: lastlog.8.xml:171(para) +#: lastlog.8.xml:193(para) msgid "The <filename>lastlog</filename> file is a database which contains info on the last login of each user. You should not rotate it. It is a sparse file, so its size on the disk is usually much smaller than the one shown by \"<command>ls -l</command>\" (which can indicate a really big file if you have in <filename>passwd</filename> users with a high UID). You can display its real size with \"<command>ls -s</command>\"." msgstr "" -#: lastlog.8.xml:185(filename) +#: lastlog.8.xml:207(filename) msgid "/var/log/lastlog" msgstr "" -#: lastlog.8.xml:187(para) +#: lastlog.8.xml:209(para) msgid "Database times of previous user logins." msgstr "" -#: lastlog.8.xml:195(para) +#: lastlog.8.xml:217(para) msgid "Large gaps in UID numbers will cause the lastlog program to run longer with no output to the screen (i.e. if in lastlog database there is no entries for users with UID between 170 and 800 lastlog will appear to hang as it processes entries with UIDs 171-799)." msgstr "" @@ -3905,7 +3921,7 @@ msgid "If the password field contains some string that is not a valid result of msgstr "" #: gshadow.5.xml:97(para) -msgid "The password is used when an user who is not a member of the group wants to gain the permissions of this group (see <citerefentry><refentrytitle>newgrp</refentrytitle><manvolnum>1</manvolnum></citerefentry>)." +msgid "The password is used when a user who is not a member of the group wants to gain the permissions of this group (see <citerefentry><refentrytitle>newgrp</refentrytitle><manvolnum>1</manvolnum></citerefentry>)." msgstr "" #: gshadow.5.xml:103(para) @@ -4169,7 +4185,7 @@ msgid "<option>-a</option>, <option>--add</option> <replaceable>user_name</ msgstr "" #: groupmems.8.xml:109(para) -msgid "Add an user to the group membership list." +msgid "Add a user to the group membership list." msgstr "" #: groupmems.8.xml:110(para) groupmems.8.xml:126(para) groupmems.8.xml:157(para) @@ -4663,7 +4679,7 @@ msgid "By default the passwords must be supplied in clear-text, and are encrypte msgstr "" #: chpasswd.8.xml:97(para) -msgid "The default encryption algorithm can be defined for the system with the <option>ENCRYPT_METHOD</option> or <option>MD5_CRYPT_ENAB</option> variables of <filename>/etc/login.defs</filename>, and can be overwitten with the <option>-e</option>, <option>-m</option>, or <option>-c</option> options." +msgid "The default encryption algorithm can be defined for the system with the <option>ENCRYPT_METHOD</option> or <option>MD5_CRYPT_ENAB</option> variables of <filename>/etc/login.defs</filename>, and can be overwritten with the <option>-e</option>, <option>-m</option>, or <option>-c</option> options." msgstr "" #: chpasswd.8.xml:105(para) @@ -4671,7 +4687,7 @@ msgid "By default, passwords are encrypted by PAM, but (even if not recommended) msgstr "" #: chpasswd.8.xml:111(para) -msgid "<phrase condition=\"pam\">Except when PAM is used to encrypt the passwords,</phrase><command>chpasswd</command> first updates all the passwords in memory, and then commits all the changes to disk if no errors occured for any user." +msgid "<phrase condition=\"pam\">Except when PAM is used to encrypt the passwords,</phrase><command>chpasswd</command> first updates all the passwords in memory, and then commits all the changes to disk if no errors occurred for any user." msgstr "" #: chpasswd.8.xml:117(para) @@ -4763,7 +4779,7 @@ msgid "By default the supplied password must be in clear-text, and is encrypted msgstr "" #: chgpasswd.8.xml:92(para) -msgid "The default encryption algorithm can be defined for the system with the <option>ENCRYPT_METHOD</option> variable of <filename>/etc/login.defs</filename>, and can be overwiten with the <option>-e</option>, <option>-m</option>, or <option>-c</option> options." +msgid "The default encryption algorithm can be defined for the system with the <option>ENCRYPT_METHOD</option> variable of <filename>/etc/login.defs</filename>, and can be overwritten with the <option>-e</option>, <option>-m</option>, or <option>-c</option> options." msgstr "" #: chgpasswd.8.xml:106(para) diff --git a/man/po/stamp-po b/man/po/stamp-po new file mode 100644 index 00000000..9788f702 --- /dev/null +++ b/man/po/stamp-po @@ -0,0 +1 @@ +timestamp diff --git a/man/po/sv.po b/man/po/sv.po index 1ce17418..6875d840 100644 --- a/man/po/sv.po +++ b/man/po/sv.po @@ -1,7 +1,7 @@ msgid "" msgstr "" "Project-Id-Version: man pages for shadow 4.0.18\n" -"POT-Creation-Date: 2013-08-23 01:54+0200\n" +"POT-Creation-Date: 2016-09-18 14:03-0500\n" "PO-Revision-Date: 2013-08-23 01:41+0200\n" "Last-Translator: Daniel Nylander <po@danielnylander.se>\n" "Language-Team: Swedish <debian-l10n-swedish@lists.debian.org>\n" @@ -49,16 +49,15 @@ msgstr "" #: useradd.8.xml:62(surname) suauth.5.xml:45(surname) su.1.xml:62(surname) #: sg.1.xml:46(surname) shadow.5.xml:45(surname) shadow.3.xml:45(surname) #: pwconv.8.xml:51(surname) pwck.8.xml:51(surname) porttime.5.xml:45(surname) -#: passwd.5.xml:45(surname) passwd.1.xml:52(surname) -#: newusers.8.xml:60(surname) newgrp.1.xml:46(surname) -#: logoutd.8.xml:45(surname) login.defs.5.xml:110(surname) -#: login.access.5.xml:46(surname) login.1.xml:78(surname) -#: limits.5.xml:47(surname) lastlog.8.xml:46(surname) grpck.8.xml:46(surname) -#: groups.1.xml:45(surname) groupmod.8.xml:46(surname) +#: passwd.5.xml:45(surname) passwd.1.xml:52(surname) newusers.8.xml:60(surname) +#: newgrp.1.xml:46(surname) logoutd.8.xml:45(surname) +#: login.defs.5.xml:110(surname) login.access.5.xml:46(surname) +#: login.1.xml:78(surname) limits.5.xml:47(surname) lastlog.8.xml:46(surname) +#: grpck.8.xml:46(surname) groups.1.xml:45(surname) groupmod.8.xml:46(surname) #: groupmems.8.xml:49(surname) groupdel.8.xml:46(surname) #: groupadd.8.xml:48(surname) gpasswd.1.xml:50(surname) -#: faillog.8.xml:45(surname) faillog.5.xml:45(surname) -#: expiry.1.xml:49(surname) chsh.1.xml:48(surname) chpasswd.8.xml:49(surname) +#: faillog.8.xml:45(surname) faillog.5.xml:45(surname) expiry.1.xml:49(surname) +#: chsh.1.xml:48(surname) chpasswd.8.xml:49(surname) #: chgpasswd.8.xml:45(surname) chfn.1.xml:48(surname) chage.1.xml:46(surname) msgid "Kłoczko" msgstr "" @@ -83,17 +82,16 @@ msgstr "" #: useradd.8.xml:64(contrib) suauth.5.xml:47(contrib) su.1.xml:64(contrib) #: sg.1.xml:48(contrib) shadow.5.xml:47(contrib) shadow.3.xml:47(contrib) #: pwconv.8.xml:53(contrib) pwck.8.xml:53(contrib) porttime.5.xml:47(contrib) -#: passwd.5.xml:47(contrib) passwd.1.xml:54(contrib) -#: newusers.8.xml:62(contrib) newgrp.1.xml:48(contrib) -#: logoutd.8.xml:47(contrib) login.defs.5.xml:112(contrib) -#: login.access.5.xml:48(contrib) login.1.xml:80(contrib) -#: limits.5.xml:49(contrib) lastlog.8.xml:48(contrib) grpck.8.xml:48(contrib) -#: groups.1.xml:47(contrib) groupmod.8.xml:48(contrib) +#: passwd.5.xml:47(contrib) passwd.1.xml:54(contrib) newusers.8.xml:62(contrib) +#: newgrp.1.xml:48(contrib) logoutd.8.xml:47(contrib) +#: login.defs.5.xml:112(contrib) login.access.5.xml:48(contrib) +#: login.1.xml:80(contrib) limits.5.xml:49(contrib) lastlog.8.xml:48(contrib) +#: grpck.8.xml:48(contrib) groups.1.xml:47(contrib) groupmod.8.xml:48(contrib) #: groupmems.8.xml:51(contrib) groupdel.8.xml:48(contrib) #: groupadd.8.xml:50(contrib) gpasswd.1.xml:52(contrib) -#: faillog.8.xml:47(contrib) faillog.5.xml:47(contrib) -#: expiry.1.xml:51(contrib) chsh.1.xml:50(contrib) chpasswd.8.xml:51(contrib) -#: chfn.1.xml:50(contrib) chage.1.xml:48(contrib) +#: faillog.8.xml:47(contrib) faillog.5.xml:47(contrib) expiry.1.xml:51(contrib) +#: chsh.1.xml:50(contrib) chpasswd.8.xml:51(contrib) chfn.1.xml:50(contrib) +#: chage.1.xml:48(contrib) msgid "shadow-utils maintainer, 2000 - 2007" msgstr "" @@ -127,14 +125,13 @@ msgstr "" #: newusers.8.xml:66(surname) newgrp.1.xml:52(surname) #: logoutd.8.xml:51(surname) login.defs.5.xml:116(surname) #: login.access.5.xml:52(surname) login.1.xml:84(surname) -#: limits.5.xml:53(surname) lastlog.8.xml:52(surname) -#: gshadow.5.xml:39(surname) grpck.8.xml:52(surname) groups.1.xml:51(surname) -#: groupmod.8.xml:52(surname) groupmems.8.xml:55(surname) -#: groupdel.8.xml:52(surname) groupadd.8.xml:54(surname) -#: gpasswd.1.xml:56(surname) faillog.8.xml:51(surname) -#: faillog.5.xml:51(surname) expiry.1.xml:55(surname) chsh.1.xml:54(surname) -#: chpasswd.8.xml:55(surname) chgpasswd.8.xml:51(surname) -#: chfn.1.xml:54(surname) chage.1.xml:52(surname) +#: limits.5.xml:53(surname) lastlog.8.xml:52(surname) gshadow.5.xml:39(surname) +#: grpck.8.xml:52(surname) groups.1.xml:51(surname) groupmod.8.xml:52(surname) +#: groupmems.8.xml:55(surname) groupdel.8.xml:52(surname) +#: groupadd.8.xml:54(surname) gpasswd.1.xml:56(surname) +#: faillog.8.xml:51(surname) faillog.5.xml:51(surname) expiry.1.xml:55(surname) +#: chsh.1.xml:54(surname) chpasswd.8.xml:55(surname) +#: chgpasswd.8.xml:51(surname) chfn.1.xml:54(surname) chage.1.xml:52(surname) msgid "François" msgstr "" @@ -163,14 +160,13 @@ msgstr "" #: newusers.8.xml:68(contrib) newgrp.1.xml:54(contrib) #: logoutd.8.xml:53(contrib) login.defs.5.xml:118(contrib) #: login.access.5.xml:54(contrib) login.1.xml:86(contrib) -#: limits.5.xml:55(contrib) lastlog.8.xml:54(contrib) -#: gshadow.5.xml:42(contrib) grpck.8.xml:54(contrib) groups.1.xml:53(contrib) -#: groupmod.8.xml:54(contrib) groupmems.8.xml:57(contrib) -#: groupdel.8.xml:54(contrib) groupadd.8.xml:56(contrib) -#: gpasswd.1.xml:58(contrib) faillog.8.xml:53(contrib) -#: faillog.5.xml:53(contrib) expiry.1.xml:57(contrib) chsh.1.xml:56(contrib) -#: chpasswd.8.xml:57(contrib) chgpasswd.8.xml:53(contrib) -#: chfn.1.xml:56(contrib) chage.1.xml:54(contrib) +#: limits.5.xml:55(contrib) lastlog.8.xml:54(contrib) gshadow.5.xml:42(contrib) +#: grpck.8.xml:54(contrib) groups.1.xml:53(contrib) groupmod.8.xml:54(contrib) +#: groupmems.8.xml:57(contrib) groupdel.8.xml:54(contrib) +#: groupadd.8.xml:56(contrib) gpasswd.1.xml:58(contrib) +#: faillog.8.xml:53(contrib) faillog.5.xml:53(contrib) expiry.1.xml:57(contrib) +#: chsh.1.xml:56(contrib) chpasswd.8.xml:57(contrib) +#: chgpasswd.8.xml:53(contrib) chfn.1.xml:56(contrib) chage.1.xml:54(contrib) msgid "shadow-utils maintainer, 2007 - now" msgstr "" @@ -248,14 +244,13 @@ msgstr "redigera lösenordet, grupp, skugglösenord eller skuggruppfil" #: useradd.8.xml:88(replaceable) useradd.8.xml:100(replaceable) #: su.1.xml:88(replaceable) pwconv.8.xml:81(replaceable) #: pwconv.8.xml:87(replaceable) pwconv.8.xml:93(replaceable) -#: pwconv.8.xml:99(replaceable) pwck.8.xml:77(arg) -#: passwd.1.xml:79(replaceable) newusers.8.xml:87(replaceable) -#: lastlog.8.xml:73(replaceable) grpck.8.xml:72(arg) -#: groupmod.8.xml:73(replaceable) groupdel.8.xml:73(replaceable) -#: groupadd.8.xml:75(replaceable) faillog.8.xml:72(replaceable) -#: chsh.1.xml:75(replaceable) chpasswd.8.xml:76(replaceable) -#: chgpasswd.8.xml:72(replaceable) chfn.1.xml:75(replaceable) -#: chage.1.xml:72(replaceable) +#: pwconv.8.xml:99(replaceable) pwck.8.xml:77(arg) passwd.1.xml:79(replaceable) +#: newusers.8.xml:87(replaceable) lastlog.8.xml:73(replaceable) +#: grpck.8.xml:72(arg) groupmod.8.xml:73(replaceable) +#: groupdel.8.xml:73(replaceable) groupadd.8.xml:75(replaceable) +#: faillog.8.xml:72(replaceable) chsh.1.xml:75(replaceable) +#: chpasswd.8.xml:76(replaceable) chgpasswd.8.xml:72(replaceable) +#: chfn.1.xml:75(replaceable) chage.1.xml:72(replaceable) msgid "options" msgstr "flaggor" @@ -305,11 +300,10 @@ msgstr "" #: useradd.8.xml:124(title) su.1.xml:145(title) pwconv.8.xml:187(title) #: pwck.8.xml:176(title) passwd.1.xml:174(title) newusers.8.xml:265(title) #: login.1.xml:210(title) lastlog.8.xml:91(title) grpck.8.xml:147(title) -#: groupmod.8.xml:89(title) groupmems.8.xml:100(title) -#: groupdel.8.xml:88(title) groupadd.8.xml:93(title) gpasswd.1.xml:134(title) -#: faillog.8.xml:89(title) expiry.1.xml:91(title) chsh.1.xml:95(title) -#: chpasswd.8.xml:130(title) chgpasswd.8.xml:105(title) chfn.1.xml:111(title) -#: chage.1.xml:91(title) +#: groupmod.8.xml:89(title) groupmems.8.xml:100(title) groupdel.8.xml:88(title) +#: groupadd.8.xml:93(title) gpasswd.1.xml:134(title) faillog.8.xml:89(title) +#: expiry.1.xml:91(title) chsh.1.xml:95(title) chpasswd.8.xml:130(title) +#: chgpasswd.8.xml:105(title) chfn.1.xml:111(title) chage.1.xml:91(title) msgid "OPTIONS" msgstr "FLAGGOR" @@ -331,7 +325,7 @@ msgstr "Redigera gruppdatabasen." #: vipw.8.xml:120(term) userdel.8.xml:123(term) useradd.8.xml:266(term) #: pwconv.8.xml:195(term) pwck.8.xml:186(term) passwd.1.xml:214(term) -#: newusers.8.xml:283(term) lastlog.8.xml:107(term) grpck.8.xml:157(term) +#: newusers.8.xml:283(term) lastlog.8.xml:118(term) grpck.8.xml:157(term) #: groupmod.8.xml:129(term) groupmems.8.xml:142(term) groupdel.8.xml:95(term) #: groupadd.8.xml:131(term) gpasswd.1.xml:173(term) faillog.8.xml:122(term) #: expiry.1.xml:112(term) chsh.1.xml:101(term) chpasswd.8.xml:171(term) @@ -341,7 +335,7 @@ msgstr "<option>-h</option>, <option>--help</option>" #: vipw.8.xml:122(para) userdel.8.xml:125(para) useradd.8.xml:268(para) #: pwconv.8.xml:197(para) pwck.8.xml:188(para) passwd.1.xml:216(para) -#: newusers.8.xml:285(para) lastlog.8.xml:111(para) grpck.8.xml:159(para) +#: newusers.8.xml:285(para) lastlog.8.xml:122(para) grpck.8.xml:159(para) #: groupmod.8.xml:131(para) groupmems.8.xml:144(para) groupdel.8.xml:97(para) #: groupadd.8.xml:133(para) gpasswd.1.xml:175(para) faillog.8.xml:124(para) #: expiry.1.xml:114(para) chsh.1.xml:103(para) chpasswd.8.xml:173(para) @@ -367,7 +361,7 @@ msgstr "Tyst läge." #: vipw.8.xml:138(term) usermod.8.xml:311(term) userdel.8.xml:146(term) #: useradd.8.xml:445(term) pwconv.8.xml:201(term) pwck.8.xml:209(term) -#: passwd.1.xml:301(term) newusers.8.xml:308(term) lastlog.8.xml:115(term) +#: passwd.1.xml:301(term) newusers.8.xml:308(term) lastlog.8.xml:126(term) #: grpck.8.xml:173(term) groupmod.8.xml:178(term) groupmems.8.xml:165(term) #: groupdel.8.xml:101(term) groupadd.8.xml:204(term) faillog.8.xml:180(term) #: chsh.1.xml:107(term) chpasswd.8.xml:188(term) chgpasswd.8.xml:146(term) @@ -385,7 +379,7 @@ msgstr "" #: vipw.8.xml:142(para) usermod.8.xml:315(para) userdel.8.xml:150(para) #: useradd.8.xml:449(para) pwconv.8.xml:205(para) pwck.8.xml:213(para) -#: passwd.1.xml:305(para) newusers.8.xml:312(para) lastlog.8.xml:119(para) +#: passwd.1.xml:305(para) newusers.8.xml:312(para) lastlog.8.xml:130(para) #: grpck.8.xml:177(para) groupmod.8.xml:182(para) groupmems.8.xml:169(para) #: groupdel.8.xml:105(para) groupadd.8.xml:208(para) gpasswd.1.xml:185(para) #: faillog.8.xml:184(para) chsh.1.xml:111(para) chpasswd.8.xml:192(para) @@ -414,18 +408,18 @@ msgstr "<option>-q</option>, <option>--quiet</option>" msgid "Indicates which user's tcb shadow file to edit." msgstr "" -#: vipw.8.xml:165(title) usermod.8.xml:497(title) userdel.8.xml:171(title) +#: vipw.8.xml:165(title) usermod.8.xml:496(title) userdel.8.xml:171(title) #: useradd.8.xml:647(title) su.1.xml:339(title) sg.1.xml:98(title) #: pwconv.8.xml:227(title) pwck.8.xml:252(title) passwd.1.xml:390(title) #: newusers.8.xml:362(title) newgrp.1.xml:109(title) login.1.xml:294(title) #: grpck.8.xml:209(title) groupmod.8.xml:193(title) groupmems.8.xml:199(title) -#: groupdel.8.xml:128(title) groupadd.8.xml:219(title) -#: gpasswd.1.xml:264(title) chsh.1.xml:154(title) chpasswd.8.xml:239(title) -#: chgpasswd.8.xml:198(title) chfn.1.xml:193(title) chage.1.xml:244(title) +#: groupdel.8.xml:128(title) groupadd.8.xml:219(title) gpasswd.1.xml:264(title) +#: chsh.1.xml:154(title) chpasswd.8.xml:239(title) chgpasswd.8.xml:198(title) +#: chfn.1.xml:193(title) chage.1.xml:244(title) msgid "CONFIGURATION" msgstr "" -#: vipw.8.xml:166(para) usermod.8.xml:498(para) userdel.8.xml:172(para) +#: vipw.8.xml:166(para) usermod.8.xml:497(para) userdel.8.xml:172(para) #: useradd.8.xml:648(para) su.1.xml:340(para) sg.1.xml:99(para) #: pwck.8.xml:253(para) passwd.1.xml:391(para) newusers.8.xml:363(para) #: newgrp.1.xml:110(para) login.1.xml:295(para) grpck.8.xml:210(para) @@ -483,37 +477,35 @@ msgstr "HISTORIK" msgid "Editor to be used if <option>VISUAL</option> is not set." msgstr "" -#: vipw.8.xml:195(title) usermod.8.xml:514(title) userdel.8.xml:188(title) +#: vipw.8.xml:195(title) usermod.8.xml:513(title) userdel.8.xml:188(title) #: useradd.8.xml:675(title) suauth.5.xml:193(title) su.1.xml:367(title) #: sg.1.xml:110(title) shadow.5.xml:255(title) shadow.3.xml:226(title) #: pwconv.8.xml:250(title) pwck.8.xml:269(title) porttime.5.xml:130(title) #: passwd.5.xml:141(title) passwd.1.xml:408(title) newusers.8.xml:397(title) #: newgrp.1.xml:121(title) logoutd.8.xml:89(title) -#: login.access.5.xml:121(title) login.1.xml:338(title) -#: limits.5.xml:196(title) lastlog.8.xml:182(title) gshadow.5.xml:156(title) -#: grpck.8.xml:221(title) groups.1.xml:100(title) groupmod.8.xml:205(title) -#: groupmems.8.xml:211(title) groupdel.8.xml:140(title) -#: groupadd.8.xml:233(title) gpasswd.1.xml:279(title) faillog.8.xml:243(title) -#: faillog.5.xml:96(title) expiry.1.xml:121(title) chsh.1.xml:167(title) -#: chpasswd.8.xml:255(title) chgpasswd.8.xml:213(title) chfn.1.xml:207(title) -#: chage.1.xml:256(title) +#: login.access.5.xml:121(title) login.1.xml:338(title) limits.5.xml:196(title) +#: lastlog.8.xml:204(title) gshadow.5.xml:156(title) grpck.8.xml:221(title) +#: groups.1.xml:100(title) groupmod.8.xml:205(title) groupmems.8.xml:211(title) +#: groupdel.8.xml:140(title) groupadd.8.xml:233(title) gpasswd.1.xml:279(title) +#: faillog.8.xml:243(title) faillog.5.xml:96(title) expiry.1.xml:121(title) +#: chsh.1.xml:167(title) chpasswd.8.xml:255(title) chgpasswd.8.xml:213(title) +#: chfn.1.xml:207(title) chage.1.xml:256(title) msgid "FILES" msgstr "FILER" -#: vipw.8.xml:198(filename) usermod.8.xml:517(filename) +#: vipw.8.xml:198(filename) usermod.8.xml:516(filename) #: userdel.8.xml:191(filename) useradd.8.xml:690(filename) -#: sg.1.xml:125(filename) pwck.8.xml:272(filename) -#: newusers.8.xml:412(filename) newgrp.1.xml:136(filename) -#: gshadow.5.xml:159(filename) grpck.8.xml:224(filename) -#: groups.1.xml:103(filename) groupmod.8.xml:208(filename) -#: groupmems.8.xml:214(filename) groupdel.8.xml:143(filename) -#: groupadd.8.xml:236(filename) gpasswd.1.xml:72(filename) -#: gpasswd.1.xml:75(filename) gpasswd.1.xml:282(filename) -#: chgpasswd.8.xml:216(filename) +#: sg.1.xml:125(filename) pwck.8.xml:272(filename) newusers.8.xml:412(filename) +#: newgrp.1.xml:136(filename) gshadow.5.xml:159(filename) +#: grpck.8.xml:224(filename) groups.1.xml:103(filename) +#: groupmod.8.xml:208(filename) groupmems.8.xml:214(filename) +#: groupdel.8.xml:143(filename) groupadd.8.xml:236(filename) +#: gpasswd.1.xml:72(filename) gpasswd.1.xml:75(filename) +#: gpasswd.1.xml:282(filename) chgpasswd.8.xml:216(filename) msgid "/etc/group" msgstr "/etc/group" -#: vipw.8.xml:200(para) usermod.8.xml:519(para) userdel.8.xml:193(para) +#: vipw.8.xml:200(para) usermod.8.xml:518(para) userdel.8.xml:193(para) #: useradd.8.xml:692(para) sg.1.xml:127(para) pwck.8.xml:274(para) #: newusers.8.xml:414(para) newgrp.1.xml:138(para) gshadow.5.xml:161(para) #: grpck.8.xml:226(para) groups.1.xml:105(para) groupmod.8.xml:210(para) @@ -522,7 +514,7 @@ msgstr "/etc/group" msgid "Group account information." msgstr "Gruppkontoinformation." -#: vipw.8.xml:204(filename) usermod.8.xml:523(filename) +#: vipw.8.xml:204(filename) usermod.8.xml:522(filename) #: useradd.8.xml:696(filename) sg.1.xml:131(filename) #: newusers.8.xml:418(filename) newgrp.1.xml:142(filename) #: gshadow.5.xml:165(filename) grpck.8.xml:230(filename) @@ -533,7 +525,7 @@ msgstr "Gruppkontoinformation." msgid "/etc/gshadow" msgstr "/etc/gshadow" -#: vipw.8.xml:206(para) usermod.8.xml:525(para) useradd.8.xml:698(para) +#: vipw.8.xml:206(para) usermod.8.xml:524(para) useradd.8.xml:698(para) #: sg.1.xml:133(para) newusers.8.xml:420(para) newgrp.1.xml:144(para) #: gshadow.5.xml:167(para) grpck.8.xml:232(para) groupmod.8.xml:216(para) #: groupdel.8.xml:151(para) groupadd.8.xml:244(para) gpasswd.1.xml:290(para) @@ -541,7 +533,7 @@ msgstr "/etc/gshadow" msgid "Secure group account information." msgstr "Säker gruppkontoinformation." -#: vipw.8.xml:210(filename) usermod.8.xml:535(filename) +#: vipw.8.xml:210(filename) usermod.8.xml:534(filename) #: userdel.8.xml:203(filename) useradd.8.xml:678(filename) #: su.1.xml:370(filename) sg.1.xml:113(filename) shadow.5.xml:258(filename) #: pwck.8.xml:278(filename) passwd.5.xml:144(filename) @@ -554,7 +546,7 @@ msgstr "Säker gruppkontoinformation." msgid "/etc/passwd" msgstr "/etc/passwd" -#: vipw.8.xml:212(para) usermod.8.xml:537(para) userdel.8.xml:205(para) +#: vipw.8.xml:212(para) usermod.8.xml:536(para) userdel.8.xml:205(para) #: useradd.8.xml:680(para) su.1.xml:372(para) sg.1.xml:115(para) #: shadow.5.xml:260(para) pwck.8.xml:280(para) passwd.5.xml:146(para) #: passwd.1.xml:413(para) newusers.8.xml:402(para) newgrp.1.xml:126(para) @@ -564,7 +556,7 @@ msgstr "/etc/passwd" msgid "User account information." msgstr "Användarkontoinformation." -#: vipw.8.xml:216(filename) usermod.8.xml:541(filename) +#: vipw.8.xml:216(filename) usermod.8.xml:540(filename) #: userdel.8.xml:209(filename) useradd.8.xml:684(filename) #: su.1.xml:376(filename) sg.1.xml:119(filename) shadow.5.xml:264(filename) #: shadow.3.xml:229(filename) pwck.8.xml:284(filename) @@ -575,7 +567,7 @@ msgstr "Användarkontoinformation." msgid "/etc/shadow" msgstr "/etc/shadow" -#: vipw.8.xml:218(para) usermod.8.xml:543(para) userdel.8.xml:211(para) +#: vipw.8.xml:218(para) usermod.8.xml:542(para) userdel.8.xml:211(para) #: useradd.8.xml:686(para) su.1.xml:378(para) sg.1.xml:121(para) #: shadow.5.xml:266(para) shadow.3.xml:231(para) pwck.8.xml:286(para) #: passwd.1.xml:419(para) newusers.8.xml:408(para) newgrp.1.xml:132(para) @@ -584,7 +576,7 @@ msgstr "/etc/shadow" msgid "Secure user account information." msgstr "Säker användarkontoinformation." -#: vipw.8.xml:225(title) usermod.8.xml:562(title) userdel.8.xml:308(title) +#: vipw.8.xml:225(title) usermod.8.xml:561(title) userdel.8.xml:308(title) #: useradd.8.xml:804(title) suauth.5.xml:222(title) su.1.xml:438(title) #: sg.1.xml:140(title) shadow.5.xml:283(title) shadow.3.xml:238(title) #: pwconv.8.xml:262(title) pwck.8.xml:344(title) porttime.5.xml:142(title) @@ -659,15 +651,15 @@ msgstr "" #: usermod.8.xml:46(surname) userdel.8.xml:46(surname) #: useradd.8.xml:57(surname) su.1.xml:57(surname) sg.1.xml:41(surname) #: shadow.5.xml:40(surname) shadow.3.xml:40(surname) pwck.8.xml:46(surname) -#: porttime.5.xml:40(surname) passwd.5.xml:40(surname) -#: passwd.1.xml:47(surname) newusers.8.xml:55(surname) -#: newgrp.1.xml:41(surname) logoutd.8.xml:40(surname) -#: login.defs.5.xml:105(surname) login.1.xml:73(surname) -#: lastlog.8.xml:41(surname) grpck.8.xml:41(surname) groups.1.xml:40(surname) -#: groupmod.8.xml:41(surname) groupdel.8.xml:41(surname) -#: groupadd.8.xml:43(surname) faillog.8.xml:40(surname) -#: faillog.5.xml:40(surname) expiry.1.xml:44(surname) chsh.1.xml:43(surname) -#: chpasswd.8.xml:44(surname) chfn.1.xml:43(surname) chage.1.xml:41(surname) +#: porttime.5.xml:40(surname) passwd.5.xml:40(surname) passwd.1.xml:47(surname) +#: newusers.8.xml:55(surname) newgrp.1.xml:41(surname) +#: logoutd.8.xml:40(surname) login.defs.5.xml:105(surname) +#: login.1.xml:73(surname) lastlog.8.xml:41(surname) grpck.8.xml:41(surname) +#: groups.1.xml:40(surname) groupmod.8.xml:41(surname) +#: groupdel.8.xml:41(surname) groupadd.8.xml:43(surname) +#: faillog.8.xml:40(surname) faillog.5.xml:40(surname) expiry.1.xml:44(surname) +#: chsh.1.xml:43(surname) chpasswd.8.xml:44(surname) chfn.1.xml:43(surname) +#: chage.1.xml:41(surname) msgid "Haugh" msgstr "" @@ -1188,9 +1180,9 @@ msgstr "" #: usermod.8.xml:478(title) userdel.8.xml:281(title) useradd.8.xml:623(title) #: su.1.xml:331(title) shadow.3.xml:218(title) passwd.1.xml:372(title) -#: newusers.8.xml:350(title) login.1.xml:260(title) lastlog.8.xml:194(title) -#: groupdel.8.xml:116(title) groupadd.8.xml:257(title) -#: gpasswd.1.xml:252(title) faillog.8.xml:232(title) chpasswd.8.xml:231(title) +#: newusers.8.xml:350(title) login.1.xml:260(title) lastlog.8.xml:216(title) +#: groupdel.8.xml:116(title) groupadd.8.xml:257(title) gpasswd.1.xml:252(title) +#: faillog.8.xml:232(title) chpasswd.8.xml:231(title) #: chgpasswd.8.xml:186(title) msgid "CAVEATS" msgstr "TÄNK PÅ" @@ -1200,17 +1192,17 @@ msgid "" "You must make certain that the named user is not executing any processes " "when this command is being executed if the user's numerical user ID, the " "user's name, or the user's home directory is being changed. " -"<command>usermod</command> checks this on Linux, but only check if the user " -"is logged in according to utmp on other architectures." +"<command>usermod</command> checks this on Linux. On other platforms it only " +"uses utmp to check if the user is logged in." msgstr "" -#: usermod.8.xml:487(para) +#: usermod.8.xml:486(para) msgid "" "You must change the owner of any <command>crontab</command> files or " "<command>at</command> jobs manually." msgstr "" -#: usermod.8.xml:491(para) +#: usermod.8.xml:490(para) msgid "You must make any changes involving NIS on the NIS server." msgstr "" @@ -1429,7 +1421,7 @@ msgid "" "algorithm: <placeholder-1/>" msgstr "" -#: usermod.8.xml:529(filename) userdel.8.xml:197(filename) +#: usermod.8.xml:528(filename) userdel.8.xml:197(filename) #: useradd.8.xml:726(filename) su.1.xml:382(filename) #: pwconv.8.xml:253(filename) passwd.1.xml:423(filename) #: newusers.8.xml:424(filename) login.access.5.xml:124(filename) @@ -1440,7 +1432,7 @@ msgstr "" msgid "/etc/login.defs" msgstr "/etc/login.defs" -#: usermod.8.xml:531(para) userdel.8.xml:199(para) useradd.8.xml:728(para) +#: usermod.8.xml:530(para) userdel.8.xml:199(para) useradd.8.xml:728(para) #: su.1.xml:384(para) pwconv.8.xml:255(para) passwd.1.xml:425(para) #: newusers.8.xml:426(para) login.access.5.xml:126(para) login.1.xml:391(para) #: groupmod.8.xml:222(para) groupadd.8.xml:250(para) chsh.1.xml:184(para) @@ -1448,31 +1440,31 @@ msgstr "/etc/login.defs" msgid "Shadow password suite configuration." msgstr "" -#: usermod.8.xml:547(filename) userdel.8.xml:215(filename) +#: usermod.8.xml:546(filename) userdel.8.xml:215(filename) #: useradd.8.xml:714(filename) newusers.8.xml:436(filename) #, fuzzy #| msgid "/etc/suauth" msgid "/etc/subgid" msgstr "/etc/suauth" -#: usermod.8.xml:549(para) userdel.8.xml:217(para) useradd.8.xml:716(para) +#: usermod.8.xml:548(para) userdel.8.xml:217(para) useradd.8.xml:716(para) #: newusers.8.xml:438(para) msgid "Per user subordinate group IDs." msgstr "" -#: usermod.8.xml:553(filename) userdel.8.xml:221(filename) +#: usermod.8.xml:552(filename) userdel.8.xml:221(filename) #: useradd.8.xml:720(filename) newusers.8.xml:442(filename) #, fuzzy #| msgid "/etc/suauth" msgid "/etc/subuid" msgstr "/etc/suauth" -#: usermod.8.xml:555(para) userdel.8.xml:223(para) useradd.8.xml:722(para) +#: usermod.8.xml:554(para) userdel.8.xml:223(para) useradd.8.xml:722(para) #: newusers.8.xml:444(para) msgid "Per user subordinate user IDs." msgstr "" -#: usermod.8.xml:563(para) +#: usermod.8.xml:562(para) #, fuzzy #| msgid "" #| "<citerefentry><refentrytitle>chfn</refentrytitle><manvolnum>1</" @@ -1708,9 +1700,8 @@ msgstr "lyckad" #: passwd.1.xml:449(replaceable) newgrp.1.xml:59(manvolnum) #: login.1.xml:91(manvolnum) grpck.8.xml:256(replaceable) #: groups.1.xml:58(manvolnum) gpasswd.1.xml:63(manvolnum) -#: expiry.1.xml:62(manvolnum) chsh.1.xml:61(manvolnum) -#: chfn.1.xml:61(manvolnum) chage.1.xml:59(manvolnum) -#: chage.1.xml:289(replaceable) +#: expiry.1.xml:62(manvolnum) chsh.1.xml:61(manvolnum) chfn.1.xml:61(manvolnum) +#: chage.1.xml:59(manvolnum) chage.1.xml:289(replaceable) msgid "1" msgstr "1" @@ -2072,7 +2063,7 @@ msgid "" "<option>PASS_MAX_DAYS</option> and others). <placeholder-1/> Example: " "<option>-K</option> <replaceable>PASS_MAX_DAYS</" "replaceable>=<replaceable>-1</replaceable> can be used when creating system " -"account to turn off password ageing, even though system account has no " +"account to turn off password aging, even though system account has no " "password at all. Multiple <option>-K</option> options can be specified, e." "g.: <option>-K</option> <replaceable>UID_MIN</" "replaceable>=<replaceable>100</replaceable> <option>-K</option> " @@ -2101,7 +2092,7 @@ msgstr "" #: useradd.8.xml:327(para) msgid "" "By default, the user's entries in the lastlog and faillog databases are " -"resetted to avoid reusing the entry from a previously deleted user." +"reset to avoid reusing the entry from a previously deleted user." msgstr "" #: useradd.8.xml:335(term) @@ -2121,11 +2112,11 @@ msgid "" "is not enabled, no home directories are created." msgstr "" -#: useradd.8.xml:354(option) +#: useradd.8.xml:353(term) #, fuzzy -#| msgid "-" -msgid "-M" -msgstr "-" +#| msgid "<option>-m</option>, <option>--create-home</option>" +msgid "<option>-M</option>, <option>--no-create-home</option>" +msgstr "<option>-m</option>, <option>--create-home</option>" #: useradd.8.xml:357(para) msgid "" @@ -2204,10 +2195,10 @@ msgstr "" #: useradd.8.xml:434(para) msgid "" "Note that <command>useradd</command> will not create a home directory for " -"such an user, regardless of the default setting in <filename>/etc/login." -"defs</filename> (<option>CREATE_HOME</option>). You have to specify the " -"<option>-m</option> options if you want a home directory for a system " -"account to be created." +"such a user, regardless of the default setting in <filename>/etc/login.defs</" +"filename> (<option>CREATE_HOME</option>). You have to specify the <option>-" +"m</option> options if you want a home directory for a system account to be " +"created." msgstr "" #: useradd.8.xml:461(para) @@ -2764,7 +2755,7 @@ msgstr "" #, no-wrap msgid "" "\n" -" 1) the user su is targetting\n" +" 1) the user su is targeting\n" " " msgstr "" @@ -2809,14 +2800,23 @@ msgstr "" "emphasis> följt av en lista med användarnamn separerade med \",\"" #: suauth.5.xml:107(para) +#, fuzzy +#| msgid "" +#| "from-id is formatted the same as to-id except the extra word " +#| "<emphasis>GROUP</emphasis> is recognised. <emphasis>ALL EXCEPT GROUP</" +#| "emphasis> is perfectly valid too. Following <emphasis>GROUP</emphasis> " +#| "appears one or more group names, delimited by \",\". It is not sufficient " +#| "to have primary group id of the relevant group, an entry in " +#| "<citerefentry><refentrytitle>/etc/group</refentrytitle><manvolnum>5</" +#| "manvolnum></citerefentry> is neccessary." msgid "" "from-id is formatted the same as to-id except the extra word " -"<emphasis>GROUP</emphasis> is recognised. <emphasis>ALL EXCEPT GROUP</" +"<emphasis>GROUP</emphasis> is recognized. <emphasis>ALL EXCEPT GROUP</" "emphasis> is perfectly valid too. Following <emphasis>GROUP</emphasis> " "appears one or more group names, delimited by \",\". It is not sufficient to " "have primary group id of the relevant group, an entry in " "<citerefentry><refentrytitle>/etc/group</refentrytitle><manvolnum>5</" -"manvolnum></citerefentry> is neccessary." +"manvolnum></citerefentry> is necessary." msgstr "" "från-id är formaterad på samma sätt som till-id förutom att det extra ordet " "<emphasis>GROUP</emphasis> känns igen. <emphasis>ALL EXCEPT GROUP</emphasis> " @@ -2954,9 +2954,8 @@ msgstr "" "citerefentry>." #: su.1.xml:58(contrib) shadow.5.xml:41(contrib) shadow.3.xml:41(contrib) -#: porttime.5.xml:41(contrib) passwd.5.xml:41(contrib) -#: passwd.1.xml:48(contrib) login.1.xml:74(contrib) faillog.8.xml:41(contrib) -#: faillog.5.xml:41(contrib) +#: porttime.5.xml:41(contrib) passwd.5.xml:41(contrib) passwd.1.xml:48(contrib) +#: login.1.xml:74(contrib) faillog.8.xml:41(contrib) faillog.5.xml:41(contrib) msgid "Creation, 1989" msgstr "" @@ -3065,7 +3064,7 @@ msgstr "Ange ett kommando som ska startas av skalet med <option>-c</option>." #: su.1.xml:158(para) msgid "" "The executed command will have no controlling terminal. This option cannot " -"be used to execute interractive programs which need a controlling TTY." +"be used to execute interactive programs which need a controlling TTY." msgstr "" #: su.1.xml:168(term) @@ -3709,7 +3708,7 @@ msgstr "" #: shadow.5.xml:117(para) gshadow.5.xml:107(para) msgid "" -"A password field which starts with a exclamation mark means that the " +"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." msgstr "" @@ -3729,7 +3728,7 @@ msgstr "" #: shadow.5.xml:134(para) msgid "" "The value 0 has a special meaning, which is that the user should change her " -"pasword the next time she will log in the system." +"password the next time she will log in the system." msgstr "" #: shadow.5.xml:139(para) @@ -3843,7 +3842,7 @@ msgstr "" #: shadow.5.xml:229(para) msgid "" "Note that an account expiration differs from a password expiration. In case " -"of an acount expiration, the user shall not be allowed to login. In case of " +"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." msgstr "" @@ -4141,18 +4140,15 @@ msgstr "" msgid "pwconv" msgstr "pwconv" -#: pwconv.8.xml:71(refname) pwconv.8.xml:85(command) -#: login.defs.5.xml:438(term) +#: pwconv.8.xml:71(refname) pwconv.8.xml:85(command) login.defs.5.xml:438(term) msgid "pwunconv" msgstr "pwunconv" -#: pwconv.8.xml:72(refname) pwconv.8.xml:91(command) -#: login.defs.5.xml:340(term) +#: pwconv.8.xml:72(refname) pwconv.8.xml:91(command) login.defs.5.xml:340(term) msgid "grpconv" msgstr "grpconv" -#: pwconv.8.xml:73(refname) pwconv.8.xml:97(command) -#: login.defs.5.xml:346(term) +#: pwconv.8.xml:73(refname) pwconv.8.xml:97(command) login.defs.5.xml:346(term) msgid "grpunconv" msgstr "grpunconv" @@ -4324,8 +4320,7 @@ msgstr "validera integriteten för lösenordsfiler" #: pwck.8.xml:80(replaceable) passwd.5.xml:57(refentrytitle) #: passwd.5.xml:64(refname) passwd.1.xml:64(refentrytitle) -#: passwd.1.xml:71(refname) passwd.1.xml:77(command) -#: login.defs.5.xml:409(term) +#: passwd.1.xml:71(refname) passwd.1.xml:77(command) login.defs.5.xml:409(term) msgid "passwd" msgstr "passwd" @@ -4485,7 +4480,7 @@ msgstr "" msgid "" "Note that when <option>USE_TCB</option> is enabled, you cannot specify an " "alternative <replaceable>shadow</replaceable> file. In future releases, this " -"paramater could be replaced by an alternate TCB directory." +"parameter could be replaced by an alternate TCB directory." msgstr "" #: pwck.8.xml:312(para) @@ -4934,7 +4929,7 @@ msgstr "" #: passwd.1.xml:166(para) msgid "" -"You can find advices on how to choose a strong password on http://en." +"You can find advice on how to choose a strong password on http://en." "wikipedia.org/wiki/Password_strength" msgstr "" @@ -5305,8 +5300,8 @@ msgstr "PASS_MIN_DAYS (nummer)" #: passwd.1.xml:35(para) login.defs.5.xml:35(para) msgid "" "Number of significant characters in the password for crypt(). " -"<option>PASS_MAX_LEN</option> is 8 by default. Don't change unless your crypt" -"() is better. This is ignored if <option>MD5_CRYPT_ENAB</option> set to " +"<option>PASS_MAX_LEN</option> is 8 by default. Don't change unless your " +"crypt() is better. This is ignored if <option>MD5_CRYPT_ENAB</option> set to " "<replaceable>yes</replaceable>." msgstr "" @@ -5478,7 +5473,7 @@ msgstr "HISTORIK" #: nologin.8.xml:91(para) #, fuzzy #| msgid "The <command>nologin</command> command appeared in BSD 4.4." -msgid "The <command>nologin</command> command appearred in BSD 4.4." +msgid "The <command>nologin</command> command appeared in BSD 4.4." msgstr "Kommandot <command>nologin</command> dök upp i BSD 4.4." #: newusers.8.xml:72(refentrytitle) newusers.8.xml:79(refname) @@ -5520,7 +5515,7 @@ msgstr "" #: newusers.8.xml:116(para) msgid "" -"It can be the name of a new user or the name of an existing user (or an user " +"It can be the name of a new user or the name of an existing user (or a user " "created before by <command>newusers</command>). In case of an existing user, " "the user's information will be changed, otherwise a new user will be created." msgstr "" @@ -5549,7 +5544,7 @@ msgstr "" #: newusers.8.xml:144(para) msgid "" -"If the field is empty, an new (unused) UID will be defined automatically by " +"If the field is empty, a new (unused) UID will be defined automatically by " "<command>newusers</command>." msgstr "" @@ -5559,7 +5554,7 @@ msgstr "" #: newusers.8.xml:152(para) msgid "" -"If this field contains the name of an existing user (or the name of an user " +"If this field contains the name of an existing user (or the name of a user " "created before by <command>newusers</command>), the UID of the specified " "user will be used." msgstr "" @@ -6860,7 +6855,9 @@ msgid "D: max data size (KB)" msgstr "D: maximal datastorlek (KB)" #: limits.5.xml:111(para) -msgid "F: maximum filesize (KB)" +#, fuzzy +#| msgid "F: maximum filesize (KB)" +msgid "F: maximum file size (KB)" msgstr "F: maximal filstorlek (KB)" #: limits.5.xml:112(para) @@ -6936,7 +6933,7 @@ msgstr "" #: limits.5.xml:145(para) msgid "" "Be aware that after <emphasis remap=\"I\">username</emphasis> the rest of " -"the line is considered a limit string, thus comments are not allowed. A " +"the line is considered a limit string, thus comments are not allowed. An " "invalid limits string will be rejected (not considered) by the " "<command>login</command> program." msgstr "" @@ -6957,13 +6954,13 @@ msgstr "" #: limits.5.xml:165(para) msgid "" -"If more than one line with limits for an user exist, only the first line for " +"If more than one line with limits for a user exist, only the first line for " "this user will be considered." msgstr "" #: limits.5.xml:170(para) msgid "" -"If no lines are specified for an user, the last <replaceable>@group</" +"If no lines are specified for a user, the last <replaceable>@group</" "replaceable> 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." @@ -7041,7 +7038,33 @@ msgid "" "Print only lastlog records older than <emphasis remap=\"I\">DAYS</emphasis>." msgstr "" -#: lastlog.8.xml:127(term) faillog.8.xml:192(term) +#: lastlog.8.xml:107(term) +#, fuzzy +#| msgid "<option>-q</option>, <option>--quiet</option>" +msgid "<option>-C</option>, <option>--clear</option>" +msgstr "<option>-q</option>, <option>--quiet</option>" + +#: lastlog.8.xml:111(para) +#, fuzzy +#| msgid "<option>-m</option>, <option>--create-home</option>" +msgid "" +"Clear lastlog record of a user. This option can be used only together with " +"<option>-u</option> (<option>--user</option>))." +msgstr "<option>-m</option>, <option>--create-home</option>" + +#: lastlog.8.xml:138(term) +#, fuzzy +#| msgid "<option>-r</option>, <option>--reset</option>" +msgid "<option>-S</option>, <option>--set</option>" +msgstr "<option>-r</option>, <option>--reset</option>" + +#: lastlog.8.xml:142(para) +msgid "" +"Set lastlog record of a user to the current time. This option can be used " +"only together with <option>-u</option> (<option>--user</option>))." +msgstr "" + +#: lastlog.8.xml:149(term) faillog.8.xml:192(term) msgid "" "<option>-t</option>, <option>--time</option> <replaceable>DAYS</" "replaceable>" @@ -7049,13 +7072,13 @@ msgstr "" "<option>-t</option>, <option>--time</option> <replaceable>DAGAR</" "replaceable>" -#: lastlog.8.xml:131(para) +#: lastlog.8.xml:153(para) msgid "" "Print the lastlog records more recent than <emphasis remap=\"I\">DAYS</" "emphasis>." msgstr "" -#: lastlog.8.xml:138(term) faillog.8.xml:202(term) +#: lastlog.8.xml:160(term) faillog.8.xml:202(term) #, fuzzy #| msgid "" #| "<option>-K</option>, <option>--key</option> <replaceable>KEY</" @@ -7067,11 +7090,11 @@ msgstr "" "<option>-K</option>, <option>--key</option> <replaceable>NYCKEL</" "replaceable>=<replaceable>VÄRDE</replaceable>" -#: lastlog.8.xml:142(para) +#: lastlog.8.xml:164(para) msgid "Print the lastlog record of the specified user(s)." msgstr "" -#: lastlog.8.xml:145(para) faillog.8.xml:211(para) +#: lastlog.8.xml:167(para) faillog.8.xml:211(para) msgid "" "The users can be specified by a login name, a numerical user ID, or a " "<replaceable>RANGE</replaceable> of users. This <replaceable>RANGE</" @@ -7080,24 +7103,24 @@ msgid "" "UID_MAX</replaceable>), or a min value (<replaceable>UID_MIN-</replaceable>)." msgstr "" -#: lastlog.8.xml:157(para) +#: lastlog.8.xml:179(para) msgid "" "If the user has never logged in the message <emphasis>** Never logged in**</" "emphasis> will be displayed instead of the port and time." msgstr "" -#: lastlog.8.xml:162(para) +#: lastlog.8.xml:184(para) msgid "" "Only the entries for the current users of the system will be displayed. " "Other entries may exist for users that were deleted previously." msgstr "" -#: lastlog.8.xml:170(title) groups.1.xml:90(title) chsh.1.xml:140(title) +#: lastlog.8.xml:192(title) groups.1.xml:90(title) chsh.1.xml:140(title) #: chage.1.xml:231(title) msgid "NOTE" msgstr "NOTERA" -#: lastlog.8.xml:171(para) +#: lastlog.8.xml:193(para) msgid "" "The <filename>lastlog</filename> file is a database which contains info on " "the last login of each user. You should not rotate it. It is a sparse file, " @@ -7107,15 +7130,15 @@ msgid "" "its real size with \"<command>ls -s</command>\"." msgstr "" -#: lastlog.8.xml:185(filename) +#: lastlog.8.xml:207(filename) msgid "/var/log/lastlog" msgstr "/var/log/lastlog" -#: lastlog.8.xml:187(para) +#: lastlog.8.xml:209(para) msgid "Database times of previous user logins." msgstr "Databastider för tidigare användarinloggningar." -#: lastlog.8.xml:195(para) +#: lastlog.8.xml:217(para) msgid "" "Large gaps in UID numbers will cause the lastlog program to run longer with " "no output to the screen (i.e. if in lastlog database there is no entries for " @@ -7179,7 +7202,7 @@ msgstr "" #| "modified using the <citerefentry><refentrytitle>chfn</" #| "refentrytitle><manvolnum>1</manvolnum></citerefentry> utility." msgid "" -"The password is used when an user who is not a member of the group wants to " +"The password is used when a user who is not a member of the group wants to " "gain the permissions of this group (see <citerefentry><refentrytitle>newgrp</" "refentrytitle><manvolnum>1</manvolnum></citerefentry>)." msgstr "" @@ -7683,7 +7706,7 @@ msgstr "" #: groupmems.8.xml:109(para) #, fuzzy #| msgid "Add a new user to the group membership list." -msgid "Add an user to the group membership list." +msgid "Add a user to the group membership list." msgstr "Lägg till en ny användare till gruppens medlemslista." #: groupmems.8.xml:110(para) groupmems.8.xml:126(para) @@ -8682,7 +8705,7 @@ msgstr "" msgid "" "The default encryption algorithm can be defined for the system with the " "<option>ENCRYPT_METHOD</option> or <option>MD5_CRYPT_ENAB</option> variables " -"of <filename>/etc/login.defs</filename>, and can be overwitten with the " +"of <filename>/etc/login.defs</filename>, and can be overwritten with the " "<option>-e</option>, <option>-m</option>, or <option>-c</option> options." msgstr "" @@ -8697,7 +8720,7 @@ msgstr "" msgid "" "<phrase condition=\"pam\">Except when PAM is used to encrypt the passwords,</" "phrase><command>chpasswd</command> first updates all the passwords in " -"memory, and then commits all the changes to disk if no errors occured for " +"memory, and then commits all the changes to disk if no errors occurred for " "any user." msgstr "" @@ -8861,7 +8884,7 @@ msgstr "" msgid "" "The default encryption algorithm can be defined for the system with the " "<option>ENCRYPT_METHOD</option> variable of <filename>/etc/login.defs</" -"filename>, and can be overwiten with the <option>-e</option>, <option>-m</" +"filename>, and can be overwritten with the <option>-e</option>, <option>-m</" "option>, or <option>-c</option> options." msgstr "" @@ -9207,6 +9230,11 @@ msgstr "" msgid "translator-credits" msgstr "Daniel Nylander <po@danielnylander.se>, 2006." +#, fuzzy +#~| msgid "-" +#~ msgid "-M" +#~ msgstr "-" + #~ msgid "" #~ "<citerefentry><refentrytitle>chfn</refentrytitle><manvolnum>1</" #~ "manvolnum></citerefentry>, <citerefentry><refentrytitle>chsh</" diff --git a/man/po/zh_CN.po b/man/po/zh_CN.po index 7ccc54ba..fee9869a 100644 --- a/man/po/zh_CN.po +++ b/man/po/zh_CN.po @@ -4,7 +4,7 @@ msgid "" msgstr "" "Project-Id-Version: shadow-man-pages VERSION\n" -"POT-Creation-Date: 2013-08-23 01:54+0200\n" +"POT-Creation-Date: 2016-09-18 14:03-0500\n" "PO-Revision-Date: 2013-08-23 01:42+0200\n" "Last-Translator: YunQiang Su <wzssyqa@gmail.com>\n" "Language-Team: Chinese (simplified) <i18n-zh@googlegroups.com>\n" @@ -53,16 +53,15 @@ msgstr "" #: useradd.8.xml:62(surname) suauth.5.xml:45(surname) su.1.xml:62(surname) #: sg.1.xml:46(surname) shadow.5.xml:45(surname) shadow.3.xml:45(surname) #: pwconv.8.xml:51(surname) pwck.8.xml:51(surname) porttime.5.xml:45(surname) -#: passwd.5.xml:45(surname) passwd.1.xml:52(surname) -#: newusers.8.xml:60(surname) newgrp.1.xml:46(surname) -#: logoutd.8.xml:45(surname) login.defs.5.xml:110(surname) -#: login.access.5.xml:46(surname) login.1.xml:78(surname) -#: limits.5.xml:47(surname) lastlog.8.xml:46(surname) grpck.8.xml:46(surname) -#: groups.1.xml:45(surname) groupmod.8.xml:46(surname) +#: passwd.5.xml:45(surname) passwd.1.xml:52(surname) newusers.8.xml:60(surname) +#: newgrp.1.xml:46(surname) logoutd.8.xml:45(surname) +#: login.defs.5.xml:110(surname) login.access.5.xml:46(surname) +#: login.1.xml:78(surname) limits.5.xml:47(surname) lastlog.8.xml:46(surname) +#: grpck.8.xml:46(surname) groups.1.xml:45(surname) groupmod.8.xml:46(surname) #: groupmems.8.xml:49(surname) groupdel.8.xml:46(surname) #: groupadd.8.xml:48(surname) gpasswd.1.xml:50(surname) -#: faillog.8.xml:45(surname) faillog.5.xml:45(surname) -#: expiry.1.xml:49(surname) chsh.1.xml:48(surname) chpasswd.8.xml:49(surname) +#: faillog.8.xml:45(surname) faillog.5.xml:45(surname) expiry.1.xml:49(surname) +#: chsh.1.xml:48(surname) chpasswd.8.xml:49(surname) #: chgpasswd.8.xml:45(surname) chfn.1.xml:48(surname) chage.1.xml:46(surname) msgid "Kłoczko" msgstr "" @@ -87,17 +86,16 @@ msgstr "" #: useradd.8.xml:64(contrib) suauth.5.xml:47(contrib) su.1.xml:64(contrib) #: sg.1.xml:48(contrib) shadow.5.xml:47(contrib) shadow.3.xml:47(contrib) #: pwconv.8.xml:53(contrib) pwck.8.xml:53(contrib) porttime.5.xml:47(contrib) -#: passwd.5.xml:47(contrib) passwd.1.xml:54(contrib) -#: newusers.8.xml:62(contrib) newgrp.1.xml:48(contrib) -#: logoutd.8.xml:47(contrib) login.defs.5.xml:112(contrib) -#: login.access.5.xml:48(contrib) login.1.xml:80(contrib) -#: limits.5.xml:49(contrib) lastlog.8.xml:48(contrib) grpck.8.xml:48(contrib) -#: groups.1.xml:47(contrib) groupmod.8.xml:48(contrib) +#: passwd.5.xml:47(contrib) passwd.1.xml:54(contrib) newusers.8.xml:62(contrib) +#: newgrp.1.xml:48(contrib) logoutd.8.xml:47(contrib) +#: login.defs.5.xml:112(contrib) login.access.5.xml:48(contrib) +#: login.1.xml:80(contrib) limits.5.xml:49(contrib) lastlog.8.xml:48(contrib) +#: grpck.8.xml:48(contrib) groups.1.xml:47(contrib) groupmod.8.xml:48(contrib) #: groupmems.8.xml:51(contrib) groupdel.8.xml:48(contrib) #: groupadd.8.xml:50(contrib) gpasswd.1.xml:52(contrib) -#: faillog.8.xml:47(contrib) faillog.5.xml:47(contrib) -#: expiry.1.xml:51(contrib) chsh.1.xml:50(contrib) chpasswd.8.xml:51(contrib) -#: chfn.1.xml:50(contrib) chage.1.xml:48(contrib) +#: faillog.8.xml:47(contrib) faillog.5.xml:47(contrib) expiry.1.xml:51(contrib) +#: chsh.1.xml:50(contrib) chpasswd.8.xml:51(contrib) chfn.1.xml:50(contrib) +#: chage.1.xml:48(contrib) msgid "shadow-utils maintainer, 2000 - 2007" msgstr "" @@ -131,14 +129,13 @@ msgstr "" #: newusers.8.xml:66(surname) newgrp.1.xml:52(surname) #: logoutd.8.xml:51(surname) login.defs.5.xml:116(surname) #: login.access.5.xml:52(surname) login.1.xml:84(surname) -#: limits.5.xml:53(surname) lastlog.8.xml:52(surname) -#: gshadow.5.xml:39(surname) grpck.8.xml:52(surname) groups.1.xml:51(surname) -#: groupmod.8.xml:52(surname) groupmems.8.xml:55(surname) -#: groupdel.8.xml:52(surname) groupadd.8.xml:54(surname) -#: gpasswd.1.xml:56(surname) faillog.8.xml:51(surname) -#: faillog.5.xml:51(surname) expiry.1.xml:55(surname) chsh.1.xml:54(surname) -#: chpasswd.8.xml:55(surname) chgpasswd.8.xml:51(surname) -#: chfn.1.xml:54(surname) chage.1.xml:52(surname) +#: limits.5.xml:53(surname) lastlog.8.xml:52(surname) gshadow.5.xml:39(surname) +#: grpck.8.xml:52(surname) groups.1.xml:51(surname) groupmod.8.xml:52(surname) +#: groupmems.8.xml:55(surname) groupdel.8.xml:52(surname) +#: groupadd.8.xml:54(surname) gpasswd.1.xml:56(surname) +#: faillog.8.xml:51(surname) faillog.5.xml:51(surname) expiry.1.xml:55(surname) +#: chsh.1.xml:54(surname) chpasswd.8.xml:55(surname) +#: chgpasswd.8.xml:51(surname) chfn.1.xml:54(surname) chage.1.xml:52(surname) msgid "François" msgstr "" @@ -167,14 +164,13 @@ msgstr "" #: newusers.8.xml:68(contrib) newgrp.1.xml:54(contrib) #: logoutd.8.xml:53(contrib) login.defs.5.xml:118(contrib) #: login.access.5.xml:54(contrib) login.1.xml:86(contrib) -#: limits.5.xml:55(contrib) lastlog.8.xml:54(contrib) -#: gshadow.5.xml:42(contrib) grpck.8.xml:54(contrib) groups.1.xml:53(contrib) -#: groupmod.8.xml:54(contrib) groupmems.8.xml:57(contrib) -#: groupdel.8.xml:54(contrib) groupadd.8.xml:56(contrib) -#: gpasswd.1.xml:58(contrib) faillog.8.xml:53(contrib) -#: faillog.5.xml:53(contrib) expiry.1.xml:57(contrib) chsh.1.xml:56(contrib) -#: chpasswd.8.xml:57(contrib) chgpasswd.8.xml:53(contrib) -#: chfn.1.xml:56(contrib) chage.1.xml:54(contrib) +#: limits.5.xml:55(contrib) lastlog.8.xml:54(contrib) gshadow.5.xml:42(contrib) +#: grpck.8.xml:54(contrib) groups.1.xml:53(contrib) groupmod.8.xml:54(contrib) +#: groupmems.8.xml:57(contrib) groupdel.8.xml:54(contrib) +#: groupadd.8.xml:56(contrib) gpasswd.1.xml:58(contrib) +#: faillog.8.xml:53(contrib) faillog.5.xml:53(contrib) expiry.1.xml:57(contrib) +#: chsh.1.xml:56(contrib) chpasswd.8.xml:57(contrib) +#: chgpasswd.8.xml:53(contrib) chfn.1.xml:56(contrib) chage.1.xml:54(contrib) msgid "shadow-utils maintainer, 2007 - now" msgstr "" @@ -245,14 +241,13 @@ msgstr "编辑密码、组、影子密码或影子组文件。" #: useradd.8.xml:88(replaceable) useradd.8.xml:100(replaceable) #: su.1.xml:88(replaceable) pwconv.8.xml:81(replaceable) #: pwconv.8.xml:87(replaceable) pwconv.8.xml:93(replaceable) -#: pwconv.8.xml:99(replaceable) pwck.8.xml:77(arg) -#: passwd.1.xml:79(replaceable) newusers.8.xml:87(replaceable) -#: lastlog.8.xml:73(replaceable) grpck.8.xml:72(arg) -#: groupmod.8.xml:73(replaceable) groupdel.8.xml:73(replaceable) -#: groupadd.8.xml:75(replaceable) faillog.8.xml:72(replaceable) -#: chsh.1.xml:75(replaceable) chpasswd.8.xml:76(replaceable) -#: chgpasswd.8.xml:72(replaceable) chfn.1.xml:75(replaceable) -#: chage.1.xml:72(replaceable) +#: pwconv.8.xml:99(replaceable) pwck.8.xml:77(arg) passwd.1.xml:79(replaceable) +#: newusers.8.xml:87(replaceable) lastlog.8.xml:73(replaceable) +#: grpck.8.xml:72(arg) groupmod.8.xml:73(replaceable) +#: groupdel.8.xml:73(replaceable) groupadd.8.xml:75(replaceable) +#: faillog.8.xml:72(replaceable) chsh.1.xml:75(replaceable) +#: chpasswd.8.xml:76(replaceable) chgpasswd.8.xml:72(replaceable) +#: chfn.1.xml:75(replaceable) chage.1.xml:72(replaceable) msgid "options" msgstr "选项" @@ -299,11 +294,10 @@ msgstr "" #: useradd.8.xml:124(title) su.1.xml:145(title) pwconv.8.xml:187(title) #: pwck.8.xml:176(title) passwd.1.xml:174(title) newusers.8.xml:265(title) #: login.1.xml:210(title) lastlog.8.xml:91(title) grpck.8.xml:147(title) -#: groupmod.8.xml:89(title) groupmems.8.xml:100(title) -#: groupdel.8.xml:88(title) groupadd.8.xml:93(title) gpasswd.1.xml:134(title) -#: faillog.8.xml:89(title) expiry.1.xml:91(title) chsh.1.xml:95(title) -#: chpasswd.8.xml:130(title) chgpasswd.8.xml:105(title) chfn.1.xml:111(title) -#: chage.1.xml:91(title) +#: groupmod.8.xml:89(title) groupmems.8.xml:100(title) groupdel.8.xml:88(title) +#: groupadd.8.xml:93(title) gpasswd.1.xml:134(title) faillog.8.xml:89(title) +#: expiry.1.xml:91(title) chsh.1.xml:95(title) chpasswd.8.xml:130(title) +#: chgpasswd.8.xml:105(title) chfn.1.xml:111(title) chage.1.xml:91(title) msgid "OPTIONS" msgstr "选项" @@ -324,7 +318,7 @@ msgstr "编辑 group 数据库。" #: vipw.8.xml:120(term) userdel.8.xml:123(term) useradd.8.xml:266(term) #: pwconv.8.xml:195(term) pwck.8.xml:186(term) passwd.1.xml:214(term) -#: newusers.8.xml:283(term) lastlog.8.xml:107(term) grpck.8.xml:157(term) +#: newusers.8.xml:283(term) lastlog.8.xml:118(term) grpck.8.xml:157(term) #: groupmod.8.xml:129(term) groupmems.8.xml:142(term) groupdel.8.xml:95(term) #: groupadd.8.xml:131(term) gpasswd.1.xml:173(term) faillog.8.xml:122(term) #: expiry.1.xml:112(term) chsh.1.xml:101(term) chpasswd.8.xml:171(term) @@ -334,7 +328,7 @@ msgstr "<option>-h</option>, <option>--help</option>" #: vipw.8.xml:122(para) userdel.8.xml:125(para) useradd.8.xml:268(para) #: pwconv.8.xml:197(para) pwck.8.xml:188(para) passwd.1.xml:216(para) -#: newusers.8.xml:285(para) lastlog.8.xml:111(para) grpck.8.xml:159(para) +#: newusers.8.xml:285(para) lastlog.8.xml:122(para) grpck.8.xml:159(para) #: groupmod.8.xml:131(para) groupmems.8.xml:144(para) groupdel.8.xml:97(para) #: groupadd.8.xml:133(para) gpasswd.1.xml:175(para) faillog.8.xml:124(para) #: expiry.1.xml:114(para) chsh.1.xml:103(para) chpasswd.8.xml:173(para) @@ -360,7 +354,7 @@ msgstr "安静模式。" #: vipw.8.xml:138(term) usermod.8.xml:311(term) userdel.8.xml:146(term) #: useradd.8.xml:445(term) pwconv.8.xml:201(term) pwck.8.xml:209(term) -#: passwd.1.xml:301(term) newusers.8.xml:308(term) lastlog.8.xml:115(term) +#: passwd.1.xml:301(term) newusers.8.xml:308(term) lastlog.8.xml:126(term) #: grpck.8.xml:173(term) groupmod.8.xml:178(term) groupmems.8.xml:165(term) #: groupdel.8.xml:101(term) groupadd.8.xml:204(term) faillog.8.xml:180(term) #: chsh.1.xml:107(term) chpasswd.8.xml:188(term) chgpasswd.8.xml:146(term) @@ -374,7 +368,7 @@ msgstr "" #: vipw.8.xml:142(para) usermod.8.xml:315(para) userdel.8.xml:150(para) #: useradd.8.xml:449(para) pwconv.8.xml:205(para) pwck.8.xml:213(para) -#: passwd.1.xml:305(para) newusers.8.xml:312(para) lastlog.8.xml:119(para) +#: passwd.1.xml:305(para) newusers.8.xml:312(para) lastlog.8.xml:130(para) #: grpck.8.xml:177(para) groupmod.8.xml:182(para) groupmems.8.xml:169(para) #: groupdel.8.xml:105(para) groupadd.8.xml:208(para) gpasswd.1.xml:185(para) #: faillog.8.xml:184(para) chsh.1.xml:111(para) chpasswd.8.xml:192(para) @@ -407,18 +401,18 @@ msgstr "<option>-u</option>, <option>--user</option>" msgid "Indicates which user's tcb shadow file to edit." msgstr "指定要编辑哪个用户的 tcb 影子文件。" -#: vipw.8.xml:165(title) usermod.8.xml:497(title) userdel.8.xml:171(title) +#: vipw.8.xml:165(title) usermod.8.xml:496(title) userdel.8.xml:171(title) #: useradd.8.xml:647(title) su.1.xml:339(title) sg.1.xml:98(title) #: pwconv.8.xml:227(title) pwck.8.xml:252(title) passwd.1.xml:390(title) #: newusers.8.xml:362(title) newgrp.1.xml:109(title) login.1.xml:294(title) #: grpck.8.xml:209(title) groupmod.8.xml:193(title) groupmems.8.xml:199(title) -#: groupdel.8.xml:128(title) groupadd.8.xml:219(title) -#: gpasswd.1.xml:264(title) chsh.1.xml:154(title) chpasswd.8.xml:239(title) -#: chgpasswd.8.xml:198(title) chfn.1.xml:193(title) chage.1.xml:244(title) +#: groupdel.8.xml:128(title) groupadd.8.xml:219(title) gpasswd.1.xml:264(title) +#: chsh.1.xml:154(title) chpasswd.8.xml:239(title) chgpasswd.8.xml:198(title) +#: chfn.1.xml:193(title) chage.1.xml:244(title) msgid "CONFIGURATION" msgstr "配置文件" -#: vipw.8.xml:166(para) usermod.8.xml:498(para) userdel.8.xml:172(para) +#: vipw.8.xml:166(para) usermod.8.xml:497(para) userdel.8.xml:172(para) #: useradd.8.xml:648(para) su.1.xml:340(para) sg.1.xml:99(para) #: pwck.8.xml:253(para) passwd.1.xml:391(para) newusers.8.xml:363(para) #: newgrp.1.xml:110(para) login.1.xml:295(para) grpck.8.xml:210(para) @@ -471,37 +465,35 @@ msgstr "EDITOR" msgid "Editor to be used if <option>VISUAL</option> is not set." msgstr "<option>VISUAL</option> 没有设置的情况下,使用的编辑器。" -#: vipw.8.xml:195(title) usermod.8.xml:514(title) userdel.8.xml:188(title) +#: vipw.8.xml:195(title) usermod.8.xml:513(title) userdel.8.xml:188(title) #: useradd.8.xml:675(title) suauth.5.xml:193(title) su.1.xml:367(title) #: sg.1.xml:110(title) shadow.5.xml:255(title) shadow.3.xml:226(title) #: pwconv.8.xml:250(title) pwck.8.xml:269(title) porttime.5.xml:130(title) #: passwd.5.xml:141(title) passwd.1.xml:408(title) newusers.8.xml:397(title) #: newgrp.1.xml:121(title) logoutd.8.xml:89(title) -#: login.access.5.xml:121(title) login.1.xml:338(title) -#: limits.5.xml:196(title) lastlog.8.xml:182(title) gshadow.5.xml:156(title) -#: grpck.8.xml:221(title) groups.1.xml:100(title) groupmod.8.xml:205(title) -#: groupmems.8.xml:211(title) groupdel.8.xml:140(title) -#: groupadd.8.xml:233(title) gpasswd.1.xml:279(title) faillog.8.xml:243(title) -#: faillog.5.xml:96(title) expiry.1.xml:121(title) chsh.1.xml:167(title) -#: chpasswd.8.xml:255(title) chgpasswd.8.xml:213(title) chfn.1.xml:207(title) -#: chage.1.xml:256(title) +#: login.access.5.xml:121(title) login.1.xml:338(title) limits.5.xml:196(title) +#: lastlog.8.xml:204(title) gshadow.5.xml:156(title) grpck.8.xml:221(title) +#: groups.1.xml:100(title) groupmod.8.xml:205(title) groupmems.8.xml:211(title) +#: groupdel.8.xml:140(title) groupadd.8.xml:233(title) gpasswd.1.xml:279(title) +#: faillog.8.xml:243(title) faillog.5.xml:96(title) expiry.1.xml:121(title) +#: chsh.1.xml:167(title) chpasswd.8.xml:255(title) chgpasswd.8.xml:213(title) +#: chfn.1.xml:207(title) chage.1.xml:256(title) msgid "FILES" msgstr "文件" -#: vipw.8.xml:198(filename) usermod.8.xml:517(filename) +#: vipw.8.xml:198(filename) usermod.8.xml:516(filename) #: userdel.8.xml:191(filename) useradd.8.xml:690(filename) -#: sg.1.xml:125(filename) pwck.8.xml:272(filename) -#: newusers.8.xml:412(filename) newgrp.1.xml:136(filename) -#: gshadow.5.xml:159(filename) grpck.8.xml:224(filename) -#: groups.1.xml:103(filename) groupmod.8.xml:208(filename) -#: groupmems.8.xml:214(filename) groupdel.8.xml:143(filename) -#: groupadd.8.xml:236(filename) gpasswd.1.xml:72(filename) -#: gpasswd.1.xml:75(filename) gpasswd.1.xml:282(filename) -#: chgpasswd.8.xml:216(filename) +#: sg.1.xml:125(filename) pwck.8.xml:272(filename) newusers.8.xml:412(filename) +#: newgrp.1.xml:136(filename) gshadow.5.xml:159(filename) +#: grpck.8.xml:224(filename) groups.1.xml:103(filename) +#: groupmod.8.xml:208(filename) groupmems.8.xml:214(filename) +#: groupdel.8.xml:143(filename) groupadd.8.xml:236(filename) +#: gpasswd.1.xml:72(filename) gpasswd.1.xml:75(filename) +#: gpasswd.1.xml:282(filename) chgpasswd.8.xml:216(filename) msgid "/etc/group" msgstr "/etc/group" -#: vipw.8.xml:200(para) usermod.8.xml:519(para) userdel.8.xml:193(para) +#: vipw.8.xml:200(para) usermod.8.xml:518(para) userdel.8.xml:193(para) #: useradd.8.xml:692(para) sg.1.xml:127(para) pwck.8.xml:274(para) #: newusers.8.xml:414(para) newgrp.1.xml:138(para) gshadow.5.xml:161(para) #: grpck.8.xml:226(para) groups.1.xml:105(para) groupmod.8.xml:210(para) @@ -510,7 +502,7 @@ msgstr "/etc/group" msgid "Group account information." msgstr "组账户信息。" -#: vipw.8.xml:204(filename) usermod.8.xml:523(filename) +#: vipw.8.xml:204(filename) usermod.8.xml:522(filename) #: useradd.8.xml:696(filename) sg.1.xml:131(filename) #: newusers.8.xml:418(filename) newgrp.1.xml:142(filename) #: gshadow.5.xml:165(filename) grpck.8.xml:230(filename) @@ -521,7 +513,7 @@ msgstr "组账户信息。" msgid "/etc/gshadow" msgstr "/etc/gshadow" -#: vipw.8.xml:206(para) usermod.8.xml:525(para) useradd.8.xml:698(para) +#: vipw.8.xml:206(para) usermod.8.xml:524(para) useradd.8.xml:698(para) #: sg.1.xml:133(para) newusers.8.xml:420(para) newgrp.1.xml:144(para) #: gshadow.5.xml:167(para) grpck.8.xml:232(para) groupmod.8.xml:216(para) #: groupdel.8.xml:151(para) groupadd.8.xml:244(para) gpasswd.1.xml:290(para) @@ -529,7 +521,7 @@ msgstr "/etc/gshadow" msgid "Secure group account information." msgstr "安全组账户信息。" -#: vipw.8.xml:210(filename) usermod.8.xml:535(filename) +#: vipw.8.xml:210(filename) usermod.8.xml:534(filename) #: userdel.8.xml:203(filename) useradd.8.xml:678(filename) #: su.1.xml:370(filename) sg.1.xml:113(filename) shadow.5.xml:258(filename) #: pwck.8.xml:278(filename) passwd.5.xml:144(filename) @@ -542,7 +534,7 @@ msgstr "安全组账户信息。" msgid "/etc/passwd" msgstr "/etc/passwd" -#: vipw.8.xml:212(para) usermod.8.xml:537(para) userdel.8.xml:205(para) +#: vipw.8.xml:212(para) usermod.8.xml:536(para) userdel.8.xml:205(para) #: useradd.8.xml:680(para) su.1.xml:372(para) sg.1.xml:115(para) #: shadow.5.xml:260(para) pwck.8.xml:280(para) passwd.5.xml:146(para) #: passwd.1.xml:413(para) newusers.8.xml:402(para) newgrp.1.xml:126(para) @@ -552,7 +544,7 @@ msgstr "/etc/passwd" msgid "User account information." msgstr "用户账户信息。" -#: vipw.8.xml:216(filename) usermod.8.xml:541(filename) +#: vipw.8.xml:216(filename) usermod.8.xml:540(filename) #: userdel.8.xml:209(filename) useradd.8.xml:684(filename) #: su.1.xml:376(filename) sg.1.xml:119(filename) shadow.5.xml:264(filename) #: shadow.3.xml:229(filename) pwck.8.xml:284(filename) @@ -563,7 +555,7 @@ msgstr "用户账户信息。" msgid "/etc/shadow" msgstr "/etc/shadow" -#: vipw.8.xml:218(para) usermod.8.xml:543(para) userdel.8.xml:211(para) +#: vipw.8.xml:218(para) usermod.8.xml:542(para) userdel.8.xml:211(para) #: useradd.8.xml:686(para) su.1.xml:378(para) sg.1.xml:121(para) #: shadow.5.xml:266(para) shadow.3.xml:231(para) pwck.8.xml:286(para) #: passwd.1.xml:419(para) newusers.8.xml:408(para) newgrp.1.xml:132(para) @@ -572,7 +564,7 @@ msgstr "/etc/shadow" msgid "Secure user account information." msgstr "安全用户账户信息。" -#: vipw.8.xml:225(title) usermod.8.xml:562(title) userdel.8.xml:308(title) +#: vipw.8.xml:225(title) usermod.8.xml:561(title) userdel.8.xml:308(title) #: useradd.8.xml:804(title) suauth.5.xml:222(title) su.1.xml:438(title) #: sg.1.xml:140(title) shadow.5.xml:283(title) shadow.3.xml:238(title) #: pwconv.8.xml:262(title) pwck.8.xml:344(title) porttime.5.xml:142(title) @@ -635,15 +627,15 @@ msgstr "" #: usermod.8.xml:46(surname) userdel.8.xml:46(surname) #: useradd.8.xml:57(surname) su.1.xml:57(surname) sg.1.xml:41(surname) #: shadow.5.xml:40(surname) shadow.3.xml:40(surname) pwck.8.xml:46(surname) -#: porttime.5.xml:40(surname) passwd.5.xml:40(surname) -#: passwd.1.xml:47(surname) newusers.8.xml:55(surname) -#: newgrp.1.xml:41(surname) logoutd.8.xml:40(surname) -#: login.defs.5.xml:105(surname) login.1.xml:73(surname) -#: lastlog.8.xml:41(surname) grpck.8.xml:41(surname) groups.1.xml:40(surname) -#: groupmod.8.xml:41(surname) groupdel.8.xml:41(surname) -#: groupadd.8.xml:43(surname) faillog.8.xml:40(surname) -#: faillog.5.xml:40(surname) expiry.1.xml:44(surname) chsh.1.xml:43(surname) -#: chpasswd.8.xml:44(surname) chfn.1.xml:43(surname) chage.1.xml:41(surname) +#: porttime.5.xml:40(surname) passwd.5.xml:40(surname) passwd.1.xml:47(surname) +#: newusers.8.xml:55(surname) newgrp.1.xml:41(surname) +#: logoutd.8.xml:40(surname) login.defs.5.xml:105(surname) +#: login.1.xml:73(surname) lastlog.8.xml:41(surname) grpck.8.xml:41(surname) +#: groups.1.xml:40(surname) groupmod.8.xml:41(surname) +#: groupdel.8.xml:41(surname) groupadd.8.xml:43(surname) +#: faillog.8.xml:40(surname) faillog.5.xml:40(surname) expiry.1.xml:44(surname) +#: chsh.1.xml:43(surname) chpasswd.8.xml:44(surname) chfn.1.xml:43(surname) +#: chage.1.xml:41(surname) msgid "Haugh" msgstr "" @@ -1186,26 +1178,33 @@ msgstr "" #: usermod.8.xml:478(title) userdel.8.xml:281(title) useradd.8.xml:623(title) #: su.1.xml:331(title) shadow.3.xml:218(title) passwd.1.xml:372(title) -#: newusers.8.xml:350(title) login.1.xml:260(title) lastlog.8.xml:194(title) -#: groupdel.8.xml:116(title) groupadd.8.xml:257(title) -#: gpasswd.1.xml:252(title) faillog.8.xml:232(title) chpasswd.8.xml:231(title) +#: newusers.8.xml:350(title) login.1.xml:260(title) lastlog.8.xml:216(title) +#: groupdel.8.xml:116(title) groupadd.8.xml:257(title) gpasswd.1.xml:252(title) +#: faillog.8.xml:232(title) chpasswd.8.xml:231(title) #: chgpasswd.8.xml:186(title) msgid "CAVEATS" msgstr "CAVEATS" #: usermod.8.xml:479(para) +#, fuzzy +#| msgid "" +#| "You must make certain that the named user is not executing any processes " +#| "when this command is being executed if the user's numerical user ID, the " +#| "user's name, or the user's home directory is being changed. " +#| "<command>usermod</command> checks this on Linux, but only check if the " +#| "user is logged in according to utmp on other architectures." msgid "" "You must make certain that the named user is not executing any processes " "when this command is being executed if the user's numerical user ID, the " "user's name, or the user's home directory is being changed. " -"<command>usermod</command> checks this on Linux, but only check if the user " -"is logged in according to utmp on other architectures." +"<command>usermod</command> checks this on Linux. On other platforms it only " +"uses utmp to check if the user is logged in." msgstr "" "如果要更改用户的数字 ID、用户名或主目录,需要确保允许命令时,用户没有执行任何" "进程。<command>usermod</command> 会在 Linux 上进行检查;但是在其它平台上,仅" "仅根据 utmp 检查用户是否已经登录。" -#: usermod.8.xml:487(para) +#: usermod.8.xml:486(para) msgid "" "You must change the owner of any <command>crontab</command> files or " "<command>at</command> jobs manually." @@ -1213,7 +1212,7 @@ msgstr "" "您必须手动更改 <command>crontab</command> 文件或 <command>at</command> 作业的" "属主。" -#: usermod.8.xml:491(para) +#: usermod.8.xml:490(para) msgid "You must make any changes involving NIS on the NIS server." msgstr "您必须更改 NIS 服务器上的 NIS 相关内容。" @@ -1473,7 +1472,7 @@ msgstr "" "如果是 <replaceable>yes</replaceable>,要创建用户 tcb 目录不会自动设置为 /" "etc/tcb/user,但是会根据用户的 UID 计算,根据的算法如下:<placeholder-1/>" -#: usermod.8.xml:529(filename) userdel.8.xml:197(filename) +#: usermod.8.xml:528(filename) userdel.8.xml:197(filename) #: useradd.8.xml:726(filename) su.1.xml:382(filename) #: pwconv.8.xml:253(filename) passwd.1.xml:423(filename) #: newusers.8.xml:424(filename) login.access.5.xml:124(filename) @@ -1484,7 +1483,7 @@ msgstr "" msgid "/etc/login.defs" msgstr "/etc/login.defs" -#: usermod.8.xml:531(para) userdel.8.xml:199(para) useradd.8.xml:728(para) +#: usermod.8.xml:530(para) userdel.8.xml:199(para) useradd.8.xml:728(para) #: su.1.xml:384(para) pwconv.8.xml:255(para) passwd.1.xml:425(para) #: newusers.8.xml:426(para) login.access.5.xml:126(para) login.1.xml:391(para) #: groupmod.8.xml:222(para) groupadd.8.xml:250(para) chsh.1.xml:184(para) @@ -1492,31 +1491,31 @@ msgstr "/etc/login.defs" msgid "Shadow password suite configuration." msgstr "Shadow 密码套件配置。" -#: usermod.8.xml:547(filename) userdel.8.xml:215(filename) +#: usermod.8.xml:546(filename) userdel.8.xml:215(filename) #: useradd.8.xml:714(filename) newusers.8.xml:436(filename) #, fuzzy #| msgid "/etc/suauth" msgid "/etc/subgid" msgstr "/etc/suauth" -#: usermod.8.xml:549(para) userdel.8.xml:217(para) useradd.8.xml:716(para) +#: usermod.8.xml:548(para) userdel.8.xml:217(para) useradd.8.xml:716(para) #: newusers.8.xml:438(para) msgid "Per user subordinate group IDs." msgstr "" -#: usermod.8.xml:553(filename) userdel.8.xml:221(filename) +#: usermod.8.xml:552(filename) userdel.8.xml:221(filename) #: useradd.8.xml:720(filename) newusers.8.xml:442(filename) #, fuzzy #| msgid "/etc/suauth" msgid "/etc/subuid" msgstr "/etc/suauth" -#: usermod.8.xml:555(para) userdel.8.xml:223(para) useradd.8.xml:722(para) +#: usermod.8.xml:554(para) userdel.8.xml:223(para) useradd.8.xml:722(para) #: newusers.8.xml:444(para) msgid "Per user subordinate user IDs." msgstr "" -#: usermod.8.xml:563(para) +#: usermod.8.xml:562(para) #, fuzzy #| msgid "" #| "<citerefentry><refentrytitle>chfn</refentrytitle><manvolnum>1</" @@ -1786,9 +1785,8 @@ msgstr "成功" #: passwd.1.xml:449(replaceable) newgrp.1.xml:59(manvolnum) #: login.1.xml:91(manvolnum) grpck.8.xml:256(replaceable) #: groups.1.xml:58(manvolnum) gpasswd.1.xml:63(manvolnum) -#: expiry.1.xml:62(manvolnum) chsh.1.xml:61(manvolnum) -#: chfn.1.xml:61(manvolnum) chage.1.xml:59(manvolnum) -#: chage.1.xml:289(replaceable) +#: expiry.1.xml:62(manvolnum) chsh.1.xml:61(manvolnum) chfn.1.xml:61(manvolnum) +#: chage.1.xml:59(manvolnum) chage.1.xml:289(replaceable) msgid "1" msgstr "1" @@ -2169,13 +2167,25 @@ msgstr "" "replaceable>=<replaceable>VALUE</replaceable>" #: useradd.8.xml:301(para) +#, fuzzy +#| msgid "" +#| "Overrides <filename>/etc/login.defs</filename> defaults (<option>UID_MIN</" +#| "option>, <option>UID_MAX</option>, <option>UMASK</option>, " +#| "<option>PASS_MAX_DAYS</option> and others). <placeholder-1/> Example: " +#| "<option>-K</option> <replaceable>PASS_MAX_DAYS</" +#| "replaceable>=<replaceable>-1</replaceable> can be used when creating " +#| "system account to turn off password ageing, even though system account " +#| "has no password at all. Multiple <option>-K</option> options can be " +#| "specified, e.g.: <option>-K</option> <replaceable>UID_MIN</" +#| "replaceable>=<replaceable>100</replaceable> <option>-K</option> " +#| "<replaceable>UID_MAX</replaceable>=<replaceable>499</replaceable>" msgid "" "Overrides <filename>/etc/login.defs</filename> defaults (<option>UID_MIN</" "option>, <option>UID_MAX</option>, <option>UMASK</option>, " "<option>PASS_MAX_DAYS</option> and others). <placeholder-1/> Example: " "<option>-K</option> <replaceable>PASS_MAX_DAYS</" "replaceable>=<replaceable>-1</replaceable> can be used when creating system " -"account to turn off password ageing, even though system account has no " +"account to turn off password aging, even though system account has no " "password at all. Multiple <option>-K</option> options can be specified, e." "g.: <option>-K</option> <replaceable>UID_MIN</" "replaceable>=<replaceable>100</replaceable> <option>-K</option> " @@ -2199,9 +2209,13 @@ msgid "Do not add the user to the lastlog and faillog databases." msgstr "不要将用户添加到最近登录和登录失败数据库。" #: useradd.8.xml:327(para) +#, fuzzy +#| msgid "" +#| "By default, the user's entries in the lastlog and faillog databases are " +#| "resetted to avoid reusing the entry from a previously deleted user." msgid "" "By default, the user's entries in the lastlog and faillog databases are " -"resetted to avoid reusing the entry from a previously deleted user." +"reset to avoid reusing the entry from a previously deleted user." msgstr "" "默认上,最近登录和登录失败中用户的条目会被重置,以避免重新使用先前删除的用户" "的条目。" @@ -2227,9 +2241,11 @@ msgstr "" "默认上,如果没有指定此选项并且 <option>CREATE_HOME</option> 没有启用,不会创" "建主目录。" -#: useradd.8.xml:354(option) -msgid "-M" -msgstr "-M" +#: useradd.8.xml:353(term) +#, fuzzy +#| msgid "<option>-m</option>, <option>--create-home</option>" +msgid "<option>-M</option>, <option>--no-create-home</option>" +msgstr "<option>-m</option>, <option>--create-home</option>" #: useradd.8.xml:357(para) msgid "" @@ -2308,12 +2324,19 @@ msgstr "" "option> counterparts for the creation of groups)。" #: useradd.8.xml:434(para) +#, fuzzy +#| msgid "" +#| "Note that <command>useradd</command> will not create a home directory for " +#| "such an user, regardless of the default setting in <filename>/etc/login." +#| "defs</filename> (<option>CREATE_HOME</option>). You have to specify the " +#| "<option>-m</option> options if you want a home directory for a system " +#| "account to be created." msgid "" "Note that <command>useradd</command> will not create a home directory for " -"such an user, regardless of the default setting in <filename>/etc/login." -"defs</filename> (<option>CREATE_HOME</option>). You have to specify the " -"<option>-m</option> options if you want a home directory for a system " -"account to be created." +"such a user, regardless of the default setting in <filename>/etc/login.defs</" +"filename> (<option>CREATE_HOME</option>). You have to specify the <option>-" +"m</option> options if you want a home directory for a system account to be " +"created." msgstr "" "注意:<command>useradd</command> 不会为这种用户创建主目录,无论 <filename>/" "etc/login.defs</filename> (<option>CREATE_HOME</option>) 中是的默认设置是怎" @@ -2895,10 +2918,14 @@ msgstr "" #. .RS #: suauth.5.xml:83(literallayout) -#, no-wrap +#, fuzzy, no-wrap +#| msgid "" +#| "\n" +#| " 1) the user su is targetting\n" +#| " " msgid "" "\n" -" 1) the user su is targetting\n" +" 1) the user su is targeting\n" " " msgstr "" "\n" @@ -2938,14 +2965,23 @@ msgstr "" "<emphasis>ALL EXCEPT</emphasis> 后跟逗号分隔的用户名列表。" #: suauth.5.xml:107(para) +#, fuzzy +#| msgid "" +#| "from-id is formatted the same as to-id except the extra word " +#| "<emphasis>GROUP</emphasis> is recognised. <emphasis>ALL EXCEPT GROUP</" +#| "emphasis> is perfectly valid too. Following <emphasis>GROUP</emphasis> " +#| "appears one or more group names, delimited by \",\". It is not sufficient " +#| "to have primary group id of the relevant group, an entry in " +#| "<citerefentry><refentrytitle>/etc/group</refentrytitle><manvolnum>5</" +#| "manvolnum></citerefentry> is neccessary." msgid "" "from-id is formatted the same as to-id except the extra word " -"<emphasis>GROUP</emphasis> is recognised. <emphasis>ALL EXCEPT GROUP</" +"<emphasis>GROUP</emphasis> is recognized. <emphasis>ALL EXCEPT GROUP</" "emphasis> is perfectly valid too. Following <emphasis>GROUP</emphasis> " "appears one or more group names, delimited by \",\". It is not sufficient to " "have primary group id of the relevant group, an entry in " "<citerefentry><refentrytitle>/etc/group</refentrytitle><manvolnum>5</" -"manvolnum></citerefentry> is neccessary." +"manvolnum></citerefentry> is necessary." msgstr "" "from-id 格式和 to-id 相同,但是可以多识别一个词 <emphasis>GROUP</emphasis>。" "<emphasis>ALL EXCEPT GROUP</emphasis> 也是有效的。<emphasis>GROUP</emphasis> " @@ -3082,9 +3118,8 @@ msgstr "" "citerefentry>." #: su.1.xml:58(contrib) shadow.5.xml:41(contrib) shadow.3.xml:41(contrib) -#: porttime.5.xml:41(contrib) passwd.5.xml:41(contrib) -#: passwd.1.xml:48(contrib) login.1.xml:74(contrib) faillog.8.xml:41(contrib) -#: faillog.5.xml:41(contrib) +#: porttime.5.xml:41(contrib) passwd.5.xml:41(contrib) passwd.1.xml:48(contrib) +#: login.1.xml:74(contrib) faillog.8.xml:41(contrib) faillog.5.xml:41(contrib) msgid "Creation, 1989" msgstr "" @@ -3195,9 +3230,14 @@ msgid "" msgstr "通过使用其 <option>-c</option> 选项,指定一个由 shell 运行的命令。" #: su.1.xml:158(para) +#, fuzzy +#| msgid "" +#| "The executed command will have no controlling terminal. This option " +#| "cannot be used to execute interractive programs which need a controlling " +#| "TTY." msgid "" "The executed command will have no controlling terminal. This option cannot " -"be used to execute interractive programs which need a controlling TTY." +"be used to execute interactive programs which need a controlling TTY." msgstr "" "执行的命令将不会拥有控制终端。此选项不能用于执行需要控制 TTY 的交互程序。" @@ -3862,8 +3902,13 @@ msgstr "" "止任何访问。" #: shadow.5.xml:117(para) gshadow.5.xml:107(para) +#, fuzzy +#| msgid "" +#| "A password field which starts with a exclamation mark means that the " +#| "password is locked. The remaining characters on the line represent the " +#| "password field before the password was locked." msgid "" -"A password field which starts with a exclamation mark means that the " +"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." msgstr "" @@ -3880,9 +3925,13 @@ msgid "" msgstr "最近一次更改密码的时间,表示从1970年1月1日开始的天数。" #: shadow.5.xml:134(para) +#, fuzzy +#| msgid "" +#| "The value 0 has a special meaning, which is that the user should change " +#| "her pasword the next time she will log in the system." msgid "" "The value 0 has a special meaning, which is that the user should change her " -"pasword the next time she will log in the system." +"password the next time she will log in the system." msgstr "0 有特殊意思,表示用户应该在下次登录系统时更改密码。" #: shadow.5.xml:139(para) @@ -3987,9 +4036,15 @@ msgid "" msgstr "账户过期的日期,表示从1970年1月1日开始的天数。" #: shadow.5.xml:229(para) +#, fuzzy +#| msgid "" +#| "Note that an account expiration differs from a password expiration. In " +#| "case of an acount 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." msgid "" "Note that an account expiration differs from a password expiration. In case " -"of an acount expiration, the user shall not be allowed to login. In case of " +"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." msgstr "" "注意,账户过期不同于密码过期。账户过期时,用户将不被允许登录;密码过期时,用" @@ -4293,18 +4348,15 @@ msgstr "" msgid "pwconv" msgstr "pwconv" -#: pwconv.8.xml:71(refname) pwconv.8.xml:85(command) -#: login.defs.5.xml:438(term) +#: pwconv.8.xml:71(refname) pwconv.8.xml:85(command) login.defs.5.xml:438(term) msgid "pwunconv" msgstr "pwunconv" -#: pwconv.8.xml:72(refname) pwconv.8.xml:91(command) -#: login.defs.5.xml:340(term) +#: pwconv.8.xml:72(refname) pwconv.8.xml:91(command) login.defs.5.xml:340(term) msgid "grpconv" msgstr "grpconv" -#: pwconv.8.xml:73(refname) pwconv.8.xml:97(command) -#: login.defs.5.xml:346(term) +#: pwconv.8.xml:73(refname) pwconv.8.xml:97(command) login.defs.5.xml:346(term) msgid "grpunconv" msgstr "grpunconv" @@ -4506,8 +4558,7 @@ msgstr "检查密码文件的完整性" #: pwck.8.xml:80(replaceable) passwd.5.xml:57(refentrytitle) #: passwd.5.xml:64(refname) passwd.1.xml:64(refentrytitle) -#: passwd.1.xml:71(refname) passwd.1.xml:77(command) -#: login.defs.5.xml:409(term) +#: passwd.1.xml:71(refname) passwd.1.xml:77(command) login.defs.5.xml:409(term) msgid "passwd" msgstr "passwd" @@ -4663,10 +4714,15 @@ msgstr "" "选择替代文件。" #: pwck.8.xml:243(para) +#, fuzzy +#| msgid "" +#| "Note that when <option>USE_TCB</option> is enabled, you cannot specify an " +#| "alternative <replaceable>shadow</replaceable> file. In future releases, " +#| "this paramater could be replaced by an alternate TCB directory." msgid "" "Note that when <option>USE_TCB</option> is enabled, you cannot specify an " "alternative <replaceable>shadow</replaceable> file. In future releases, this " -"paramater could be replaced by an alternate TCB directory." +"parameter could be replaced by an alternate TCB directory." msgstr "" "注意,<option>USE_TCB</option> 启用时,您不能指定另外的 <replaceable>shadow</" "replaceable>。以后的版本中,此参数可能会被替换成一个另外的 TCB 目录。" @@ -5081,8 +5137,12 @@ msgstr "" "或者街道号。所有这些可以用于猜测来损害系统安全。" #: passwd.1.xml:166(para) +#, fuzzy +#| msgid "" +#| "You can find advices on how to choose a strong password on http://en." +#| "wikipedia.org/wiki/Password_strength" msgid "" -"You can find advices on how to choose a strong password on http://en." +"You can find advice on how to choose a strong password on http://en." "wikipedia.org/wiki/Password_strength" msgstr "" "您可以在在 http://zh.wikipedia.org/zh-cn/密码强度 找到怎样选择强壮密码的建" @@ -5419,8 +5479,8 @@ msgstr "<option>PASS_MIN_LEN</option> (number)" #: passwd.1.xml:35(para) login.defs.5.xml:35(para) msgid "" "Number of significant characters in the password for crypt(). " -"<option>PASS_MAX_LEN</option> is 8 by default. Don't change unless your crypt" -"() is better. This is ignored if <option>MD5_CRYPT_ENAB</option> set to " +"<option>PASS_MAX_LEN</option> is 8 by default. Don't change unless your " +"crypt() is better. This is ignored if <option>MD5_CRYPT_ENAB</option> set to " "<replaceable>yes</replaceable>." msgstr "" "crypt() 的有效字符位数。<option>PASS_MAX_LEN</option> 默认是 8,除非您自己的 " @@ -5583,7 +5643,9 @@ msgid "HISTORY" msgstr "历史" #: nologin.8.xml:91(para) -msgid "The <command>nologin</command> command appearred in BSD 4.4." +#, fuzzy +#| msgid "The <command>nologin</command> command appearred in BSD 4.4." +msgid "The <command>nologin</command> command appeared in BSD 4.4." msgstr "<command>nologin</command> 首次出现于 BSD 4.4。" #: newusers.8.xml:72(refentrytitle) newusers.8.xml:79(refname) @@ -5634,8 +5696,14 @@ msgid "This is the name of the user." msgstr "这是用户的用户名。" #: newusers.8.xml:116(para) +#, fuzzy +#| msgid "" +#| "It can be the name of a new user or the name of an existing user (or an " +#| "user created before by <command>newusers</command>). In case of an " +#| "existing user, the user's information will be changed, otherwise a new " +#| "user will be created." msgid "" -"It can be the name of a new user or the name of an existing user (or an user " +"It can be the name of a new user or the name of an existing user (or a user " "created before by <command>newusers</command>). In case of an existing user, " "the user's information will be changed, otherwise a new user will be created." msgstr "" @@ -5661,8 +5729,12 @@ msgid "This field is used to define the UID of the user." msgstr "此字段用于定义用户的 UID。" #: newusers.8.xml:144(para) +#, fuzzy +#| msgid "" +#| "If the field is empty, an new (unused) UID will be defined automatically " +#| "by <command>newusers</command>." msgid "" -"If the field is empty, an new (unused) UID will be defined automatically by " +"If the field is empty, a new (unused) UID will be defined automatically by " "<command>newusers</command>." msgstr "" "如果此字段为空,<command>newusers</command> 会自动确定一个新的(未使用的)UID。" @@ -5672,8 +5744,13 @@ msgid "If this field contains a number, this number will be used as the UID." msgstr "如果此字段包含一个数字,此数字会用于 UID。" #: newusers.8.xml:152(para) +#, fuzzy +#| msgid "" +#| "If this field contains the name of an existing user (or the name of an " +#| "user created before by <command>newusers</command>), the UID of the " +#| "specified user will be used." msgid "" -"If this field contains the name of an existing user (or the name of an user " +"If this field contains the name of an existing user (or the name of a user " "created before by <command>newusers</command>), the UID of the specified " "user will be used." msgstr "" @@ -7007,7 +7084,9 @@ msgid "D: max data size (KB)" msgstr "D:最大数据大小 (KB)" #: limits.5.xml:111(para) -msgid "F: maximum filesize (KB)" +#, fuzzy +#| msgid "F: maximum filesize (KB)" +msgid "F: maximum file size (KB)" msgstr "F:最大文件尺寸 (KB)" #: limits.5.xml:112(para) @@ -7087,7 +7166,7 @@ msgstr "" #: limits.5.xml:145(para) msgid "" "Be aware that after <emphasis remap=\"I\">username</emphasis> the rest of " -"the line is considered a limit string, thus comments are not allowed. A " +"the line is considered a limit string, thus comments are not allowed. An " "invalid limits string will be rejected (not considered) by the " "<command>login</command> program." msgstr "" @@ -7108,13 +7187,13 @@ msgstr "" #: limits.5.xml:165(para) msgid "" -"If more than one line with limits for an user exist, only the first line for " +"If more than one line with limits for a user exist, only the first line for " "this user will be considered." msgstr "" #: limits.5.xml:170(para) msgid "" -"If no lines are specified for an user, the last <replaceable>@group</" +"If no lines are specified for a user, the last <replaceable>@group</" "replaceable> 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." @@ -7192,7 +7271,37 @@ msgid "" "Print only lastlog records older than <emphasis remap=\"I\">DAYS</emphasis>." msgstr "只显示老于 <emphasis remap=\"I\">DAYS</emphasis> 的最近登录记录。" -#: lastlog.8.xml:127(term) faillog.8.xml:192(term) +#: lastlog.8.xml:107(term) +#, fuzzy +#| msgid "<option>-u</option>, <option>--user</option>" +msgid "<option>-C</option>, <option>--clear</option>" +msgstr "<option>-u</option>, <option>--user</option>" + +#: lastlog.8.xml:111(para) +#, fuzzy +#| msgid "" +#| "This option is only valid in combination with the <option>-d</option> (or " +#| "<option>--home</option>) option." +msgid "" +"Clear lastlog record of a user. This option can be used only together with " +"<option>-u</option> (<option>--user</option>))." +msgstr "" +"这个选项只有和 <option>-d</option> (或 <option>--home</option>) 选项组合使用" +"时才有效。" + +#: lastlog.8.xml:138(term) +#, fuzzy +#| msgid "<option>-r</option>, <option>--reset</option>" +msgid "<option>-S</option>, <option>--set</option>" +msgstr "<option>-r</option>, <option>--reset</option>" + +#: lastlog.8.xml:142(para) +msgid "" +"Set lastlog record of a user to the current time. This option can be used " +"only together with <option>-u</option> (<option>--user</option>))." +msgstr "" + +#: lastlog.8.xml:149(term) faillog.8.xml:192(term) msgid "" "<option>-t</option>, <option>--time</option> <replaceable>DAYS</" "replaceable>" @@ -7200,13 +7309,13 @@ msgstr "" "<option>-t</option>, <option>--time</option> <replaceable>DAYS</" "replaceable>" -#: lastlog.8.xml:131(para) +#: lastlog.8.xml:153(para) msgid "" "Print the lastlog records more recent than <emphasis remap=\"I\">DAYS</" "emphasis>." msgstr "只现实新于 <emphasis remap=\"I\">DAYS</emphasis> 的最近登录记录。" -#: lastlog.8.xml:138(term) faillog.8.xml:202(term) +#: lastlog.8.xml:160(term) faillog.8.xml:202(term) msgid "" "<option>-u</option>, <option>--user</option> <replaceable>LOGIN</" "replaceable>|<replaceable>RANGE</replaceable>" @@ -7214,11 +7323,11 @@ msgstr "" "<option>-u</option>, <option>--user</option> <replaceable>LOGIN</" "replaceable>|<replaceable>RANGE</replaceable>" -#: lastlog.8.xml:142(para) +#: lastlog.8.xml:164(para) msgid "Print the lastlog record of the specified user(s)." msgstr "现实指定用户的最近登录记录。" -#: lastlog.8.xml:145(para) faillog.8.xml:211(para) +#: lastlog.8.xml:167(para) faillog.8.xml:211(para) msgid "" "The users can be specified by a login name, a numerical user ID, or a " "<replaceable>RANGE</replaceable> of users. This <replaceable>RANGE</" @@ -7227,7 +7336,7 @@ msgid "" "UID_MAX</replaceable>), or a min value (<replaceable>UID_MIN-</replaceable>)." msgstr "" -#: lastlog.8.xml:157(para) +#: lastlog.8.xml:179(para) msgid "" "If the user has never logged in the message <emphasis>** Never logged in**</" "emphasis> will be displayed instead of the port and time." @@ -7235,18 +7344,18 @@ msgstr "" "如果用户从来没有登录过,将会显示 <emphasis>** 从未登录 **</emphasis> 而不是端" "口和时间。" -#: lastlog.8.xml:162(para) +#: lastlog.8.xml:184(para) msgid "" "Only the entries for the current users of the system will be displayed. " "Other entries may exist for users that were deleted previously." msgstr "" -#: lastlog.8.xml:170(title) groups.1.xml:90(title) chsh.1.xml:140(title) +#: lastlog.8.xml:192(title) groups.1.xml:90(title) chsh.1.xml:140(title) #: chage.1.xml:231(title) msgid "NOTE" msgstr "注意" -#: lastlog.8.xml:171(para) +#: lastlog.8.xml:193(para) msgid "" "The <filename>lastlog</filename> file is a database which contains info on " "the last login of each user. You should not rotate it. It is a sparse file, " @@ -7256,15 +7365,15 @@ msgid "" "its real size with \"<command>ls -s</command>\"." msgstr "" -#: lastlog.8.xml:185(filename) +#: lastlog.8.xml:207(filename) msgid "/var/log/lastlog" msgstr "/var/log/lastlog" -#: lastlog.8.xml:187(para) +#: lastlog.8.xml:209(para) msgid "Database times of previous user logins." msgstr "" -#: lastlog.8.xml:195(para) +#: lastlog.8.xml:217(para) msgid "" "Large gaps in UID numbers will cause the lastlog program to run longer with " "no output to the screen (i.e. if in lastlog database there is no entries for " @@ -7311,8 +7420,14 @@ msgid "" msgstr "" #: gshadow.5.xml:97(para) +#, fuzzy +#| msgid "" +#| "The password is used when an user who is not a member of the group wants " +#| "to gain the permissions of this group (see " +#| "<citerefentry><refentrytitle>newgrp</refentrytitle><manvolnum>1</" +#| "manvolnum></citerefentry>)." msgid "" -"The password is used when an user who is not a member of the group wants to " +"The password is used when a user who is not a member of the group wants to " "gain the permissions of this group (see <citerefentry><refentrytitle>newgrp</" "refentrytitle><manvolnum>1</manvolnum></citerefentry>)." msgstr "" @@ -7778,7 +7893,9 @@ msgstr "" "replaceable>" #: groupmems.8.xml:109(para) -msgid "Add an user to the group membership list." +#, fuzzy +#| msgid "Add an user to the group membership list." +msgid "Add a user to the group membership list." msgstr "将一个用户添加到组成员列表。" #: groupmems.8.xml:110(para) groupmems.8.xml:126(para) @@ -8661,12 +8778,21 @@ msgstr "" "龄信息,也会更新之。" #: chpasswd.8.xml:97(para) +#, fuzzy +#| msgid "" +#| "The default encryption algorithm can be defined for the system with the " +#| "ENCRYPT_METHOD variable of <filename>/etc/login.defs</filename>, and can " +#| "be overwiten with the <option>-e</option>, <option>-m</option>, or " +#| "<option>-c</option> options." msgid "" "The default encryption algorithm can be defined for the system with the " "<option>ENCRYPT_METHOD</option> or <option>MD5_CRYPT_ENAB</option> variables " -"of <filename>/etc/login.defs</filename>, and can be overwitten with the " +"of <filename>/etc/login.defs</filename>, and can be overwritten with the " "<option>-e</option>, <option>-m</option>, or <option>-c</option> options." msgstr "" +"默认加密算法可以通过 <filename>/etc/login.defs</filename> 的 ENCRYPT_METHOD " +"变量设置,并且可以使用 <option>-e</option>, <option>-m</option> 或 <option>-" +"c</option> 选项覆盖。" #: chpasswd.8.xml:105(para) msgid "" @@ -8679,7 +8805,7 @@ msgstr "" msgid "" "<phrase condition=\"pam\">Except when PAM is used to encrypt the passwords,</" "phrase><command>chpasswd</command> first updates all the passwords in " -"memory, and then commits all the changes to disk if no errors occured for " +"memory, and then commits all the changes to disk if no errors occurred for " "any user." msgstr "" @@ -8830,7 +8956,7 @@ msgstr "" msgid "" "The default encryption algorithm can be defined for the system with the " "<option>ENCRYPT_METHOD</option> variable of <filename>/etc/login.defs</" -"filename>, and can be overwiten with the <option>-e</option>, <option>-m</" +"filename>, and can be overwritten with the <option>-e</option>, <option>-m</" "option>, or <option>-c</option> options." msgstr "" "默认加密算法可以通过 <filename>/etc/login.defs</filename> 的 ENCRYPT_METHOD " @@ -9165,6 +9291,9 @@ msgstr "<command>chage</command> 命令有如下退出值:<placeholder-1/>" msgid "translator-credits" msgstr "YunQiang Su <wzssyqa@gmail.com>, 2010." +#~ msgid "-M" +#~ msgstr "-M" + #~ msgid "" #~ "<citerefentry><refentrytitle>chfn</refentrytitle><manvolnum>1</" #~ "manvolnum></citerefentry>, <citerefentry><refentrytitle>chsh</" diff --git a/man/pt_BR/Makefile.in b/man/pt_BR/Makefile.in new file mode 100644 index 00000000..1cebc038 --- /dev/null +++ b/man/pt_BR/Makefile.in @@ -0,0 +1,647 @@ +# Makefile.in generated by automake 1.15 from Makefile.am. +# @configure_input@ + +# Copyright (C) 1994-2014 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@ +subdir = man/pt_BR +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)$(man5dir)" \ + "$(DESTDIR)$(man8dir)" +man5dir = $(mandir)/man5 +man8dir = $(mandir)/man8 +NROFF = nroff +MANS = $(man_MANS) +am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) +am__DIST_COMMON = $(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@ +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@/pt_BR +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/gpasswd.1 \ + man8/groupadd.8 \ + man8/groupdel.8 \ + man8/groupmod.8 \ + man5/passwd.5 \ + man5/shadow.5 + +EXTRA_DIST = $(man_MANS) +all: all-am + +.SUFFIXES: +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(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) --gnu man/pt_BR/Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --gnu man/pt_BR/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; + +$(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-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)$(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: + +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." +clean: clean-am + +clean-am: clean-generic clean-libtool 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-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-man5 uninstall-man8 + +.MAKE: install-am install-strip + +.PHONY: all all-am check check-am clean clean-generic clean-libtool \ + 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-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-man5 \ + uninstall-man8 + +.PRECIOUS: Makefile + + +# 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/pwck.8.xml b/man/pwck.8.xml index fbe4cd7c..25952df5 100644 --- a/man/pwck.8.xml +++ b/man/pwck.8.xml @@ -243,7 +243,7 @@ <para condition="tcb"> Note that when <option>USE_TCB</option> is enabled, you cannot specify an alternative <replaceable>shadow</replaceable> file. In - future releases, this paramater could be replaced by an alternate + future releases, this parameter could be replaced by an alternate TCB directory. </para> </refsect1> diff --git a/man/ru/Makefile.in b/man/ru/Makefile.in new file mode 100644 index 00000000..07d9ffdf --- /dev/null +++ b/man/ru/Makefile.in @@ -0,0 +1,757 @@ +# Makefile.in generated by automake 1.15 from Makefile.am. +# @configure_input@ + +# Copyright (C) 1994-2014 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@ +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) --gnu man/ru/Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --gnu 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@ for d in man1 man3 man5 man8; do [ -d $$d ] && rmdir $$d; done + +#$(man_MANS): +# @echo you need to run configure with --enable-man to generate man pages +# @false + +@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 +@ENABLE_REGENERATE_MAN_FALSE@ @false + +# 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..d4002134 --- /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: 09/18/2016 +.\" Manual: Пользовательские команды +.\" Source: shadow-utils 4.4 +.\" Language: Russian +.\" +.TH "chage" "1" "09/18/2016" "shadow\-utils 4\&.4" "Пользовательские команды" +.\" ----------------------------------------------------------------- +.\" * 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..7ed9bedd --- /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: 09/18/2016 +.\" Manual: Пользовательские команды +.\" Source: shadow-utils 4.4 +.\" Language: Russian +.\" +.TH "chfn" "1" "09/18/2016" "shadow\-utils 4\&.4" "Пользовательские команды" +.\" ----------------------------------------------------------------- +.\" * 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..12f20598 --- /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: 09/18/2016 +.\" Manual: Пользовательские команды +.\" Source: shadow-utils 4.4 +.\" Language: Russian +.\" +.TH "chsh" "1" "09/18/2016" "shadow\-utils 4\&.4" "Пользовательские команды" +.\" ----------------------------------------------------------------- +.\" * 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..7d4ed0bd --- /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: 09/18/2016 +.\" Manual: Пользовательские команды +.\" Source: shadow-utils 4.4 +.\" Language: Russian +.\" +.TH "expiry" "1" "09/18/2016" "shadow\-utils 4\&.4" "Пользовательские команды" +.\" ----------------------------------------------------------------- +.\" * 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..f9d6398f --- /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: 09/18/2016 +.\" Manual: Пользовательские команды +.\" Source: shadow-utils 4.4 +.\" Language: Russian +.\" +.TH "gpasswd" "1" "09/18/2016" "shadow\-utils 4\&.4" "Пользовательские команды" +.\" ----------------------------------------------------------------- +.\" * 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..2fd737a7 --- /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: 09/18/2016 +.\" Manual: Пользовательские команды +.\" Source: shadow-utils 4.4 +.\" Language: Russian +.\" +.TH "groups" "1" "09/18/2016" "shadow\-utils 4\&.4" "Пользовательские команды" +.\" ----------------------------------------------------------------- +.\" * 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..c75d1b16 --- /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: 09/18/2016 +.\" Manual: Пользовательские команды +.\" Source: shadow-utils 4.4 +.\" Language: Russian +.\" +.TH "id" "1" "09/18/2016" "shadow\-utils 4\&.4" "Пользовательские команды" +.\" ----------------------------------------------------------------- +.\" * 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..1c717d92 --- /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: 09/18/2016 +.\" Manual: Пользовательские команды +.\" Source: shadow-utils 4.4 +.\" Language: Russian +.\" +.TH "login" "1" "09/18/2016" "shadow\-utils 4\&.4" "Пользовательские команды" +.\" ----------------------------------------------------------------- +.\" * 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..c6c4d67f --- /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: 09/18/2016 +.\" Manual: Пользовательские команды +.\" Source: shadow-utils 4.4 +.\" Language: Russian +.\" +.TH "newgrp" "1" "09/18/2016" "shadow\-utils 4\&.4" "Пользовательские команды" +.\" ----------------------------------------------------------------- +.\" * 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..8b6f2d22 --- /dev/null +++ b/man/ru/man1/passwd.1 @@ -0,0 +1,352 @@ +'\" t +.\" Title: passwd +.\" Author: Julianne Frances Haugh +.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/> +.\" Date: 09/18/2016 +.\" Manual: Пользовательские команды +.\" Source: shadow-utils 4.4 +.\" Language: Russian +.\" +.TH "passwd" "1" "09/18/2016" "shadow\-utils 4\&.4" "Пользовательские команды" +.\" ----------------------------------------------------------------- +.\" * 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 +пароль нужно изменить\&. +.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..116e0061 --- /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: 09/18/2016 +.\" Manual: Пользовательские команды +.\" Source: shadow-utils 4.4 +.\" Language: Russian +.\" +.TH "sg" "1" "09/18/2016" "shadow\-utils 4\&.4" "Пользовательские команды" +.\" ----------------------------------------------------------------- +.\" * 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..d2269509 --- /dev/null +++ b/man/ru/man1/su.1 @@ -0,0 +1,443 @@ +'\" t +.\" Title: su +.\" Author: Julianne Frances Haugh +.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/> +.\" Date: 09/18/2016 +.\" Manual: Пользовательские команды +.\" Source: shadow-utils 4.4 +.\" Language: Russian +.\" +.TH "su" "1" "09/18/2016" "shadow\-utils 4\&.4" "Пользовательские команды" +.\" ----------------------------------------------------------------- +.\" * 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] +.SH "ОПИСАНИЕ" +.PP +Программа +\fBsu\fR +используется для того, чтобы пользователь мог стать другим пользователем в текущем сеансе\&. Если +\fBsu\fR +вызывается без +\fBимени_пользователя\fR, то это по умолчанию делает пользователя суперпользователем\&. Необязательный параметр +\fB\-\fR +можно использовать для воссоздания окружения, такого же как если бы настоящий пользователь выполнял вход в систему\&. +.PP +После имени пользователя можно указать дополнительные аргументы, которые будут переданы регистрационной оболочке пользователя\&. В частности, аргумент +\fB\-c\fR +заставит большинство оболочек считать следующий аргумент как команду\&. Команда будет выполнена оболочкой, указанной в файле +/etc/passwd, которая является регистрационной для указываемого пользователя\&. +.PP +Вы можете использовать параметр +\fB\-\-\fR +чтобы отделить параметры +\fBsu\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..a63a51d6 --- /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: 09/18/2016 +.\" Manual: Библиотечные функции +.\" Source: shadow-utils 4.4 +.\" Language: Russian +.\" +.TH "shadow" "3" "09/18/2016" "shadow\-utils 4\&.4" "Библиотечные функции" +.\" ----------------------------------------------------------------- +.\" * 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..1fee50fa --- /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: 09/18/2016 +.\" Manual: Форматы файлов +.\" Source: shadow-utils 4.4 +.\" Language: Russian +.\" +.TH "faillog" "5" "09/18/2016" "shadow\-utils 4\&.4" "Форматы файлов" +.\" ----------------------------------------------------------------- +.\" * 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..303816b7 --- /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: 09/18/2016 +.\" Manual: Форматы файлов +.\" Source: shadow-utils 4.4 +.\" Language: Russian +.\" +.TH "gshadow" "5" "09/18/2016" "shadow\-utils 4\&.4" "Форматы файлов" +.\" ----------------------------------------------------------------- +.\" * 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..26948c0f --- /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: 09/18/2016 +.\" Manual: Форматы файлов +.\" Source: shadow-utils 4.4 +.\" Language: Russian +.\" +.TH "limits" "5" "09/18/2016" "shadow\-utils 4\&.4" "Форматы файлов" +.\" ----------------------------------------------------------------- +.\" * 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..d977df85 --- /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: 09/18/2016 +.\" Manual: Форматы файлов +.\" Source: shadow-utils 4.4 +.\" Language: Russian +.\" +.TH "login\&.access" "5" "09/18/2016" "shadow\-utils 4\&.4" "Форматы файлов" +.\" ----------------------------------------------------------------- +.\" * 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..e554a751 --- /dev/null +++ b/man/ru/man5/login.defs.5 @@ -0,0 +1,816 @@ +'\" t +.\" Title: login.defs +.\" Author: Julianne Frances Haugh +.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/> +.\" Date: 09/18/2016 +.\" Manual: Форматы файлов +.\" Source: shadow-utils 4.4 +.\" Language: Russian +.\" +.TH "login\&.defs" "5" "09/18/2016" "shadow\-utils 4\&.4" "Форматы файлов" +.\" ----------------------------------------------------------------- +.\" * 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 +\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 10000\&. +.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 10000\&. +.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 +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 +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 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 +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..92705eff --- /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: 09/18/2016 +.\" Manual: Форматы файлов +.\" Source: shadow-utils 4.4 +.\" Language: Russian +.\" +.TH "passwd" "5" "09/18/2016" "shadow\-utils 4\&.4" "Форматы файлов" +.\" ----------------------------------------------------------------- +.\" * 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..03822d24 --- /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: 09/18/2016 +.\" Manual: Форматы файлов +.\" Source: shadow-utils 4.4 +.\" Language: Russian +.\" +.TH "porttime" "5" "09/18/2016" "shadow\-utils 4\&.4" "Форматы файлов" +.\" ----------------------------------------------------------------- +.\" * 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..92df53ac --- /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: 09/18/2016 +.\" Manual: Форматы файлов +.\" Source: shadow-utils 4.4 +.\" Language: Russian +.\" +.TH "shadow" "5" "09/18/2016" "shadow\-utils 4\&.4" "Форматы файлов" +.\" ----------------------------------------------------------------- +.\" * 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..9ed3b901 --- /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: 09/18/2016 +.\" Manual: Форматы файлов +.\" Source: shadow-utils 4.4 +.\" Language: Russian +.\" +.TH "suauth" "5" "09/18/2016" "shadow\-utils 4\&.4" "Форматы файлов" +.\" ----------------------------------------------------------------- +.\" * 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..b1aa6ebd --- /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: 09/18/2016 +.\" Manual: Команды управления системой +.\" Source: shadow-utils 4.4 +.\" Language: Russian +.\" +.TH "chgpasswd" "8" "09/18/2016" "shadow\-utils 4\&.4" "Команды управления системой" +.\" ----------------------------------------------------------------- +.\" * 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..73353a9a --- /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: 09/18/2016 +.\" Manual: Команды управления системой +.\" Source: shadow-utils 4.4 +.\" Language: Russian +.\" +.TH "chpasswd" "8" "09/18/2016" "shadow\-utils 4\&.4" "Команды управления системой" +.\" ----------------------------------------------------------------- +.\" * 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..3e773805 --- /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: 09/18/2016 +.\" Manual: Команды управления системой +.\" Source: shadow-utils 4.4 +.\" Language: Russian +.\" +.TH "faillog" "8" "09/18/2016" "shadow\-utils 4\&.4" "Команды управления системой" +.\" ----------------------------------------------------------------- +.\" * 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..bf7e2651 --- /dev/null +++ b/man/ru/man8/groupadd.8 @@ -0,0 +1,242 @@ +'\" t +.\" Title: groupadd +.\" Author: Julianne Frances Haugh +.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/> +.\" Date: 09/18/2016 +.\" Manual: Команды управления системой +.\" Source: shadow-utils 4.4 +.\" Language: Russian +.\" +.TH "groupadd" "8" "09/18/2016" "shadow\-utils 4\&.4" "Команды управления системой" +.\" ----------------------------------------------------------------- +.\" * 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 +.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..321120d3 --- /dev/null +++ b/man/ru/man8/groupdel.8 @@ -0,0 +1,133 @@ +'\" t +.\" Title: groupdel +.\" Author: Julianne Frances Haugh +.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/> +.\" Date: 09/18/2016 +.\" Manual: Команды управления системой +.\" Source: shadow-utils 4.4 +.\" Language: Russian +.\" +.TH "groupdel" "8" "09/18/2016" "shadow\-utils 4\&.4" "Команды управления системой" +.\" ----------------------------------------------------------------- +.\" * 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 +.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..4fe454f7 --- /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: 09/18/2016 +.\" Manual: Команды управления системой +.\" Source: shadow-utils 4.4 +.\" Language: Russian +.\" +.TH "groupmems" "8" "09/18/2016" "shadow\-utils 4\&.4" "Команды управления системой" +.\" ----------------------------------------------------------------- +.\" * 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..d2cb46e0 --- /dev/null +++ b/man/ru/man8/groupmod.8 @@ -0,0 +1,205 @@ +'\" t +.\" Title: groupmod +.\" Author: Julianne Frances Haugh +.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/> +.\" Date: 09/18/2016 +.\" Manual: Команды управления системой +.\" Source: shadow-utils 4.4 +.\" Language: Russian +.\" +.TH "groupmod" "8" "09/18/2016" "shadow\-utils 4\&.4" "Команды управления системой" +.\" ----------------------------------------------------------------- +.\" * 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 +.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 +успешное выполнение +.RE +.PP +\fI2\fR +.RS 4 +ошибка в параметрах команды +.RE +.PP +\fI3\fR +.RS 4 +недопустимое значение параметра +.RE +.PP +\fI4\fR +.RS 4 +указанная группа не существует +.RE +.PP +\fI6\fR +.RS 4 +указанная группа не существует +.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), +\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..996c971d --- /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: 09/18/2016 +.\" Manual: Команды управления системой +.\" Source: shadow-utils 4.4 +.\" Language: Russian +.\" +.TH "grpck" "8" "09/18/2016" "shadow\-utils 4\&.4" "Команды управления системой" +.\" ----------------------------------------------------------------- +.\" * 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..6447dd8e --- /dev/null +++ b/man/ru/man8/lastlog.8 @@ -0,0 +1,119 @@ +'\" t +.\" Title: lastlog +.\" Author: Julianne Frances Haugh +.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/> +.\" Date: 09/18/2016 +.\" Manual: Команды управления системой +.\" Source: shadow-utils 4.4 +.\" Language: Russian +.\" +.TH "lastlog" "8" "09/18/2016" "shadow\-utils 4\&.4" "Команды управления системой" +.\" ----------------------------------------------------------------- +.\" * 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 +/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..ae09fa7e --- /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: 09/18/2016 +.\" Manual: Команды управления системой +.\" Source: shadow-utils 4.4 +.\" Language: Russian +.\" +.TH "logoutd" "8" "09/18/2016" "shadow\-utils 4\&.4" "Команды управления системой" +.\" ----------------------------------------------------------------- +.\" * 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..7ce9660a --- /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: 09/18/2016 +.\" Manual: Команды управления системой +.\" Source: shadow-utils 4.4 +.\" Language: Russian +.\" +.TH "newusers" "8" "09/18/2016" "shadow\-utils 4\&.4" "Команды управления системой" +.\" ----------------------------------------------------------------- +.\" * 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 10000\&. +.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 10000\&. +.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..edf09e11 --- /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: 09/18/2016 +.\" Manual: Команды управления системой +.\" Source: shadow-utils 4.4 +.\" Language: Russian +.\" +.TH "nologin" "8" "09/18/2016" "shadow\-utils 4\&.4" "Команды управления системой" +.\" ----------------------------------------------------------------- +.\" * 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..cbbdbc23 --- /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: 09/18/2016 +.\" Manual: Команды управления системой +.\" Source: shadow-utils 4.4 +.\" Language: Russian +.\" +.TH "pwck" "8" "09/18/2016" "shadow\-utils 4\&.4" "Команды управления системой" +.\" ----------------------------------------------------------------- +.\" * 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..e60a7010 --- /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: 09/18/2016 +.\" Manual: Команды управления системой +.\" Source: shadow-utils 4.4 +.\" Language: Russian +.\" +.TH "pwconv" "8" "09/18/2016" "shadow\-utils 4\&.4" "Команды управления системой" +.\" ----------------------------------------------------------------- +.\" * 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..6c560134 --- /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: 09/18/2016 +.\" Manual: Команды управления системой +.\" Source: shadow-utils 4.4 +.\" Language: Russian +.\" +.TH "sulogin" "8" "09/18/2016" "shadow\-utils 4\&.4" "Команды управления системой" +.\" ----------------------------------------------------------------- +.\" * 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..2a4c0ed2 --- /dev/null +++ b/man/ru/man8/useradd.8 @@ -0,0 +1,740 @@ +'\" t +.\" Title: useradd +.\" Author: Julianne Frances Haugh +.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/> +.\" Date: 09/18/2016 +.\" Manual: Команды управления системой +.\" Source: shadow-utils 4.4 +.\" Language: Russian +.\" +.TH "useradd" "8" "09/18/2016" "shadow\-utils 4\&.4" "Команды управления системой" +.\" ----------------------------------------------------------------- +.\" * 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\-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 +\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 10000\&. +.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 10000\&. +.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..c54fdb7c --- /dev/null +++ b/man/ru/man8/userdel.8 @@ -0,0 +1,294 @@ +'\" t +.\" Title: userdel +.\" Author: Julianne Frances Haugh +.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/> +.\" Date: 09/18/2016 +.\" Manual: Команды управления системой +.\" Source: shadow-utils 4.4 +.\" Language: Russian +.\" +.TH "userdel" "8" "09/18/2016" "shadow\-utils 4\&.4" "Команды управления системой" +.\" ----------------------------------------------------------------- +.\" * 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\-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..0e7e3636 --- /dev/null +++ b/man/ru/man8/usermod.8 @@ -0,0 +1,437 @@ +'\" t +.\" Title: usermod +.\" Author: Julianne Frances Haugh +.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/> +.\" Date: 09/18/2016 +.\" Manual: Команды управления системой +.\" Source: shadow-utils 4.4 +.\" Language: Russian +.\" +.TH "usermod" "8" "09/18/2016" "shadow\-utils 4\&.4" "Команды управления системой" +.\" ----------------------------------------------------------------- +.\" * 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\-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\-sub\-uids\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\-sub\-uids\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\-sub\-uids\fR +and +\fB\-\-add\-sub\-uids\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\-sub\-gids\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\-sub\-gids\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\-sub\-gids\fR +and +\fB\-\-add\-sub\-gids\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 +\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 10000\&. +.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 10000\&. +.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..c3d0be2d --- /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: 09/18/2016 +.\" Manual: Команды управления системой +.\" Source: shadow-utils 4.4 +.\" Language: Russian +.\" +.TH "vipw" "8" "09/18/2016" "shadow\-utils 4\&.4" "Команды управления системой" +.\" ----------------------------------------------------------------- +.\" * 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)\&. diff --git a/man/shadow.5.xml b/man/shadow.5.xml index 3b2f44a3..5d20511a 100644 --- a/man/shadow.5.xml +++ b/man/shadow.5.xml @@ -115,7 +115,7 @@ any access at all if the password field is empty. </para> <para> - A password field which starts with a exclamation mark means + 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. @@ -133,7 +133,7 @@ </para> <para> The value 0 has a special meaning, which is that the user - should change her pasword the next time she will log in the + should change her password the next time she will log in the system. </para> <para> @@ -228,7 +228,7 @@ </para> <para> Note that an account expiration differs from a password - expiration. In case of an acount expiration, the user shall + 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. </para> diff --git a/man/su.1.xml b/man/su.1.xml index 917c2835..24143c38 100644 --- a/man/su.1.xml +++ b/man/su.1.xml @@ -157,7 +157,7 @@ </para> <para> The executed command will have no controlling terminal. This - option cannot be used to execute interractive programs which + option cannot be used to execute interactive programs which need a controlling TTY. <!-- This avoids TTY hijacking when su is used to lower privileges --> @@ -191,7 +191,7 @@ <para>The shell that will be invoked.</para> <para> The invoked shell is chosen from (highest priority first): - <!--This should be an orderedlist, but lists inside another + <!--This should be an ordered list, but lists inside another list does not work well with current docbook. - nekral - 2009.06.03 --> <variablelist> diff --git a/man/suauth.5.xml b/man/suauth.5.xml index dff366a5..97ef6d1c 100644 --- a/man/suauth.5.xml +++ b/man/suauth.5.xml @@ -81,7 +81,7 @@ <!-- .RS --> <literallayout remap='.nf'> - 1) the user su is targetting + 1) the user su is targeting </literallayout> <!-- .fi --> <para> @@ -106,13 +106,13 @@ <para> from-id is formatted the same as to-id except the extra word - <emphasis>GROUP</emphasis> is recognised. <emphasis>ALL EXCEPT + <emphasis>GROUP</emphasis> is recognized. <emphasis>ALL EXCEPT GROUP</emphasis> is perfectly valid too. Following <emphasis>GROUP</emphasis> appears one or more group names, delimited by ",". It is not sufficient to have primary group id of the relevant group, an entry in <citerefentry><refentrytitle>/etc/group</refentrytitle> - <manvolnum>5</manvolnum></citerefentry> is neccessary. + <manvolnum>5</manvolnum></citerefentry> is necessary. </para> <para> diff --git a/man/subgid.5.xml b/man/subgid.5.xml index f7b4b50b..ffdb7d80 100644 --- a/man/subgid.5.xml +++ b/man/subgid.5.xml @@ -57,7 +57,7 @@ </para> <itemizedlist mark='bullet'> <listitem> - <para>login name</para> + <para>login name or UID</para> </listitem> <listitem> <para>numerical subordinate group ID</para> @@ -77,6 +77,13 @@ Multiple ranges may be specified per user. </para> + <para> + When large number of entries (10000-100000 or more) are defined in + <filename>/etc/subgid</filename>, parsing performance penalty will + become noticeable. In this case it is recommended to use UIDs + instead of login names. Benchmarks have shown speed-ups up to 20x. + </para> + </refsect1> <refsect1 id='files'> diff --git a/man/subuid.5.xml b/man/subuid.5.xml index a833f57f..2890661d 100644 --- a/man/subuid.5.xml +++ b/man/subuid.5.xml @@ -57,7 +57,7 @@ </para> <itemizedlist mark='bullet'> <listitem> - <para>login name</para> + <para>login name or UID</para> </listitem> <listitem> <para>numerical subordinate user ID</para> @@ -77,6 +77,13 @@ Multiple ranges may be specified per user. </para> + <para> + When large number of entries (10000-100000 or more) are defined in + <filename>/etc/subuid</filename>, parsing performance penalty will + become noticeable. In this case it is recommended to use UIDs + instead of login names. Benchmarks have shown speed-ups up to 20x. + </para> + </refsect1> <refsect1 id='files'> diff --git a/man/sv/Makefile.in b/man/sv/Makefile.in new file mode 100644 index 00000000..0a5e0a69 --- /dev/null +++ b/man/sv/Makefile.in @@ -0,0 +1,754 @@ +# Makefile.in generated by automake 1.15 from Makefile.am. +# @configure_input@ + +# Copyright (C) 1994-2014 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/sv +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@ +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@/sv +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@ + +# 2012.01.28 - activate manpages with more than 50% translated messages +man_MANS = man1/chage.1 man1/chsh.1 man1/expiry.1 man5/faillog.5 \ + man8/faillog.8 man3/getspnam.3 man8/groupadd.8 man8/groupdel.8 \ + man8/groupmems.8 man8/groupmod.8 man1/groups.1 man8/grpck.8 \ + man5/gshadow.5 man8/lastlog.8 man8/logoutd.8 man1/newgrp.1 \ + man8/nologin.8 man1/passwd.1 man5/passwd.5 man8/pwck.8 \ + man1/sg.1 man3/shadow.3 man5/suauth.5 man8/userdel.8 \ + man8/vigr.8 man8/vipw.8 $(am__append_1) +man_nopam = \ + man5/limits.5 \ + man5/porttime.5 + +EXTRA_DIST = $(man_MANS) man1/id.1 $(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) --gnu man/sv/Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --gnu man/sv/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@ for d in man1 man3 man5 man8; do [ -d $$d ] && rmdir $$d; done + +#$(man_MANS): +# @echo you need to run configure with --enable-man to generate man pages +# @false + +@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 +@ENABLE_REGENERATE_MAN_FALSE@ @false + +# 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/sv/man1/chage.1 b/man/sv/man1/chage.1 new file mode 100644 index 00000000..1f6e16b4 --- /dev/null +++ b/man/sv/man1/chage.1 @@ -0,0 +1,184 @@ +'\" t +.\" Title: chage +.\" Author: Julianne Frances Haugh +.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/> +.\" Date: 18-09-2016 +.\" Manual: Anv\(:andarkommandon +.\" Source: shadow-utils 4.4 +.\" Language: Swedish +.\" +.TH "CHAGE" "1" "18-09-2016" "shadow\-utils 4\&.4" "Anv\(:andarkommandon" +.\" ----------------------------------------------------------------- +.\" * 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 "NAMN" +chage \- \(:andra \(oaldringsinformation f\(:or anv\(:andarl\(:osenord +.SH "SYNOPSIS" +.HP \w'\fBchage\fR\ 'u +\fBchage\fR [\fIflaggor\fR] \fIINLOGGNINGSNAMN\fR +.SH "BESKRIVNING" +.PP +The +\fBchage\fR +command changes the number of days between password changes and the date of the last password change\&. This information is used by the system to determine when a user must change his/her password\&. +.SH "FLAGGOR" +.PP +Flaggorna som g\(:aller f\(:or kommandot +\fBchage\fR +\(:ar: +.PP +\fB\-d\fR, \fB\-\-lastday\fR\ \&\fISISTA_DAG\fR +.RS 4 +Set the number of days since January 1st, 1970 when the password was last changed\&. The date may also be expressed in the format YYYY\-MM\-DD (or the format more commonly used in your area)\&. +.RE +.PP +\fB\-E\fR, \fB\-\-expiredate\fR\ \&\fIUTG\(oANGSDATUM\fR +.RS 4 +Set the date or number of days since January 1, 1970 on which the user\*(Aqs account will no longer be accessible\&. The date may also be expressed in the format YYYY\-MM\-DD (or the format more commonly used in your area)\&. A user whose account is locked must contact the system administrator before being able to use the system again\&. +.sp +Passing the number +\fI\-1\fR +as the +\fIEXPIRE_DATE\fR +will remove an account expiration date\&. +.RE +.PP +\fB\-h\fR, \fB\-\-help\fR +.RS 4 +Visa hj\(:alpmeddelande och avsluta\&. +.RE +.PP +\fB\-I\fR, \fB\-\-inactive\fR\ \&\fIINAKTIV\fR +.RS 4 +Set the number of days of inactivity after a password has expired before the account is locked\&. The +\fIINACTIVE\fR +option is the number of days of inactivity\&. A user whose account is locked must contact the system administrator before being able to use the system again\&. +.sp +Passing the number +\fI\-1\fR +as the +\fIINACTIVE\fR +will remove an account\*(Aqs inactivity\&. +.RE +.PP +\fB\-l\fR, \fB\-\-list\fR +.RS 4 +Visa kontots \(oaldringsinformation +.RE +.PP +\fB\-m\fR, \fB\-\-mindays\fR\ \&\fIMIN_DAGAR\fR +.RS 4 +S\(:atter minimalt antal dagar mellan l\(:osenords\(:andringar till +\fIMIN_DAGAR\fR\&. Ett nollv\(:arde f\(:or detta f\(:alt betyder att anv\(:andaren kan \(:andra sitt l\(:osenord n\(:ar som helst\&. +.RE +.PP +\fB\-M\fR, \fB\-\-maxdays\fR\ \&\fIMAX_DAGAR\fR +.RS 4 +Set the maximum number of days during which a password is valid\&. When +\fIMAX_DAYS\fR +plus +\fILAST_DAY\fR +is less than the current day, the user will be required to change his/her password before being able to use his/her account\&. This occurrence can be planned for in advance by use of the +\fB\-W\fR +option, which provides the user with advance warning\&. +.sp +Passing the number +\fI\-1\fR +as +\fIMAX_DAYS\fR +will remove checking a password\*(Aqs validity\&. +.RE +.PP +\fB\-R\fR, \fB\-\-root\fR\ \&\fICHROOT_DIR\fR +.RS 4 +Apply changes in the +\fICHROOT_DIR\fR +directory and use the configuration files from the +\fICHROOT_DIR\fR +directory\&. +.RE +.PP +\fB\-W\fR, \fB\-\-warndays\fR\ \&\fIVARN_DAGAR\fR +.RS 4 +Set the number of days of warning before a password change is required\&. The +\fIWARN_DAYS\fR +option is the number of days prior to the password expiring that a user will be warned his/her password is about to expire\&. +.RE +.PP +If none of the options are selected, +\fBchage\fR +operates in an interactive fashion, prompting the user with the current values for all of the fields\&. Enter the new value to change the field, or leave the line blank to use the current value\&. The current value is displayed between a pair of +\fI[ ]\fR +marks\&. +.SH "NOTERA" +.PP +Programmet +\fBchage\fR +kr\(:aver att en skuggl\(:osenordsfil finns tillg\(:anglig\&. +.PP +The +\fBchage\fR +command is restricted to the root user, except for the +\fB\-l\fR +option, which may be used by an unprivileged user to determine when his/her password or account is due to expire\&. +.SH "CONFIGURATION" +.PP +The following configuration variables in +/etc/login\&.defs +change the behavior of this tool: +.SH "FILER" +.PP +/etc/passwd +.RS 4 +Anv\(:andarkontoinformation\&. +.RE +.PP +/etc/shadow +.RS 4 +S\(:aker anv\(:andarkontoinformation\&. +.RE +.SH "AVSLUTNINGSV\(:ARDEN" +.PP +Kommandot +\fBchage\fR +avslutas med f\(:oljande v\(:arden: +.PP +\fI0\fR +.RS 4 +lyckad +.RE +.PP +\fI1\fR +.RS 4 +\(oatkomst nekad +.RE +.PP +\fI2\fR +.RS 4 +ogiltig kommandosyntax +.RE +.PP +\fI15\fR +.RS 4 +kan inte hitta skuggl\(:osenordsfilen +.RE +.SH "SE OCKS\(oA" +.PP +\fBpasswd\fR(5), +\fBshadow\fR(5)\&. diff --git a/man/sv/man1/chsh.1 b/man/sv/man1/chsh.1 new file mode 100644 index 00000000..b21b6d58 --- /dev/null +++ b/man/sv/man1/chsh.1 @@ -0,0 +1,121 @@ +'\" t +.\" Title: chsh +.\" Author: Julianne Frances Haugh +.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/> +.\" Date: 18-09-2016 +.\" Manual: Anv\(:andarkommandon +.\" Source: shadow-utils 4.4 +.\" Language: Swedish +.\" +.TH "CHSH" "1" "18-09-2016" "shadow\-utils 4\&.4" "Anv\(:andarkommandon" +.\" ----------------------------------------------------------------- +.\" * 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 "NAMN" +chsh \- \(:andra inloggningsskal +.SH "SYNOPSIS" +.HP \w'\fBchsh\fR\ 'u +\fBchsh\fR [\fIflaggor\fR] [\fIINLOGGNINGSNAMN\fR] +.SH "BESKRIVNING" +.PP +The +\fBchsh\fR +command changes the user login shell\&. This determines the name of the user\*(Aqs initial login command\&. A normal user may only change the login shell for her own account; the superuser may change the login shell for any account\&. +.SH "FLAGGOR" +.PP +Flaggorna som g\(:aller f\(:or kommandot +\fBchsh\fR +\(:ar: +.PP +\fB\-h\fR, \fB\-\-help\fR +.RS 4 +Visa hj\(:alpmeddelande och avsluta\&. +.RE +.PP +\fB\-R\fR, \fB\-\-root\fR\ \&\fICHROOT_DIR\fR +.RS 4 +Apply changes in the +\fICHROOT_DIR\fR +directory and use the configuration files from the +\fICHROOT_DIR\fR +directory\&. +.RE +.PP +\fB\-s\fR, \fB\-\-shell\fR\ \&\fISKAL\fR +.RS 4 +The name of the user\*(Aqs new login shell\&. Setting this field to blank causes the system to select the default login shell\&. +.RE +.PP +If the +\fB\-s\fR +option is not selected, +\fBchsh\fR +operates in an interactive fashion, prompting the user with the current login shell\&. Enter the new value to change the shell, or leave the line blank to use the current one\&. The current shell is displayed between a pair of +\fI[ ]\fR +marks\&. +.SH "NOTERA" +.PP +The only restriction placed on the login shell is that the command name must be listed in +/etc/shells, unless the invoker is the superuser, and then any value may be added\&. An account with a restricted login shell may not change her login shell\&. For this reason, placing +/bin/rsh +in +/etc/shells +is discouraged since accidentally changing to a restricted shell would prevent the user from ever changing her login shell back to its original value\&. +.SH "CONFIGURATION" +.PP +The following configuration variables in +/etc/login\&.defs +change the behavior of this tool: +.PP +\fBCHSH_AUTH\fR (boolean) +.RS 4 +If +\fIyes\fR, the +\fBchsh\fR +program will require authentication before making any changes, unless run by the superuser\&. +.RE +.PP +\fBLOGIN_STRING\fR (string) +.RS 4 +The string used for prompting a password\&. The default is to use "Password: ", or a translation of that string\&. If you set this variable, the prompt will not be translated\&. +.sp +If the string contains +\fI%s\fR, this will be replaced by the user\*(Aqs name\&. +.RE +.SH "FILER" +.PP +/etc/passwd +.RS 4 +Anv\(:andarkontoinformation\&. +.RE +.PP +/etc/shells +.RS 4 +Lista p\(oa giltiga inloggningsskal\&. +.RE +.PP +/etc/login\&.defs +.RS 4 +Shadow password suite configuration\&. +.RE +.SH "SE OCKS\(oA" +.PP +\fBchfn\fR(1), +\fBlogin.defs\fR(5), +\fBpasswd\fR(5)\&. diff --git a/man/sv/man1/expiry.1 b/man/sv/man1/expiry.1 new file mode 100644 index 00000000..1a97b859 --- /dev/null +++ b/man/sv/man1/expiry.1 @@ -0,0 +1,74 @@ +'\" t +.\" Title: expiry +.\" Author: Julianne Frances Haugh +.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/> +.\" Date: 18-09-2016 +.\" Manual: Anv\(:andarkommandon +.\" Source: shadow-utils 4.4 +.\" Language: Swedish +.\" +.TH "EXPIRY" "1" "18-09-2016" "shadow\-utils 4\&.4" "Anv\(:andarkommandon" +.\" ----------------------------------------------------------------- +.\" * 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 "NAMN" +expiry \- kontrollera och uppr\(:atth\(oall policy f\(:or l\(:osenordsutg\(oang +.SH "SYNOPSIS" +.HP \w'\fBexpiry\fR\ 'u +\fBexpiry\fR \fIoption\fR +.SH "BESKRIVNING" +.PP +The +\fBexpiry\fR +command checks (\fB\-c\fR) the current password expiration and forces (\fB\-f\fR) changes when required\&. It is callable as a normal user command\&. +.SH "FLAGGOR" +.PP +The options which apply to the +\fBexpiry\fR +command are: +.PP +\fB\-c\fR, \fB\-\-check\fR +.RS 4 +Check the password expiration of the current user\&. +.RE +.PP +\fB\-f\fR, \fB\-\-force\fR +.RS 4 +Force a password change if the current user has an expired password\&. +.RE +.PP +\fB\-h\fR, \fB\-\-help\fR +.RS 4 +Visa hj\(:alpmeddelande och avsluta\&. +.RE +.SH "FILER" +.PP +/etc/passwd +.RS 4 +Anv\(:andarkontoinformation\&. +.RE +.PP +/etc/shadow +.RS 4 +S\(:aker anv\(:andarkontoinformation\&. +.RE +.SH "SE OCKS\(oA" +.PP +\fBpasswd\fR(5), +\fBshadow\fR(5)\&. diff --git a/man/sv/man1/groups.1 b/man/sv/man1/groups.1 new file mode 100644 index 00000000..e7c797a0 --- /dev/null +++ b/man/sv/man1/groups.1 @@ -0,0 +1,64 @@ +'\" t +.\" Title: groups +.\" Author: Julianne Frances Haugh +.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/> +.\" Date: 18-09-2016 +.\" Manual: Anv\(:andarkommandon +.\" Source: shadow-utils 4.4 +.\" Language: Swedish +.\" +.TH "GROUPS" "1" "18-09-2016" "shadow\-utils 4\&.4" "Anv\(:andarkommandon" +.\" ----------------------------------------------------------------- +.\" * 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 "NAMN" +groups \- visa aktuella gruppnamn +.SH "SYNOPSIS" +.HP \w'\fBgroups\fR\ 'u +\fBgroups\fR [\fIanv\(:andare\fR] +.SH "BESKRIVNING" +.PP +The +\fBgroups\fR +command displays the current group names or ID values\&. If the value does not have a corresponding entry in +/etc/group, the value will be displayed as the numerical group value\&. The optional +\fIuser\fR +parameter will display the groups for the named +\fIuser\fR\&. +.SH "NOTERA" +.PP +Systems which do not support concurrent group sets will have the information from +/etc/group +reported\&. The user must use +\fBnewgrp\fR +or +\fBsg\fR +to change his current real and effective group ID\&. +.SH "FILER" +.PP +/etc/group +.RS 4 +Gruppkontoinformation\&. +.RE +.SH "SE OCKS\(oA" +.PP +\fBnewgrp\fR(1), +\fBgetgid\fR(2), +\fBgetgroups\fR(2), +\fBgetuid\fR(2)\&. diff --git a/man/sv/man1/id.1 b/man/sv/man1/id.1 new file mode 100644 index 00000000..8783e915 --- /dev/null +++ b/man/sv/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: 18-09-2016 +.\" Manual: Anv\(:andarkommandon +.\" Source: shadow-utils 4.4 +.\" Language: Swedish +.\" +.TH "ID" "1" "18-09-2016" "shadow\-utils 4\&.4" "Anv\(:andarkommandon" +.\" ----------------------------------------------------------------- +.\" * 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 "NAMN" +id \- display current user and group ID names +.SH "SYNOPSIS" +.HP \w'\fBid\fR\ 'u +\fBid\fR [\-a] +.SH "BESKRIVNING" +.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 "FILER" +.PP +/etc/group +.RS 4 +Gruppkontoinformation\&. +.RE +.PP +/etc/passwd +.RS 4 +Anv\(:andarkontoinformation\&. +.RE +.SH "SE OCKS\(oA" +.PP +\fBgetgid\fR(2), +\fBgetgroups\fR(2), +\fBgetuid\fR(2) diff --git a/man/sv/man1/newgrp.1 b/man/sv/man1/newgrp.1 new file mode 100644 index 00000000..2b910fd1 --- /dev/null +++ b/man/sv/man1/newgrp.1 @@ -0,0 +1,98 @@ +'\" t +.\" Title: newgrp +.\" Author: Julianne Frances Haugh +.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/> +.\" Date: 18-09-2016 +.\" Manual: Anv\(:andarkommandon +.\" Source: shadow-utils 4.4 +.\" Language: Swedish +.\" +.TH "NEWGRP" "1" "18-09-2016" "shadow\-utils 4\&.4" "Anv\(:andarkommandon" +.\" ----------------------------------------------------------------- +.\" * 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 "NAMN" +newgrp \- logga in i en ny grupp +.SH "SYNOPSIS" +.HP \w'\fBnewgrp\fR\ 'u +\fBnewgrp\fR [\-] [\fIgrupp\fR] +.SH "BESKRIVNING" +.PP +The +\fBnewgrp\fR +command is used to change the current group ID during a login session\&. If the optional +\fB\-\fR +flag is given, the user\*(Aqs environment will be reinitialized as though the user had logged in, otherwise the current environment, including current working directory, remains unchanged\&. +.PP +\fBnewgrp\fR +changes the current real group ID to the named group, or to the default group listed in +/etc/passwd +if no group name is given\&. +\fBnewgrp\fR +also tries to add the group to the user groupset\&. If not root, the user will be prompted for a password if she does not have a password (in +/etc/shadow +if this user has an entry in the shadowed password file, or in +/etc/passwd +otherwise) and the group does, or if the user is not listed as a member and the group has a password\&. The user will be denied access if the group password is empty and the user is not listed as a member\&. +.PP +If there is an entry for this group in +/etc/gshadow, then the list of members and the password of this group will be taken from this file, otherwise, the entry in +/etc/group +is considered\&. +.SH "CONFIGURATION" +.PP +The following configuration variables in +/etc/login\&.defs +change the behavior of this tool: +.PP +\fBSYSLOG_SG_ENAB\fR (boolean) +.RS 4 +Enable "syslog" logging of +\fBsg\fR +activity\&. +.RE +.SH "FILER" +.PP +/etc/passwd +.RS 4 +Anv\(:andarkontoinformation\&. +.RE +.PP +/etc/shadow +.RS 4 +S\(:aker anv\(:andarkontoinformation\&. +.RE +.PP +/etc/group +.RS 4 +Gruppkontoinformation\&. +.RE +.PP +/etc/gshadow +.RS 4 +S\(:aker gruppkontoinformation\&. +.RE +.SH "SE OCKS\(oA" +.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/sv/man1/passwd.1 b/man/sv/man1/passwd.1 new file mode 100644 index 00000000..b1231449 --- /dev/null +++ b/man/sv/man1/passwd.1 @@ -0,0 +1,361 @@ +'\" t +.\" Title: passwd +.\" Author: Julianne Frances Haugh +.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/> +.\" Date: 18-09-2016 +.\" Manual: Anv\(:andarkommandon +.\" Source: shadow-utils 4.4 +.\" Language: Swedish +.\" +.TH "PASSWD" "1" "18-09-2016" "shadow\-utils 4\&.4" "Anv\(:andarkommandon" +.\" ----------------------------------------------------------------- +.\" * 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 "NAMN" +passwd \- \(:andra anv\(:andarl\(:osenord +.SH "SYNOPSIS" +.HP \w'\fBpasswd\fR\ 'u +\fBpasswd\fR [\fIflaggor\fR] [\fIINLOGGNINGSNAMN\fR] +.SH "BESKRIVNING" +.PP +The +\fBpasswd\fR +command changes passwords for user accounts\&. A normal user may only change the password for his/her own account, while the superuser may change the password for any account\&. +\fBpasswd\fR +also changes the account or associated password validity period\&. +.SS "L\(:osenords\(:andringar" +.PP +The user is first prompted for his/her old password, if one is present\&. This password is then encrypted and compared against the stored password\&. The user has only one chance to enter the correct password\&. The superuser is permitted to bypass this step so that forgotten passwords may be changed\&. +.PP +Efter att l\(:osenordet har matats in kontrolleras l\(:osenordets \(oaldringsinformation f\(:or att se om anv\(:andaren till\(oats att \(:andra l\(:osenord f\(:or tillf\(:allet\&. Om inte, nekar +\fBpasswd\fR +att \(:andra l\(:osenordet och avslutas\&. +.PP +Anv\(:andaren fr\(oagas sedan tv\(oa g\(oanger efter ett ers\(:attande l\(:osenord\&. Den andra inmatningen j\(:amf\(:ors mot den f\(:orsta och b\(oada m\(oaste st\(:amma \(:overens f\(:or att l\(:osenordet ska \(:andras\&. +.PP +Sedan testas l\(:osenordet f\(:or sin komplexitet\&. Som en allm\(:an riktlinje b\(:or l\(:osenord inneh\(oalla 6 till 8 tecken och inkluderas ett eller flera tecken fr\(oan var och en av f\(:oljande punkter: +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +gemena bokst\(:aver ur alfabetet +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +siffrorna 0 till 9 +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +skiljetecken +.RE +.PP +T\(:ank p\(oa att inte inkludera systemets standardtecken f\(:or radering eller d\(:oda\&. +\fBpasswd\fR +kommer att neka alla l\(:osenord som inte har l\(:amplig komplexitet\&. +.SS "Tips f\(:or anv\(:andarl\(:osenord" +.PP +The security of a password depends upon the strength of the encryption algorithm and the size of the key space\&. The legacy +\fIUNIX\fR +System encryption method is based on the NBS DES algorithm\&. More recent methods are now recommended (see +\fBENCRYPT_METHOD\fR)\&. The size of the key space depends upon the randomness of the password which is selected\&. +.PP +Problem i l\(:osenordss\(:akerheten brukar normalt komma fr\(oan slarvigt valda l\(:osenord eller hantering\&. Av denna anledning b\(:or du inte v\(:alja ett l\(:osenord som finns i en ordbok eller som m\(oaste skrivas ner\&. L\(:osenordet b\(:or heller inte vara ett korrekt namn, ditt personnummer, f\(:odelsedatum eller gatuadress\&. Dessa kan anv\(:andas som gissningar f\(:or att ta sig in i systemet\&. +.PP +You can find advice on how to choose a strong password on http://en\&.wikipedia\&.org/wiki/Password_strength +.SH "FLAGGOR" +.PP +Flaggorna som g\(:aller f\(:or kommandot +\fBpasswd\fR +\(:ar: +.PP +\fB\-a\fR, \fB\-\-all\fR +.RS 4 +Denna flagga kan endast anv\(:andas med +\fB\-S\fR +och g\(:or att status visas f\(:or alla anv\(:andare\&. +.RE +.PP +\fB\-d\fR, \fB\-\-delete\fR +.RS 4 +Ta bort en anv\(:andares l\(:osenord (g\(:or det blankt)\&. Detta \(:ar ett snabbt s\(:att att inaktivera ett l\(:osenord f\(:or ett konto\&. Det kommer att ta bort det angivna kontots l\(:osenord\&. +.RE +.PP +\fB\-e\fR, \fB\-\-expire\fR +.RS 4 +L\(:osenordet f\(:or ett konto s\(:atts omedelbart som utg\(oanget\&. Detta kan tvinga en anv\(:andare att \(:andra sitt l\(:osenord vid n\(:asta inloggningsf\(:ors\(:ok\&. +.RE +.PP +\fB\-h\fR, \fB\-\-help\fR +.RS 4 +Visa hj\(:alpmeddelande och avsluta\&. +.RE +.PP +\fB\-i\fR, \fB\-\-inactive\fR\ \&\fIINAKTIV\fR +.RS 4 +Denna flagga anv\(:ands f\(:or att inaktivera ett konto efter att l\(:osenordet har varit utg\(oanget i ett antal dagar\&. Efter att ett anv\(:andarkonto har haft ett utg\(oanget l\(:osenord i +\fIINAKTIV\fR +dagar f\(oar anv\(:andaren inte l\(:angre logga in med detta konto\&. +.RE +.PP +\fB\-k\fR, \fB\-\-keep\-tokens\fR +.RS 4 +Indicate password change should be performed only for expired authentication tokens (passwords)\&. The user wishes to keep their non\-expired tokens as before\&. +.RE +.PP +\fB\-l\fR, \fB\-\-lock\fR +.RS 4 +Lock the password of the named account\&. This option disables a password by changing it to a value which matches no possible encrypted value (it adds a \(aa!\(aa at the beginning of the password)\&. +.sp +Note that this does not disable the account\&. The user may still be able to login using another authentication token (e\&.g\&. an SSH key)\&. To disable the account, administrators should use +\fBusermod \-\-expiredate 1\fR +(this set the account\*(Aqs expire date to Jan 2, 1970)\&. +.sp +Users with a locked password are not allowed to change their password\&. +.RE +.PP +\fB\-n\fR, \fB\-\-mindays\fR\ \&\fIMIN_DAYS\fR +.RS 4 +S\(:atter minimalt antal dagar mellan l\(:osenords\(:andringar till +\fIMIN_DAGAR\fR\&. Ett nollv\(:arde f\(:or detta f\(:alt betyder att anv\(:andaren kan \(:andra sitt l\(:osenord n\(:ar som helst\&. +.RE +.PP +\fB\-q\fR, \fB\-\-quiet\fR +.RS 4 +Tyst l\(:age\&. +.RE +.PP +\fB\-r\fR, \fB\-\-repository\fR\ \&\fIF\(:ORR\(oAD\fR +.RS 4 +change password in +\fIREPOSITORY\fR +repository +.RE +.PP +\fB\-R\fR, \fB\-\-root\fR\ \&\fICHROOT_DIR\fR +.RS 4 +Apply changes in the +\fICHROOT_DIR\fR +directory and use the configuration files from the +\fICHROOT_DIR\fR +directory\&. +.RE +.PP +\fB\-S\fR, \fB\-\-status\fR +.RS 4 +Display account status information\&. The status information consists of 7 fields\&. The first field is the user\*(Aqs login name\&. The second field indicates if the user account has a locked password (L), has no password (NP), or has a usable password (P)\&. The third field gives the date of the last password change\&. The next four fields are the minimum age, maximum age, warning period, and inactivity period for the password\&. These ages are expressed in days\&. +.RE +.PP +\fB\-u\fR, \fB\-\-unlock\fR +.RS 4 +Unlock the password of the named account\&. This option re\-enables a password by changing the password back to its previous value (to the value before using the +\fB\-l\fR +option)\&. +.RE +.PP +\fB\-w\fR, \fB\-\-warndays\fR\ \&\fIVARN_DAGAR\fR +.RS 4 +S\(:atter antalet dagar f\(:or varning f\(:ore ett l\(:osenord beh\(:over \(:andras\&. Flaggan +\fIVARN_DAGAR\fR +\(:ar antalet dagar f\(:ore anv\(:andaren varnas om att l\(:osenordet \(:ar p\(oa v\(:ag att bli utg\(oanget\&. +.RE +.PP +\fB\-x\fR, \fB\-\-maxdays\fR\ \&\fIMAX_DAGAR\fR +.RS 4 +S\(:atter maximalt antal dagar som ett l\(:osenord ska vara giltigt\&. Efter +\fIMAX_DAGAR\fR +kr\(:avs det att l\(:osenordet \(:andras\&. +.RE +.SH "T\(:ANK P\(oA" +.PP +Password complexity checking may vary from site to site\&. The user is urged to select a password as complex as he or she feels comfortable with\&. +.PP +Users may not be able to change their password on a system if NIS is enabled and they are not logged into the NIS server\&. +.SH "CONFIGURATION" +.PP +The following configuration variables in +/etc/login\&.defs +change the behavior of this tool: +.PP +\fBENCRYPT_METHOD\fR (string) +.RS 4 +This defines the system default encryption algorithm for encrypting passwords (if no algorithm are specified on the command line)\&. +.sp +It can take one of these values: +\fIDES\fR +(default), +\fIMD5\fR, \fISHA256\fR, \fISHA512\fR\&. +.sp +Note: this parameter overrides the +\fBMD5_CRYPT_ENAB\fR +variable\&. +.RE +.PP +\fBMD5_CRYPT_ENAB\fR (boolean) +.RS 4 +Indicate if passwords must be encrypted using the MD5\-based algorithm\&. If set to +\fIyes\fR, new passwords will be encrypted using the MD5\-based algorithm compatible with the one used by recent releases of FreeBSD\&. It supports passwords of unlimited length and longer salt strings\&. Set to +\fIno\fR +if you need to copy encrypted passwords to other systems which don\*(Aqt understand the new algorithm\&. Default is +\fIno\fR\&. +.sp +This variable is superseded by the +\fBENCRYPT_METHOD\fR +variable or by any command line option used to configure the encryption algorithm\&. +.sp +This variable is deprecated\&. You should use +\fBENCRYPT_METHOD\fR\&. +.RE +.PP +\fBOBSCURE_CHECKS_ENAB\fR (boolean) +.RS 4 +Enable additional checks upon password changes\&. +.RE +.PP +\fBPASS_ALWAYS_WARN\fR (boolean) +.RS 4 +Warn about weak passwords (but still allow them) if you are root\&. +.RE +.PP +\fBPASS_CHANGE_TRIES\fR (number) +.RS 4 +Maximum number of attempts to change password if rejected (too easy)\&. +.RE +.PP +\fBPASS_MAX_LEN\fR (number), \fBPASS_MIN_LEN\fR (number) +.RS 4 +Number of significant characters in the password for crypt()\&. +\fBPASS_MAX_LEN\fR +is 8 by default\&. Don\*(Aqt change unless your crypt() is better\&. This is ignored if +\fBMD5_CRYPT_ENAB\fR +set to +\fIyes\fR\&. +.RE +.PP +\fBSHA_CRYPT_MIN_ROUNDS\fR (number), \fBSHA_CRYPT_MAX_ROUNDS\fR (number) +.RS 4 +When +\fBENCRYPT_METHOD\fR +is set to +\fISHA256\fR +or +\fISHA512\fR, this defines the number of SHA rounds used by the encryption algorithm by default (when the number of rounds is not specified on the command line)\&. +.sp +With a lot of rounds, it is more difficult to brute forcing the password\&. But note also that more CPU resources will be needed to authenticate users\&. +.sp +If not specified, the libc will choose the default number of rounds (5000)\&. +.sp +The values must be inside the 1000\-999,999,999 range\&. +.sp +If only one of the +\fBSHA_CRYPT_MIN_ROUNDS\fR +or +\fBSHA_CRYPT_MAX_ROUNDS\fR +values is set, then this value will be used\&. +.sp +If +\fBSHA_CRYPT_MIN_ROUNDS\fR +> +\fBSHA_CRYPT_MAX_ROUNDS\fR, the highest value will be used\&. +.RE +.SH "FILER" +.PP +/etc/passwd +.RS 4 +Anv\(:andarkontoinformation\&. +.RE +.PP +/etc/shadow +.RS 4 +S\(:aker anv\(:andarkontoinformation\&. +.RE +.PP +/etc/login\&.defs +.RS 4 +Shadow password suite configuration\&. +.RE +.SH "AVSLUTNINGSV\(:ARDEN" +.PP +Kommandot +\fBpasswd\fR +avslutas med f\(:oljande v\(:arden: +.PP +\fI0\fR +.RS 4 +lyckad +.RE +.PP +\fI1\fR +.RS 4 +\(oatkomst nekad +.RE +.PP +\fI2\fR +.RS 4 +ogiltig kombination av flaggor +.RE +.PP +\fI3\fR +.RS 4 +ov\(:antat fel, ingenting har genomf\(:orts +.RE +.PP +\fI4\fR +.RS 4 +ov\(:antat fel, filen +passwd +saknas +.RE +.PP +\fI5\fR +.RS 4 +Filen +passwd +\(:ar upptagen, f\(:ors\(:ok igen +.RE +.PP +\fI6\fR +.RS 4 +ogiltigt argument till flagga +.RE +.SH "SE OCKS\(oA" +.PP +\fBchpasswd\fR(8), +\fBpasswd\fR(5), +\fBshadow\fR(5), +\fBlogin.defs\fR(5), +\fBusermod\fR(8)\&. diff --git a/man/sv/man1/sg.1 b/man/sv/man1/sg.1 new file mode 100644 index 00000000..39296c2e --- /dev/null +++ b/man/sv/man1/sg.1 @@ -0,0 +1,97 @@ +'\" t +.\" Title: sg +.\" Author: Julianne Frances Haugh +.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/> +.\" Date: 18-09-2016 +.\" Manual: Anv\(:andarkommandon +.\" Source: shadow-utils 4.4 +.\" Language: Swedish +.\" +.TH "SG" "1" "18-09-2016" "shadow\-utils 4\&.4" "Anv\(:andarkommandon" +.\" ----------------------------------------------------------------- +.\" * 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 "NAMN" +sg \- k\(:or kommando med annat grupp\-id +.SH "SYNOPSIS" +.HP \w'\fBsg\fR\ 'u +\fBsg\fR [\-] [grupp\ [\-c]\ kommando] +.SH "BESKRIVNING" +.PP +The +\fBsg\fR +command works similar to +\fBnewgrp\fR +but accepts a command\&. The command will be executed with the +/bin/sh +shell\&. With most shells you may run +\fBsg\fR +from, you need to enclose multi\-word commands in quotes\&. Another difference between +\fBnewgrp\fR +and +\fBsg\fR +is that some shells treat +\fBnewgrp\fR +specially, replacing themselves with a new instance of a shell that +\fBnewgrp\fR +creates\&. This doesn\*(Aqt happen with +\fBsg\fR, so upon exit from a +\fBsg\fR +command you are returned to your previous group ID\&. +.SH "CONFIGURATION" +.PP +The following configuration variables in +/etc/login\&.defs +change the behavior of this tool: +.PP +\fBSYSLOG_SG_ENAB\fR (boolean) +.RS 4 +Enable "syslog" logging of +\fBsg\fR +activity\&. +.RE +.SH "FILER" +.PP +/etc/passwd +.RS 4 +Anv\(:andarkontoinformation\&. +.RE +.PP +/etc/shadow +.RS 4 +S\(:aker anv\(:andarkontoinformation\&. +.RE +.PP +/etc/group +.RS 4 +Gruppkontoinformation\&. +.RE +.PP +/etc/gshadow +.RS 4 +S\(:aker gruppkontoinformation\&. +.RE +.SH "SE OCKS\(oA" +.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/sv/man3/getspnam.3 b/man/sv/man3/getspnam.3 new file mode 100644 index 00000000..cd473da3 --- /dev/null +++ b/man/sv/man3/getspnam.3 @@ -0,0 +1 @@ +.so man3/shadow.3 diff --git a/man/sv/man3/shadow.3 b/man/sv/man3/shadow.3 new file mode 100644 index 00000000..7e2931ec --- /dev/null +++ b/man/sv/man3/shadow.3 @@ -0,0 +1,245 @@ +'\" t +.\" Title: shadow +.\" Author: Julianne Frances Haugh +.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/> +.\" Date: 18-09-2016 +.\" Manual: Biblioteksanrop +.\" Source: shadow-utils 4.4 +.\" Language: Swedish +.\" +.TH "SHADOW" "3" "18-09-2016" "shadow\-utils 4\&.4" "Biblioteksanrop" +.\" ----------------------------------------------------------------- +.\" * 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 "NAMN" +shadow, getspnam \- encrypted password file routines +.SH "SYNTAX" +.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 +\fIFIL\fR +\fI*fp\fR\fI);\fR +.PP +\fIint lckpwdf();\fR +.PP +\fIint ulckpwdf();\fR +.SH "BESKRIVNING" +.PP +\fIshadow\fR +manipulates the contents of the shadow password file, +/etc/shadow\&. The structure in the +\fI#include\fR +file is: +.sp +.if n \{\ +.RS 4 +.\} +.nf +struct spwd { + char *sp_namp; /* user login name */ + char *sp_pwdp; /* encrypted password */ + long int sp_lstchg; /* last password change */ + long int sp_min; /* days until change allowed\&. */ + long int sp_max; /* days before change required */ + long int sp_warn; /* days warning for expiration */ + long int sp_inact; /* days before account inactive */ + long int sp_expire; /* date when account expires */ + unsigned long int sp_flag; /* reserved for future use */ +} + +.fi +.if n \{\ +.RE +.\} +.PP +Betydelsen av varje f\(:alt \(:ar: +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +sp_namp \- pointer to null\-terminated user name +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +sp_pwdp \- pointer to null\-terminated password +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +sp_lstchg \- days since Jan 1, 1970 password was last changed +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +sp_min \- days before which password may not be changed +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +sp_max \- days after which password must be changed +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +sp_warn \- days before password is to expire that user is warned of pending password expiration +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +sp_inact \- days after password expires that account is considered inactive and disabled +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +sp_expire \- days since Jan 1, 1970 when account will be disabled +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +sp_flag \- reserverat f\(:or framtida anv\(:andning +.RE +.SH "BESKRIVNING" +.PP +\fIgetspent\fR, +\fIgetspname\fR, +\fIfgetspent\fR, and +\fIsgetspent\fR +each return a pointer to a +\fIstruct spwd\fR\&. +\fIgetspent\fR +returns the next entry from the file, and +\fIfgetspent\fR +returns the next entry from the given stream, which is assumed to be a file of the proper format\&. +\fIsgetspent\fR +returns a pointer to a +\fIstruct spwd\fR +using the provided string as input\&. +\fIgetspnam\fR +searches from the current position in the file for an entry matching +\fIname\fR\&. +.PP +\fIsetspent\fR +and +\fIendspent\fR +may be used to begin and end, respectively, access to the shadow password file\&. +.PP +The +\fIlckpwdf\fR +and +\fIulckpwdf\fR +routines should be used to insure exclusive access to the +/etc/shadow +file\&. +\fIlckpwdf\fR +attempts to acquire a lock using +\fIpw_lock\fR +for up to 15 seconds\&. It continues by attempting to acquire a second lock using +\fIspw_lock\fR +for the remainder of the initial 15 seconds\&. Should either attempt fail after a total of 15 seconds, +\fIlckpwdf\fR +returns \-1\&. When both locks are acquired 0 is returned\&. +.SH "DIAGNOSTIK" +.PP +Routines return NULL if no more entries are available or if an error occurs during processing\&. Routines which have +\fIint\fR +as the return value return 0 for success and \-1 for failure\&. +.SH "T\(:ANK P\(oA" +.PP +These routines may only be used by the superuser as access to the shadow password file is restricted\&. +.SH "FILER" +.PP +/etc/shadow +.RS 4 +S\(:aker anv\(:andarkontoinformation\&. +.RE +.SH "SE OCKS\(oA" +.PP +\fBgetpwent\fR(3), +\fBshadow\fR(5)\&. diff --git a/man/sv/man5/faillog.5 b/man/sv/man5/faillog.5 new file mode 100644 index 00000000..75cd62bf --- /dev/null +++ b/man/sv/man5/faillog.5 @@ -0,0 +1,64 @@ +'\" t +.\" Title: faillog +.\" Author: Julianne Frances Haugh +.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/> +.\" Date: 18-09-2016 +.\" Manual: Filformat och konversioner +.\" Source: shadow-utils 4.4 +.\" Language: Swedish +.\" +.TH "FAILLOG" "5" "18-09-2016" "shadow\-utils 4\&.4" "Filformat och konversioner" +.\" ----------------------------------------------------------------- +.\" * 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 "NAMN" +faillog \- login failure logging file +.SH "BESKRIVNING" +.PP +/var/log/faillog +maintains a count of login failures and the limits for each account\&. +.PP +The file contains fixed length records, indexed by numerical UID\&. Each record contains the count of login failures since the last successful login; the maximum number of failures before the account is disabled; the line on which the last login failure occurred; the date of the last login failure; and the duration (in seconds) during which the account will be locked after a failure\&. +.PP +Strukturen f\(:or filen \(:ar: +.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 "FILER" +.PP +/var/log/faillog +.RS 4 +Failure logging file\&. +.RE +.SH "SE OCKS\(oA" +.PP +\fBfaillog\fR(8) diff --git a/man/sv/man5/gshadow.5 b/man/sv/man5/gshadow.5 new file mode 100644 index 00000000..ec9ad510 --- /dev/null +++ b/man/sv/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: 18-09-2016 +.\" Manual: Filformat och konversioner +.\" Source: shadow-utils 4.4 +.\" Language: Swedish +.\" +.TH "GSHADOW" "5" "18-09-2016" "shadow\-utils 4\&.4" "Filformat och konversioner" +.\" ----------------------------------------------------------------- +.\" * 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 "NAMN" +gshadow \- skuggad gruppfil +.SH "BESKRIVNING" +.PP +/etc/gshadow +contains the shadowed information for group accounts\&. +.PP +Denna fil f\(oar inte vara l\(:asbar av vanliga anv\(:andare om l\(:osenordss\(:akerheten ska uppr\(:atth\(oallas\&. +.PP +Each line of this file contains the following colon\-separated fields: +.PP +\fBgruppnamn\fR +.RS 4 +It must be a valid group name, which exist on the system\&. +.RE +.PP +\fBkrypterat l\(:osenord\fR +.RS 4 +Referera till +\fBcrypt\fR(3) +f\(:or detaljer om hur denna str\(:ang tolkas\&. +.sp +If the password field contains some string that is not a valid result of +\fBcrypt\fR(3), for instance ! or *, users will not be able to use a unix password to access the group (but group members do not need the password)\&. +.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 +This field may be empty, in which case only the group members can gain the group permissions\&. +.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 +This password supersedes any password specified in +/etc/group\&. +.RE +.PP +\fBadministrators\fR +.RS 4 +It must be a comma\-separated list of user names\&. +.sp +Administrators can change the password or the members of the group\&. +.sp +Administrators also have the same permissions as the members (see below)\&. +.RE +.PP +\fBmembers\fR +.RS 4 +It must be a comma\-separated list of user names\&. +.sp +Members can access the group without being prompted for a password\&. +.sp +You should use the same list of users as in +/etc/group\&. +.RE +.SH "FILER" +.PP +/etc/group +.RS 4 +Gruppkontoinformation\&. +.RE +.PP +/etc/gshadow +.RS 4 +S\(:aker gruppkontoinformation\&. +.RE +.SH "SE OCKS\(oA" +.PP +\fBgpasswd\fR(5), +\fBgroup\fR(5), +\fBgrpck\fR(8), +\fBgrpconv\fR(8), +\fBnewgrp\fR(1)\&. diff --git a/man/sv/man5/limits.5 b/man/sv/man5/limits.5 new file mode 100644 index 00000000..00d28df1 --- /dev/null +++ b/man/sv/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: 18-09-2016 +.\" Manual: Filformat och konversioner +.\" Source: shadow-utils 4.4 +.\" Language: Swedish +.\" +.TH "LIMITS" "5" "18-09-2016" "shadow\-utils 4\&.4" "Filformat och konversioner" +.\" ----------------------------------------------------------------- +.\" * 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 "NAMN" +limits \- definition av resursbegr\(:ansningar +.SH "BESKRIVNING" +.PP +The +\fIlimits\fR +file (/etc/limits +by default or LIMITS_FILE defined +config\&.h) describes the resource limits you wish to impose\&. It should be owned by root and readable by root account only\&. +.PP +By default no quota is imposed on \*(Aqroot\*(Aq\&. In fact, there is no way to impose limits via this procedure to root\-equiv accounts (accounts with UID 0)\&. +.PP +Varje rad beskriver en begr\(:ansning f\(:or anv\(:andaren i formatet: +.PP +\fIuser LIMITS_STRING\fR +.PP +or in the form: +.PP +\fI@group LIMITS_STRING\fR +.PP +The +\fILIMITS_STRING\fR +is a string of a concatenated list of resource limits\&. Each limit consists of a letter identifier followed by a numerical limit\&. +.PP +De giltiga identifierarna \(:ar: +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +A: maximal adressrymd (KB) +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +C: max core file size (KB) +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +D: maximal datastorlek (KB) +.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: file creation mask, set by +\fBumask\fR(2)\&. +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +I: max nice value (0\&.\&.39 which translates to 20\&.\&.\-19) +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +L: maximalt antal inloggningar f\(:or denna anv\(:andare +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +M: max locked\-in\-memory address space (KB) +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +N: maximalt antal \(:oppna filer +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +O: max real time priority +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +P: processprioritet, inst\(:alld av +\fBsetpriority\fR(2)\&. +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +R: max resident set size (KB) +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +S: maximal stackstorlek (KB) +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +T: maximal processortid (MIN) +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +U: maximalt antal processer +.RE +.PP +For example, +\fIL2D2048N5\fR +is a valid +\fILIMITS_STRING\fR\&. For reading convenience, the following entries are equivalent: +.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 +The default entry is denoted by username "\fI*\fR"\&. If you have multiple +\fIdefault\fR +entries in your +\fILIMITS_FILE\fR, then the last one will be used as the default entry\&. +.PP +The limits specified in the form "\fI@group\fR" apply to the members of the specified +\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 +To completely disable limits for a user, a single dash "\fI\-\fR" will do\&. +.PP +To disable a limit for a user, a single dash "\fI\-\fR" can be used instead of the numerical value for this limit\&. +.PP +Also, please note that all limit settings are set PER LOGIN\&. They are not global, nor are they permanent\&. Perhaps global limits will come, but for now this will have to do ;) +.SH "FILER" +.PP +/etc/limits +.RS 4 +.RE +.SH "SE OCKS\(oA" +.PP +\fBlogin\fR(1), +\fBsetpriority\fR(2), +\fBsetrlimit\fR(2)\&. diff --git a/man/sv/man5/passwd.5 b/man/sv/man5/passwd.5 new file mode 100644 index 00000000..a151c1d2 --- /dev/null +++ b/man/sv/man5/passwd.5 @@ -0,0 +1,179 @@ +'\" t +.\" Title: passwd +.\" Author: Julianne Frances Haugh +.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/> +.\" Date: 18-09-2016 +.\" Manual: Filformat och konversioner +.\" Source: shadow-utils 4.4 +.\" Language: Swedish +.\" +.TH "PASSWD" "5" "18-09-2016" "shadow\-utils 4\&.4" "Filformat och konversioner" +.\" ----------------------------------------------------------------- +.\" * 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 "NAMN" +passwd \- l\(:osenordsfilen +.SH "BESKRIVNING" +.PP +/etc/passwd +inneh\(oaller en rad f\(:or varje anv\(:andarkonto men sju f\(:alt separerade med kolontecken (\(rq:\(rq)\&. Dessa f\(:alt \(:ar: +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +inloggningsnamn +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +valfritt krypterat l\(:osenord +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +numeriskt anv\(:andar\-id +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +numeriskt grupp\-id +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +anv\(:andarnamn eller kommentarsf\(:alt +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +anv\(:andarens hemkatalog +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +optional user command interpreter +.RE +.PP +The encrypted password field may be blank, in which case no password is required to authenticate as the specified login name\&. However, some applications which read the +/etc/passwd +file may decide not to permit +\fIany\fR +access at all if the +\fIpassword\fR +field is blank\&. If the +\fIpassword\fR +field is a lower\-case +\(rqx\(rq, then the encrypted password is actually stored in the +\fBshadow\fR(5) +file instead; there +\fImust\fR +be a corresponding line in the +/etc/shadow +file, or else the user account is invalid\&. If the +\fIpassword\fR +field is any other string, then it will be treated as an encrypted password, as specified by +\fBcrypt\fR(3)\&. +.PP +The comment field is used by various system utilities, such as +\fBfinger\fR(1)\&. +.PP +The home directory field provides the name of the initial working directory\&. The +\fBlogin\fR +program uses this information to set the value of the +\fB$HOME\fR +environmental variable\&. +.PP +The command interpreter field provides the name of the user\*(Aqs command language interpreter, or the name of the initial program to execute\&. The +\fBlogin\fR +program uses this information to set the value of the +\fB$SHELL\fR +environmental variable\&. If this field is empty, it defaults to the value +/bin/sh\&. +.SH "FILER" +.PP +/etc/passwd +.RS 4 +Anv\(:andarkontoinformation\&. +.RE +.PP +/etc/shadow +.RS 4 +optional encrypted password file +.RE +.PP +/etc/passwd\- +.RS 4 +Backup file for /etc/passwd\&. +.sp +Note that this file is used by the tools of the shadow toolsuite, but not by all user and password management tools\&. +.RE +.SH "SE OCKS\(oA" +.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/sv/man5/porttime.5 b/man/sv/man5/porttime.5 new file mode 100644 index 00000000..4a6da36c --- /dev/null +++ b/man/sv/man5/porttime.5 @@ -0,0 +1,96 @@ +'\" t +.\" Title: porttime +.\" Author: Julianne Frances Haugh +.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/> +.\" Date: 18-09-2016 +.\" Manual: Filformat och konversioner +.\" Source: shadow-utils 4.4 +.\" Language: Swedish +.\" +.TH "PORTTIME" "5" "18-09-2016" "shadow\-utils 4\&.4" "Filformat och konversioner" +.\" ----------------------------------------------------------------- +.\" * 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 "NAMN" +porttime \- port access time file +.SH "BESKRIVNING" +.PP +\fIporttime\fR +inneh\(oaller en lista av tty\-enheter, anv\(:andarnamn och till\(oatna inloggningstider\&. +.PP +Each entry consists of three colon separated fields\&. The first field is a comma separated list of tty devices, or an asterisk to indicate that all tty devices are matched by this entry\&. The second field is a comma separated list of user names, or an asterisk to indicated that all user names are matched by this entry\&. The third field is a comma separated list of permitted access times\&. +.PP +Each access time entry consists of zero or more days of the week, abbreviated +\fISu\fR, +\fIMo\fR, +\fITu\fR, +\fIWe\fR, +\fITh\fR, +\fIFr\fR, and +\fISa\fR, followed by a pair of times separated by a hyphen\&. The abbreviation +\fIWk\fR +may be used to represent Monday thru Friday, and +\fIAl\fR +may be used to indicate every day\&. If no days are given, +\fIAl\fR +is assumed\&. +.SH "EXEMPEL" +.PP +F\(:oljande post till\(oater \(oatkomst f\(:or anv\(:andaren +\fBjfh\fR +p\(oa varje port under veckodagar fr\(oan 09\&.00 till 17\&.00\&. +.PP +*:jfh:Wk0900\-1700 +.PP +De f\(:oljande posterna till\(oater \(oatkomst endast till anv\(:andarna +\fIroot\fR +och +\fIoper\fR +p\(oa +/dev/console +n\(:ar som helst\&. Detta illustrerar hur filen +/etc/porttime +\(:ar en ordnad lista f\(:or \(oatkomsttider\&. Alla andra anv\(:andare skulle matcha den andra poster, vilken inte till\(oater n\(oagon \(oatkomst oavsett tid\&. +.sp +.if n \{\ +.RS 4 +.\} +.nf + console:root,oper:Al0000\-2400 + console:*: + +.fi +.if n \{\ +.RE +.\} +.PP +F\(:olajnde post till\(oater \(oatkomst f\(:or anv\(:andaren +\fIgames\fR +p\(oa valfri port men inte under arbetstid\&. +.PP +*:games:Wk1700\-0900,SaSu0000\-2400 +.SH "FILER" +.PP +/etc/porttime +.RS 4 +Fil som inneh\(oaller port\(oatkomst +.RE +.SH "SE OCKS\(oA" +.PP +\fBlogin\fR(1)\&. diff --git a/man/sv/man5/suauth.5 b/man/sv/man5/suauth.5 new file mode 100644 index 00000000..3fa9ab26 --- /dev/null +++ b/man/sv/man5/suauth.5 @@ -0,0 +1,146 @@ +'\" t +.\" Title: suauth +.\" Author: Marek Micha\(/lkiewicz +.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/> +.\" Date: 18-09-2016 +.\" Manual: Filformat och konversioner +.\" Source: shadow-utils 4.4 +.\" Language: Swedish +.\" +.TH "SUAUTH" "5" "18-09-2016" "shadow\-utils 4\&.4" "Filformat och konversioner" +.\" ----------------------------------------------------------------- +.\" * 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 "NAMN" +suauth \- detaljerad kontrollfil f\(:or su +.SH "SYNOPSIS" +.HP \w'\fB/etc/suauth\fR\ 'u +\fB/etc/suauth\fR +.SH "BESKRIVNING" +.PP +The file +/etc/suauth +is referenced whenever the su command is called\&. It can change the behaviour of the su command, based upon: +.sp +.if n \{\ +.RS 4 +.\} +.nf + 1) the user su is targeting + +.fi +.if n \{\ +.RE +.\} +.PP +2) the user executing the su command (or any groups he might be a member of) +.PP +Filen \(:ar i f\(:oljande format, med de rader som inleds med # behandlas som kommentarsrader och ignoreras; +.sp +.if n \{\ +.RS 4 +.\} +.nf + till\-id:fr\(oan\-id:\(oATG\(:ARD + +.fi +.if n \{\ +.RE +.\} +.PP +Where to\-id is either the word +\fIALL\fR, a list of usernames delimited by "," or the words +\fIALL EXCEPT\fR +followed by a list of usernames delimited by ","\&. +.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 +\(oAtg\(:arden kan endast vara en av f\(:oljande f\(:or n\(:arvarande st\(:odda flaggor\&. +.PP +\fIDENY\fR +.RS 4 +F\(:ors\(:oket att anv\(:anda su stoppades f\(:ore ett l\(:osenord har efterfr\(oagats\&. +.RE +.PP +\fINOPASS\fR +.RS 4 +F\(:ors\(:oket att anv\(:anda su lyckades helt automatiskt; inget l\(:osenord har efterfr\(oagats\&. +.RE +.PP +\fIOWNPASS\fR +.RS 4 +F\(:or att su\-kommandot ska lyckas m\(oaste anv\(:andaren mata in sitt egna l\(:osenord\&. De blir fr\(oagade att g\(:ora detta\&. +.RE +.PP +Note there are three separate fields delimited by a colon\&. No whitespace must surround this colon\&. Also note that the file is examined sequentially line by line, and the first applicable rule is used without examining the file further\&. This makes it possible for a system administrator to exercise as fine control as he or she wishes\&. +.SH "EXEMPEL" +.sp +.if n \{\ +.RS 4 +.\} +.nf + # exempelfil f\(:or /etc/suauth + # + # Ett par priviligerade anv\(:andarnamn som + # kan su till root med sina egna l\(:osenord\&. + # + root:bosse,birddog:OWNPASS + # + # Alla andra kan inte su till root om de inte finns + # gruppen wheel\&. Det \(:ar s\(oa BSD g\(:or saker\&. + # + root:ALL EXCEPT GROUP wheel:DENY + # + # Kanske terry och birddog \(:ar konton som + # \(:ags av samma person\&. + # Tillg\(oang kan ges mellan dem utan + # l\(:osenord\&. + # + terry:birddog:NOPASS + birddog:terry:NOPASS + # + +.fi +.if n \{\ +.RE +.\} +.SH "FILER" +.PP +/etc/suauth +.RS 4 +.RE +.SH "FEL" +.PP +There could be plenty lurking\&. The file parser is particularly unforgiving about syntax errors, expecting no spurious whitespace (apart from beginning and end of lines), and a specific token delimiting different things\&. +.SH "DIAGNOSTIK" +.PP +An error parsing the file is reported using +\fBsyslogd\fR(8) +as level ERR on facility AUTH\&. +.SH "SE OCKS\(oA" +.PP +\fBsu\fR(1)\&. diff --git a/man/sv/man8/faillog.8 b/man/sv/man8/faillog.8 new file mode 100644 index 00000000..34da346f --- /dev/null +++ b/man/sv/man8/faillog.8 @@ -0,0 +1,165 @@ +'\" t +.\" Title: faillog +.\" Author: Julianne Frances Haugh +.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/> +.\" Date: 18-09-2016 +.\" Manual: Systemhanteringskommandon +.\" Source: shadow-utils 4.4 +.\" Language: Swedish +.\" +.TH "FAILLOG" "8" "18-09-2016" "shadow\-utils 4\&.4" "Systemhanteringskommandon" +.\" ----------------------------------------------------------------- +.\" * 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 "NAMN" +faillog \- display faillog records or set login failure limits +.SH "SYNOPSIS" +.HP \w'\fBfaillog\fR\ 'u +\fBfaillog\fR [\fIflaggor\fR] +.SH "BESKRIVNING" +.PP +\fBfaillog\fR +displays the contents of the failure log database (/var/log/faillog)\&. It can also set the failure counters and limits\&. When +\fBfaillog\fR +is run without arguments, it only displays the faillog records of the users who had a login failure\&. +.SH "FLAGGOR" +.PP +Flaggorna som g\(:aller f\(:or kommandot +\fBfaillog\fR +\(:ar: +.PP +\fB\-a\fR, \fB\-\-all\fR +.RS 4 +Display (or act on) faillog records for all users having an entry in the +faillog +database\&. +.sp +The range of users can be restricted with the +\fB\-u\fR +option\&. +.sp +In display mode, this is still restricted to existing users but forces the display of the faillog entries even if they are empty\&. +.sp +With the +\fB\-l\fR, +\fB\-m\fR, +\fB\-r\fR, +\fB\-t\fR +options, the users\*(Aq records are changed, even if the user does not exist on the system\&. This is useful to reset records of users that have been deleted or to set a policy in advance for a range of users\&. +.RE +.PP +\fB\-h\fR, \fB\-\-help\fR +.RS 4 +Visa hj\(:alpmeddelande och avsluta\&. +.RE +.PP +\fB\-l\fR, \fB\-\-lock\-secs\fR\ \&\fISEC\fR +.RS 4 +Lock account for +\fISEC\fR +seconds after failed login\&. +.sp +Write access to +/var/log/faillog +is required for this option\&. +.RE +.PP +\fB\-m\fR, \fB\-\-maximum\fR\ \&\fIMAX\fR +.RS 4 +Set the maximum number of login failures after the account is disabled to +\fIMAX\fR\&. +.sp +Selecting a +\fIMAX\fR +value of 0 has the effect of not placing a limit on the number of failed logins\&. +.sp +The maximum failure count should always be 0 for +\fIroot\fR +to prevent a denial of services attack against the system\&. +.sp +Write access to +/var/log/faillog +is required for this option\&. +.RE +.PP +\fB\-r\fR, \fB\-\-reset\fR +.RS 4 +Reset the counters of login failures\&. +.sp +Write access to +/var/log/faillog +is required for this option\&. +.RE +.PP +\fB\-R\fR, \fB\-\-root\fR\ \&\fICHROOT_DIR\fR +.RS 4 +Apply changes in the +\fICHROOT_DIR\fR +directory and use the configuration files from the +\fICHROOT_DIR\fR +directory\&. +.RE +.PP +\fB\-t\fR, \fB\-\-time\fR\ \&\fIDAGAR\fR +.RS 4 +Display faillog records more recent than +\fIDAYS\fR\&. +.RE +.PP +\fB\-u\fR, \fB\-\-user\fR\ \&\fILOGIN\fR|\fIRANGE\fR +.RS 4 +Display faillog record or maintains failure counters and limits (if used with +\fB\-l\fR, +\fB\-m\fR +or +\fB\-r\fR +options) only for the specified user(s)\&. +.sp +The users can be specified by a login name, a numerical user ID, or a +\fIRANGE\fR +of users\&. This +\fIRANGE\fR +of users can be specified with a min and max values (\fIUID_MIN\-UID_MAX\fR), a max value (\fI\-UID_MAX\fR), or a min value (\fIUID_MIN\-\fR)\&. +.RE +.PP +When none of the +\fB\-l\fR, +\fB\-m\fR, or +\fB\-r\fR +options are used, +\fBfaillog\fR +displays the faillog record of the specified user(s)\&. +.SH "T\(:ANK P\(oA" +.PP +\fBfaillog\fR +only prints out users with no successful login since the last failure\&. To print out a user who has had a successful login since their last failure, you must explicitly request the user with the +\fB\-u\fR +flag, or print out all users with the +\fB\-a\fR +flag\&. +.SH "FILER" +.PP +/var/log/faillog +.RS 4 +Failure logging file\&. +.RE +.SH "SE OCKS\(oA" +.PP +\fBlogin\fR(1), +\fBfaillog\fR(5)\&. diff --git a/man/sv/man8/groupadd.8 b/man/sv/man8/groupadd.8 new file mode 100644 index 00000000..ec41fff4 --- /dev/null +++ b/man/sv/man8/groupadd.8 @@ -0,0 +1,248 @@ +'\" t +.\" Title: groupadd +.\" Author: Julianne Frances Haugh +.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/> +.\" Date: 18-09-2016 +.\" Manual: Systemhanteringskommandon +.\" Source: shadow-utils 4.4 +.\" Language: Swedish +.\" +.TH "GROUPADD" "8" "18-09-2016" "shadow\-utils 4\&.4" "Systemhanteringskommandon" +.\" ----------------------------------------------------------------- +.\" * 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 "NAMN" +groupadd \- skapa en ny grupp +.SH "SYNOPSIS" +.HP \w'\fBgroupadd\fR\ 'u +\fBgroupadd\fR [\fIflaggor\fR] \fIgrupp\fR +.SH "BESKRIVNING" +.PP +The +\fBgroupadd\fR +command creates a new group account using the values specified on the command line plus the default values from the system\&. The new group will be entered into the system files as needed\&. +.SH "FLAGGOR" +.PP +Flaggorna som g\(:aller f\(:or kommandot +\fBgroupadd\fR +\(:ar: +.PP +\fB\-f\fR, \fB\-\-force\fR +.RS 4 +This option causes the command to simply exit with success status if the specified group already exists\&. When used with +\fB\-g\fR, and the specified GID already exists, another (unique) GID is chosen (i\&.e\&. +\fB\-g\fR +is turned off)\&. +.RE +.PP +\fB\-g\fR, \fB\-\-gid\fR\ \&\fIGID\fR +.RS 4 +The numerical value of the group\*(Aqs ID\&. This value must be unique, unless the +\fB\-o\fR +option is used\&. The value must be non\-negative\&. The default is to use the smallest ID value greater than or equal to +\fBGID_MIN\fR +and greater than every other group\&. +.sp +See also the +\fB\-r\fR +option and the +\fBGID_MAX\fR +description\&. +.RE +.PP +\fB\-h\fR, \fB\-\-help\fR +.RS 4 +Visa hj\(:alpmeddelande och avsluta\&. +.RE +.PP +\fB\-K\fR, \fB\-\-key\fR\ \&\fINYCKEL\fR=\fIV\(:ARDE\fR +.RS 4 +\(oAsidos\(:atter standardv\(:arden i +/etc/login\&.defs +(GID_MIN, GID_MAX och andra)\&. Flera flaggor av +\fB\-K\fR +kan anges\&. +.sp +Example: +\fB\-K\fR\ \&\fIGID_MIN\fR=\fI100\fR\ \& +\fB\-K\fR\ \&\fIGID_MAX\fR=\fI499\fR +.sp +Notera: +\fB\-K\fR\ \&\fIGID_MIN\fR=\fI10\fR,\fIGID_MAX\fR=\fI499\fR +fungerar \(:annu inte\&. +.RE +.PP +\fB\-o\fR, \fB\-\-non\-unique\fR +.RS 4 +This option permits to add a group with a non\-unique GID\&. +.RE +.PP +\fB\-p\fR, \fB\-\-password\fR\ \&\fIL\(:OSENORD\fR +.RS 4 +The encrypted password, as returned by +\fBcrypt\fR(3)\&. The default is to disable the password\&. +.sp +\fBNote:\fR +This option is not recommended because the password (or encrypted password) will be visible by users listing the processes\&. +.sp +You should make sure the password respects the system\*(Aqs password policy\&. +.RE +.PP +\fB\-r\fR, \fB\-\-system\fR +.RS 4 +Create a system group\&. +.sp +The numeric identifiers of new system groups are chosen in the +\fBSYS_GID_MIN\fR\-\fBSYS_GID_MAX\fR +range, defined in +login\&.defs, instead of +\fBGID_MIN\fR\-\fBGID_MAX\fR\&. +.RE +.PP +\fB\-R\fR, \fB\-\-root\fR\ \&\fICHROOT_DIR\fR +.RS 4 +Apply changes in the +\fICHROOT_DIR\fR +directory and use the configuration files from the +\fICHROOT_DIR\fR +directory\&. +.RE +.SH "CONFIGURATION" +.PP +The following configuration variables in +/etc/login\&.defs +change the behavior of this tool: +.PP +\fBGID_MAX\fR (number), \fBGID_MIN\fR (number) +.RS 4 +Range of group IDs used for the creation of regular groups by +\fBuseradd\fR, +\fBgroupadd\fR, or +\fBnewusers\fR\&. +.sp +The default value for +\fBGID_MIN\fR +(resp\&. +\fBGID_MAX\fR) is 1000 (resp\&. 60000)\&. +.RE +.PP +\fBMAX_MEMBERS_PER_GROUP\fR (number) +.RS 4 +Maximum members per group entry\&. When the maximum is reached, a new group entry (line) is started in +/etc/group +(with the same name, same password, and same GID)\&. +.sp +The default value is 0, meaning that there are no limits in the number of members in a group\&. +.sp +This feature (split group) permits to limit the length of lines in the group file\&. This is useful to make sure that lines for NIS groups are not larger than 1024 characters\&. +.sp +If you need to enforce such limit, you can use 25\&. +.sp +Note: split groups may not be supported by all tools (even in the Shadow toolsuite)\&. You should not use this variable unless you really need it\&. +.RE +.PP +\fBSYS_GID_MAX\fR (number), \fBSYS_GID_MIN\fR (number) +.RS 4 +Range of group IDs used for the creation of system groups by +\fBuseradd\fR, +\fBgroupadd\fR, or +\fBnewusers\fR\&. +.sp +The default value for +\fBSYS_GID_MIN\fR +(resp\&. +\fBSYS_GID_MAX\fR) is 101 (resp\&. +\fBGID_MIN\fR\-1)\&. +.RE +.SH "FILER" +.PP +/etc/group +.RS 4 +Gruppkontoinformation\&. +.RE +.PP +/etc/gshadow +.RS 4 +S\(:aker gruppkontoinformation\&. +.RE +.PP +/etc/login\&.defs +.RS 4 +Shadow password suite configuration\&. +.RE +.SH "T\(:ANK P\(oA" +.PP +Groupnames must start with a lower case letter or an underscore, followed by lower case letters, digits, underscores, or dashes\&. They can end with a dollar sign\&. In regular expression terms: [a\-z_][a\-z0\-9_\-]*[$]? +.PP +Groupnames may only be up to 16 characters long\&. +.PP +You may not add a NIS or LDAP group\&. This must be performed on the corresponding server\&. +.PP +If the groupname already exists in an external group database such as NIS or LDAP, +\fBgroupadd\fR +will deny the group creation request\&. +.SH "AVSLUTNINGSV\(:ARDEN" +.PP +Kommandot +\fBgroupadd\fR +avslutas med f\(:oljande v\(:arden: +.PP +\fI0\fR +.RS 4 +lyckad +.RE +.PP +\fI2\fR +.RS 4 +ogiltig kommandosyntax +.RE +.PP +\fI3\fR +.RS 4 +ogiltigt argument till flagga +.RE +.PP +\fI4\fR +.RS 4 +GID inte unikt (n\(:ar +\fB\-o\fR +inte anv\(:ands) +.RE +.PP +\fI9\fR +.RS 4 +gruppnamn inte unikt +.RE +.PP +\fI10\fR +.RS 4 +kan inte uppdatera gruppfilen +.RE +.SH "SE OCKS\(oA" +.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/sv/man8/groupdel.8 b/man/sv/man8/groupdel.8 new file mode 100644 index 00000000..745fd277 --- /dev/null +++ b/man/sv/man8/groupdel.8 @@ -0,0 +1,136 @@ +'\" t +.\" Title: groupdel +.\" Author: Julianne Frances Haugh +.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/> +.\" Date: 18-09-2016 +.\" Manual: Systemhanteringskommandon +.\" Source: shadow-utils 4.4 +.\" Language: Swedish +.\" +.TH "GROUPDEL" "8" "18-09-2016" "shadow\-utils 4\&.4" "Systemhanteringskommandon" +.\" ----------------------------------------------------------------- +.\" * 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 "NAMN" +groupdel \- ta bort en grupp +.SH "SYNOPSIS" +.HP \w'\fBgroupdel\fR\ 'u +\fBgroupdel\fR [\fIflaggor\fR] \fIGRUPP\fR +.SH "BESKRIVNING" +.PP +The +\fBgroupdel\fR +command modifies the system account files, deleting all entries that refer to +\fIGROUP\fR\&. The named group must exist\&. +.SH "FLAGGOR" +.PP +The options which apply to the +\fBgroupdel\fR +command are: +.PP +\fB\-h\fR, \fB\-\-help\fR +.RS 4 +Visa hj\(:alpmeddelande och avsluta\&. +.RE +.PP +\fB\-R\fR, \fB\-\-root\fR\ \&\fICHROOT_DIR\fR +.RS 4 +Apply changes in the +\fICHROOT_DIR\fR +directory and use the configuration files from the +\fICHROOT_DIR\fR +directory\&. +.RE +.SH "T\(:ANK P\(oA" +.PP +Du f\(oar inte ta bort den prim\(:ara gruppen f\(:or n\(oagon existerande anv\(:andare\&. Du m\(oaste ta bort anv\(:andaren innan du tar bort gruppen\&. +.PP +You should manually check all file systems to ensure that no files remain owned by this group\&. +.SH "CONFIGURATION" +.PP +The following configuration variables in +/etc/login\&.defs +change the behavior of this tool: +.PP +\fBMAX_MEMBERS_PER_GROUP\fR (number) +.RS 4 +Maximum members per group entry\&. When the maximum is reached, a new group entry (line) is started in +/etc/group +(with the same name, same password, and same GID)\&. +.sp +The default value is 0, meaning that there are no limits in the number of members in a group\&. +.sp +This feature (split group) permits to limit the length of lines in the group file\&. This is useful to make sure that lines for NIS groups are not larger than 1024 characters\&. +.sp +If you need to enforce such limit, you can use 25\&. +.sp +Note: split groups may not be supported by all tools (even in the Shadow toolsuite)\&. You should not use this variable unless you really need it\&. +.RE +.SH "FILER" +.PP +/etc/group +.RS 4 +Gruppkontoinformation\&. +.RE +.PP +/etc/gshadow +.RS 4 +S\(:aker gruppkontoinformation\&. +.RE +.SH "AVSLUTNINGSV\(:ARDEN" +.PP +Kommandot +\fBgroupdel\fR +avslutas med f\(:oljande v\(:arden: +.PP +\fI0\fR +.RS 4 +lyckad +.RE +.PP +\fI2\fR +.RS 4 +ogiltig kommandosyntax +.RE +.PP +\fI6\fR +.RS 4 +angiven grupp finns inte +.RE +.PP +\fI8\fR +.RS 4 +kan inte ta bort anv\(:andarens prim\(:ara grupp +.RE +.PP +\fI10\fR +.RS 4 +kan inte uppdatera gruppfilen +.RE +.SH "SE OCKS\(oA" +.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/sv/man8/groupmems.8 b/man/sv/man8/groupmems.8 new file mode 100644 index 00000000..9d526f8f --- /dev/null +++ b/man/sv/man8/groupmems.8 @@ -0,0 +1,180 @@ +'\" t +.\" Title: groupmems +.\" Author: George Kraft, IV +.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/> +.\" Date: 18-09-2016 +.\" Manual: Systemhanteringskommandon +.\" Source: shadow-utils 4.4 +.\" Language: Swedish +.\" +.TH "GROUPMEMS" "8" "18-09-2016" "shadow\-utils 4\&.4" "Systemhanteringskommandon" +.\" ----------------------------------------------------------------- +.\" * 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 "NAMN" +groupmems \- administrera medlemmar av en anv\(:andares prim\(:ara grupp +.SH "SYNOPSIS" +.HP \w'\fBgroupmems\fR\ 'u +\fBgroupmems\fR \-a\ \fIanv\(:andarnamn\fR | \-d\ \fIanv\(:andarnamn\fR | [\-g\ \fIgruppnamn\fR] | \-l | \-p +.SH "BESKRIVNING" +.PP +The +\fBgroupmems\fR +command allows a user to administer his/her own group membership list without the requirement of superuser privileges\&. The +\fBgroupmems\fR +utility is for systems that configure its users to be in their own name sake primary group (i\&.e\&., guest / guest)\&. +.PP +Only the superuser, as administrator, can use +\fBgroupmems\fR +to alter the memberships of other groups\&. +.SH "FLAGGOR" +.PP +Flaggorna som g\(:aller f\(:or kommandot +\fBgroupmems\fR +\(:ar: +.PP +\fB\-a\fR, \fB\-\-add\fR\ \&\fIuser_name\fR +.RS 4 +Add a user to the group membership list\&. +.sp +If the +/etc/gshadow +file exist, and the group has no entry in the +/etc/gshadow +file, a new entry will be created\&. +.RE +.PP +\fB\-d\fR, \fB\-\-delete\fR\ \&\fIuser_name\fR +.RS 4 +Ta bort en anv\(:andare fr\(oan gruppen medlemslista\&. +.sp +If the +/etc/gshadow +file exist, the user will be removed from the list of members and administrators of the group\&. +.sp +If the +/etc/gshadow +file exist, and the group has no entry in the +/etc/gshadow +file, a new entry will be created\&. +.RE +.PP +\fB\-g\fR, \fB\-\-group\fR\ \&\fIgroup_name\fR +.RS 4 +The superuser can specify which group membership list to modify\&. +.RE +.PP +\fB\-h\fR, \fB\-\-help\fR +.RS 4 +Visa hj\(:alpmeddelande och avsluta\&. +.RE +.PP +\fB\-l\fR, \fB\-\-list\fR +.RS 4 +Lista gruppens medlemslista\&. +.RE +.PP +\fB\-p\fR, \fB\-\-purge\fR +.RS 4 +Rensa alla anv\(:andare fr\(oan gruppens medlemslista\&. +.sp +If the +/etc/gshadow +file exist, and the group has no entry in the +/etc/gshadow +file, a new entry will be created\&. +.RE +.PP +\fB\-R\fR, \fB\-\-root\fR\ \&\fICHROOT_DIR\fR +.RS 4 +Apply changes in the +\fICHROOT_DIR\fR +directory and use the configuration files from the +\fICHROOT_DIR\fR +directory\&. +.RE +.SH "SETUP" +.PP +The +\fBgroupmems\fR +executable should be in mode +2770 +as user +\fIroot\fR +and in group +\fIgroups\fR\&. The system administrator can add users to group +\fIgroups\fR +to allow or disallow them using the +\fBgroupmems\fR +utility to manage their own group membership list\&. +.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 "CONFIGURATION" +.PP +The following configuration variables in +/etc/login\&.defs +change the behavior of this tool: +.PP +\fBMAX_MEMBERS_PER_GROUP\fR (number) +.RS 4 +Maximum members per group entry\&. When the maximum is reached, a new group entry (line) is started in +/etc/group +(with the same name, same password, and same GID)\&. +.sp +The default value is 0, meaning that there are no limits in the number of members in a group\&. +.sp +This feature (split group) permits to limit the length of lines in the group file\&. This is useful to make sure that lines for NIS groups are not larger than 1024 characters\&. +.sp +If you need to enforce such limit, you can use 25\&. +.sp +Note: split groups may not be supported by all tools (even in the Shadow toolsuite)\&. You should not use this variable unless you really need it\&. +.RE +.SH "FILER" +.PP +/etc/group +.RS 4 +Gruppkontoinformation\&. +.RE +.PP +/etc/gshadow +.RS 4 +s\(:aker gruppkontoinformation +.RE +.SH "SE OCKS\(oA" +.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/sv/man8/groupmod.8 b/man/sv/man8/groupmod.8 new file mode 100644 index 00000000..0192d79d --- /dev/null +++ b/man/sv/man8/groupmod.8 @@ -0,0 +1,209 @@ +'\" t +.\" Title: groupmod +.\" Author: Julianne Frances Haugh +.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/> +.\" Date: 18-09-2016 +.\" Manual: Systemhanteringskommandon +.\" Source: shadow-utils 4.4 +.\" Language: Swedish +.\" +.TH "GROUPMOD" "8" "18-09-2016" "shadow\-utils 4\&.4" "Systemhanteringskommandon" +.\" ----------------------------------------------------------------- +.\" * 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 "NAMN" +groupmod \- \(:andra en gruppdefinition p\(oa systemet +.SH "SYNOPSIS" +.HP \w'\fBgroupmod\fR\ 'u +\fBgroupmod\fR [\fIflaggor\fR] \fIGRUPP\fR +.SH "BESKRIVNING" +.PP +The +\fBgroupmod\fR +command modifies the definition of the specified +\fIGROUP\fR +by modifying the appropriate entry in the group database\&. +.SH "FLAGGOR" +.PP +Flaggorna som g\(:aller f\(:or kommandot +\fBgroupmod\fR +\(:ar: +.PP +\fB\-g\fR, \fB\-\-gid\fR\ \&\fIGID\fR +.RS 4 +The group ID of the given +\fIGROUP\fR +will be changed to +\fIGID\fR\&. +.sp +The value of +\fIGID\fR +must be a non\-negative decimal integer\&. This value must be unique, unless the +\fB\-o\fR +option is used\&. +.sp +Users who use the group as primary group will be updated to keep the group as their primary group\&. +.sp +Any files that have the old group ID and must continue to belong to +\fIGROUP\fR, must have their group ID changed manually\&. +.sp +No checks will be performed with regard to the +\fBGID_MIN\fR, +\fBGID_MAX\fR, +\fBSYS_GID_MIN\fR, or +\fBSYS_GID_MAX\fR +from +/etc/login\&.defs\&. +.RE +.PP +\fB\-h\fR, \fB\-\-help\fR +.RS 4 +Visa hj\(:alpmeddelande och avsluta\&. +.RE +.PP +\fB\-n\fR, \fB\-\-new\-name\fR\ \&\fINY_GRUPP\fR +.RS 4 +The name of the group will be changed from +\fIGROUP\fR +to +\fINEW_GROUP\fR +name\&. +.RE +.PP +\fB\-o\fR, \fB\-\-non\-unique\fR +.RS 4 +When used with the +\fB\-g\fR +option, allow to change the group +\fIGID\fR +to a non\-unique value\&. +.RE +.PP +\fB\-p\fR, \fB\-\-password\fR\ \&\fIL\(:OSENORD\fR +.RS 4 +Det krypterade l\(:osenordet, som returneras av +\fBcrypt\fR(3)\&. +.sp +\fBNote:\fR +This option is not recommended because the password (or encrypted password) will be visible by users listing the processes\&. +.sp +You should make sure the password respects the system\*(Aqs password policy\&. +.RE +.PP +\fB\-R\fR, \fB\-\-root\fR\ \&\fICHROOT_DIR\fR +.RS 4 +Apply changes in the +\fICHROOT_DIR\fR +directory and use the configuration files from the +\fICHROOT_DIR\fR +directory\&. +.RE +.SH "CONFIGURATION" +.PP +The following configuration variables in +/etc/login\&.defs +change the behavior of this tool: +.PP +\fBMAX_MEMBERS_PER_GROUP\fR (number) +.RS 4 +Maximum members per group entry\&. When the maximum is reached, a new group entry (line) is started in +/etc/group +(with the same name, same password, and same GID)\&. +.sp +The default value is 0, meaning that there are no limits in the number of members in a group\&. +.sp +This feature (split group) permits to limit the length of lines in the group file\&. This is useful to make sure that lines for NIS groups are not larger than 1024 characters\&. +.sp +If you need to enforce such limit, you can use 25\&. +.sp +Note: split groups may not be supported by all tools (even in the Shadow toolsuite)\&. You should not use this variable unless you really need it\&. +.RE +.SH "FILER" +.PP +/etc/group +.RS 4 +Gruppkontoinformation\&. +.RE +.PP +/etc/gshadow +.RS 4 +S\(:aker gruppkontoinformation\&. +.RE +.PP +/etc/login\&.defs +.RS 4 +Shadow password suite configuration\&. +.RE +.PP +/etc/passwd +.RS 4 +Anv\(:andarkontoinformation\&. +.RE +.SH "AVSLUTNINGSV\(:ARDEN" +.PP +Kommandot +\fBgroupmod\fR +avslutas med f\(:oljande v\(:arden: +.PP +\fI0\fR +.RS 4 +lyckad +.RE +.PP +\fI2\fR +.RS 4 +ogiltig kommandosyntax +.RE +.PP +\fI3\fR +.RS 4 +ogiltigt argument till flagga +.RE +.PP +\fI4\fR +.RS 4 +angiven grupp finns inte +.RE +.PP +\fI6\fR +.RS 4 +angiven grupp finns inte +.RE +.PP +\fI9\fR +.RS 4 +gruppnamnet anv\(:ands redan +.RE +.PP +\fI10\fR +.RS 4 +kan inte uppdatera gruppfilen +.RE +.SH "SE OCKS\(oA" +.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/sv/man8/grpck.8 b/man/sv/man8/grpck.8 new file mode 100644 index 00000000..349683b5 --- /dev/null +++ b/man/sv/man8/grpck.8 @@ -0,0 +1,247 @@ +'\" t +.\" Title: grpck +.\" Author: Julianne Frances Haugh +.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/> +.\" Date: 18-09-2016 +.\" Manual: Systemhanteringskommandon +.\" Source: shadow-utils 4.4 +.\" Language: Swedish +.\" +.TH "GRPCK" "8" "18-09-2016" "shadow\-utils 4\&.4" "Systemhanteringskommandon" +.\" ----------------------------------------------------------------- +.\" * 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 "NAMN" +grpck \- validera integriteten f\(:or gruppfiler +.SH "SYNOPSIS" +.HP \w'\fBgrpck\fR\ 'u +\fBgrpck\fR [flaggor] [\fIgrupp\fR\ [\ \fIshadow\fR\ ]] +.SH "BESKRIVNING" +.PP +The +\fBgrpck\fR +command verifies the integrity of the groups information\&. It checks that all entries in +/etc/group +and /etc/gshadow +have the proper format and contain valid data\&. The user is prompted to delete entries that are improperly formatted or which have other uncorrectable errors\&. +.PP +Kontroller g\(:ors f\(:or att validera att varje post har: +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +korrekt antal f\(:alt +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +a unique and valid group name +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +a valid group identifier +(/etc/group only) +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +a valid list of members +and administrators +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +a corresponding entry in the +/etc/gshadow +file (respectively +/etc/group +for the +gshadow +checks) +.RE +.PP +The checks for correct number of fields and unique group name are fatal\&. If an entry has the wrong number of fields, the user will be prompted to delete the entire line\&. If the user does not answer affirmatively, all further checks are bypassed\&. An entry with a duplicated group name is prompted for deletion, but the remaining checks will still be made\&. All other errors are warnings and the user is encouraged to run the +\fBgroupmod\fR +command to correct the error\&. +.PP +The commands which operate on the +/etc/group +and /etc/gshadow files +are not able to alter corrupted or duplicated entries\&. +\fBgrpck\fR +should be used in those circumstances to remove the offending entries\&. +.SH "FLAGGOR" +.PP +The +\fB\-r\fR +and +\fB\-s\fR +options cannot be combined\&. +.PP +The options which apply to the +\fBgrpck\fR +command are: +.PP +\fB\-h\fR, \fB\-\-help\fR +.RS 4 +Visa hj\(:alpmeddelande och avsluta\&. +.RE +.PP +\fB\-r\fR, \fB\-\-read\-only\fR +.RS 4 +Execute the +\fBgrpck\fR +command in read\-only mode\&. This causes all questions regarding changes to be answered +\fIno\fR +without user intervention\&. +.RE +.PP +\fB\-R\fR, \fB\-\-root\fR\ \&\fICHROOT_DIR\fR +.RS 4 +Apply changes in the +\fICHROOT_DIR\fR +directory and use the configuration files from the +\fICHROOT_DIR\fR +directory\&. +.RE +.PP +\fB\-s\fR, \fB\-\-sort\fR +.RS 4 +Sort entries in +/etc/group +and /etc/gshadow +by 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 "CONFIGURATION" +.PP +The following configuration variables in +/etc/login\&.defs +change the behavior of this tool: +.PP +\fBMAX_MEMBERS_PER_GROUP\fR (number) +.RS 4 +Maximum members per group entry\&. When the maximum is reached, a new group entry (line) is started in +/etc/group +(with the same name, same password, and same GID)\&. +.sp +The default value is 0, meaning that there are no limits in the number of members in a group\&. +.sp +This feature (split group) permits to limit the length of lines in the group file\&. This is useful to make sure that lines for NIS groups are not larger than 1024 characters\&. +.sp +If you need to enforce such limit, you can use 25\&. +.sp +Note: split groups may not be supported by all tools (even in the Shadow toolsuite)\&. You should not use this variable unless you really need it\&. +.RE +.SH "FILER" +.PP +/etc/group +.RS 4 +Gruppkontoinformation\&. +.RE +.PP +/etc/gshadow +.RS 4 +S\(:aker gruppkontoinformation\&. +.RE +.PP +/etc/passwd +.RS 4 +Anv\(:andarkontoinformation\&. +.RE +.SH "AVSLUTNINGSV\(:ARDEN" +.PP +Kommandot +\fBgrpck\fR +avslutas med f\(:oljande v\(:arden: +.PP +\fI0\fR +.RS 4 +lyckad +.RE +.PP +\fI1\fR +.RS 4 +ogiltig kommandosyntax +.RE +.PP +\fI2\fR +.RS 4 +en eller flera felaktiga grupposter +.RE +.PP +\fI3\fR +.RS 4 +kan inte \(:oppna gruppfiler +.RE +.PP +\fI4\fR +.RS 4 +kan inte l\(oasa gruppfiler +.RE +.PP +\fI5\fR +.RS 4 +kan inte uppdatera gruppfiler +.RE +.SH "SE OCKS\(oA" +.PP +\fBgroup\fR(5), +\fBgroupmod\fR(8), +\fBgshadow\fR(5), +\fBpasswd\fR(5), +\fBpwck\fR(8), +\fBshadow\fR(5)\&. diff --git a/man/sv/man8/lastlog.8 b/man/sv/man8/lastlog.8 new file mode 100644 index 00000000..df13b814 --- /dev/null +++ b/man/sv/man8/lastlog.8 @@ -0,0 +1,123 @@ +'\" t +.\" Title: lastlog +.\" Author: Julianne Frances Haugh +.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/> +.\" Date: 18-09-2016 +.\" Manual: Systemhanteringskommandon +.\" Source: shadow-utils 4.4 +.\" Language: Swedish +.\" +.TH "LASTLOG" "8" "18-09-2016" "shadow\-utils 4\&.4" "Systemhanteringskommandon" +.\" ----------------------------------------------------------------- +.\" * 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 "NAMN" +lastlog \- reports the most recent login of all users or of a given user +.SH "SYNOPSIS" +.HP \w'\fBlastlog\fR\ 'u +\fBlastlog\fR [\fIflaggor\fR] +.SH "BESKRIVNING" +.PP +\fBlastlog\fR +formats and prints the contents of the last login log +/var/log/lastlog +file\&. The +\fIlogin\-name\fR, +\fIport\fR, and +\fIlast login time\fR +will be printed\&. The default (no flags) causes lastlog entries to be printed, sorted by their order in +/etc/passwd\&. +.SH "FLAGGOR" +.PP +Flaggorna som g\(:aller f\(:or kommandot +\fBlastlog\fR +\(:ar: +.PP +\fB\-b\fR, \fB\-\-before\fR\ \&\fIDAGAR\fR +.RS 4 +Print only lastlog records older than +\fIDAYS\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 +Visa hj\(:alpmeddelande och avsluta\&. +.RE +.PP +\fB\-R\fR, \fB\-\-root\fR\ \&\fICHROOT_DIR\fR +.RS 4 +Apply changes in the +\fICHROOT_DIR\fR +directory and use the configuration files from the +\fICHROOT_DIR\fR +directory\&. +.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\ \&\fIDAGAR\fR +.RS 4 +Print the lastlog records more recent than +\fIDAYS\fR\&. +.RE +.PP +\fB\-u\fR, \fB\-\-user\fR\ \&\fILOGIN\fR|\fIRANGE\fR +.RS 4 +Print the lastlog record of the specified user(s)\&. +.sp +The users can be specified by a login name, a numerical user ID, or a +\fIRANGE\fR +of users\&. This +\fIRANGE\fR +of users can be specified with a min and max values (\fIUID_MIN\-UID_MAX\fR), a max value (\fI\-UID_MAX\fR), or a min value (\fIUID_MIN\-\fR)\&. +.RE +.PP +If the user has never logged in the message +\fI** Never logged in**\fR +will be displayed instead of the port and time\&. +.PP +Only the entries for the current users of the system will be displayed\&. Other entries may exist for users that were deleted previously\&. +.SH "NOTERA" +.PP +The +lastlog +file is a database which contains info on the last login of each user\&. You should not rotate it\&. It is a sparse file, so its size on the disk is usually much smaller than the one shown by "\fBls \-l\fR" (which can indicate a really big file if you have in +passwd +users with a high UID)\&. You can display its real size with "\fBls \-s\fR"\&. +.SH "FILER" +.PP +/var/log/lastlog +.RS 4 +Databastider f\(:or tidigare anv\(:andarinloggningar\&. +.RE +.SH "T\(:ANK P\(oA" +.PP +Large gaps in UID numbers will cause the lastlog program to run longer with no output to the screen (i\&.e\&. if in lastlog database there is no entries for users with UID between 170 and 800 lastlog will appear to hang as it processes entries with UIDs 171\-799)\&. diff --git a/man/sv/man8/logoutd.8 b/man/sv/man8/logoutd.8 new file mode 100644 index 00000000..479b1508 --- /dev/null +++ b/man/sv/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: 18-09-2016 +.\" Manual: Systemhanteringskommandon +.\" Source: shadow-utils 4.4 +.\" Language: Swedish +.\" +.TH "LOGOUTD" "8" "18-09-2016" "shadow\-utils 4\&.4" "Systemhanteringskommandon" +.\" ----------------------------------------------------------------- +.\" * 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 "NAMN" +logoutd \- enforce login time restrictions +.SH "SYNOPSIS" +.HP \w'\fBlogoutd\fR\ 'u +\fBlogoutd\fR +.SH "BESKRIVNING" +.PP +\fBlogoutd\fR +enforces the login time and port restrictions specified in +/etc/porttime\&. +\fBlogoutd\fR +should be started from +/etc/rc\&. The +/var/run/utmp +file is scanned periodically and each user name is checked to see if the named user is permitted on the named port at the current time\&. Any login session which is violating the restrictions in +/etc/porttime +is terminated\&. +.SH "FILER" +.PP +/etc/porttime +.RS 4 +Fil som inneh\(oaller port\(oatkomst +.RE +.PP +/var/run/utmp +.RS 4 +Lista p\(oa aktuella inloggningssessioner\&. +.RE diff --git a/man/sv/man8/nologin.8 b/man/sv/man8/nologin.8 new file mode 100644 index 00000000..55fd426d --- /dev/null +++ b/man/sv/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: 18-09-2016 +.\" Manual: Systemhanteringskommandon +.\" Source: shadow-utils 4.4 +.\" Language: Swedish +.\" +.TH "NOLOGIN" "8" "18-09-2016" "shadow\-utils 4\&.4" "Systemhanteringskommandon" +.\" ----------------------------------------------------------------- +.\" * 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 "NAMN" +nologin \- v\(:agra sn\(:allt en inloggning +.SH "SYNOPSIS" +.HP \w'\fBnologin\fR\ 'u +\fBnologin\fR +.SH "BESKRIVNING" +.PP +The +\fBnologin\fR +command displays a message that an account is not available and exits non\-zero\&. It is intended as a replacement shell field for accounts that have been disabled\&. +.PP +F\(:or att inaktivera alla inloggningar, unders\(:ok +\fBnologin\fR(5)\&. +.SH "SE OCKS\(oA" +.PP +\fBlogin\fR(1), +\fBnologin\fR(5)\&. +.SH "HISTORY" +.PP +The +\fBnologin\fR +command appeared in BSD 4\&.4\&. diff --git a/man/sv/man8/pwck.8 b/man/sv/man8/pwck.8 new file mode 100644 index 00000000..a690c1e8 --- /dev/null +++ b/man/sv/man8/pwck.8 @@ -0,0 +1,323 @@ +'\" t +.\" Title: pwck +.\" Author: Julianne Frances Haugh +.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/> +.\" Date: 18-09-2016 +.\" Manual: Systemhanteringskommandon +.\" Source: shadow-utils 4.4 +.\" Language: Swedish +.\" +.TH "PWCK" "8" "18-09-2016" "shadow\-utils 4\&.4" "Systemhanteringskommandon" +.\" ----------------------------------------------------------------- +.\" * 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 "NAMN" +pwck \- validera integriteten f\(:or l\(:osenordsfiler +.SH "SYNOPSIS" +.HP \w'\fBpwck\fR\ 'u +\fBpwck\fR [flaggor] [\fIpasswd\fR\ [\ \fIshadow\fR\ ]] +.SH "BESKRIVNING" +.PP +The +\fBpwck\fR +command verifies the integrity of the users and authentication information\&. It checks that all entries in +/etc/passwd +and +/etc/shadow +have the proper format and contain valid data\&. The user is prompted to delete entries that are improperly formatted or which have other uncorrectable errors\&. +.PP +Kontroller g\(:ors f\(:or att validera att varje post har: +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +korrekt antal f\(:alt +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +a unique and valid user name +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +en giltig identifierare f\(:or anv\(:andare och grupp +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +en giltig prim\(:ar grupp +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +en giltig hemkatalog +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +ett giltigt inloggningsskal +.RE +.PP +shadow +checks are enabled when a second file parameter is specified or when +/etc/shadow +exists on the system\&. +.PP +These checks are the following: +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +every passwd entry has a matching shadow entry, and every shadow entry has a matching passwd entry +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +passwords are specified in the shadowed file +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +shadow entries have the correct number of fields +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +shadow entries are unique in shadow +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +the last password changes are not in the future +.RE +.PP +The checks for correct number of fields and unique user name are fatal\&. If the entry has the wrong number of fields, the user will be prompted to delete the entire line\&. If the user does not answer affirmatively, all further checks are bypassed\&. An entry with a duplicated user name is prompted for deletion, but the remaining checks will still be made\&. All other errors are warning and the user is encouraged to run the +\fBusermod\fR +command to correct the error\&. +.PP +The commands which operate on the +/etc/passwd +file are not able to alter corrupted or duplicated entries\&. +\fBpwck\fR +should be used in those circumstances to remove the offending entry\&. +.SH "FLAGGOR" +.PP +The +\fB\-r\fR +and +\fB\-s\fR +options cannot be combined\&. +.PP +Flaggorna som g\(:aller f\(:or kommandot +\fBpwck\fR +\(:ar: +.PP +\fB\-h\fR, \fB\-\-help\fR +.RS 4 +Visa hj\(:alpmeddelande och avsluta\&. +.RE +.PP +\fB\-q\fR, \fB\-\-quiet\fR +.RS 4 +Report errors only\&. The warnings which do not require any action from the user won\*(Aqt be displayed\&. +.RE +.PP +\fB\-r\fR, \fB\-\-read\-only\fR +.RS 4 +Starta kommandot +\fBpwck\fR +i skrivskyddat l\(:age\&. +.RE +.PP +\fB\-R\fR, \fB\-\-root\fR\ \&\fICHROOT_DIR\fR +.RS 4 +Apply changes in the +\fICHROOT_DIR\fR +directory and use the configuration files from the +\fICHROOT_DIR\fR +directory\&. +.RE +.PP +\fB\-s\fR, \fB\-\-sort\fR +.RS 4 +Sorterar poster i +/etc/passwd +och +/etc/shadow +efter UID\&. +.RE +.PP +By default, +\fBpwck\fR +operates on the files +/etc/passwd +and +/etc/shadow\&. The user may select alternate files with the +\fIpasswd\fR +and +\fIshadow\fR +parameters\&. +.SH "CONFIGURATION" +.PP +The following configuration variables in +/etc/login\&.defs +change the behavior of this tool: +.PP +\fBPASS_MAX_DAYS\fR (number) +.RS 4 +The maximum number of days a password may be used\&. If the password is older than this, a password change will be forced\&. If not specified, \-1 will be assumed (which disables the restriction)\&. +.RE +.PP +\fBPASS_MIN_DAYS\fR (number) +.RS 4 +The minimum number of days allowed between password changes\&. Any password changes attempted sooner than this will be rejected\&. If not specified, \-1 will be assumed (which disables the restriction)\&. +.RE +.PP +\fBPASS_WARN_AGE\fR (number) +.RS 4 +The number of days warning given before a password expires\&. A zero means warning is given only upon the day of expiration, a negative value means no warning is given\&. If not specified, no warning will be provided\&. +.RE +.SH "FILER" +.PP +/etc/group +.RS 4 +Gruppkontoinformation\&. +.RE +.PP +/etc/passwd +.RS 4 +Anv\(:andarkontoinformation\&. +.RE +.PP +/etc/shadow +.RS 4 +S\(:aker anv\(:andarkontoinformation\&. +.RE +.SH "AVSLUTNINGSV\(:ARDEN" +.PP +Kommandot +\fBpwck\fR +avslutas med f\(:oljande v\(:arden: +.PP +\fI0\fR +.RS 4 +lyckad +.RE +.PP +\fI1\fR +.RS 4 +ogiltig kommandosyntax +.RE +.PP +\fI2\fR +.RS 4 +en eller flera felaktiga l\(:osenordsposter +.RE +.PP +\fI3\fR +.RS 4 +kan inte \(:oppna l\(:osenordsfiler +.RE +.PP +\fI4\fR +.RS 4 +kan inte l\(oasa l\(:osenordsfiler +.RE +.PP +\fI5\fR +.RS 4 +kan inte uppdatera l\(:osenordsfiler +.RE +.PP +\fI6\fR +.RS 4 +can\*(Aqt sort password files +.RE +.SH "SE OCKS\(oA" +.PP +\fBgroup\fR(5), +\fBgrpck\fR(8), +\fBpasswd\fR(5), +\fBshadow\fR(5), +\fBusermod\fR(8)\&. diff --git a/man/sv/man8/userdel.8 b/man/sv/man8/userdel.8 new file mode 100644 index 00000000..abbb4fe8 --- /dev/null +++ b/man/sv/man8/userdel.8 @@ -0,0 +1,299 @@ +'\" t +.\" Title: userdel +.\" Author: Julianne Frances Haugh +.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/> +.\" Date: 18-09-2016 +.\" Manual: Systemhanteringskommandon +.\" Source: shadow-utils 4.4 +.\" Language: Swedish +.\" +.TH "USERDEL" "8" "18-09-2016" "shadow\-utils 4\&.4" "Systemhanteringskommandon" +.\" ----------------------------------------------------------------- +.\" * 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 "NAMN" +userdel \- ta bort ett anv\(:andarkonto och relaterade filer +.SH "SYNOPSIS" +.HP \w'\fBuserdel\fR\ 'u +\fBuserdel\fR [flaggor] \fIINLOGGNINGSNAMN\fR +.SH "BESKRIVNING" +.PP +The +\fBuserdel\fR +command modifies the system account files, deleting all entries that refer to the user name +\fILOGIN\fR\&. The named user must exist\&. +.SH "FLAGGOR" +.PP +Flaggorna som g\(:aller f\(:or kommandot +\fBuserdel\fR +\(:ar: +.PP +\fB\-f\fR, \fB\-\-force\fR +.RS 4 +This option forces the removal of the user account, even if the user is still logged in\&. It also forces +\fBuserdel\fR +to remove the user\*(Aqs home directory and mail spool, even if another user uses the same home directory or if the mail spool is not owned by the specified user\&. If +\fBUSERGROUPS_ENAB\fR +is defined to +\fIyes\fR +in +/etc/login\&.defs +and if a group exists with the same name as the deleted user, then this group will be removed, even if it is still the primary group of another user\&. +.sp +\fINotera:\fR +Denna flagga \(:ar farlig och kan g\(:ora att ditt system f\(:ors\(:atts i ett inkonsistent tillst\(oand\&. +.RE +.PP +\fB\-h\fR, \fB\-\-help\fR +.RS 4 +Visa hj\(:alpmeddelande och avsluta\&. +.RE +.PP +\fB\-r\fR, \fB\-\-remove\fR +.RS 4 +Files in the user\*(Aqs home directory will be removed along with the home directory itself and the user\*(Aqs mail spool\&. Files located in other file systems will have to be searched for and deleted manually\&. +.sp +The mail spool is defined by the +\fBMAIL_DIR\fR +variable in the +login\&.defs +file\&. +.RE +.PP +\fB\-R\fR, \fB\-\-root\fR\ \&\fICHROOT_DIR\fR +.RS 4 +Apply changes in the +\fICHROOT_DIR\fR +directory and use the configuration files from the +\fICHROOT_DIR\fR +directory\&. +.RE +.PP +\fB\-Z\fR, \fB\-\-selinux\-user\fR +.RS 4 +Remove any SELinux user mapping for the user\*(Aqs login\&. +.RE +.SH "CONFIGURATION" +.PP +The following configuration variables in +/etc/login\&.defs +change the behavior of this tool: +.PP +\fBMAIL_DIR\fR (string) +.RS 4 +The mail spool directory\&. This is needed to manipulate the mailbox when its corresponding user account is modified or deleted\&. If not specified, a compile\-time default is used\&. +.RE +.PP +\fBMAIL_FILE\fR (string) +.RS 4 +Defines the location of the users mail spool files relatively to their home directory\&. +.RE +.PP +The +\fBMAIL_DIR\fR +and +\fBMAIL_FILE\fR +variables are used by +\fBuseradd\fR, +\fBusermod\fR, and +\fBuserdel\fR +to create, move, or delete the user\*(Aqs mail spool\&. +.PP +If +\fBMAIL_CHECK_ENAB\fR +is set to +\fIyes\fR, they are also used to define the +\fBMAIL\fR +environment variable\&. +.PP +\fBMAX_MEMBERS_PER_GROUP\fR (number) +.RS 4 +Maximum members per group entry\&. When the maximum is reached, a new group entry (line) is started in +/etc/group +(with the same name, same password, and same GID)\&. +.sp +The default value is 0, meaning that there are no limits in the number of members in a group\&. +.sp +This feature (split group) permits to limit the length of lines in the group file\&. This is useful to make sure that lines for NIS groups are not larger than 1024 characters\&. +.sp +If you need to enforce such limit, you can use 25\&. +.sp +Note: split groups may not be supported by all tools (even in the Shadow toolsuite)\&. You should not use this variable unless you really need it\&. +.RE +.PP +\fBUSERDEL_CMD\fR (string) +.RS 4 +If defined, this command is run when removing a user\&. It should remove any at/cron/print jobs etc\&. owned by the user to be removed (passed as the first argument)\&. +.sp +The return code of the script is not taken into account\&. +.sp +Here is an example script, which removes the user\*(Aqs cron, at and print jobs: +.sp +.if n \{\ +.RS 4 +.\} +.nf +#! /bin/sh + +# Check for the required argument\&. +if [ $# != 1 ]; then + echo "Usage: $0 username" + exit 1 +fi + +# Remove cron jobs\&. +crontab \-r \-u $1 + +# Remove at jobs\&. +# Note that it will remove any jobs owned by the same UID, +# even if it was shared by a different username\&. +AT_SPOOL_DIR=/var/spool/cron/atjobs +find $AT_SPOOL_DIR \-name "[^\&.]*" \-type f \-user $1 \-delete \e; + +# Remove print jobs\&. +lprm $1 + +# All done\&. +exit 0 + +.fi +.if n \{\ +.RE +.\} +.sp +.RE +.PP +\fBUSERGROUPS_ENAB\fR (boolean) +.RS 4 +Enable setting of the umask group bits to be the same as owner bits (examples: 022 \-> 002, 077 \-> 007) for non\-root users, if the uid is the same as gid, and username is the same as the primary group name\&. +.sp +If set to +\fIyes\fR, +\fBuserdel\fR +will remove the user\*(Aqs group if it contains no more members, and +\fBuseradd\fR +will create by default a group with the name of the user\&. +.RE +.SH "FILER" +.PP +/etc/group +.RS 4 +Gruppkontoinformation\&. +.RE +.PP +/etc/login\&.defs +.RS 4 +Shadow password suite configuration\&. +.RE +.PP +/etc/passwd +.RS 4 +Anv\(:andarkontoinformation\&. +.RE +.PP +/etc/shadow +.RS 4 +S\(:aker anv\(:andarkontoinformation\&. +.RE +.PP +/etc/subgid +.RS 4 +Per user subordinate group IDs\&. +.RE +.PP +/etc/subuid +.RS 4 +Per user subordinate user IDs\&. +.RE +.SH "AVSLUTNINGSV\(:ARDEN" +.PP +Kommandot +\fBuserdel\fR +avslutas med f\(:oljande v\(:arden: +.PP +\fI0\fR +.RS 4 +lyckad +.RE +.PP +\fI1\fR +.RS 4 +kan inte uppdatera l\(:osenordsfilen +.RE +.PP +\fI2\fR +.RS 4 +ogiltig kommandosyntax +.RE +.PP +\fI6\fR +.RS 4 +angiven anv\(:andare finns inte +.RE +.PP +\fI8\fR +.RS 4 +anv\(:andaren \(:ar f\(:or n\(:arvarande inloggad +.RE +.PP +\fI10\fR +.RS 4 +kan inte uppdatera gruppfilen +.RE +.PP +\fI12\fR +.RS 4 +kan inte ta bort hemkatalogen +.RE +.SH "T\(:ANK P\(oA" +.PP +\fBuserdel\fR +will not allow you to remove an account if there are running processes which belong to this account\&. In that case, you may have to kill those processes or lock the user\*(Aqs password or account and remove the account later\&. The +\fB\-f\fR +option can force the deletion of this account\&. +.PP +You should manually check all file systems to ensure that no files remain owned by this user\&. +.PP +Du f\(oar inte ta bort n\(oagra NIS\-attribut p\(oa en NIS\-klient\&. Detta m\(oaste genomf\(:oras p\(oa NIS\-servern\&. +.PP +If +\fBUSERGROUPS_ENAB\fR +is defined to +\fIyes\fR +in +/etc/login\&.defs, +\fBuserdel\fR +will delete the group with the same name as the user\&. To avoid inconsistencies in the passwd and group databases, +\fBuserdel\fR +will check that this group is not used as a primary group for another user, and will just warn without deleting the group otherwise\&. The +\fB\-f\fR +option can force the deletion of this group\&. +.SH "SE OCKS\(oA" +.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/sv/man8/vigr.8 b/man/sv/man8/vigr.8 new file mode 100644 index 00000000..ff72d7ae --- /dev/null +++ b/man/sv/man8/vigr.8 @@ -0,0 +1 @@ +.so man8/vipw.8 diff --git a/man/sv/man8/vipw.8 b/man/sv/man8/vipw.8 new file mode 100644 index 00000000..aea094f7 --- /dev/null +++ b/man/sv/man8/vipw.8 @@ -0,0 +1,137 @@ +'\" t +.\" Title: vipw +.\" Author: Marek Micha\(/lkiewicz +.\" Generator: DocBook XSL Stylesheets v1.79.1 <http://docbook.sf.net/> +.\" Date: 18-09-2016 +.\" Manual: Systemhanteringskommandon +.\" Source: shadow-utils 4.4 +.\" Language: Swedish +.\" +.TH "VIPW" "8" "18-09-2016" "shadow\-utils 4\&.4" "Systemhanteringskommandon" +.\" ----------------------------------------------------------------- +.\" * 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 "NAMN" +vipw, vigr \- redigera l\(:osenordet, grupp, skuggl\(:osenord eller skuggruppfil +.SH "SYNOPSIS" +.HP \w'\fBvipw\fR\ 'u +\fBvipw\fR [\fIflaggor\fR] +.HP \w'\fBvigr\fR\ 'u +\fBvigr\fR [\fIflaggor\fR] +.SH "BESKRIVNING" +.PP +The +\fBvipw\fR +and +\fBvigr\fR +commands edits the files +/etc/passwd +and +/etc/group, respectively\&. With the +\fB\-s\fR +flag, they will edit the shadow versions of those files, +/etc/shadow +and +/etc/gshadow, respectively\&. The programs will set the appropriate locks to prevent file corruption\&. When looking for an editor, the programs will first try the environment variable +\fB$VISUAL\fR, then the environment variable +\fB$EDITOR\fR, and finally the default editor, +\fBvi\fR(1)\&. +.SH "FLAGGOR" +.PP +Flaggorna som g\(:aller f\(:or kommandona +\fBvipw\fR +och +\fBvigr\fR +\(:ar: +.PP +\fB\-g\fR, \fB\-\-group\fR +.RS 4 +Redigera gruppdatabasen\&. +.RE +.PP +\fB\-h\fR, \fB\-\-help\fR +.RS 4 +Visa hj\(:alpmeddelande och avsluta\&. +.RE +.PP +\fB\-p\fR, \fB\-\-passwd\fR +.RS 4 +Redigera l\(:osenordsdatabasen\&. +.RE +.PP +\fB\-q\fR, \fB\-\-quiet\fR +.RS 4 +Tyst l\(:age\&. +.RE +.PP +\fB\-R\fR, \fB\-\-root\fR\ \&\fICHROOT_DIR\fR +.RS 4 +Apply changes in the +\fICHROOT_DIR\fR +directory and use the configuration files from the +\fICHROOT_DIR\fR +directory\&. +.RE +.PP +\fB\-s\fR, \fB\-\-shadow\fR +.RS 4 +Redigera shadow\- eller gshadow\-databasen\&. +.RE +.SH "ENVIRONMENT" +.PP +\fBVISUAL\fR +.RS 4 +Editor to be used\&. +.RE +.PP +\fBEDITOR\fR +.RS 4 +Editor to be used if +\fBVISUAL\fR +is not set\&. +.RE +.SH "FILER" +.PP +/etc/group +.RS 4 +Gruppkontoinformation\&. +.RE +.PP +/etc/gshadow +.RS 4 +S\(:aker gruppkontoinformation\&. +.RE +.PP +/etc/passwd +.RS 4 +Anv\(:andarkontoinformation\&. +.RE +.PP +/etc/shadow +.RS 4 +S\(:aker anv\(:andarkontoinformation\&. +.RE +.SH "SE OCKS\(oA" +.PP +\fBvi\fR(1), +\fBgroup\fR(5), +\fBgshadow\fR(5) +, +\fBpasswd\fR(5), , +\fBshadow\fR(5)\&. diff --git a/man/tr/Makefile.in b/man/tr/Makefile.in new file mode 100644 index 00000000..fb1b3b73 --- /dev/null +++ b/man/tr/Makefile.in @@ -0,0 +1,654 @@ +# Makefile.in generated by automake 1.15 from Makefile.am. +# @configure_input@ + +# Copyright (C) 1994-2014 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@ +subdir = man/tr +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)$(man5dir)" \ + "$(DESTDIR)$(man8dir)" +man5dir = $(mandir)/man5 +man8dir = $(mandir)/man8 +NROFF = nroff +MANS = $(man_MANS) +am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) +am__DIST_COMMON = $(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@ +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@/tr +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/groupadd.8 \ + man8/groupdel.8 \ + man8/groupmod.8 \ + man1/login.1 \ + man1/passwd.1 \ + man5/passwd.5 \ + man5/shadow.5 \ + man1/su.1 \ + man8/useradd.8 \ + man8/userdel.8 \ + man8/usermod.8 + +EXTRA_DIST = $(man_MANS) +all: all-am + +.SUFFIXES: +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(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) --gnu man/tr/Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --gnu man/tr/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; + +$(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-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)$(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: + +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." +clean: clean-am + +clean-am: clean-generic clean-libtool 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-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-man5 uninstall-man8 + +.MAKE: install-am install-strip + +.PHONY: all all-am check check-am clean clean-generic clean-libtool \ + 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-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-man5 \ + uninstall-man8 + +.PRECIOUS: Makefile + + +# 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/useradd.8.xml b/man/useradd.8.xml index d697d487..8d56301c 100644 --- a/man/useradd.8.xml +++ b/man/useradd.8.xml @@ -307,7 +307,7 @@ </para> Example: <option>-K</option> <replaceable>PASS_MAX_DAYS</replaceable>=<replaceable>-1</replaceable> can be used when creating system account to turn off password - ageing, even though system account has no password at all. + aging, even though system account has no password at all. Multiple <option>-K</option> options can be specified, e.g.: <option>-K</option> <replaceable>UID_MIN</replaceable>=<replaceable>100</replaceable>  <option>-K</option> <replaceable>UID_MAX</replaceable>=<replaceable>499</replaceable> @@ -326,7 +326,7 @@ </para> <para> By default, the user's entries in the lastlog and faillog - databases are resetted to avoid reusing the entry from a previously + databases are reset to avoid reusing the entry from a previously deleted user. </para> </listitem> @@ -351,7 +351,7 @@ </varlistentry> <varlistentry> <term> - <option>-M</option> + <option>-M</option>, <option>--no-create-home</option> </term> <listitem> <para> @@ -433,7 +433,7 @@ </para> <para> Note that <command>useradd</command> will not create a home - directory for such an user, regardless of the default setting + directory for such a user, regardless of the default setting in <filename>/etc/login.defs</filename> (<option>CREATE_HOME</option>). You have to specify the <option>-m</option> options if you want a home directory for a diff --git a/man/useradd.8.xml~ b/man/useradd.8.xml~ deleted file mode 100644 index 4bc239de..00000000 --- a/man/useradd.8.xml~ +++ /dev/null @@ -1,848 +0,0 @@ -<?xml version="1.0" encoding="UTF-8"?> -<!-- - Copyright (c) 1991 - 1994, Julianne Frances Haugh - Copyright (c) 2007 - 2011, Nicolas François - All rights reserved. - - Redistribution and use in source and binary forms, with or without - modification, are permitted provided that the following conditions - are met: - 1. Redistributions of source code must retain the above copyright - notice, this list of conditions and the following disclaimer. - 2. Redistributions in binary form must reproduce the above copyright - notice, this list of conditions and the following disclaimer in the - documentation and/or other materials provided with the distribution. - 3. The name of the copyright holders or contributors may not be used to - endorse or promote products derived from this software without - specific prior written permission. - - THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A - PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT - HOLDERS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT - LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE - OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ---> -<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook V4.5//EN" - "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [ -<!ENTITY CREATE_HOME SYSTEM "login.defs.d/CREATE_HOME.xml"> -<!ENTITY GID_MAX SYSTEM "login.defs.d/GID_MAX.xml"> -<!ENTITY MAIL_DIR SYSTEM "login.defs.d/MAIL_DIR.xml"> -<!ENTITY MAX_MEMBERS_PER_GROUP SYSTEM "login.defs.d/MAX_MEMBERS_PER_GROUP.xml"> -<!ENTITY PASS_MAX_DAYS SYSTEM "login.defs.d/PASS_MAX_DAYS.xml"> -<!ENTITY PASS_MIN_DAYS SYSTEM "login.defs.d/PASS_MIN_DAYS.xml"> -<!ENTITY PASS_WARN_AGE SYSTEM "login.defs.d/PASS_WARN_AGE.xml"> -<!ENTITY SYS_GID_MAX SYSTEM "login.defs.d/SYS_GID_MAX.xml"> -<!ENTITY SYS_UID_MAX SYSTEM "login.defs.d/SYS_UID_MAX.xml"> -<!ENTITY UID_MAX SYSTEM "login.defs.d/UID_MAX.xml"> -<!ENTITY UMASK SYSTEM "login.defs.d/UMASK.xml"> -<!ENTITY TCB_AUTH_GROUP SYSTEM "login.defs.d/TCB_AUTH_GROUP.xml"> -<!ENTITY TCB_SYMLINKS SYSTEM "login.defs.d/TCB_SYMLINKS.xml"> -<!ENTITY USE_TCB SYSTEM "login.defs.d/USE_TCB.xml"> -<!ENTITY USERGROUPS_ENAB SYSTEM "login.defs.d/USERGROUPS_ENAB.xml"> -<!-- SHADOW-CONFIG-HERE --> -]> -<refentry id='useradd.8'> - <!-- $Id$ --> - <refentryinfo> - <author> - <firstname>Julianne Frances</firstname> - <surname>Haugh</surname> - <contrib>Creation, 1991</contrib> - </author> - <author> - <firstname>Thomas</firstname> - <surname>Kłoczko</surname> - <email>kloczek@pld.org.pl</email> - <contrib>shadow-utils maintainer, 2000 - 2007</contrib> - </author> - <author> - <firstname>Nicolas</firstname> - <surname>François</surname> - <email>nicolas.francois@centraliens.net</email> - <contrib>shadow-utils maintainer, 2007 - now</contrib> - </author> - </refentryinfo> - <refmeta> - <refentrytitle>useradd</refentrytitle> - <manvolnum>8</manvolnum> - <refmiscinfo class="sectdesc">System Management Commands</refmiscinfo> - <refmiscinfo class="source">shadow-utils</refmiscinfo> - <refmiscinfo class="version">&SHADOW_UTILS_VERSION;</refmiscinfo> - </refmeta> - <refnamediv id='name'> - <refname>useradd</refname> - <refpurpose>create a new user or update default new user information</refpurpose> - </refnamediv> - <refsynopsisdiv id='synopsis'> - <cmdsynopsis> - <command>useradd</command> - <arg choice='opt'> - <replaceable>options</replaceable> - </arg> - <arg choice='plain'><replaceable>LOGIN</replaceable></arg> - </cmdsynopsis> - <cmdsynopsis> - <command>useradd</command> - <arg choice='plain'>-D </arg> - </cmdsynopsis> - <cmdsynopsis> - <command>useradd</command> - <arg choice='plain'>-D </arg> - <arg choice='opt'> - <replaceable>options</replaceable> - </arg> - </cmdsynopsis> - </refsynopsisdiv> - - <refsect1 id='description'> - <title>DESCRIPTION - - When invoked without the option, the - useradd command creates a new user account using - the values specified on the command line plus the default values from - the system. Depending on command line options, the - useradd command - will update system files and may also create the new user's home - directory and copy initial files. - - - By default, a group will also be created for the new user (see - , , , and - ). - - - - - OPTIONS - The options which apply to the useradd command are: - - - - - , - BASE_DIR - - - - The default base directory for the system if - HOME_DIR is not specified. - BASE_DIR is - concatenated with the account name to define the home directory. - If the option is not used, - BASE_DIR must exist. - - - If this option is not specified, useradd - will use the base directory specified by the - variable in - /etc/default/useradd, or - /home by default. - - - - - - , - COMMENT - - - - Any text string. It is generally a short description of the - login, and is currently used as the field for the user's full - name. - - - - - - , - HOME_DIR - - - - The new user will be created using - HOME_DIR as the value for the user's - login directory. The default is to append the - LOGIN name to - BASE_DIR and use that as the login - directory name. The directory HOME_DIR - does not have to exist but will not be created if it is missing. - - - - - - , - - - - See below, the subsection "Changing the default values". - - - - - - , - EXPIRE_DATE - - - - The date on which the user account will be disabled. The date is - specified in the format YYYY-MM-DD. - - - If not specified, useradd will use the - default expiry date specified by the - variable in /etc/default/useradd, or - an empty string (no expiry) by default. - - - - - - , - INACTIVE - - - - The number of days after a password expires until the account is - permanently disabled. A value of 0 disables the account as soon - as the password has expired, and a value of -1 disables the - feature. - - - If not specified, useradd will use the - default inactivity period specified by the - variable in - /etc/default/useradd, or -1 by default. - - - - - - , - GROUP - - - - The group name or number of the user's initial login group. The - group name must exist. A group number must refer to an already - existing group. - - - If not specified, the behavior of useradd - will depend on the variable - in /etc/login.defs. If this variable is - set to yes (or - is specified on the command - line), a group will be created for the user, with the same - name as her loginname. If the variable is set to - no (or - is specified on the - command line), useradd will set the primary group of the new - user to the value specified by the - variable in /etc/default/useradd, or - 100 by default. - - - - - - , - GROUP1[,GROUP2,...[,GROUPN]]] - - - - A list of supplementary groups which the user is also a member - of. Each group is separated from the next by a comma, with no - intervening whitespace. The groups are subject to the same - restrictions as the group given with the - option. The default is for the user to belong only to the - initial group. - - - - - , - - Display help message and exit. - - - - - , - SKEL_DIR - - - - The skeleton directory, which contains files and directories - to be copied in the user's home directory, when the home - directory is created by useradd. - - - This option is only valid if the (or - ) option is specified. - - - If this option is not set, the skeleton directory is defined - by the variable in - /etc/default/useradd or, by default, - /etc/skel. - - - If possible, the ACLs and extended attributes are copied. - - - - - - , - KEY=VALUE - - - - Overrides /etc/login.defs defaults - (, , - , - and others). - - - Example: PASS_MAX_DAYS=-1 - can be used when creating system account to turn off password - ageing, even though system account has no password at all. - Multiple options can be specified, e.g.: - - UID_MIN=100 - - UID_MAX=499 - - - - - - , - - - Do not add the user to the lastlog and faillog databases. - - - By default, the user's entries in the lastlog and faillog - databases are resetted to avoid reusing the entry from a previously - deleted user. - - - - - - , - - - - Create the user's home directory if it does not exist. - The files and directories contained in the skeleton directory - (which can be defined with the option) - will be copied to the home directory. - - - By default, if this option is not specified and - is not enabled, no home - directories are created. - - - - - - - - - - Do no create the user's home directory, even if the system - wide setting from /etc/login.defs - () is set to - yes. - - - - - - , - - - - Do not create a group with the same name as the user, but - add the user to the group specified by the - option or by the variable in - /etc/default/useradd. - - - The default behavior (if the , - , and options are not - specified) is defined by the - variable in /etc/login.defs. - - - - - - , - - - Allow the creation of a user account with a duplicate (non-unique) UID. - - This option is only valid in combination with the - option. - - - - - - , - PASSWORD - - - - The encrypted password, as returned by - crypt3 - . The default is to disable the password. - - - Note: This option is not - recommended because the password (or encrypted password) will - be visible by users listing the processes. - - - You should make sure the password respects the system's - password policy. - - - - - - , - - - - Create a system account. - - - System users will be created with no aging information in - /etc/shadow, and their numeric - identifiers are chosen in the - - - range, defined in /etc/login.defs, instead of - - (and their - counterparts for the creation of groups). - - - Note that useradd will not create a home - directory for such an user, regardless of the default setting - in /etc/login.defs - (). You have to specify the - options if you want a home directory for a - system account to be created. - - - - - - , - CHROOT_DIR - - - - Apply changes in the CHROOT_DIR - directory and use the configuration files from the - CHROOT_DIR directory. - - - - - - , - SHELL - - - - The name of the user's login shell. The default is to leave this - field blank, which causes the system to select the default login - shell specified by the variable in - /etc/default/useradd, or an empty string - by default. - - - - - - , - UID - - - - The numerical value of the user's ID. This value must be unique, - unless the option is used. The value must be - non-negative. The default is to use the smallest ID value - greater than or equal to and greater - than every other user. - - - See also the option and the - description. - - - - - - , - - - - Create a group with the same name as the user, and - add the user to this group. - - - The default behavior (if the , - , and options are not - specified) is defined by the - variable in /etc/login.defs. - - - - - - , - SEUSER - - - - The SELinux user for the user's login. The default is to leave this - field blank, which causes the system to select the default SELinux - user. - - - - - - - Changing the default values - - When invoked with only the option, - useradd will display the current default values. - When invoked with plus other options, - useradd will update the default values for the - specified options. Valid default-changing options are: - - - - - , - BASE_DIR - - - - The path prefix for a new user's home directory. The - user's name will be affixed to the end of - BASE_DIR to form the new user's - home directory name, if the option is not used - when creating a new account. - - - This option sets the variable in - /etc/default/useradd. - - - - - - , - EXPIRE_DATE - - - The date on which the user account is disabled. - - This option sets the variable in - /etc/default/useradd. - - - - - - , - INACTIVE - - - - The number of days after a password has expired before the - account will be disabled. - - - This option sets the variable in - /etc/default/useradd. - - - - - - , - GROUP - - - - The group name or ID for a new user's initial group (when - the is used or when the - variable is set to - no in - /etc/login.defs). The named - group must exist, and a numerical group ID must have an - existing entry. - - - This option sets the variable in - /etc/default/useradd. - - - - - - , - SHELL - - - - The name of a new user's login shell. - - - This option sets the variable in - /etc/default/useradd. - - - - - - - - - - NOTES - The system administrator is responsible for placing the default - user files in the /etc/skel/ directory (or any - other skeleton directory specified in - /etc/default/useradd or on the command line). - - - - - CAVEATS - - You may not add a user to a NIS or LDAP group. This must be - performed on the corresponding server. - - - - Similarly, if the username already exists in an external user - database such as NIS or LDAP, useradd will deny - the user account creation request. - - - - Usernames must start with a lower case letter or an underscore, - followed by lower case letters, digits, underscores, or dashes. - They can end with a dollar sign. - In regular expression terms: [a-z_][a-z0-9_-]*[$]? - - - Usernames may only be up to 32 characters long. - - - - - CONFIGURATION - - The following configuration variables in - /etc/login.defs change the behavior of this - tool: - - - &CREATE_HOME; - &GID_MAX; - &MAIL_DIR; - &MAX_MEMBERS_PER_GROUP; - &PASS_MAX_DAYS; - &PASS_MIN_DAYS; - &PASS_WARN_AGE; - &SYS_GID_MAX; - &SYS_UID_MAX; - &TCB_AUTH_GROUP; - &TCB_SYMLINKS; - &UID_MAX; - &UMASK; - &USE_TCB; - &USERGROUPS_ENAB; - - - - - FILES - - - /etc/passwd - - User account information. - - - - /etc/shadow - - Secure user account information. - - - - /etc/group - - Group account information. - - - - /etc/gshadow - - Secure group account information. - - - - /etc/default/useradd - - Default values for account creation. - - - - /etc/skel/ - - Directory containing default files. - - - - /etc/login.defs - - Shadow password suite configuration. - - - - - - - EXIT VALUES - - The useradd command exits with the following values: - - - 0 - - success - - - - 1 - - can't update password file - - - - 2 - - invalid command syntax - - - - 3 - - invalid argument to option - - - - 4 - - UID already in use (and no ) - - - - 6 - - specified group doesn't exist - - - - 9 - - username already in use - - - - 10 - - can't update group file - - - - 12 - - can't create home directory - - - - 14 - - can't update SELinux user mapping - - - - - - - - SEE ALSO - - - chfn1 - , - - chsh1 - , - - passwd1 - , - - crypt3 - , - - groupadd8 - , - - groupdel8 - , - - groupmod8 - , - - login.defs5 - , - - newusers8 - , - - userdel8 - , - - usermod8 - . - - - diff --git a/man/usermod.8.xml b/man/usermod.8.xml index e1ffdfb7..daf7ad3c 100644 --- a/man/usermod.8.xml +++ b/man/usermod.8.xml @@ -481,8 +481,7 @@ not executing any processes when this command is being executed if the user's numerical user ID, the user's name, or the user's home directory is being changed. usermod checks this - on Linux, but only check if the user is logged in according to utmp - on other architectures. + on Linux. On other platforms it only uses utmp to check if the user is logged in. You must change the owner of any crontab files or diff --git a/man/zh_CN/Makefile.in b/man/zh_CN/Makefile.in new file mode 100644 index 00000000..f15dabfa --- /dev/null +++ b/man/zh_CN/Makefile.in @@ -0,0 +1,757 @@ +# Makefile.in generated by automake 1.15 from Makefile.am. +# @configure_input@ + +# Copyright (C) 1994-2014 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/zh_CN +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@ +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@/zh_CN +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) --gnu man/zh_CN/Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --gnu man/zh_CN/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:\(^:\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/^/%config;/' $< > $@; \ +@ENABLE_REGENERATE_MAN_TRUE@ else \ +@ENABLE_REGENERATE_MAN_TRUE@ sed -e 's/^\(/\1 [%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@ for d in man1 man3 man5 man8; do [ -d $$d ] && rmdir $$d; done + +#$(man_MANS): +# @echo you need to run configure with --enable-man to generate man pages +# @false + +@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 +@ENABLE_REGENERATE_MAN_FALSE@ @false + +# 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/zh_CN/man1/chage.1 b/man/zh_CN/man1/chage.1 new file mode 100644 index 00000000..9eb4b5f5 --- /dev/null +++ b/man/zh_CN/man1/chage.1 @@ -0,0 +1,176 @@ +'\" t +.\" Title: chage +.\" Author: Julianne Frances Haugh +.\" Generator: DocBook XSL Stylesheets v1.79.1 +.\" Date: 2016-09-18 +.\" Manual: 用户命令 +.\" Source: shadow-utils 4.4 +.\" Language: Chinese Simplified +.\" +.TH "CHAGE" "1" "2016-09-18" "shadow\-utils 4\&.4" "用户命令" +.\" ----------------------------------------------------------------- +.\" * 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 +The +\fBchage\fR +command changes the number of days between password changes and the date of the last password change\&. This information is used by the system to determine when a user must change his/her password\&. +.SH "选项" +.PP +\fBchage\fR +命令可以接受的选项有: +.PP +\fB\-d\fR, \fB\-\-lastday\fR\ \&\fILAST_DAY\fR +.RS 4 +Set the number of days since January 1st, 1970 when the password was last changed\&. The date may also be expressed in the format YYYY\-MM\-DD (or the format more commonly used in your area)\&. +.RE +.PP +\fB\-E\fR, \fB\-\-expiredate\fR\ \&\fIEXPIRE_DATE\fR +.RS 4 +Set the date or number of days since January 1, 1970 on which the user\*(Aqs account will no longer be accessible\&. The date may also be expressed in the format YYYY\-MM\-DD (or the format more commonly used in your area)\&. A user whose account is locked must contact the system administrator before being able to use the system again\&. +.sp +\fIEXPIRE_DATE\fR +设置为 +\fI\-1\fR +会移除账户的过期日期。 +.RE +.PP +\fB\-h\fR, \fB\-\-help\fR +.RS 4 +现实帮助信息并退出。 +.RE +.PP +\fB\-I\fR, \fB\-\-inactive\fR\ \&\fIINACTIVE\fR +.RS 4 +Set the number of days of inactivity after a password has expired before the account is locked\&. The +\fIINACTIVE\fR +option is the number of days of inactivity\&. A user whose account is locked must contact the system administrator before being able to use the system again\&. +.sp +\fIINACTIVE\fR +设置为 +\fI\-1\fR +会移除账户禁用功能。 +.RE +.PP +\fB\-l\fR, \fB\-\-list\fR +.RS 4 +现实账户年龄信息。 +.RE +.PP +\fB\-m\fR, \fB\-\-mindays\fR\ \&\fIMIN_DAYS\fR +.RS 4 +在密码更改之间的最小天数设置为 +\fIMIN_DAYS\fR。此字段中的 0 值表示用户可以在任何时间更改其密码。 +.RE +.PP +\fB\-M\fR, \fB\-\-maxdays\fR\ \&\fIMAX_DAYS\fR +.RS 4 +Set the maximum number of days during which a password is valid\&. When +\fIMAX_DAYS\fR +plus +\fILAST_DAY\fR +is less than the current day, the user will be required to change his/her password before being able to use his/her account\&. This occurrence can be planned for in advance by use of the +\fB\-W\fR +option, which provides the user with advance warning\&. +.sp +\fIMAX_DAYS\fR +设置为 +\fI\-1\fR +会移除密码有效性检查。 +.RE +.PP +\fB\-R\fR, \fB\-\-root\fR\ \&\fICHROOT_DIR\fR +.RS 4 +Apply changes in the +\fICHROOT_DIR\fR +directory and use the configuration files from the +\fICHROOT_DIR\fR +directory\&. +.RE +.PP +\fB\-W\fR, \fB\-\-warndays\fR\ \&\fIWARN_DAYS\fR +.RS 4 +Set the number of days of warning before a password change is required\&. The +\fIWARN_DAYS\fR +option is the number of days prior to the password expiring that a user will be warned his/her password is about to expire\&. +.RE +.PP +如果没有选择任何选项,\fBchage\fR +会进入交互模式,以所有字段的当前值提示用户。输入一个新值可以更改这些字段,或者留空使用当前值。当前值出现在 +\fI[ ]\fR +标记对里。 +.SH "注意" +.PP +\fBchage\fR +需要有一个影子密码文件才可用。 +.PP +只有 root 才可以使用 +\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/zh_CN/man1/chfn.1 b/man/zh_CN/man1/chfn.1 new file mode 100644 index 00000000..6f54b0b3 --- /dev/null +++ b/man/zh_CN/man1/chfn.1 @@ -0,0 +1,161 @@ +'\" t +.\" Title: chfn +.\" Author: Julianne Frances Haugh +.\" Generator: DocBook XSL Stylesheets v1.79.1 +.\" Date: 2016-09-18 +.\" Manual: 用户命令 +.\" Source: shadow-utils 4.4 +.\" Language: Chinese Simplified +.\" +.TH "CHFN" "1" "2016-09-18" "shadow\-utils 4\&.4" "用户命令" +.\" ----------------------------------------------------------------- +.\" * 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 +The +\fBchfn\fR +command changes user fullname, office room number, office phone number, and home phone number information for a user\*(Aqs account\&. This information is typically printed by +\fBfinger\fR(1) +and similar programs\&. A normal user may only change the fields for her own account, subject to the restrictions in +/etc/login\&.defs\&. (The default configuration is to prevent users from changing their fullname\&.) The superuser may change any field for any account\&. Additionally, only the superuser may use the +\fB\-o\fR +option to change the undefined portions of the GECOS field\&. +.PP +These fields must not contain any colons\&. Except for the +\fIother\fR +field, they should not contain any comma or equal sign\&. It is also recommended to avoid non\-US\-ASCII characters, but this is only enforced for the phone numbers\&. The +\fIother\fR +field is used to store accounting information used by other applications\&. +.SH "选项" +.PP +\fBchfn\fR +命令可以接受的选项有: +.PP +\fB\-f\fR, \fB\-\-full\-name\fR\ \&\fIFULL_NAME\fR +.RS 4 +更改用户的全名 +.RE +.PP +\fB\-h\fR, \fB\-\-home\-phone\fR\ \&\fIHOME_PHONE\fR +.RS 4 +Change the user\*(Aqs home phone number\&. +.RE +.PP +\fB\-o\fR, \fB\-\-other\fR\ \&\fIOTHER\fR +.RS 4 +Change the user\*(Aqs other GECOS information\&. This field is used to store accounting information used by other applications, and can be changed only by a superuser\&. +.RE +.PP +\fB\-r\fR, \fB\-\-room\fR\ \&\fIROOM_NUMBER\fR +.RS 4 +Change the user\*(Aqs room number\&. +.RE +.PP +\fB\-R\fR, \fB\-\-root\fR\ \&\fICHROOT_DIR\fR +.RS 4 +Apply changes in the +\fICHROOT_DIR\fR +directory and use the configuration files from the +\fICHROOT_DIR\fR +directory\&. +.RE +.PP +\fB\-u\fR, \fB\-\-help\fR +.RS 4 +现实帮助信息并退出。 +.RE +.PP +\fB\-w\fR, \fB\-\-work\-phone\fR\ \&\fIWORK_PHONE\fR +.RS 4 +Change the user\*(Aqs office phone number\&. +.RE +.PP +If none of the options are selected, +\fBchfn\fR +operates in an interactive fashion, prompting the user with the current values for all of the fields\&. Enter the new value to change the field, or leave the line blank to use the current value\&. The current value is displayed between a pair of +\fB[ ]\fR +marks\&. Without options, +\fBchfn\fR +prompts for the current user account\&. +.SH "配置文件" +.PP +在 +/etc/login\&.defs +中有如下配置变量,可以用来更改此工具的行为: +.PP +\fBCHFN_AUTH\fR (boolean) +.RS 4 +如果为 +\fIyes\fR,\fBchfn\fR +进行任何更改前都要要求认证,除非由超级用户运行。 +.RE +.PP +\fBCHFN_RESTRICT\fR (string) +.RS 4 +This parameter specifies which values in the +\fIgecos\fR +field of the +/etc/passwd +file may be changed by regular users using the +\fBchfn\fR +program\&. It can be any combination of letters +\fIf\fR, +\fIr\fR, +\fIw\fR, +\fIh\fR, for Full name, Room number, Work phone, and Home phone, respectively\&. For backward compatibility, +\fIyes\fR +is equivalent to +\fIrwh\fR +and +\fIno\fR +is equivalent to +\fIfrwh\fR\&. If not specified, only the superuser can make any changes\&. The most restrictive setting is better achieved by not installing +\fBchfn\fR +SUID\&. +.RE +.PP +\fBLOGIN_STRING\fR (string) +.RS 4 +此字符串用于提示输入密码。默认是 "Password: ",或者翻译了的结果(汉语中翻译为了\(lq密码:\(rq)。如果设置了此变量,提示不会被翻译。 +.sp +如果字符串包含 +\fI%s\fR,将会被用户名替换。 +.RE +.SH "文件" +.PP +/etc/login\&.defs +.RS 4 +Shadow 密码套件配置。 +.RE +.PP +/etc/passwd +.RS 4 +用户账户信息。 +.RE +.SH "参见" +.PP +\fBchsh\fR(1), +\fBlogin.defs\fR(5), +\fBpasswd\fR(5)\&. diff --git a/man/zh_CN/man1/chsh.1 b/man/zh_CN/man1/chsh.1 new file mode 100644 index 00000000..a1b9c298 --- /dev/null +++ b/man/zh_CN/man1/chsh.1 @@ -0,0 +1,119 @@ +'\" t +.\" Title: chsh +.\" Author: Julianne Frances Haugh +.\" Generator: DocBook XSL Stylesheets v1.79.1 +.\" Date: 2016-09-18 +.\" Manual: 用户命令 +.\" Source: shadow-utils 4.4 +.\" Language: Chinese Simplified +.\" +.TH "CHSH" "1" "2016-09-18" "shadow\-utils 4\&.4" "用户命令" +.\" ----------------------------------------------------------------- +.\" * 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 \- 更改登录 shell +.SH "大纲" +.HP \w'\fBchsh\fR\ 'u +\fBchsh\fR [\fI选项\fR] [\fI登录\fR] +.SH "描述" +.PP +The +\fBchsh\fR +command changes the user login shell\&. This determines the name of the user\*(Aqs initial login command\&. A normal user may only change the login shell for her own account; the superuser may change the login shell for any account\&. +.SH "选项" +.PP +\fBchsh\fR +命令可以接受的选项有: +.PP +\fB\-h\fR, \fB\-\-help\fR +.RS 4 +现实帮助信息并退出。 +.RE +.PP +\fB\-R\fR, \fB\-\-root\fR\ \&\fICHROOT_DIR\fR +.RS 4 +Apply changes in the +\fICHROOT_DIR\fR +directory and use the configuration files from the +\fICHROOT_DIR\fR +directory\&. +.RE +.PP +\fB\-s\fR, \fB\-\-shell\fR\ \&\fISHELL\fR +.RS 4 +用户的新登录 shell 的名称。将此字段设置为空会让系统选择默认的登录 shell。 +.RE +.PP +If the +\fB\-s\fR +option is not selected, +\fBchsh\fR +operates in an interactive fashion, prompting the user with the current login shell\&. Enter the new value to change the shell, or leave the line blank to use the current one\&. The current shell is displayed between a pair of +\fI[ ]\fR +marks\&. +.SH "注意" +.PP +The only restriction placed on the login shell is that the command name must be listed in +/etc/shells, unless the invoker is the superuser, and then any value may be added\&. An account with a restricted login shell may not change her login shell\&. For this reason, placing +/bin/rsh +in +/etc/shells +is discouraged since accidentally changing to a restricted shell would prevent the user from ever changing her login shell back to its original value\&. +.SH "配置文件" +.PP +在 +/etc/login\&.defs +中有如下配置变量,可以用来更改此工具的行为: +.PP +\fBCHSH_AUTH\fR (boolean) +.RS 4 +如果 +\fIyes\fR,\fBchsh\fR +程序在做任何更改之前都会要求认证,除非是以超级用户身份运行的。 +.RE +.PP +\fBLOGIN_STRING\fR (string) +.RS 4 +此字符串用于提示输入密码。默认是 "Password: ",或者翻译了的结果(汉语中翻译为了\(lq密码:\(rq)。如果设置了此变量,提示不会被翻译。 +.sp +如果字符串包含 +\fI%s\fR,将会被用户名替换。 +.RE +.SH "文件" +.PP +/etc/passwd +.RS 4 +用户账户信息。 +.RE +.PP +/etc/shells +.RS 4 +可用的登录 shell 的列表。 +.RE +.PP +/etc/login\&.defs +.RS 4 +Shadow 密码套件配置。 +.RE +.SH "参见" +.PP +\fBchfn\fR(1), +\fBlogin.defs\fR(5), +\fBpasswd\fR(5)\&. diff --git a/man/zh_CN/man1/expiry.1 b/man/zh_CN/man1/expiry.1 new file mode 100644 index 00000000..490938ab --- /dev/null +++ b/man/zh_CN/man1/expiry.1 @@ -0,0 +1,73 @@ +'\" t +.\" Title: expiry +.\" Author: Julianne Frances Haugh +.\" Generator: DocBook XSL Stylesheets v1.79.1 +.\" Date: 2016-09-18 +.\" Manual: 用户命令 +.\" Source: shadow-utils 4.4 +.\" Language: Chinese Simplified +.\" +.TH "EXPIRY" "1" "2016-09-18" "shadow\-utils 4\&.4" "用户命令" +.\" ----------------------------------------------------------------- +.\" * 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 \- check and enforce password expiration policy +.SH "大纲" +.HP \w'\fBexpiry\fR\ 'u +\fBexpiry\fR \fI选项\fR +.SH "描述" +.PP +The +\fBexpiry\fR +command checks (\fB\-c\fR) the current password expiration and forces (\fB\-f\fR) changes when required\&. It is callable as a normal user command\&. +.SH "选项" +.PP +\fBexpiry\fR +选项可以接受的选项有: +.PP +\fB\-c\fR, \fB\-\-check\fR +.RS 4 +Check the password expiration of the current user\&. +.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/zh_CN/man1/gpasswd.1 b/man/zh_CN/man1/gpasswd.1 new file mode 100644 index 00000000..990b452a --- /dev/null +++ b/man/zh_CN/man1/gpasswd.1 @@ -0,0 +1,229 @@ +'\" t +.\" Title: gpasswd +.\" Author: Rafal Maszkowski +.\" Generator: DocBook XSL Stylesheets v1.79.1 +.\" Date: 2016-09-18 +.\" Manual: 用户命令 +.\" Source: shadow-utils 4.4 +.\" Language: Chinese Simplified +.\" +.TH "GPASSWD" "1" "2016-09-18" "shadow\-utils 4\&.4" "用户命令" +.\" ----------------------------------------------------------------- +.\" * 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] \fIgroup\fR +.SH "描述" +.PP +The +\fBgpasswd\fR +command is used to administer +/etc/group, and /etc/gshadow\&. Every group can have +administrators, +members and a password\&. +.PP +System administrators can use the +\fB\-A\fR +option to define group administrator(s) and the +\fB\-M\fR +option to define members\&. They have all rights of group administrators and members\&. +.PP +\fBgpasswd\fR +called by +a group administrator +with a group name only prompts for the new password of the +\fIgroup\fR\&. +.PP +If a password is set the members can still use +\fBnewgrp\fR(1) +without a password, and non\-members must supply the password\&. +.SS "请注意组密码" +.PP +Group passwords are an inherent security problem since more than one person is permitted to know the password\&. However, groups are a useful tool for permitting co\-operation between different users\&. +.SH "选项" +.PP +除了 +\fB\-A\fR +和 +\fB\-M\fR +选项,其它选项不能联合使用。 +.PP +\fBgpasswd\fR +可以接受的选项有: +.PP +\fB\-a\fR, \fB\-\-add\fR\ \&\fIuser\fR +.RS 4 +向名为 +\fIgroup\fR +的组中添加用户 +\fIuser\fR。 +.RE +.PP +\fB\-d\fR, \fB\-\-delete\fR\ \&\fIuser\fR +.RS 4 +从名为 +\fIgroup\fR +的组中移除用户 +\fIuser\fR。 +.RE +.PP +\fB\-h\fR, \fB\-\-help\fR +.RS 4 +现实帮助信息并退出。 +.RE +.PP +\fB\-Q\fR, \fB\-\-root\fR\ \&\fICHROOT_DIR\fR +.RS 4 +Apply changes in the +\fICHROOT_DIR\fR +directory and use the configuration files from the +\fICHROOT_DIR\fR +directory\&. +.RE +.PP +\fB\-r\fR, \fB\-\-remove\-password\fR +.RS 4 +Remove the password from the named +\fIgroup\fR\&. The group password will be empty\&. Only group members will be allowed to use +\fBnewgrp\fR +to join the named +\fIgroup\fR\&. +.RE +.PP +\fB\-R\fR, \fB\-\-restrict\fR +.RS 4 +Restrict the access to the named +\fIgroup\fR\&. The group password is set to "!"\&. Only group members with a password will be allowed to use +\fBnewgrp\fR +to join the named +\fIgroup\fR\&. +.RE +.PP +\fB\-A\fR, \fB\-\-administrators\fR\ \&\fIuser\fR,\&.\&.\&. +.RS 4 +设置有管理权限的用户列表。 +.RE +.PP +\fB\-M\fR, \fB\-\-members\fR\ \&\fIuser\fR,\&.\&.\&. +.RS 4 +设置组成员列表。 +.RE +.SH "CAVEATS" +.PP +This tool only operates on the +/etc/group +and /etc/gshadow files\&. +Thus you cannot change any NIS or LDAP group\&. This must be performed on the corresponding server\&. +.SH "配置文件" +.PP +在 +/etc/login\&.defs +中有如下配置变量,可以用来更改此工具的行为: +.PP +\fBENCRYPT_METHOD\fR (string) +.RS 4 +这定义了系统加密密码的默认算法(如果没有在命令行上指定算法)。 +.sp +可以使用如下值:\fIDES\fR +(default), +\fIMD5\fR, \fISHA256\fR, \fISHA512\fR\&. +.sp +注意,此参数会覆盖 +\fBMD5_CRYPT_ENAB\fR +变量。 +.RE +.PP +\fBMAX_MEMBERS_PER_GROUP\fR (number) +.RS 4 +每个组条目的最大成员数。达到最大值时,在 +/etc/group +开始一个新条目(行)(使用同样的名称,同样的密码,同样的 GID)。 +.sp +默认值是 0,意味着组中的成员数没有限制。 +.sp +此功能(分割组)允许限制组文件中的行长度。这对于确保 NIS 组的行比长于 1024 字符。 +.sp +如果要强制这个限制,可以使用 25。 +.sp +注意:分割组可能不受所有工具的支持(甚至在 Shadow 工具集中)。您不应该使用这个变量,除非真的需要。 +.RE +.PP +\fBMD5_CRYPT_ENAB\fR (boolean) +.RS 4 +表示密码是否必须使用基于 MD5 的算法加密。如果设为 +\fIyes\fR,新密码将使用可以和新版 FreeBSD 兼容的基于 MD5 的算法加密。它支持无限长度的密码以及更长的盐字符串。如果您需要将加密的密码复制到其它不理解新算法的系统,设置为 +\fIno\fR。默认值是 +\fIno\fR。 +.sp +This variable is superseded by the +\fBENCRYPT_METHOD\fR +variable or by any command line option used to configure the encryption algorithm\&. +.sp +此变量已经废弃。您应该使用 +\fBENCRYPT_METHOD\fR。 +.RE +.PP +\fBSHA_CRYPT_MIN_ROUNDS\fR (number), \fBSHA_CRYPT_MAX_ROUNDS\fR (number) +.RS 4 +\fBENCRYPT_METHOD\fR +设为 +\fISHA256\fR +或 +\fISHA512\fR +时,此项确定加密算法默认使用 SHA 轮转数目(当轮转数没有通过命令行指定时)。 +.sp +使用很多轮转,会让暴力破解更加困难。但是需要注意,认证用户时也会需要更多的 CPU 资源。 +.sp +如果没有指定,libc 会选择默认的轮转数(5000)。 +.sp +值必须在 1000 \- 999,999,999 之间。 +.sp +如果只设置了一个 +\fBSHA_CRYPT_MIN_ROUNDS\fR +或 +\fBSHA_CRYPT_MAX_ROUNDS\fR +值,就会使用这个值。 +.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/zh_CN/man1/groups.1 b/man/zh_CN/man1/groups.1 new file mode 100644 index 00000000..006e4dd0 --- /dev/null +++ b/man/zh_CN/man1/groups.1 @@ -0,0 +1,64 @@ +'\" t +.\" Title: groups +.\" Author: Julianne Frances Haugh +.\" Generator: DocBook XSL Stylesheets v1.79.1 +.\" Date: 2016-09-18 +.\" Manual: 用户命令 +.\" Source: shadow-utils 4.4 +.\" Language: Chinese Simplified +.\" +.TH "GROUPS" "1" "2016-09-18" "shadow\-utils 4\&.4" "用户命令" +.\" ----------------------------------------------------------------- +.\" * 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 +The +\fBgroups\fR +command displays the current group names or ID values\&. If the value does not have a corresponding entry in +/etc/group, the value will be displayed as the numerical group value\&. The optional +\fIuser\fR +parameter will display the groups for the named +\fIuser\fR\&. +.SH "注意" +.PP +Systems which do not support concurrent group sets will have the information from +/etc/group +reported\&. The user must use +\fBnewgrp\fR +or +\fBsg\fR +to change his current real and effective group ID\&. +.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/zh_CN/man1/id.1 b/man/zh_CN/man1/id.1 new file mode 100644 index 00000000..72a2c1ed --- /dev/null +++ b/man/zh_CN/man1/id.1 @@ -0,0 +1,60 @@ +'\" t +.\" Title: id +.\" Author: Julianne Frances Haugh +.\" Generator: DocBook XSL Stylesheets v1.79.1 +.\" Date: 2016-09-18 +.\" Manual: 用户命令 +.\" Source: shadow-utils 4.4 +.\" Language: Chinese Simplified +.\" +.TH "ID" "1" "2016-09-18" "shadow\-utils 4\&.4" "用户命令" +.\" ----------------------------------------------------------------- +.\" * 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/zh_CN/man1/login.1 b/man/zh_CN/man1/login.1 new file mode 100644 index 00000000..deda2a79 --- /dev/null +++ b/man/zh_CN/man1/login.1 @@ -0,0 +1,481 @@ +'\" t +.\" Title: login +.\" Author: Julianne Frances Haugh +.\" Generator: DocBook XSL Stylesheets v1.79.1 +.\" Date: 2016-09-18 +.\" Manual: 用户命令 +.\" Source: shadow-utils 4.4 +.\" Language: Chinese Simplified +.\" +.TH "LOGIN" "1" "2016-09-18" "shadow\-utils 4\&.4" "用户命令" +.\" ----------------------------------------------------------------- +.\" * 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] [\fIENV=VAR\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 +The +\fBlogin\fR +program is used to establish a new session with the system\&. It is normally invoked automatically by responding to the +\fIlogin:\fR +prompt on the user\*(Aqs terminal\&. +\fBlogin\fR +may be special to the shell and may not be invoked as a sub\-process\&. When called from a shell, +\fBlogin\fR +should be executed as +\fBexec login\fR +which will cause the user to exit from the current shell (and thus will prevent the new logged in user to return to the session of the caller)\&. Attempting to execute +\fBlogin\fR +from any shell but the login shell will produce an error message\&. +.PP +The user is then prompted for a password, where appropriate\&. Echoing is disabled to prevent revealing the password\&. Only a small number of password failures are permitted before +\fBlogin\fR +exits and the communications link is severed\&. +.PP +If password aging has been enabled for your account, you may be prompted for a new password before proceeding\&. You will be forced to provide your old password and the new password before continuing\&. Please refer to +\fBpasswd\fR(1) +for more information\&. +.PP +After a successful login, you will be informed of any system messages and the presence of mail\&. You may turn off the printing of the system message file, +/etc/motd, by creating a zero\-length file +\&.hushlogin +in your login directory\&. The mail message will be one of "\fIYou have new mail\&.\fR", "\fIYou have mail\&.\fR", or "\fINo Mail\&.\fR" according to the condition of your mailbox\&. +.PP +Your user and group ID will be set according to their values in the +/etc/passwd +file\&. The value for +\fB$HOME\fR, +\fB$SHELL\fR, +\fB$PATH\fR, +\fB$LOGNAME\fR, and +\fB$MAIL\fR +are set according to the appropriate fields in the password entry\&. Ulimit, umask and nice values may also be set according to entries in the GECOS field\&. +.PP +On some installations, the environmental variable +\fB$TERM\fR +will be initialized to the terminal type on your tty line, as specified in +/etc/ttytype\&. +.PP +命令解释器的初始化脚本也可能执行。请参考手册中相应的章节来获取关于此功能的更多信息。 +.PP +在登录 shell 中以第一个字符是\(lq*\(rq标注的是子系统登录。给定的主目录将被用于用户实际登录的新文件系统的根。 +.PP +The +\fBlogin\fR +program is NOT responsible for removing users from the utmp file\&. It is the responsibility of +\fBgetty\fR(8) +and +\fBinit\fR(8) +to clean up apparent ownership of a terminal session\&. If you use +\fBlogin\fR +from the shell prompt without +\fBexec\fR, the user you use will continue to appear to be logged in even after you log out of the "subsession"\&. +.SH "选项" +.PP +\fB\-f\fR +.RS 4 +不要执行认证,用户已经预认证过。 +.sp +注意:此时,\fIusername\fR +是强制的。 +.RE +.PP +\fB\-h\fR +.RS 4 +此登录的远程主机名。 +.RE +.PP +\fB\-p\fR +.RS 4 +保留环境。 +.RE +.PP +\fB\-r\fR +.RS 4 +为 rlogin (远程登录)执行 autologin (自动登录)协议。 +.RE +.PP +\fB\-r\fR, +\fB\-h\fR +and +\fB\-f\fR +只能用于 root 使用 +\fBlogin\fR +时。 +.SH "CAVEATS" +.PP +此版本的 +\fBlogin\fR +有很多编译选项,只有一部分可以在任何站点使用。 +.PP +文件的位置由系统配置决定。 +.PP +The +\fBlogin\fR +program is NOT responsible for removing users from the utmp file\&. It is the responsibility of +\fBgetty\fR(8) +and +\fBinit\fR(8) +to clean up apparent ownership of a terminal session\&. If you use +\fBlogin\fR +from the shell prompt without +\fBexec\fR, the user you use will continue to appear to be logged in even after you log out of the "subsession"\&. +.PP +As with any program, +\fBlogin\fR\*(Aqs appearance can be faked\&. If non\-trusted users have physical access to a machine, an attacker could use this to obtain the password of the next person coming to sit in front of the machine\&. Under Linux, the SAK mechanism can be used by users to initiate a trusted path and prevent this kind of attack\&. +.SH "配置文件" +.PP +在 +/etc/login\&.defs +中有如下配置变量,可以用来更改此工具的行为: +.PP +\fBCONSOLE\fR (string) +.RS 4 +如果定义了,或者是包含设备名(没行一个)的文件的完整路径名,或者是\(lq:\(rq分隔的设备名列表。将只会在这写设备上允许 root 登录。 +.sp +如果没有定义,可以在任何设备上使用 root。 +.sp +指定的设备时不带 /dev/ 前缀。 +.RE +.PP +\fBCONSOLE_GROUPS\fR (string) +.RS 4 +在控制台登录时,添加到用户附加组集中的组列表(就如 CONSOLE 所确定的)。默认是无。 +使用时需要注意:这可能使用户获取这些组的永久权限,甚至登录到的不是此控制台时。 +.RE +.PP +\fBDEFAULT_HOME\fR (boolean) +.RS 4 +如果不能 cd 到主目录时,说明是否允许登录。默认是否。 +.sp +如果设置为 +\fIyes\fR,如果不能 cd 到主目录时,用户将会登录到根目录(/)。 +.RE +.PP +\fBENV_HZ\fR (string) +.RS 4 +如果设置了,将会用于在用户登录时定义 HZ 环境变量。值必须以 +\fIHZ=\fR +开头。Linux 上的常用值是 +\fIHZ=100\fR。 +.RE +.PP +\fBENV_PATH\fR (string) +.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 (string) +.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 (string) +.RS 4 +如果设置了,它将用于在用户登录时定义 TZ 环境变量。此值可以是以 +\fITZ=\fR +开头的时区名(例如 +\fITZ=CST6CDT\fR),或者是包含时区规则的文件完整路径(例如 +/etc/tzname)。 +.sp +如果将完整路径指定为了一个不存在或不可读的文件,则默认使用 +\fITZ=CST6CDT\fR。 +.RE +.PP +\fBENVIRON_FILE\fR (string) +.RS 4 +如果此文件存在,并且可读,将会从中读取登录环境。所有行都必须是 name=value 的格式。 +.sp +以 # 开头的行将视为注释,并被忽略。 +.RE +.PP +\fBERASECHAR\fR (number) +.RS 4 +终端擦除字符 (\fI010\fR += backspace, +\fI0177\fR += DEL)。 +.sp +此值可以使用前缀\(lq0\(rq表示八进制,\(lq0x\(rq表示十六进制。 +.RE +.PP +\fBFAIL_DELAY\fR (number) +.RS 4 +登录失败后,等待多少秒才再允许登录。 +.RE +.PP +\fBFAILLOG_ENAB\fR (boolean) +.RS 4 +允许登录并显示 +/var/log/faillog +登录失败信息。 +.RE +.PP +\fBFAKE_SHELL\fR (string) +.RS 4 +如果设置了,\fBlogin\fR +将执行此 shell 而不是在 +/etc/passwd +中指定的用户 shell。 +.RE +.PP +\fBFTMP_FILE\fR (string) +.RS 4 +如果定义,登录失败会以 utmp 格式记录在此文件中。 +.RE +.PP +\fBHUSHLOGIN_FILE\fR (string) +.RS 4 +If defined, this file can inhibit all the usual chatter during the login sequence\&. If a full pathname is specified, then hushed mode will be enabled if the user\*(Aqs name or shell are found in the file\&. If not a full pathname, then hushed mode will be enabled if the file exists in the user\*(Aqs home directory\&. +.RE +.PP +\fBISSUE_FILE\fR (string) +.RS 4 +如果定义了,此文件将在每次的登录提示之前现实。 +.RE +.PP +\fBKILLCHAR\fR (number) +.RS 4 +终端 KILL 字符 (\fI025\fR += CTRL/U)。 +.sp +此值可以使用前缀\(lq0\(rq表示八进制,\(lq0x\(rq表示十六进制。 +.RE +.PP +\fBLASTLOG_ENAB\fR (boolean) +.RS 4 +允许记录和显示 /var/log/lastlog 登录时间信息。 +.RE +.PP +\fBLOGIN_RETRIES\fR (number) +.RS 4 +密码错误时,重试的最大次数。 +.RE +.PP +\fBLOGIN_STRING\fR (string) +.RS 4 +此字符串用于提示输入密码。默认是 "Password: ",或者翻译了的结果(汉语中翻译为了\(lq密码:\(rq)。如果设置了此变量,提示不会被翻译。 +.sp +如果字符串包含 +\fI%s\fR,将会被用户名替换。 +.RE +.PP +\fBLOGIN_TIMEOUT\fR (number) +.RS 4 +最大登录时间(以秒为单位)。 +.RE +.PP +\fBLOG_OK_LOGINS\fR (boolean) +.RS 4 +允许记录成功登录。 +.RE +.PP +\fBLOG_UNKFAIL_ENAB\fR (boolean) +.RS 4 +在记录到登录失败时,允许记录未知用户名。 +.sp +注意:如果用户不小心将密码输入到了登录名中,记录未知用户名可能是一个安全隐患。 +.RE +.PP +\fBMAIL_CHECK_ENAB\fR (boolean) +.RS 4 +启用登录时检查和现实邮箱状态。 +.sp +如果 shell 的启动文件已经检查了邮件("mailx \-e" 或者其它同功能的工具),您应该禁用它。 +.RE +.PP +\fBMAIL_DIR\fR (string) +.RS 4 +邮箱目录。修改或删除用户账户时需要处理邮箱,如果没有指定,将使用编译时指定的默认值。 +.RE +.PP +\fBMAIL_FILE\fR (string) +.RS 4 +定义用户邮箱文件的位置(相对于主目录)。 +.RE +.PP +\fBMAIL_DIR\fR +and +\fBMAIL_FILE\fR +变量由 +\fBuseradd\fR,\fBusermod\fR +和 +\fBuserdel\fR +用于创建、移动或删除用户邮箱。 +.PP +如果 +\fBMAIL_CHECK_ENAB\fR +设置为 +\fIyes\fR,它们也被用于定义 +\fBMAIL\fR +环境变量。 +.PP +\fBMOTD_FILE\fR (string) +.RS 4 +If defined, ":" delimited list of "message of the day" files to be displayed upon login\&. +.RE +.PP +\fBNOLOGINS_FILE\fR (string) +.RS 4 +If defined, name of file whose presence will inhibit non\-root logins\&. The contents of this file should be a message indicating why logins are inhibited\&. +.RE +.PP +\fBPORTTIME_CHECKS_ENAB\fR (boolean) +.RS 4 +Enable checking of time restrictions specified in +/etc/porttime\&. +.RE +.PP +\fBQUOTAS_ENAB\fR (boolean) +.RS 4 +Enable setting of resource limits from +/etc/limits +and ulimit, umask, and niceness from the user\*(Aqs passwd gecos field\&. +.RE +.PP +\fBTTYGROUP\fR (string), \fBTTYPERM\fR (string) +.RS 4 +The terminal permissions: the login tty will be owned by the +\fBTTYGROUP\fR +group, and the permissions will be set to +\fBTTYPERM\fR\&. +.sp +By default, the ownership of the terminal is set to the user\*(Aqs primary group and the permissions are set to +\fI0600\fR\&. +.sp +\fBTTYGROUP\fR +can be either the name of a group or a numeric group identifier\&. +.sp +If you have a +\fBwrite\fR +program which is "setgid" to a special group which owns the terminals, define TTYGROUP to the group number and TTYPERM to 0620\&. Otherwise leave TTYGROUP commented out and assign TTYPERM to either 622 or 600\&. +.RE +.PP +\fBTTYTYPE_FILE\fR (string) +.RS 4 +If defined, file which maps tty line to TERM environment parameter\&. Each line of the file is in a format something like "vt100 tty01"\&. +.RE +.PP +\fBULIMIT\fR (number) +.RS 4 +默认 +\fBulimit\fR +值。 +.RE +.PP +\fBUMASK\fR (number) +.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 (boolean) +.RS 4 +如果 uid 和 gid 相同,用户名和主用户名也相同,使非 root 组的组掩码位和属主位相同 (如:022 \-> 002, 077 \-> 007)。 +.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 +System message of the day file\&. +.RE +.PP +/etc/nologin +.RS 4 +阻止非 root 用户登录。 +.RE +.PP +/etc/ttytype +.RS 4 +终端类型列表。 +.RE +.PP +$HOME/\&.hushlogin +.RS 4 +阻止现实系统信息。 +.RE +.PP +/etc/login\&.defs +.RS 4 +Shadow 密码套件配置。 +.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/zh_CN/man1/newgrp.1 b/man/zh_CN/man1/newgrp.1 new file mode 100644 index 00000000..bab29c26 --- /dev/null +++ b/man/zh_CN/man1/newgrp.1 @@ -0,0 +1,98 @@ +'\" t +.\" Title: newgrp +.\" Author: Julianne Frances Haugh +.\" Generator: DocBook XSL Stylesheets v1.79.1 +.\" Date: 2016-09-18 +.\" Manual: 用户命令 +.\" Source: shadow-utils 4.4 +.\" Language: Chinese Simplified +.\" +.TH "NEWGRP" "1" "2016-09-18" "shadow\-utils 4\&.4" "用户命令" +.\" ----------------------------------------------------------------- +.\" * 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 [\-] [\fIgroup\fR] +.SH "描述" +.PP +The +\fBnewgrp\fR +command is used to change the current group ID during a login session\&. If the optional +\fB\-\fR +flag is given, the user\*(Aqs environment will be reinitialized as though the user had logged in, otherwise the current environment, including current working directory, remains unchanged\&. +.PP +\fBnewgrp\fR +changes the current real group ID to the named group, or to the default group listed in +/etc/passwd +if no group name is given\&. +\fBnewgrp\fR +also tries to add the group to the user groupset\&. If not root, the user will be prompted for a password if she does not have a password (in +/etc/shadow +if this user has an entry in the shadowed password file, or in +/etc/passwd +otherwise) and the group does, or if the user is not listed as a member and the group has a password\&. The user will be denied access if the group password is empty and the user is not listed as a member\&. +.PP +If there is an entry for this group in +/etc/gshadow, then the list of members and the password of this group will be taken from this file, otherwise, the entry in +/etc/group +is considered\&. +.SH "配置文件" +.PP +在 +/etc/login\&.defs +中有如下配置变量,可以用来更改此工具的行为: +.PP +\fBSYSLOG_SG_ENAB\fR (boolean) +.RS 4 +允许\(lqsyslog\(rq记录 +\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/zh_CN/man1/passwd.1 b/man/zh_CN/man1/passwd.1 new file mode 100644 index 00000000..8c2050b1 --- /dev/null +++ b/man/zh_CN/man1/passwd.1 @@ -0,0 +1,347 @@ +'\" t +.\" Title: passwd +.\" Author: Julianne Frances Haugh +.\" Generator: DocBook XSL Stylesheets v1.79.1 +.\" Date: 2016-09-18 +.\" Manual: 用户命令 +.\" Source: shadow-utils 4.4 +.\" Language: Chinese Simplified +.\" +.TH "PASSWD" "1" "2016-09-18" "shadow\-utils 4\&.4" "用户命令" +.\" ----------------------------------------------------------------- +.\" * 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\ \&\fIINACTIVE\fR +.RS 4 +此选项用于在密码过期一定天数之后禁用账户。一个用户账户密码已经过期 +\fIINACTIVE\fR +天之后,用户将不能再登录进账户。 +.RE +.PP +\fB\-k\fR, \fB\-\-keep\-tokens\fR +.RS 4 +表示密码更改只应该因为认证口令(密码)过期更改。用户希望保持他们尚未过期的口令。 +.RE +.PP +\fB\-l\fR, \fB\-\-lock\fR +.RS 4 +锁定指定账户的密码。此选项通过将密码更改为一个不可能与加密值匹配的值来禁用(它在密码开头添加一个\(lq!\(rq)。 +.sp +注意,这并没有禁用此账户。用户仍然可以通过其它认证方式(如 SSH 密码)来登录。要禁用此账户,管理员需要使用 +\fBusermod \-\-expiredate 1\fR +(设置账户的过期时间为1970年1月2日)。 +.sp +被锁定了密码的用户不允许更改密码。 +.RE +.PP +\fB\-n\fR, \fB\-\-mindays\fR\ \&\fIMIN_DAYS\fR +.RS 4 +在密码更改之间的最小天数设置为 +\fIMIN_DAYS\fR。此字段中的 0 值表示用户可以在任何时间更改其密码。 +.RE +.PP +\fB\-q\fR, \fB\-\-quiet\fR +.RS 4 +安静模式。 +.RE +.PP +\fB\-r\fR, \fB\-\-repository\fR\ \&\fIREPOSITORY\fR +.RS 4 +在 +\fIREPOSITORY\fR +中更改密码 +.RE +.PP +\fB\-R\fR, \fB\-\-root\fR\ \&\fICHROOT_DIR\fR +.RS 4 +Apply changes in the +\fICHROOT_DIR\fR +directory and use the configuration files from the +\fICHROOT_DIR\fR +directory\&. +.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\ \&\fIWARN_DAYS\fR +.RS 4 +设置在要求更改密码之前警告的天数。\fIWARN_DAYS\fR +选项是在密码过期之前提前警告的天数。 +.RE +.PP +\fB\-x\fR, \fB\-\-maxdays\fR\ \&\fIMAX_DAYS\fR +.RS 4 +设置密码仍然有效的最大天数。\fIMAX_DAYS\fR +之后,密码会要求更改。 +.RE +.SH "CAVEATS" +.PP +密码复杂性检查在每台机器间不同。用户应该选择适合的尽量复杂的密码。 +.PP +在启动了 NIS 的系统上,如果没有登录 NIS 服务器,用户或许不能更改自己的密码。 +.SH "配置文件" +.PP +在 +/etc/login\&.defs +中有如下配置变量,可以用来更改此工具的行为: +.PP +\fBENCRYPT_METHOD\fR (string) +.RS 4 +这定义了系统加密密码的默认算法(如果没有在命令行上指定算法)。 +.sp +可以使用如下值:\fIDES\fR +(default), +\fIMD5\fR, \fISHA256\fR, \fISHA512\fR\&. +.sp +注意,此参数会覆盖 +\fBMD5_CRYPT_ENAB\fR +变量。 +.RE +.PP +\fBMD5_CRYPT_ENAB\fR (boolean) +.RS 4 +表示密码是否必须使用基于 MD5 的算法加密。如果设为 +\fIyes\fR,新密码将使用可以和新版 FreeBSD 兼容的基于 MD5 的算法加密。它支持无限长度的密码以及更长的盐字符串。如果您需要将加密的密码复制到其它不理解新算法的系统,设置为 +\fIno\fR。默认值是 +\fIno\fR。 +.sp +This variable is superseded by the +\fBENCRYPT_METHOD\fR +variable or by any command line option used to configure the encryption algorithm\&. +.sp +此变量已经废弃。您应该使用 +\fBENCRYPT_METHOD\fR。 +.RE +.PP +\fBOBSCURE_CHECKS_ENAB\fR (boolean) +.RS 4 +对密码更改启用附加检查。 +.RE +.PP +\fBPASS_ALWAYS_WARN\fR (boolean) +.RS 4 +如果是 root,警告弱密码,但是仍然允许使用。 +.RE +.PP +\fBPASS_CHANGE_TRIES\fR (number) +.RS 4 +可以尝试更改密码的最大次数(太容易)。 +.RE +.PP +\fBPASS_MAX_LEN\fR (number), \fBPASS_MIN_LEN\fR (number) +.RS 4 +crypt() 的有效字符位数。\fBPASS_MAX_LEN\fR +默认是 8,除非您自己的 crypt() 更好,否则不要更改。如果 +\fBMD5_CRYPT_ENAB\fR +设为 +\fIyes\fR,会被忽略。 +.RE +.PP +\fBSHA_CRYPT_MIN_ROUNDS\fR (number), \fBSHA_CRYPT_MAX_ROUNDS\fR (number) +.RS 4 +\fBENCRYPT_METHOD\fR +设为 +\fISHA256\fR +或 +\fISHA512\fR +时,此项确定加密算法默认使用 SHA 轮转数目(当轮转数没有通过命令行指定时)。 +.sp +使用很多轮转,会让暴力破解更加困难。但是需要注意,认证用户时也会需要更多的 CPU 资源。 +.sp +如果没有指定,libc 会选择默认的轮转数(5000)。 +.sp +值必须在 1000 \- 999,999,999 之间。 +.sp +如果只设置了一个 +\fBSHA_CRYPT_MIN_ROUNDS\fR +或 +\fBSHA_CRYPT_MAX_ROUNDS\fR +值,就会使用这个值。 +.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 +Shadow 密码套件配置。 +.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/zh_CN/man1/sg.1 b/man/zh_CN/man1/sg.1 new file mode 100644 index 00000000..b60daa9f --- /dev/null +++ b/man/zh_CN/man1/sg.1 @@ -0,0 +1,95 @@ +'\" t +.\" Title: sg +.\" Author: Julianne Frances Haugh +.\" Generator: DocBook XSL Stylesheets v1.79.1 +.\" Date: 2016-09-18 +.\" Manual: 用户命令 +.\" Source: shadow-utils 4.4 +.\" Language: Chinese Simplified +.\" +.TH "SG" "1" "2016-09-18" "shadow\-utils 4\&.4" "用户命令" +.\" ----------------------------------------------------------------- +.\" * 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 \- 以不同的组 ID 执行命令 +.SH "大纲" +.HP \w'\fBsg\fR\ 'u +\fBsg\fR [\-] [组\ [\-c]\ 命令] +.SH "描述" +.PP +\fBsg\fR +命令类似于 +\fBnewgrp\fR,但是可以接受一个命令。这个命令将会使用 +/bin/sh +shell 来执行。对于您可以使用 +\fBsg\fR +启动的多数 shell,您需要将多个词的命令用引号引起来。\fBnewgrp\fR +和 +\fBsg\fR +之间的另外一个不同点是某些 shell 对 +\fBnewgrp\fR +有特殊对待,会使用 +\fBnewgrp\fR +创建的一个新的 shell 实例替换自身。这不会发生在 +\fBsg\fR +身上,所以从 +\fBsg\fR +退出后,您会返回到先前的组 ID。 +.SH "配置文件" +.PP +在 +/etc/login\&.defs +中有如下配置变量,可以用来更改此工具的行为: +.PP +\fBSYSLOG_SG_ENAB\fR (boolean) +.RS 4 +允许\(lqsyslog\(rq记录 +\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/zh_CN/man1/su.1 b/man/zh_CN/man1/su.1 new file mode 100644 index 00000000..9d5cdca0 --- /dev/null +++ b/man/zh_CN/man1/su.1 @@ -0,0 +1,425 @@ +'\" t +.\" Title: su +.\" Author: Julianne Frances Haugh +.\" Generator: DocBook XSL Stylesheets v1.79.1 +.\" Date: 2016-09-18 +.\" Manual: 用户命令 +.\" Source: shadow-utils 4.4 +.\" Language: Chinese Simplified +.\" +.TH "SU" "1" "2016-09-18" "shadow\-utils 4\&.4" "用户命令" +.\" ----------------------------------------------------------------- +.\" * 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] +.SH "描述" +.PP +\fBsu\fR +用于让用户在登录期间变成另外一个用户。后边不带 +\fBusername\fR +使用时,\fBsu\fR +默认会变成超级用户。可选的选项 +\fB\-\fR,可以用于提供一个类似于用户直接登录的环境,用户可能期望是这样的。 +.PP +附加参数可以在用户名之后提供,这时,将会把他们提供给用户的登录 shell。特别地,参数 +\fB\-c\fR +将会使下一个参数被多数命令解释器视为命令。这个命令会被 +/etc/passwd +中为目标用户指定的 shell 执行。 +.PP +您可以使用 +\fB\-\-\fR +参数将 +\fBsu\fR +选项和提供给 shell 的参数分隔开来。 +.PP +如果合适,将提示用户输入一个密码。输入无效的密码会产生一个错误消息。所有的尝试,无论成功还是失败,都会被记录,以检测对系统的滥用。 +.PP +当前环境会传递给新 shell。对于普通用户,\fB$PATH\fR +的值重置为 +/bin:/usr/bin,而对于超级用户则是 +/sbin:/bin:/usr/sbin:/usr/bin。这会随 +/etc/login\&.defs +中的 +\fBENV_PATH\fR +和 +\fBENV_SUPATH\fR +值改变。 +.PP +在登录 shell 中以第一个字符是\(lq*\(rq标注的是子系统登录。给定的主目录将被用于用户实际登录的新文件系统的根。 +.SH "选项" +.PP +\fBsu\fR +命令可以接受的选项有: +.PP +\fB\-c\fR, \fB\-\-command\fR\ \&\fICOMMAND\fR +.RS 4 +通过使用其 +\fB\-c\fR +选项,指定一个由 shell 运行的命令。 +.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\ \&\fISHELL\fR +.RS 4 +将使用的 shell。 +.sp +使用的 shell 在如下中选择(高优先级在前):.PP +.RS 4 +通过 \-\-shell 指定的 shell。 +.RE +.PP +.RS 4 +如果使用了 +\fB\-\-preserve\-environment\fR,shell 将由 +\fB$SHELL\fR +环境变量指定。 +.RE +.PP +.RS 4 +在 +/etc/passwd +的相应项中为目标用户指定的 shell。 +.RE +.PP +.RS 4 +如果无法通过以上办法找到一个 shell,则使用 +/bin/sh。 +.RE +.sp +如果目标用户的 shell 是有限制的(即,/etc/passwd +中用户项中的 shell 字段没有在 +/etc/shells +中列出),那么 +\fB\-\-shell\fR +选项或 +\fB$SHELL\fR +环境变量不会带入账户,除非 +\fBsu\fR +是被 root 调用的。 +.RE +.PP +\fB\-m\fR, \fB\-p\fR, \fB\-\-preserve\-environment\fR +.RS 4 +保留当前环境,除非:.PP +\fB$PATH\fR +.RS 4 +根据 +/etc/login\&.defs +中的 +\fBENV_PATH\fR +or +\fBENV_SUPATH\fR +选项重设 (请往下看) +.RE +.PP +\fB$IFS\fR +.RS 4 +如果已经设置了,重设 +\(lq\(rq。 +.RE +.sp +如果用户的 shell 受限,此选项无效 (除非是 root 调用的 +\fBsu\fR)。 +.sp +注意,环境的默认行为如下:.PP +.RS 4 +The +\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, and +\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 "CAVEATS" +.PP +此版本的 +\fBsu\fR +有很多编译选项,在某些机器上,可能只使用了其中的一部分。 +.SH "配置文件" +.PP +在 +/etc/login\&.defs +中有如下配置变量,可以用来更改此工具的行为: +.PP +\fBCONSOLE\fR (string) +.RS 4 +如果定义了,或者是包含设备名(没行一个)的文件的完整路径名,或者是\(lq:\(rq分隔的设备名列表。将只会在这写设备上允许 root 登录。 +.sp +如果没有定义,可以在任何设备上使用 root。 +.sp +指定的设备时不带 /dev/ 前缀。 +.RE +.PP +\fBCONSOLE_GROUPS\fR (string) +.RS 4 +在控制台登录时,添加到用户附加组集中的组列表(就如 CONSOLE 所确定的)。默认是无。 +使用时需要注意:这可能使用户获取这些组的永久权限,甚至登录到的不是此控制台时。 +.RE +.PP +\fBDEFAULT_HOME\fR (boolean) +.RS 4 +如果不能 cd 到主目录时,说明是否允许登录。默认是否。 +.sp +如果设置为 +\fIyes\fR,如果不能 cd 到主目录时,用户将会登录到根目录(/)。 +.RE +.PP +\fBENV_HZ\fR (string) +.RS 4 +如果设置了,将会用于在用户登录时定义 HZ 环境变量。值必须以 +\fIHZ=\fR +开头。Linux 上的常用值是 +\fIHZ=100\fR。 +.RE +.PP +\fBENVIRON_FILE\fR (string) +.RS 4 +如果此文件存在,并且可读,将会从中读取登录环境。所有行都必须是 name=value 的格式。 +.sp +以 # 开头的行将视为注释,并被忽略。 +.RE +.PP +\fBENV_PATH\fR (string) +.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 (string) +.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 (string) +.RS 4 +如果设置了,它将用于在用户登录时定义 TZ 环境变量。此值可以是以 +\fITZ=\fR +开头的时区名(例如 +\fITZ=CST6CDT\fR),或者是包含时区规则的文件完整路径(例如 +/etc/tzname)。 +.sp +如果将完整路径指定为了一个不存在或不可读的文件,则默认使用 +\fITZ=CST6CDT\fR。 +.RE +.PP +\fBLOGIN_STRING\fR (string) +.RS 4 +此字符串用于提示输入密码。默认是 "Password: ",或者翻译了的结果(汉语中翻译为了\(lq密码:\(rq)。如果设置了此变量,提示不会被翻译。 +.sp +如果字符串包含 +\fI%s\fR,将会被用户名替换。 +.RE +.PP +\fBMAIL_CHECK_ENAB\fR (boolean) +.RS 4 +启用登录时检查和现实邮箱状态。 +.sp +如果 shell 的启动文件已经检查了邮件("mailx \-e" 或者其它同功能的工具),您应该禁用它。 +.RE +.PP +\fBMAIL_DIR\fR (string) +.RS 4 +邮箱目录。修改或删除用户账户时需要处理邮箱,如果没有指定,将使用编译时指定的默认值。 +.RE +.PP +\fBMAIL_FILE\fR (string) +.RS 4 +定义用户邮箱文件的位置(相对于主目录)。 +.RE +.PP +\fBMAIL_DIR\fR +and +\fBMAIL_FILE\fR +变量由 +\fBuseradd\fR,\fBusermod\fR +和 +\fBuserdel\fR +用于创建、移动或删除用户邮箱。 +.PP +如果 +\fBMAIL_CHECK_ENAB\fR +设置为 +\fIyes\fR,它们也被用于定义 +\fBMAIL\fR +环境变量。 +.PP +\fBQUOTAS_ENAB\fR (boolean) +.RS 4 +Enable setting of resource limits from +/etc/limits +and ulimit, umask, and niceness from the user\*(Aqs passwd gecos field\&. +.RE +.PP +\fBSULOG_FILE\fR (string) +.RS 4 +如果定义了,所有的 su 活动都会记录到此文件。 +.RE +.PP +\fBSU_NAME\fR (string) +.RS 4 +如果定义了,就是运行\(lqsu \-\(rq时显示的命令名称。例如,如果定义为\(lqsu\(rq,那么\(lqps\(rq会显示此命令为\(lq\-su\(rq。如果没有定义,\(lqps\(rq将会显示实际执行的 shell,例如类似于\(lq\-sh\(rq。 +.RE +.PP +\fBSU_WHEEL_ONLY\fR (boolean) +.RS 4 +如果为 +\fIyes\fR,用户必须在 +/etc/group +中别设定为 GID 为 0 的组(在大部分 Linux 上叫 +\fIroot\fR)的成员。 +.RE +.PP +\fBSYSLOG_SU_ENAB\fR (boolean) +.RS 4 +除了 sulog 文件日志,也为 +\fBsu\fR +活动启用\(lqsyslog\(rq日志。 +.RE +.PP +\fBUSERGROUPS_ENAB\fR (boolean) +.RS 4 +如果 uid 和 gid 相同,用户名和主用户名也相同,使非 root 组的组掩码位和属主位相同 (如:022 \-> 002, 077 \-> 007)。 +.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 +Shadow 密码套件配置。 +.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/zh_CN/man3/getspnam.3 b/man/zh_CN/man3/getspnam.3 new file mode 100644 index 00000000..cd473da3 --- /dev/null +++ b/man/zh_CN/man3/getspnam.3 @@ -0,0 +1 @@ +.so man3/shadow.3 diff --git a/man/zh_CN/man3/shadow.3 b/man/zh_CN/man3/shadow.3 new file mode 100644 index 00000000..09382334 --- /dev/null +++ b/man/zh_CN/man3/shadow.3 @@ -0,0 +1,243 @@ +'\" t +.\" Title: shadow +.\" Author: Julianne Frances Haugh +.\" Generator: DocBook XSL Stylesheets v1.79.1 +.\" Date: 2016-09-18 +.\" Manual: 库函数调用 +.\" Source: shadow-utils 4.4 +.\" Language: Chinese Simplified +.\" +.TH "SHADOW" "3" "2016-09-18" "shadow\-utils 4\&.4" "库函数调用" +.\" ----------------------------------------------------------------- +.\" * 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 "SYNTAX" +.PP +\fI#include \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 +\fIFILE\fR +\fI*fp\fR\fI);\fR +.PP +\fIint lckpwdf();\fR +.PP +\fIint ulckpwdf();\fR +.SH "描述" +.PP +\fIshadow\fR +处理 shadow 密码文件 +/etc/shadow +的内容。\fI#include\fR +文件中的结构是: +.sp +.if n \{\ +.RS 4 +.\} +.nf +struct spwd { + char *sp_namp; /* user login name */ + char *sp_pwdp; /* encrypted password */ + long int sp_lstchg; /* last password change */ + long int sp_min; /* days until change allowed\&. */ + long int sp_max; /* days before change required */ + long int sp_warn; /* days warning for expiration */ + long int sp_inact; /* days before account inactive */ + long int sp_expire; /* date when account expires */ + unsigned long int sp_flag; /* reserved for future use */ +} + +.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 \- 指向以 null 结束的用户名的指针 +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +sp_pwdp \- 指向 null 结束的密码的指针 +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +sp_lstchg \- 最近更改密码的日期(日期计算方法是从1970年1月1日开始的天数) +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +sp_min \- days before which password may not be changed +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +sp_max \- days after which password must be changed +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +sp_warn \- days before password is to expire that user is warned of pending password expiration +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +sp_inact \- days after password expires that account is considered inactive and disabled +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +sp_expire \- days since Jan 1, 1970 when account will be disabled +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +sp_flag \- reserved for future use +.RE +.SH "描述" +.PP +\fIgetspent\fR, +\fIgetspname\fR, +\fIfgetspent\fR, and +\fIsgetspent\fR +each return a pointer to a +\fIstruct spwd\fR\&. +\fIgetspent\fR +returns the next entry from the file, and +\fIfgetspent\fR +returns the next entry from the given stream, which is assumed to be a file of the proper format\&. +\fIsgetspent\fR +returns a pointer to a +\fIstruct spwd\fR +using the provided string as input\&. +\fIgetspnam\fR +searches from the current position in the file for an entry matching +\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 "DIAGNOSTICS" +.PP +如果没有更多条目了或者处理时出错,此函数返回 NULL。使用 +\fIint\fR +类型返回值的函数返回 0 表示成功,\-1 表示失败。 +.SH "CAVEATS" +.PP +这些函数只能由超级用户使用,因为对影子密码文件的访问是受限的。 +.SH "文件" +.PP +/etc/shadow +.RS 4 +安全用户账户信息。 +.RE +.SH "参见" +.PP +\fBgetpwent\fR(3), +\fBshadow\fR(5)\&. diff --git a/man/zh_CN/man5/faillog.5 b/man/zh_CN/man5/faillog.5 new file mode 100644 index 00000000..9bbc2c80 --- /dev/null +++ b/man/zh_CN/man5/faillog.5 @@ -0,0 +1,64 @@ +'\" t +.\" Title: faillog +.\" Author: Julianne Frances Haugh +.\" Generator: DocBook XSL Stylesheets v1.79.1 +.\" Date: 2016-09-18 +.\" Manual: 文件格式和转化 +.\" Source: shadow-utils 4.4 +.\" Language: Chinese Simplified +.\" +.TH "FAILLOG" "5" "2016-09-18" "shadow\-utils 4\&.4" "文件格式和转化" +.\" ----------------------------------------------------------------- +.\" * 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 +maintains a count of login failures and the limits for each account\&. +.PP +The file contains fixed length records, indexed by numerical UID\&. Each record contains the count of login failures since the last successful login; the maximum number of failures before the account is disabled; the line on which the last login failure occurred; the date of the last login failure; and the duration (in seconds) during which the account will be locked after a failure\&. +.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 +Failure logging file\&. +.RE +.SH "参见" +.PP +\fBfaillog\fR(8) diff --git a/man/zh_CN/man5/gshadow.5 b/man/zh_CN/man5/gshadow.5 new file mode 100644 index 00000000..42c1b3d9 --- /dev/null +++ b/man/zh_CN/man5/gshadow.5 @@ -0,0 +1,102 @@ +'\" t +.\" Title: gshadow +.\" Author: Nicolas Fran\(,cois +.\" Generator: DocBook XSL Stylesheets v1.79.1 +.\" Date: 2016-09-18 +.\" Manual: 文件格式和转化 +.\" Source: shadow-utils 4.4 +.\" Language: Chinese Simplified +.\" +.TH "GSHADOW" "5" "2016-09-18" "shadow\-utils 4\&.4" "文件格式和转化" +.\" ----------------------------------------------------------------- +.\" * 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 +If the password field contains some string that is not a valid result of +\fBcrypt\fR(3), for instance ! or *, users will not be able to use a unix password to access the group (but group members do not need the password)\&. +.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 +You should use the same list of users as in +/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/zh_CN/man5/limits.5 b/man/zh_CN/man5/limits.5 new file mode 100644 index 00000000..84b2d8a3 --- /dev/null +++ b/man/zh_CN/man5/limits.5 @@ -0,0 +1,274 @@ +'\" t +.\" Title: limits +.\" Author: Luca Berra +.\" Generator: DocBook XSL Stylesheets v1.79.1 +.\" Date: 2016-09-18 +.\" Manual: 文件格式和转化 +.\" Source: shadow-utils 4.4 +.\" Language: Chinese Simplified +.\" +.TH "LIMITS" "5" "2016-09-18" "shadow\-utils 4\&.4" "文件格式和转化" +.\" ----------------------------------------------------------------- +.\" * 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 +The +\fIlimits\fR +file (/etc/limits +by default or LIMITS_FILE defined +config\&.h) describes the resource limits you wish to impose\&. It should be owned by root and readable by root account only\&. +.PP +By default no quota is imposed on \*(Aqroot\*(Aq\&. In fact, there is no way to impose limits via this procedure to root\-equiv accounts (accounts with UID 0)\&. +.PP +每行以如下格式对一个用户描述限制: +.PP +\fIuser LIMITS_STRING\fR +.PP +或如下格式: +.PP +\fI@group LIMITS_STRING\fR +.PP +\fILIMITS_STRING\fR +是一个串联的资源限制列表。每条限制由一个字母指示符和跟随的数字限制组成。 +.PP +可用的指示符有: +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +A:最大地址空间 (KB) +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +C:最大转储文件大小 (KB) +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +D:最大数据大小 (KB) +.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: max locked\-in\-memory address space (KB) +.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: max resident set size (KB) +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +S:最大栈尺寸 (KB) +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +T:最大 CPU 时间 (分钟) +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +U:最大处理器数目 +.RE +.PP +例如,\fIL2D2048N5\fR +就是有效的 +\fILIMITS_STRING\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 +The default entry is denoted by username "\fI*\fR"\&. If you have multiple +\fIdefault\fR +entries in your +\fILIMITS_FILE\fR, then the last one will be used as the default entry\&. +.PP +The limits specified in the form "\fI@group\fR" apply to the members of the specified +\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 +要完全禁用对一个用户的限制,可以仅仅只使用一个短线\(lq\-\(rq。 +.PP +To disable a limit for a user, a single dash "\fI\-\fR" can be used instead of the numerical value for this limit\&. +.PP +Also, please note that all limit settings are set PER LOGIN\&. They are not global, nor are they permanent\&. Perhaps global limits will come, but for now this will have to do ;) +.SH "文件" +.PP +/etc/limits +.RS 4 +.RE +.SH "参见" +.PP +\fBlogin\fR(1), +\fBsetpriority\fR(2), +\fBsetrlimit\fR(2)\&. diff --git a/man/zh_CN/man5/login.access.5 b/man/zh_CN/man5/login.access.5 new file mode 100644 index 00000000..bd4aec01 --- /dev/null +++ b/man/zh_CN/man5/login.access.5 @@ -0,0 +1,66 @@ +'\" t +.\" Title: login.access +.\" Author: Marek Micha\(/lkiewicz +.\" Generator: DocBook XSL Stylesheets v1.79.1 +.\" Date: 2016-09-18 +.\" Manual: 文件格式和转化 +.\" Source: shadow-utils 4.4 +.\" Language: Chinese Simplified +.\" +.TH "LOGIN\&.ACCESS" "5" "2016-09-18" "shadow\-utils 4\&.4" "文件格式和转化" +.\" ----------------------------------------------------------------- +.\" * 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 +The +\fIlogin\&.access\fR +file specifies (user, host) combinations and/or (user, tty) combinations for which a login will be either accepted or refused\&. +.PP +When someone logs in, the +\fIlogin\&.access\fR +is scanned for the first entry that matches the (user, host) combination, or, in case of non\-networked logins, the first entry that matches the (user, tty) combination\&. The permissions field of that table entry determines whether the login will be accepted or refused\&. +.PP +登录访问控制表的每一行有\(lq:\(rq分隔的三个字段: +.PP +\fIpermission\fR:\fIusers\fR:\fIorigins\fR +.PP +The first field should be a "\fI+\fR" (access granted) or "\fI\-\fR" (access denied) character\&. The second field should be a list of one or more login names, group names, or +\fIALL\fR +(always matches)\&. The third field should be a list of one or more tty names (for non\-networked logins), host names, domain names (begin with "\&."), host addresses, internet network numbers (end with "\&."), +\fIALL\fR +(always matches) or +\fILOCAL\fR +(matches any string that does not contain a "\&." character)\&. If you run NIS you can use @netgroupname in host or user patterns\&. +.PP +\fIEXCEPT\fR +操作符让编写非常复杂的规则,成为可能。 +.PP +The group file is searched only when a name does not match that of the logged\-in user\&. Only groups are matched in which users are explicitly listed: the program does not look at a user\*(Aqs primary group id value\&. +.SH "文件" +.PP +/etc/login\&.defs +.RS 4 +Shadow 密码套件配置。 +.RE +.SH "参见" +.PP +\fBlogin\fR(1)\&. diff --git a/man/zh_CN/man5/login.defs.5 b/man/zh_CN/man5/login.defs.5 new file mode 100644 index 00000000..da10f82a --- /dev/null +++ b/man/zh_CN/man5/login.defs.5 @@ -0,0 +1,813 @@ +'\" t +.\" Title: login.defs +.\" Author: Julianne Frances Haugh +.\" Generator: DocBook XSL Stylesheets v1.79.1 +.\" Date: 2016-09-18 +.\" Manual: 文件格式和转化 +.\" Source: shadow-utils 4.4 +.\" Language: Chinese Simplified +.\" +.TH "LOGIN\&.DEFS" "5" "2016-09-18" "shadow\-utils 4\&.4" "文件格式和转化" +.\" ----------------------------------------------------------------- +.\" * 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 +The +/etc/login\&.defs +file defines the site\-specific configuration for the shadow password suite\&. This file is required\&. Absence of this file will not prevent system operation, but will probably result in undesirable operation\&. +.PP +This file is a readable text file, each line of the file describing one configuration parameter\&. The lines consist of a configuration name and value, separated by whitespace\&. Blank lines and comment lines are ignored\&. Comments are introduced with a "#" pound sign and the pound sign must be the first non\-white character of the line\&. +.PP +Parameter values may be of four types: strings, booleans, numbers, and long numbers\&. A string is comprised of any printable characters\&. A boolean should be either the value +\fIyes\fR +or +\fIno\fR\&. An undefined boolean parameter or one with a value other than these will be given a +\fIno\fR +value\&. Numbers (both regular and long) may be either decimal values, octal values (precede the value with +\fI0\fR) or hexadecimal values (precede the value with +\fI0x\fR)\&. The maximum value of the regular and long numeric parameters is machine\-dependent\&. +.PP +提供如下配置项: +.PP +\fBCHFN_AUTH\fR (boolean) +.RS 4 +如果为 +\fIyes\fR,\fBchfn\fR +进行任何更改前都要要求认证,除非由超级用户运行。 +.RE +.PP +\fBCHFN_RESTRICT\fR (string) +.RS 4 +This parameter specifies which values in the +\fIgecos\fR +field of the +/etc/passwd +file may be changed by regular users using the +\fBchfn\fR +program\&. It can be any combination of letters +\fIf\fR, +\fIr\fR, +\fIw\fR, +\fIh\fR, for Full name, Room number, Work phone, and Home phone, respectively\&. For backward compatibility, +\fIyes\fR +is equivalent to +\fIrwh\fR +and +\fIno\fR +is equivalent to +\fIfrwh\fR\&. If not specified, only the superuser can make any changes\&. The most restrictive setting is better achieved by not installing +\fBchfn\fR +SUID\&. +.RE +.PP +\fBCHSH_AUTH\fR (boolean) +.RS 4 +如果 +\fIyes\fR,\fBchsh\fR +程序在做任何更改之前都会要求认证,除非是以超级用户身份运行的。 +.RE +.PP +\fBCONSOLE\fR (string) +.RS 4 +如果定义了,或者是包含设备名(没行一个)的文件的完整路径名,或者是\(lq:\(rq分隔的设备名列表。将只会在这写设备上允许 root 登录。 +.sp +如果没有定义,可以在任何设备上使用 root。 +.sp +指定的设备时不带 /dev/ 前缀。 +.RE +.PP +\fBCONSOLE_GROUPS\fR (string) +.RS 4 +在控制台登录时,添加到用户附加组集中的组列表(就如 CONSOLE 所确定的)。默认是无。 +使用时需要注意:这可能使用户获取这些组的永久权限,甚至登录到的不是此控制台时。 +.RE +.PP +\fBCREATE_HOME\fR (boolean) +.RS 4 +指示是否应该为新用户默认创建主目录。 +.sp +此设置并不应用到系统用户,并且可以使用命令行覆盖。 +.RE +.PP +\fBDEFAULT_HOME\fR (boolean) +.RS 4 +如果不能 cd 到主目录时,说明是否允许登录。默认是否。 +.sp +如果设置为 +\fIyes\fR,如果不能 cd 到主目录时,用户将会登录到根目录(/)。 +.RE +.PP +\fBENCRYPT_METHOD\fR (string) +.RS 4 +这定义了系统加密密码的默认算法(如果没有在命令行上指定算法)。 +.sp +可以使用如下值:\fIDES\fR +(default), +\fIMD5\fR, \fISHA256\fR, \fISHA512\fR\&. +.sp +注意,此参数会覆盖 +\fBMD5_CRYPT_ENAB\fR +变量。 +.RE +.PP +\fBENV_HZ\fR (string) +.RS 4 +如果设置了,将会用于在用户登录时定义 HZ 环境变量。值必须以 +\fIHZ=\fR +开头。Linux 上的常用值是 +\fIHZ=100\fR。 +.RE +.PP +\fBENV_PATH\fR (string) +.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 (string) +.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 (string) +.RS 4 +如果设置了,它将用于在用户登录时定义 TZ 环境变量。此值可以是以 +\fITZ=\fR +开头的时区名(例如 +\fITZ=CST6CDT\fR),或者是包含时区规则的文件完整路径(例如 +/etc/tzname)。 +.sp +如果将完整路径指定为了一个不存在或不可读的文件,则默认使用 +\fITZ=CST6CDT\fR。 +.RE +.PP +\fBENVIRON_FILE\fR (string) +.RS 4 +如果此文件存在,并且可读,将会从中读取登录环境。所有行都必须是 name=value 的格式。 +.sp +以 # 开头的行将视为注释,并被忽略。 +.RE +.PP +\fBERASECHAR\fR (number) +.RS 4 +终端擦除字符 (\fI010\fR += backspace, +\fI0177\fR += DEL)。 +.sp +此值可以使用前缀\(lq0\(rq表示八进制,\(lq0x\(rq表示十六进制。 +.RE +.PP +\fBFAIL_DELAY\fR (number) +.RS 4 +登录失败后,等待多少秒才再允许登录。 +.RE +.PP +\fBFAILLOG_ENAB\fR (boolean) +.RS 4 +允许登录并显示 +/var/log/faillog +登录失败信息。 +.RE +.PP +\fBFAKE_SHELL\fR (string) +.RS 4 +如果设置了,\fBlogin\fR +将执行此 shell 而不是在 +/etc/passwd +中指定的用户 shell。 +.RE +.PP +\fBFTMP_FILE\fR (string) +.RS 4 +如果定义,登录失败会以 utmp 格式记录在此文件中。 +.RE +.PP +\fBGID_MAX\fR (number), \fBGID_MIN\fR (number) +.RS 4 +\fBuseradd\fR,\fBgroupadd\fR +或 +\fBnewusers\fR +创建的常规组的组 ID 的范围。 +.sp +\fBGID_MIN\fR +和 +\fBGID_MAX\fR +的默认值分别是 1000 和 60000。 +.RE +.PP +\fBHUSHLOGIN_FILE\fR (string) +.RS 4 +If defined, this file can inhibit all the usual chatter during the login sequence\&. If a full pathname is specified, then hushed mode will be enabled if the user\*(Aqs name or shell are found in the file\&. If not a full pathname, then hushed mode will be enabled if the file exists in the user\*(Aqs home directory\&. +.RE +.PP +\fBISSUE_FILE\fR (string) +.RS 4 +如果定义了,此文件将在每次的登录提示之前现实。 +.RE +.PP +\fBKILLCHAR\fR (number) +.RS 4 +终端 KILL 字符 (\fI025\fR += CTRL/U)。 +.sp +此值可以使用前缀\(lq0\(rq表示八进制,\(lq0x\(rq表示十六进制。 +.RE +.PP +\fBLASTLOG_ENAB\fR (boolean) +.RS 4 +允许记录和显示 /var/log/lastlog 登录时间信息。 +.RE +.PP +\fBLOG_OK_LOGINS\fR (boolean) +.RS 4 +允许记录成功登录。 +.RE +.PP +\fBLOG_UNKFAIL_ENAB\fR (boolean) +.RS 4 +在记录到登录失败时,允许记录未知用户名。 +.sp +注意:如果用户不小心将密码输入到了登录名中,记录未知用户名可能是一个安全隐患。 +.RE +.PP +\fBLOGIN_RETRIES\fR (number) +.RS 4 +密码错误时,重试的最大次数。 +.RE +.PP +\fBLOGIN_STRING\fR (string) +.RS 4 +此字符串用于提示输入密码。默认是 "Password: ",或者翻译了的结果(汉语中翻译为了\(lq密码:\(rq)。如果设置了此变量,提示不会被翻译。 +.sp +如果字符串包含 +\fI%s\fR,将会被用户名替换。 +.RE +.PP +\fBLOGIN_TIMEOUT\fR (number) +.RS 4 +最大登录时间(以秒为单位)。 +.RE +.PP +\fBMAIL_CHECK_ENAB\fR (boolean) +.RS 4 +启用登录时检查和现实邮箱状态。 +.sp +如果 shell 的启动文件已经检查了邮件("mailx \-e" 或者其它同功能的工具),您应该禁用它。 +.RE +.PP +\fBMAIL_DIR\fR (string) +.RS 4 +邮箱目录。修改或删除用户账户时需要处理邮箱,如果没有指定,将使用编译时指定的默认值。 +.RE +.PP +\fBMAIL_FILE\fR (string) +.RS 4 +定义用户邮箱文件的位置(相对于主目录)。 +.RE +.PP +\fBMAIL_DIR\fR +and +\fBMAIL_FILE\fR +变量由 +\fBuseradd\fR,\fBusermod\fR +和 +\fBuserdel\fR +用于创建、移动或删除用户邮箱。 +.PP +如果 +\fBMAIL_CHECK_ENAB\fR +设置为 +\fIyes\fR,它们也被用于定义 +\fBMAIL\fR +环境变量。 +.PP +\fBMAX_MEMBERS_PER_GROUP\fR (number) +.RS 4 +每个组条目的最大成员数。达到最大值时,在 +/etc/group +开始一个新条目(行)(使用同样的名称,同样的密码,同样的 GID)。 +.sp +默认值是 0,意味着组中的成员数没有限制。 +.sp +此功能(分割组)允许限制组文件中的行长度。这对于确保 NIS 组的行比长于 1024 字符。 +.sp +如果要强制这个限制,可以使用 25。 +.sp +注意:分割组可能不受所有工具的支持(甚至在 Shadow 工具集中)。您不应该使用这个变量,除非真的需要。 +.RE +.PP +\fBMD5_CRYPT_ENAB\fR (boolean) +.RS 4 +表示密码是否必须使用基于 MD5 的算法加密。如果设为 +\fIyes\fR,新密码将使用可以和新版 FreeBSD 兼容的基于 MD5 的算法加密。它支持无限长度的密码以及更长的盐字符串。如果您需要将加密的密码复制到其它不理解新算法的系统,设置为 +\fIno\fR。默认值是 +\fIno\fR。 +.sp +This variable is superseded by the +\fBENCRYPT_METHOD\fR +variable or by any command line option used to configure the encryption algorithm\&. +.sp +此变量已经废弃。您应该使用 +\fBENCRYPT_METHOD\fR。 +.RE +.PP +\fBMOTD_FILE\fR (string) +.RS 4 +If defined, ":" delimited list of "message of the day" files to be displayed upon login\&. +.RE +.PP +\fBNOLOGINS_FILE\fR (string) +.RS 4 +If defined, name of file whose presence will inhibit non\-root logins\&. The contents of this file should be a message indicating why logins are inhibited\&. +.RE +.PP +\fBOBSCURE_CHECKS_ENAB\fR (boolean) +.RS 4 +对密码更改启用附加检查。 +.RE +.PP +\fBPASS_ALWAYS_WARN\fR (boolean) +.RS 4 +如果是 root,警告弱密码,但是仍然允许使用。 +.RE +.PP +\fBPASS_CHANGE_TRIES\fR (number) +.RS 4 +可以尝试更改密码的最大次数(太容易)。 +.RE +.PP +\fBPASS_MAX_DAYS\fR (number) +.RS 4 +一个密码可以使用的最大天数。如果密码比这旧,将会强迫更改密码。如果不指定,就假定为 \-1,这会禁用这个限制。 +.RE +.PP +\fBPASS_MIN_DAYS\fR (number) +.RS 4 +两次更改密码时间的最小间隔。将会拒绝任何早于此的更改密码的尝试。如果不指定,假定为 \-1,将会禁用这个限制。 +.RE +.PP +\fBPASS_WARN_AGE\fR (number) +.RS 4 +密码过期之前给出警告的天数。0 表示只有只在过期的当天警告,负值表示不警告。如果没有指定,不会给警告。 +.RE +.PP +\fBPASS_MAX_DAYS\fR, +\fBPASS_MIN_DAYS\fR +and +\fBPASS_WARN_AGE\fR +are only used at the time of account creation\&. Any changes to these settings won\*(Aqt affect existing accounts\&. +.PP +\fBPASS_MAX_LEN\fR (number), \fBPASS_MIN_LEN\fR (number) +.RS 4 +crypt() 的有效字符位数。\fBPASS_MAX_LEN\fR +默认是 8,除非您自己的 crypt() 更好,否则不要更改。如果 +\fBMD5_CRYPT_ENAB\fR +设为 +\fIyes\fR,会被忽略。 +.RE +.PP +\fBPORTTIME_CHECKS_ENAB\fR (boolean) +.RS 4 +Enable checking of time restrictions specified in +/etc/porttime\&. +.RE +.PP +\fBQUOTAS_ENAB\fR (boolean) +.RS 4 +Enable setting of resource limits from +/etc/limits +and ulimit, umask, and niceness from the user\*(Aqs passwd gecos field\&. +.RE +.PP +\fBSHA_CRYPT_MIN_ROUNDS\fR (number), \fBSHA_CRYPT_MAX_ROUNDS\fR (number) +.RS 4 +\fBENCRYPT_METHOD\fR +设为 +\fISHA256\fR +或 +\fISHA512\fR +时,此项确定加密算法默认使用 SHA 轮转数目(当轮转数没有通过命令行指定时)。 +.sp +使用很多轮转,会让暴力破解更加困难。但是需要注意,认证用户时也会需要更多的 CPU 资源。 +.sp +如果没有指定,libc 会选择默认的轮转数(5000)。 +.sp +值必须在 1000 \- 999,999,999 之间。 +.sp +如果只设置了一个 +\fBSHA_CRYPT_MIN_ROUNDS\fR +或 +\fBSHA_CRYPT_MAX_ROUNDS\fR +值,就会使用这个值。 +.sp +如果 +\fBSHA_CRYPT_MIN_ROUNDS\fR +> +\fBSHA_CRYPT_MAX_ROUNDS\fR,将会使用大的那个。 +.RE +.PP +\fBSULOG_FILE\fR (string) +.RS 4 +如果定义了,所有的 su 活动都会记录到此文件。 +.RE +.PP +\fBSU_NAME\fR (string) +.RS 4 +如果定义了,就是运行\(lqsu \-\(rq时显示的命令名称。例如,如果定义为\(lqsu\(rq,那么\(lqps\(rq会显示此命令为\(lq\-su\(rq。如果没有定义,\(lqps\(rq将会显示实际执行的 shell,例如类似于\(lq\-sh\(rq。 +.RE +.PP +\fBSU_WHEEL_ONLY\fR (boolean) +.RS 4 +如果为 +\fIyes\fR,用户必须在 +/etc/group +中别设定为 GID 为 0 的组(在大部分 Linux 上叫 +\fIroot\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 10000\&. +.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 10000\&. +.RE +.PP +\fBSYS_GID_MAX\fR (number), \fBSYS_GID_MIN\fR (number) +.RS 4 +\fBuseradd\fR、\fBgroupadd\fR +或 +\fBnewusers\fR +创建的系统组的组 ID 的范围。 +.sp +\fBSYS_GID_MIN\fR +和 +\fBSYS_GID_MAX\fR +的默认值分别是 101 和 +\fBGID_MIN\fR\-1。 +.RE +.PP +\fBSYS_UID_MAX\fR (number), \fBSYS_UID_MIN\fR (number) +.RS 4 +\fBuseradd\fR +或 +\fBnewusers\fR +创建的系统用户的用户 ID 的范围。 +.sp +\fBSYS_UID_MIN\fR +和 +\fBSYS_UID_MAX\fR +的默认值分别是 101 和 +\fBUID_MIN\fR\-1。 +.RE +.PP +\fBSYSLOG_SG_ENAB\fR (boolean) +.RS 4 +允许\(lqsyslog\(rq记录 +\fBsg\fR +的活动。 +.RE +.PP +\fBSYSLOG_SU_ENAB\fR (boolean) +.RS 4 +除了 sulog 文件日志,也为 +\fBsu\fR +活动启用\(lqsyslog\(rq日志。 +.RE +.PP +\fBTTYGROUP\fR (string), \fBTTYPERM\fR (string) +.RS 4 +The terminal permissions: the login tty will be owned by the +\fBTTYGROUP\fR +group, and the permissions will be set to +\fBTTYPERM\fR\&. +.sp +By default, the ownership of the terminal is set to the user\*(Aqs primary group and the permissions are set to +\fI0600\fR\&. +.sp +\fBTTYGROUP\fR +can be either the name of a group or a numeric group identifier\&. +.sp +If you have a +\fBwrite\fR +program which is "setgid" to a special group which owns the terminals, define TTYGROUP to the group number and TTYPERM to 0620\&. Otherwise leave TTYGROUP commented out and assign TTYPERM to either 622 or 600\&. +.RE +.PP +\fBTTYTYPE_FILE\fR (string) +.RS 4 +If defined, file which maps tty line to TERM environment parameter\&. Each line of the file is in a format something like "vt100 tty01"\&. +.RE +.PP +\fBUID_MAX\fR (number), \fBUID_MIN\fR (number) +.RS 4 +\fBuseradd\fR +或 +\fBnewusers\fR +创建的普通用户的用户 ID 的范围。 +.sp +\fBUID_MIN\fR +和 +\fBUID_MAX\fR +的默认值分别是 1000 和 60000。 +.RE +.PP +\fBULIMIT\fR (number) +.RS 4 +默认 +\fBulimit\fR +值。 +.RE +.PP +\fBUMASK\fR (number) +.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 (string) +.RS 4 +如果定义了,这是删除账户时执行的命令。它应该移除所有属于此用户的的 at/cron/print 等作业(作为第一个参数传递)。 +.sp +这个脚本的返回值并不被带到账户中去。 +.sp +这是一个示例脚本,它移除用户的 cron、at 和 print 作业: +.sp +.if n \{\ +.RS 4 +.\} +.nf +#! /bin/sh + +# 检查需要的参数 +if [ $# != 1 ]; then + echo "Usage: $0 username" + exit 1 +fi + +# 移除 cron 作业 +crontab \-r \-u $1 + +# 移除 at 作业 +# 注意这将移除所有属于同一个 UID 的作业 +# 即使此 ID 由多个用户名共享 +AT_SPOOL_DIR=/var/spool/cron/atjobs +find $AT_SPOOL_DIR \-name "[^\&.]*" \-type f \-user $1 \-delete \e; + +# 移除 print 作业 +lprm $1 + +# 全部完成 +exit 0 + +.fi +.if n \{\ +.RE +.\} +.RE +.PP +\fBUSERGROUPS_ENAB\fR (boolean) +.RS 4 +如果 uid 和 gid 相同,用户名和主用户名也相同,使非 root 组的组掩码位和属主位相同 (如:022 \-> 002, 077 \-> 007)。 +.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 +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 +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 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 +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/zh_CN/man5/passwd.5 b/man/zh_CN/man5/passwd.5 new file mode 100644 index 00000000..4cb65cf0 --- /dev/null +++ b/man/zh_CN/man5/passwd.5 @@ -0,0 +1,178 @@ +'\" t +.\" Title: passwd +.\" Author: Julianne Frances Haugh +.\" Generator: DocBook XSL Stylesheets v1.79.1 +.\" Date: 2016-09-18 +.\" Manual: 文件格式和转化 +.\" Source: shadow-utils 4.4 +.\" Language: Chinese Simplified +.\" +.TH "PASSWD" "5" "2016-09-18" "shadow\-utils 4\&.4" "文件格式和转化" +.\" ----------------------------------------------------------------- +.\" * 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 +为每个用户账户包含一行,包含使用冒号 (\(lq:\(rq) 分隔的七个字段,分别是: +.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 +.\} +数字用户 ID +.RE +.sp +.RS 4 +.ie n \{\ +\h'-04'\(bu\h'+03'\c +.\} +.el \{\ +.sp -1 +.IP \(bu 2.3 +.\} +数字组 ID +.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 +加密的密码字段可以为空,此时使用指定的登录名登录时不会要求认证。然而,如果 +\fIpassword\fR +为空,一些读取 +/etc/passwd +文件的程序可能会不允许 +\fI任何\fR +访问。如果 +\fIpassword\fR +字段是一个小写的 +\(lqx\(rq,那么加密的密码实际上存储于 +\fBshadow\fR(5) +中;在 +/etc/shadow +文件中 +\fI必须\fR +有对应的行,否则用户账户就会无效。如果 +\fIpassword\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/zh_CN/man5/porttime.5 b/man/zh_CN/man5/porttime.5 new file mode 100644 index 00000000..ade7baf1 --- /dev/null +++ b/man/zh_CN/man5/porttime.5 @@ -0,0 +1,93 @@ +'\" t +.\" Title: porttime +.\" Author: Julianne Frances Haugh +.\" Generator: DocBook XSL Stylesheets v1.79.1 +.\" Date: 2016-09-18 +.\" Manual: 文件格式和转化 +.\" Source: shadow-utils 4.4 +.\" Language: Chinese Simplified +.\" +.TH "PORTTIME" "5" "2016-09-18" "shadow\-utils 4\&.4" "文件格式和转化" +.\" ----------------------------------------------------------------- +.\" * 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 设备列表,或者星号表示匹配所有终端。第二个字段是逗号分隔的用户名列表,或者星号表示匹配所有用户名。第三个字段是逗号分隔的访问许可时间。 +.PP +每条访问时间包含一周的 0 天或多天,缩写为 +\fISu\fR, +\fIMo\fR, +\fITu\fR, +\fIWe\fR, +\fITh\fR, +\fIFr\fR +和 +\fISa\fR,随后是连字符分隔的一组时间,缩写 +\fIWk\fR +可以用于表示周一到周五,\fIAl\fR +可以用于表示没一天。如果没有制定周几,将会假定为 +\fIAl\fR。 +.SH "示例" +.PP +下面的条目允许在工作日的上午九点到下午五点在任何端口上访问用户 +\fBjfh\fR。 +.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/zh_CN/man5/shadow.5 b/man/zh_CN/man5/shadow.5 new file mode 100644 index 00000000..f5ce7add --- /dev/null +++ b/man/zh_CN/man5/shadow.5 @@ -0,0 +1,149 @@ +'\" t +.\" Title: shadow +.\" Author: Julianne Frances Haugh +.\" Generator: DocBook XSL Stylesheets v1.79.1 +.\" Date: 2016-09-18 +.\" Manual: 文件格式和转化 +.\" Source: shadow-utils 4.4 +.\" Language: Chinese Simplified +.\" +.TH "SHADOW" "5" "2016-09-18" "shadow\-utils 4\&.4" "文件格式和转化" +.\" ----------------------------------------------------------------- +.\" * 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 个字段,使用半角冒号 (\(lq:\(rq) 分隔,顺序如下: +.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 +最近一次更改密码的时间,表示从1970年1月1日开始的天数。 +.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 +账户过期的日期,表示从1970年1月1日开始的天数。 +.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,因为它既能理解成永不过期也能理解成在1970年1月1日过期。 +.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/zh_CN/man5/suauth.5 b/man/zh_CN/man5/suauth.5 new file mode 100644 index 00000000..249426c5 --- /dev/null +++ b/man/zh_CN/man5/suauth.5 @@ -0,0 +1,141 @@ +'\" t +.\" Title: suauth +.\" Author: Marek Micha\(/lkiewicz +.\" Generator: DocBook XSL Stylesheets v1.79.1 +.\" Date: 2016-09-18 +.\" Manual: 文件格式和转化 +.\" Source: shadow-utils 4.4 +.\" Language: Chinese Simplified +.\" +.TH "SUAUTH" "5" "2016-09-18" "shadow\-utils 4\&.4" "文件格式和转化" +.\" ----------------------------------------------------------------- +.\" * 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 +执行 su 命令时,总是根据 +/etc/suauth,可以更改 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 + to\-id:from\-id:ACTION + +.fi +.if n \{\ +.RE +.\} +.PP +此处的 to\-id 可以是:\fIALL\fR,逗号(,) 分隔的用户名列表或者 +\fIALL EXCEPT\fR +后跟逗号分隔的用户名列表。 +.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 + # + root:chris,birddog:OWNPASS + # + # 任何其他人都不能 su 成 root,除非在 wheel 组中。 + # BSD 就是这样实现这个功能的。 + # + root:ALL EXCEPT GROUP wheel:DENY + # + # 或许 terry 和 birddog 是属于同一个人的账户 + # 两个账户直接互相 su,不需要密码 + # + terry:birddog:NOPASS + birddog:terry:NOPASS + # + +.fi +.if n \{\ +.RE +.\} +.SH "文件" +.PP +/etc/suauth +.RS 4 +.RE +.SH "缺陷" +.PP +可能会有很多潜在问题。文件解析器尤其不能容忍语法错误,不能有无意义的空白符(除了行首和行尾),并且使用特定的标记分割不同的事情。 +.SH "DIAGNOSTICS" +.PP +此文件的解析错误会使用 +\fBsyslogd\fR(8) +作为 AUTH 中的 ERR 级别报告。 +.SH "参见" +.PP +\fBsu\fR(1)\&. diff --git a/man/zh_CN/man8/chgpasswd.8 b/man/zh_CN/man8/chgpasswd.8 new file mode 100644 index 00000000..fad38026 --- /dev/null +++ b/man/zh_CN/man8/chgpasswd.8 @@ -0,0 +1,206 @@ +'\" t +.\" Title: chgpasswd +.\" Author: Thomas K\(/loczko +.\" Generator: DocBook XSL Stylesheets v1.79.1 +.\" Date: 2016-09-18 +.\" Manual: 系统管理命令 +.\" Source: shadow-utils 4.4 +.\" Language: Chinese Simplified +.\" +.TH "CHGPASSWD" "8" "2016-09-18" "shadow\-utils 4\&.4" "系统管理命令" +.\" ----------------------------------------------------------------- +.\" * 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 +命令从标准输入读取一系列组名和密码对,并使用此信息更新这些存在的组。每行的格式如下: +.PP +\fIgroup_name\fR:\fIpassword\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, and 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\ \&\fICHROOT_DIR\fR +.RS 4 +Apply changes in the +\fICHROOT_DIR\fR +directory and use the configuration files from the +\fICHROOT_DIR\fR +directory\&. +.RE +.PP +\fB\-s\fR, \fB\-\-sha\-rounds\fR +.RS 4 +使用指定次数的轮转来加密密码。 +.sp +值 0 表示让系统为加密方法选择默认的轮转次数 (5000)。 +.sp +会强制最小 1,000,最大 9,9999,9999 +.sp +您只可以对 SHA256 或 SHA512 使用此选项。 +.sp +默认,轮转数由 +/etc/login\&.defs +文件中的 SHA_CRYPT_MIN_ROUNDS 和 SHA_CRYPT_MAX_ROUNDS 变量确定。 +.RE +.SH "CAVEATS" +.PP +记住要设置权限或者掩码来阻止其它用户对未加密文件的读取。 +.PP +您需要确保你吗和加密方法符合系统的密码策略。 +.SH "配置文件" +.PP +在 +/etc/login\&.defs +中有如下配置变量,可以用来更改此工具的行为: +.PP +\fBENCRYPT_METHOD\fR (string) +.RS 4 +这定义了系统加密密码的默认算法(如果没有在命令行上指定算法)。 +.sp +可以使用如下值:\fIDES\fR +(default), +\fIMD5\fR, \fISHA256\fR, \fISHA512\fR\&. +.sp +注意,此参数会覆盖 +\fBMD5_CRYPT_ENAB\fR +变量。 +.RE +.PP +\fBMAX_MEMBERS_PER_GROUP\fR (number) +.RS 4 +每个组条目的最大成员数。达到最大值时,在 +/etc/group +开始一个新条目(行)(使用同样的名称,同样的密码,同样的 GID)。 +.sp +默认值是 0,意味着组中的成员数没有限制。 +.sp +此功能(分割组)允许限制组文件中的行长度。这对于确保 NIS 组的行比长于 1024 字符。 +.sp +如果要强制这个限制,可以使用 25。 +.sp +注意:分割组可能不受所有工具的支持(甚至在 Shadow 工具集中)。您不应该使用这个变量,除非真的需要。 +.RE +.PP +\fBMD5_CRYPT_ENAB\fR (boolean) +.RS 4 +表示密码是否必须使用基于 MD5 的算法加密。如果设为 +\fIyes\fR,新密码将使用可以和新版 FreeBSD 兼容的基于 MD5 的算法加密。它支持无限长度的密码以及更长的盐字符串。如果您需要将加密的密码复制到其它不理解新算法的系统,设置为 +\fIno\fR。默认值是 +\fIno\fR。 +.sp +This variable is superseded by the +\fBENCRYPT_METHOD\fR +variable or by any command line option used to configure the encryption algorithm\&. +.sp +此变量已经废弃。您应该使用 +\fBENCRYPT_METHOD\fR。 +.RE +.PP +\fBSHA_CRYPT_MIN_ROUNDS\fR (number), \fBSHA_CRYPT_MAX_ROUNDS\fR (number) +.RS 4 +\fBENCRYPT_METHOD\fR +设为 +\fISHA256\fR +或 +\fISHA512\fR +时,此项确定加密算法默认使用 SHA 轮转数目(当轮转数没有通过命令行指定时)。 +.sp +使用很多轮转,会让暴力破解更加困难。但是需要注意,认证用户时也会需要更多的 CPU 资源。 +.sp +如果没有指定,libc 会选择默认的轮转数(5000)。 +.sp +值必须在 1000 \- 999,999,999 之间。 +.sp +如果只设置了一个 +\fBSHA_CRYPT_MIN_ROUNDS\fR +或 +\fBSHA_CRYPT_MAX_ROUNDS\fR +值,就会使用这个值。 +.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 +Shadow 密码套件配置。 +.RE +.SH "参见" +.PP +\fBgpasswd\fR(1), +\fBgroupadd\fR(8), +\fBlogin.defs\fR(5)\&. diff --git a/man/zh_CN/man8/chpasswd.8 b/man/zh_CN/man8/chpasswd.8 new file mode 100644 index 00000000..a0a3edaa --- /dev/null +++ b/man/zh_CN/man8/chpasswd.8 @@ -0,0 +1,209 @@ +'\" t +.\" Title: chpasswd +.\" Author: Julianne Frances Haugh +.\" Generator: DocBook XSL Stylesheets v1.79.1 +.\" Date: 2016-09-18 +.\" Manual: 系统管理命令 +.\" Source: shadow-utils 4.4 +.\" Language: Chinese Simplified +.\" +.TH "CHPASSWD" "8" "2016-09-18" "shadow\-utils 4\&.4" "系统管理命令" +.\" ----------------------------------------------------------------- +.\" * 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 +The +\fBchpasswd\fR +command reads a list of user name and password pairs from standard input and uses this information to update a group of existing users\&. Each line is of the format: +.PP +\fIuser_name\fR:\fIpassword\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\ \&\fIMETHOD\fR +.RS 4 +使用指定的方法加密密码。 +.sp +可用的方法有 DES, MD5, NONE, and SHA256 或 SHA512,前提是您的 libc 支持这写方法。 +.sp +By default (if none of the +\fB\-c\fR, +\fB\-m\fR, or +\fB\-e\fR +options are specified), the encryption method is defined by the +\fBENCRYPT_METHOD\fR +or +\fBMD5_CRYPT_ENAB\fR +variables of +/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\ \&\fICHROOT_DIR\fR +.RS 4 +Apply changes in the +\fICHROOT_DIR\fR +directory and use the configuration files from the +\fICHROOT_DIR\fR +directory\&. +.RE +.PP +\fB\-s\fR, \fB\-\-sha\-rounds\fR\ \&\fIROUNDS\fR +.RS 4 +使用指定次数的轮转来加密密码。 +.sp +值 0 表示让系统为加密方法选择默认的轮转次数 (5000)。 +.sp +会强制最小 1,000,最大 9,9999,9999 +.sp +您只可以对 SHA256 或 SHA512 使用此选项。 +.sp +By default, the number of rounds is defined by the +\fBSHA_CRYPT_MIN_ROUNDS\fR +and +\fBSHA_CRYPT_MAX_ROUNDS\fR +variables in +/etc/login\&.defs\&. +.RE +.SH "CAVEATS" +.PP +记住要设置权限或者掩码来阻止其它用户对未加密文件的读取。 +.SH "配置文件" +.PP +在 +/etc/login\&.defs +中有如下配置变量,可以用来更改此工具的行为: +.PP +\fBENCRYPT_METHOD\fR (string) +.RS 4 +这定义了系统加密密码的默认算法(如果没有在命令行上指定算法)。 +.sp +可以使用如下值:\fIDES\fR +(default), +\fIMD5\fR, \fISHA256\fR, \fISHA512\fR\&. +.sp +注意,此参数会覆盖 +\fBMD5_CRYPT_ENAB\fR +变量。 +.RE +.PP +\fBMD5_CRYPT_ENAB\fR (boolean) +.RS 4 +表示密码是否必须使用基于 MD5 的算法加密。如果设为 +\fIyes\fR,新密码将使用可以和新版 FreeBSD 兼容的基于 MD5 的算法加密。它支持无限长度的密码以及更长的盐字符串。如果您需要将加密的密码复制到其它不理解新算法的系统,设置为 +\fIno\fR。默认值是 +\fIno\fR。 +.sp +This variable is superseded by the +\fBENCRYPT_METHOD\fR +variable or by any command line option used to configure the encryption algorithm\&. +.sp +此变量已经废弃。您应该使用 +\fBENCRYPT_METHOD\fR。 +.RE +.PP +\fBSHA_CRYPT_MIN_ROUNDS\fR (number), \fBSHA_CRYPT_MAX_ROUNDS\fR (number) +.RS 4 +\fBENCRYPT_METHOD\fR +设为 +\fISHA256\fR +或 +\fISHA512\fR +时,此项确定加密算法默认使用 SHA 轮转数目(当轮转数没有通过命令行指定时)。 +.sp +使用很多轮转,会让暴力破解更加困难。但是需要注意,认证用户时也会需要更多的 CPU 资源。 +.sp +如果没有指定,libc 会选择默认的轮转数(5000)。 +.sp +值必须在 1000 \- 999,999,999 之间。 +.sp +如果只设置了一个 +\fBSHA_CRYPT_MIN_ROUNDS\fR +或 +\fBSHA_CRYPT_MAX_ROUNDS\fR +值,就会使用这个值。 +.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 +Shadow 密码套件配置。 +.RE +.SH "参见" +.PP +\fBpasswd\fR(1), +\fBnewusers\fR(8), +\fBlogin.defs\fR(5),\fBuseradd\fR(8)\&. diff --git a/man/zh_CN/man8/faillog.8 b/man/zh_CN/man8/faillog.8 new file mode 100644 index 00000000..d6227d9b --- /dev/null +++ b/man/zh_CN/man8/faillog.8 @@ -0,0 +1,165 @@ +'\" t +.\" Title: faillog +.\" Author: Julianne Frances Haugh +.\" Generator: DocBook XSL Stylesheets v1.79.1 +.\" Date: 2016-09-18 +.\" Manual: 系统管理命令 +.\" Source: shadow-utils 4.4 +.\" Language: Chinese Simplified +.\" +.TH "FAILLOG" "8" "2016-09-18" "shadow\-utils 4\&.4" "系统管理命令" +.\" ----------------------------------------------------------------- +.\" * 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 "大纲" +.HP \w'\fBfaillog\fR\ 'u +\fBfaillog\fR [\fI选项\fR] +.SH "描述" +.PP +\fBfaillog\fR +displays the contents of the failure log database (/var/log/faillog)\&. It can also set the failure counters and limits\&. When +\fBfaillog\fR +is run without arguments, it only displays the faillog records of the users who had a login failure\&. +.SH "选项" +.PP +\fBfaillog\fR +可以接受的选项有: +.PP +\fB\-a\fR, \fB\-\-all\fR +.RS 4 +Display (or act on) faillog records for all users having an entry in the +faillog +database\&. +.sp +用户的范围可以使用 +\fB\-u\fR +选项限制。 +.sp +In display mode, this is still restricted to existing users but forces the display of the faillog entries even if they are empty\&. +.sp +With the +\fB\-l\fR, +\fB\-m\fR, +\fB\-r\fR, +\fB\-t\fR +options, the users\*(Aq records are changed, even if the user does not exist on the system\&. This is useful to reset records of users that have been deleted or to set a policy in advance for a range of users\&. +.RE +.PP +\fB\-h\fR, \fB\-\-help\fR +.RS 4 +现实帮助信息并退出。 +.RE +.PP +\fB\-l\fR, \fB\-\-lock\-secs\fR\ \&\fISEC\fR +.RS 4 +登录失败后锁定账户 +\fISEC\fR +秒。 +.sp +此选项要求对 +/var/log/faillog +有写入权限。 +.RE +.PP +\fB\-m\fR, \fB\-\-maximum\fR\ \&\fIMAX\fR +.RS 4 +Set the maximum number of login failures after the account is disabled to +\fIMAX\fR\&. +.sp +Selecting a +\fIMAX\fR +value of 0 has the effect of not placing a limit on the number of failed logins\&. +.sp +The maximum failure count should always be 0 for +\fIroot\fR +to prevent a denial of services attack against the system\&. +.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\ \&\fICHROOT_DIR\fR +.RS 4 +Apply changes in the +\fICHROOT_DIR\fR +directory and use the configuration files from the +\fICHROOT_DIR\fR +directory\&. +.RE +.PP +\fB\-t\fR, \fB\-\-time\fR\ \&\fIDAYS\fR +.RS 4 +显示新于 +\fIDAYS\fR +的登录失败记录。 +.RE +.PP +\fB\-u\fR, \fB\-\-user\fR\ \&\fILOGIN\fR|\fIRANGE\fR +.RS 4 +Display faillog record or maintains failure counters and limits (if used with +\fB\-l\fR, +\fB\-m\fR +or +\fB\-r\fR +options) only for the specified user(s)\&. +.sp +The users can be specified by a login name, a numerical user ID, or a +\fIRANGE\fR +of users\&. This +\fIRANGE\fR +of users can be specified with a min and max values (\fIUID_MIN\-UID_MAX\fR), a max value (\fI\-UID_MAX\fR), or a min value (\fIUID_MIN\-\fR)\&. +.RE +.PP +When none of the +\fB\-l\fR, +\fB\-m\fR, or +\fB\-r\fR +options are used, +\fBfaillog\fR +displays the faillog record of the specified user(s)\&. +.SH "CAVEATS" +.PP +\fBfaillog\fR +only prints out users with no successful login since the last failure\&. To print out a user who has had a successful login since their last failure, you must explicitly request the user with the +\fB\-u\fR +flag, or print out all users with the +\fB\-a\fR +flag\&. +.SH "文件" +.PP +/var/log/faillog +.RS 4 +Failure logging file\&. +.RE +.SH "参见" +.PP +\fBlogin\fR(1), +\fBfaillog\fR(5)\&. diff --git a/man/zh_CN/man8/groupadd.8 b/man/zh_CN/man8/groupadd.8 new file mode 100644 index 00000000..1c748b93 --- /dev/null +++ b/man/zh_CN/man8/groupadd.8 @@ -0,0 +1,242 @@ +'\" t +.\" Title: groupadd +.\" Author: Julianne Frances Haugh +.\" Generator: DocBook XSL Stylesheets v1.79.1 +.\" Date: 2016-09-18 +.\" Manual: 系统管理命令 +.\" Source: shadow-utils 4.4 +.\" Language: Chinese Simplified +.\" +.TH "GROUPADD" "8" "2016-09-18" "shadow\-utils 4\&.4" "系统管理命令" +.\" ----------------------------------------------------------------- +.\" * 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] \fIgroup\fR +.SH "描述" +.PP +The +\fBgroupadd\fR +command creates a new group account using the values specified on the command line plus the default values from the system\&. The new group will be entered into the system files as needed\&. +.SH "选项" +.PP +\fBgroupadd\fR +命令可以接受的选项有: +.PP +\fB\-f\fR, \fB\-\-force\fR +.RS 4 +This option causes the command to simply exit with success status if the specified group already exists\&. When used with +\fB\-g\fR, and the specified GID already exists, another (unique) GID is chosen (i\&.e\&. +\fB\-g\fR +is turned off)\&. +.RE +.PP +\fB\-g\fR, \fB\-\-gid\fR\ \&\fIGID\fR +.RS 4 +The numerical value of the group\*(Aqs ID\&. This value must be unique, unless the +\fB\-o\fR +option is used\&. The value must be non\-negative\&. The default is to use the smallest ID value greater than or equal to +\fBGID_MIN\fR +and greater than every other group\&. +.sp +See also the +\fB\-r\fR +option and the +\fBGID_MAX\fR +description\&. +.RE +.PP +\fB\-h\fR, \fB\-\-help\fR +.RS 4 +现实帮助信息并退出。 +.RE +.PP +\fB\-K\fR, \fB\-\-key\fR\ \&\fIKEY\fR=\fIVALUE\fR +.RS 4 +Overrides +/etc/login\&.defs +defaults (GID_MIN, GID_MAX and others)\&. Multiple +\fB\-K\fR +options can be specified\&. +.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\ \&\fIPASSWORD\fR +.RS 4 +加密了的密码,就像 +\fBcrypt\fR(3) +的返回值。默认为禁用密码。 +.sp +\fB注意:\fR不推荐使用这个选项,因为密码(或加密过的密码)会被用户通过列出这个过程而看到。 +.sp +您应该确保密码符合系统的密码政策。 +.RE +.PP +\fB\-r\fR, \fB\-\-system\fR +.RS 4 +创建一个系统组。 +.sp +The numeric identifiers of new system groups are chosen in the +\fBSYS_GID_MIN\fR\-\fBSYS_GID_MAX\fR +range, defined in +login\&.defs, instead of +\fBGID_MIN\fR\-\fBGID_MAX\fR\&. +.RE +.PP +\fB\-R\fR, \fB\-\-root\fR\ \&\fICHROOT_DIR\fR +.RS 4 +Apply changes in the +\fICHROOT_DIR\fR +directory and use the configuration files from the +\fICHROOT_DIR\fR +directory\&. +.RE +.SH "配置文件" +.PP +在 +/etc/login\&.defs +中有如下配置变量,可以用来更改此工具的行为: +.PP +\fBGID_MAX\fR (number), \fBGID_MIN\fR (number) +.RS 4 +\fBuseradd\fR,\fBgroupadd\fR +或 +\fBnewusers\fR +创建的常规组的组 ID 的范围。 +.sp +\fBGID_MIN\fR +和 +\fBGID_MAX\fR +的默认值分别是 1000 和 60000。 +.RE +.PP +\fBMAX_MEMBERS_PER_GROUP\fR (number) +.RS 4 +每个组条目的最大成员数。达到最大值时,在 +/etc/group +开始一个新条目(行)(使用同样的名称,同样的密码,同样的 GID)。 +.sp +默认值是 0,意味着组中的成员数没有限制。 +.sp +此功能(分割组)允许限制组文件中的行长度。这对于确保 NIS 组的行比长于 1024 字符。 +.sp +如果要强制这个限制,可以使用 25。 +.sp +注意:分割组可能不受所有工具的支持(甚至在 Shadow 工具集中)。您不应该使用这个变量,除非真的需要。 +.RE +.PP +\fBSYS_GID_MAX\fR (number), \fBSYS_GID_MIN\fR (number) +.RS 4 +\fBuseradd\fR、\fBgroupadd\fR +或 +\fBnewusers\fR +创建的系统组的组 ID 的范围。 +.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 +Shadow 密码套件配置。 +.RE +.SH "CAVEATS" +.PP +组名必须以小写字母或者下划线开头,跟随小写字母、下划线或短横线。可以由美元符号结束。用正则表达式就是:[a\-z_][a\-z0\-9_\-]*[$]? +.PP +组名最长为 16 个字符。 +.PP +You may not add a NIS or LDAP group\&. This must be performed on the corresponding server\&. +.PP +If the groupname already exists in an external group database such as NIS or LDAP, +\fBgroupadd\fR +will deny the group creation request\&. +.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/zh_CN/man8/groupdel.8 b/man/zh_CN/man8/groupdel.8 new file mode 100644 index 00000000..5ba222ad --- /dev/null +++ b/man/zh_CN/man8/groupdel.8 @@ -0,0 +1,134 @@ +'\" t +.\" Title: groupdel +.\" Author: Julianne Frances Haugh +.\" Generator: DocBook XSL Stylesheets v1.79.1 +.\" Date: 2016-09-18 +.\" Manual: 系统管理命令 +.\" Source: shadow-utils 4.4 +.\" Language: Chinese Simplified +.\" +.TH "GROUPDEL" "8" "2016-09-18" "shadow\-utils 4\&.4" "系统管理命令" +.\" ----------------------------------------------------------------- +.\" * 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] \fIGROUP\fR +.SH "描述" +.PP +\fBuserdel\fR +修改系统账户文件,删除与 +\fIGROUP\fR +相关的所有项目。给出的组名必须存在。 +.SH "选项" +.PP +\fBgroupdel\fR +命令可以接受的选项有: +.PP +\fB\-h\fR, \fB\-\-help\fR +.RS 4 +现实帮助信息并退出。 +.RE +.PP +\fB\-R\fR, \fB\-\-root\fR\ \&\fICHROOT_DIR\fR +.RS 4 +Apply changes in the +\fICHROOT_DIR\fR +directory and use the configuration files from the +\fICHROOT_DIR\fR +directory\&. +.RE +.SH "CAVEATS" +.PP +您不能移除现有用户的主组。在移除此组之前,必须先移除此用户。 +.PP +您需要手动检查所有文件系统,以确保没有遗留的属于此组的文件。 +.SH "配置文件" +.PP +在 +/etc/login\&.defs +中有如下配置变量,可以用来更改此工具的行为: +.PP +\fBMAX_MEMBERS_PER_GROUP\fR (number) +.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/zh_CN/man8/groupmems.8 b/man/zh_CN/man8/groupmems.8 new file mode 100644 index 00000000..d743837e --- /dev/null +++ b/man/zh_CN/man8/groupmems.8 @@ -0,0 +1,179 @@ +'\" t +.\" Title: groupmems +.\" Author: George Kraft, IV +.\" Generator: DocBook XSL Stylesheets v1.79.1 +.\" Date: 2016-09-18 +.\" Manual: 系统管理命令 +.\" Source: shadow-utils 4.4 +.\" Language: Chinese Simplified +.\" +.TH "GROUPMEMS" "8" "2016-09-18" "shadow\-utils 4\&.4" "系统管理命令" +.\" ----------------------------------------------------------------- +.\" * 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\ \fIuser_name\fR | \-d\ \fIuser_name\fR | [\-g\ \fIgroup_name\fR] | \-l | \-p +.SH "描述" +.PP +The +\fBgroupmems\fR +command allows a user to administer his/her own group membership list without the requirement of superuser privileges\&. The +\fBgroupmems\fR +utility is for systems that configure its users to be in their own name sake primary group (i\&.e\&., guest / guest)\&. +.PP +Only the superuser, as administrator, can use +\fBgroupmems\fR +to alter the memberships of other groups\&. +.SH "选项" +.PP +\fBgroupmems\fR +命令可以接受的选项有: +.PP +\fB\-a\fR, \fB\-\-add\fR\ \&\fIuser_name\fR +.RS 4 +Add a user to the group membership list\&. +.sp +If the +/etc/gshadow +file exist, and the group has no entry in the +/etc/gshadow +file, a new entry will be created\&. +.RE +.PP +\fB\-d\fR, \fB\-\-delete\fR\ \&\fIuser_name\fR +.RS 4 +从组成员列表中删除用户。 +.sp +如果 +/etc/gshadow +文件存在,用户将会被从组成员和管理员中移除。 +.sp +If the +/etc/gshadow +file exist, and the group has no entry in the +/etc/gshadow +file, a new entry will be created\&. +.RE +.PP +\fB\-g\fR, \fB\-\-group\fR\ \&\fIgroup_name\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 +If the +/etc/gshadow +file exist, and the group has no entry in the +/etc/gshadow +file, a new entry will be created\&. +.RE +.PP +\fB\-R\fR, \fB\-\-root\fR\ \&\fICHROOT_DIR\fR +.RS 4 +Apply changes in the +\fICHROOT_DIR\fR +directory and use the configuration files from the +\fICHROOT_DIR\fR +directory\&. +.RE +.SH "SETUP" +.PP +The +\fBgroupmems\fR +executable should be in mode +2770 +as user +\fIroot\fR +and in group +\fIgroups\fR\&. The system administrator can add users to group +\fIgroups\fR +to allow or disallow them using the +\fBgroupmems\fR +utility to manage their own group membership list\&. +.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 (number) +.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/zh_CN/man8/groupmod.8 b/man/zh_CN/man8/groupmod.8 new file mode 100644 index 00000000..208bc0be --- /dev/null +++ b/man/zh_CN/man8/groupmod.8 @@ -0,0 +1,207 @@ +'\" t +.\" Title: groupmod +.\" Author: Julianne Frances Haugh +.\" Generator: DocBook XSL Stylesheets v1.79.1 +.\" Date: 2016-09-18 +.\" Manual: 系统管理命令 +.\" Source: shadow-utils 4.4 +.\" Language: Chinese Simplified +.\" +.TH "GROUPMOD" "8" "2016-09-18" "shadow\-utils 4\&.4" "系统管理命令" +.\" ----------------------------------------------------------------- +.\" * 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 \- modify a group definition on the system +.SH "大纲" +.HP \w'\fBgroupmod\fR\ 'u +\fBgroupmod\fR [\fI选项\fR] \fIGROUP\fR +.SH "描述" +.PP +The +\fBgroupmod\fR +command modifies the definition of the specified +\fIGROUP\fR +by modifying the appropriate entry in the group database\&. +.SH "选项" +.PP +\fBgroupmod\fR +命令可以接受的选项有: +.PP +\fB\-g\fR, \fB\-\-gid\fR\ \&\fIGID\fR +.RS 4 +The group ID of the given +\fIGROUP\fR +will be changed to +\fIGID\fR\&. +.sp +The value of +\fIGID\fR +must be a non\-negative decimal integer\&. This value must be unique, unless the +\fB\-o\fR +option is used\&. +.sp +Users who use the group as primary group will be updated to keep the group as their primary group\&. +.sp +Any files that have the old group ID and must continue to belong to +\fIGROUP\fR, must have their group ID changed manually\&. +.sp +No checks will be performed with regard to the +\fBGID_MIN\fR, +\fBGID_MAX\fR, +\fBSYS_GID_MIN\fR, or +\fBSYS_GID_MAX\fR +from +/etc/login\&.defs\&. +.RE +.PP +\fB\-h\fR, \fB\-\-help\fR +.RS 4 +现实帮助信息并退出。 +.RE +.PP +\fB\-n\fR, \fB\-\-new\-name\fR\ \&\fINEW_GROUP\fR +.RS 4 +The name of the group will be changed from +\fIGROUP\fR +to +\fINEW_GROUP\fR +name\&. +.RE +.PP +\fB\-o\fR, \fB\-\-non\-unique\fR +.RS 4 +When used with the +\fB\-g\fR +option, allow to change the group +\fIGID\fR +to a non\-unique value\&. +.RE +.PP +\fB\-p\fR, \fB\-\-password\fR\ \&\fIPASSWORD\fR +.RS 4 +已经加密过的密码,就像 +\fBcrypt\fR(3) +返回的那样。 +.sp +\fB注意:\fR不推荐使用这个选项,因为密码(或加密过的密码)会被用户通过列出这个过程而看到。 +.sp +您应该确保密码符合系统的密码政策。 +.RE +.PP +\fB\-R\fR, \fB\-\-root\fR\ \&\fICHROOT_DIR\fR +.RS 4 +Apply changes in the +\fICHROOT_DIR\fR +directory and use the configuration files from the +\fICHROOT_DIR\fR +directory\&. +.RE +.SH "配置文件" +.PP +在 +/etc/login\&.defs +中有如下配置变量,可以用来更改此工具的行为: +.PP +\fBMAX_MEMBERS_PER_GROUP\fR (number) +.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 +Shadow 密码套件配置。 +.RE +.PP +/etc/passwd +.RS 4 +用户账户信息。 +.RE +.SH "退出值" +.PP +\fBgroupmod\fR +命令可以返回如下值: +.PP +\fI0\fR +.RS 4 +成功 +.RE +.PP +\fI2\fR +.RS 4 +无效的命令语法 +.RE +.PP +\fI3\fR +.RS 4 +给了选项一个无效的参数 +.RE +.PP +\fI4\fR +.RS 4 +指定的组不存在 +.RE +.PP +\fI6\fR +.RS 4 +指定的组不存在 +.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), +\fBgroupadd\fR(8), +\fBgroupdel\fR(8), +\fBlogin.defs\fR(5), +\fBuseradd\fR(8), +\fBuserdel\fR(8), +\fBusermod\fR(8)\&. diff --git a/man/zh_CN/man8/grpck.8 b/man/zh_CN/man8/grpck.8 new file mode 100644 index 00000000..ee56a186 --- /dev/null +++ b/man/zh_CN/man8/grpck.8 @@ -0,0 +1,243 @@ +'\" t +.\" Title: grpck +.\" Author: Julianne Frances Haugh +.\" Generator: DocBook XSL Stylesheets v1.79.1 +.\" Date: 2016-09-18 +.\" Manual: 系统管理命令 +.\" Source: shadow-utils 4.4 +.\" Language: Chinese Simplified +.\" +.TH "GRPCK" "8" "2016-09-18" "shadow\-utils 4\&.4" "系统管理命令" +.\" ----------------------------------------------------------------- +.\" * 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 [选项] [\fIgroup\fR\ [\ \fIshadow\fR\ ]] +.SH "描述" +.PP +The +\fBgrpck\fR +command verifies the integrity of the groups information\&. It checks that all entries in +/etc/group +and /etc/gshadow +have the proper format and contain valid data\&. The user is prompted to delete entries that are improperly formatted or which have other uncorrectable errors\&. +.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 +.\} +a corresponding entry in the +/etc/gshadow +file (respectively +/etc/group +for the +gshadow +checks) +.RE +.PP +The checks for correct number of fields and unique group name are fatal\&. If an entry has the wrong number of fields, the user will be prompted to delete the entire line\&. If the user does not answer affirmatively, all further checks are bypassed\&. An entry with a duplicated group name is prompted for deletion, but the remaining checks will still be made\&. All other errors are warnings and the user is encouraged to run the +\fBgroupmod\fR +command to correct the error\&. +.PP +The commands which operate on the +/etc/group +and /etc/gshadow files +are not able to alter corrupted or duplicated entries\&. +\fBgrpck\fR +should be used in those circumstances to remove the offending entries\&. +.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 +Execute the +\fBgrpck\fR +command in read\-only mode\&. This causes all questions regarding changes to be answered +\fIno\fR +without user intervention\&. +.RE +.PP +\fB\-R\fR, \fB\-\-root\fR\ \&\fICHROOT_DIR\fR +.RS 4 +Apply changes in the +\fICHROOT_DIR\fR +directory and use the configuration files from the +\fICHROOT_DIR\fR +directory\&. +.RE +.PP +\fB\-s\fR, \fB\-\-sort\fR +.RS 4 +根据 GID 在 +/etc/group和 /etc/gshadow +中进行排序。 +.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 (number) +.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/zh_CN/man8/grpconv.8 b/man/zh_CN/man8/grpconv.8 new file mode 100644 index 00000000..6eed9e8b --- /dev/null +++ b/man/zh_CN/man8/grpconv.8 @@ -0,0 +1 @@ +.so man8/pwconv.8 diff --git a/man/zh_CN/man8/grpunconv.8 b/man/zh_CN/man8/grpunconv.8 new file mode 100644 index 00000000..6eed9e8b --- /dev/null +++ b/man/zh_CN/man8/grpunconv.8 @@ -0,0 +1 @@ +.so man8/pwconv.8 diff --git a/man/zh_CN/man8/lastlog.8 b/man/zh_CN/man8/lastlog.8 new file mode 100644 index 00000000..c631fead --- /dev/null +++ b/man/zh_CN/man8/lastlog.8 @@ -0,0 +1,124 @@ +'\" t +.\" Title: lastlog +.\" Author: Julianne Frances Haugh +.\" Generator: DocBook XSL Stylesheets v1.79.1 +.\" Date: 2016-09-18 +.\" Manual: 系统管理命令 +.\" Source: shadow-utils 4.4 +.\" Language: Chinese Simplified +.\" +.TH "LASTLOG" "8" "2016-09-18" "shadow\-utils 4\&.4" "系统管理命令" +.\" ----------------------------------------------------------------- +.\" * 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 +formats and prints the contents of the last login log +/var/log/lastlog +file\&. The +\fIlogin\-name\fR, +\fIport\fR, and +\fIlast login time\fR +will be printed\&. The default (no flags) causes lastlog entries to be printed, sorted by their order in +/etc/passwd\&. +.SH "选项" +.PP +\fBlastlog\fR +命令可以接受的选项有: +.PP +\fB\-b\fR, \fB\-\-before\fR\ \&\fIDAYS\fR +.RS 4 +只显示老于 +\fIDAYS\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\ \&\fICHROOT_DIR\fR +.RS 4 +Apply changes in the +\fICHROOT_DIR\fR +directory and use the configuration files from the +\fICHROOT_DIR\fR +directory\&. +.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\ \&\fIDAYS\fR +.RS 4 +只现实新于 +\fIDAYS\fR +的最近登录记录。 +.RE +.PP +\fB\-u\fR, \fB\-\-user\fR\ \&\fILOGIN\fR|\fIRANGE\fR +.RS 4 +现实指定用户的最近登录记录。 +.sp +The users can be specified by a login name, a numerical user ID, or a +\fIRANGE\fR +of users\&. This +\fIRANGE\fR +of users can be specified with a min and max values (\fIUID_MIN\-UID_MAX\fR), a max value (\fI\-UID_MAX\fR), or a min value (\fIUID_MIN\-\fR)\&. +.RE +.PP +如果用户从来没有登录过,将会显示 +\fI** 从未登录 **\fR +而不是端口和时间。 +.PP +Only the entries for the current users of the system will be displayed\&. Other entries may exist for users that were deleted previously\&. +.SH "注意" +.PP +The +lastlog +file is a database which contains info on the last login of each user\&. You should not rotate it\&. It is a sparse file, so its size on the disk is usually much smaller than the one shown by "\fBls \-l\fR" (which can indicate a really big file if you have in +passwd +users with a high UID)\&. You can display its real size with "\fBls \-s\fR"\&. +.SH "文件" +.PP +/var/log/lastlog +.RS 4 +Database times of previous user logins\&. +.RE +.SH "CAVEATS" +.PP +Large gaps in UID numbers will cause the lastlog program to run longer with no output to the screen (i\&.e\&. if in lastlog database there is no entries for users with UID between 170 and 800 lastlog will appear to hang as it processes entries with UIDs 171\-799)\&. diff --git a/man/zh_CN/man8/logoutd.8 b/man/zh_CN/man8/logoutd.8 new file mode 100644 index 00000000..a3ad7dcf --- /dev/null +++ b/man/zh_CN/man8/logoutd.8 @@ -0,0 +1,57 @@ +'\" t +.\" Title: logoutd +.\" Author: Julianne Frances Haugh +.\" Generator: DocBook XSL Stylesheets v1.79.1 +.\" Date: 2016-09-18 +.\" Manual: 系统管理命令 +.\" Source: shadow-utils 4.4 +.\" Language: Chinese Simplified +.\" +.TH "LOGOUTD" "8" "2016-09-18" "shadow\-utils 4\&.4" "系统管理命令" +.\" ----------------------------------------------------------------- +.\" * 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 +enforces the login time and port restrictions specified in +/etc/porttime\&. +\fBlogoutd\fR +should be started from +/etc/rc\&. The +/var/run/utmp +file is scanned periodically and each user name is checked to see if the named user is permitted on the named port at the current time\&. Any login session which is violating the restrictions in +/etc/porttime +is terminated\&. +.SH "文件" +.PP +/etc/porttime +.RS 4 +包含了端口访问信息的文件。 +.RE +.PP +/var/run/utmp +.RS 4 +当前登录会话的列表。 +.RE diff --git a/man/zh_CN/man8/newusers.8 b/man/zh_CN/man8/newusers.8 new file mode 100644 index 00000000..019d61c4 --- /dev/null +++ b/man/zh_CN/man8/newusers.8 @@ -0,0 +1,429 @@ +'\" t +.\" Title: newusers +.\" Author: Julianne Frances Haugh +.\" Generator: DocBook XSL Stylesheets v1.79.1 +.\" Date: 2016-09-18 +.\" Manual: 系统管理命令 +.\" Source: shadow-utils 4.4 +.\" Language: Chinese Simplified +.\" +.TH "NEWUSERS" "8" "2016-09-18" "shadow\-utils 4\&.4" "系统管理命令" +.\" ----------------------------------------------------------------- +.\" * 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 +The +\fBnewusers\fR +command reads a +\fIfile\fR +(or the standard input by default) and uses this information to update a set of existing users or to create new users\&. Each line is in the same format as the standard password file (see +\fBpasswd\fR(5)) with the exceptions explained below: +.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 +\fIpw_uid\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 +在前边创建的一个组),此组的 GID 会被用于做此用户的主组 ID。 +.sp +如果此字段是一个数字,此数字会被用作此用户的主组 ID。如果没有对应此 GID 的现有组,将会使用此 GID 创建一个新组,名称和用户名相同。 +.sp +如果此字段为空,将会使用用户名作为组名,\fBnewusers\fR +自动确定的一个 GID 作为主组 ID 来创建一个新组。 +.sp +如果此字段包含一个不存在的组的名字(也没有由 +\fBnewusers\fR +在前边创建),将使用指定的组名和 +\fBnewusers\fR +自动确定的 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 +此字段定义了用户的 shell。对此字段不进行任何检查。 +.RE +.PP +\fBnewusers\fR +首先尝试创建或更改所有指定的用户,然后将这些更改写入用户或组数据库。如果发生错误(除非是在最后写入数据库过程中),不会有任何更改。 +.PP +此命令一般用于在大型的应用环境中,对大量账户进行一次性更新。 +.SH "选项" +.PP +\fBnewusers\fR +命令可以使用的选项有: +.PP +\fB\-c\fR, \fB\-\-crypt\-method\fR +.RS 4 +使用指定的方法加密密码。 +.sp +可用的方法有 DES, MD5, NONE, and SHA256 或 SHA512,前提是您的 libc 支持这写方法。 +.RE +.PP +\fB\-h\fR, \fB\-\-help\fR +.RS 4 +现实帮助信息并退出。 +.RE +.PP +\fB\-r\fR, \fB\-\-system\fR +.RS 4 +创建一个系统账户。 +.sp +System users will be created with no aging information in +/etc/shadow, and their numeric identifiers are chosen in the +\fBSYS_UID_MIN\fR\-\fBSYS_UID_MAX\fR +range, defined in +login\&.defs, instead of +\fBUID_MIN\fR\-\fBUID_MAX\fR +(and their +\fBGID\fR +counterparts for the creation of groups)\&. +.RE +.PP +\fB\-R\fR, \fB\-\-root\fR\ \&\fICHROOT_DIR\fR +.RS 4 +Apply changes in the +\fICHROOT_DIR\fR +directory and use the configuration files from the +\fICHROOT_DIR\fR +directory\&. +.RE +.PP +\fB\-s\fR, \fB\-\-sha\-rounds\fR +.RS 4 +使用指定次数的轮转来加密密码。 +.sp +值 0 表示让系统为加密方法选择默认的轮转次数 (5000)。 +.sp +会强制最小 1,000,最大 9,9999,9999 +.sp +您只可以对 SHA256 或 SHA512 使用此选项。 +.sp +默认,轮转数由 +/etc/login\&.defs +文件中的 SHA_CRYPT_MIN_ROUNDS 和 SHA_CRYPT_MAX_ROUNDS 变量确定。 +.RE +.SH "CAVEATS" +.PP +输入文件必须受到保护,因为它包含未加密的密码。 +.PP +您需要确保你吗和加密方法符合系统的密码策略。 +.SH "配置文件" +.PP +在 +/etc/login\&.defs +中有如下配置变量,可以用来更改此工具的行为: +.PP +\fBENCRYPT_METHOD\fR (string) +.RS 4 +这定义了系统加密密码的默认算法(如果没有在命令行上指定算法)。 +.sp +可以使用如下值:\fIDES\fR +(default), +\fIMD5\fR, \fISHA256\fR, \fISHA512\fR\&. +.sp +注意,此参数会覆盖 +\fBMD5_CRYPT_ENAB\fR +变量。 +.RE +.PP +\fBGID_MAX\fR (number), \fBGID_MIN\fR (number) +.RS 4 +\fBuseradd\fR,\fBgroupadd\fR +或 +\fBnewusers\fR +创建的常规组的组 ID 的范围。 +.sp +\fBGID_MIN\fR +和 +\fBGID_MAX\fR +的默认值分别是 1000 和 60000。 +.RE +.PP +\fBMAX_MEMBERS_PER_GROUP\fR (number) +.RS 4 +每个组条目的最大成员数。达到最大值时,在 +/etc/group +开始一个新条目(行)(使用同样的名称,同样的密码,同样的 GID)。 +.sp +默认值是 0,意味着组中的成员数没有限制。 +.sp +此功能(分割组)允许限制组文件中的行长度。这对于确保 NIS 组的行比长于 1024 字符。 +.sp +如果要强制这个限制,可以使用 25。 +.sp +注意:分割组可能不受所有工具的支持(甚至在 Shadow 工具集中)。您不应该使用这个变量,除非真的需要。 +.RE +.PP +\fBMD5_CRYPT_ENAB\fR (boolean) +.RS 4 +表示密码是否必须使用基于 MD5 的算法加密。如果设为 +\fIyes\fR,新密码将使用可以和新版 FreeBSD 兼容的基于 MD5 的算法加密。它支持无限长度的密码以及更长的盐字符串。如果您需要将加密的密码复制到其它不理解新算法的系统,设置为 +\fIno\fR。默认值是 +\fIno\fR。 +.sp +This variable is superseded by the +\fBENCRYPT_METHOD\fR +variable or by any command line option used to configure the encryption algorithm\&. +.sp +此变量已经废弃。您应该使用 +\fBENCRYPT_METHOD\fR。 +.RE +.PP +\fBPASS_MAX_DAYS\fR (number) +.RS 4 +一个密码可以使用的最大天数。如果密码比这旧,将会强迫更改密码。如果不指定,就假定为 \-1,这会禁用这个限制。 +.RE +.PP +\fBPASS_MIN_DAYS\fR (number) +.RS 4 +两次更改密码时间的最小间隔。将会拒绝任何早于此的更改密码的尝试。如果不指定,假定为 \-1,将会禁用这个限制。 +.RE +.PP +\fBPASS_WARN_AGE\fR (number) +.RS 4 +密码过期之前给出警告的天数。0 表示只有只在过期的当天警告,负值表示不警告。如果没有指定,不会给警告。 +.RE +.PP +\fBSHA_CRYPT_MIN_ROUNDS\fR (number), \fBSHA_CRYPT_MAX_ROUNDS\fR (number) +.RS 4 +\fBENCRYPT_METHOD\fR +设为 +\fISHA256\fR +或 +\fISHA512\fR +时,此项确定加密算法默认使用 SHA 轮转数目(当轮转数没有通过命令行指定时)。 +.sp +使用很多轮转,会让暴力破解更加困难。但是需要注意,认证用户时也会需要更多的 CPU 资源。 +.sp +如果没有指定,libc 会选择默认的轮转数(5000)。 +.sp +值必须在 1000 \- 999,999,999 之间。 +.sp +如果只设置了一个 +\fBSHA_CRYPT_MIN_ROUNDS\fR +或 +\fBSHA_CRYPT_MAX_ROUNDS\fR +值,就会使用这个值。 +.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 10000\&. +.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 10000\&. +.RE +.PP +\fBSYS_GID_MAX\fR (number), \fBSYS_GID_MIN\fR (number) +.RS 4 +\fBuseradd\fR、\fBgroupadd\fR +或 +\fBnewusers\fR +创建的系统组的组 ID 的范围。 +.sp +\fBSYS_GID_MIN\fR +和 +\fBSYS_GID_MAX\fR +的默认值分别是 101 和 +\fBGID_MIN\fR\-1。 +.RE +.PP +\fBSYS_UID_MAX\fR (number), \fBSYS_UID_MIN\fR (number) +.RS 4 +\fBuseradd\fR +或 +\fBnewusers\fR +创建的系统用户的用户 ID 的范围。 +.sp +\fBSYS_UID_MIN\fR +和 +\fBSYS_UID_MAX\fR +的默认值分别是 101 和 +\fBUID_MIN\fR\-1。 +.RE +.PP +\fBUID_MAX\fR (number), \fBUID_MIN\fR (number) +.RS 4 +\fBuseradd\fR +或 +\fBnewusers\fR +创建的普通用户的用户 ID 的范围。 +.sp +\fBUID_MIN\fR +和 +\fBUID_MAX\fR +的默认值分别是 1000 和 60000。 +.RE +.PP +\fBUMASK\fR (number) +.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 +Shadow 密码套件配置。 +.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/zh_CN/man8/nologin.8 b/man/zh_CN/man8/nologin.8 new file mode 100644 index 00000000..beb09785 --- /dev/null +++ b/man/zh_CN/man8/nologin.8 @@ -0,0 +1,50 @@ +'\" t +.\" Title: nologin +.\" Author: Nicolas Fran\(,cois +.\" Generator: DocBook XSL Stylesheets v1.79.1 +.\" Date: 2016-09-18 +.\" Manual: 系统管理命令 +.\" Source: shadow-utils 4.4 +.\" Language: Chinese Simplified +.\" +.TH "NOLOGIN" "8" "2016-09-18" "shadow\-utils 4\&.4" "系统管理命令" +.\" ----------------------------------------------------------------- +.\" * 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 +命令显示一个信息,说账户不可用然后返回非零值。它用于代替已经禁用的账户的 shell 字段。 +.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/zh_CN/man8/pwck.8 b/man/zh_CN/man8/pwck.8 new file mode 100644 index 00000000..13342726 --- /dev/null +++ b/man/zh_CN/man8/pwck.8 @@ -0,0 +1,318 @@ +'\" t +.\" Title: pwck +.\" Author: Julianne Frances Haugh +.\" Generator: DocBook XSL Stylesheets v1.79.1 +.\" Date: 2016-09-18 +.\" Manual: 系统管理命令 +.\" Source: shadow-utils 4.4 +.\" Language: Chinese Simplified +.\" +.TH "PWCK" "8" "2016-09-18" "shadow\-utils 4\&.4" "系统管理命令" +.\" ----------------------------------------------------------------- +.\" * 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 +.\} +有效的登录 shell +.RE +.PP +当指定第二个文件参数或 +/etc/shadow +在系统中存在时,启用 +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 +.PP +The checks for correct number of fields and unique user name are fatal\&. If the entry has the wrong number of fields, the user will be prompted to delete the entire line\&. If the user does not answer affirmatively, all further checks are bypassed\&. An entry with a duplicated user name is prompted for deletion, but the remaining checks will still be made\&. All other errors are warning and the user is encouraged to run the +\fBusermod\fR +command to correct the error\&. +.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。 +.RE +.PP +\fB\-R\fR, \fB\-\-root\fR\ \&\fICHROOT_DIR\fR +.RS 4 +Apply changes in the +\fICHROOT_DIR\fR +directory and use the configuration files from the +\fICHROOT_DIR\fR +directory\&. +.RE +.PP +\fB\-s\fR, \fB\-\-sort\fR +.RS 4 +根据 UID 在 +/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 (number) +.RS 4 +一个密码可以使用的最大天数。如果密码比这旧,将会强迫更改密码。如果不指定,就假定为 \-1,这会禁用这个限制。 +.RE +.PP +\fBPASS_MIN_DAYS\fR (number) +.RS 4 +两次更改密码时间的最小间隔。将会拒绝任何早于此的更改密码的尝试。如果不指定,假定为 \-1,将会禁用这个限制。 +.RE +.PP +\fBPASS_WARN_AGE\fR (number) +.RS 4 +密码过期之前给出警告的天数。0 表示只有只在过期的当天警告,负值表示不警告。如果没有指定,不会给警告。 +.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/zh_CN/man8/pwconv.8 b/man/zh_CN/man8/pwconv.8 new file mode 100644 index 00000000..033a7d0e --- /dev/null +++ b/man/zh_CN/man8/pwconv.8 @@ -0,0 +1,187 @@ +'\" t +.\" Title: pwconv +.\" Author: Marek Micha\(/lkiewicz +.\" Generator: DocBook XSL Stylesheets v1.79.1 +.\" Date: 2016-09-18 +.\" Manual: 系统管理命令 +.\" Source: shadow-utils 4.4 +.\" Language: Chinese Simplified +.\" +.TH "PWCONV" "8" "2016-09-18" "shadow\-utils 4\&.4" "系统管理命令" +.\" ----------------------------------------------------------------- +.\" * 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 +命令使用 +\fIpasswd\fR +以及可选并已经存在的 +\fIshadow\fR +来创建 +\fIshadow\fR。 +.PP +\fBpwunconv\fR +命令使用 +\fIpasswd\fR +和 +\fIshadow\fR +来创建 +\fIpasswd\fR,然后移除 +\fIshadow\fR。 +.PP +\fBgrpconv\fR +从 +\fIgroup\fR +和可能存在的 +\fIgshadow\fR +创建 +\fIgshadow\fR。 +.PP +\fBgrpunconv\fR +命令从 +\fIgroup\fR +和 +\fIgshadow\fR +创建 +\fIgroup\fR,然后移除 +\fIgshadow\fR。 +.PP +这四个程序都可以操作普通或影子密码和组文件:/etc/passwd, +/etc/group, +/etc/shadow +和 +/etc/gshadow。 +.PP +转换前,每个程序都会获取需要的锁。\fBpwconv\fR +和 +\fBgrpconv\fR +也类似。首先删除,存在于在影子文件中,但在主文件中却没有的条目;然后,更新在主文件中不使用\(lqx\(rq作为密码的影子条目,会添加所有缺失的条目;最后,将主文件中的密码替换为\(lqx\(rq。这两个工具可以用于初始转换以及根据手动编辑的主文件更新影子文件。 +.PP +\fBpwconv\fR +向 +/etc/shadow +添加条目时,将使用/etc/login\&.defs +中的 +\fIPASS_MIN_DAYS\fR, +\fIPASS_MAX_DAYS\fR +和 +\fIPASS_WARN_AGE\fR +值。 +.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\ \&\fICHROOT_DIR\fR +.RS 4 +Apply changes in the +\fICHROOT_DIR\fR +directory and use the configuration files from the +\fICHROOT_DIR\fR +directory\&. +.RE +.SH "缺陷" +.PP +在 passwd 或 group 文件中有错误(比如,有重复条目)可能会造成这些程序死循环或者以奇怪的方式失败。在转换自,或转换到影子密码或组文件前,请运行 +\fBpwck\fR +和 +\fBgrpck\fR +来修正此类错误。 +.SH "配置文件" +.PP +/etc/login\&.defs +中的如下配置变量改变 +\fBgrpconv\fR +和 +\fBgrpunconv\fR +的行为: +.PP +\fBMAX_MEMBERS_PER_GROUP\fR (number) +.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 (number) +.RS 4 +一个密码可以使用的最大天数。如果密码比这旧,将会强迫更改密码。如果不指定,就假定为 \-1,这会禁用这个限制。 +.RE +.PP +\fBPASS_MIN_DAYS\fR (number) +.RS 4 +两次更改密码时间的最小间隔。将会拒绝任何早于此的更改密码的尝试。如果不指定,假定为 \-1,将会禁用这个限制。 +.RE +.PP +\fBPASS_WARN_AGE\fR (number) +.RS 4 +密码过期之前给出警告的天数。0 表示只有只在过期的当天警告,负值表示不警告。如果没有指定,不会给警告。 +.RE +.SH "文件" +.PP +/etc/login\&.defs +.RS 4 +Shadow 密码套件配置。 +.RE +.SH "参见" +.PP +\fBgrpck\fR(8), +\fBlogin.defs\fR(5), +\fBpwck\fR(8)\&. diff --git a/man/zh_CN/man8/pwunconv.8 b/man/zh_CN/man8/pwunconv.8 new file mode 100644 index 00000000..6eed9e8b --- /dev/null +++ b/man/zh_CN/man8/pwunconv.8 @@ -0,0 +1 @@ +.so man8/pwconv.8 diff --git a/man/zh_CN/man8/sulogin.8 b/man/zh_CN/man8/sulogin.8 new file mode 100644 index 00000000..c2969163 --- /dev/null +++ b/man/zh_CN/man8/sulogin.8 @@ -0,0 +1,116 @@ +'\" t +.\" Title: sulogin +.\" Author: Julianne Frances Haugh +.\" Generator: DocBook XSL Stylesheets v1.79.1 +.\" Date: 2016-09-18 +.\" Manual: 系统管理命令 +.\" Source: shadow-utils 4.4 +.\" Language: Chinese Simplified +.\" +.TH "SULOGIN" "8" "2016-09-18" "shadow\-utils 4\&.4" "系统管理命令" +.\" ----------------------------------------------------------------- +.\" * 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 "SYNTAX" +.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 "CAVEATS" +.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 (string) +.RS 4 +如果设置了,将会用于在用户登录时定义 HZ 环境变量。值必须以 +\fIHZ=\fR +开头。Linux 上的常用值是 +\fIHZ=100\fR。 +.RE +.PP +\fBENV_TZ\fR (string) +.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/zh_CN/man8/useradd.8 b/man/zh_CN/man8/useradd.8 new file mode 100644 index 00000000..380a6c75 --- /dev/null +++ b/man/zh_CN/man8/useradd.8 @@ -0,0 +1,744 @@ +'\" t +.\" Title: useradd +.\" Author: Julianne Frances Haugh +.\" Generator: DocBook XSL Stylesheets v1.79.1 +.\" Date: 2016-09-18 +.\" Manual: 系统管理命令 +.\" Source: shadow-utils 4.4 +.\" Language: Chinese Simplified +.\" +.TH "USERADD" "8" "2016-09-18" "shadow\-utils 4\&.4" "系统管理命令" +.\" ----------------------------------------------------------------- +.\" * 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\ \&\fIBASE_DIR\fR +.RS 4 +如果没有使用 +\fB\-d\fR\ \&\fIHOME_DIR\fR,则使用默认的基目录。\fIBASE_DIR\fR +加上账户名就是主目录。如果没有使用 +\fB\-m\fR +选项,\fIBASE_DIR\fR +必须已经存在。 +.sp +如果选项没有指定,\fBuseradd\fR +将使用 +/etc/default/useradd +中的 +\fBHOME\fR +变量,或者默认的 +/home。 +.RE +.PP +\fB\-c\fR, \fB\-\-comment\fR\ \&\fICOMMENT\fR +.RS 4 +任何字符串。通常是关于登录的简短描述,当前用于用户全名。 +.RE +.PP +\fB\-d\fR, \fB\-\-home\-dir\fR\ \&\fIHOME_DIR\fR +.RS 4 +将创建新用户,并使用 +\fIHOME_DIR\fR +作为用户登陆目录的值。默认值是将 +\fILOGIN\fR +名附加到 +\fIBASE_DIR\fR +后面,并使用这作为登陆目录。目录不一定必须已经存在 +\fIHOME_DIR\fR,但是会在需要时创建。 +.RE +.PP +\fB\-D\fR, \fB\-\-defaults\fR +.RS 4 +看下边,\(lq更改默认值\(rq子节。 +.RE +.PP +\fB\-e\fR, \fB\-\-expiredate\fR\ \&\fIEXPIRE_DATE\fR +.RS 4 +用户账户将被禁用的日期。日期以 +\fIYYYY\-MM\-DD\fR +格式指定。 +.sp +如果没有指定,\fBuseradd\fR +将使用 +/etc/default/useradd +中 +\fBEXPIRE\fR +变量指定的默认过期日期,或者一个空字符串(不过期)。 +.RE +.PP +\fB\-f\fR, \fB\-\-inactive\fR\ \&\fIINACTIVE\fR +.RS 4 +密码过期后,账户被彻底禁用之前的天数。0 表示立即禁用,\-1 表示禁用这个功能。 +.sp +如果未指定,\fBuseradd\fR +将使用 +/etc/default/useradd +中的 +\fBINACTIVE\fR +指定的默认禁用周期,或者默认为 \-1。 +.RE +.PP +\fB\-g\fR, \fB\-\-gid\fR\ \&\fIGROUP\fR +.RS 4 +用户初始登陆组的组名或号码。组名必须已经存在。组号码必须指代已经存在的组。 +.sp +如果没有指定, +\fBuseradd\fR +的行为将依赖于 +/etc/login\&.defs +文件中的 +\fBUSERGROUPS_ENAB\fR +参数。如果此参数设置为了 +\fIyes\fR +(或者在命令行上指定了 +\fB\-U/\-\-user\-group\fR),将会为用户创建一个组,组名和登录名相同。如果选项设置为了 +\fIno\fR +(或者在命令行上指定了 +\fB\-N/\-\-no\-user\-group\fR),useradd 会把新用户的主组设置为 +/etc/default/useradd +中 +\fBGROUP\fR +变量指定的值,再或者默认是 100。 +.RE +.PP +\fB\-G\fR, \fB\-\-groups\fR\ \&\fIGROUP1\fR[\fI,GROUP2,\&.\&.\&.\fR[\fI,GROUPN\fR]]] +.RS 4 +用户还属于的附加组列表。每个组都用逗号隔开,没有中间的空格。这里的组受到了 +\fB\-g\fR +选项给定的组同样的限制。默认上,用户只属于初始组。 +.RE +.PP +\fB\-h\fR, \fB\-\-help\fR +.RS 4 +现实帮助信息并退出。 +.RE +.PP +\fB\-k\fR, \fB\-\-skel\fR\ \&\fISKEL_DIR\fR +.RS 4 +骨架目录,包含使用 +\fBuseradd\fR +创建用户时,要复制到用户主目录中的文件和目录。 +.sp +这个选项只有在指定 +\fB\-m\fR +(或 +\fB\-\-create\-home\fR) 选项时才有效。 +.sp +如果此项没有设置,骨架目录使用 +/etc/default/useradd +中的 +\fBSKEL\fR +的变量或默认为 +/etc/skel。 +.sp +如果可以,也复制 ACL 和扩展属性。 +.RE +.PP +\fB\-K\fR, \fB\-\-key\fR\ \&\fIKEY\fR=\fIVALUE\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 +不要将用户添加到最近登录和登录失败数据库。 +.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 +如果不存在,则创建用户主目录。骨架目录中的文件和目录(可以使用 +\fB\-k\fR +选项指定),将会复制到主目录。 +.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 +选项指定的组,或根据 +/etc/default/useradd +中的 +\fBGROUP\fR +变量。 +.sp +如果没有指定 +\fB\-g\fR, +\fB\-N\fR +和 +\fB\-U\fR +选项,默认行为由 +/etc/login\&.defs +中的 +\fBUSERGROUPS_ENAB\fR +变量指定。 +.RE +.PP +\fB\-o\fR, \fB\-\-non\-unique\fR +.RS 4 +允许使用重复的 UID 创建用户账户。 +.sp +此选项只有和 +\fB\-u\fR +选项组合使用才有效。 +.RE +.PP +\fB\-p\fR, \fB\-\-password\fR\ \&\fIPASSWORD\fR +.RS 4 +加密了的密码,就像 +\fBcrypt\fR(3) +的返回值。默认为禁用密码。 +.sp +\fB注意:\fR不推荐使用这个选项,因为密码(或加密过的密码)会被用户通过列出这个过程而看到。 +.sp +您应该确保密码符合系统的密码政策。 +.RE +.PP +\fB\-r\fR, \fB\-\-system\fR +.RS 4 +创建一个系统账户。 +.sp +System users will be created with no aging information in +/etc/shadow, and their numeric identifiers are chosen in the +\fBSYS_UID_MIN\fR\-\fBSYS_UID_MAX\fR +range, defined in +/etc/login\&.defs, instead of +\fBUID_MIN\fR\-\fBUID_MAX\fR +(and their +\fBGID\fR +counterparts for the creation of groups)\&. +.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\ \&\fICHROOT_DIR\fR +.RS 4 +Apply changes in the +\fICHROOT_DIR\fR +directory and use the configuration files from the +\fICHROOT_DIR\fR +directory\&. +.RE +.PP +\fB\-s\fR, \fB\-\-shell\fR\ \&\fISHELL\fR +.RS 4 +用户的登录 shell 名。默认为留空,让系统根据 +/etc/default/useradd +中的 +\fBSHELL\fR +变量选择默认的登录 shell,默认为空字符串。 +.RE +.PP +\fB\-u\fR, \fB\-\-uid\fR\ \&\fIUID\fR +.RS 4 +用户 ID 的数字值。此值必须为唯一的,除非使用了 +\fB\-o\fR +选项。此值必须非负,默认使用大于等于 +\fBUID_MIN\fR,且大于任何其他用户 ID 最小值。 +.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 +选项,默认行为由 +/etc/login\&.defs +中的 +\fBUSERGROUPS_ENAB\fR +变量指定。 +.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 +将为指定的选项更新默认值。有效的\(lq更改默认值\(rq选项有: +.PP +\fB\-b\fR, \fB\-\-base\-dir\fR\ \&\fIBASE_DIR\fR +.RS 4 +新用户主目录的路径前缀。如果创建新账户时,没有使用 +\fB\-d\fR +选项,用户的名称将会缀在 +\fIBASE_DIR\fR +的后边形成新用户的主目录名。 +.sp +这个选择在 +/etc/default/useradd +中设置 +\fBHOME\fR +选项。 +.RE +.PP +\fB\-e\fR, \fB\-\-expiredate\fR\ \&\fIEXPIRE_DATE\fR +.RS 4 +禁用此用户账户的日期。 +.sp +此选项在 +/etc/default/useradd +中设置 +\fBEXPIRE\fR +变量。 +.RE +.PP +\fB\-f\fR, \fB\-\-inactive\fR\ \&\fIINACTIVE\fR +.RS 4 +密码过期到账户被禁用之前的天数。 +.sp +这个选项在 +/etc/default/useradd +中设置 +\fBINACTIVE\fR +变量。 +.RE +.PP +\fB\-g\fR, \fB\-\-gid\fR\ \&\fIGROUP\fR +.RS 4 +新用户初始组的组名或 ID (使用了 +\fB\-N/\-\-no\-user\-group\fR +或者 +/etc/login\&.defs +中的变量 +\fBUSERGROUPS_ENAB\fR +设置为 +\fIno\fR +时)。给出的组必须存在,并且数字组 ID 必须有一个已经存在的项。 +.sp +这个选项在 +/etc/default/useradd +中设置 +\fBGROUP\fR +变量。 +.RE +.PP +\fB\-s\fR, \fB\-\-shell\fR\ \&\fISHELL\fR +.RS 4 +新用户的登录 shell 名。 +.sp +这个选项在 +/etc/default/useradd +设置 +\fBSHELL\fR +变量。 +.RE +.SH "注意:" +.PP +系统管理员负责将默认的用户文件放在 +/etc/skel/ +目录中(或者命令行上、/etc/default/useradd +中指定的任何其它目录)。 +.SH "CAVEATS" +.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 (boolean) +.RS 4 +指示是否应该为新用户默认创建主目录。 +.sp +此设置并不应用到系统用户,并且可以使用命令行覆盖。 +.RE +.PP +\fBGID_MAX\fR (number), \fBGID_MIN\fR (number) +.RS 4 +\fBuseradd\fR,\fBgroupadd\fR +或 +\fBnewusers\fR +创建的常规组的组 ID 的范围。 +.sp +\fBGID_MIN\fR +和 +\fBGID_MAX\fR +的默认值分别是 1000 和 60000。 +.RE +.PP +\fBMAIL_DIR\fR (string) +.RS 4 +邮箱目录。修改或删除用户账户时需要处理邮箱,如果没有指定,将使用编译时指定的默认值。 +.RE +.PP +\fBMAIL_FILE\fR (string) +.RS 4 +定义用户邮箱文件的位置(相对于主目录)。 +.RE +.PP +\fBMAIL_DIR\fR +and +\fBMAIL_FILE\fR +变量由 +\fBuseradd\fR,\fBusermod\fR +和 +\fBuserdel\fR +用于创建、移动或删除用户邮箱。 +.PP +如果 +\fBMAIL_CHECK_ENAB\fR +设置为 +\fIyes\fR,它们也被用于定义 +\fBMAIL\fR +环境变量。 +.PP +\fBMAX_MEMBERS_PER_GROUP\fR (number) +.RS 4 +每个组条目的最大成员数。达到最大值时,在 +/etc/group +开始一个新条目(行)(使用同样的名称,同样的密码,同样的 GID)。 +.sp +默认值是 0,意味着组中的成员数没有限制。 +.sp +此功能(分割组)允许限制组文件中的行长度。这对于确保 NIS 组的行比长于 1024 字符。 +.sp +如果要强制这个限制,可以使用 25。 +.sp +注意:分割组可能不受所有工具的支持(甚至在 Shadow 工具集中)。您不应该使用这个变量,除非真的需要。 +.RE +.PP +\fBPASS_MAX_DAYS\fR (number) +.RS 4 +一个密码可以使用的最大天数。如果密码比这旧,将会强迫更改密码。如果不指定,就假定为 \-1,这会禁用这个限制。 +.RE +.PP +\fBPASS_MIN_DAYS\fR (number) +.RS 4 +两次更改密码时间的最小间隔。将会拒绝任何早于此的更改密码的尝试。如果不指定,假定为 \-1,将会禁用这个限制。 +.RE +.PP +\fBPASS_WARN_AGE\fR (number) +.RS 4 +密码过期之前给出警告的天数。0 表示只有只在过期的当天警告,负值表示不警告。如果没有指定,不会给警告。 +.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 10000\&. +.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 10000\&. +.RE +.PP +\fBSYS_GID_MAX\fR (number), \fBSYS_GID_MIN\fR (number) +.RS 4 +\fBuseradd\fR、\fBgroupadd\fR +或 +\fBnewusers\fR +创建的系统组的组 ID 的范围。 +.sp +\fBSYS_GID_MIN\fR +和 +\fBSYS_GID_MAX\fR +的默认值分别是 101 和 +\fBGID_MIN\fR\-1。 +.RE +.PP +\fBSYS_UID_MAX\fR (number), \fBSYS_UID_MIN\fR (number) +.RS 4 +\fBuseradd\fR +或 +\fBnewusers\fR +创建的系统用户的用户 ID 的范围。 +.sp +\fBSYS_UID_MIN\fR +和 +\fBSYS_UID_MAX\fR +的默认值分别是 101 和 +\fBUID_MIN\fR\-1。 +.RE +.PP +\fBUID_MAX\fR (number), \fBUID_MIN\fR (number) +.RS 4 +\fBuseradd\fR +或 +\fBnewusers\fR +创建的普通用户的用户 ID 的范围。 +.sp +\fBUID_MIN\fR +和 +\fBUID_MAX\fR +的默认值分别是 1000 和 60000。 +.RE +.PP +\fBUMASK\fR (number) +.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 (boolean) +.RS 4 +如果 uid 和 gid 相同,用户名和主用户名也相同,使非 root 组的组掩码位和属主位相同 (如:022 \-> 002, 077 \-> 007)。 +.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 +Shadow 密码套件配置。 +.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/zh_CN/man8/userdel.8 b/man/zh_CN/man8/userdel.8 new file mode 100644 index 00000000..7843196d --- /dev/null +++ b/man/zh_CN/man8/userdel.8 @@ -0,0 +1,288 @@ +'\" t +.\" Title: userdel +.\" Author: Julianne Frances Haugh +.\" Generator: DocBook XSL Stylesheets v1.79.1 +.\" Date: 2016-09-18 +.\" Manual: 系统管理命令 +.\" Source: shadow-utils 4.4 +.\" Language: Chinese Simplified +.\" +.TH "USERDEL" "8" "2016-09-18" "shadow\-utils 4\&.4" "系统管理命令" +.\" ----------------------------------------------------------------- +.\" * 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 +修改系统账户文件,删除与用户名 +\fILOGIN\fR +相关的所以项目。给出的用户名必须存在。 +.SH "选项" +.PP +\fBuserdel\fR +可以使用的选项有: +.PP +\fB\-f\fR, \fB\-\-force\fR +.RS 4 +此选项强制删除用户账户,甚至用户仍然在登录状态。它也强制 +\fBuserdel\fR +删除用户的主目录和邮箱,即使其它用户也使用同一个主目录或邮箱不属于指定的用户。如果 +/etc/login\&.defs +中的 +\fBUSERGROUPS_ENAB\fR +定义为 +\fIyes\fR,并且如果有一个和用户同名的组,也会删除此组,即使它仍然是别的用户的主组。 +.sp +\fI注意:\fR此选项危险,可能会破坏系统的稳定性。 +.RE +.PP +\fB\-h\fR, \fB\-\-help\fR +.RS 4 +现实帮助信息并退出。 +.RE +.PP +\fB\-r\fR, \fB\-\-remove\fR +.RS 4 +用户主目录中的文件将随用户主目录和用户邮箱一起删除。在其它文件系统中的文件必须手动搜索并删除。 +.sp +邮箱在 +login\&.defs +文件中的 +\fBMAIL_DIR\fR +变量中定义。 +.RE +.PP +\fB\-R\fR, \fB\-\-root\fR\ \&\fICHROOT_DIR\fR +.RS 4 +Apply changes in the +\fICHROOT_DIR\fR +directory and use the configuration files from the +\fICHROOT_DIR\fR +directory\&. +.RE +.PP +\fB\-Z\fR, \fB\-\-selinux\-user\fR +.RS 4 +移除用户登录的所有 SELinux 用户映射。 +.RE +.SH "配置文件" +.PP +在 +/etc/login\&.defs +中有如下配置变量,可以用来更改此工具的行为: +.PP +\fBMAIL_DIR\fR (string) +.RS 4 +邮箱目录。修改或删除用户账户时需要处理邮箱,如果没有指定,将使用编译时指定的默认值。 +.RE +.PP +\fBMAIL_FILE\fR (string) +.RS 4 +定义用户邮箱文件的位置(相对于主目录)。 +.RE +.PP +\fBMAIL_DIR\fR +and +\fBMAIL_FILE\fR +变量由 +\fBuseradd\fR,\fBusermod\fR +和 +\fBuserdel\fR +用于创建、移动或删除用户邮箱。 +.PP +如果 +\fBMAIL_CHECK_ENAB\fR +设置为 +\fIyes\fR,它们也被用于定义 +\fBMAIL\fR +环境变量。 +.PP +\fBMAX_MEMBERS_PER_GROUP\fR (number) +.RS 4 +每个组条目的最大成员数。达到最大值时,在 +/etc/group +开始一个新条目(行)(使用同样的名称,同样的密码,同样的 GID)。 +.sp +默认值是 0,意味着组中的成员数没有限制。 +.sp +此功能(分割组)允许限制组文件中的行长度。这对于确保 NIS 组的行比长于 1024 字符。 +.sp +如果要强制这个限制,可以使用 25。 +.sp +注意:分割组可能不受所有工具的支持(甚至在 Shadow 工具集中)。您不应该使用这个变量,除非真的需要。 +.RE +.PP +\fBUSERDEL_CMD\fR (string) +.RS 4 +如果定义了,这是删除账户时执行的命令。它应该移除所有属于此用户的的 at/cron/print 等作业(作为第一个参数传递)。 +.sp +这个脚本的返回值并不被带到账户中去。 +.sp +这是一个示例脚本,它移除用户的 cron、at 和 print 作业: +.sp +.if n \{\ +.RS 4 +.\} +.nf +#! /bin/sh + +# 检查需要的参数 +if [ $# != 1 ]; then + echo "Usage: $0 username" + exit 1 +fi + +# 移除 cron 作业 +crontab \-r \-u $1 + +# 移除 at 作业 +# 注意这将移除所有属于同一个 UID 的作业 +# 即使此 ID 由多个用户名共享 +AT_SPOOL_DIR=/var/spool/cron/atjobs +find $AT_SPOOL_DIR \-name "[^\&.]*" \-type f \-user $1 \-delete \e; + +# 移除 print 作业 +lprm $1 + +# 全部完成 +exit 0 + +.fi +.if n \{\ +.RE +.\} +.RE +.PP +\fBUSERGROUPS_ENAB\fR (boolean) +.RS 4 +如果 uid 和 gid 相同,用户名和主用户名也相同,使非 root 组的组掩码位和属主位相同 (如:022 \-> 002, 077 \-> 007)。 +.sp +如果设置为 +\fIyes\fR,如果组中没有成员了,\fBuserdel\fR +将移除此用户组,\fBuseradd\fR +创建用户时,也会创建一个同名的默认组。 +.RE +.SH "文件" +.PP +/etc/group +.RS 4 +组账户信息。 +.RE +.PP +/etc/login\&.defs +.RS 4 +Shadow 密码套件配置。 +.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 "CAVEATS" +.PP +如果某账户有正在运行的进程,\fBuserdel\fR +不会允许此账户。此时,您可能必须要杀死那写进程或者锁定用户的密码和账户,并稍后再删除账户。\fB\-f\fR +选项可以强制此删除账户。 +.PP +您应该手动检查所以文件系统,以确保没有遗留此用户的文件。 +.PP +您不能在 NIS 客户端上移除任何 NIS 属性。这必须在 NIS 服务器上执行。 +.PP +如果在 +/etc/login\&.defs +中 +\fBUSERGROUPS_ENAB\fR +设置为 +\fIyes\fR, +\fBuserdel\fR +将删除同名组。为了避免损坏 passwd 和 group 数据库,\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/zh_CN/man8/usermod.8 b/man/zh_CN/man8/usermod.8 new file mode 100644 index 00000000..0e7bcec3 --- /dev/null +++ b/man/zh_CN/man8/usermod.8 @@ -0,0 +1,449 @@ +'\" t +.\" Title: usermod +.\" Author: Julianne Frances Haugh +.\" Generator: DocBook XSL Stylesheets v1.79.1 +.\" Date: 2016-09-18 +.\" Manual: 系统管理命令 +.\" Source: shadow-utils 4.4 +.\" Language: Chinese Simplified +.\" +.TH "USERMOD" "8" "2016-09-18" "shadow\-utils 4\&.4" "系统管理命令" +.\" ----------------------------------------------------------------- +.\" * 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\ \&\fICOMMENT\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\ \&\fIEXPIRE_DATE\fR +.RS 4 +用户账户将被禁用的日期。日期以 +\fIYYYY\-MM\-DD\fR +格式指定。 +.sp +空 +\fIEXPIRE_DATE\fR +参数将禁用账户过期。 +.sp +此选项需要一个 +/etc/passwd +文件。如果没有,将会创建一条 +/etc/shadow +项目。 +.RE +.PP +\fB\-f\fR, \fB\-\-inactive\fR\ \&\fIINACTIVE\fR +.RS 4 +密码过期之后,账户被彻底禁用之前的天数。 +.sp +0 表示密码过期时,立即禁用账户;\-1 表示不使用这个功能。 +.sp +此选项需要一个 +/etc/passwd +文件。如果没有,将会创建一条 +/etc/shadow +项目。 +.RE +.PP +\fB\-g\fR, \fB\-\-gid\fR\ \&\fIGROUP\fR +.RS 4 +用户的新初始登录组的组名或数字代号。此组必须存在。 +.sp +用户主目录中,属于原来的主组的文件将转交新组所有。 +.sp +主目录之外的文件所属的组必须手动修改。 +.RE +.PP +\fB\-G\fR, \fB\-\-groups\fR\ \&\fIGROUP1\fR[\fI,GROUP2,\&.\&.\&.\fR[\fI,GROUPN\fR]]] +.RS 4 +用户还属于的附加组列表。组之间使用逗号分隔,没有空格。这些组需要遵守和 +\fB\-g\fR +选项中给的组同样的限制。 +.sp +如果用户当前是一个组的成员,而这个组没有列在这里,用户将被从那个组里便删除。这个行为可以通过 +\fB\-a\fR +选项修改,这使用户追加到给出的附加组列表中。 +.RE +.PP +\fB\-l\fR, \fB\-\-login\fR\ \&\fINEW_LOGIN\fR +.RS 4 +用户的名称将会从 +\fILOGIN\fR +修改为 +\fINEW_LOGIN\fR。不会更改别的任何东西。特别是,用户的主目录名和邮件池也需要手动修改以和新登录名对应。 +.RE +.PP +\fB\-L\fR, \fB\-\-lock\fR +.RS 4 +锁定用户的密码。这会在用户加密的密码之前放置一个\(lq!\(rq,可以快速禁用密码。您可以和 +\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 +选项时,可以将用户 ID 改为非唯一的值。 +.RE +.PP +\fB\-p\fR, \fB\-\-password\fR\ \&\fIPASSWORD\fR +.RS 4 +已经加密过的密码,就像 +\fBcrypt\fR(3) +返回的那样。 +.sp +\fB注意:\fR不推荐使用这个选项,因为密码(或加密过的密码)会被用户通过列出这个过程而看到。 +.sp +您应该确保密码符合系统的密码政策。 +.RE +.PP +\fB\-R\fR, \fB\-\-root\fR\ \&\fICHROOT_DIR\fR +.RS 4 +Apply changes in the +\fICHROOT_DIR\fR +directory and use the configuration files from the +\fICHROOT_DIR\fR +directory\&. +.RE +.PP +\fB\-s\fR, \fB\-\-shell\fR\ \&\fISHELL\fR +.RS 4 +用户的新登录 shell 的名称。将此字段设置为空会让系统选择默认的登录 shell。 +.RE +.PP +\fB\-u\fR, \fB\-\-uid\fR\ \&\fIUID\fR +.RS 4 +用户 ID 的新数值。 +.sp +这个值必须是唯一的,除非使用了 +\fB\-o\fR +选项,必须是非负值。 +.sp +用户的邮箱,用户主目录中属于此用户的文件的属主 ID 也将自动更改。 +.sp +用户主目录之外文件所有权必须手动修复。 +.sp +不会对 +/etc/login\&.defs +中的 +\fBUID_MIN\fR, +\fBUID_MAX\fR, +\fBSYS_UID_MIN\fR +和 +\fBSYS_UID_MAX\fR +进行检查。 +.RE +.PP +\fB\-U\fR, \fB\-\-unlock\fR +.RS 4 +解锁用户的密码。这将移除加密的密码之前的\(lq!\(rq。您可以将此选项和 +\fB\-p\fR +或 +\fB\-L\fR +配合使用。 +.sp +注意:如果您希望解锁账户(不只是使用密码访问),您也应该设置 +\fIEXPIRE_DATE\fR +(例如设置为 +\fI99999\fR,或者 +/etc/default/useradd +中的 +\fBEXPIRE\fR +值)。 +.RE +.PP +\fB\-v\fR, \fB\-\-add\-sub\-uids\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\-sub\-uids\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\-sub\-uids\fR +and +\fB\-\-add\-sub\-uids\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\-sub\-gids\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\-sub\-gids\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\-sub\-gids\fR +and +\fB\-\-add\-sub\-gids\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 +将移除用户 +\fILOGIN\fR +的 SELinux 用户映射(如果有)。 +.RE +.SH "CAVEATS" +.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 +\fBMAIL_DIR\fR (string) +.RS 4 +邮箱目录。修改或删除用户账户时需要处理邮箱,如果没有指定,将使用编译时指定的默认值。 +.RE +.PP +\fBMAIL_FILE\fR (string) +.RS 4 +定义用户邮箱文件的位置(相对于主目录)。 +.RE +.PP +\fBMAIL_DIR\fR +and +\fBMAIL_FILE\fR +变量由 +\fBuseradd\fR,\fBusermod\fR +和 +\fBuserdel\fR +用于创建、移动或删除用户邮箱。 +.PP +如果 +\fBMAIL_CHECK_ENAB\fR +设置为 +\fIyes\fR,它们也被用于定义 +\fBMAIL\fR +环境变量。 +.PP +\fBMAX_MEMBERS_PER_GROUP\fR (number) +.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 10000\&. +.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 10000\&. +.RE +.SH "文件" +.PP +/etc/group +.RS 4 +组账户信息。 +.RE +.PP +/etc/gshadow +.RS 4 +安全组账户信息。 +.RE +.PP +/etc/login\&.defs +.RS 4 +Shadow 密码套件配置。 +.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/zh_CN/man8/vigr.8 b/man/zh_CN/man8/vigr.8 new file mode 100644 index 00000000..ff72d7ae --- /dev/null +++ b/man/zh_CN/man8/vigr.8 @@ -0,0 +1 @@ +.so man8/vipw.8 diff --git a/man/zh_CN/man8/vipw.8 b/man/zh_CN/man8/vipw.8 new file mode 100644 index 00000000..8127eb52 --- /dev/null +++ b/man/zh_CN/man8/vipw.8 @@ -0,0 +1,134 @@ +'\" t +.\" Title: vipw +.\" Author: Marek Micha\(/lkiewicz +.\" Generator: DocBook XSL Stylesheets v1.79.1 +.\" Date: 2016-09-18 +.\" Manual: 系统管理命令 +.\" Source: shadow-utils 4.4 +.\" Language: Chinese Simplified +.\" +.TH "VIPW" "8" "2016-09-18" "shadow\-utils 4\&.4" "系统管理命令" +.\" ----------------------------------------------------------------- +.\" * 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 +编辑 group 数据库。 +.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\ \&\fICHROOT_DIR\fR +.RS 4 +Apply changes in the +\fICHROOT_DIR\fR +directory and use the configuration files from the +\fICHROOT_DIR\fR +directory\&. +.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)\&. diff --git a/man/zh_TW/Makefile.in b/man/zh_TW/Makefile.in new file mode 100644 index 00000000..ff1f3d60 --- /dev/null +++ b/man/zh_TW/Makefile.in @@ -0,0 +1,655 @@ +# Makefile.in generated by automake 1.15 from Makefile.am. +# @configure_input@ + +# Copyright (C) 1994-2014 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@ +subdir = man/zh_TW +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)$(man5dir)" \ + "$(DESTDIR)$(man8dir)" +man5dir = $(mandir)/man5 +man8dir = $(mandir)/man8 +NROFF = nroff +MANS = $(man_MANS) +am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) +am__DIST_COMMON = $(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@ +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@ + +# man pages encoded in Big5 +mandir = @mandir@/zh_TW +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/chfn.1 \ + man1/chsh.1 \ + man8/chpasswd.8 \ + man1/newgrp.1 \ + man8/groupadd.8 \ + man8/groupdel.8 \ + man8/groupmod.8 \ + man5/passwd.5 \ + man1/su.1 \ + man8/useradd.8 \ + man8/userdel.8 \ + man8/usermod.8 + +EXTRA_DIST = $(man_MANS) +all: all-am + +.SUFFIXES: +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(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) --gnu man/zh_TW/Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --gnu man/zh_TW/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; + +$(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-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)$(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: + +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." +clean: clean-am + +clean-am: clean-generic clean-libtool 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-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-man5 uninstall-man8 + +.MAKE: install-am install-strip + +.PHONY: all all-am check check-am clean clean-generic clean-libtool \ + 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-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-man5 \ + uninstall-man8 + +.PRECIOUS: Makefile + + +# 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/missing b/missing new file mode 100755 index 00000000..f62bbae3 --- /dev/null +++ b/missing @@ -0,0 +1,215 @@ +#! /bin/sh +# Common wrapper for a few potentially missing GNU programs. + +scriptversion=2013-10-28.13; # UTC + +# Copyright (C) 1996-2014 Free Software Foundation, Inc. +# Originally written by Fran,cois Pinard , 1996. + +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. + +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +# As a special exception to the GNU General Public License, if you +# distribute this file as part of a program that contains a +# configuration script generated by Autoconf, you may include it under +# the same distribution terms that you use for the rest of that program. + +if test $# -eq 0; then + echo 1>&2 "Try '$0 --help' for more information" + exit 1 +fi + +case $1 in + + --is-lightweight) + # Used by our autoconf macros to check whether the available missing + # script is modern enough. + exit 0 + ;; + + --run) + # Back-compat with the calling convention used by older automake. + shift + ;; + + -h|--h|--he|--hel|--help) + echo "\ +$0 [OPTION]... PROGRAM [ARGUMENT]... + +Run 'PROGRAM [ARGUMENT]...', returning a proper advice when this fails due +to PROGRAM being missing or too old. + +Options: + -h, --help display this help and exit + -v, --version output version information and exit + +Supported PROGRAM values: + aclocal autoconf autoheader autom4te automake makeinfo + bison yacc flex lex help2man + +Version suffixes to PROGRAM as well as the prefixes 'gnu-', 'gnu', and +'g' are ignored when checking the name. + +Send bug reports to ." + exit $? + ;; + + -v|--v|--ve|--ver|--vers|--versi|--versio|--version) + echo "missing $scriptversion (GNU Automake)" + exit $? + ;; + + -*) + echo 1>&2 "$0: unknown '$1' option" + echo 1>&2 "Try '$0 --help' for more information" + exit 1 + ;; + +esac + +# Run the given program, remember its exit status. +"$@"; st=$? + +# If it succeeded, we are done. +test $st -eq 0 && exit 0 + +# Also exit now if we it failed (or wasn't found), and '--version' was +# passed; such an option is passed most likely to detect whether the +# program is present and works. +case $2 in --version|--help) exit $st;; esac + +# Exit code 63 means version mismatch. This often happens when the user +# tries to use an ancient version of a tool on a file that requires a +# minimum version. +if test $st -eq 63; then + msg="probably too old" +elif test $st -eq 127; then + # Program was missing. + msg="missing on your system" +else + # Program was found and executed, but failed. Give up. + exit $st +fi + +perl_URL=http://www.perl.org/ +flex_URL=http://flex.sourceforge.net/ +gnu_software_URL=http://www.gnu.org/software + +program_details () +{ + case $1 in + aclocal|automake) + echo "The '$1' program is part of the GNU Automake package:" + echo "<$gnu_software_URL/automake>" + echo "It also requires GNU Autoconf, GNU m4 and Perl in order to run:" + echo "<$gnu_software_URL/autoconf>" + echo "<$gnu_software_URL/m4/>" + echo "<$perl_URL>" + ;; + autoconf|autom4te|autoheader) + echo "The '$1' program is part of the GNU Autoconf package:" + echo "<$gnu_software_URL/autoconf/>" + echo "It also requires GNU m4 and Perl in order to run:" + echo "<$gnu_software_URL/m4/>" + echo "<$perl_URL>" + ;; + esac +} + +give_advice () +{ + # Normalize program name to check for. + normalized_program=`echo "$1" | sed ' + s/^gnu-//; t + s/^gnu//; t + s/^g//; t'` + + printf '%s\n' "'$1' is $msg." + + configure_deps="'configure.ac' or m4 files included by 'configure.ac'" + case $normalized_program in + autoconf*) + echo "You should only need it if you modified 'configure.ac'," + echo "or m4 files included by it." + program_details 'autoconf' + ;; + autoheader*) + echo "You should only need it if you modified 'acconfig.h' or" + echo "$configure_deps." + program_details 'autoheader' + ;; + automake*) + echo "You should only need it if you modified 'Makefile.am' or" + echo "$configure_deps." + program_details 'automake' + ;; + aclocal*) + echo "You should only need it if you modified 'acinclude.m4' or" + echo "$configure_deps." + program_details 'aclocal' + ;; + autom4te*) + echo "You might have modified some maintainer files that require" + echo "the 'autom4te' program to be rebuilt." + program_details 'autom4te' + ;; + bison*|yacc*) + echo "You should only need it if you modified a '.y' file." + echo "You may want to install the GNU Bison package:" + echo "<$gnu_software_URL/bison/>" + ;; + lex*|flex*) + echo "You should only need it if you modified a '.l' file." + echo "You may want to install the Fast Lexical Analyzer package:" + echo "<$flex_URL>" + ;; + help2man*) + echo "You should only need it if you modified a dependency" \ + "of a man page." + echo "You may want to install the GNU Help2man package:" + echo "<$gnu_software_URL/help2man/>" + ;; + makeinfo*) + echo "You should only need it if you modified a '.texi' file, or" + echo "any other file indirectly affecting the aspect of the manual." + echo "You might want to install the Texinfo package:" + echo "<$gnu_software_URL/texinfo/>" + echo "The spurious makeinfo call might also be the consequence of" + echo "using a buggy 'make' (AIX, DU, IRIX), in which case you might" + echo "want to install GNU make:" + echo "<$gnu_software_URL/make/>" + ;; + *) + echo "You might have modified some files without having the proper" + echo "tools for further handling them. Check the 'README' file, it" + echo "often tells you about the needed prerequisites for installing" + echo "this package. You may also peek at any GNU archive site, in" + echo "case some other package contains this missing '$1' program." + ;; + esac +} + +give_advice "$1" | sed -e '1s/^/WARNING: /' \ + -e '2,$s/^/ /' >&2 + +# Propagate the correct exit status (expected to be 127 for a program +# not found, 63 for a program that failed due to version mismatch). +exit $st + +# Local variables: +# eval: (add-hook 'write-file-hooks 'time-stamp) +# time-stamp-start: "scriptversion=" +# time-stamp-format: "%:y-%02m-%02d.%02H" +# time-stamp-time-zone: "UTC" +# time-stamp-end: "; # UTC" +# End: diff --git a/po/Makefile.in.in b/po/Makefile.in.in new file mode 100644 index 00000000..5022b8b1 --- /dev/null +++ b/po/Makefile.in.in @@ -0,0 +1,403 @@ +# Makefile for PO directory in any package using GNU gettext. +# Copyright (C) 1995-1997, 2000-2006 by Ulrich Drepper +# +# This file can be copied and used freely without restrictions. It can +# be used in projects which are not available under the GNU General Public +# License but which still want to provide support for the GNU gettext +# functionality. +# Please note that the actual code of GNU gettext is covered by the GNU +# General Public License and is *not* in the public domain. +# +# Origin: gettext-0.16 + +PACKAGE = @PACKAGE@ +VERSION = @VERSION@ +PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@ + +SHELL = /bin/sh +@SET_MAKE@ + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @srcdir@ + +prefix = @prefix@ +exec_prefix = @exec_prefix@ +datarootdir = @datarootdir@ +datadir = @datadir@ +localedir = @localedir@ +gettextsrcdir = $(datadir)/gettext/po + +INSTALL = @INSTALL@ +INSTALL_DATA = @INSTALL_DATA@ + +# We use $(mkdir_p). +# In automake <= 1.9.x, $(mkdir_p) is defined either as "mkdir -p --" or as +# "$(mkinstalldirs)" or as "$(install_sh) -d". For these automake versions, +# @install_sh@ does not start with $(SHELL), so we add it. +# In automake >= 1.10, @mkdir_p@ is derived from ${MKDIR_P}, which is defined +# either as "/path/to/mkdir -p" or ".../install-sh -c -d". For these automake +# versions, $(mkinstalldirs) and $(install_sh) are unused. +mkinstalldirs = $(SHELL) @install_sh@ -d +install_sh = $(SHELL) @install_sh@ +MKDIR_P = @MKDIR_P@ +mkdir_p = @mkdir_p@ + +GMSGFMT_ = @GMSGFMT@ +GMSGFMT_no = @GMSGFMT@ +GMSGFMT_yes = @GMSGFMT_015@ +GMSGFMT = $(GMSGFMT_$(USE_MSGCTXT)) +MSGFMT_ = @MSGFMT@ +MSGFMT_no = @MSGFMT@ +MSGFMT_yes = @MSGFMT_015@ +MSGFMT = $(MSGFMT_$(USE_MSGCTXT)) +XGETTEXT_ = @XGETTEXT@ +XGETTEXT_no = @XGETTEXT@ +XGETTEXT_yes = @XGETTEXT_015@ +XGETTEXT = $(XGETTEXT_$(USE_MSGCTXT)) +MSGMERGE = msgmerge +MSGMERGE_UPDATE = @MSGMERGE@ --update +MSGINIT = msginit +MSGCONV = msgconv +MSGFILTER = msgfilter + +POFILES = @POFILES@ +GMOFILES = @GMOFILES@ +UPDATEPOFILES = @UPDATEPOFILES@ +DUMMYPOFILES = @DUMMYPOFILES@ +DISTFILES.common = Makefile.in.in remove-potcdate.sin \ +$(DISTFILES.common.extra1) $(DISTFILES.common.extra2) $(DISTFILES.common.extra3) +DISTFILES = $(DISTFILES.common) Makevars POTFILES.in \ +$(POFILES) $(GMOFILES) \ +$(DISTFILES.extra1) $(DISTFILES.extra2) $(DISTFILES.extra3) + +POTFILES = \ + +CATALOGS = @CATALOGS@ + +# Makevars gets inserted here. (Don't remove this line!) + +.SUFFIXES: +.SUFFIXES: .po .gmo .mo .sed .sin .nop .po-create .po-update + +.po.mo: + @echo "$(MSGFMT) -c -o $@ $<"; \ + $(MSGFMT) -c -o t-$@ $< && mv t-$@ $@ + +.po.gmo: + @lang=`echo $* | sed -e 's,.*/,,'`; \ + test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \ + echo "$${cdcmd}rm -f $${lang}.gmo && $(GMSGFMT) -c --statistics -o $${lang}.gmo $${lang}.po"; \ + cd $(srcdir) && rm -f $${lang}.gmo && $(GMSGFMT) -c --statistics -o t-$${lang}.gmo $${lang}.po && mv t-$${lang}.gmo $${lang}.gmo + +.sin.sed: + sed -e '/^#/d' $< > t-$@ + mv t-$@ $@ + + +all: all-@USE_NLS@ + +all-yes: stamp-po +all-no: + +# $(srcdir)/$(DOMAIN).pot is only created when needed. When xgettext finds no +# internationalized messages, no $(srcdir)/$(DOMAIN).pot is created (because +# we don't want to bother translators with empty POT files). We assume that +# LINGUAS is empty in this case, i.e. $(POFILES) and $(GMOFILES) are empty. +# In this case, stamp-po is a nop (i.e. a phony target). + +# stamp-po is a timestamp denoting the last time at which the CATALOGS have +# been loosely updated. Its purpose is that when a developer or translator +# checks out the package via CVS, and the $(DOMAIN).pot file is not in CVS, +# "make" will update the $(DOMAIN).pot and the $(CATALOGS), but subsequent +# invocations of "make" will do nothing. This timestamp would not be necessary +# if updating the $(CATALOGS) would always touch them; however, the rule for +# $(POFILES) has been designed to not touch files that don't need to be +# changed. +stamp-po: $(srcdir)/$(DOMAIN).pot + test ! -f $(srcdir)/$(DOMAIN).pot || \ + test -z "$(GMOFILES)" || $(MAKE) $(GMOFILES) + @test ! -f $(srcdir)/$(DOMAIN).pot || { \ + echo "touch stamp-po" && \ + echo timestamp > stamp-poT && \ + mv stamp-poT stamp-po; \ + } + +# Note: Target 'all' must not depend on target '$(DOMAIN).pot-update', +# otherwise packages like GCC can not be built if only parts of the source +# have been downloaded. + +# This target rebuilds $(DOMAIN).pot; it is an expensive operation. +# Note that $(DOMAIN).pot is not touched if it doesn't need to be changed. +$(DOMAIN).pot-update: $(POTFILES) $(srcdir)/POTFILES.in remove-potcdate.sed + if test -n '$(MSGID_BUGS_ADDRESS)' || test '$(PACKAGE_BUGREPORT)' = '@'PACKAGE_BUGREPORT'@'; then \ + msgid_bugs_address='$(MSGID_BUGS_ADDRESS)'; \ + else \ + msgid_bugs_address='$(PACKAGE_BUGREPORT)'; \ + fi; \ + $(XGETTEXT) --default-domain=$(DOMAIN) --directory=$(top_srcdir) \ + --add-comments=TRANSLATORS: $(XGETTEXT_OPTIONS) \ + --files-from=$(srcdir)/POTFILES.in \ + --copyright-holder='$(COPYRIGHT_HOLDER)' \ + --msgid-bugs-address="$$msgid_bugs_address" + test ! -f $(DOMAIN).po || { \ + if test -f $(srcdir)/$(DOMAIN).pot; then \ + sed -f remove-potcdate.sed < $(srcdir)/$(DOMAIN).pot > $(DOMAIN).1po && \ + sed -f remove-potcdate.sed < $(DOMAIN).po > $(DOMAIN).2po && \ + if cmp $(DOMAIN).1po $(DOMAIN).2po >/dev/null 2>&1; then \ + rm -f $(DOMAIN).1po $(DOMAIN).2po $(DOMAIN).po; \ + else \ + rm -f $(DOMAIN).1po $(DOMAIN).2po $(srcdir)/$(DOMAIN).pot && \ + mv $(DOMAIN).po $(srcdir)/$(DOMAIN).pot; \ + fi; \ + else \ + mv $(DOMAIN).po $(srcdir)/$(DOMAIN).pot; \ + fi; \ + } + +# This rule has no dependencies: we don't need to update $(DOMAIN).pot at +# every "make" invocation, only create it when it is missing. +# Only "make $(DOMAIN).pot-update" or "make dist" will force an update. +$(srcdir)/$(DOMAIN).pot: + $(MAKE) $(DOMAIN).pot-update + +# This target rebuilds a PO file if $(DOMAIN).pot has changed. +# Note that a PO file is not touched if it doesn't need to be changed. +$(POFILES): $(srcdir)/$(DOMAIN).pot + @lang=`echo $@ | sed -e 's,.*/,,' -e 's/\.po$$//'`; \ + if test -f "$(srcdir)/$${lang}.po"; then \ + test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \ + echo "$${cdcmd}$(MSGMERGE_UPDATE) $${lang}.po $(DOMAIN).pot"; \ + cd $(srcdir) && $(MSGMERGE_UPDATE) $${lang}.po $(DOMAIN).pot; \ + else \ + $(MAKE) $${lang}.po-create; \ + fi + + +install: install-exec install-data +install-exec: +install-data: install-data-@USE_NLS@ + if test "$(PACKAGE)" = "gettext-tools"; then \ + $(mkdir_p) $(DESTDIR)$(gettextsrcdir); \ + for file in $(DISTFILES.common) Makevars.template; do \ + $(INSTALL_DATA) $(srcdir)/$$file \ + $(DESTDIR)$(gettextsrcdir)/$$file; \ + done; \ + for file in Makevars; do \ + rm -f $(DESTDIR)$(gettextsrcdir)/$$file; \ + done; \ + else \ + : ; \ + fi +install-data-no: all +install-data-yes: all + $(mkdir_p) $(DESTDIR)$(datadir) + @catalogs='$(CATALOGS)'; \ + for cat in $$catalogs; do \ + cat=`basename $$cat`; \ + lang=`echo $$cat | sed -e 's/\.gmo$$//'`; \ + dir=$(localedir)/$$lang/LC_MESSAGES; \ + $(mkdir_p) $(DESTDIR)$$dir; \ + if test -r $$cat; then realcat=$$cat; else realcat=$(srcdir)/$$cat; fi; \ + $(INSTALL_DATA) $$realcat $(DESTDIR)$$dir/$(DOMAIN).mo; \ + echo "installing $$realcat as $(DESTDIR)$$dir/$(DOMAIN).mo"; \ + for lc in '' $(EXTRA_LOCALE_CATEGORIES); do \ + if test -n "$$lc"; then \ + if (cd $(DESTDIR)$(localedir)/$$lang && LC_ALL=C ls -l -d $$lc 2>/dev/null) | grep ' -> ' >/dev/null; then \ + link=`cd $(DESTDIR)$(localedir)/$$lang && LC_ALL=C ls -l -d $$lc | sed -e 's/^.* -> //'`; \ + mv $(DESTDIR)$(localedir)/$$lang/$$lc $(DESTDIR)$(localedir)/$$lang/$$lc.old; \ + mkdir $(DESTDIR)$(localedir)/$$lang/$$lc; \ + (cd $(DESTDIR)$(localedir)/$$lang/$$lc.old && \ + for file in *; do \ + if test -f $$file; then \ + ln -s ../$$link/$$file $(DESTDIR)$(localedir)/$$lang/$$lc/$$file; \ + fi; \ + done); \ + rm -f $(DESTDIR)$(localedir)/$$lang/$$lc.old; \ + else \ + if test -d $(DESTDIR)$(localedir)/$$lang/$$lc; then \ + :; \ + else \ + rm -f $(DESTDIR)$(localedir)/$$lang/$$lc; \ + mkdir $(DESTDIR)$(localedir)/$$lang/$$lc; \ + fi; \ + fi; \ + rm -f $(DESTDIR)$(localedir)/$$lang/$$lc/$(DOMAIN).mo; \ + ln -s ../LC_MESSAGES/$(DOMAIN).mo $(DESTDIR)$(localedir)/$$lang/$$lc/$(DOMAIN).mo 2>/dev/null || \ + ln $(DESTDIR)$(localedir)/$$lang/LC_MESSAGES/$(DOMAIN).mo $(DESTDIR)$(localedir)/$$lang/$$lc/$(DOMAIN).mo 2>/dev/null || \ + cp -p $(DESTDIR)$(localedir)/$$lang/LC_MESSAGES/$(DOMAIN).mo $(DESTDIR)$(localedir)/$$lang/$$lc/$(DOMAIN).mo; \ + echo "installing $$realcat link as $(DESTDIR)$(localedir)/$$lang/$$lc/$(DOMAIN).mo"; \ + fi; \ + done; \ + done + +install-strip: install + +installdirs: installdirs-exec installdirs-data +installdirs-exec: +installdirs-data: installdirs-data-@USE_NLS@ + if test "$(PACKAGE)" = "gettext-tools"; then \ + $(mkdir_p) $(DESTDIR)$(gettextsrcdir); \ + else \ + : ; \ + fi +installdirs-data-no: +installdirs-data-yes: + $(mkdir_p) $(DESTDIR)$(datadir) + @catalogs='$(CATALOGS)'; \ + for cat in $$catalogs; do \ + cat=`basename $$cat`; \ + lang=`echo $$cat | sed -e 's/\.gmo$$//'`; \ + dir=$(localedir)/$$lang/LC_MESSAGES; \ + $(mkdir_p) $(DESTDIR)$$dir; \ + for lc in '' $(EXTRA_LOCALE_CATEGORIES); do \ + if test -n "$$lc"; then \ + if (cd $(DESTDIR)$(localedir)/$$lang && LC_ALL=C ls -l -d $$lc 2>/dev/null) | grep ' -> ' >/dev/null; then \ + link=`cd $(DESTDIR)$(localedir)/$$lang && LC_ALL=C ls -l -d $$lc | sed -e 's/^.* -> //'`; \ + mv $(DESTDIR)$(localedir)/$$lang/$$lc $(DESTDIR)$(localedir)/$$lang/$$lc.old; \ + mkdir $(DESTDIR)$(localedir)/$$lang/$$lc; \ + (cd $(DESTDIR)$(localedir)/$$lang/$$lc.old && \ + for file in *; do \ + if test -f $$file; then \ + ln -s ../$$link/$$file $(DESTDIR)$(localedir)/$$lang/$$lc/$$file; \ + fi; \ + done); \ + rm -f $(DESTDIR)$(localedir)/$$lang/$$lc.old; \ + else \ + if test -d $(DESTDIR)$(localedir)/$$lang/$$lc; then \ + :; \ + else \ + rm -f $(DESTDIR)$(localedir)/$$lang/$$lc; \ + mkdir $(DESTDIR)$(localedir)/$$lang/$$lc; \ + fi; \ + fi; \ + fi; \ + done; \ + done + +# Define this as empty until I found a useful application. +installcheck: + +uninstall: uninstall-exec uninstall-data +uninstall-exec: +uninstall-data: uninstall-data-@USE_NLS@ + if test "$(PACKAGE)" = "gettext-tools"; then \ + for file in $(DISTFILES.common) Makevars.template; do \ + rm -f $(DESTDIR)$(gettextsrcdir)/$$file; \ + done; \ + else \ + : ; \ + fi +uninstall-data-no: +uninstall-data-yes: + catalogs='$(CATALOGS)'; \ + for cat in $$catalogs; do \ + cat=`basename $$cat`; \ + lang=`echo $$cat | sed -e 's/\.gmo$$//'`; \ + for lc in LC_MESSAGES $(EXTRA_LOCALE_CATEGORIES); do \ + rm -f $(DESTDIR)$(localedir)/$$lang/$$lc/$(DOMAIN).mo; \ + done; \ + done + +check: all + +info dvi ps pdf html tags TAGS ctags CTAGS ID: + +mostlyclean: + rm -f remove-potcdate.sed + rm -f stamp-poT + rm -f core core.* $(DOMAIN).po $(DOMAIN).1po $(DOMAIN).2po *.new.po + rm -fr *.o + +clean: mostlyclean + +distclean: clean + rm -f Makefile Makefile.in POTFILES *.mo + +maintainer-clean: distclean + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + rm -f stamp-po $(GMOFILES) + +distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir) +dist distdir: + $(MAKE) update-po + @$(MAKE) dist2 +# This is a separate target because 'update-po' must be executed before. +dist2: stamp-po $(DISTFILES) + dists="$(DISTFILES)"; \ + if test "$(PACKAGE)" = "gettext-tools"; then \ + dists="$$dists Makevars.template"; \ + fi; \ + if test -f $(srcdir)/$(DOMAIN).pot; then \ + dists="$$dists $(DOMAIN).pot stamp-po"; \ + fi; \ + if test -f $(srcdir)/ChangeLog; then \ + dists="$$dists ChangeLog"; \ + fi; \ + for i in 0 1 2 3 4 5 6 7 8 9; do \ + if test -f $(srcdir)/ChangeLog.$$i; then \ + dists="$$dists ChangeLog.$$i"; \ + fi; \ + done; \ + if test -f $(srcdir)/LINGUAS; then dists="$$dists LINGUAS"; fi; \ + for file in $$dists; do \ + if test -f $$file; then \ + cp -p $$file $(distdir) || exit 1; \ + else \ + cp -p $(srcdir)/$$file $(distdir) || exit 1; \ + fi; \ + done + +update-po: Makefile + $(MAKE) $(DOMAIN).pot-update + test -z "$(UPDATEPOFILES)" || $(MAKE) $(UPDATEPOFILES) + $(MAKE) update-gmo + +# General rule for creating PO files. + +.nop.po-create: + @lang=`echo $@ | sed -e 's/\.po-create$$//'`; \ + echo "File $$lang.po does not exist. If you are a translator, you can create it through 'msginit'." 1>&2; \ + exit 1 + +# General rule for updating PO files. + +.nop.po-update: + @lang=`echo $@ | sed -e 's/\.po-update$$//'`; \ + if test "$(PACKAGE)" = "gettext-tools"; then PATH=`pwd`/../src:$$PATH; fi; \ + tmpdir=`pwd`; \ + echo "$$lang:"; \ + test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \ + echo "$${cdcmd}$(MSGMERGE) $$lang.po $(DOMAIN).pot -o $$lang.new.po"; \ + cd $(srcdir); \ + if $(MSGMERGE) $$lang.po $(DOMAIN).pot -o $$tmpdir/$$lang.new.po; then \ + if cmp $$lang.po $$tmpdir/$$lang.new.po >/dev/null 2>&1; then \ + rm -f $$tmpdir/$$lang.new.po; \ + else \ + if mv -f $$tmpdir/$$lang.new.po $$lang.po; then \ + :; \ + else \ + echo "msgmerge for $$lang.po failed: cannot move $$tmpdir/$$lang.new.po to $$lang.po" 1>&2; \ + exit 1; \ + fi; \ + fi; \ + else \ + echo "msgmerge for $$lang.po failed!" 1>&2; \ + rm -f $$tmpdir/$$lang.new.po; \ + fi + +$(DUMMYPOFILES): + +update-gmo: Makefile $(GMOFILES) + @: + +Makefile: Makefile.in.in Makevars $(top_builddir)/config.status @POMAKEFILEDEPS@ + cd $(top_builddir) \ + && $(SHELL) ./config.status $(subdir)/$@.in po-directories + +force: + +# Tell versions [3.59,3.63) of GNU make not to export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: diff --git a/po/Rules-quot b/po/Rules-quot new file mode 100644 index 00000000..9c2a995e --- /dev/null +++ b/po/Rules-quot @@ -0,0 +1,47 @@ +# Special Makefile rules for English message catalogs with quotation marks. + +DISTFILES.common.extra1 = quot.sed boldquot.sed en@quot.header en@boldquot.header insert-header.sin Rules-quot + +.SUFFIXES: .insert-header .po-update-en + +en@quot.po-create: + $(MAKE) en@quot.po-update +en@boldquot.po-create: + $(MAKE) en@boldquot.po-update + +en@quot.po-update: en@quot.po-update-en +en@boldquot.po-update: en@boldquot.po-update-en + +.insert-header.po-update-en: + @lang=`echo $@ | sed -e 's/\.po-update-en$$//'`; \ + if test "$(PACKAGE)" = "gettext"; then PATH=`pwd`/../src:$$PATH; GETTEXTLIBDIR=`cd $(top_srcdir)/src && pwd`; export GETTEXTLIBDIR; fi; \ + tmpdir=`pwd`; \ + echo "$$lang:"; \ + ll=`echo $$lang | sed -e 's/@.*//'`; \ + LC_ALL=C; export LC_ALL; \ + cd $(srcdir); \ + if $(MSGINIT) -i $(DOMAIN).pot --no-translator -l $$ll -o - 2>/dev/null | sed -f $$tmpdir/$$lang.insert-header | $(MSGCONV) -t UTF-8 | $(MSGFILTER) sed -f `echo $$lang | sed -e 's/.*@//'`.sed 2>/dev/null > $$tmpdir/$$lang.new.po; then \ + if cmp $$lang.po $$tmpdir/$$lang.new.po >/dev/null 2>&1; then \ + rm -f $$tmpdir/$$lang.new.po; \ + else \ + if mv -f $$tmpdir/$$lang.new.po $$lang.po; then \ + :; \ + else \ + echo "creation of $$lang.po failed: cannot move $$tmpdir/$$lang.new.po to $$lang.po" 1>&2; \ + exit 1; \ + fi; \ + fi; \ + else \ + echo "creation of $$lang.po failed!" 1>&2; \ + rm -f $$tmpdir/$$lang.new.po; \ + fi + +en@quot.insert-header: insert-header.sin + sed -e '/^#/d' -e 's/HEADER/en@quot.header/g' $(srcdir)/insert-header.sin > en@quot.insert-header + +en@boldquot.insert-header: insert-header.sin + sed -e '/^#/d' -e 's/HEADER/en@boldquot.header/g' $(srcdir)/insert-header.sin > en@boldquot.insert-header + +mostlyclean: mostlyclean-quot +mostlyclean-quot: + rm -f *.insert-header diff --git a/po/boldquot.sed b/po/boldquot.sed new file mode 100644 index 00000000..4b937aa5 --- /dev/null +++ b/po/boldquot.sed @@ -0,0 +1,10 @@ +s/"\([^"]*\)"/“\1”/g +s/`\([^`']*\)'/‘\1’/g +s/ '\([^`']*\)' / ‘\1’ /g +s/ '\([^`']*\)'$/ ‘\1’/g +s/^'\([^`']*\)' /‘\1’ /g +s/“”/""/g +s/“/“/g +s/”/”/g +s/‘/‘/g +s/’/’/g diff --git a/po/bs.gmo b/po/bs.gmo new file mode 100644 index 0000000000000000000000000000000000000000..ea7c57b1d2263864c0652a1f0cc22ad7d0b999bb GIT binary patch literal 3012 zcma)-O>7%Q6vqcB6bz-Me3y?-p=lG9UDj!f$|f$&SKFvfVx?|N4;;qv#2$M+W6kc` zNz@AnsTV47DH0MA&7o3Ha0aBFVvrCw#0>%B0uq872ZRv(-|pIRTc{Xm{o9#&@6DU{ z-adb~bITQmF@)z?JkxhEb{Guq#t+7^dl>V<3GgZKBDfvA0zL*_1NVZTg3o~8gO7rL zf-i#Gw=nhqco58i1(5VkW_$yD7;~HPP4Irq-_7RlgZE;79VGi7fscS+f@JSo@Ja9| za5wlj_#n6&N+f>(d=5MTlAZ)fuaogDkj}ph?gT#o$==7{F7S(tKZ5%){|n^c(0%Fs zj)T7?j?}oJ_FMEWsv-dK|23!@M-Wv z@FDP%jGt%x8l-c60O11r4J5ta!5!cZTy`tC2c&q6fG>bEAVgRVq&!)0FZdov=Y0l} zKi`04=Vy@4`6FB3iXc;*c7b${QIO6(1rCABAf5M4#_J%$l*EGShsG0lC?+(>_uioU z)4);58FW4kj)#0A`&oJ7EgeXEaxa=uoG9m1XXG>aLE~{e2!B$aNMmwOAgK$A0mX@O zL4)o>gK7${CxhZcgW^VaMv248^TKMSt3K~Y(cmo+h8<%od|2v8TCO54szPZV86Jl+ znd{Y#SRHX0=TkLfuqe2eoxZBehQj?JFJ_i}j=9fEb~UpU2pG<>iKQhI>xj>+w3HQ* zGMZ0ghYw%CaOUQm>FE(RQK`T;I@$7}kesMm6Swf5W0RuNKhwvG%Q>5>30)EW&A8e3nom@*sPyfN^SJ83-Duhi8m>BTcvGmr zWedTecWeO;S=Q4VymS`-&AnMImLk=b{S}y9lunwD!9XYLP17EX(6Tknfx9jmOy}cf z8Hbl@a+Oz%-XFomXsI^Fqh3z#wCCnn$I z@$pc!S~Wx;Zs~Z19C6FyD0Fo-7FFq#q-gql(u5j*^6|hl1g;QQ%c@4go02{+hq<}g zxtYzlx>cl-Mmf7C@Cnj76ynrWoHfesRkEA4$)ah*-E~oi zWM;e}kb%0)F;oT`6pYG-;8tv0jy1eFfzj)h)2QaUY^G;x1u^u@s*PJJX_)g;g)J-E zP)qO9>zZ@0uj`_j`Nh{nq7^4v#aJ7z&?pseS-FNcb}HVuq!n@+$YrC^JHv)*iU4*a zE9%;WQEDmcp#QovZ`yq~&@~4qvMF%+?s_C$b|w;tdFC!#2qO^~wwW6a*C-%aNF_^y ziT@+fKo8X-Tku&iO;s;>18MNt*+w9e`zJ~31x~FcQIJU#Ch_(2(3B-x(30ankA4Hu zy%D1hZ_U~Nk;$Q<;9KslBhgmXMLVdgHhF=5bz2dj`%F}!7q%6j9nq$=sRSxs)=WVt6*5n6=*VIhoB HFE0BB?NKp) literal 0 HcmV?d00001 diff --git a/po/bs.po b/po/bs.po index 7b8d4a4d..70ed1551 100644 --- a/po/bs.po +++ b/po/bs.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: shadow\n" "Report-Msgid-Bugs-To: pkg-shadow-devel@lists.alioth.debian.org\n" -"POT-Creation-Date: 2012-05-20 19:52+0200\n" +"POT-Creation-Date: 2016-09-18 21:41-0500\n" "PO-Revision-Date: 2004-05-09 12:03+0100\n" "Last-Translator: Safir Šećerović \n" "Language-Team: Bosnian \n" @@ -413,6 +413,10 @@ msgstr "nepoznata grupa: %s\n" msgid "%s: cannot access chroot directory %s: %s\n" msgstr "nepoznata grupa: %s\n" +#, fuzzy, c-format +msgid "%s: cannot chdir to chroot directory %s: %s\n" +msgstr "nepoznata grupa: %s\n" + #, fuzzy, c-format msgid "%s: unable to chroot to directory %s: %s\n" msgstr "nepoznata grupa: %s\n" @@ -747,6 +751,10 @@ msgstr "" msgid "%s: line %d: missing new password\n" msgstr "" +#, fuzzy, c-format +msgid "%s: failed to crypt password with salt '%s': %s\n" +msgstr "nepoznata grupa: %s\n" + #, fuzzy, c-format msgid "%s: line %d: group '%s' does not exist\n" msgstr "%s: grupa %s postoji\n" @@ -1019,6 +1027,11 @@ msgstr "" msgid "%s: Cannot setup cleanup service.\n" msgstr "%s: nepoznat član %s\n" +msgid "" +" -f, --force delete group even if it is the primary group " +"of a user\n" +msgstr "" + #, c-format msgid "%s: cannot remove entry '%s' from %s\n" msgstr "" @@ -1226,6 +1239,16 @@ msgid "" " -b, --before DAYS print only lastlog records older than DAYS\n" msgstr "" +msgid "" +" -C, --clear clear lastlog record of an user (usable only " +"with -u)\n" +msgstr "" + +msgid "" +" -S, --set set lastlog record to current time (usable " +"only with -u)\n" +msgstr "" + msgid "" " -t, --time DAYS print only lastlog records more recent than " "DAYS\n" @@ -1244,6 +1267,22 @@ msgstr "" msgid "**Never logged in**" msgstr "" +#, fuzzy, c-format +msgid "%s: Failed to update the entry for UID %lu\n" +msgstr "nepoznata grupa: %s\n" + +#, fuzzy, c-format +msgid "%s: Failed to update the lastlog file\n" +msgstr "nepoznata grupa: %s\n" + +#, c-format +msgid "%s: Option -C cannot be used together with option -S\n" +msgstr "" + +#, c-format +msgid "%s: Options -C and -S require option -u to specify the user\n" +msgstr "" + #, c-format msgid "Usage: %s [-p] [name]\n" msgstr "" @@ -1273,12 +1312,6 @@ msgid "" "[Disconnect bypassed -- root login allowed.]" msgstr "" -#, c-format -msgid "" -"\n" -"Login timed out after %u seconds.\n" -msgstr "" - #, c-format msgid "%s: Cannot possibly work without effective root\n" msgstr "" @@ -1286,6 +1319,12 @@ msgstr "" msgid "No utmp entry. You must exec \"login\" from the lowest level \"sh\"" msgstr "" +#, c-format +msgid "" +"\n" +"Login timed out after %u seconds.\n" +msgstr "" + #, c-format msgid "login: PAM Failure, aborting: %s\n" msgstr "" @@ -1355,6 +1394,10 @@ msgstr "" msgid "Usage: sg group [[-c] command]\n" msgstr "" +#, fuzzy, c-format +msgid "%s: failed to crypt password with previous salt: %s\n" +msgstr "nepoznata grupa: %s\n" + #, fuzzy msgid "Invalid password.\n" msgstr "Stara šifra:" @@ -1421,6 +1464,18 @@ msgstr "nepoznata grupa: %s\n" msgid "%s: line %d: can't update entry\n" msgstr "" +#, fuzzy, c-format +msgid "%s: failed to prepare new %s entry\n" +msgstr "nepoznata grupa: %s\n" + +#, c-format +msgid "%s: can't find subordinate user range\n" +msgstr "" + +#, fuzzy, c-format +msgid "%s: can't find subordinate group range\n" +msgstr "nepoznata grupa: %s\n" + msgid "" " -a, --all report password status on all accounts\n" msgstr "" @@ -1660,12 +1715,6 @@ msgstr "" msgid "Please enter your OWN password as authentication.\n" msgstr "" -msgid " ...killed.\n" -msgstr "" - -msgid " ...waiting for child to terminate.\n" -msgstr "" - #, fuzzy, c-format #| msgid "%s: unknown member %s\n" msgid "%s: Cannot fork user shell\n" @@ -1683,12 +1732,20 @@ msgid "Session terminated, terminating shell..." msgstr "" #, c-format -msgid "%s: %s\n" +msgid " ...killed.\n" +msgstr "" + +#, c-format +msgid " ...waiting for child to terminate.\n" msgstr "" msgid " ...terminated.\n" msgstr "" +#, c-format +msgid "%s: %s\n" +msgstr "" + msgid "" "Usage: su [options] [LOGIN]\n" "\n" @@ -1930,6 +1987,10 @@ msgstr "" msgid "%s: failed to reset the lastlog entry of UID %lu: %s\n" msgstr "" +#, fuzzy, c-format +msgid "%s: failed to prepare the new %s entry\n" +msgstr "nepoznata grupa: %s\n" + #, c-format msgid "%s: cannot create directory %s\n" msgstr "" @@ -1969,6 +2030,14 @@ msgstr "" msgid "%s: can't create group\n" msgstr "nepoznata grupa: %s\n" +#, fuzzy, c-format +msgid "%s: can't create subordinate user IDs\n" +msgstr "nepoznata grupa: %s\n" + +#, fuzzy, c-format +msgid "%s: can't create subordinate group IDs\n" +msgstr "nepoznata grupa: %s\n" + #, c-format msgid "" "%s: warning: the home directory already exists.\n" @@ -2005,6 +2074,10 @@ msgstr "" msgid "%s: group %s is the primary group of another user and is not removed.\n" msgstr "" +#, fuzzy, c-format +msgid "%s: cannot remove entry %lu from %s\n" +msgstr "nepoznata grupa: %s\n" + #, c-format msgid "%s: %s mail spool (%s) not found\n" msgstr "" @@ -2107,6 +2180,18 @@ msgstr "" msgid " -U, --unlock unlock the user account\n" msgstr "" +msgid " -v, --add-subuids FIRST-LAST add range of subordinate uids\n" +msgstr "" + +msgid " -V, --del-subuids FIRST-LAST remove range of subordinate uids\n" +msgstr "" + +msgid " -w, --add-subgids FIRST-LAST add range of subordinate gids\n" +msgstr "" + +msgid " -W, --del-subgids FIRST-LAST remove range of subordinate gids\n" +msgstr "" + msgid "" " -Z, --selinux-user SEUSER new SELinux user mapping for the user " "account\n" @@ -2122,6 +2207,14 @@ msgstr "" msgid "%s: user '%s' already exists in %s\n" msgstr "%s: grupa %s postoji\n" +#, fuzzy, c-format +msgid "%s: invalid subordinate uid range '%s'\n" +msgstr "nepoznata grupa: %s\n" + +#, fuzzy, c-format +msgid "%s: invalid subordinate gid range '%s'\n" +msgstr "nepoznata grupa: %s\n" + #, fuzzy, c-format #| msgid "%s: unknown member %s\n" msgid "%s: no options\n" @@ -2139,6 +2232,10 @@ msgstr "" msgid "%s: UID '%lu' already exists\n" msgstr "" +#, c-format +msgid "%s: %s does not exist, you cannot use the flags %s or %s\n" +msgstr "" + #, c-format msgid "%s: directory %s exists\n" msgstr "" @@ -2179,6 +2276,22 @@ msgstr "" msgid "failed to rename mailbox" msgstr "" +#, fuzzy, c-format +msgid "%s: failed to remove uid range %lu-%lu from '%s'\n" +msgstr "nepoznata grupa: %s\n" + +#, c-format +msgid "%s: failed to add uid range %lu-%lu from '%s'\n" +msgstr "" + +#, fuzzy, c-format +msgid "%s: failed to remove gid range %lu-%lu from '%s'\n" +msgstr "nepoznata grupa: %s\n" + +#, c-format +msgid "%s: failed to add gid range %lu-%lu from '%s'\n" +msgstr "" + #, c-format msgid "" "You have modified %s.\n" @@ -2227,6 +2340,18 @@ msgstr "" msgid "Couldn't make backup" msgstr "" +#, fuzzy, c-format +msgid "%s: %s: %s\n" +msgstr "nepoznata grupa: %s\n" + +#, c-format +msgid "%s: %s returned with status %d\n" +msgstr "" + +#, c-format +msgid "%s: %s killed by signal %d\n" +msgstr "" + msgid "failed to open scratch file" msgstr "" diff --git a/po/ca.gmo b/po/ca.gmo new file mode 100644 index 0000000000000000000000000000000000000000..6b412a046cb1384ff8f23a0f024da8750ac5164c GIT binary patch literal 69110 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 literal 0 HcmV?d00001 diff --git a/po/ca.po b/po/ca.po index 5584692b..70b28eb6 100644 --- a/po/ca.po +++ b/po/ca.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: shadow 4.0.18\n" "Report-Msgid-Bugs-To: pkg-shadow-devel@lists.alioth.debian.org\n" -"POT-Creation-Date: 2012-05-20 19:52+0200\n" +"POT-Creation-Date: 2016-09-18 21:41-0500\n" "PO-Revision-Date: 2012-01-22 18:25+0100\n" "Last-Translator: Innocent De Marchi \n" "Language-Team: Catalan \n" @@ -429,6 +429,11 @@ msgstr "%s: camí «chroot» incorrecta «%s»\n" msgid "%s: cannot access chroot directory %s: %s\n" msgstr "%s: no es pot accedir al directori «chroot» %s: %s\n" +#, fuzzy, c-format +#| msgid "%s: cannot access chroot directory %s: %s\n" +msgid "%s: cannot chdir to chroot directory %s: %s\n" +msgstr "%s: no es pot accedir al directori «chroot» %s: %s\n" + #, c-format msgid "%s: unable to chroot to directory %s: %s\n" msgstr "%s: no es pot executar «chroot» en el directori %s: %s\n" @@ -802,6 +807,11 @@ msgstr "%s: línia %d: la línia és massa llarga\n" msgid "%s: line %d: missing new password\n" msgstr "%s: línia %d: manca la nova contrasenya\n" +#, fuzzy, c-format +#| msgid "%s: Failed to write %s: %s\n" +msgid "%s: failed to crypt password with salt '%s': %s\n" +msgstr "%s: Error en escriure %s: %s\n" + #, c-format msgid "%s: line %d: group '%s' does not exist\n" msgstr "%s: línia %d: el grup «%s» no existeix\n" @@ -1120,6 +1130,16 @@ msgstr "%s: el GID '%lu ja existeix\n" msgid "%s: Cannot setup cleanup service.\n" msgstr "%s: no es pot configurar el servei de neteja.\n" +#, fuzzy +#| msgid "" +#| " -r, --reset reset the counters of login failures\n" +msgid "" +" -f, --force delete group even if it is the primary group " +"of a user\n" +msgstr "" +" -r, --reset restableix els comptadors d'errors " +"d'identificació\n" + #, c-format msgid "%s: cannot remove entry '%s' from %s\n" msgstr "%s: no es pot eliminar l'entrada «%s» de %s\n" @@ -1350,6 +1370,26 @@ msgstr "" " -b, --before DIES mostra només els registres de lastlog més\n" " antics que DIES\n" +#, fuzzy +#| msgid "" +#| " -a, --all display faillog records for all users\n" +msgid "" +" -C, --clear clear lastlog record of an user (usable only " +"with -u)\n" +msgstr "" +" -a, --all mostra els registres «faillog» per a tots " +"els usuaris\n" + +#, fuzzy +#| msgid "" +#| " -a, --all display faillog records for all users\n" +msgid "" +" -S, --set set lastlog record to current time (usable " +"only with -u)\n" +msgstr "" +" -a, --all mostra els registres «faillog» per a tots " +"els usuaris\n" + msgid "" " -t, --time DAYS print only lastlog records more recent than " "DAYS\n" @@ -1371,6 +1411,24 @@ msgstr "Usuari Port Últim" msgid "**Never logged in**" msgstr "**No ha entrat mai**" +#, fuzzy, c-format +#| msgid "%s: Failed to get the entry for UID %lu\n" +msgid "%s: Failed to update the entry for UID %lu\n" +msgstr "%s: No s'ha pogut obtenir l'entrada de la UID %lu\n" + +#, fuzzy, c-format +#| msgid "%s: can't update password file\n" +msgid "%s: Failed to update the lastlog file\n" +msgstr "%s: no es pot actualitzar el fitxer de contrasenyes\n" + +#, c-format +msgid "%s: Option -C cannot be used together with option -S\n" +msgstr "" + +#, c-format +msgid "%s: Options -C and -S require option -u to specify the user\n" +msgstr "" + #, c-format msgid "Usage: %s [-p] [name]\n" msgstr "Forma d'ús: %s [-p] [nom]\n" @@ -1404,14 +1462,6 @@ msgstr "" "\n" "[S'ha evitat la desconnexió -- l'accés de «root» està permès]." -#, c-format -msgid "" -"\n" -"Login timed out after %u seconds.\n" -msgstr "" -"\n" -"L'accés ha caducat després de %u segons.\n" - #, c-format msgid "%s: Cannot possibly work without effective root\n" msgstr "%s: no es pot treballar sense ésser administrador\n" @@ -1420,6 +1470,14 @@ msgid "No utmp entry. You must exec \"login\" from the lowest level \"sh\"" msgstr "" "No hi ha entrada utmp. Heu d'executar «login» des del «sh» de nivell més baix" +#, c-format +msgid "" +"\n" +"Login timed out after %u seconds.\n" +msgstr "" +"\n" +"L'accés ha caducat després de %u segons.\n" + #, c-format msgid "login: PAM Failure, aborting: %s\n" msgstr "login: fallada de PAM, s'està cancel·lant: %s\n" @@ -1492,6 +1550,11 @@ msgstr "Forma d'ús: newgrp [-] [grup]\n" msgid "Usage: sg group [[-c] command]\n" msgstr "Forma d'ús: sg grup [[-c] ordre]\n" +#, fuzzy, c-format +#| msgid "%s: Failed to write %s: %s\n" +msgid "%s: failed to crypt password with previous salt: %s\n" +msgstr "%s: Error en escriure %s: %s\n" + msgid "Invalid password.\n" msgstr "Contrasenya no vàlida.\n" @@ -1561,6 +1624,21 @@ msgstr "" msgid "%s: line %d: can't update entry\n" msgstr "%s: línia %d: no es pot actualitzar l'entrada\n" +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to prepare new %s entry\n" +msgstr "%s: ha fallat la preparació de la nova entrada %s: «%s»\n" + +#, fuzzy, c-format +#| msgid "%s: can't create user\n" +msgid "%s: can't find subordinate user range\n" +msgstr "%s: no es pot generar l'usuari\n" + +#, fuzzy, c-format +#| msgid "%s: can't update group file\n" +msgid "%s: can't find subordinate group range\n" +msgstr "%s: no es pot actualitzar el fitxer de grups\n" + msgid "" " -a, --all report password status on all accounts\n" msgstr "" @@ -1833,12 +1911,6 @@ msgstr "S'ha evitat l'autenticació de contrasenya.\n" msgid "Please enter your OWN password as authentication.\n" msgstr "Si us plau introduïu la VOSTRA contrasenya com a autenticació.\n" -msgid " ...killed.\n" -msgstr "...mort.\n" - -msgid " ...waiting for child to terminate.\n" -msgstr "...esperant al fill per acabar.\n" - #, c-format msgid "%s: Cannot fork user shell\n" msgstr "%s: no es pot blocar el «shell» de l'usuari\n" @@ -1855,12 +1927,20 @@ msgid "Session terminated, terminating shell..." msgstr "Sessió acabada, finalitzant el «shell»..." #, c-format -msgid "%s: %s\n" -msgstr "%s: %s\n" +msgid " ...killed.\n" +msgstr "...mort.\n" + +#, c-format +msgid " ...waiting for child to terminate.\n" +msgstr "...esperant al fill per acabar.\n" msgid " ...terminated.\n" msgstr "...acabat.\n" +#, c-format +msgid "%s: %s\n" +msgstr "%s: %s\n" + msgid "" "Usage: su [options] [LOGIN]\n" "\n" @@ -2147,6 +2227,11 @@ msgstr "" msgid "%s: failed to reset the lastlog entry of UID %lu: %s\n" msgstr "%s: ha fallat el restabliment del darrer registre de UID %lu: %s\n" +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to prepare the new %s entry\n" +msgstr "%s: ha fallat la preparació de la nova entrada %s: «%s»\n" + #, c-format msgid "%s: cannot create directory %s\n" msgstr "%s: no es pot crear el directori %s\n" @@ -2190,6 +2275,16 @@ msgstr "%s: no es pot generar el directori «tcb» per a %s\n" msgid "%s: can't create group\n" msgstr "%s: no es pot generar el grup\n" +#, fuzzy, c-format +#| msgid "%s: can't create user\n" +msgid "%s: can't create subordinate user IDs\n" +msgstr "%s: no es pot generar l'usuari\n" + +#, fuzzy, c-format +#| msgid "%s: can't create group\n" +msgid "%s: can't create subordinate group IDs\n" +msgstr "%s: no es pot generar el grup\n" + #, c-format msgid "" "%s: warning: the home directory already exists.\n" @@ -2239,6 +2334,11 @@ msgstr "" "%s: no es pot eliminar el grup %s, que és el grup primari per un altre " "usuari.\n" +#, fuzzy, c-format +#| msgid "%s: cannot remove entry '%s' from %s\n" +msgid "%s: cannot remove entry %lu from %s\n" +msgstr "%s: no es pot eliminar l'entrada «%s» de %s\n" + #, c-format msgid "%s: %s mail spool (%s) not found\n" msgstr "%s: %s no s'ha trobat la cua de correu (%s)\n" @@ -2360,6 +2460,18 @@ msgstr " -u, --uid UID nou UID per al compte d'usuari\n" msgid " -U, --unlock unlock the user account\n" msgstr " -U, --unlock desbloca el compte d'usuari\n" +msgid " -v, --add-subuids FIRST-LAST add range of subordinate uids\n" +msgstr "" + +msgid " -V, --del-subuids FIRST-LAST remove range of subordinate uids\n" +msgstr "" + +msgid " -w, --add-subgids FIRST-LAST add range of subordinate gids\n" +msgstr "" + +msgid " -W, --del-subgids FIRST-LAST remove range of subordinate gids\n" +msgstr "" + msgid "" " -Z, --selinux-user SEUSER new SELinux user mapping for the user " "account\n" @@ -2381,6 +2493,16 @@ msgstr "" msgid "%s: user '%s' already exists in %s\n" msgstr "%s: l'usuari «%s» ja existeix a %s\n" +#, fuzzy, c-format +#| msgid "%s: invalid date '%s'\n" +msgid "%s: invalid subordinate uid range '%s'\n" +msgstr "%s: la data «%s» no és vàlida\n" + +#, fuzzy, c-format +#| msgid "%s: invalid date '%s'\n" +msgid "%s: invalid subordinate gid range '%s'\n" +msgstr "%s: la data «%s» no és vàlida\n" + #, c-format msgid "%s: no options\n" msgstr "%s: sense opcions\n" @@ -2397,6 +2519,11 @@ msgstr "%s: les contrasenyes ombra són obligatòries per a «-e» i «-f»\n" msgid "%s: UID '%lu' already exists\n" msgstr "%s: UID '%lu' ja existeix\n" +#, fuzzy, c-format +#| msgid "%s: %s is not authorized to change the password of %s\n" +msgid "%s: %s does not exist, you cannot use the flags %s or %s\n" +msgstr "%s: %s no està autoritzat per canviar la contrasenya de %s\n" + #, c-format msgid "%s: directory %s exists\n" msgstr "%s: el directori %s ja existeix\n" @@ -2444,6 +2571,26 @@ msgstr "no s'ha pogut canviar el propietari de la bústia de correu" msgid "failed to rename mailbox" msgstr "no s'ha pogut reanomenar la bústia de correu" +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to remove uid range %lu-%lu from '%s'\n" +msgstr "%s: ha fallat la preparació de la nova entrada %s: «%s»\n" + +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to add uid range %lu-%lu from '%s'\n" +msgstr "%s: ha fallat la preparació de la nova entrada %s: «%s»\n" + +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to remove gid range %lu-%lu from '%s'\n" +msgstr "%s: ha fallat la preparació de la nova entrada %s: «%s»\n" + +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to add gid range %lu-%lu from '%s'\n" +msgstr "%s: ha fallat la preparació de la nova entrada %s: «%s»\n" + #, c-format msgid "" "You have modified %s.\n" @@ -2499,6 +2646,20 @@ msgstr "No s'ha pogut blocar el fitxer" msgid "Couldn't make backup" msgstr "No s'ha pogut fer una còpia de seguretat" +#, fuzzy, c-format +#| msgid "%s: PAM: %s\n" +msgid "%s: %s: %s\n" +msgstr "%s: PAM: %s\n" + +#, fuzzy, c-format +#| msgid "%s: nscd exited with status %d" +msgid "%s: %s returned with status %d\n" +msgstr "%s: «nscd» ha sortit amb l'estat %d" + +#, c-format +msgid "%s: %s killed by signal %d\n" +msgstr "" + msgid "failed to open scratch file" msgstr "no s'ha pogut obrir el fitxer de treball («scratch file»)" @@ -3132,9 +3293,6 @@ msgstr "%s: no es pot trobar el directori «tcb» per %s\n" #~ msgid "%s: can't rewrite password file\n" #~ msgstr "%s: no es pot reescriure el fitxer de contrasenyes\n" -#~ msgid "%s: can't update password file\n" -#~ msgstr "%s: no es pot actualitzar el fitxer de contrasenyes\n" - #~ msgid "%s: can't update shadow password file\n" #~ msgstr "%s: no es pot actualitzar el fitxer de contrasenyes ombra\n" @@ -3371,9 +3529,6 @@ msgstr "%s: no es pot trobar el directori «tcb» per %s\n" #~ msgid "%s: can't update shadow group file\n" #~ msgstr "%s: no es pot actualitzar el fitxer de grups ombra\n" -#~ msgid "%s: can't update group file\n" -#~ msgstr "%s: no es pot actualitzar el fitxer de grups\n" - #~ msgid "%s: can't delete shadow group file\n" #~ msgstr "%s: no es pot eliminar el fitxer de grups ombra\n" diff --git a/po/cs.gmo b/po/cs.gmo new file mode 100644 index 0000000000000000000000000000000000000000..b1024f78a0824663ef07c112073918ed8dc51181 GIT binary patch literal 54857 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\n" "Language-Team: Czech \n" @@ -440,6 +440,11 @@ msgstr "%s: chybné telefonní číslo domů: „%s“\n" msgid "%s: cannot access chroot directory %s: %s\n" msgstr "%s: adresář %s nelze vytvořit\n" +#, fuzzy, c-format +#| msgid "%s: cannot create directory %s\n" +msgid "%s: cannot chdir to chroot directory %s: %s\n" +msgstr "%s: adresář %s nelze vytvořit\n" + #, fuzzy, c-format #| msgid "%s: cannot create directory %s\n" msgid "%s: unable to chroot to directory %s: %s\n" @@ -795,6 +800,11 @@ msgstr "%s: řádek %d je příliš dlouhý\n" msgid "%s: line %d: missing new password\n" msgstr "%s: řádek %d: chybí nové heslo\n" +#, fuzzy, c-format +#| msgid "%s: failed to remove %s\n" +msgid "%s: failed to crypt password with salt '%s': %s\n" +msgstr "%s: selhalo odstranění %s\n" + #, c-format msgid "%s: line %d: group '%s' does not exist\n" msgstr "%s: řádek %d: skupina „%s“ neexistuje\n" @@ -1095,6 +1105,15 @@ msgstr "%s: GID „%lu“ již existuje\n" msgid "%s: Cannot setup cleanup service.\n" msgstr "%s: vaše uživatelské jméno nelze zjistit.\n" +#, fuzzy +#| msgid "" +#| " -r, --reset reset the counters of login failures\n" +msgid "" +" -f, --force delete group even if it is the primary group " +"of a user\n" +msgstr "" +" -r, --reset vynuluje počitadla chybných přihlášení\n" + #, c-format msgid "%s: cannot remove entry '%s' from %s\n" msgstr "%s: nelze odstranit záznam „%s“ z %s\n" @@ -1318,6 +1337,26 @@ msgid "" msgstr "" " -b, --before DNŮ zobrazí záznamy lastlogu starší než DNŮ\n" +#, fuzzy +#| msgid "" +#| " -a, --all display faillog records for all users\n" +msgid "" +" -C, --clear clear lastlog record of an user (usable only " +"with -u)\n" +msgstr "" +" -a, --all zobrazí záznamy faillogu o všech " +"uživatelích\n" + +#, fuzzy +#| msgid "" +#| " -a, --all display faillog records for all users\n" +msgid "" +" -S, --set set lastlog record to current time (usable " +"only with -u)\n" +msgstr "" +" -a, --all zobrazí záznamy faillogu o všech " +"uživatelích\n" + msgid "" " -t, --time DAYS print only lastlog records more recent than " "DAYS\n" @@ -1338,6 +1377,24 @@ msgstr "Uživatel Port Naposledy" msgid "**Never logged in**" msgstr "**Nikdy nebyl přihlášen**" +#, fuzzy, c-format +#| msgid "%s: Failed to get the entry for UID %lu\n" +msgid "%s: Failed to update the entry for UID %lu\n" +msgstr "%s: nepodařilo se získat záznam pro UID %lu\n" + +#, fuzzy, c-format +#| msgid "%s: can't update password file\n" +msgid "%s: Failed to update the lastlog file\n" +msgstr "%s: soubor s hesly nelze aktualizovat\n" + +#, c-format +msgid "%s: Option -C cannot be used together with option -S\n" +msgstr "" + +#, c-format +msgid "%s: Options -C and -S require option -u to specify the user\n" +msgstr "" + #, c-format msgid "Usage: %s [-p] [name]\n" msgstr "Použití: %s [-p] [jméno]\n" @@ -1371,6 +1428,13 @@ msgstr "" "\n" "[Odpojení přeskočeno -- uživatel root smí být přihlášen.]" +#, c-format +msgid "%s: Cannot possibly work without effective root\n" +msgstr "%s: Bez efektivních oprávnění uživatele root nelze pracovat\n" + +msgid "No utmp entry. You must exec \"login\" from the lowest level \"sh\"" +msgstr "utmp záznam neexistuje. Musíte spustit „login“ z nejnižšího „sh“" + #, c-format msgid "" "\n" @@ -1379,13 +1443,6 @@ msgstr "" "\n" "Vypršel časový limit pro přihlášení (%u sekund).\n" -#, c-format -msgid "%s: Cannot possibly work without effective root\n" -msgstr "%s: Bez efektivních oprávnění uživatele root nelze pracovat\n" - -msgid "No utmp entry. You must exec \"login\" from the lowest level \"sh\"" -msgstr "utmp záznam neexistuje. Musíte spustit „login“ z nejnižšího „sh“" - #, c-format msgid "login: PAM Failure, aborting: %s\n" msgstr "login: Chyba PAM, končím: %s\n" @@ -1459,6 +1516,11 @@ msgstr "Použití: newgrp [-] [skupina]\n" msgid "Usage: sg group [[-c] command]\n" msgstr "Použití: sg skupina [[-c] příkaz]\n" +#, fuzzy, c-format +#| msgid "%s: failed to remove %s\n" +msgid "%s: failed to crypt password with previous salt: %s\n" +msgstr "%s: selhalo odstranění %s\n" + msgid "Invalid password.\n" msgstr "Neplatné heslo.\n" @@ -1525,6 +1587,21 @@ msgstr "%s: řádek %d: volání chown %s selhalo: %s\n" msgid "%s: line %d: can't update entry\n" msgstr "%s: řádek %d: položku nelze aktualizovat\n" +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to prepare new %s entry\n" +msgstr "%s: selhala příprava nového %s záznamu „%s“\n" + +#, fuzzy, c-format +#| msgid "%s: can't create user\n" +msgid "%s: can't find subordinate user range\n" +msgstr "%s: nelze vytvořit uživatele\n" + +#, fuzzy, c-format +#| msgid "%s: can't update group file\n" +msgid "%s: can't find subordinate group range\n" +msgstr "%s: soubor s hesly nelze aktualizovat\n" + msgid "" " -a, --all report password status on all accounts\n" msgstr " -a, --all vypíše stav hesel na všech účtech\n" @@ -1792,12 +1869,6 @@ msgstr "Ověřování heslem vynecháno.\n" msgid "Please enter your OWN password as authentication.\n" msgstr "Pro ověření zadejte VAŠE vlastní heslo.\n" -msgid " ...killed.\n" -msgstr " ...zabit.\n" - -msgid " ...waiting for child to terminate.\n" -msgstr " ...čeká na ukončení potomka.\n" - #, c-format msgid "%s: Cannot fork user shell\n" msgstr "%s: Nelze rozdvojit uživatelský shell\n" @@ -1814,12 +1885,20 @@ msgid "Session terminated, terminating shell..." msgstr "Sezení skončeno, ukončuji shell..." #, c-format -msgid "%s: %s\n" -msgstr "%s: %s\n" +msgid " ...killed.\n" +msgstr " ...zabit.\n" + +#, c-format +msgid " ...waiting for child to terminate.\n" +msgstr " ...čeká na ukončení potomka.\n" msgid " ...terminated.\n" msgstr " ...ukončen.\n" +#, c-format +msgid "%s: %s\n" +msgstr "%s: %s\n" + msgid "" "Usage: su [options] [LOGIN]\n" "\n" @@ -2102,6 +2181,11 @@ msgstr "%s: nepodařilo se vynulovat faillog záznam UID %lu: %s\n" msgid "%s: failed to reset the lastlog entry of UID %lu: %s\n" msgstr "%s: nepodařilo se vynulovat lastlog záznam UID %lu: %s\n" +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to prepare the new %s entry\n" +msgstr "%s: selhala příprava nového %s záznamu „%s“\n" + #, c-format msgid "%s: cannot create directory %s\n" msgstr "%s: adresář %s nelze vytvořit\n" @@ -2146,6 +2230,16 @@ msgstr "%s: adresář %s nelze vytvořit\n" msgid "%s: can't create group\n" msgstr "%s: nelze vytvořit skupinu\n" +#, fuzzy, c-format +#| msgid "%s: can't create user\n" +msgid "%s: can't create subordinate user IDs\n" +msgstr "%s: nelze vytvořit uživatele\n" + +#, fuzzy, c-format +#| msgid "%s: can't create group\n" +msgid "%s: can't create subordinate group IDs\n" +msgstr "%s: nelze vytvořit skupinu\n" + #, c-format msgid "" "%s: warning: the home directory already exists.\n" @@ -2198,6 +2292,11 @@ msgid "%s: group %s is the primary group of another user and is not removed.\n" msgstr "" "%s: skupina %s je primární skupinou jiného uživatele a nelze ji odstranit.\n" +#, fuzzy, c-format +#| msgid "%s: cannot remove entry '%s' from %s\n" +msgid "%s: cannot remove entry %lu from %s\n" +msgstr "%s: nelze odstranit záznam „%s“ z %s\n" + #, fuzzy, c-format #| msgid "%s: %s home directory (%s) not found\n" msgid "%s: %s mail spool (%s) not found\n" @@ -2317,6 +2416,18 @@ msgstr " -u, --uid UID nové UID pro uživatelský účet\n" msgid " -U, --unlock unlock the user account\n" msgstr " -U, --unlock odemkne uživatelský účet\n" +msgid " -v, --add-subuids FIRST-LAST add range of subordinate uids\n" +msgstr "" + +msgid " -V, --del-subuids FIRST-LAST remove range of subordinate uids\n" +msgstr "" + +msgid " -w, --add-subgids FIRST-LAST add range of subordinate gids\n" +msgstr "" + +msgid " -W, --del-subgids FIRST-LAST remove range of subordinate gids\n" +msgstr "" + #, fuzzy #| msgid "" #| " -Z, --selinux-user new SELinux user mapping for the user " @@ -2341,6 +2452,16 @@ msgstr "" msgid "%s: user '%s' already exists in %s\n" msgstr "%s: uživatel „%s“ již v %s existuje\n" +#, fuzzy, c-format +#| msgid "%s: invalid date '%s'\n" +msgid "%s: invalid subordinate uid range '%s'\n" +msgstr "%s: chybné datum „%s“\n" + +#, fuzzy, c-format +#| msgid "%s: invalid date '%s'\n" +msgid "%s: invalid subordinate gid range '%s'\n" +msgstr "%s: chybné datum „%s“\n" + #, fuzzy, c-format #| msgid "%s: cannot open %s\n" msgid "%s: no options\n" @@ -2358,6 +2479,11 @@ msgstr "%s: přepínače -e a -f vyžadují stínová hesla\n" msgid "%s: UID '%lu' already exists\n" msgstr "%s: UID „%lu“ již existuje\n" +#, fuzzy, c-format +#| msgid "%s: %s is not authorized to change the password of %s\n" +msgid "%s: %s does not exist, you cannot use the flags %s or %s\n" +msgstr "%s: %s není oprávněn změnit heslo %s\n" + #, c-format msgid "%s: directory %s exists\n" msgstr "%s: adresář %s již existuje\n" @@ -2403,6 +2529,26 @@ msgstr "chyba při změně vlastníka poštovní schránky" msgid "failed to rename mailbox" msgstr "chyba při přejmenovávání poštovní schránky" +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to remove uid range %lu-%lu from '%s'\n" +msgstr "%s: selhala příprava nového %s záznamu „%s“\n" + +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to add uid range %lu-%lu from '%s'\n" +msgstr "%s: selhala příprava nového %s záznamu „%s“\n" + +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to remove gid range %lu-%lu from '%s'\n" +msgstr "%s: selhala příprava nového %s záznamu „%s“\n" + +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to add gid range %lu-%lu from '%s'\n" +msgstr "%s: selhala příprava nového %s záznamu „%s“\n" + #, c-format msgid "" "You have modified %s.\n" @@ -2460,6 +2606,20 @@ msgstr "Soubor nelze zamknout" msgid "Couldn't make backup" msgstr "Zálohování nelze provést." +#, fuzzy, c-format +#| msgid "%s: PAM: %s\n" +msgid "%s: %s: %s\n" +msgstr "%s: PAM: %s\n" + +#, fuzzy, c-format +#| msgid "%s: %s not found in /etc/passwd\n" +msgid "%s: %s returned with status %d\n" +msgstr "%s: %s se v /etc/passwd nenalézá\n" + +#, c-format +msgid "%s: %s killed by signal %d\n" +msgstr "" + #, fuzzy #| msgid "Unable to open group file\n" msgid "failed to open scratch file" @@ -3172,9 +3332,6 @@ msgstr "%s: chybný základní adresář „%s“\n" #~ msgid "%s: can't rewrite password file\n" #~ msgstr "%s: soubor s hesly nelze přepsat\n" -#~ msgid "%s: can't update password file\n" -#~ msgstr "%s: soubor s hesly nelze aktualizovat\n" - #~ msgid "%s: can't update shadow password file\n" #~ msgstr "%s: soubor se stínovými hesly nelze aktualizovat\n" @@ -3196,9 +3353,6 @@ msgstr "%s: chybný základní adresář „%s“\n" #~ msgid "Cannot open the password file.\n" #~ msgstr "Soubor s hesly nelze otevřít.\n" -#~ msgid "%s: %s not found in /etc/passwd\n" -#~ msgstr "%s: %s se v /etc/passwd nenalézá\n" - #~ msgid "Error updating the password entry.\n" #~ msgstr "Chyba při aktualizaci položky v souboru s hesly.\n" @@ -3407,9 +3561,6 @@ msgstr "%s: chybný základní adresář „%s“\n" #~ msgid "%s: can't update shadow group file\n" #~ msgstr "%s: soubor se stínovými hesly nelze aktualizovat\n" -#~ msgid "%s: can't update group file\n" -#~ msgstr "%s: soubor s hesly nelze aktualizovat\n" - #~ msgid "%s: can't delete shadow group file\n" #~ msgstr "%s: soubor se stínovými hesly skupin nelze smazat\n" diff --git a/po/da.gmo b/po/da.gmo new file mode 100644 index 0000000000000000000000000000000000000000..9e067f12fbbb9eafbd25e928cc1f6263ca9a4363 GIT binary patch literal 64695 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 CRd81T literal 0 HcmV?d00001 diff --git a/po/da.po b/po/da.po index ec0c49ad..a8b3be5c 100644 --- a/po/da.po +++ b/po/da.po @@ -20,7 +20,7 @@ msgid "" msgstr "" "Project-Id-Version: shadow\n" "Report-Msgid-Bugs-To: pkg-shadow-devel@lists.alioth.debian.org\n" -"POT-Creation-Date: 2012-05-20 19:52+0200\n" +"POT-Creation-Date: 2016-09-18 21:41-0500\n" "PO-Revision-Date: 2012-01-26 23:57+0100\n" "Last-Translator: Joe Hansen \n" "Language-Team: Danish \n" @@ -435,6 +435,11 @@ msgstr "%s: Ugyldig chroot-sti »%s«\n" msgid "%s: cannot access chroot directory %s: %s\n" msgstr "%s: Kan ikke tilgå chroot-mappe %s: %s\n" +#, fuzzy, c-format +#| msgid "%s: cannot access chroot directory %s: %s\n" +msgid "%s: cannot chdir to chroot directory %s: %s\n" +msgstr "%s: Kan ikke tilgå chroot-mappe %s: %s\n" + #, c-format msgid "%s: unable to chroot to directory %s: %s\n" msgstr "%s: Kan ikke chroot til mappe %s: %s\n" @@ -792,6 +797,11 @@ msgstr "%s: Linje %d: Linjen er for lang\n" msgid "%s: line %d: missing new password\n" msgstr "%s: Linje %d: Mangler ny adgangskode\n" +#, fuzzy, c-format +#| msgid "%s: Failed to write %s: %s\n" +msgid "%s: failed to crypt password with salt '%s': %s\n" +msgstr "%s: Kunne ikke skrive %s: %s\n" + #, c-format msgid "%s: line %d: group '%s' does not exist\n" msgstr "%s: Linje %d: Gruppe »%s« findes ikke\n" @@ -1093,6 +1103,15 @@ msgstr "%s: GID »%lu« findes allerede\n" msgid "%s: Cannot setup cleanup service.\n" msgstr "%s: Kan ikke opsætte tjenesten cleanup.\n" +#, fuzzy +#| msgid "" +#| " -r, --reset reset the counters of login failures\n" +msgid "" +" -f, --force delete group even if it is the primary group " +"of a user\n" +msgstr "" +" -r, --reset nulstil tælleren for mislykkede logind\n" + #, c-format msgid "%s: cannot remove entry '%s' from %s\n" msgstr "%s: Kan ikke fjerne punkt »%s« fra %s\n" @@ -1323,6 +1342,22 @@ msgstr "" " -b, --before DAGE vis kun lastlog-poster, der er ældre\n" " end DAGE\n" +#, fuzzy +#| msgid "" +#| " -a, --all display faillog records for all users\n" +msgid "" +" -C, --clear clear lastlog record of an user (usable only " +"with -u)\n" +msgstr " -a, --all vis faillog-poster for alle brugere\n" + +#, fuzzy +#| msgid "" +#| " -a, --all display faillog records for all users\n" +msgid "" +" -S, --set set lastlog record to current time (usable " +"only with -u)\n" +msgstr " -a, --all vis faillog-poster for alle brugere\n" + msgid "" " -t, --time DAYS print only lastlog records more recent than " "DAYS\n" @@ -1345,6 +1380,24 @@ msgstr "Brugernavn Port Seneste" msgid "**Never logged in**" msgstr "**Har aldrig logget på**" +#, fuzzy, c-format +#| msgid "%s: Failed to get the entry for UID %lu\n" +msgid "%s: Failed to update the entry for UID %lu\n" +msgstr "%s: Kunne ikke indhente punktet for UID %lu\n" + +#, fuzzy, c-format +#| msgid "%s: failed to reset the lastlog entry of UID %lu: %s\n" +msgid "%s: Failed to update the lastlog file\n" +msgstr "%s: Kunne ikke nulstille lastlog-punktet for UID %lu: %s\n" + +#, c-format +msgid "%s: Option -C cannot be used together with option -S\n" +msgstr "" + +#, c-format +msgid "%s: Options -C and -S require option -u to specify the user\n" +msgstr "" + #, c-format msgid "Usage: %s [-p] [name]\n" msgstr "Brug: %s [-p] [navn]\n" @@ -1378,6 +1431,13 @@ msgstr "" "\n" "[Afbrød ikke forbindelsen - root-logind er tilladt.]" +#, c-format +msgid "%s: Cannot possibly work without effective root\n" +msgstr "%s: Kan umuligt arbejde uden effektiv root\n" + +msgid "No utmp entry. You must exec \"login\" from the lowest level \"sh\"" +msgstr "Intet utmp-punkt. Du skal køre »login« fra det laveste »sh-niveau«" + #, c-format msgid "" "\n" @@ -1386,13 +1446,6 @@ msgstr "" "\n" "Logind udløb efter %u sekunder.\n" -#, c-format -msgid "%s: Cannot possibly work without effective root\n" -msgstr "%s: Kan umuligt arbejde uden effektiv root\n" - -msgid "No utmp entry. You must exec \"login\" from the lowest level \"sh\"" -msgstr "Intet utmp-punkt. Du skal køre »login« fra det laveste »sh-niveau«" - #, c-format msgid "login: PAM Failure, aborting: %s\n" msgstr "login: PAM-fejl, afbryder: %s\n" @@ -1465,6 +1518,11 @@ msgstr "Brug: newgrp [-] [gruppe]\n" msgid "Usage: sg group [[-c] command]\n" msgstr "Brug: sg gruppe [[-c] kommando]\n" +#, fuzzy, c-format +#| msgid "%s: Failed to write %s: %s\n" +msgid "%s: failed to crypt password with previous salt: %s\n" +msgstr "%s: Kunne ikke skrive %s: %s\n" + msgid "Invalid password.\n" msgstr "Ugyldig adgangskode.\n" @@ -1531,6 +1589,21 @@ msgstr "%s: Linje %d: chown %s fejlede: %s\n" msgid "%s: line %d: can't update entry\n" msgstr "%s: Linje %d: Kan ikke opdatere punktet\n" +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to prepare new %s entry\n" +msgstr "%s: Kunne ikke forberede det nye %s-punkt »%s«\n" + +#, fuzzy, c-format +#| msgid "%s: can't create user\n" +msgid "%s: can't find subordinate user range\n" +msgstr "%s: Kan ikke oprette bruger\n" + +#, fuzzy, c-format +#| msgid "%s: can't create group\n" +msgid "%s: can't find subordinate group range\n" +msgstr "%s: Kan ikke oprette gruppe\n" + msgid "" " -a, --all report password status on all accounts\n" msgstr "" @@ -1795,12 +1868,6 @@ msgstr "Gik uden om adgangskodegodkendelse.\n" msgid "Please enter your OWN password as authentication.\n" msgstr "Angiv din EGEN adgangskode som godkendelse.\n" -msgid " ...killed.\n" -msgstr " ...dræbt.\n" - -msgid " ...waiting for child to terminate.\n" -msgstr " ...venter på at underproces termineres.\n" - #, c-format msgid "%s: Cannot fork user shell\n" msgstr "%s: Kan ikke forgrene brugerskal\n" @@ -1817,12 +1884,20 @@ msgid "Session terminated, terminating shell..." msgstr "Session termineret, terminerer skal..." #, c-format -msgid "%s: %s\n" -msgstr "%s: %s\n" +msgid " ...killed.\n" +msgstr " ...dræbt.\n" + +#, c-format +msgid " ...waiting for child to terminate.\n" +msgstr " ...venter på at underproces termineres.\n" msgid " ...terminated.\n" msgstr " ...termineret.\n" +#, c-format +msgid "%s: %s\n" +msgstr "%s: %s\n" + msgid "" "Usage: su [options] [LOGIN]\n" "\n" @@ -2106,6 +2181,11 @@ msgstr "%s: Kunne ikke nulstille faillog-punktet for UID %lu: %s\n" msgid "%s: failed to reset the lastlog entry of UID %lu: %s\n" msgstr "%s: Kunne ikke nulstille lastlog-punktet for UID %lu: %s\n" +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to prepare the new %s entry\n" +msgstr "%s: Kunne ikke forberede det nye %s-punkt »%s«\n" + #, c-format msgid "%s: cannot create directory %s\n" msgstr "%s: Kan ikke oprette mappen %s\n" @@ -2149,6 +2229,16 @@ msgstr "%s: Kan ikke oprette tcv-mappe for %s\n" msgid "%s: can't create group\n" msgstr "%s: Kan ikke oprette gruppe\n" +#, fuzzy, c-format +#| msgid "%s: can't create user\n" +msgid "%s: can't create subordinate user IDs\n" +msgstr "%s: Kan ikke oprette bruger\n" + +#, fuzzy, c-format +#| msgid "%s: can't create group\n" +msgid "%s: can't create subordinate group IDs\n" +msgstr "%s: Kan ikke oprette gruppe\n" + #, c-format msgid "" "%s: warning: the home directory already exists.\n" @@ -2195,6 +2285,11 @@ msgid "%s: group %s is the primary group of another user and is not removed.\n" msgstr "" "%s: Gruppe %s er den primære gruppe for en anden bruger og fjernes ikke.\n" +#, fuzzy, c-format +#| msgid "%s: cannot remove entry '%s' from %s\n" +msgid "%s: cannot remove entry %lu from %s\n" +msgstr "%s: Kan ikke fjerne punkt »%s« fra %s\n" + #, c-format msgid "%s: %s mail spool (%s) not found\n" msgstr "%s: %s postkø (%s) er ikke fundet\n" @@ -2316,6 +2411,18 @@ msgstr " -u, --uid UID ny UID til brugerkontoen\n" msgid " -U, --unlock unlock the user account\n" msgstr " -U, --unlock åbn brugerkontoen\n" +msgid " -v, --add-subuids FIRST-LAST add range of subordinate uids\n" +msgstr "" + +msgid " -V, --del-subuids FIRST-LAST remove range of subordinate uids\n" +msgstr "" + +msgid " -w, --add-subgids FIRST-LAST add range of subordinate gids\n" +msgstr "" + +msgid " -W, --del-subgids FIRST-LAST remove range of subordinate gids\n" +msgstr "" + msgid "" " -Z, --selinux-user SEUSER new SELinux user mapping for the user " "account\n" @@ -2337,6 +2444,16 @@ msgstr "" msgid "%s: user '%s' already exists in %s\n" msgstr "%s: Brugeren »%s« findes allerede i %s\n" +#, fuzzy, c-format +#| msgid "%s: invalid date '%s'\n" +msgid "%s: invalid subordinate uid range '%s'\n" +msgstr "%s: Ugyldig dato »%s«\n" + +#, fuzzy, c-format +#| msgid "%s: invalid date '%s'\n" +msgid "%s: invalid subordinate gid range '%s'\n" +msgstr "%s: Ugyldig dato »%s«\n" + #, c-format msgid "%s: no options\n" msgstr "%s: Ingen tilvalg\n" @@ -2353,6 +2470,11 @@ msgstr "%s: Skyggeadgangskoder kræves for -e og -f\n" msgid "%s: UID '%lu' already exists\n" msgstr "%s: UID »%lu« findes allerede\n" +#, fuzzy, c-format +#| msgid "%s: %s is not authorized to change the password of %s\n" +msgid "%s: %s does not exist, you cannot use the flags %s or %s\n" +msgstr "%s: %s er ikke godkendt til at ændre adgangskoden på %s\n" + #, c-format msgid "%s: directory %s exists\n" msgstr "%s: Mappen %s findes\n" @@ -2397,6 +2519,26 @@ msgstr "kunne ikke ændre postkassens ejer" msgid "failed to rename mailbox" msgstr "kunne ikke omdøbe postkasse" +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to remove uid range %lu-%lu from '%s'\n" +msgstr "%s: Kunne ikke forberede det nye %s-punkt »%s«\n" + +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to add uid range %lu-%lu from '%s'\n" +msgstr "%s: Kunne ikke forberede det nye %s-punkt »%s«\n" + +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to remove gid range %lu-%lu from '%s'\n" +msgstr "%s: Kunne ikke forberede det nye %s-punkt »%s«\n" + +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to add gid range %lu-%lu from '%s'\n" +msgstr "%s: Kunne ikke forberede det nye %s-punkt »%s«\n" + #, c-format msgid "" "You have modified %s.\n" @@ -2450,6 +2592,20 @@ msgstr "Kunne ikke låse filen" msgid "Couldn't make backup" msgstr "Kunne ikke lave sikkerhedskopi" +#, fuzzy, c-format +#| msgid "%s: PAM: %s\n" +msgid "%s: %s: %s\n" +msgstr "%s: PAM: %s\n" + +#, fuzzy, c-format +#| msgid "%s: nscd exited with status %d" +msgid "%s: %s returned with status %d\n" +msgstr "%s: nscd afsluttede med status %d" + +#, c-format +msgid "%s: %s killed by signal %d\n" +msgstr "" + msgid "failed to open scratch file" msgstr "kunne ikke åbne scratch-fil" diff --git a/po/de.gmo b/po/de.gmo new file mode 100644 index 0000000000000000000000000000000000000000..d9918af07416e674d4e0151f1b86ccc83c126ab4 GIT binary patch literal 70203 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 literal 0 HcmV?d00001 diff --git a/po/de.po b/po/de.po index 702c2636..3f95e095 100644 --- a/po/de.po +++ b/po/de.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: shadow 4.1.4.2\n" "Report-Msgid-Bugs-To: pkg-shadow-devel@lists.alioth.debian.org\n" -"POT-Creation-Date: 2012-05-20 19:52+0200\n" +"POT-Creation-Date: 2016-09-18 21:41-0500\n" "PO-Revision-Date: 2012-01-18 21:44+0100\n" "Last-Translator: Holger Wansing \n" "Language-Team: German \n" @@ -429,6 +429,11 @@ msgstr "%s: Ungültiger chroot-Pfad »%s«\n" msgid "%s: cannot access chroot directory %s: %s\n" msgstr "%s: auf chroot-Verzeichnis %s kann nicht zugegriffen werden: %s\n" +#, fuzzy, c-format +#| msgid "%s: cannot access chroot directory %s: %s\n" +msgid "%s: cannot chdir to chroot directory %s: %s\n" +msgstr "%s: auf chroot-Verzeichnis %s kann nicht zugegriffen werden: %s\n" + #, c-format msgid "%s: unable to chroot to directory %s: %s\n" msgstr "%s: chroot-Wechsel in Verzeichnis %s nicht möglich: %s\n" @@ -797,6 +802,11 @@ msgstr "%s: Zeile %d: Zeile zu lang\n" msgid "%s: line %d: missing new password\n" msgstr "%s: Zeile %d: Neues Passwort fehlt\n" +#, fuzzy, c-format +#| msgid "%s: Failed to write %s: %s\n" +msgid "%s: failed to crypt password with salt '%s': %s\n" +msgstr "%s: Schreiben von %s fehlgeschlagen: %s\n" + #, c-format msgid "%s: line %d: group '%s' does not exist\n" msgstr "%s: Zeile %d: Gruppe »%s« existiert nicht\n" @@ -1110,6 +1120,16 @@ msgstr "%s: GID »%lu« existiert bereits.\n" msgid "%s: Cannot setup cleanup service.\n" msgstr "%s: Ihr Benutzername konnte nicht bestimmt werden.\n" +#, fuzzy +#| msgid "" +#| " -r, --reset reset the counters of login failures\n" +msgid "" +" -f, --force delete group even if it is the primary group " +"of a user\n" +msgstr "" +" -r, --reset Zähler fehlgeschlagener Anmeldungen\n" +" zurücksetzen\n" + #, c-format msgid "%s: cannot remove entry '%s' from %s\n" msgstr "%s: Eintrag »%s« konnte nicht aus %s entfernt werden.\n" @@ -1346,6 +1366,26 @@ msgstr "" "älter\n" " als TAGE sind\n" +#, fuzzy +#| msgid "" +#| " -a, --all display faillog records for all users\n" +msgid "" +" -C, --clear clear lastlog record of an user (usable only " +"with -u)\n" +msgstr "" +" -a, --all Aufzeichnungen fehlgeschlagener Anmeldungen\n" +" für alle Benutzer anzeigen\n" + +#, fuzzy +#| msgid "" +#| " -a, --all display faillog records for all users\n" +msgid "" +" -S, --set set lastlog record to current time (usable " +"only with -u)\n" +msgstr "" +" -a, --all Aufzeichnungen fehlgeschlagener Anmeldungen\n" +" für alle Benutzer anzeigen\n" + msgid "" " -t, --time DAYS print only lastlog records more recent than " "DAYS\n" @@ -1368,6 +1408,24 @@ msgstr "Benutzername Port Letzter" msgid "**Never logged in**" msgstr "**Noch nie angemeldet**" +#, fuzzy, c-format +#| msgid "%s: Failed to get the entry for UID %lu\n" +msgid "%s: Failed to update the entry for UID %lu\n" +msgstr "%s: Auslesen des Eintrags für UID %lu fehlgeschlagen\n" + +#, fuzzy, c-format +#| msgid "%s: failed to reset the lastlog entry of UID %lu: %s\n" +msgid "%s: Failed to update the lastlog file\n" +msgstr "%s: Zurücksetzen des lastlog-Eintrags für UID %lu fehlgeschlagen: %s\n" + +#, c-format +msgid "%s: Option -C cannot be used together with option -S\n" +msgstr "" + +#, c-format +msgid "%s: Options -C and -S require option -u to specify the user\n" +msgstr "" + #, c-format msgid "Usage: %s [-p] [name]\n" msgstr "Aufruf: %s [-p] [Name]\n" @@ -1401,6 +1459,14 @@ msgstr "" "\n" "[Trennung abgebrochen -- root-Login erlaubt.]" +#, c-format +msgid "%s: Cannot possibly work without effective root\n" +msgstr "%s: Arbeit ohne effektive root-Rechte eventuell nicht möglich\n" + +msgid "No utmp entry. You must exec \"login\" from the lowest level \"sh\"" +msgstr "" +"Kein utmp-Eintrag. Sie müssen »login« vom niedrigsten »sh«-Level ausführen." + #, c-format msgid "" "\n" @@ -1410,14 +1476,6 @@ msgstr "" "Login nach %u Sekunden wegen\n" "Zeitüberschreitung abgebrochen.\n" -#, c-format -msgid "%s: Cannot possibly work without effective root\n" -msgstr "%s: Arbeit ohne effektive root-Rechte eventuell nicht möglich\n" - -msgid "No utmp entry. You must exec \"login\" from the lowest level \"sh\"" -msgstr "" -"Kein utmp-Eintrag. Sie müssen »login« vom niedrigsten »sh«-Level ausführen." - #, c-format msgid "login: PAM Failure, aborting: %s\n" msgstr "login: PAM-Fehler, Abbruch: %s\n" @@ -1490,6 +1548,11 @@ msgstr "Aufruf: newgrp [-] [Gruppe]\n" msgid "Usage: sg group [[-c] command]\n" msgstr "Aufruf: sg Gruppe [[-c] Befehl]\n" +#, fuzzy, c-format +#| msgid "%s: Failed to write %s: %s\n" +msgid "%s: failed to crypt password with previous salt: %s\n" +msgstr "%s: Schreiben von %s fehlgeschlagen: %s\n" + msgid "Invalid password.\n" msgstr "Ungültiges Passwort.\n" @@ -1558,6 +1621,21 @@ msgstr "%s: Zeile %d: chown %s (Eigentümer ändern) fehlgeschlagen: %s\n" msgid "%s: line %d: can't update entry\n" msgstr "%s: Zeile %d: Eintrag kann nicht aktualisiert werden.\n" +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to prepare new %s entry\n" +msgstr "%s: Vorbereiten des neuen %s-Eintrags »%s« fehlgeschlagen.\n" + +#, fuzzy, c-format +#| msgid "%s: can't create user\n" +msgid "%s: can't find subordinate user range\n" +msgstr "%s: Benutzer kann nicht erstellt werden\n" + +#, fuzzy, c-format +#| msgid "%s: can't create group\n" +msgid "%s: can't find subordinate group range\n" +msgstr "%s: Gruppe kann nicht erzeugt werden\n" + msgid "" " -a, --all report password status on all accounts\n" msgstr "" @@ -1828,12 +1906,6 @@ msgstr "Passwort-Authentifizierung umgangen.\n" msgid "Please enter your OWN password as authentication.\n" msgstr "Bitte geben Sie Ihr EIGENES Passwort als Authentifizierung ein.\n" -msgid " ...killed.\n" -msgstr " ... abgeschossen.\n" - -msgid " ...waiting for child to terminate.\n" -msgstr " ... Warten auf Beendigung des Kindprozesses.\n" - #, c-format msgid "%s: Cannot fork user shell\n" msgstr "%s: Prozessaufspaltung (fork) für Benutzer-Shell nicht möglich\n" @@ -1850,12 +1922,20 @@ msgid "Session terminated, terminating shell..." msgstr "Sitzung abgebrochen, Shell wird beendet ..." #, c-format -msgid "%s: %s\n" -msgstr "%s: %s\n" +msgid " ...killed.\n" +msgstr " ... abgeschossen.\n" + +#, c-format +msgid " ...waiting for child to terminate.\n" +msgstr " ... Warten auf Beendigung des Kindprozesses.\n" msgid " ...terminated.\n" msgstr " ... abgebrochen.\n" +#, c-format +msgid "%s: %s\n" +msgstr "%s: %s\n" + msgid "" "Usage: su [options] [LOGIN]\n" "\n" @@ -2151,6 +2231,11 @@ msgstr "%s: Zurücksetzen des faillog-Eintrags für UID %lu fehlgeschlagen: %s\n msgid "%s: failed to reset the lastlog entry of UID %lu: %s\n" msgstr "%s: Zurücksetzen des lastlog-Eintrags für UID %lu fehlgeschlagen: %s\n" +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to prepare the new %s entry\n" +msgstr "%s: Vorbereiten des neuen %s-Eintrags »%s« fehlgeschlagen.\n" + #, c-format msgid "%s: cannot create directory %s\n" msgstr "%s: Verzeichnis %s kann nicht erstellt werden.\n" @@ -2194,6 +2279,16 @@ msgstr "%s: Erstellen des tcb-Verzeichnisses für %s fehlgeschlagen\n" msgid "%s: can't create group\n" msgstr "%s: Gruppe kann nicht erzeugt werden\n" +#, fuzzy, c-format +#| msgid "%s: can't create user\n" +msgid "%s: can't create subordinate user IDs\n" +msgstr "%s: Benutzer kann nicht erstellt werden\n" + +#, fuzzy, c-format +#| msgid "%s: can't create group\n" +msgid "%s: can't create subordinate group IDs\n" +msgstr "%s: Gruppe kann nicht erzeugt werden\n" + #, c-format msgid "" "%s: warning: the home directory already exists.\n" @@ -2245,6 +2340,11 @@ msgstr "" "%s: Gruppe %s ist die primäre Gruppe eines anderen Benutzers und wird\n" "nicht entfernt.\n" +#, fuzzy, c-format +#| msgid "%s: cannot remove entry '%s' from %s\n" +msgid "%s: cannot remove entry %lu from %s\n" +msgstr "%s: Eintrag »%s« konnte nicht aus %s entfernt werden.\n" + #, c-format msgid "%s: %s mail spool (%s) not found\n" msgstr "%s: %s Mail-Warteschlange (%s) nicht gefunden\n" @@ -2370,6 +2470,18 @@ msgstr " -u, --uid UID Neue UID des Benutzerzugangs\n" msgid " -U, --unlock unlock the user account\n" msgstr " -U, --unlock Den Benutzerzugang entsperren\n" +msgid " -v, --add-subuids FIRST-LAST add range of subordinate uids\n" +msgstr "" + +msgid " -V, --del-subuids FIRST-LAST remove range of subordinate uids\n" +msgstr "" + +msgid " -w, --add-subgids FIRST-LAST add range of subordinate gids\n" +msgstr "" + +msgid " -W, --del-subgids FIRST-LAST remove range of subordinate gids\n" +msgstr "" + msgid "" " -Z, --selinux-user SEUSER new SELinux user mapping for the user " "account\n" @@ -2391,6 +2503,16 @@ msgstr "" msgid "%s: user '%s' already exists in %s\n" msgstr "%s: Benutzer »%s« existiert bereits in %s.\n" +#, fuzzy, c-format +#| msgid "%s: invalid date '%s'\n" +msgid "%s: invalid subordinate uid range '%s'\n" +msgstr "%s: Ungültiges Datum »%s«\n" + +#, fuzzy, c-format +#| msgid "%s: invalid date '%s'\n" +msgid "%s: invalid subordinate gid range '%s'\n" +msgstr "%s: Ungültiges Datum »%s«\n" + #, c-format msgid "%s: no options\n" msgstr "%s: keine Optionen\n" @@ -2407,6 +2529,11 @@ msgstr "%s: shadow-Passwörter für -e und -f erforderlich\n" msgid "%s: UID '%lu' already exists\n" msgstr "%s: UID »%lu« existiert bereits\n" +#, fuzzy, c-format +#| msgid "%s: %s is not authorized to change the password of %s\n" +msgid "%s: %s does not exist, you cannot use the flags %s or %s\n" +msgstr "%s: %s ist nicht berechtigt, das Passwort von %s zu ändern.\n" + #, c-format msgid "%s: directory %s exists\n" msgstr "%s: Verzeichnis %s existiert\n" @@ -2454,6 +2581,26 @@ msgstr "Fehler beim Ändern des mailbox-Besitzers" msgid "failed to rename mailbox" msgstr "Fehler beim Umbenennen von mailbox" +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to remove uid range %lu-%lu from '%s'\n" +msgstr "%s: Vorbereiten des neuen %s-Eintrags »%s« fehlgeschlagen.\n" + +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to add uid range %lu-%lu from '%s'\n" +msgstr "%s: Vorbereiten des neuen %s-Eintrags »%s« fehlgeschlagen.\n" + +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to remove gid range %lu-%lu from '%s'\n" +msgstr "%s: Vorbereiten des neuen %s-Eintrags »%s« fehlgeschlagen.\n" + +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to add gid range %lu-%lu from '%s'\n" +msgstr "%s: Vorbereiten des neuen %s-Eintrags »%s« fehlgeschlagen.\n" + #, c-format msgid "" "You have modified %s.\n" @@ -2508,6 +2655,20 @@ msgstr "Datei konnte nicht gesperrt werden" msgid "Couldn't make backup" msgstr "Sicherung konnte nicht erstellt werden" +#, fuzzy, c-format +#| msgid "%s: PAM: %s\n" +msgid "%s: %s: %s\n" +msgstr "%s: PAM: %s\n" + +#, fuzzy, c-format +#| msgid "%s: nscd exited with status %d" +msgid "%s: %s returned with status %d\n" +msgstr "%s: nscd wurde mit Status %d beendet" + +#, c-format +msgid "%s: %s killed by signal %d\n" +msgstr "" + msgid "failed to open scratch file" msgstr "Öffnen der scratch-Datei fehlgeschlagen" diff --git a/po/dz.gmo b/po/dz.gmo new file mode 100644 index 0000000000000000000000000000000000000000..81e7dc8569ea547c9c831c2f04992c6294570107 GIT binary patch literal 33439 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\n" "Language-Team: dzongkha \n" @@ -444,6 +444,11 @@ msgstr "%s: ནུས་མེད་ཀྱི་ ཁྱིམ་གྱི་བ msgid "%s: cannot access chroot directory %s: %s\n" msgstr "%s: སྣོད་ཐོ་ %s གསར་བསྐྲུན་འབད་མི་ཚུགས།\n" +#, fuzzy, c-format +#| msgid "%s: cannot create directory %s\n" +msgid "%s: cannot chdir to chroot directory %s: %s\n" +msgstr "%s: སྣོད་ཐོ་ %s གསར་བསྐྲུན་འབད་མི་ཚུགས།\n" + #, fuzzy, c-format #| msgid "%s: cannot create directory %s\n" msgid "%s: unable to chroot to directory %s: %s\n" @@ -785,6 +790,11 @@ msgstr "%s: གྲལ་ཐིག་ %d: གྲལ་ཐིག་རིང་ད msgid "%s: line %d: missing new password\n" msgstr "%s: གྲལ་ཐིག་ %d: ཆོག་ཡིག་གསརཔ་ བརླག་སྟོར་ཞུགས་པ།\n" +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to crypt password with salt '%s': %s\n" +msgstr "%s: ཁེ་དབང་(%s)ཚུ་བཀོག་ནིའི་འཐུས་ཤོར་བྱུང་ཡོདཔ།\n" + #, fuzzy, c-format #| msgid "%s: group %s does not exist\n" msgid "%s: line %d: group '%s' does not exist\n" @@ -1079,6 +1089,11 @@ msgstr "" msgid "%s: Cannot setup cleanup service.\n" msgstr "%s: ཁྱོད་ཀྱི་ལག་ལེན་པའི་མིང་ གཏན་འབེབས་བཟོ་མི་ཚུགས།\n" +msgid "" +" -f, --force delete group even if it is the primary group " +"of a user\n" +msgstr "" + #, fuzzy, c-format #| msgid "%s: cannot rename directory %s to %s\n" msgid "%s: cannot remove entry '%s' from %s\n" @@ -1295,6 +1310,16 @@ msgid "" " -b, --before DAYS print only lastlog records older than DAYS\n" msgstr "" +msgid "" +" -C, --clear clear lastlog record of an user (usable only " +"with -u)\n" +msgstr "" + +msgid "" +" -S, --set set lastlog record to current time (usable " +"only with -u)\n" +msgstr "" + msgid "" " -t, --time DAYS print only lastlog records more recent than " "DAYS\n" @@ -1313,6 +1338,24 @@ msgstr "ལག་ལེན་པའི་མིང་ འདྲ msgid "**Never logged in**" msgstr "**ནམ་ཡང་ནང་བསྐྱོད་མ་འབད་**" +#, fuzzy, c-format +#| msgid "%s: cannot create directory %s\n" +msgid "%s: Failed to update the entry for UID %lu\n" +msgstr "%s: སྣོད་ཐོ་ %s གསར་བསྐྲུན་འབད་མི་ཚུགས།\n" + +#, fuzzy, c-format +#| msgid "%s: can't update password file\n" +msgid "%s: Failed to update the lastlog file\n" +msgstr "%s: ཆོག་ཡིག་ཡིག་སྣོད་ དུས་མཐུན་བཟོ་མ་ཚུགས།\n" + +#, c-format +msgid "%s: Option -C cannot be used together with option -S\n" +msgstr "" + +#, c-format +msgid "%s: Options -C and -S require option -u to specify the user\n" +msgstr "" + #, c-format msgid "Usage: %s [-p] [name]\n" msgstr "ལག་ལེན་: %s [-p] [མིང་]\n" @@ -1346,6 +1389,14 @@ msgstr "" "\n" "[མཐུད་བཏོག་ཟུར་ཏེ་འགྱོ་ཡོདཔ་ --རྩ་བའི་ནང་བསྐྱོད་མི་ཆོག]" +#, c-format +msgid "%s: Cannot possibly work without effective root\n" +msgstr "" + +msgid "No utmp entry. You must exec \"login\" from the lowest level \"sh\"" +msgstr "" +"utmpཐོ་བཀོད་མིན་འདུག ཁྱོད་ཀྱིས་ གནས་རིམ་དམའ་ཤོས་\"sh\"གི་ནང་ལས་ \"login\"ལག་ལེན་འཐབ་དགོ" + #, fuzzy, c-format #| msgid "" #| "\n" @@ -1357,14 +1408,6 @@ msgstr "" "\n" "%d སྐར་ཆག་གི་ཤུལ་མར་ ནང་བསྐྱོད་ངལ་མཚམས་བྱུང་ཡོདཔ།\n" -#, c-format -msgid "%s: Cannot possibly work without effective root\n" -msgstr "" - -msgid "No utmp entry. You must exec \"login\" from the lowest level \"sh\"" -msgstr "" -"utmpཐོ་བཀོད་མིན་འདུག ཁྱོད་ཀྱིས་ གནས་རིམ་དམའ་ཤོས་\"sh\"གི་ནང་ལས་ \"login\"ལག་ལེན་འཐབ་དགོ" - #, c-format msgid "login: PAM Failure, aborting: %s\n" msgstr "ནང་བསྐྱོད་: པི་ཨེ་ཨེམ་འཐུས་ཤོར་ བར་བཤོལ་དོ་: %s\n" @@ -1441,6 +1484,11 @@ msgstr "ལག་ལེན་: newgrp [-][ སྡེ་ཚན་]\n" msgid "Usage: sg group [[-c] command]\n" msgstr "ལག་ལེན་: sg group [[-c]བརྡ་བཀོད་ ]\n" +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to crypt password with previous salt: %s\n" +msgstr "%s: ཁེ་དབང་(%s)ཚུ་བཀོག་ནིའི་འཐུས་ཤོར་བྱུང་ཡོདཔ།\n" + #, fuzzy msgid "Invalid password.\n" msgstr "ཆོག་ཡིག་རྙིངམ་:" @@ -1510,6 +1558,20 @@ msgstr "%s: གྲལ་ཐིག་ %d: chown འཐུས་ཤོར་བྱ msgid "%s: line %d: can't update entry\n" msgstr "%s: གྲལ་ཐིག་ %d: ཐོ་བཀོད་དུས་མཐུན་བཟོ་མི་ཚུགས།\n" +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to prepare new %s entry\n" +msgstr "%s: ཁེ་དབང་(%s)ཚུ་བཀོག་ནིའི་འཐུས་ཤོར་བྱུང་ཡོདཔ།\n" + +#, fuzzy, c-format +msgid "%s: can't find subordinate user range\n" +msgstr "%s: %sགསར་བསྐྲུན་འབད་མི་ཚུགས།\n" + +#, fuzzy, c-format +#| msgid "%s: can't update group file\n" +msgid "%s: can't find subordinate group range\n" +msgstr "%s: སྡེ་ཚན་ཡིག་སྣོད་ དུས་མཐུན་བཟོ་མི་ཚུགས།\n" + msgid "" " -a, --all report password status on all accounts\n" msgstr "" @@ -1760,12 +1822,6 @@ msgstr "ཆོག་ཡིག་བདེན་བཤད་ཟུར་ལས་ msgid "Please enter your OWN password as authentication.\n" msgstr "ཁྱོད་རའི་ཆོག་ཡིག་འདི་ བདེན་བཤད་སྦེ་བཙུགས།\n" -msgid " ...killed.\n" -msgstr "" - -msgid " ...waiting for child to terminate.\n" -msgstr "" - #, fuzzy, c-format #| msgid "%s: cannot lock file %s\n" msgid "%s: Cannot fork user shell\n" @@ -1783,12 +1839,20 @@ msgid "Session terminated, terminating shell..." msgstr "" #, c-format -msgid "%s: %s\n" -msgstr "%s: %s\n" +msgid " ...killed.\n" +msgstr "" + +#, c-format +msgid " ...waiting for child to terminate.\n" +msgstr "" msgid " ...terminated.\n" msgstr "" +#, c-format +msgid "%s: %s\n" +msgstr "%s: %s\n" + #, fuzzy msgid "" "Usage: su [options] [LOGIN]\n" @@ -2053,6 +2117,11 @@ msgstr "" msgid "%s: failed to reset the lastlog entry of UID %lu: %s\n" msgstr "" +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to prepare the new %s entry\n" +msgstr "%s: ཁེ་དབང་(%s)ཚུ་བཀོག་ནིའི་འཐུས་ཤོར་བྱུང་ཡོདཔ།\n" + #, c-format msgid "%s: cannot create directory %s\n" msgstr "%s: སྣོད་ཐོ་ %s གསར་བསྐྲུན་འབད་མི་ཚུགས།\n" @@ -2098,6 +2167,14 @@ msgstr "%s: སྣོད་ཐོ་ %s གསར་བསྐྲུན་འབ msgid "%s: can't create group\n" msgstr "%s: %sགསར་བསྐྲུན་འབད་མི་ཚུགས།\n" +#, fuzzy, c-format +msgid "%s: can't create subordinate user IDs\n" +msgstr "%s: %sགསར་བསྐྲུན་འབད་མི་ཚུགས།\n" + +#, fuzzy, c-format +msgid "%s: can't create subordinate group IDs\n" +msgstr "%s: %sགསར་བསྐྲུན་འབད་མི་ཚུགས།\n" + #, c-format msgid "" "%s: warning: the home directory already exists.\n" @@ -2139,6 +2216,11 @@ msgid "%s: group %s is the primary group of another user and is not removed.\n" msgstr "" "%s: ལག་ལེན་པ་གཞན་གྱི་དོན་ལུ་ གཞི་རིམ་སྡེ་ཚན་ཅིག་ཨིན་མི་སྡེ་ཚན་ %sའདི་ རྩ་བསྐྲད་གཏང་མི་ཚུགས།\n" +#, fuzzy, c-format +#| msgid "%s: cannot rename directory %s to %s\n" +msgid "%s: cannot remove entry %lu from %s\n" +msgstr "%s: སྣོད་ཐོ་ %s འདི་ %s ལུ་ བསྐྱར་མིང་བཏགས་མི་ཚུགས།\n" + #, fuzzy, c-format #| msgid "%s: invalid home directory '%s'\n" msgid "%s: %s mail spool (%s) not found\n" @@ -2246,6 +2328,18 @@ msgstr "" msgid " -U, --unlock unlock the user account\n" msgstr "" +msgid " -v, --add-subuids FIRST-LAST add range of subordinate uids\n" +msgstr "" + +msgid " -V, --del-subuids FIRST-LAST remove range of subordinate uids\n" +msgstr "" + +msgid " -w, --add-subgids FIRST-LAST add range of subordinate gids\n" +msgstr "" + +msgid " -W, --del-subgids FIRST-LAST remove range of subordinate gids\n" +msgstr "" + msgid "" " -Z, --selinux-user SEUSER new SELinux user mapping for the user " "account\n" @@ -2262,6 +2356,16 @@ msgstr "" msgid "%s: user '%s' already exists in %s\n" msgstr "%s: ལག་ལེན་པ་ %sཡོདཔ་ཨིན།\n" +#, fuzzy, c-format +#| msgid "%s: invalid date '%s'\n" +msgid "%s: invalid subordinate uid range '%s'\n" +msgstr "%s: ནུས་མེད་ཚེས་གྲངས་ '%s'།\n" + +#, fuzzy, c-format +#| msgid "%s: invalid date '%s'\n" +msgid "%s: invalid subordinate gid range '%s'\n" +msgstr "%s: ནུས་མེད་ཚེས་གྲངས་ '%s'།\n" + #, fuzzy, c-format #| msgid "%s: cannot open file %s\n" msgid "%s: no options\n" @@ -2279,6 +2383,10 @@ msgstr "%s: -e aདང་ -f གཉིས་ལུ་དངོས་མཁོ་ msgid "%s: UID '%lu' already exists\n" msgstr "" +#, c-format +msgid "%s: %s does not exist, you cannot use the flags %s or %s\n" +msgstr "" + #, c-format msgid "%s: directory %s exists\n" msgstr "%s: སྣོད་ཐོ་ %sའདི་ཡོདཔཨིན།\n" @@ -2321,6 +2429,26 @@ msgstr "ཡིག་སྒྲོམ་བདག་པོ་སོར་ནི་ msgid "failed to rename mailbox" msgstr "ཡིག་སྒྲོམ་གྱི་བསྐྱར་མིང་བཏགས་ནི་ལུ་ འཛོལ་བ།" +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to remove uid range %lu-%lu from '%s'\n" +msgstr "%s: ཁེ་དབང་(%s)ཚུ་བཀོག་ནིའི་འཐུས་ཤོར་བྱུང་ཡོདཔ།\n" + +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to add uid range %lu-%lu from '%s'\n" +msgstr "%s: ཁེ་དབང་(%s)ཚུ་བཀོག་ནིའི་འཐུས་ཤོར་བྱུང་ཡོདཔ།\n" + +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to remove gid range %lu-%lu from '%s'\n" +msgstr "%s: ཁེ་དབང་(%s)ཚུ་བཀོག་ནིའི་འཐུས་ཤོར་བྱུང་ཡོདཔ།\n" + +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to add gid range %lu-%lu from '%s'\n" +msgstr "%s: ཁེ་དབང་(%s)ཚུ་བཀོག་ནིའི་འཐུས་ཤོར་བྱུང་ཡོདཔ།\n" + #, c-format msgid "" "You have modified %s.\n" @@ -2383,6 +2511,20 @@ msgstr "ཡིག་སྣོད་ལྡེ་མིག་བརྐྱབས་ msgid "Couldn't make backup" msgstr "རྒྱབ་ཐག་བཟོ་མ་ཚུགས།" +#, fuzzy, c-format +#| msgid "%s: %s\n" +msgid "%s: %s: %s\n" +msgstr "%s: %s\n" + +#, fuzzy, c-format +#| msgid "%s: %s not found in /etc/passwd\n" +msgid "%s: %s returned with status %d\n" +msgstr "%s: /etc/passwd ནང་ལུ་ %s མ་ཐོབ།\n" + +#, c-format +msgid "%s: %s killed by signal %d\n" +msgstr "" + #, fuzzy msgid "failed to open scratch file" msgstr "%s: སྡེ་ཚན་ཡིག་སྣོད་ ཁ་ཕྱེ་མ་ཚུགས།\n" @@ -2959,9 +3101,6 @@ msgstr "%s: ནུས་མེད་གཞི་རྟེན་སྣོད་ #~ msgid "%s: can't rewrite password file\n" #~ msgstr "%s: ཆོག་ཡིག་ཡིག་སྣོད་ ལོག་འབྲི་མ་ཚུགས།\n" -#~ msgid "%s: can't update password file\n" -#~ msgstr "%s: ཆོག་ཡིག་ཡིག་སྣོད་ དུས་མཐུན་བཟོ་མ་ཚུགས།\n" - #~ msgid "%s: can't update shadow password file\n" #~ msgstr "%s: གྱིབ་མའི་ཆོག་ཡིག་ཡིག་སྣོད་ དུས་མཐུན་བཟོ་མ་ཚུགས།\n" @@ -2983,9 +3122,6 @@ msgstr "%s: ནུས་མེད་གཞི་རྟེན་སྣོད་ #~ msgid "Cannot open the password file.\n" #~ msgstr "ཆོག་ཡིག་ཡིག་སྣོད་ ཁ་ཕྱེ་མི་ཚུགས།\n" -#~ msgid "%s: %s not found in /etc/passwd\n" -#~ msgstr "%s: /etc/passwd ནང་ལུ་ %s མ་ཐོབ།\n" - #~ msgid "Error updating the password entry.\n" #~ msgstr "ཆོག་ཡིག་ཐོ་བཀོད་དུས་མཐུན་འབདཝ་ད་ལུ་ འཛོལ་བ།\n" @@ -3178,9 +3314,6 @@ msgstr "%s: ནུས་མེད་གཞི་རྟེན་སྣོད་ #~ msgid "%s: can't update shadow group file\n" #~ msgstr "%s: གྱིབ་མའི་སྡེ་ཚན་ཡིག་སྣོད་ དུས་མཐུན་བཟོ་མི་ཚུགས།\n" -#~ msgid "%s: can't update group file\n" -#~ msgstr "%s: སྡེ་ཚན་ཡིག་སྣོད་ དུས་མཐུན་བཟོ་མི་ཚུགས།\n" - #~ msgid "%s: can't delete shadow group file\n" #~ msgstr "%s: གྱིབ་མའི་སྡེ་ཚན་ཡིག་སྣོད་ བཏོན་གཏང་མི་ཚུགས།\n" diff --git a/po/el.gmo b/po/el.gmo new file mode 100644 index 0000000000000000000000000000000000000000..3d181fa5c3317b7f9fe3efabc241cda5699c94a4 GIT binary patch literal 86879 zcmdqK37nl(k^X;!3(#(Wiim<2Bqo7$7DR<$l#m37WHXB_F~m;yO{Yz7_U$Ib6%bSu za3UbeA|O#l4M9MJ02ywW2^Ou2(Ill-z z9{eh(`a51wsVoA|0+)a{gS!4}a3y#Wl~P6JN>J%O3!VZV_#$Wk&jh~;-Ux01M<`tF z`5CwnJRV|R3ceAX3w|=-U%;1fJ_lxzwQ@12dOrb*?kAq;?OqLvuJ?dy@5A77aO#UI zmHFTnQ1yKRd=I!km7E8@9~=Rn^%8II<)F&{ELaB*hA4`vyd6}3JqU{4NhkUJQ$bi% zxewd|{t8rmuZ9SIR(60Y=a-=9?WU6`y0RTqdw&XwKgW@vnnIH-o2v=YkJ_;^T`TLiJq;s(-!!(uI`+Df~6y zsi3a!1SJQ`Bz`Ob#n|7T5QjQVemNcNoy*V zqrsCw_(hl5`PB`-e##m7U|dH&-; z$;%q>#o*gPmH$~#bbJp~KmH!9g415*?SC1lc8`J20dE420zU;l9efy+y!{0f{Rehc zDo+Jp1d8s{L0umNXMi5rrD(9!5(mk!m%by3nfb+8h{$05KASix(FP#4YR6ie3^Ky;{)y^&u zRaQ9{d^Y$gQ2Ot?;ETY?8(eR!1=YS=0zL>H#rZ?wyrb9oISri8^+jM6ybM%-?f@mn zUjo%X4}+rbe?al&=^MTNSzwj(C7|*Rf=YKOC_ZfiMaO5u^@l-~`&UqMdq|(>I}WUJ zz5-M~*TeZ0p!oSQ@Cfjmp!oMEa0)o<)lScupvtR*s`s6s(%%6-5BwUae)uyedZund zr-G+~;^Wz172FI?1K$Il1b!Nnetb;7<5R)8oIe-TxbFg|gYN<-gS$Y{{}8D1A2;Cr zeh4T&&IVQfX`tkE1gwH@0ae~D;4$DgL6!H|K`;MkQ0HfW;_n+k)pHd%6TAylzJ~%H zIOOHd1x4RE;8gG(pz8k^sCIuBlwAE86g>wFQzm#6cqMo*C_XM@@T=cn1FD}d1=TMf z4(E+<{xk4st{*Vsd_NJaa=so^Id2AE0)7Bw2vzb>4sHO|p8G(h+YMI1-+`jz>0{oW7lD$O6`=Sx28vHN zf#UBMz?tArzyrZU&-H$t4yr$23M$TQ2DO`RnKR_{f9uc=W&~zFV6w1oSyLfqw&^1|GD< z_2v|iOO?6cTfvWm&j(-fTBmCSd^+b>fG2|=0>$5-fv1AM2Rp!*yw3T(2z(LeHBj|k zAMm4~==uyOetaK%2Ds1bot{I%XK_9gJOMl%d;)ke_!Mv}sPT3axB&bfsCFFn2KPHo z0L7PKP}i>x*SCXD=KO~Ne*;Q>CcV++;j!R;oKFMA&tt)7gD(dU00+U7z&C-%gAafz z@4vyvf&0D5>3%XOxi}hBf4mq}`__SnfSW<_>F>Z}!E3|)2KXG#9|qOl$Di-z9Rx~# zW`I@j3{do(2ObPw0#?BrLCNc=RKLCxlw5xR zRKBl+D*un5~zZjS?Xy%x?d1$F-upz41J zRKNZzVC5p0-vdDL;~4PXNyq`He2;&N+wB>k`1dOCncx-Rq2R5c%KaQz1^*dTKm88u z1t0TPm&Z+@`sIz_6!6{P;ov93_3wZx@4o^b@HS6(3|Qs*O7OYhC@A@U5BNmzBcS+p z4=BFw2F34(z}es*0#3Wc=L>5<$=S7FCwLF2avug&ZpYhQjt>J>-m#$M=rmCIx~R_HQq)*m3uj;cHaU@UOo*j2EPxg{?1FC zZ}UN=UlVW?R5_P{qUS@P>is+@e*6p+zaMj%m-8%eU(RQPM}Q}QqI(Uf@$_17fAD-z z{CGPk`gee;_v_#jz+ZsUlYatLfAw-t_hL}#x`cns&)gW})kL5-(}LDlyM zP~}c~r_0fkz|%QD1e^}`fYZROpvu1woC1Cg{3qn}FW`Qh@7_uo;5R{)_bqS`d>C8` zu6|dg@&j-ih)7i4dWFYT4!F|!F$_xoz6&Hv$mzm`_LWEzdwSIR2jGpod_NTvsQuk zfIZ-o=mgb20+OWiQ*b?a?H$aS!M}oAz;E5@@v2oH!^h(M3;ZKG-gKAq>6c(X=P&!X zx9@I{td;q9yZ`fhQ2jdh9T>c+RQhusppD>XK=J$aRDy_A_WQJ#a|8G)&X50$+u!$s z4{-ina4UGjKOj5c?0@vQ&DG$mIe+ql&;o7&yTG3XT>4q3>!V;V*I)TLPyY{~`fujv zJwEpl@Ji1A7Vye1IDe;o(doGvJcIj>{Sv;Y$^q%p%721t$JKQ52>f|&!~5&qyFLFY zUqR-%{{VOb_>r%Y7kmgj1U&hlf?fi3{#x)*@CxvW;12M~;C2JX*c-+4P{Q)lGd>g3o z@(XYwxcD0(UIps>%it*Z)Ni`Hy$!5#{zGsD_}G7SyK@FOo%4&q%fUOqjo>_lOZZ{% z4d7D|ZsAr?bU)?WUQbWJ4}+(0{a4@`@I~Koxw-;;Dd&F#7lX%t*W-m3gQs%-FW`&8 z!@uY4T?3AAejRuY_>}Lve=-QF-R}c6-hK?e0zCcST^`>L);RwWcp|vu2R=S70qdOi z{Ltn8o1p4F{y&^A=YuNm-@s+yOCEB*Tn-+|`TgJ&@Oz-@-}hmcyO#&N1Jw1W{>bTE z3rbEd1I53;2PH2D{@Cr);h^}i5QLSLcY(9O!Tpyl zpy+(^PhB3)0ed*V6+8hv=x5Hy#o#MBzYJUr{sdINpY(I@pDVzVIsYYiE_m!O+^_l& zsDAu5sC>`;rPH+qlsxSK&(`%{p(DXJf-AwFflI-Ye(n16o#1rNkNb_&*9EFy9t1_l zKEL&LtOiB*2SCZy_rSM<$NkQ67kCoqFZ(Z_FTMjji}Npl$Ad@x-u1@XfS&`O&-Lds zD31YqLD6vqI0!xfE(d4+(fx<>!5y4`5S$6F{%_Zd7lXZ=@B1eok3-<|IR8D^2_E)m zk3XCa9?SU!0Y3(+o*#iHg0J{Xu;<`Z&L0G4fxiS*UiE*R&Qn3rT?ZF~w}5lN-+@!W znSb^1b_Vzo&aVfL2EPreo%{YRv>Vj@Uhrk$2Lt{ZRJ&hXnPhkwcn0U+1vi2(oHWVu z-2fh^>!A4i)O{wIJS+xZ#rYMWigImFOfTx0oJ$_PU16TuS@blnOaPt0>DrbVD;3DwLpvrkhhqvbx@THtz0g7M$9Pp?o zOtO9-10|<7gBl-y1UG|ApXlv=5LAEt9y|g({7I84y_1k(@O9wdKY5bL?@t3dJdtpR@s z&g1;0hj>3+0E)id;CbL7&vbrm1<&UEVQ?)t?@%xA22lKZ5Y#yO1t_^a;#rd_U0^@> zDzE`cPG>&b@4p9p5$8Vy#g}It=K0S7C3jmvUH=C7YVgp*oevj-Bb@&f+yb8S953&i zpxW`=s-M?D@#UkS+S74_^JgU}xx4|Ce0&Sk_&esvNfku3at25fE9X3SlKI=`9p(9c z0IGd6CQmZIuM2zz=M7N$_hIlbaP9LZSzPmVpycXya4I-$ip%#3a6aeff|C1tL6y7T zRF}UK!IL=O1ilj74yxS!r+K<5;Del>4SpRw;%Fb|e*lL$pLL9nlbgU7bN(w({OX+U zRb9Em$$8;^y{}kU7vEi^W)W^+It81 z6!6!e#_6OJ91jMM;`|s;dTlxQl*cgd09DRAU+nb#6Zj6!kDTjzbq6T^JOqmF=e%T+ z*_U~s^mRY@L+}z%{WkDY=i63L{r`FJ6!7qqTyAQh`1*cO`t)0%#?hhky#3vv+OZ8h z2>cZilzPqKOOn?RNO_yx}YWuW@weo*@Aub}ub zd7+Q%mw}@9Do}F$6R;axd&(rU%bx;O{%=6pk5#8SZUd$Feg}%a<)=Bm6_g$MBq+VL z-y$E+E5Q|KA@B#_dT_;JPk$FUlk@L_ z>Zd0!nPl^d(?H4Ra!`D_1l$kY1wI4(95@JmAG`=$w$$nU8YuZae3_4%IiT9{CQx$s zc~Jdx@N(~;)!;PFH-hWHcY*5f-++>b6JGB1tp%lT#=rx?E5K{O4}h-%Pg>#mZUQx~ ze+;Vs4qiE_G6}p||L}Jr_y!QQU)gUT^iR01dynDxA;%7mJGs7_g!&^(F7CgA;{*Jz zgTDl)bIj-W^T6ML`diCy{n0HJFY+_y@SOiwIJq+5VbFm%R~RCd$s9)nx}?YdmGd1O z2k`qyP=5z-|5$#1gWr;Ay43%`TKM@Re)n-mw;s)L9>4eDkPX(~EBJjm$8$OKHzmUh zzvA;j{g#}4ibHa?Z%Ef0^1U8Bh-;FeXT>r=)U5e6ujRV_P@m@a%>rM`@pF#ipT>p$ zriOCp;Xs8} z)^L22LptsO4%B_+K#mvk8&hL3%N~B8$?xpnFF5&UjvlW6C&ybk=7j`*4}O~Cc&_~j zY=EET(4TbE(*yr>ek{ks996D;i8S})1NCnKH7u){z*I!Y5pmkOJ{$G zn*BWuS})=EhjpLh;&A<5@Iq2N*^^Zkb3T{fe+CaF&rW{7FQk?2 z_&vYngT=pP;m6^my^h}pgUm3}cIR7!n_xRn% zv4SK1eLemF&*pe{$ou_peLd&*aeN}23$}B7l4CR1Ul!6I2yN5&t$mUI%01b3{q;In z%-Ifwp~g8xr6J^=X8H)*pJ_bbLj6a9CP@61;@$!zF8N;-*dn_!tVj_M2;g!_j2%O z;Ge+8pZb+&?v>*@rsy_jc~x2!0tn zjzfQ^a~y8J(trLT-1{lGi{oz`Q#q~=NoxF_!ZF1867aHc{Z-&OoIi*9HuAg5Z~cAN zp>l3GKO~(02|R>rcY|kxZwl9Efgj|&5zgNO{yWEETss52EnFA;g=^=5?**Sry^rPS z;P?*L=5kGcKj1i+-<$1>{^s}ZI6fTCujBViIVO?sja>Ucxc-EI`++xcUw_j$F5q}9 z$5**_J;#6Y`>)~t75sh*$JaPN5PUXeF6H+<93SKODAzs#KFp!N8^K?JKjru<$G)6D zhCJto`%mWgy_ z`Mr|kGaPT_xHhDDw|;Z%&-uTBSB2~RtZWItSA(DDxQOGGx)J{N1($Ff0$+B8YnOmq z!|zF?|24-mIqDq0;&>YOo=W=nhcxd9xIW+uz}InH&T$RLr5uwd@F|wQIv@ZKOJRtXi*i4-NLzXOMp7milOIpxWI(R43Jjp^@qcN&5zC)q$?Q z!O_}a*I;+8(y?mGaIH$F(UGD4&YtS%P<41@sJlj%&3&UAtAj%$16}>q`e@h4=-BY| zj;WN>+jnk_!iGkx!(H|I=AjWUzU~!fN}o2T(s4%D$Y9@K@0{x9TGysD!_*oij8yxe zy%%y+?^wNN=Yv}|cWs$AqtdZvL0=up25a4;)%9Cc7gTk2dez2@YFB^%(B@jtjJ1`j z|G}j-ox^LZog>waL-o;);`KG18|}tgl5MCCb`8|lDoy9S>6F~nGtf8KS05ee8XX#` zSLZEQvS{h_88c>dgu+`wy*64M-B_#kles#yp;{<{Ai8&)(Jw58F4Sl_1P}ny#XvHm5akcY?`$lR#U8A+?!ZVjI zTCs55f_bYJR*?r7+}%AiMxmC*@>MM%EYGC1vQAZ5y~xRM-3eZqp)WSBJ~lkuUmKtU zyGFKDLuwi=1`O6Vw`EqKr+tMKmT)v*sWEeREuA-i)uLC>a{E*B z6B$hs`DjVm(UxL36$`dHPgk9rYFnzOFFb4RE9Na;9qUu2L+92;M*4bc)tR-??wKa0 zGw8*7>`F#6^0rt-^bd7!GCB+Y*mbc}y&n6|vMo`zfv)pfqSGdh*gOmUMj$8LTC|Xxri-eKb5)lBvF?qU+VwD;KWN=!nD@2f;u{2Mww4 zTLT7%I=e?|2y5rYp@CY=U#<2Gp>Ia3e$V7d446`9#FDHB3GZfLZZT4piW3y16fUx9 zIfa6{Tu5D^iLG^py^Z~9SG_GOVn0}|FITOm`sSauV%f4)>lQ3pk<^P#4a^h zMkS#u)8gcMl*N1&4Lb=%CI?op$CzT*$tHeelz>jnT4YM<@6Q&H{O;+i5BGO%scz`% z!@&0lK7-)eC^>TPIIOlz4|A;Au1%NZW74fZ5dBtPh5U61{%QK{b;@;9U9gpQ%`c{Ow^F6wq0XrMX-MYv{WyN$u? z)w}Dv>a|YvQuX9{EAa^uWu@z>LQSMMuV-aFD77selIE;Y_nO_}WbKpjGdMVd{adR2 zUG>py?+*3%(1cMOpQ^H1E4tN+?v1rlL+RIJw_qm{Tb~a4OesSH;(m4hvL#CvE?t%M z?x_psFI!pN&{ylnnNHl8T#KBF7WviubG!P-YB6`Fz)bBUTZTtF2Wq1mhkB|@7OpyN z*#e_L)OYJ1L&fe*MLJZ{;yN&dwIqH0FbbbJZb< zN{x0lU(>)3`I74e-!grU)9uCwL$AohIszZ)I}ecV^7tqUHD{4 z@=OWl&F6FL3`TU5!S7D6&z+@PGP%V}}J+wL4 z8xfjmD-7;5TYbvv#f#T1owvlNF+sLNtJDqV{-qg{iBy~vg^oX5yj5`$tYVS)ITq?j1-C7?G1iezYeKICu(z+LDnTgz#c|CbaFHX89H2!D+UJE~ zR%TRJ8bztUlUA!hK%rh2FDtSwlD! zZZ9{ge>c|p%c#ZWamR9WBZJTq4KUy8BG4jTA@yU_dl^hRJBK&Q9Ghube%i978X@`d zVP?it`JCGd=o1nD$AY~{b=Ehb>{gz>aB;@j6Xzsb*66N&;% z@%<{uqCF)%x9j7Y_i?k=Hx4DvBB4J`o%#k5|A921<@wu%MiR{sRZG(hH7Tc)sA!#8 z(fmwvT#aacfkF0IqD^I^CDR~Qju24I@Wn!}OBbH8Zt=2H7cEVS)M(FnfnKQOKFv(L zg3Aa7gC_eI0w0<{iM5jdILU}kGV~?(--CVckrSz@wy!{0`8(M=x*|D#=t&1fdY|vZh;PK_Pf%C-tbM3+}5= zIonErq!2mwDDPAadMQSae0BD?f*h1Q&|Hrp{-3kLs)tT@Jv5L!)Mc#5*k7|4G&@OQ zj2sg2gF}Oap88(Hlq>gVs{sfZXEvElwc7}I__J2fqST4MS4s9ufVM^^3X z;BZW=TJ>{RHECgWZ(CpktW`NVl04e5Y}IKCSFBsK^ps_>8}hc%Q~7kbsO5*%k*36p z^CZeLuOi%x%FMby&81bRj7z4_0t4-ECVAskU!&Eq;vHRaPs|BNLRt-#4C3qjlVf%^5t&f*G!FP_<4 z$v74&HBFnZk+TrNC}>>O%~~dFpTk2#{l!vTbR~rGFO(wlV+t)hBdoyXK*I1)y-$l6 z)fEeuFI%~2)v^@|Hw4j*y^K$ky{|Z?=gN|y`BC#9O9@;T6^Z>tB;6U2c^)G{rj#K9 zJuGA_S+{icl9NMpI;BU7jCSB*N5hzA4a>bv6eJ=1kRUq>j0bHp=Ce7ib;(S9V;4&= zV=Qmy>r5^7%G2g)ky|O^*x}OAZ3n!^-x7x*UuO>vYtx@8Cyo}gh^;k(MTG}c3tLr*m$4FnTu7GsZ z@uT9mwij3+wvaK7(dcc);QWAA7&%dlH6O$sx43Zv!mUdj6M>I#l4oU%5eT5wg(i9! zQrBDZb==(63+Xhx*t4Fu{n}Zg4x&+Mn&Ws$>hqGn%^Ul=H`-)^F+AG69#JuYm0FaS zBq6r(oR*TG(^#3_KXDr3ogJOju;j!P$}*M}Hgmv-M?=WAjj$7hq3c?z z{ixNh202>N)cve_<2+9#98ZaN6xA8J z!BmF*7-oc`HqY*?Ar0FGHnFtF&K*kPgnnd3f_H8g)=ch4g=;>}z8+3kukNpH80Ex# zkI6HRu2;fR*WAivb|1OKRGA;bCX3XYex1>=SW)}Ugwxm;M4V%?c1EQc>J!b8ZoQgZ zXDlrb+n(5pr43s4k9KK=-C9!@^|EcMrsW8%6%vi7&}+PK5eJ6>F&}+D;d26@Q5v^1&$4R0V%<$GgWQTq+GCi zGWJgw%&*eKKNha;bSHzw8##SAIxO8O?Rps?IeDShDRh@@ZZpLqf$JrT4q+q6C#u8C z%%{@qZ{EuJix!oqi@Z{>2fmvR9OC0@yp`3&m|#Y@-re7aeGIIhN;lB`G{X#r`Z-~> znv>&T=jpT!UmE`{-FM^-=sY{U6<7P&-?v_|txZJxYPhc=uG4iTd*ih5#9$d37$#Ie zI=?>;0f0J9leHin6|v==-!(V|5n(xAlW0u_aAK#MS&;+5T0OFbBqv>FLs_+Y&R)FI zFlSfbohfS7%zM|l3|^6{skW4CX%?B{k}O>sybY|VX_-te<6>jVZr4BFrD@VATB(lGu*Rh*CiHo; zRGv?qt!rAO)eKwSiOrBy?>Omj&&DfiGa+jAUn&ApSW_TyO0q=l%iT_Jdbei?LmjHr-E&;@j!C8CRaQa$Q;Gw5%k>gv*0hSz-#OD$g!W zsJuevaWY!}r%YZ7-@2-!qwFOW@0Xz(5Ii?(Gi0&E*s)>e^Xi;1V3yBYl9sSsN)8pH z)w9|l+d4v`m1FhczV5!Eu{ye^e+YFL+^saLhR5(o?OY`)2)cVl@^C~z#&?@hT{If~ zG}jJn$7J4v8O;q9P2^?VgM$=^T7`Y~efIsdDEMh`O9LU6>c-jmpxGa=Xn9%C0YXp}Fhw z=CYU3Erk5yFt1KEi|fvv_ZDFs+wLV<^pX;*6+A3+=8`h4rM^`->@!aFU{;q0*~Dl;8T`HLr3oVMZ@3jeKk2Yx8_KM&l=jzT{h!6tDyYC;vAw9DHNM8W+#TZRAL+dTZ z?y@1T%{D;hZplStn#A-Z%4(laY`qzt-nR$5&wAqKVzUC_RSf@^G=yGZ8-R#|NTr_9N^ zDQW952g6d^YQ97oWta+WvD6^1adf4nxDTT;n)niweHkm#Tur^hJq9hwFw3E+H{KR&YH|I0QvH7xZGH<@_EHS4mTAE0K-?CX=bH1GGx21$a zOJH$h4^8FiSE;4f$Cv^VJLnqe(Q$0c9(eKG|UBVV4jAQu0GEC-uboR~+j{pbaoYwG+lJ#*C zh9+B75!qC>+9DgrU{EB2FeK}Y>N17kl6kgY8txicM+jZYnxAC;$d(BY)%%n2 zo%6h{A#H3zF;y70?NZsizjMQcij1ke>v@uY1M4#W=(zeLhy<%Qa@v>`7w*ep2%VTb zbnask=CE^tft8yQD7`(}%$6bvK<8>(+44zl?L1~Abz-khxuw;ERXkl{X$Qtn>jBe^ zUF=(4Ut^fLx(>pk!U}xz*ktg0P`Gszd#D)~aX?RUnrdYc&>x&+sxnp4ItEA>uw%A{ zA~!Mk0sKlm`K%5a8$=v!vXqR7R6&hp<0a7x!ha@OnwL)Zsnru|PZSd(*jnGB1t>ak zzbm=Lqag6spYNa1p}+?FtCd(0$~2ivva~N#EB1TYd@jRv2$k?APNWKQ0njh=X-Y$^t?s(u7fZ-Ho8#XtFF^!` zhmpF%COav~)Okt?3esGjOuG`09dW=kn_}wrm}wNbBmw%KwY+2+ner@2k-92cBh<5p zSdfr`$29XX$1T)ol9FVXR26*F*hHUA%;;E(?$tD2(yp;+D+y+y?Gc7_nCS_6=02g{ zb5$5)%z)EmQt@wG{~Oj>5M(zv9uVByk5 z3l~5Ksk8^Cx=@ez`I_wlMXaZu#b4)=C7lZvOiL1(y{y&uw?C^wcA!3oVtRVi3&t{M zr2Cwbo0C}-i_}U^c-uo|zQ;g)e}FjUQR3oeOdUiC;r8B;q{iW01^X%kya!mC#X z>w1@mUTzXngvb!H1`1bov^?Ho0>-p>+}s||j7faoT_PB^W}Oz7Pm7J<$sn5m(bgWt zIAgu}gvL4E2a?<;-b=u?uf8!MEmIaQkzQ$&ZK6lCWou&%>6N5V3np1r+CGt7wueb# z^U`XP`ysR)Q&<6^{Ye@NrFMu%5Z2Oij-Ol_&FlO!q!YR+AcXMoj^?RGxEbj2Br4 zG6v`7Cp$_czb#}YO%pdo)Q81472*qUFmuC@n3p6Cf$_2uGpRzCm8HrS#`6!v%T;`_w(gU^E4!j4SJUP&K@aeF!*s_M0CX$8G|;sP zf3B;0)7WrjzDAWKL_3An53z2lq^>&ErP(Peu3C6t2U9tj$9$7LJ<~dtv)s*W2Dab> zVZYXEXPFl2NQ$?Qww1rB7e~=iN{M|#=rO}w_U&~FhfS#B=@82sci3b1e?*5pV>VrD zR`O}Js*;kl@_Dk)c6TZhB+U2G~K9&+D%7 zCW2U6=REh!m&AE0`+cY+Oj@;4E%DmwfC{Ih%HMaY(dRD6z0N7vPEI-d*RagE6!TJYF&88 zg7M2IY%@9*_*=Kc7;MRcg)1}pe6(qqFexf(s!XbaxpP}*y9}4dwL?=e1tV-JtOkte zjM*oI-H4Uk_1wi+cbL>htG(DBKeUaxwjn~>`KwEU2rkC>6YgmKTQ=BH@tiBQ<2?M< z1~B7hIL})}InIa^(ImMgRaf>b1tp#Cx{L{!m)x9N!VyZCUR`#&LhnI788rUd9IbRC z0u&P4kg#!HZ!Ni)Zt)Lqvl`v3DPR+iU~Ye=tTdbNaAyX}i|uI7)X8HQ&?P~GE@jasmVH}9Pf?smzk2l*)~>+<*OTkai!(z_D1E^C#<@K}J2zg4_B zJ&K2}#BAw8)?Dg^3t?YMy|QZ2viU3LuUd6hn7TAw@IBF$Rqd3z5)4QE<{CGn2(Z0u z0O_f2smV2;P}&yhP&vuIVNbG!ptoEHn^t8u38N6Y7pV_Txn?r0{BHM*%bB8uDicP)H-<^;2MH&en&cP$%=I5dv-m8oOGc4YN&R|P0B@Y7m`)4d zj_~w+E#tO^;=+Cx1$gx=Tk6)H+cnasZBsl)0Pms%7l=qtH`QtcMn#V1JP8%!K81&- z56|`$-e3~_963(Xn>`(piso15sru#d;XHTWn$sl-PSFBZ_AlfJ)^kqa;E4ES8^*%h za(E9gYaDu$jAmfS;EYO=MazQ7Rt$!Bq<3Q2I<;VDXe+gQ;_@N7u>7)I`R7ImSZOk@ z1Qx7!hbBGMPCLB?OWP`S)wbg4eZ$CMnE1+e`Xsu}i=MOr-(^!9Dn_eZo6GT6Hn&uj1Z+kq{<2XL)$mI2#^=?AcgvOItadZB%Ug*dq zD{Q&T+_86vr_ZTm?pSCu)@{?Fl(MjmGqfs`$)1VO$o zDx|QBw&>2(l}=-LlBuIIsKu2EjC29kFPlkd+T^TETjw1{o=ln&CS{V9%d6!H`+wr^ zWS7I#X;qiM>6z^gX{zu#{bUlji9~UcRhz1<#y_f;8Q+owH_l9y_}_Yu21&k3DAAv7}Q- zvU8Qz;doYLXk<=x6)U+oHm~Taqg{ArrTSu?rQ=HHxhLVD^q7-{JN6QC4)%^Ql)yxqmf!|Q}xA8YiIxLS%bW%olBu9X&cg<>;dZUSh8rz!jxCDXUyuD@9)Oy)VC_; z5DPhPbSAHd?i)PO!v0A1+|{d2={!D7C+auwUigJXIJLGpr+WN)-gU5?t;k*dou}}+ zIm!93oz~|bdt%jp&Ye0~Jz{Qk_Ouf_&g?w3#`NDgaQewz>xqTUo-upYjAJ`mewCwf zb+z%a#?Hp=_V2xo+jqaYaa-f|YU8fP&fRa`eJPiB?Y_9W`=Z8OyDw7wmqE7X>Y{0L+k#jD;d2O#RTobQyGB z)ws#%y}EI|ShTKjEtlWNaWkZ)mEG3(xEgE3Xw0aKq#(q129c|f`x-kmW-@&80V*jH zzus)3b{V~>VLyKDM)9el*z8$7JS3j44ZNW3g@6g$CY=BwSpjOlh1#gCx-zzDt4xIHyIs<&8Y1@~x0fb^ z%bTc{@03`Z);1$qG(2rPC+L&yj7}TGHvTmB^YmsK)#CFxnU=_SCrZ&YP$JfnR^+I0 zU+kn(t!Uh9^_3m+qX|D|dS<6O87|!ES_W33d1b11?Y_)(6s$pEVh8RtacJtNrRt|v zpW$I_GbBxmHCK2ytVT`}rQu0~ah3c)2V*I*K<#@%1D@W-t4SS(CW6y1_%LL)Hny$v zujoYajg6LRmpa08fCk2fsVK82;=U+1)|lGfg&!)<#5#F}I6^eK^g}-sB-Jjq^KaVC zNFueoxp4>dyWKbGH6JQ5d2TeUMq}%((19msmN8ScJ`Ln;qkY$6fzViunyFn^zXWr{-QdFkTbE@b(i=u<7lL2{*+S{o1-x=TXiQ)l0uR? zk;w~Vq^U(IQ>0Gzs8PnXNW1=0ej2U81DAf}%){p?jWsYhip*A!{GFjF;q)yn?DNVtPs2s$d(JX*MYr%55& zESg^tq<|iA$T$&%Hf#rGD9&m0BPEfMwig7L>#uQ4n~O>_bBJm?)u2bkZbu zkdiq>j=mOO#A?+ynRc3#GB;4`_rU!w>yGR-sU>)x5MXWsV?c^cf+2qe{oxT5&dh{n zoLjoHlete@Z-SOwqGBPRk%d6{Brqx=dGh&+Or6SYP>_a9QQ%^K=fB6*c$cQIxarrJ zadvwh+8Mk63w)@g(CeYMB=PBxHglc0ZSrsnsmnaTaKR1#Yp)VswVULcsnwzk$EHp>h*`Hm^gC9^c+ePKu-*fs)lE@W$| z&C-&yTp88VL{ctcLF44@T(|C!Y-{Ld zQ*|B!%s9$sLKKygqin+{#NlirsQD%u2mu$@GSNj&TWbmn6SSts2BLpN{ zN=^Sk69IUW7tNEnST;mhR7llk(`eNYvj(bwOx-QMLq}1cq@|=q3S@5-eUt;b=eklB zsCl4D^EFA7hIx@Td(TGH^Z5Yl1jDEkP_V_%-<8)VE18KNW01`Mv-nI2EfSV6iSmS| z?n@g@k7k0pnN}J%#{F&`qCr>>|Mg<*+78uuD_xgp?YkP=H6=iC<5Vj2V{@+^Xe4@) z|Dz9cd;522yO*E=aIf5i5O7CIjR83a3^Mo}A9Y#fSPZ?9&|PGijO?ljGHas?kItx? zNQ+y`W@d1fj}jzodXBKNv4o>j7>iA(&};@a_4;Avt&zXp?Xdb0wnqLC1CK={8DDIM zEpfOS7vqS+PoUq_VPGKxfz0^C80(Bh(Zwl_Y^B3wF? zFAX+sL;+uoB_f2o4rk(e4ix?+D~@NFJ&NC#<|Oh`8sz4A7uDgW)mRzzkjQYKtjrs0i(>=Hww zU)qan2wLaaWUTC!lh*2MiDf;eksJnnqCLbrRlzWCUuYCM^p8uDX@}I^Fl*dACBYd= z>dRN+BBnLN!Z<~co6MN2?J#alcg5Bu9$gjPhA^6%L-_ZiV#ZrAdRmc$W0}^8SBeH- zLcMqGzD#-q-kEQav@emxwmnNdZCBU4i|t{(0)sd;10p{8kdUc2SN;wRh6k!mD=>iE z1@J&gpj0QBzOX86$uSq|DU%|KE4aWVGDSws_gO;7Xb$HMMyEY*n)#X2cva>t-cyKH z?hbV*+|Tw=rZMAglP^qk=|_2s8mb1kIkq}NKd0V4)BjyqJFSjrWmlp`1JTPF)19d~ z{Yqs+LCkBVRuxuIFqja7`Y^+uSTEJztqHG3vLt01KU(>bc2})|z&IS0!D`Ka+Omz_ z@Fo0*pa4aGlJ2yaR^JYl1~HQXL23A%yyib;Jy80^ zwJ)SWhbpv8Ah-9I;3Dg?(&$%bj{CDPGKvLRy)c*`#N3+ zk2`(}9bGblLaf7Wm{yeIqVYtQ8p=GC7Na1T`y6Opr1YH--htZ8Mm;{VO0PSaO2+A^^vt+`RqT)aqqM7$Wk zd>ijM`u(-cD9vjv#7uM}ggW8~FNm7!5iOb6!YrDTO{xmUmAh=YRiQ|m#K}0AeqA>G z9%-!CIk?ADxO<^Su^rplS*S$MnKW+3`MSRG9M&{k8HExkh1cT<~; zWHu(ftNllN%jwx;!i(!zIVw;&inHM@NXg0X7k`q?>87(ygEYCYl9xTDCHAs}dt9a`vIwtIwujsA?Nj~Rn7ED+A^EK5aE^S73pJ3dTzO2#K8TC~L` z(~0>H8@)rjwZk4W3f1bd&*ne#8}geb z;XU06m+qzlJ;R_5;eu9m!t~ROhlyu0OUdw2ub!c8H=(89!<0$;L7Db`sBvAazO0>+ z5@a%&8)@p}YR|f<)VZw?5wq5XkLbnn6Qt`(W`U&&)3h2&izbJ9iPEQydW1E&gNneE z)(~F%Q2xc~lrc=EJQR#{dmu;Opib4Ag#E(yn~i*s7N%xia_ems_GxSJJJMSErD~I= zJ+=PfIZs3_ylTa`o_Q5UUmYYDasfp_{2YzLX<2EFh_FCmPP22EPrr77JlR5K(P%ysb5W>WK;S?-3#$AUY8CP@L5j<~p`flS+p{*F)`(Gd`#)kHuDEk(5 zt1o*OO=+8Ox(ne%!|DDNY+l-fUtj3;Bub}SnbBP$!s7_mxD`-vRuZFforq8A<+k{o zxR!3DocOotnVd3*Fq%snsihHG4dJHoq--{NoEWzAHnETkri{|iM7F`xlNQHiS5Y8Y z&w49bM4&Y|WjGC*|%66eL>{f49Y0~Ss5`B zOEzokvAa-ZOIl_Uboc;fJELazjG(9`D}XOjjjnxVaz3TxiPWFZY$AvuF*$LrEHEHpCy=C@*k7O{7kxDm zDSk7)5mx-Jg77Qw@3f(K&({2M%et6s4LFUvjOT7O=RP&>LH8VaalDvh>}~M9iHVrm z3CO6s+_`B^TSr}NE`Lg|+PDgZAtl9nt5ijJXgyh|DVbyJzEt164;cvtn}2}uR{Y(I zh*2{cbRUN$PdFRrOFU8v=Y5Z+`Q-IqZUG1u4R{NH-SC~y!8NxU?S%rmy@q#2@qll^ z0IaneJgp@mq@9|2X@@tn4sHd>oIK;`Iwx`ck&V@JE0YQQWG5fC7a$d6Ddd75Vj39j z5SGPebm(#RvP9ZGMEx4izDmWz>GpedaPevS{8_RxWn$QK+1+80+nHypyJ} z%|?i*Gvjn~SxAUXpHDU=1et2e8LOl3qV2Rel}#wu}6p7!hy~dRW~uM=Ct-Y1Fig1I7*~9BSQY;TY>W z`Xg=|5}RBT&}@w{UpmtsO+L*U+JUHL`K@kK^az*E6R3EshuXliamHhJno8p;?R&RS zpMns2nhWI+h9YBZGSk2)A&R=uFe=w5Gx==lZ80=m^G)QQLIPux()3~hxe}BWSZ|s# ziSKdUOV?|66eySR+L`XFv{i+FgT_Xd@L$O> zb6+uU@#=-%;Lfv)32=cVx;w-HTlP{D^7}7$rbE)n3J-gRA{hbhjCPJFZ^BD&z$_+EH*If-rFuMvDd_Z6KY zx`;&QLjkbYW+ADws-DVtR@t$g><(^{`OtBYQ6NVyH%;+5RP*zx_=w<~=#MSE6}ro?+v5$X4?A}Ev=YKqtGQSFbYnUA>kOxw2>do$y| z(xWo_gfCEtnj9#Oroo)7I#>!_K!p57cxLz76pFG`$7i-{N0Tw(QmVN!2uI_Mn%~u) zmXg4)MAwZzt!KXGFPRvhnDSywS7rPI8v}MxFH@43%ReZv>q;q`oYn{7mvfFUBO*dO_wS_FrT)#?O4q!a1mQYyfd9;fHb3Q%NQI&(Hd}8R zkm60U3YVBL&F{1N-d_@8J<%){#yDmNO+8U?eZ5C?aU9WZDn4&kYtE-(0z*=tE!Kf*y4O6Ldm317MyYuwEtN{k;nF->6yA`d zgtBdXB23JT_epn1w@on28iXR9U!gbbeImZwNd?hh_SMm7&DZOr>+Hjqb7#-!V18s{ zF82lkkJ&453z_bI%Yn5OZLMZ|Bm+Z6|0XlFmTbuz)tv3J$CaYCQ%&f>M0YkDrO?pq zaCVhiGSc!>9$ZHnZX9kdmR^W&EGY`SYuI^Ff@rNrTTD-66>Jb9xRfju;Tc|N>ll;u zu2NSxawZsgS~GTURt%;vP2x1|(vm#=p-ZqI0dV#P|MFI{rhc!SzHy4qnM}%&Ln_Y6 zs&c{tLfVa&b3f718E))F6-F^dAaic8vfOP`UXgiO&7jiEp`JpUnR(`(mkjK^A(Nol z?Z#e&bl1s%q?1%mT+sNK3zt@<+)hQt>7k@A`RM?vTZz*E>q_Xs90**1*vkplSqN|K%x&_A3Ha#DocA| zK9-c3cQ>VkKY`n+OJT2ZLI)7@qh4CW58I1u8{x3J`-zsIF)U-sh@~ zqhCNtbFmW!5D?23mx)Mvp%$i6xr%m5mKb~?Hf$I8$6TIqc8MkmfXoH8QIu=<9E?)i z5g7xA6U`}V6c5hyOlV(I)mkJkIsj`+jmIWTYc z~ha2nKD5!ehPh?1mate?7EA}wSa}&f42be#$RL~2 zPO-P_3CVdeIuJ-}-J-Hg|LdH$rB=EqxA9ii!>5gmv%JUeOA^U?tQL=2b!wZUHM($J z7(<{>j5MWyZ=#0X*`h*vg(#24Gh;%Px2mnpOgb3(?0CfhNG@BqK(rCO&+WuB)|hl> zS>qu}n-jDyj=~h_#|ue3wn!E2OngZ3ptYq;LeZ=xWY$hK2{y|Up1X7hBQZff99>uY z=RTq))q)VL&M(-CGi4_AdiM!!9o&3Dc@&VLtqfYipmLh$){!E2@#W7W6E$3Xd!6*L z**RbKOf1jMxTJCenX@IdnK()*X4Gfm&SVtJR?1YgQAEh;^RFJjo1{p*nlf7>qoX04 z@$-V9jZ04IZ-%D>oW-$QOI5CnPi~S-D6`Q0iRYhlrkhk?h8ZT7zEBgo(*(jymITTN zY?OF?`#6rHA~^^sjKf!GWJyL)x%P|=z3(K3zHLboZ8_gHS|+%oAtxGw%TbW)AOcZbLJeU`G@c;r zbyZOuT2{5S$c}U`s{(-8$Wd!fpasx5=&Y#M)s~7)%9>=lG;J%P2}4=h&-Aoyv88`( zT4Gn5eX`;XM(ZPeSR_RK6CulL#n@xE!NZ^M&Dwpca+8;6oKk~#BZ73F9&txLZNYn| zc8tVHXPgEn_8m$JW~SOH4Ud{<*%%8DrdgU1MOR#RWVGRk&9k$+6LPZsg-COr|!$aRppr=`A2bFx54`_$@n=V3l=v}uWED5)cDWnNlZ zQ=ehXUSwf#X!H8z5Nw(_k;UfSQ00xW&vDo*l!8DP!pXMK859%JpckpwrSyd#8EfOB z5FftV5#H!8NkT}oA?i$?VtwMWUOvf(kQfuK6H=n)uJT9KXokBjLbT4n0E@b5ymEKh z>$4I*V%{=E78*j4>6Y+R59IR{8z_UB%z;`3Lv#LAhJa#W?kTe@uRyd6GC#!Z{)zgBsg`KF0Rj^#-ps)X(Ny>a0aVYy9UErKu^5e!3fZ;Q&dY{Erh zn9Y}HH+$XN0yWN?f|^JX5B-=c)!f*k@0NHcwl;}mN&RHEBB98qc5mdC4FiM%gs!y_7~)w(lRx)$Rw6UA59Yl+4c!#G}G_f z#OzaYww5BJ{75^kg|NGY$xe{ec>|mHw(qp+c)gc*n}QD7GsfPKQy1eFQFH;a{7rq} zY{#TI)CwNDFzL32=|b8xFN*%r975Vfb31;2{>iE`I__4x>*(TI zK;qrX`PH`a?V6JKrg*;R7nqdYiIu60E(zoAN>w4Li*apv>6*0|D_RBJrZT;u+fqke zOP2~!lF>GfW!!{h$_8=fgju3yH#r3QR6=#I-p$iB!Ig~yu$^1l`@?)nZB`V_zoogI z7eT$5h?oL#ll6)x$p?M!CKBBhzLl9-!t!+(>*tc06+H156p1zYPU`HP8NL-57}(T} zQluulVj(1(Ec=EPH2^AO=SU-If4p3fiy>B$fJ*EkP75+3Coi@16^r4CKH61Quq1Zj*BKV@dL6;HcYfn@Q7${x!Zh zyv3nJb+t||O<;Ya{??kFJrI@XouDgnh271-ifRzWk?ubd@1>G-+m#+PN%w?Dc!Ojq zR!>Em*y*V?4dPCH9Fmvzgn`?+I;YuPhQq3!)gjB0D(12R^?4KCz#j|bJti4b(WXEe zVH(?CZJ%tPlODZ`S-9`5;ViUgnwyA0k^y8q)%(+M2WLpnN2SqzxxoyyJ)UJf=Xy3VAW|m?(}7L zUr)ydicuCGEiEM~UYIAElD!N1KFq*SkBuVM9nCWgJ17d_Z?y!rxC2tEE@i)bwUSP< zXsqdj(rvdvvi6?O*2DSTCP8~d-X{*zqs)8y6JAKvLg@LC@xA&eust#(xI2iPTpl?> zqRqx;W+cQ>&Dc@`f%n!|=5}Wdw zr)OF#QFQs8ZcRC;sWg3RWX7#4+sdTMJlDEQV;F7gK6}`i&fMXAQi|rL)Hl`o zqsH}pT6AiO1c-s!daqsk6oi$q)Kna20zoLVqgPVs@@|_!EJ$F|q7YP~L6WbgCaX2$ zGB%ll6nZm`3Phmr$%c%AvvEONWM1X`=s8&H?ZO_&)a2yy>HluIN=0_>RbM@>%H6r&aA_%}SowDMli$WeyGd z({JKULsy5_8eRq0IMK8-zZk*VDr*L70L)zd2D zJjSC*Fh;qtbAS6&ldfVc=>Z|T3<(#`ftu(ew~^_RqG2v{+kxWS!tK+2*waKe-UR8^35gW6Cyo9iP_N6S>9E5dDDbI!c(M2Y8=9~FHkKudVC1dW4?Hj z*3fe{ z-G^H;6&Su&r0#LiP?niMWeLB{36Fi#hHwu}XCJ=B^fq-n{7`T>pR7bY80FdRRXIyF z)wYe77G0F^pw!KCvChc0sWq!C)@_#AtaIi~TtP%z7^30`Xk7z*(EGtTgbqmM;O)(UXs?U`(CsPPa#(UZ74scd}7^RVen?%80|)9zq}hlChwKEJRLh?hof zipEBFjGy_AzadI*(T#<2^M0D5$Mhx5p(KJ5=wp8`f!_Esi}9CvYCR>Usi;EBa;@GYBGEGGx2X%ImKGFrWRCTeA+yK7`Omk= zTX72_eb_8OnJ{BdDiV2Q%X+h9Wav(s0`$rdO$XxOw5yRSQ>Sbd*ilZ9?Ncg7}&r z9Nmpd<862->KdkxRZYhz+aI`<6qu)SvwQ+BCvTrsr*hG%%-GyY;{zJ}$q1DTLlIhN z_0g>7SmZNEjY%i6s?SJZ;A4!WCVkN{vx2=_PbYQq`OhFjOkQcStu-mMs?Cd>Sox3? z0tD_2NRAaC@VZ!al!?2M3~GheyU49|F$6Z5ROBE15kJz|>J*LLDfal3Re32Q#~MWtGzLDRW3l)1q=1$WD~XI(xX?lTSmh&?A@vm zs@QJJE#@mUIh$IesT3Pw;n$|Qy$OwolEj)M_?Fo)t>0$)(mx9r)Ry$MHUzMiRLV<4 zvQ?y{q_kWxh)BhZ*(VS$4+@A$*95Y(OFtokV}NF{UUM4W=397Oo^8^&&cq_B$P)76 zn}Abn+zfAdz>F@rhTQit=4AjGYo@u=PQ4PbAyRGPE4^V0wwiP&9bc6(K~05#C~>S{ zyr`kDKq4ki*gbaD5Z3P$5Tra4Ten>*T?$CuuGk&sS=zH~niZ8y&?C6W%)_KCw7bjp zedQfupFM?mM6$U*=vV4cKDW;zBEJSSZWGaY1@{Z3M`vqpJdoY z?VpIeC23XB{`)iF`q=~&O%B!GVG6t83P@J-B*b|dy{mb@gjB>#ojk@?Ea*3v24d+z zTD(V%zX~zSd`q#pZu1Zy)#hJM!--~_iKaDTuk@iBajAl~?e1TS5bUfpZb=r-iwf05 zPj*}{0=vXir}|Cr;J&)Ct)cJI@b$3pOg|m5GNi zW)5_u91x3Sn%Bj>TN&&=wW2n2*P92f4I!4+Op{hA!4@Bq3R)2 zbS?Uv#^%>lG&(0nT{Q5mN4ZnaEKrQAG&1=rLm9yu#(zd3rc z>KLD7%Z9i_kkciNUs6bA9pVbfJq6oQk1v5AhI|&IEZX6anD5f?U0yZ|54f0bQHY_& zdO|EXP8Q6vG1`n_g)NwY-2^kJO%4sDN{n2?;!JRE55iB+-w}HhUPCN1u}tkqZ``yy z6O5sa=4!b834D+kM&$upV!%LmtE(0*o4<1Ys#RwhcQU@zxOdeT%B^((<`>9@X#mZf z!V6*A&zrWj?9wPLRz*$?s}sHC5>Lvle0Vc^yK$35ay|C?zg?`)QRBAZu;4`d@V!jz zY*s1%r~F+eVK^iTeor%s8#mH9(trMNLb~Wo_l4dBGK<~c zE_po;{bT;NBwcA>Amg-3!8HFC`ptIgsrc%e&f&GyHEE)?Ft3oJI7ZgW>Ans&UfI~% zkxrAt2+}%uy8`wu*CVc01;j5E?G@eG0>Zoy7IrR(A9t~n>Y65o?PYt{r1Y-c>mp?D z(~SzZ?|ngO^k+@@n%>$+p|HI!!rw4cUE|;Q+j~;Hoc3h&X?~RvY(B8Irn9RsT<|uB z#zqS%`FMBl$S|oHXf_h<#Y2Uh_1GvN^i zN9RV>`Y3%3kE&486Zsk*6;p4&>b7Y>8p`os&`H=p-i|p$1-j!>K)yA>n?zyS%s`DB zpn~D)`qeo+Qe)dQpL(qgp4&GvG&oQjOg@bo?SJvJw&vm}(wW;enZ^U|p!>rM>Z6`1 zHY7R6nUPbr6ZRB>%gkJ5BJg-DZev~Q(Hu!w@)7g`57ej$eJ=B@(Wq1#*-vUxqa>Kn z50%(-i*!t2g43l92O*rRo93FeZKDs^4n|{Q+1AB@sb(e2;78*aVelu4avj zS+Lv?oY--T$miY4H1AR?Ci$nVyp|I*cEMgP*~xC1Gd^g#kj%+~4Di`x3t!lqMHM0< zrkhLx&KC>el{WX=Tf^J|_MNK=;F!aWp&yTyoKF=sJAqNSI$pNyV-QRVV@4j`(;kRz zHi6E(6yPdI)b6|RGVsKgY4dtZE9`A@{AoDBl}xmR3%Ap>%*~wh?BiIm|Hj*mMNB&+ zny`fdk%@k(74eThD-`B@_c6*9MYosz`=mNV95iF3jw>jZXpRcAyw;)YR6*zh z@yv!)e=#WOd*f`Mrp@Rwir#!oxv-fwY8si38U;QC-!K!LwT2i)h`8KZn^xFWBk?F> z?w;q1v$u3gtm39NJ~1sJSb~#}$dpn*zchtQDHS0RQ!Cnrc`vawsVTyC()A|P^o42M zkPz+c6V({`AQ73j$>SZbg1yg|almt9Rv*oqNWJy|nn#DARn6e7fc+R@G@wLO61A5F zY1vVFUqfR894Jr%-=!ppgUzU{>F--#ui+eY_14yEf&fWc#@EY{OrW%fTzkXx#H(%E ztho3`t)!WU;>fqz7ba2#p_!9<#)sI6)e8DFx3RRUTgBK%Ay*~Hw5Dn{8_cc6Yr%A; zEMVi~7Q|NE0pfO5s5W^uU$lR`mpU7MK+M?1MhL=WQ?Wo>w6R!@t@MPAMeYefs;xMa zOOG2&ncPG8Q$tNNFa*|2tc5+2SD~x;aRLCS5LJ`1E>@vAny*NfH6ve#HzKQ}G3;)E zw8+Mt~rC6|3zj%efHkV+9 z(FC3fA1|5OSS%~{N`{^gcEDaF@qS7TLx!d$k+8(>O5lwwgdV=zYU26gYQ89W1T22} z*vl2fwPsap@%TqXAN5V_anqn49))&Hs6x~SoXS1(6F4O`5xNmbK8042!A)9>6-m_4 zSvHE$pBOA{43QHW@1!!Kl_)uBIOn!4-`+h@QbWn`LJq<>=5r^~^XN0H7uSlPqDg}r z`#ItAqWX<)B;_IYksZk>ro5s~Y(ZaB)^-X2P14jIHh__I=^OtfoYNWl$G$1mDw{Fi zOp=C;S(kR%?0)|9O67dXj6Q9&YognIbRx1QMv24guB)txhsh_>{e{W5+TunB3r|)n6o*cTB?yZ;GTDwUsaXWv^jED(gJT%ajQX);t4UOFdxV`TH~lA z`wFLzDb`F}MVSe=F9_&LlY%ly4M{PMsAat8v^GeN9>|pQc#*U9h(%n?R)^$;l~8li zgKdJZ=Jpi!4wb#3jjyOsK_Ow2{xzA5jmvgJL6H~A$%SsyRzRK%(j%(3jIF*7TcBYN z+Ol^_zg>Of*{%ud{6ZDhkJ!qUy2ta35wl@Dk94;OfURx_@89oNZdWO8 zj(HixN*`21I4`8j7fGh%+nUaThlZ{)%WE&UejDHDb2zG?uXr`JB#gkp+-va_KPB*0 zuT!@ry5^dQ=~L)Tm7Eixh#&o}1(+lS8#g2gg+L2a!m`$@Ilz)G3~_Li7otkQXirEC zM=K^^mN{-BU}PIp0O7`HLATb)E;vZ%{_=W0ee^Gv{`CI#d^obMQ3Bf+krrM589cA| zwgfo3yY`rD@NEUvmjZFl$!AX z3z_Xjv&aD;oZZ+e=z+F%20&^wmL|sSHIienM6EJVNWFA=Q$Z~4uuqU&Z!Y+se^}uZ zTMy;7F~ys4<*R+Gm@MZ2INU8vt>b1PbgsgiYMnw@4*MZfN_ThBn%((${S9OS9{1LQ>9CjbBd literal 0 HcmV?d00001 diff --git a/po/el.po b/po/el.po index 75f24ab7..a6fd5c6a 100644 --- a/po/el.po +++ b/po/el.po @@ -10,7 +10,7 @@ msgid "" msgstr "" "Project-Id-Version: shadow_po_el\n" "Report-Msgid-Bugs-To: pkg-shadow-devel@lists.alioth.debian.org\n" -"POT-Creation-Date: 2012-05-20 19:52+0200\n" +"POT-Creation-Date: 2016-09-18 21:41-0500\n" "PO-Revision-Date: 2012-01-21 00:22+0200\n" "Last-Translator: Thomas Vasileiou \n" "Language-Team: Greek \n" @@ -432,6 +432,11 @@ msgstr "%s: διαδρομή chroot μη έγκυρη '%s'\n" msgid "%s: cannot access chroot directory %s: %s\n" msgstr "%s: αδυναμία προσπέλαση του καταλόγου chroot %s: %s\n" +#, fuzzy, c-format +#| msgid "%s: cannot access chroot directory %s: %s\n" +msgid "%s: cannot chdir to chroot directory %s: %s\n" +msgstr "%s: αδυναμία προσπέλαση του καταλόγου chroot %s: %s\n" + #, c-format msgid "%s: unable to chroot to directory %s: %s\n" msgstr "" @@ -806,6 +811,11 @@ msgstr "%s: γραμμή %d: πολύ μεγάλη γραμμή\n" msgid "%s: line %d: missing new password\n" msgstr "%s: γραμμή %d: έλλειψη νέου συνθηματικού\n" +#, fuzzy, c-format +#| msgid "%s: Failed to write %s: %s\n" +msgid "%s: failed to crypt password with salt '%s': %s\n" +msgstr "%s: Αποτυχία εγγραφής %s: %s\n" + #, c-format msgid "%s: line %d: group '%s' does not exist\n" msgstr "%s: γραμμή %d: η ομάδα '%s' δεν υπάρχει\n" @@ -1119,6 +1129,15 @@ msgstr "%s: το GID '%lu' υπάρχει\n" msgid "%s: Cannot setup cleanup service.\n" msgstr "%s: Δεν ήταν δυνατή η ρύθμιση της υπηρεσίας εκκαθάρισης.\n" +#, fuzzy +#| msgid "" +#| " -r, --reset reset the counters of login failures\n" +msgid "" +" -f, --force delete group even if it is the primary group " +"of a user\n" +msgstr "" +" -r, --reset επαναφορά μετρητή αποτυχημένων εισόδων\n" + #, c-format msgid "%s: cannot remove entry '%s' from %s\n" msgstr "%s: αδυναμία απομάκρυνσης της εγγραφής '%s' από το %s\n" @@ -1349,6 +1368,26 @@ msgstr "" " -b, --before ΗΜΕΡΕΣ προβολή των εγγραφών του lastlog που είναι " "παλαιότερες από ΗΜΕΡΕΣ\n" +#, fuzzy +#| msgid "" +#| " -a, --all display faillog records for all users\n" +msgid "" +" -C, --clear clear lastlog record of an user (usable only " +"with -u)\n" +msgstr "" +" -a, --all προβολή των εγγραφών του faillog για όλους " +"τους χρήστες\n" + +#, fuzzy +#| msgid "" +#| " -a, --all display faillog records for all users\n" +msgid "" +" -S, --set set lastlog record to current time (usable " +"only with -u)\n" +msgstr "" +" -a, --all προβολή των εγγραφών του faillog για όλους " +"τους χρήστες\n" + msgid "" " -t, --time DAYS print only lastlog records more recent than " "DAYS\n" @@ -1371,6 +1410,24 @@ msgstr "Όνομα_Χρήστη Θύρα Τελευταία" msgid "**Never logged in**" msgstr "**Καμιά είσοδος στο σύστημα**" +#, fuzzy, c-format +#| msgid "%s: Failed to get the entry for UID %lu\n" +msgid "%s: Failed to update the entry for UID %lu\n" +msgstr "%s: Aδυναμία ανάκτησης της εγγραφής UID %lu\n" + +#, fuzzy, c-format +#| msgid "%s: can't update password file\n" +msgid "%s: Failed to update the lastlog file\n" +msgstr "%s: αδυναμία ανανέωσης αρχείου συνθηματικών\n" + +#, c-format +msgid "%s: Option -C cannot be used together with option -S\n" +msgstr "" + +#, c-format +msgid "%s: Options -C and -S require option -u to specify the user\n" +msgstr "" + #, c-format msgid "Usage: %s [-p] [name]\n" msgstr "Χρήση: %s [-p] [όνομα]\n" @@ -1404,14 +1461,6 @@ msgstr "" "\n" "[Παράκαμψη αποσύνδεσης -- Η είσοδος του root επετράπη.]" -#, c-format -msgid "" -"\n" -"Login timed out after %u seconds.\n" -msgstr "" -"\n" -"Η διαδικασία εισόδου τερματίστηκε μετά από %u δευτερόλεπτα.\n" - #, c-format msgid "%s: Cannot possibly work without effective root\n" msgstr "%s: Μάλλον δεν είναι δυνατή η λειτουργία χωρίς ενεργό χρήστη root\n" @@ -1421,6 +1470,14 @@ msgstr "" "Δεν υπάρχει καταχώριση utmp. Πρέπει να εκτελέσετε \"login\" από το \"sh\" " "του πιο χαμηλού επιπέδου" +#, c-format +msgid "" +"\n" +"Login timed out after %u seconds.\n" +msgstr "" +"\n" +"Η διαδικασία εισόδου τερματίστηκε μετά από %u δευτερόλεπτα.\n" + #, c-format msgid "login: PAM Failure, aborting: %s\n" msgstr "login: αποτυχία PAM, εγκατάλειψη: %s\n" @@ -1494,6 +1551,11 @@ msgstr "Χρήση: newgrp [-] [ομάδα]\n" msgid "Usage: sg group [[-c] command]\n" msgstr "Χρήση: sg ομάδα [[-c] εντολή]\n" +#, fuzzy, c-format +#| msgid "%s: Failed to write %s: %s\n" +msgid "%s: failed to crypt password with previous salt: %s\n" +msgstr "%s: Αποτυχία εγγραφής %s: %s\n" + msgid "Invalid password.\n" msgstr "Λάθος συνθηματικό.\n" @@ -1562,6 +1624,21 @@ msgstr "%s: γραμμή %d: αποτυχία αλλαγής ιδιοκτήτη msgid "%s: line %d: can't update entry\n" msgstr "%s: γραμμή %d: αδυναμία ανανέωσης καταχώρησης\n" +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to prepare new %s entry\n" +msgstr "%s: αποτυχία προετοιμασίας της νέας εγγραφής %s '%s'\n" + +#, fuzzy, c-format +#| msgid "%s: can't create user\n" +msgid "%s: can't find subordinate user range\n" +msgstr "%s: αδυναμία δημιουργίας του χρήστη\n" + +#, fuzzy, c-format +#| msgid "%s: can't update group file\n" +msgid "%s: can't find subordinate group range\n" +msgstr "%s: αδυναμία ανανέωσης για το αρχείο ομάδων\n" + msgid "" " -a, --all report password status on all accounts\n" msgstr "" @@ -1850,12 +1927,6 @@ msgstr "Παράκαμψη εξακρίβωσης με συνθηματικό.\n msgid "Please enter your OWN password as authentication.\n" msgstr "Παρακαλώ εισάγετε το ΔΙΚΟ σας συνθηματικό για εξακρίβωση.\n" -msgid " ...killed.\n" -msgstr " ...σκοτώθηκε.\n" - -msgid " ...waiting for child to terminate.\n" -msgstr "" - #, c-format msgid "%s: Cannot fork user shell\n" msgstr "%s: αδυναμία διχάλωσης του φλοιού του χρήστη\n" @@ -1872,12 +1943,20 @@ msgid "Session terminated, terminating shell..." msgstr "Συνεδρία τερματίστηκε, τερματισμός φλοιού..." #, c-format -msgid "%s: %s\n" -msgstr "%s: %s\n" +msgid " ...killed.\n" +msgstr " ...σκοτώθηκε.\n" + +#, c-format +msgid " ...waiting for child to terminate.\n" +msgstr "" msgid " ...terminated.\n" msgstr " ...τερματίστηκε.\n" +#, c-format +msgid "%s: %s\n" +msgstr "%s: %s\n" + msgid "" "Usage: su [options] [LOGIN]\n" "\n" @@ -2167,6 +2246,11 @@ msgstr "%s: αποτυχία επαναφοράς της καταχώρησης msgid "%s: failed to reset the lastlog entry of UID %lu: %s\n" msgstr "%s: αποτυχία επαναφοράς της καταχώρησης στο lastlog του UID %lu: %s\n" +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to prepare the new %s entry\n" +msgstr "%s: αποτυχία προετοιμασίας της νέας εγγραφής %s '%s'\n" + #, c-format msgid "%s: cannot create directory %s\n" msgstr "%s: αδυναμία δημιουργίας καταλόγου %s\n" @@ -2209,6 +2293,16 @@ msgstr "%s: Αδυναμία δημιουργίας tcb καταλόγου γι msgid "%s: can't create group\n" msgstr "%s: αδυναμία δημιουργίας ομάδας\n" +#, fuzzy, c-format +#| msgid "%s: can't create user\n" +msgid "%s: can't create subordinate user IDs\n" +msgstr "%s: αδυναμία δημιουργίας του χρήστη\n" + +#, fuzzy, c-format +#| msgid "%s: can't create group\n" +msgid "%s: can't create subordinate group IDs\n" +msgstr "%s: αδυναμία δημιουργίας ομάδας\n" + #, c-format msgid "" "%s: warning: the home directory already exists.\n" @@ -2259,6 +2353,11 @@ msgid "%s: group %s is the primary group of another user and is not removed.\n" msgstr "" "%s: η ομάδα %s είναι πρωταρχική ομάδα για άλλο χρήστη και δεν διαγράφηκε.\n" +#, fuzzy, c-format +#| msgid "%s: cannot remove entry '%s' from %s\n" +msgid "%s: cannot remove entry %lu from %s\n" +msgstr "%s: αδυναμία απομάκρυνσης της εγγραφής '%s' από το %s\n" + #, c-format msgid "%s: %s mail spool (%s) not found\n" msgstr "%s: %s η ουρά του ταχυδρομείου (%s) δεν βρέθηκε\n" @@ -2386,6 +2485,18 @@ msgid " -U, --unlock unlock the user account\n" msgstr "" " -U, --unlock ξεκλείδωμα του λογαριασμού του χρήστη\n" +msgid " -v, --add-subuids FIRST-LAST add range of subordinate uids\n" +msgstr "" + +msgid " -V, --del-subuids FIRST-LAST remove range of subordinate uids\n" +msgstr "" + +msgid " -w, --add-subgids FIRST-LAST add range of subordinate gids\n" +msgstr "" + +msgid " -W, --del-subgids FIRST-LAST remove range of subordinate gids\n" +msgstr "" + msgid "" " -Z, --selinux-user SEUSER new SELinux user mapping for the user " "account\n" @@ -2407,6 +2518,16 @@ msgstr "" msgid "%s: user '%s' already exists in %s\n" msgstr "%s: Ο χρήστης %s υπάρχει ήδη στο %s\n" +#, fuzzy, c-format +#| msgid "%s: invalid date '%s'\n" +msgid "%s: invalid subordinate uid range '%s'\n" +msgstr "%s: Μη έγκυρη ημερομηνία '%s'\n" + +#, fuzzy, c-format +#| msgid "%s: invalid date '%s'\n" +msgid "%s: invalid subordinate gid range '%s'\n" +msgstr "%s: Μη έγκυρη ημερομηνία '%s'\n" + #, c-format msgid "%s: no options\n" msgstr "%s: χωρίς επιλογές\n" @@ -2423,6 +2544,13 @@ msgstr "%s: σκιώδη συνθηματικά απαιτούνται για τ msgid "%s: UID '%lu' already exists\n" msgstr "%s: το UID '%lu' υπάρχει ήδη\n" +#, fuzzy, c-format +#| msgid "%s: %s is not authorized to change the password of %s\n" +msgid "%s: %s does not exist, you cannot use the flags %s or %s\n" +msgstr "" +"%s: ο χρήστης %s δεν είναι εξουσιοδοτημένος να αλλάξει το συνθηματικό του " +"%s\n" + #, c-format msgid "%s: directory %s exists\n" msgstr "%s: ο κατάλογος %s υπάρχει\n" @@ -2471,6 +2599,26 @@ msgstr "αποτυχία αλλαγής του ιδιοκτήτη του γρα msgid "failed to rename mailbox" msgstr "αποτυχία μετονομασίας γραμματοκιβωτίου" +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to remove uid range %lu-%lu from '%s'\n" +msgstr "%s: αποτυχία προετοιμασίας της νέας εγγραφής %s '%s'\n" + +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to add uid range %lu-%lu from '%s'\n" +msgstr "%s: αποτυχία προετοιμασίας της νέας εγγραφής %s '%s'\n" + +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to remove gid range %lu-%lu from '%s'\n" +msgstr "%s: αποτυχία προετοιμασίας της νέας εγγραφής %s '%s'\n" + +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to add gid range %lu-%lu from '%s'\n" +msgstr "%s: αποτυχία προετοιμασίας της νέας εγγραφής %s '%s'\n" + #, c-format msgid "" "You have modified %s.\n" @@ -2526,6 +2674,20 @@ msgstr "Αδυναμία ξεκλειδώματος αρχείου" msgid "Couldn't make backup" msgstr "Αδυναμία δημιουργίας αντιγράφου ασφαλείας " +#, fuzzy, c-format +#| msgid "%s: PAM: %s\n" +msgid "%s: %s: %s\n" +msgstr "%s: PAM: %s\n" + +#, fuzzy, c-format +#| msgid "%s: nscd exited with status %d" +msgid "%s: %s returned with status %d\n" +msgstr "%s: το ncsd τερμάτισε με κατάσταση εξόδου %d" + +#, c-format +msgid "%s: %s killed by signal %d\n" +msgstr "" + msgid "failed to open scratch file" msgstr "αποτυχία ανοίγματος προσωρινού αρχείου" @@ -3151,9 +3313,6 @@ msgstr "%s: αποτυχία εύρεσης καταλόγου tcb %s\n" #~ msgid "%s: can't rewrite password file\n" #~ msgstr "%s: αδυναμία επανεγγραφής αρχείου συνθηματικών\n" -#~ msgid "%s: can't update password file\n" -#~ msgstr "%s: αδυναμία ανανέωσης αρχείου συνθηματικών\n" - #~ msgid "%s: can't update shadow password file\n" #~ msgstr "%s: αδυναμία ανανέωσης του αρχείου σκιωδών συνθηματικών\n" @@ -3386,9 +3545,6 @@ msgstr "%s: αποτυχία εύρεσης καταλόγου tcb %s\n" #~ msgid "%s: can't update shadow group file\n" #~ msgstr "%s: αδυναμία ανανέωσης του αρχείου σκιωδών συνθηματικών ομάδων\n" -#~ msgid "%s: can't update group file\n" -#~ msgstr "%s: αδυναμία ανανέωσης για το αρχείο ομάδων\n" - #~ msgid "%s: can't delete shadow group file\n" #~ msgstr "" #~ "%s: Δεν είναι δυνατόν να διαγραφεί το αρχείο σκιωδών συνθηματικών ομάδων\n" diff --git a/po/en@boldquot.header b/po/en@boldquot.header new file mode 100644 index 00000000..fedb6a06 --- /dev/null +++ b/po/en@boldquot.header @@ -0,0 +1,25 @@ +# All this catalog "translates" are quotation characters. +# The msgids must be ASCII and therefore cannot contain real quotation +# characters, only substitutes like grave accent (0x60), apostrophe (0x27) +# and double quote (0x22). These substitutes look strange; see +# http://www.cl.cam.ac.uk/~mgk25/ucs/quotes.html +# +# This catalog translates grave accent (0x60) and apostrophe (0x27) to +# left single quotation mark (U+2018) and right single quotation mark (U+2019). +# It also translates pairs of apostrophe (0x27) to +# left single quotation mark (U+2018) and right single quotation mark (U+2019) +# and pairs of quotation mark (0x22) to +# left double quotation mark (U+201C) and right double quotation mark (U+201D). +# +# When output to an UTF-8 terminal, the quotation characters appear perfectly. +# When output to an ISO-8859-1 terminal, the single quotation marks are +# transliterated to apostrophes (by iconv in glibc 2.2 or newer) or to +# grave/acute accent (by libiconv), and the double quotation marks are +# transliterated to 0x22. +# When output to an ASCII terminal, the single quotation marks are +# transliterated to apostrophes, and the double quotation marks are +# transliterated to 0x22. +# +# This catalog furthermore displays the text between the quotation marks in +# bold face, assuming the VT100/XTerm escape sequences. +# diff --git a/po/en@quot.header b/po/en@quot.header new file mode 100644 index 00000000..a9647fc3 --- /dev/null +++ b/po/en@quot.header @@ -0,0 +1,22 @@ +# All this catalog "translates" are quotation characters. +# The msgids must be ASCII and therefore cannot contain real quotation +# characters, only substitutes like grave accent (0x60), apostrophe (0x27) +# and double quote (0x22). These substitutes look strange; see +# http://www.cl.cam.ac.uk/~mgk25/ucs/quotes.html +# +# This catalog translates grave accent (0x60) and apostrophe (0x27) to +# left single quotation mark (U+2018) and right single quotation mark (U+2019). +# It also translates pairs of apostrophe (0x27) to +# left single quotation mark (U+2018) and right single quotation mark (U+2019) +# and pairs of quotation mark (0x22) to +# left double quotation mark (U+201C) and right double quotation mark (U+201D). +# +# When output to an UTF-8 terminal, the quotation characters appear perfectly. +# When output to an ISO-8859-1 terminal, the single quotation marks are +# transliterated to apostrophes (by iconv in glibc 2.2 or newer) or to +# grave/acute accent (by libiconv), and the double quotation marks are +# transliterated to 0x22. +# When output to an ASCII terminal, the single quotation marks are +# transliterated to apostrophes, and the double quotation marks are +# transliterated to 0x22. +# diff --git a/po/es.gmo b/po/es.gmo new file mode 100644 index 0000000000000000000000000000000000000000..42d66f4c340c94a3403f3bdf7fd8073564d7e143 GIT binary patch literal 62178 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\n" "Language-Team: Debian l10n Spanish \n" @@ -458,6 +458,11 @@ msgstr "%s: teléfono de casa incorrecto: «%s»\n" msgid "%s: cannot access chroot directory %s: %s\n" msgstr "%s: no se pudo crear el directorio %s: %s\n" +#, fuzzy, c-format +#| msgid "%s: Cannot create directory %s: %s\n" +msgid "%s: cannot chdir to chroot directory %s: %s\n" +msgstr "%s: no se pudo crear el directorio %s: %s\n" + #, fuzzy, c-format #| msgid "%s: Failed to create tcb directory for %s\n" msgid "%s: unable to chroot to directory %s: %s\n" @@ -823,6 +828,11 @@ msgstr "%s: línea %d: línea demasiado larga\n" msgid "%s: line %d: missing new password\n" msgstr "%s: línea %d: falta la nueva contraseña\n" +#, fuzzy, c-format +#| msgid "%s: failed to remove %s\n" +msgid "%s: failed to crypt password with salt '%s': %s\n" +msgstr "%s: se produjo un fallo al eliminar %s\n" + #, c-format msgid "%s: line %d: group '%s' does not exist\n" msgstr "%s: línea %d: el grupo «%s» no existe\n" @@ -1136,6 +1146,15 @@ msgstr "%s: el GID «%lu» ya existe\n" msgid "%s: Cannot setup cleanup service.\n" msgstr "%s: no se pudo determinar su nombre de usuario.\n" +#, fuzzy +#| msgid "" +#| " -r, --reset reset the counters of login failures\n" +msgid "" +" -f, --force delete group even if it is the primary group " +"of a user\n" +msgstr "" +" -r, --reset reinicia el contador de accesos fallidos\n" + #, c-format msgid "%s: cannot remove entry '%s' from %s\n" msgstr "%s: no se pudo eliminar la entrada «%s» de %s\n" @@ -1366,6 +1385,26 @@ msgstr "" "anteriores\n" " a DÍAS\n" +#, fuzzy +#| msgid "" +#| " -a, --all display faillog records for all users\n" +msgid "" +" -C, --clear clear lastlog record of an user (usable only " +"with -u)\n" +msgstr "" +" -a, --all muestra los registros de faillog para\n" +" todos los usuarios\n" + +#, fuzzy +#| msgid "" +#| " -a, --all display faillog records for all users\n" +msgid "" +" -S, --set set lastlog record to current time (usable " +"only with -u)\n" +msgstr "" +" -a, --all muestra los registros de faillog para\n" +" todos los usuarios\n" + msgid "" " -t, --time DAYS print only lastlog records more recent than " "DAYS\n" @@ -1388,6 +1427,24 @@ msgstr "Nombre Puerto Último" msgid "**Never logged in**" msgstr "**Nunca ha accedido**" +#, fuzzy, c-format +#| msgid "%s: Failed to get the entry for UID %lu\n" +msgid "%s: Failed to update the entry for UID %lu\n" +msgstr "%s: Se produjo un fallo al conseguir la entrada para el UID %lu\n" + +#, fuzzy, c-format +#| msgid "%s: can't update password file\n" +msgid "%s: Failed to update the lastlog file\n" +msgstr "%s: no puedo actualizar el fichero de contraseñas\n" + +#, c-format +msgid "%s: Option -C cannot be used together with option -S\n" +msgstr "" + +#, c-format +msgid "%s: Options -C and -S require option -u to specify the user\n" +msgstr "" + #, c-format msgid "Usage: %s [-p] [name]\n" msgstr "Modo de uso: %s [-p] [nombre]\n" @@ -1421,6 +1478,13 @@ msgstr "" "\n" "[Desconexión evitada -- acceso del administrador («root») permitido.]" +#, c-format +msgid "%s: Cannot possibly work without effective root\n" +msgstr "%s: posiblemente no se puede trabajar sin el administrador\n" + +msgid "No utmp entry. You must exec \"login\" from the lowest level \"sh\"" +msgstr "Sin entrada utmp. Debe ejecutar «login» desde el nivel «sh» más bajo" + #, c-format msgid "" "\n" @@ -1429,13 +1493,6 @@ msgstr "" "\n" "El acceso caducó después de %u segundos.\n" -#, c-format -msgid "%s: Cannot possibly work without effective root\n" -msgstr "%s: posiblemente no se puede trabajar sin el administrador\n" - -msgid "No utmp entry. You must exec \"login\" from the lowest level \"sh\"" -msgstr "Sin entrada utmp. Debe ejecutar «login» desde el nivel «sh» más bajo" - #, c-format msgid "login: PAM Failure, aborting: %s\n" msgstr "login: fallo de PAM, abortando: %s\n" @@ -1509,6 +1566,11 @@ msgstr "Modo de uso: newgrp [-] [grupo]\n" msgid "Usage: sg group [[-c] command]\n" msgstr "Modo de uso: sg grupo [[-c] orden]\n" +#, fuzzy, c-format +#| msgid "%s: failed to remove %s\n" +msgid "%s: failed to crypt password with previous salt: %s\n" +msgstr "%s: se produjo un fallo al eliminar %s\n" + msgid "Invalid password.\n" msgstr "Contraseña incorrecta.\n" @@ -1576,6 +1638,21 @@ msgstr "%s: línea %d: chown %s falló: %s\n" msgid "%s: line %d: can't update entry\n" msgstr "%s: línea %d: no se puede actualizar la entrada\n" +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to prepare new %s entry\n" +msgstr "%s: se produjo un fallo al preparar la nueva %s entrada «%s»\n" + +#, fuzzy, c-format +#| msgid "%s: can't create user\n" +msgid "%s: can't find subordinate user range\n" +msgstr "%s: no se pudo crear el usuario\n" + +#, fuzzy, c-format +#| msgid "%s: can't update group file\n" +msgid "%s: can't find subordinate group range\n" +msgstr "%s: no se puede actualizar el fichero de grupo\n" + msgid "" " -a, --all report password status on all accounts\n" msgstr "" @@ -1857,12 +1934,6 @@ msgstr "Autenticación de contraseña evitada.\n" msgid "Please enter your OWN password as authentication.\n" msgstr "Por favor, introduzca su PROPIA contraseña como autenticación.\n" -msgid " ...killed.\n" -msgstr " ... finalizado.\n" - -msgid " ...waiting for child to terminate.\n" -msgstr " ... esperando a que el hijo finalice.\n" - #, c-format msgid "%s: Cannot fork user shell\n" msgstr "%s: no se pudo realizar el «fork» de la consola del usuario\n" @@ -1879,12 +1950,20 @@ msgid "Session terminated, terminating shell..." msgstr "Sesión finalizada, parando la consola ..." #, c-format -msgid "%s: %s\n" -msgstr "%s: %s\n" +msgid " ...killed.\n" +msgstr " ... finalizado.\n" + +#, c-format +msgid " ...waiting for child to terminate.\n" +msgstr " ... esperando a que el hijo finalice.\n" msgid " ...terminated.\n" msgstr " ... parada.\n" +#, c-format +msgid "%s: %s\n" +msgstr "%s: %s\n" + msgid "" "Usage: su [options] [LOGIN]\n" "\n" @@ -2185,6 +2264,11 @@ msgid "%s: failed to reset the lastlog entry of UID %lu: %s\n" msgstr "" "%s: se produjo un fallo al reiniciar la entrada de lastlog del UID %lu: %s\n" +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to prepare the new %s entry\n" +msgstr "%s: se produjo un fallo al preparar la nueva %s entrada «%s»\n" + #, c-format msgid "%s: cannot create directory %s\n" msgstr "%s: no se puede crear el directorio %s\n" @@ -2227,6 +2311,16 @@ msgstr "%s: se produjo un fallo al crear el directorio tcb para %s\n" msgid "%s: can't create group\n" msgstr "%s: no se puede crear el grupo\n" +#, fuzzy, c-format +#| msgid "%s: can't create user\n" +msgid "%s: can't create subordinate user IDs\n" +msgstr "%s: no se pudo crear el usuario\n" + +#, fuzzy, c-format +#| msgid "%s: can't create group\n" +msgid "%s: can't create subordinate group IDs\n" +msgstr "%s: no se puede crear el grupo\n" + #, c-format msgid "" "%s: warning: the home directory already exists.\n" @@ -2279,6 +2373,11 @@ msgstr "" msgid "%s: group %s is the primary group of another user and is not removed.\n" msgstr "%s: grupo %s es el grupo primario de otro usuario y no se eliminará.\n" +#, fuzzy, c-format +#| msgid "%s: cannot remove entry '%s' from %s\n" +msgid "%s: cannot remove entry %lu from %s\n" +msgstr "%s: no se pudo eliminar la entrada «%s» de %s\n" + #, fuzzy, c-format #| msgid "%s: %s home directory (%s) not found\n" msgid "%s: %s mail spool (%s) not found\n" @@ -2401,6 +2500,18 @@ msgstr "" msgid " -U, --unlock unlock the user account\n" msgstr " -U, --unlock desbloquea la cuenta de usuario\n" +msgid " -v, --add-subuids FIRST-LAST add range of subordinate uids\n" +msgstr "" + +msgid " -V, --del-subuids FIRST-LAST remove range of subordinate uids\n" +msgstr "" + +msgid " -w, --add-subgids FIRST-LAST add range of subordinate gids\n" +msgstr "" + +msgid " -W, --del-subgids FIRST-LAST remove range of subordinate gids\n" +msgstr "" + #, fuzzy #| msgid "" #| " -Z, --selinux-user new SELinux user mapping for the user " @@ -2425,6 +2536,16 @@ msgstr "" msgid "%s: user '%s' already exists in %s\n" msgstr "%s: el usuario «%s» ya existe en %s\n" +#, fuzzy, c-format +#| msgid "%s: invalid date '%s'\n" +msgid "%s: invalid subordinate uid range '%s'\n" +msgstr "%s: fecha «%s» incorrecta\n" + +#, fuzzy, c-format +#| msgid "%s: invalid date '%s'\n" +msgid "%s: invalid subordinate gid range '%s'\n" +msgstr "%s: fecha «%s» incorrecta\n" + #, fuzzy, c-format #| msgid "%s: cannot open %s\n" msgid "%s: no options\n" @@ -2442,6 +2563,11 @@ msgstr "%s: se necesitan contraseñas de shadow para -e y -f\n" msgid "%s: UID '%lu' already exists\n" msgstr "%s: el UID «%lu» ya existe\n" +#, fuzzy, c-format +#| msgid "%s: %s is not authorized to change the password of %s\n" +msgid "%s: %s does not exist, you cannot use the flags %s or %s\n" +msgstr "%s: %s no está autorizado a cambiar la contraseña de %s\n" + #, c-format msgid "%s: directory %s exists\n" msgstr "%s: el directorio %s existe\n" @@ -2489,6 +2615,26 @@ msgstr "se produjo un fallo al cambiar el propietario del buzón de correo" msgid "failed to rename mailbox" msgstr "se produjo un fallo al cambiar el nombre del buzón de correo" +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to remove uid range %lu-%lu from '%s'\n" +msgstr "%s: se produjo un fallo al preparar la nueva %s entrada «%s»\n" + +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to add uid range %lu-%lu from '%s'\n" +msgstr "%s: se produjo un fallo al preparar la nueva %s entrada «%s»\n" + +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to remove gid range %lu-%lu from '%s'\n" +msgstr "%s: se produjo un fallo al preparar la nueva %s entrada «%s»\n" + +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to add gid range %lu-%lu from '%s'\n" +msgstr "%s: se produjo un fallo al preparar la nueva %s entrada «%s»\n" + #, c-format msgid "" "You have modified %s.\n" @@ -2544,6 +2690,20 @@ msgstr "No se puede bloquear el fichero" msgid "Couldn't make backup" msgstr "No se puede realizar una copia de seguridad" +#, fuzzy, c-format +#| msgid "%s: %s\n" +msgid "%s: %s: %s\n" +msgstr "%s: %s\n" + +#, fuzzy, c-format +#| msgid "%s: %s not found in /etc/passwd\n" +msgid "%s: %s returned with status %d\n" +msgstr "%s: no se encontró %s en /etc/passwd\n" + +#, c-format +msgid "%s: %s killed by signal %d\n" +msgstr "" + msgid "failed to open scratch file" msgstr "se produjo un fallo al abrir el fichero temporal" @@ -3184,9 +3344,6 @@ msgstr "%s: se produjo un fallo al buscar el directorio tcb de %s\n" #~ msgid "%s: can't rewrite password file\n" #~ msgstr "%s: no se puede reescribir el fichero de contraseñas\n" -#~ msgid "%s: can't update password file\n" -#~ msgstr "%s: no puedo actualizar el fichero de contraseñas\n" - #~ msgid "%s: can't update shadow password file\n" #~ msgstr "%s: no puedo actualizar el fichero de contraseñas ocultas\n" @@ -3209,9 +3366,6 @@ msgstr "%s: se produjo un fallo al buscar el directorio tcb de %s\n" #~ msgid "Cannot open the password file.\n" #~ msgstr "No se puede abrir el fichero de contraseñas.\n" -#~ msgid "%s: %s not found in /etc/passwd\n" -#~ msgstr "%s: no se encontró %s en /etc/passwd\n" - #~ msgid "Error updating the password entry.\n" #~ msgstr "Error actualizando la entrada de la contraseña.\n" @@ -3405,9 +3559,6 @@ msgstr "%s: se produjo un fallo al buscar el directorio tcb de %s\n" #~ msgid "%s: can't update shadow group file\n" #~ msgstr "%s: no se puede actualizar el fichero de grupos oculto (shadow)\n" -#~ msgid "%s: can't update group file\n" -#~ msgstr "%s: no se puede actualizar el fichero de grupo\n" - #~ msgid "%s: can't delete shadow group file\n" #~ msgstr "%s: no se puede eliminar el fichero de grupos oculto\n" diff --git a/po/eu.gmo b/po/eu.gmo new file mode 100644 index 0000000000000000000000000000000000000000..6e01a4c76f033ae436adb6958060bf65f73deeef GIT binary patch literal 49600 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\n" "Language-Team: Euskara \n" @@ -442,6 +442,11 @@ msgstr "%s: etxeko tlf baliogabea: '%s'\n" msgid "%s: cannot access chroot directory %s: %s\n" msgstr "%s: ezin da %s direktorioa sortu\n" +#, fuzzy, c-format +#| msgid "%s: cannot create directory %s\n" +msgid "%s: cannot chdir to chroot directory %s: %s\n" +msgstr "%s: ezin da %s direktorioa sortu\n" + #, fuzzy, c-format #| msgid "%s: cannot create directory %s\n" msgid "%s: unable to chroot to directory %s: %s\n" @@ -800,6 +805,11 @@ msgstr "%s: %d. lerroa: lerro luzegia\n" msgid "%s: line %d: missing new password\n" msgstr "%s: %d. lerroa: pasahitz berria falta da\n" +#, fuzzy, c-format +#| msgid "%s: failed to remove %s\n" +msgid "%s: failed to crypt password with salt '%s': %s\n" +msgstr "%s: huts %s kentzerakoan\n" + #, c-format msgid "%s: line %d: group '%s' does not exist\n" msgstr "%s: %d lerroa: '%s' taldea ez da existitzen\n" @@ -1110,6 +1120,16 @@ msgstr "%s: '%lu' GIDa badago dagoeneko\n" msgid "%s: Cannot setup cleanup service.\n" msgstr "%s: Ezin da Erabiltzaile izena zehaztu.\n" +#, fuzzy +#| msgid "" +#| " -r, --reset reset the counters of login failures\n" +msgid "" +" -f, --force delete group even if it is the primary group " +"of a user\n" +msgstr "" +" -r, --reset saio-hasierako hutsegiteen kontatzailea\n" +" berrezartzeko\n" + #, c-format msgid "%s: cannot remove entry '%s' from %s\n" msgstr "%s: ezin da '%s' sarrera %s-tik kendu\n" @@ -1337,6 +1357,26 @@ msgstr "" " -b, --before EGUN EGUN kopurua baino zaharragoak diren\n" " erregistroak\n" +#, fuzzy +#| msgid "" +#| " -a, --all display faillog records for all users\n" +msgid "" +" -C, --clear clear lastlog record of an user (usable only " +"with -u)\n" +msgstr "" +" -a, --all erabiltzaile guztien faillog-en\n" +" erregistroak bistaratzen ditu\n" + +#, fuzzy +#| msgid "" +#| " -a, --all display faillog records for all users\n" +msgid "" +" -S, --set set lastlog record to current time (usable " +"only with -u)\n" +msgstr "" +" -a, --all erabiltzaile guztien faillog-en\n" +" erregistroak bistaratzen ditu\n" + msgid "" " -t, --time DAYS print only lastlog records more recent than " "DAYS\n" @@ -1359,6 +1399,24 @@ msgstr "Erabiltzaile-izena Ataka Azkena" msgid "**Never logged in**" msgstr "**Inoiz ez du saiorik hasi**" +#, fuzzy, c-format +#| msgid "%s: Failed to get the entry for UID %lu\n" +msgid "%s: Failed to update the entry for UID %lu\n" +msgstr "%s: Huts %lu UIDaren sarrera eskuratzean\n" + +#, fuzzy, c-format +#| msgid "%s: failed to reset the lastlog entry of UID %lu: %s\n" +msgid "%s: Failed to update the lastlog file\n" +msgstr "%s: huts %lu UIDaren lastlog sarrera berrezartzean: %s\n" + +#, c-format +msgid "%s: Option -C cannot be used together with option -S\n" +msgstr "" + +#, c-format +msgid "%s: Options -C and -S require option -u to specify the user\n" +msgstr "" + #, c-format msgid "Usage: %s [-p] [name]\n" msgstr "Erabilera: %s [-p] [izena]\n" @@ -1392,14 +1450,6 @@ msgstr "" "\n" "[Deskonexioa saltatuta -- root-ek saio-hastea baimenduta.]" -#, c-format -msgid "" -"\n" -"Login timed out after %u seconds.\n" -msgstr "" -"\n" -"Saio-hasiera denboraz kanpo %u segundo igarotakoan.\n" - #, c-format msgid "%s: Cannot possibly work without effective root\n" msgstr "%s: Ezingo du ziurrenik funtzionatu erro efektibo bat gabe\n" @@ -1409,6 +1459,14 @@ msgstr "" "Ez dago utmp sarrerarik. \"login\" \"sh\" maila baxuenetik exekutatu beharko " "zenuke" +#, c-format +msgid "" +"\n" +"Login timed out after %u seconds.\n" +msgstr "" +"\n" +"Saio-hasiera denboraz kanpo %u segundo igarotakoan.\n" + #, c-format msgid "login: PAM Failure, aborting: %s\n" msgstr "saio hasiera: PAM hutsa, uzten: %s\n" @@ -1483,6 +1541,11 @@ msgstr "Erabilera: newgrp [-] [taldea]\n" msgid "Usage: sg group [[-c] command]\n" msgstr "Erabilera: sg taldea [[-c] komandoa]\n" +#, fuzzy, c-format +#| msgid "%s: failed to remove %s\n" +msgid "%s: failed to crypt password with previous salt: %s\n" +msgstr "%s: huts %s kentzerakoan\n" + msgid "Invalid password.\n" msgstr "Pasahitz baliogabea.\n" @@ -1550,6 +1613,21 @@ msgstr "%s: %d lerroa: chown %s-ek huts egin du: %s\n" msgid "%s: line %d: can't update entry\n" msgstr "%s: %d lerroa: ezin da sarrera eguneratu\n" +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to prepare new %s entry\n" +msgstr "%s: huts %s sarrera berria prestatzean '%s'\n" + +#, fuzzy, c-format +#| msgid "%s: can't create user\n" +msgid "%s: can't find subordinate user range\n" +msgstr "%s: ezin da erabiltzailea sortu\n" + +#, fuzzy, c-format +#| msgid "%s: can't create group\n" +msgid "%s: can't find subordinate group range\n" +msgstr "%s: ezin da taldea sortu\n" + msgid "" " -a, --all report password status on all accounts\n" msgstr "" @@ -1827,12 +1905,6 @@ msgstr "Pasahitz autentifikazioa saltatuta.\n" msgid "Please enter your OWN password as authentication.\n" msgstr "Sartu zure pasahitz PROPIOA autentifikazio gisa.\n" -msgid " ...killed.\n" -msgstr "" - -msgid " ...waiting for child to terminate.\n" -msgstr "" - #, fuzzy, c-format #| msgid "%s: Cannot determine your user name.\n" msgid "%s: Cannot fork user shell\n" @@ -1850,12 +1922,20 @@ msgid "Session terminated, terminating shell..." msgstr "" #, c-format -msgid "%s: %s\n" -msgstr "%s: %s\n" +msgid " ...killed.\n" +msgstr "" + +#, c-format +msgid " ...waiting for child to terminate.\n" +msgstr "" msgid " ...terminated.\n" msgstr "" +#, c-format +msgid "%s: %s\n" +msgstr "%s: %s\n" + msgid "" "Usage: su [options] [LOGIN]\n" "\n" @@ -2127,6 +2207,11 @@ msgstr "%s: huts %lu UIDaren faillog erregistroa berrezartzean: %s\n" msgid "%s: failed to reset the lastlog entry of UID %lu: %s\n" msgstr "%s: huts %lu UIDaren lastlog sarrera berrezartzean: %s\n" +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to prepare the new %s entry\n" +msgstr "%s: huts %s sarrera berria prestatzean '%s'\n" + #, c-format msgid "%s: cannot create directory %s\n" msgstr "%s: ezin da %s direktorioa sortu\n" @@ -2170,6 +2255,16 @@ msgstr "%s: ezin da %s direktorioa sortu\n" msgid "%s: can't create group\n" msgstr "%s: ezin da taldea sortu\n" +#, fuzzy, c-format +#| msgid "%s: can't create user\n" +msgid "%s: can't create subordinate user IDs\n" +msgstr "%s: ezin da erabiltzailea sortu\n" + +#, fuzzy, c-format +#| msgid "%s: can't create group\n" +msgid "%s: can't create subordinate group IDs\n" +msgstr "%s: ezin da taldea sortu\n" + #, c-format msgid "" "%s: warning: the home directory already exists.\n" @@ -2222,6 +2317,11 @@ msgstr "" "%s: ezin da %s taldea ezabatu beste erabiltzaile baten talde nagusia bait " "da.\n" +#, fuzzy, c-format +#| msgid "%s: cannot remove entry '%s' from %s\n" +msgid "%s: cannot remove entry %lu from %s\n" +msgstr "%s: ezin da '%s' sarrera %s-tik kendu\n" + #, fuzzy, c-format #| msgid "%s: %s home directory (%s) not found\n" msgid "%s: %s mail spool (%s) not found\n" @@ -2347,6 +2447,18 @@ msgstr " -u, --uid UID erabiltzaile kontuaren UID berria\n" msgid " -U, --unlock unlock the user account\n" msgstr " -U, --unlock erabiltzaile kontua desblokeatu\n" +msgid " -v, --add-subuids FIRST-LAST add range of subordinate uids\n" +msgstr "" + +msgid " -V, --del-subuids FIRST-LAST remove range of subordinate uids\n" +msgstr "" + +msgid " -w, --add-subgids FIRST-LAST add range of subordinate gids\n" +msgstr "" + +msgid " -W, --del-subgids FIRST-LAST remove range of subordinate gids\n" +msgstr "" + #, fuzzy #| msgid "" #| " -Z, --selinux-user new SELinux user mapping for the user " @@ -2372,6 +2484,16 @@ msgstr "" msgid "%s: user '%s' already exists in %s\n" msgstr "%s: '%s' erabiltzailea badago dagoeneko %s-n\n" +#, fuzzy, c-format +#| msgid "%s: invalid date '%s'\n" +msgid "%s: invalid subordinate uid range '%s'\n" +msgstr "%s: '%s' data baliogabea\n" + +#, fuzzy, c-format +#| msgid "%s: invalid date '%s'\n" +msgid "%s: invalid subordinate gid range '%s'\n" +msgstr "%s: '%s' data baliogabea\n" + #, fuzzy, c-format #| msgid "%s: cannot open %s\n" msgid "%s: no options\n" @@ -2389,6 +2511,11 @@ msgstr "%s: -e eta -f aukerek itzalpeko pasahitzak eskatzen dute\n" msgid "%s: UID '%lu' already exists\n" msgstr "%s: '%lu' UIDa badago dagoeneko\n" +#, fuzzy, c-format +#| msgid "%s: %s is not authorized to change the password of %s\n" +msgid "%s: %s does not exist, you cannot use the flags %s or %s\n" +msgstr "%s: %s ez dago %s-ren pasahitza aldatzeko baimendurik\n" + #, c-format msgid "%s: directory %s exists\n" msgstr "%s: %s direktorioa badago\n" @@ -2434,6 +2561,26 @@ msgstr "huts egin du postontzia jabez aldatzean" msgid "failed to rename mailbox" msgstr "huts egin du postontzia izenez aldatzean" +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to remove uid range %lu-%lu from '%s'\n" +msgstr "%s: huts %s sarrera berria prestatzean '%s'\n" + +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to add uid range %lu-%lu from '%s'\n" +msgstr "%s: huts %s sarrera berria prestatzean '%s'\n" + +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to remove gid range %lu-%lu from '%s'\n" +msgstr "%s: huts %s sarrera berria prestatzean '%s'\n" + +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to add gid range %lu-%lu from '%s'\n" +msgstr "%s: huts %s sarrera berria prestatzean '%s'\n" + #, c-format msgid "" "You have modified %s.\n" @@ -2489,6 +2636,19 @@ msgstr "Ezin da fitxategia blokeatu" msgid "Couldn't make backup" msgstr "Ezin izan da babeskopiarik egin" +#, fuzzy, c-format +#| msgid "%s: PAM: %s\n" +msgid "%s: %s: %s\n" +msgstr "%s: PAM: %s\n" + +#, c-format +msgid "%s: %s returned with status %d\n" +msgstr "" + +#, c-format +msgid "%s: %s killed by signal %d\n" +msgstr "" + #, fuzzy #| msgid "failed to rename mailbox" msgid "failed to open scratch file" diff --git a/po/fi.gmo b/po/fi.gmo new file mode 100644 index 0000000000000000000000000000000000000000..e8fef5b16d22e2899b98953402bcb5830747a36e GIT binary patch literal 20312 zcmb803!EKSec#8$3HG%eVnZ-C;2aAJtz_Lr5`M9^z(QKfLRzgNt=4gbY({%$_s-sX zXD)YUR=xy6D6f>Xl=3iX8yqK*TOOr6LLB0xi9r}h2ySU1kXP4NBTmEdFGi@-kup9fy>Z1;XOcq#8M2OHpF@FH*# zJOkeA(?1J7i}x>s&jkMnq^sZ?;8oza!L8us&vAG&xRdwO;ML$eeELJ+b9w&~_ygd7 z0X4qA1o;~I`9v`E#TjQ>URr`YF>AOQ(y?%enFLg z2sGetgW|)VgX;HL{87K#z*m8{f#UbuLG^bIG~nkz&GQ=|RfE3+`4>EwP7OE>z7U)T zmEHq2zPEzcfFJbfUjU!a`yYcU{~gePSJAk}H3Mqg_kb!l1l7*_Km&dn)H?h=xEK60 zkR=VaQHiF48PI?yK=CaH#h(X3t;gs6`(J^E_p9hc=`*1CwgQSD?*b_jJOmo>QSjy9 z6QJb6z$Cg3-VCzz!3RL~^9fM={yHc=d>5oj@Ej(qa=Sp~9{|;U3`&mP0;;|HLCN#S zK?8mr6kq-ZRQoT0nLEH&f|_>^)OddqL==Mefo}&t0=^V{DT`>p6;Sy<1zrq303HNC z2ukk%7pQT52UNRP8Yc%kz-xIw2x>ktsQ%srs{H-n%fL^9+K=A^wLX6Xs@z3Xz6pFG zsP_f`9)ptq2R(ia6kmP=)c*UgAgl|%3H~5>F+y-Vcr|zncnVbg_k!OC{vxRHdny18zXp^Xv_S*@ILN=?XZa($__)XKf|9Ep2${xz0MvY63rb(T6TAZa z1<-)M3`!1u7d!|)7bSBucn_%cx*udIf`>gm0nYG#=?!kb90WCv2sGgPK}0I}G^q7? z0)$1uMK`+kZU!~4yTBE20BU@H;Pbx?Y8|gc$ry02$9q7@!y7@iR`38QIXDlh{-1*4 z_k|2z={rHC9|JX>o=?9YlpH+b@lQa_^NL%XThT!Gk1K=F^aZvpGf8g`L z%TbmF+yROYhe55!8$ehUe8j*1F{tre2JWu|jq{VB*5hm7mEd@3yQy&BUH}?_kxn|1@IJj4=DM5 z1k`$c9()1#7vQzvCAYiuCdk$aPJ)u-w}Q(5BsdFx6%_xk-si^oQt)ct7eR&?ycT>u z_%Vb^-0&;rRQP2OU4I zxs$fYUj#M&4|@C}sB!*xQ0wy7pxV9ekelz#;0t*_25totQ0wttQ2l<)r$6rB{~A>J zXTQqH$8KAA$7y5OmT$xj+BfKeLR%Z~Ny(@CTrG z`}dE7zY1yJif7A^*6f!c{j{F?X?^v(7D4>z zll$|JYtNtM`5!BTyG=L-n8b+)JUiLO%_?7Siud z=rd3Q+5x=*Du18n;YR2ud_oAm2>K}W3TO+IL*;M4!+$7Wz<&vSKePZn6Dogi@eBhZ!5KZ5l8GIZEJ1;Ib__$wZN9sB|`1O0pGJoHbY_duV9^!qvJLg-D9bj&g6 zozOpr^gHe#_yl+vl=^qURsQ+yU6bOp2uT@C3sr$3FYndzo0aWZ3q z#))B;M?JIDO|z(FmeYY5q(vSlk?DnTl1E9HEJZM4xDQCPn+hzw9_naOs1b|wr$2~iY=QY>_w+lW`8?{O(rx+bhaAgv@+mK zNdI{|GJb+#s~0D6mJh-_9Z=@f)^1CDU+OT5wqfmwmy{cLZr750R2w;0eu z49`tB%yPF*(~To~J{x9+fu{+7ryI2j+0(5tTKBElw#*#!>w+9?&1PtoMjcKaT470} z*7h>R#F?Gk(L*N?3`Ay7 z(2Ha@teA0kTELv4Wx!gDh_DNKX)9hHR>ET9ggw>^bG4}5=9ZEPErrQ8@hwAKB9b*E zGi8SkqmmWo8Ir*!*qZrep^7HzvfTtN4{2KKG{>>y&irUl=Y=tv9ZCN!Qe`EEta zVbRSqvmAG$u|jD-O6(TcyvP8>(Hrkao44$(-oJ_NW1IM4v{K7GHbA#%MP^HPi&HQu zJ8NK;yWxs27!3w+&rTgNV~i2o%Z<`yY55VZ)=tkKQx3)!*SYiky0<=kkfo3eq+O<*@V9PslsO%pFmG}+e)njUpe-IeXOWIOE*(%b2nD6Fq&3-sG*63uK-U6Qn6deMsp@egTVi@s%%)h&*x8y6@o<3yQq1ypGw%eFHv zSXI+jQ?VK9*2z`x71)n6nBxMiBinms}Pv!dTm2W(weAZv%M z^sL(ll^)GX?eCn5=DxAAC0i#;d1m?+H!Wqt1P@~QX*KCf$?!{0W~LqD_MC~(kWL8v zEUahXW>WTRE6A`)iTBa`h>Pn}>)Q*Hp?3~U){mBAc2~;na*P7j)C@@lgsDXYLW!fE$a~1oXaAuvTTN66m&=i-CDNoH>chDL|O}pge_F%`3qtO}`0)KA> zHpR(~9l^e(r6|K~NljMhuT`hv(o$NWD-O&aJv4iOHYsHjX7B6A_-eAt2c+Jn?&jB= zn`<68u)Qi2sZf+%Y=5{-`&umxzvMWbl&ZNAyfSQ61C%kJHYV6_jl4J5);At0U@AM! zNTHfpKXgE2S6K$@v!eT=rGhcS_5Jb~cCYpC$6|#Bo$a_Ukx@jwp0eflmD*fl((d~_6-ALAvnV>1z z0B7RFiH1~NzmK3vMJT9X;3~-mkt1u9oxPEZK0Xfo%_7<nAfwU>ak!eNFT$j{0YtQ#OR>tY$^yg-h( zECJ9q+|^C*!ca<`MKG>FHs@M#IzpDx-LMnV!BNW zx@{~|N?Qp<-s`)Ps5u)4$>Wfo!iU!~Y;mexvZrlBW*3FsHCwXwmf)!M&?>IMJ#R>0 zAi5!{4aO^A&%b#rQ8`d1IZyM0pk#unsdRt7Fv>fW5PEV#F-i#wYA1P&UXl?gj}j2^ zs=>PYr@Ja0?O+=#1+UCd8K+5T7*$~n*Zf^at1%lw`tg40?s(L6#p}w8rjGlVx-vJ` zlN%}F<8pQ#D}xj0qe-=B&|5y3&4L9MqF?Spr|K1gN;%^vx_zWzccXF&QIfGDL(@v7 ztqE+G+P4}aY8M@=`eu1*y!3Odh)82rarJa?G6~P%5n%k5Y#8R$$0&6oz9(dN;eBv2 z3s(pjaB=Jz&nbU=6hebPAgv1}b>Wh>sYpE}iCIxUlcf7Yty z7v@yjm*8YnJ~Dss(9zS4#=J|JX&BR7+R34muV?np&&};SdZ1E1T8S!=86%18&9$_H zFJrB-T4<{UR8qgHR(oj0S-;EKgAE{Up&m8{Mp%m;$=M#wG_AKfSd*ZRjFE58hw$=e(EzplwQvw?NjV~dceL~5zfKhOEh93W zBvhlIcC+b5c;e34BS*#>k->JU95m&)o6;$olDDo>cvk9L4Xt`Ku%{GbO&D{G;KL?4 z6S2NrRp1VVQuUv&;kC_-=ioqm(#%^XT$Uc-#FYpqWS7XjAzGRaswxw{e`AzWI{Tv? zf0trWXQHKZbv|UhD>PX;h+jv4$P&)4j$Ks1#wJd~SFchsqonfq%I$7*ov&#fYk1d2 zUpXb%npTUrGNlfAk}UK^sUat8o#imlx2UzjC|bjbCKzwMUM^3utxwiao)UKs(zDY+ z$oL44Il;j#(fNw?d!$KhZ`mtMVBI%2UHKHNX=|ZBt&Y&T%uCg&zNtpc79-Ie9hUs0?yKkA^-8jwx)F5xpWh-&3`O0D?Yc8ZSrr%k?%BWnVn!8@s+Bi=VQ|h|YDHxfl-8IM=w_QQYYu&}HqZvWJ4(4X(jh%d#6fv_o7?I~>l2{jkt`7TPP$ zyW4p*LEM%#%8tArJWZoll@0PidNr?m~->hQ)Pgn!&F;VtGS@jqS?7Fj zFe^U6S{PMLN^h(~7Y`Aafh#=Liwj^Dvq(639u8twb-J+_qtn@MiAlS$!U4Oi>PHeo z0$#@V-n^!0JAi3VuaCMMAFc}(Ln^t4h`TF4cMOZ(oSOGb>@WMuwa`QmbuRdt_%>*! zIB|7y&WE|nCQl_0$DHk8qL|t1q!2R@n|?}il!vaymaW+qu8xs_E|Y;JQQTxeR#>RY z?MkN;!RT7)iJlGh5M#pFIP9>?c!sH(3HP&WA(3=!_ATx^bad~&&#dy%xdRakchIwHlJJ-^zo10r!f3|<5=+oR9vXc*e8+Wr@Os>b~ zZbzt6j?2s4=iA9`?`*Ct)!vIuuV5E4u5xo)9Z*{?jU-(SeFr7y5nkM5Hx<@~9hirq z4MeAUMUkg&gQsiU>XlX4;8gNU?5nPYahrk1J5gwi;i{QBkK z2E^{NFihOYTtUB0d{fnE#a>rzKJG;5XTC=;{i2o9sZ+HzO%&JfiHXyiogznZ*Got= z0&Nxz7KvqYcon7}=bdWgP7zMcu~O?AAbF<~D9Y)> zhaA0#P&CUc<*|MwW-h@^*JoN0^cuh=`3+#XR_;57FOpVnYrHK>b=>809&c8F zT^+NHF(vADqZYKn5{^x>3C^CzDDt>pa9pB~p*CpY0b?F=BT+1rlijo>;<({SD|fEX(}<=YhAzGW!cg?J)N>+GN9fj z+Oh*cct$c_Zq90GWBvpi3$;}gt{E13m=A||eej6E6WGg2Sf>H$cZJZOeq+a8m5@@J zypbldT5_t|<9G;|gc^UX0qxYq$LnWQP{tB>Q&fj`mQ7*~mrM)41%F_A_%QPeW z;v}J`Pv?wd1bl)Wc-T0%UCwi- zIw;OaiVB{LZoL<{z{Oz5)u}BTEOzaVrVywv(q33OnM5aCl-o8loHeH4U21vF*51-Q7w7OdQS>1>lq=$F8?%!Quklf@ zvy127vaoPBUDj(Q+@#1Q87c9pMSji0hnvTaZFfa8TDRr=eO++G+p!4~rma(ohuF-` zB+7IYRLP3!Zk>6_hb+CP)uI@T41k8}^!r3Hr%aJRt53!!$E1Aek=nsxFTxadwHR3L z#yVHDtu)Fx>yB79PdNR4-g4QTANgd3%XKN&idr%hQX{p2I0jiMEXVX@jaL2cBX;Me zP7-DHK~yr4(@$Js4qqfq3zfwA{H{W`aD6&*jRww2nGKG}358F5;$z#&6%O0p@K%FT zM#uI36jr~@o_E5&RRKJkpsoj8WP*#dy>VEq#SXM3H08|Y|2bRBAPFj1Rh+6Q!E53b zx!^dU!$(J&+SnMv!5Vij`2T%-fZ#6Z@uFNv;@x)+ckSi~PQ>wGpx)Itr8YVjV6w0< z3GVJ8Ujr8W{KGmlh}ViVPaDDEl+yt@7{PIC2^i=W9jk7Uaqgaf7@L<2^J!D^u_m7q zvklp5bcx?gy@#4G$HR=my9B|a)vxqZGHX(FwM(e8SP#5vvKMj&HJ&-X(flqO#olE< zUYVq3OcS{HTl#X;2XE|Yd+~2KWi4V4HZQ+Eyss6W97K6hYjsxUZg6Jlj8gdyg`O$S`Pt&6aHu@F|ow7Cg`=SQVkQk!$#sG z_Ud?HZ-URCyZB;wr%wwe8m@1uTHYot*GsQ&`egmwhm(uRca&yjj>4UlWpV6j6;5+v z;t5HdbL2lipq`cJa9Vn|Tr=q^=dfC7nAieSTl7)FmhBTY>`92y^kIS`Uf0C5Ibj{h zu=*;2P)Jv~?D|aZ1i3ne3g+aMus7*aQ3%X-Cflj~2(vpfx!Rvs>nn^QB&kSkJe&Pjij&(KOO zI6t?q8Zj2rcZcG`e$v%~j*r6eb3bYy^QTJkC`P7kWVbbi%5eKAD3IlG+}u!$aVQ`S zhMf%#kJ=nFa8*>|gjm}A$%{I>%|U2`uVc`#EG#E6_}|v)oHqWTs5--VdZlRXh>hEw zC%b{YwjSAJ<5tG&4okIVkVEIHEabzcm3bTHaC*&|3Y?6bjjkV-l@oth&QST;gFCME zEFni}us{ej9QAEz;Zhu#LOG!*JvkC~(b-Rc^qBc<-Ad%AQ6 zV0{(}Lw5k$MEIW>3>>Rj+70{lg*SM%(8#vXepQNQmwEkx|NotQ=e~-p~jOCs#>{@E*BHJAVQF6I+=04MKGB;?!Bzb#^#r& zKbtgQOH8y*J6atV$ygqf>hx zqerO$E{ft%FSO%)6X$|f0#{>~G)l=p#l7lsea%UJI9_d3xBNmx?Uc{eAt&FI)WvIO z?aZ?*TlRzkbccc*;QPB-j!es3&CH(Xde<%JqjU#K6O&N`)p9c-?ni2R!yTk{ilSRx z{qv^=E~n{t Zrp^@lVcRNZG#4K}>kc2^mIZ4B{~u6`y@3D# literal 0 HcmV?d00001 diff --git a/po/fi.po b/po/fi.po index 9b525610..54382698 100644 --- a/po/fi.po +++ b/po/fi.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: shadow 4.0.18.1\n" "Report-Msgid-Bugs-To: pkg-shadow-devel@lists.alioth.debian.org\n" -"POT-Creation-Date: 2012-05-20 19:52+0200\n" +"POT-Creation-Date: 2016-09-18 21:41-0500\n" "PO-Revision-Date: 2007-11-24 22:54+0100\n" "Last-Translator: Tommi Vainikainen \n" "Language-Team: Finnish \n" @@ -440,6 +440,11 @@ msgstr "%s: virheellinen kotipuhelin: \"%s\"\n" msgid "%s: cannot access chroot directory %s: %s\n" msgstr "%s: hakemistoa %s ei voi luoda\n" +#, fuzzy, c-format +#| msgid "%s: cannot create directory %s\n" +msgid "%s: cannot chdir to chroot directory %s: %s\n" +msgstr "%s: hakemistoa %s ei voi luoda\n" + #, fuzzy, c-format #| msgid "%s: cannot create directory %s\n" msgid "%s: unable to chroot to directory %s: %s\n" @@ -781,6 +786,11 @@ msgstr "%s: rivi %d: rivi on liian pitkä\n" msgid "%s: line %d: missing new password\n" msgstr "%s: rivi %d: uusi salasana puuttuu\n" +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to crypt password with salt '%s': %s\n" +msgstr "%s: Oikeuksien pudottaminen epäonnistui (%s)\n" + #, fuzzy, c-format #| msgid "%s: group %s does not exist\n" msgid "%s: line %d: group '%s' does not exist\n" @@ -1076,6 +1086,11 @@ msgstr "Jäsen on jo olemassa\n" msgid "%s: Cannot setup cleanup service.\n" msgstr "%s: Käyttäjätunnusta ei voi selvittää.\n" +msgid "" +" -f, --force delete group even if it is the primary group " +"of a user\n" +msgstr "" + #, fuzzy, c-format #| msgid "%s: cannot rename directory %s to %s\n" msgid "%s: cannot remove entry '%s' from %s\n" @@ -1292,6 +1307,16 @@ msgid "" " -b, --before DAYS print only lastlog records older than DAYS\n" msgstr "" +msgid "" +" -C, --clear clear lastlog record of an user (usable only " +"with -u)\n" +msgstr "" + +msgid "" +" -S, --set set lastlog record to current time (usable " +"only with -u)\n" +msgstr "" + msgid "" " -t, --time DAYS print only lastlog records more recent than " "DAYS\n" @@ -1310,6 +1335,24 @@ msgstr "Käyttäjä Portti Viimeksi" msgid "**Never logged in**" msgstr "**Ei koskaan kirjautunut sisään**" +#, fuzzy, c-format +#| msgid "%s: cannot create directory %s\n" +msgid "%s: Failed to update the entry for UID %lu\n" +msgstr "%s: hakemistoa %s ei voi luoda\n" + +#, fuzzy, c-format +#| msgid "%s: can't update password file\n" +msgid "%s: Failed to update the lastlog file\n" +msgstr "%s: salasanatiedostoa ei voi päivittää\n" + +#, c-format +msgid "%s: Option -C cannot be used together with option -S\n" +msgstr "" + +#, c-format +msgid "%s: Options -C and -S require option -u to specify the user\n" +msgstr "" + #, c-format msgid "Usage: %s [-p] [name]\n" msgstr "Käyttö: %s [-p] [nimi]\n" @@ -1343,6 +1386,13 @@ msgstr "" "\n" "[Yhteydenkatkaisu ohitettu -- pääkäyttäjän kirjautuminen sallittu.]" +#, c-format +msgid "%s: Cannot possibly work without effective root\n" +msgstr "" + +msgid "No utmp entry. You must exec \"login\" from the lowest level \"sh\"" +msgstr "Ei utmp-tietuetta. Suorita \"login\" alimman tason kuoresta" + #, fuzzy, c-format #| msgid "" #| "\n" @@ -1354,13 +1404,6 @@ msgstr "" "\n" "Sisäänkirjautuminen keskeytetty %d sekunnin jälkeen.\n" -#, c-format -msgid "%s: Cannot possibly work without effective root\n" -msgstr "" - -msgid "No utmp entry. You must exec \"login\" from the lowest level \"sh\"" -msgstr "Ei utmp-tietuetta. Suorita \"login\" alimman tason kuoresta" - #, c-format msgid "login: PAM Failure, aborting: %s\n" msgstr "login: PAM-virhe, keskeytetään: %s\n" @@ -1438,6 +1481,11 @@ msgstr "Käyttö: newgrp [-] [ryhmä]\n" msgid "Usage: sg group [[-c] command]\n" msgstr "Käyttö: sg ryhmä [[-c] komento]\n" +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to crypt password with previous salt: %s\n" +msgstr "%s: Oikeuksien pudottaminen epäonnistui (%s)\n" + #, fuzzy msgid "Invalid password.\n" msgstr "Vanha salasana: " @@ -1507,6 +1555,20 @@ msgstr "%s: rivi %d: chown epäonnistui\n" msgid "%s: line %d: can't update entry\n" msgstr "%s: rivi %d: tietuetta ei voi päivittää\n" +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to prepare new %s entry\n" +msgstr "%s: Oikeuksien pudottaminen epäonnistui (%s)\n" + +#, fuzzy, c-format +msgid "%s: can't find subordinate user range\n" +msgstr "%s: tiedostoa %s ei voi luoda\n" + +#, fuzzy, c-format +#| msgid "%s: can't update group file\n" +msgid "%s: can't find subordinate group range\n" +msgstr "%s: ryhmätiedostoa ei voi päivittää\n" + msgid "" " -a, --all report password status on all accounts\n" msgstr "" @@ -1760,12 +1822,6 @@ msgstr "Salasanatodennus ohitettu.\n" msgid "Please enter your OWN password as authentication.\n" msgstr "Syötä OMA salasanasi todennukseksi.\n" -msgid " ...killed.\n" -msgstr "" - -msgid " ...waiting for child to terminate.\n" -msgstr "" - #, fuzzy, c-format #| msgid "%s: cannot lock file %s\n" msgid "%s: Cannot fork user shell\n" @@ -1783,12 +1839,20 @@ msgid "Session terminated, terminating shell..." msgstr "" #, c-format -msgid "%s: %s\n" -msgstr "%s: %s\n" +msgid " ...killed.\n" +msgstr "" + +#, c-format +msgid " ...waiting for child to terminate.\n" +msgstr "" msgid " ...terminated.\n" msgstr "" +#, c-format +msgid "%s: %s\n" +msgstr "%s: %s\n" + msgid "" "Usage: su [options] [LOGIN]\n" "\n" @@ -2054,6 +2118,11 @@ msgstr "" msgid "%s: failed to reset the lastlog entry of UID %lu: %s\n" msgstr "" +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to prepare the new %s entry\n" +msgstr "%s: Oikeuksien pudottaminen epäonnistui (%s)\n" + #, c-format msgid "%s: cannot create directory %s\n" msgstr "%s: hakemistoa %s ei voi luoda\n" @@ -2100,6 +2169,14 @@ msgstr "%s: hakemistoa %s ei voi luoda\n" msgid "%s: can't create group\n" msgstr "%s: tiedostoa %s ei voi luoda\n" +#, fuzzy, c-format +msgid "%s: can't create subordinate user IDs\n" +msgstr "%s: tiedostoa %s ei voi luoda\n" + +#, fuzzy, c-format +msgid "%s: can't create subordinate group IDs\n" +msgstr "%s: tiedostoa %s ei voi luoda\n" + #, c-format msgid "" "%s: warning: the home directory already exists.\n" @@ -2142,6 +2219,11 @@ msgstr "" "%s: Ryhmää %s ei voi poistaa, koska se on toisen käyttäjän ensisijainen " "ryhmä.\n" +#, fuzzy, c-format +#| msgid "%s: cannot rename directory %s to %s\n" +msgid "%s: cannot remove entry %lu from %s\n" +msgstr "%s: hakemistoa %s ei voi uudelleennimetä hakemistoksi %s\n" + #, fuzzy, c-format #| msgid "%s: invalid home directory '%s'\n" msgid "%s: %s mail spool (%s) not found\n" @@ -2250,6 +2332,18 @@ msgstr "" msgid " -U, --unlock unlock the user account\n" msgstr "" +msgid " -v, --add-subuids FIRST-LAST add range of subordinate uids\n" +msgstr "" + +msgid " -V, --del-subuids FIRST-LAST remove range of subordinate uids\n" +msgstr "" + +msgid " -w, --add-subgids FIRST-LAST add range of subordinate gids\n" +msgstr "" + +msgid " -W, --del-subgids FIRST-LAST remove range of subordinate gids\n" +msgstr "" + msgid "" " -Z, --selinux-user SEUSER new SELinux user mapping for the user " "account\n" @@ -2266,6 +2360,16 @@ msgstr "" msgid "%s: user '%s' already exists in %s\n" msgstr "%s: käyttäjä %s on olemassa\n" +#, fuzzy, c-format +#| msgid "%s: invalid date '%s'\n" +msgid "%s: invalid subordinate uid range '%s'\n" +msgstr "%s: virheellinen päiväys \"%s\"\n" + +#, fuzzy, c-format +#| msgid "%s: invalid date '%s'\n" +msgid "%s: invalid subordinate gid range '%s'\n" +msgstr "%s: virheellinen päiväys \"%s\"\n" + #, fuzzy, c-format #| msgid "%s: cannot open file %s\n" msgid "%s: no options\n" @@ -2284,6 +2388,10 @@ msgstr "%s: varjosalasanat vaaditaan valitsimille -e ja -f\n" msgid "%s: UID '%lu' already exists\n" msgstr "Jäsen on jo olemassa\n" +#, c-format +msgid "%s: %s does not exist, you cannot use the flags %s or %s\n" +msgstr "" + #, c-format msgid "%s: directory %s exists\n" msgstr "%s: hakemisto %s on olemassa\n" @@ -2326,6 +2434,26 @@ msgstr "postilaatikon omistajan vaihtaminen epäonnistui" msgid "failed to rename mailbox" msgstr "postilaatikon uudelleennimeäminen epäonnistui" +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to remove uid range %lu-%lu from '%s'\n" +msgstr "%s: Oikeuksien pudottaminen epäonnistui (%s)\n" + +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to add uid range %lu-%lu from '%s'\n" +msgstr "%s: Oikeuksien pudottaminen epäonnistui (%s)\n" + +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to remove gid range %lu-%lu from '%s'\n" +msgstr "%s: Oikeuksien pudottaminen epäonnistui (%s)\n" + +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to add gid range %lu-%lu from '%s'\n" +msgstr "%s: Oikeuksien pudottaminen epäonnistui (%s)\n" + #, c-format msgid "" "You have modified %s.\n" @@ -2388,6 +2516,20 @@ msgstr "Tiedostoa ei voi lukita" msgid "Couldn't make backup" msgstr "Tiedostoa ei voi varmuuskopioida" +#, fuzzy, c-format +#| msgid "%s: %s\n" +msgid "%s: %s: %s\n" +msgstr "%s: %s\n" + +#, fuzzy, c-format +#| msgid "%s: %s not found in /etc/passwd\n" +msgid "%s: %s returned with status %d\n" +msgstr "%s: Käyttäjää %s ei löydy tiedostosta /etc/passwd\n" + +#, c-format +msgid "%s: %s killed by signal %d\n" +msgstr "" + #, fuzzy #| msgid "Unable to open group file\n" msgid "failed to open scratch file" @@ -3054,9 +3196,6 @@ msgstr "%s: virheellinen perushakemisto \"%s\"\n" #~ msgid "%s: can't rewrite password file\n" #~ msgstr "%s: salasanatiedostoa ei voi uudelleenkirjoittaa\n" -#~ msgid "%s: can't update password file\n" -#~ msgstr "%s: salasanatiedostoa ei voi päivittää\n" - #~ msgid "%s: can't update shadow password file\n" #~ msgstr "%s: varjosalasanatiedostoa ei voi päivittää\n" @@ -3078,9 +3217,6 @@ msgstr "%s: virheellinen perushakemisto \"%s\"\n" #~ msgid "Cannot open the password file.\n" #~ msgstr "Salasanatiedostoa ei voi avata.\n" -#~ msgid "%s: %s not found in /etc/passwd\n" -#~ msgstr "%s: Käyttäjää %s ei löydy tiedostosta /etc/passwd\n" - #~ msgid "Error updating the password entry.\n" #~ msgstr "Virhe päivitettäessä salasanatietuetta.\n" @@ -3286,9 +3422,6 @@ msgstr "%s: virheellinen perushakemisto \"%s\"\n" #~ msgid "%s: can't update shadow group file\n" #~ msgstr "%s: varjoryhmätiedostoa ei voi päivittää\n" -#~ msgid "%s: can't update group file\n" -#~ msgstr "%s: ryhmätiedostoa ei voi päivittää\n" - #~ msgid "%s: can't delete shadow group file\n" #~ msgstr "%s: varjoryhmätiedostoa ei voi poistaa\n" diff --git a/po/fr.gmo b/po/fr.gmo new file mode 100644 index 0000000000000000000000000000000000000000..292e93cbd741c4a7e9966fd328f949c8384a2797 GIT binary patch literal 74230 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 MdIcxyQA^za7m1?!;s5{u literal 0 HcmV?d00001 diff --git a/po/fr.po b/po/fr.po index 32a9b191..3420b395 100644 --- a/po/fr.po +++ b/po/fr.po @@ -12,7 +12,7 @@ msgid "" msgstr "" "Project-Id-Version: shadow\n" "Report-Msgid-Bugs-To: pkg-shadow-devel@lists.alioth.debian.org\n" -"POT-Creation-Date: 2012-05-20 19:52+0200\n" +"POT-Creation-Date: 2016-09-18 21:41-0500\n" "PO-Revision-Date: 2012-01-13 17:09+0100\n" "Last-Translator: Thomas Blein \n" "Language-Team: French \n" @@ -446,6 +446,11 @@ msgstr "%s : chemin de chroot « %s » incorrect.\n" msgid "%s: cannot access chroot directory %s: %s\n" msgstr "%s : impossible d'accéder au répertoire %s : %s\n" +#, fuzzy, c-format +#| msgid "%s: cannot access chroot directory %s: %s\n" +msgid "%s: cannot chdir to chroot directory %s: %s\n" +msgstr "%s : impossible d'accéder au répertoire %s : %s\n" + #, c-format msgid "%s: unable to chroot to directory %s: %s\n" msgstr "%s : impossible de « chrooter » dans le répertoire %s : %s\n" @@ -820,6 +825,11 @@ msgstr "%s : ligne %d : ligne trop longue\n" msgid "%s: line %d: missing new password\n" msgstr "%s : ligne %d : nouveau mot de passe manquant\n" +#, fuzzy, c-format +#| msgid "%s: Failed to write %s: %s\n" +msgid "%s: failed to crypt password with salt '%s': %s\n" +msgstr "%s : échec lors de l'écriture %s : %s\n" + #, c-format msgid "%s: line %d: group '%s' does not exist\n" msgstr "%s : ligne %d : le groupe %s n'existe pas\n" @@ -1153,6 +1163,16 @@ msgstr "%s : l'identifiant de groupe (GID) « %lu » existe déjà\n" msgid "%s: Cannot setup cleanup service.\n" msgstr "%s : Impossible de mettre en place un service de nettoyage.\n" +#, fuzzy +#| msgid "" +#| " -r, --reset reset the counters of login failures\n" +msgid "" +" -f, --force delete group even if it is the primary group " +"of a user\n" +msgstr "" +" -r, --reset réinitialiser les compteurs d'échecs de " +"connexion\n" + #, c-format msgid "%s: cannot remove entry '%s' from %s\n" msgstr "%s : impossible de supprimer l'entrée « %s » de %s\n" @@ -1385,6 +1405,28 @@ msgstr "" " b, --before JOURS n'afficher que les enregistrements de\n" " « lastlog » plus anciens que JOURS\n" +#, fuzzy +#| msgid "" +#| " -a, --all display faillog records for all users\n" +msgid "" +" -C, --clear clear lastlog record of an user (usable only " +"with -u)\n" +msgstr "" +" -a, --all afficher les enregistrements d'échec " +"(« faillog »)\n" +" pour tous les utilisateurs\n" + +#, fuzzy +#| msgid "" +#| " -a, --all display faillog records for all users\n" +msgid "" +" -S, --set set lastlog record to current time (usable " +"only with -u)\n" +msgstr "" +" -a, --all afficher les enregistrements d'échec " +"(« faillog »)\n" +" pour tous les utilisateurs\n" + msgid "" " -t, --time DAYS print only lastlog records more recent than " "DAYS\n" @@ -1407,6 +1449,28 @@ msgstr "Utilisateur Port Dernière" msgid "**Never logged in**" msgstr "**Jamais connecté**" +#, fuzzy, c-format +#| msgid "%s: Failed to get the entry for UID %lu\n" +msgid "%s: Failed to update the entry for UID %lu\n" +msgstr "" +"%s : échec de l'obtention de l'entrée pour l'identifiant d'utilisateur (UID) " +"%lu\n" + +#, fuzzy, c-format +#| msgid "%s: failed to reset the lastlog entry of UID %lu: %s\n" +msgid "%s: Failed to update the lastlog file\n" +msgstr "" +"%s : impossible de réinitialiser l'entrée lastlog de l'identifiant " +"d'utilisateur (UID) %lu : %s\n" + +#, c-format +msgid "%s: Option -C cannot be used together with option -S\n" +msgstr "" + +#, c-format +msgid "%s: Options -C and -S require option -u to specify the user\n" +msgstr "" + #, c-format msgid "Usage: %s [-p] [name]\n" msgstr "Syntaxe : %s [-p] [nom]\n" @@ -1441,14 +1505,6 @@ msgstr "" "\n" "[Déconnexion court-circuitée -- accès superutilisateur autorisé]." -#, c-format -msgid "" -"\n" -"Login timed out after %u seconds.\n" -msgstr "" -"\n" -"Tentative de connexion : délai de %u secondes dépassé.\n" - #, c-format msgid "%s: Cannot possibly work without effective root\n" msgstr "" @@ -1459,6 +1515,14 @@ msgstr "" "Pas d'entrée utmp. Vous devez exécuter « login » depuis l'interpréteur de " "commandes de plus bas niveau (« sh »)" +#, c-format +msgid "" +"\n" +"Login timed out after %u seconds.\n" +msgstr "" +"\n" +"Tentative de connexion : délai de %u secondes dépassé.\n" + #, c-format msgid "login: PAM Failure, aborting: %s\n" msgstr "login : échec de PAM, abandon : %s\n" @@ -1534,6 +1598,11 @@ msgstr "Syntaxe : newgrp [-] [groupe]\n" msgid "Usage: sg group [[-c] command]\n" msgstr "Syntaxe : sg groupe [[-c] commande]\n" +#, fuzzy, c-format +#| msgid "%s: Failed to write %s: %s\n" +msgid "%s: failed to crypt password with previous salt: %s\n" +msgstr "%s : échec lors de l'écriture %s : %s\n" + msgid "Invalid password.\n" msgstr "Mot de passe non valable.\n" @@ -1603,6 +1672,21 @@ msgstr "%s : ligne %d : échec de chown %s : %s\n" msgid "%s: line %d: can't update entry\n" msgstr "%s : ligne %d : impossible de mettre l'entrée à jour\n" +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to prepare new %s entry\n" +msgstr "%s : échec lors de la préparation de la nouvelle entrée de %s « %s »\n" + +#, fuzzy, c-format +#| msgid "%s: can't create user\n" +msgid "%s: can't find subordinate user range\n" +msgstr "%s : impossible de créer l'utilisateur\n" + +#, fuzzy, c-format +#| msgid "%s: can't create group\n" +msgid "%s: can't find subordinate group range\n" +msgstr "%s : impossible de créer le groupe\n" + msgid "" " -a, --all report password status on all accounts\n" msgstr "" @@ -1877,12 +1961,6 @@ msgstr "Authentification par mot de passe court-circuitée.\n" msgid "Please enter your OWN password as authentication.\n" msgstr "Entrez votre PROPRE mot de passe pour vous authentifier.\n" -msgid " ...killed.\n" -msgstr "… Tué.\n" - -msgid " ...waiting for child to terminate.\n" -msgstr "… en attente que les processus fils se terminent.\n" - #, c-format msgid "%s: Cannot fork user shell\n" msgstr "" @@ -1901,12 +1979,20 @@ msgid "Session terminated, terminating shell..." msgstr "Session terminée, arrêt de l'interpréteur de commandes…" #, c-format -msgid "%s: %s\n" -msgstr "%s : %s\n" +msgid " ...killed.\n" +msgstr "… Tué.\n" + +#, c-format +msgid " ...waiting for child to terminate.\n" +msgstr "… en attente que les processus fils se terminent.\n" msgid " ...terminated.\n" msgstr "… terminé.\n" +#, c-format +msgid "%s: %s\n" +msgstr "%s : %s\n" + msgid "" "Usage: su [options] [LOGIN]\n" "\n" @@ -2215,6 +2301,11 @@ msgstr "" "%s : impossible de réinitialiser l'entrée lastlog de l'identifiant " "d'utilisateur (UID) %lu : %s\n" +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to prepare the new %s entry\n" +msgstr "%s : échec lors de la préparation de la nouvelle entrée de %s « %s »\n" + #, c-format msgid "%s: cannot create directory %s\n" msgstr "%s : impossible de créer le répertoire %s\n" @@ -2258,6 +2349,16 @@ msgstr "%s : impossible de créer le répertoire tcb pour %s\n" msgid "%s: can't create group\n" msgstr "%s : impossible de créer le groupe\n" +#, fuzzy, c-format +#| msgid "%s: can't create user\n" +msgid "%s: can't create subordinate user IDs\n" +msgstr "%s : impossible de créer l'utilisateur\n" + +#, fuzzy, c-format +#| msgid "%s: can't create group\n" +msgid "%s: can't create subordinate group IDs\n" +msgstr "%s : impossible de créer le groupe\n" + #, c-format msgid "" "%s: warning: the home directory already exists.\n" @@ -2309,6 +2410,11 @@ msgstr "" "%s : le groupe %s est le groupe primaire d'un autre utilisateur et il ne " "sera pas supprimé.\n" +#, fuzzy, c-format +#| msgid "%s: cannot remove entry '%s' from %s\n" +msgid "%s: cannot remove entry %lu from %s\n" +msgstr "%s : impossible de supprimer l'entrée « %s » de %s\n" + #, c-format msgid "%s: %s mail spool (%s) not found\n" msgstr "" @@ -2444,6 +2550,18 @@ msgid " -U, --unlock unlock the user account\n" msgstr "" " -U, --unlock déverrouiller le compte de l'utilisateur\n" +msgid " -v, --add-subuids FIRST-LAST add range of subordinate uids\n" +msgstr "" + +msgid " -V, --del-subuids FIRST-LAST remove range of subordinate uids\n" +msgstr "" + +msgid " -w, --add-subgids FIRST-LAST add range of subordinate gids\n" +msgstr "" + +msgid " -W, --del-subgids FIRST-LAST remove range of subordinate gids\n" +msgstr "" + msgid "" " -Z, --selinux-user SEUSER new SELinux user mapping for the user " "account\n" @@ -2465,6 +2583,16 @@ msgstr "" msgid "%s: user '%s' already exists in %s\n" msgstr "%s : l'utilisateur « %s » existe déjà dans %s\n" +#, fuzzy, c-format +#| msgid "%s: invalid date '%s'\n" +msgid "%s: invalid subordinate uid range '%s'\n" +msgstr "%s : date « %s » non valable\n" + +#, fuzzy, c-format +#| msgid "%s: invalid date '%s'\n" +msgid "%s: invalid subordinate gid range '%s'\n" +msgstr "%s : date « %s » non valable\n" + #, c-format msgid "%s: no options\n" msgstr "%s : aucune option\n" @@ -2481,6 +2609,11 @@ msgstr "%s : les mots de passe cachés sont nécessaires avec -e ou -f\n" msgid "%s: UID '%lu' already exists\n" msgstr "%s : l'identifiant d'utilisateur (UID) « %lu » existe déjà\n" +#, fuzzy, c-format +#| msgid "%s: %s is not authorized to change the password of %s\n" +msgid "%s: %s does not exist, you cannot use the flags %s or %s\n" +msgstr "%s : %s n'est pas autorisé à modifier le mot de passe de %s\n" + #, c-format msgid "%s: directory %s exists\n" msgstr "%s : le répertoire %s existe\n" @@ -2528,6 +2661,26 @@ msgstr "échec du changement de propriétaire de la boîte à lettres" msgid "failed to rename mailbox" msgstr "échec du changement de nom de la boîte à lettres" +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to remove uid range %lu-%lu from '%s'\n" +msgstr "%s : échec lors de la préparation de la nouvelle entrée de %s « %s »\n" + +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to add uid range %lu-%lu from '%s'\n" +msgstr "%s : échec lors de la préparation de la nouvelle entrée de %s « %s »\n" + +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to remove gid range %lu-%lu from '%s'\n" +msgstr "%s : échec lors de la préparation de la nouvelle entrée de %s « %s »\n" + +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to add gid range %lu-%lu from '%s'\n" +msgstr "%s : échec lors de la préparation de la nouvelle entrée de %s « %s »\n" + #, c-format msgid "" "You have modified %s.\n" @@ -2582,6 +2735,20 @@ msgstr "Impossible de verrouiller le fichier" msgid "Couldn't make backup" msgstr "Impossible d'effectuer une sauvegarde" +#, fuzzy, c-format +#| msgid "%s: PAM: %s\n" +msgid "%s: %s: %s\n" +msgstr "%s : PAM : %s\n" + +#, fuzzy, c-format +#| msgid "%s: nscd exited with status %d" +msgid "%s: %s returned with status %d\n" +msgstr "%s : nscd s'est terminé avec le statut %d." + +#, c-format +msgid "%s: %s killed by signal %d\n" +msgstr "" + msgid "failed to open scratch file" msgstr "impossible d'ouvrir le fichier initial" diff --git a/po/gl.gmo b/po/gl.gmo new file mode 100644 index 0000000000000000000000000000000000000000..9caf334a4dea09df15d93700585b451707c4d5ef GIT binary patch literal 19464 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 literal 0 HcmV?d00001 diff --git a/po/gl.po b/po/gl.po index 7afcfa73..7bb61004 100644 --- a/po/gl.po +++ b/po/gl.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: shadow 4.0.18\n" "Report-Msgid-Bugs-To: pkg-shadow-devel@lists.alioth.debian.org\n" -"POT-Creation-Date: 2012-05-20 19:52+0200\n" +"POT-Creation-Date: 2016-09-18 21:41-0500\n" "PO-Revision-Date: 2006-07-18 23:27+0200\n" "Last-Translator: Jacobo Tarrio \n" "Language-Team: Galician \n" @@ -440,6 +440,11 @@ msgstr "%s: teléfono da casa non válido: \"%s\"\n" msgid "%s: cannot access chroot directory %s: %s\n" msgstr "%s: non se pode crear o directorio %s\n" +#, fuzzy, c-format +#| msgid "%s: cannot create directory %s\n" +msgid "%s: cannot chdir to chroot directory %s: %s\n" +msgstr "%s: non se pode crear o directorio %s\n" + #, fuzzy, c-format #| msgid "%s: cannot create directory %s\n" msgid "%s: unable to chroot to directory %s: %s\n" @@ -781,6 +786,11 @@ msgstr "%s: liña %d: liña longa de máis\n" msgid "%s: line %d: missing new password\n" msgstr "%s: liña %d: falla o novo contrasinal\n" +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to crypt password with salt '%s': %s\n" +msgstr "%s: non se puido deixar os privilexios (%s)\n" + #, fuzzy, c-format #| msgid "%s: group %s does not exist\n" msgid "%s: line %d: group '%s' does not exist\n" @@ -1076,6 +1086,11 @@ msgstr "O membro xa existe\n" msgid "%s: Cannot setup cleanup service.\n" msgstr "%s: Non se pode determinar o seu nome de usuario.\n" +msgid "" +" -f, --force delete group even if it is the primary group " +"of a user\n" +msgstr "" + #, fuzzy, c-format #| msgid "%s: cannot rename directory %s to %s\n" msgid "%s: cannot remove entry '%s' from %s\n" @@ -1292,6 +1307,16 @@ msgid "" " -b, --before DAYS print only lastlog records older than DAYS\n" msgstr "" +msgid "" +" -C, --clear clear lastlog record of an user (usable only " +"with -u)\n" +msgstr "" + +msgid "" +" -S, --set set lastlog record to current time (usable " +"only with -u)\n" +msgstr "" + msgid "" " -t, --time DAYS print only lastlog records more recent than " "DAYS\n" @@ -1310,6 +1335,24 @@ msgstr "Usuario Porto Última" msgid "**Never logged in**" msgstr "**Nunca entrou**" +#, fuzzy, c-format +#| msgid "%s: cannot create directory %s\n" +msgid "%s: Failed to update the entry for UID %lu\n" +msgstr "%s: non se pode crear o directorio %s\n" + +#, fuzzy, c-format +#| msgid "%s: can't update password file\n" +msgid "%s: Failed to update the lastlog file\n" +msgstr "%s: non se pode actualizar o ficheiro de contrasinais\n" + +#, c-format +msgid "%s: Option -C cannot be used together with option -S\n" +msgstr "" + +#, c-format +msgid "%s: Options -C and -S require option -u to specify the user\n" +msgstr "" + #, c-format msgid "Usage: %s [-p] [name]\n" msgstr "Emprego: %s [-p] [nome]\n" @@ -1343,6 +1386,15 @@ msgstr "" "\n" "[Omitida a desconexión -- permítese a entrada coma root.]" +#, c-format +msgid "%s: Cannot possibly work without effective root\n" +msgstr "" + +msgid "No utmp entry. You must exec \"login\" from the lowest level \"sh\"" +msgstr "" +"Non hai unha entrada en utmp. Debe executar \"login\" dende o \"sh\" de " +"nivel máis baixo" + #, fuzzy, c-format #| msgid "" #| "\n" @@ -1354,15 +1406,6 @@ msgstr "" "\n" "A entrada caducou despois de %d segundos.\n" -#, c-format -msgid "%s: Cannot possibly work without effective root\n" -msgstr "" - -msgid "No utmp entry. You must exec \"login\" from the lowest level \"sh\"" -msgstr "" -"Non hai unha entrada en utmp. Debe executar \"login\" dende o \"sh\" de " -"nivel máis baixo" - #, c-format msgid "login: PAM Failure, aborting: %s\n" msgstr "login: Fallo en PAM, a abortar: %s\n" @@ -1439,6 +1482,11 @@ msgstr "Emprego: newgrp [-] [grupo]\n" msgid "Usage: sg group [[-c] command]\n" msgstr "Emprego: sg grupo [[-c] orde]\n" +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to crypt password with previous salt: %s\n" +msgstr "%s: non se puido deixar os privilexios (%s)\n" + #, fuzzy msgid "Invalid password.\n" msgstr "Contrasinal antigo: " @@ -1508,6 +1556,20 @@ msgstr "%s: liña %d: a chamada a chown fallou\n" msgid "%s: line %d: can't update entry\n" msgstr "%s: liña %d: non se pode actualizar a entrada\n" +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to prepare new %s entry\n" +msgstr "%s: non se puido deixar os privilexios (%s)\n" + +#, fuzzy, c-format +msgid "%s: can't find subordinate user range\n" +msgstr "%s: non se pode crear %s\n" + +#, fuzzy, c-format +#| msgid "%s: can't update group file\n" +msgid "%s: can't find subordinate group range\n" +msgstr "%s: non se pode actualizar o ficheiro de grupos\n" + msgid "" " -a, --all report password status on all accounts\n" msgstr "" @@ -1761,12 +1823,6 @@ msgstr "Omitiuse a autenticación por contrasinal.\n" msgid "Please enter your OWN password as authentication.\n" msgstr "Introduza O SEU PROPIO contrasinal para autenticación.\n" -msgid " ...killed.\n" -msgstr "" - -msgid " ...waiting for child to terminate.\n" -msgstr "" - #, fuzzy, c-format #| msgid "%s: cannot lock file %s\n" msgid "%s: Cannot fork user shell\n" @@ -1784,12 +1840,20 @@ msgid "Session terminated, terminating shell..." msgstr "" #, c-format -msgid "%s: %s\n" -msgstr "%s: %s\n" +msgid " ...killed.\n" +msgstr "" + +#, c-format +msgid " ...waiting for child to terminate.\n" +msgstr "" msgid " ...terminated.\n" msgstr "" +#, c-format +msgid "%s: %s\n" +msgstr "%s: %s\n" + #, fuzzy msgid "" "Usage: su [options] [LOGIN]\n" @@ -2054,6 +2118,11 @@ msgstr "" msgid "%s: failed to reset the lastlog entry of UID %lu: %s\n" msgstr "" +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to prepare the new %s entry\n" +msgstr "%s: non se puido deixar os privilexios (%s)\n" + #, c-format msgid "%s: cannot create directory %s\n" msgstr "%s: non se pode crear o directorio %s\n" @@ -2100,6 +2169,14 @@ msgstr "%s: non se pode crear o directorio %s\n" msgid "%s: can't create group\n" msgstr "%s: non se pode crear %s\n" +#, fuzzy, c-format +msgid "%s: can't create subordinate user IDs\n" +msgstr "%s: non se pode crear %s\n" + +#, fuzzy, c-format +msgid "%s: can't create subordinate group IDs\n" +msgstr "%s: non se pode crear %s\n" + #, c-format msgid "" "%s: warning: the home directory already exists.\n" @@ -2142,6 +2219,11 @@ msgstr "" "%s: Non se pode eliminar o grupo %s, que é o grupo primario de outro " "usuario.\n" +#, fuzzy, c-format +#| msgid "%s: cannot rename directory %s to %s\n" +msgid "%s: cannot remove entry %lu from %s\n" +msgstr "%s: non se pode cambiar o nome do directorio %s a %s\n" + #, fuzzy, c-format #| msgid "%s: invalid home directory '%s'\n" msgid "%s: %s mail spool (%s) not found\n" @@ -2251,6 +2333,18 @@ msgstr "" msgid " -U, --unlock unlock the user account\n" msgstr "" +msgid " -v, --add-subuids FIRST-LAST add range of subordinate uids\n" +msgstr "" + +msgid " -V, --del-subuids FIRST-LAST remove range of subordinate uids\n" +msgstr "" + +msgid " -w, --add-subgids FIRST-LAST add range of subordinate gids\n" +msgstr "" + +msgid " -W, --del-subgids FIRST-LAST remove range of subordinate gids\n" +msgstr "" + msgid "" " -Z, --selinux-user SEUSER new SELinux user mapping for the user " "account\n" @@ -2267,6 +2361,16 @@ msgstr "" msgid "%s: user '%s' already exists in %s\n" msgstr "%s: o usuario %s existe\n" +#, fuzzy, c-format +#| msgid "%s: invalid date '%s'\n" +msgid "%s: invalid subordinate uid range '%s'\n" +msgstr "%s: data \"%s\" non válida\n" + +#, fuzzy, c-format +#| msgid "%s: invalid date '%s'\n" +msgid "%s: invalid subordinate gid range '%s'\n" +msgstr "%s: data \"%s\" non válida\n" + #, fuzzy, c-format #| msgid "%s: cannot open file %s\n" msgid "%s: no options\n" @@ -2285,6 +2389,10 @@ msgstr "%s: precísase de contrasinais de shadow para -e e -f\n" msgid "%s: UID '%lu' already exists\n" msgstr "O membro xa existe\n" +#, c-format +msgid "%s: %s does not exist, you cannot use the flags %s or %s\n" +msgstr "" + #, c-format msgid "%s: directory %s exists\n" msgstr "%s: o directorio %s existe\n" @@ -2327,6 +2435,26 @@ msgstr "non se puido cambiar o propietario da caixa do correo" msgid "failed to rename mailbox" msgstr "non se puido cambiar o nome da caixa do correo" +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to remove uid range %lu-%lu from '%s'\n" +msgstr "%s: non se puido deixar os privilexios (%s)\n" + +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to add uid range %lu-%lu from '%s'\n" +msgstr "%s: non se puido deixar os privilexios (%s)\n" + +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to remove gid range %lu-%lu from '%s'\n" +msgstr "%s: non se puido deixar os privilexios (%s)\n" + +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to add gid range %lu-%lu from '%s'\n" +msgstr "%s: non se puido deixar os privilexios (%s)\n" + #, c-format msgid "" "You have modified %s.\n" @@ -2389,6 +2517,20 @@ msgstr "Non se puido bloquear o ficheiro" msgid "Couldn't make backup" msgstr "Non se puido facer unha copia de seguridade" +#, fuzzy, c-format +#| msgid "%s: %s\n" +msgid "%s: %s: %s\n" +msgstr "%s: %s\n" + +#, fuzzy, c-format +#| msgid "%s: %s not found in /etc/passwd\n" +msgid "%s: %s returned with status %d\n" +msgstr "%s: non se atopou %s en /etc/passwd\n" + +#, c-format +msgid "%s: %s killed by signal %d\n" +msgstr "" + #, fuzzy #| msgid "Unable to open group file\n" msgid "failed to open scratch file" @@ -2960,9 +3102,6 @@ msgstr "%s: directorio base \"%s\" non válido\n" #~ msgid "%s: can't rewrite password file\n" #~ msgstr "%s: non se pode rescribir o ficheiro de contrasinais\n" -#~ msgid "%s: can't update password file\n" -#~ msgstr "%s: non se pode actualizar o ficheiro de contrasinais\n" - #~ msgid "%s: can't update shadow password file\n" #~ msgstr "%s: non se pode actualizar o ficheiro de contrasinais shadow\n" @@ -2985,9 +3124,6 @@ msgstr "%s: directorio base \"%s\" non válido\n" #~ msgid "Cannot open the password file.\n" #~ msgstr "Non se pode abrir o ficheiro de contrasinais.\n" -#~ msgid "%s: %s not found in /etc/passwd\n" -#~ msgstr "%s: non se atopou %s en /etc/passwd\n" - #~ msgid "Error updating the password entry.\n" #~ msgstr "Erro ao actualizar a entrada de contrasinal.\n" @@ -3193,9 +3329,6 @@ msgstr "%s: directorio base \"%s\" non válido\n" #~ msgid "%s: can't update shadow group file\n" #~ msgstr "%s: non se pode actualizar o ficheiro de grupos shadow\n" -#~ msgid "%s: can't update group file\n" -#~ msgstr "%s: non se pode actualizar o ficheiro de grupos\n" - #~ msgid "%s: can't delete shadow group file\n" #~ msgstr "%s: non se pode borrar o ficheiro de grupos shadow\n" diff --git a/po/he.gmo b/po/he.gmo new file mode 100644 index 0000000000000000000000000000000000000000..5d558c7c139eb04870da46588a6f6a92335a7c4a GIT binary patch literal 4699 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 literal 0 HcmV?d00001 diff --git a/po/he.po b/po/he.po index 5ac3e5b2..9ef59f2e 100644 --- a/po/he.po +++ b/po/he.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: shadow\n" "Report-Msgid-Bugs-To: pkg-shadow-devel@lists.alioth.debian.org\n" -"POT-Creation-Date: 2012-05-20 19:52+0200\n" +"POT-Creation-Date: 2016-09-18 21:41-0500\n" "PO-Revision-Date: 2004-07-21 23:59+0300\n" "Last-Translator: Lior Kaplan \n" "Language-Team: Hebrew \n" @@ -418,6 +418,10 @@ msgstr "%s: מספר טלפון בבית לא חוקי: \"%s\"\n" msgid "%s: cannot access chroot directory %s: %s\n" msgstr "%s: לא יכול לשנות משתמש `%s' על לקוח NIS.\n" +#, fuzzy, c-format +msgid "%s: cannot chdir to chroot directory %s: %s\n" +msgstr "%s: לא יכול לשנות משתמש `%s' על לקוח NIS.\n" + #, fuzzy, c-format msgid "%s: unable to chroot to directory %s: %s\n" msgstr "ספרית שורש לא חוקית \"%s\"\n" @@ -755,6 +759,10 @@ msgstr "%s: שורה %d: שורה ארוכה מידי\n" msgid "%s: line %d: missing new password\n" msgstr "%s: שורה %d: חסרה סיסמה חדשה\n" +#, fuzzy, c-format +msgid "%s: failed to crypt password with salt '%s': %s\n" +msgstr "%s: מספר טלפון בעבודה לא חוקי: \"%s\"\n" + #, fuzzy, c-format msgid "%s: line %d: group '%s' does not exist\n" msgstr "%s: שורה %d: משתמש לא מוכר %s\n" @@ -1031,6 +1039,11 @@ msgstr "" msgid "%s: Cannot setup cleanup service.\n" msgstr "%s: לא יכול לקבוע את שם המשתמש שלך.\n" +msgid "" +" -f, --force delete group even if it is the primary group " +"of a user\n" +msgstr "" + #, fuzzy, c-format msgid "%s: cannot remove entry '%s' from %s\n" msgstr "%s: לא יכול לשנות משתמש `%s' על לקוח NIS.\n" @@ -1240,6 +1253,16 @@ msgid "" " -b, --before DAYS print only lastlog records older than DAYS\n" msgstr "" +msgid "" +" -C, --clear clear lastlog record of an user (usable only " +"with -u)\n" +msgstr "" + +msgid "" +" -S, --set set lastlog record to current time (usable " +"only with -u)\n" +msgstr "" + msgid "" " -t, --time DAYS print only lastlog records more recent than " "DAYS\n" @@ -1258,6 +1281,23 @@ msgstr "" msgid "**Never logged in**" msgstr "" +#, fuzzy, c-format +msgid "%s: Failed to update the entry for UID %lu\n" +msgstr "ספרית שורש לא חוקית \"%s\"\n" + +#, fuzzy, c-format +#| msgid "%s: can't update password file\n" +msgid "%s: Failed to update the lastlog file\n" +msgstr "%s: לא יכול לעדכן קובץ סיסמאות\n" + +#, c-format +msgid "%s: Option -C cannot be used together with option -S\n" +msgstr "" + +#, c-format +msgid "%s: Options -C and -S require option -u to specify the user\n" +msgstr "" + #, fuzzy, c-format msgid "Usage: %s [-p] [name]\n" msgstr "שימוש: %s [-p] [name]\n" @@ -1287,12 +1327,6 @@ msgid "" "[Disconnect bypassed -- root login allowed.]" msgstr "" -#, c-format -msgid "" -"\n" -"Login timed out after %u seconds.\n" -msgstr "" - #, c-format msgid "%s: Cannot possibly work without effective root\n" msgstr "" @@ -1300,6 +1334,12 @@ msgstr "" msgid "No utmp entry. You must exec \"login\" from the lowest level \"sh\"" msgstr "" +#, c-format +msgid "" +"\n" +"Login timed out after %u seconds.\n" +msgstr "" + #, c-format msgid "login: PAM Failure, aborting: %s\n" msgstr "" @@ -1371,6 +1411,10 @@ msgstr "" msgid "Usage: sg group [[-c] command]\n" msgstr "" +#, fuzzy, c-format +msgid "%s: failed to crypt password with previous salt: %s\n" +msgstr "%s: מספר טלפון בעבודה לא חוקי: \"%s\"\n" + #, fuzzy msgid "Invalid password.\n" msgstr "סיסמה לא טובה: %s. " @@ -1439,6 +1483,18 @@ msgstr "%s: שורה %d: לא יכול לעדכן רשומת סיסמה\n" msgid "%s: line %d: can't update entry\n" msgstr "" +#, fuzzy, c-format +msgid "%s: failed to prepare new %s entry\n" +msgstr "%s: שורה %d: לא יכול לעדכן רשומת סיסמה\n" + +#, fuzzy, c-format +msgid "%s: can't find subordinate user range\n" +msgstr "%s: לא יכול לנעול קובץ צל\n" + +#, fuzzy, c-format +msgid "%s: can't find subordinate group range\n" +msgstr "%s: לא יכול לנעול קובץ צל\n" + msgid "" " -a, --all report password status on all accounts\n" msgstr "" @@ -1679,12 +1735,6 @@ msgstr "" msgid "Please enter your OWN password as authentication.\n" msgstr "" -msgid " ...killed.\n" -msgstr "" - -msgid " ...waiting for child to terminate.\n" -msgstr "" - #, fuzzy, c-format #| msgid "%s: Cannot determine your user name.\n" msgid "%s: Cannot fork user shell\n" @@ -1701,13 +1751,21 @@ msgstr "" msgid "Session terminated, terminating shell..." msgstr "" -#, fuzzy, c-format -msgid "%s: %s\n" -msgstr "passwd: %s\n" +#, c-format +msgid " ...killed.\n" +msgstr "" + +#, c-format +msgid " ...waiting for child to terminate.\n" +msgstr "" msgid " ...terminated.\n" msgstr "" +#, fuzzy, c-format +msgid "%s: %s\n" +msgstr "passwd: %s\n" + msgid "" "Usage: su [options] [LOGIN]\n" "\n" @@ -1949,6 +2007,10 @@ msgstr "" msgid "%s: failed to reset the lastlog entry of UID %lu: %s\n" msgstr "" +#, fuzzy, c-format +msgid "%s: failed to prepare the new %s entry\n" +msgstr "%s: שורה %d: לא יכול לעדכן רשומת סיסמה\n" + #, c-format msgid "%s: cannot create directory %s\n" msgstr "" @@ -1988,6 +2050,14 @@ msgstr "ספרית שורש לא חוקית \"%s\"\n" msgid "%s: can't create group\n" msgstr "%s: לא יכול לנעול קובץ צל\n" +#, fuzzy, c-format +msgid "%s: can't create subordinate user IDs\n" +msgstr "%s: לא יכול לנעול קובץ צל\n" + +#, fuzzy, c-format +msgid "%s: can't create subordinate group IDs\n" +msgstr "%s: לא יכול לנעול קובץ צל\n" + #, c-format msgid "" "%s: warning: the home directory already exists.\n" @@ -2024,6 +2094,10 @@ msgstr "" msgid "%s: group %s is the primary group of another user and is not removed.\n" msgstr "" +#, fuzzy, c-format +msgid "%s: cannot remove entry %lu from %s\n" +msgstr "%s: לא יכול לשנות משתמש `%s' על לקוח NIS.\n" + #, fuzzy, c-format msgid "%s: %s mail spool (%s) not found\n" msgstr "ספרית שורש לא חוקית \"%s\"\n" @@ -2125,6 +2199,18 @@ msgstr "" msgid " -U, --unlock unlock the user account\n" msgstr "" +msgid " -v, --add-subuids FIRST-LAST add range of subordinate uids\n" +msgstr "" + +msgid " -V, --del-subuids FIRST-LAST remove range of subordinate uids\n" +msgstr "" + +msgid " -w, --add-subgids FIRST-LAST add range of subordinate gids\n" +msgstr "" + +msgid " -W, --del-subgids FIRST-LAST remove range of subordinate gids\n" +msgstr "" + msgid "" " -Z, --selinux-user SEUSER new SELinux user mapping for the user " "account\n" @@ -2140,6 +2226,14 @@ msgstr "" msgid "%s: user '%s' already exists in %s\n" msgstr "" +#, fuzzy, c-format +msgid "%s: invalid subordinate uid range '%s'\n" +msgstr "%s: שם לא חוקי: \"%s\"\n" + +#, fuzzy, c-format +msgid "%s: invalid subordinate gid range '%s'\n" +msgstr "%s: שם לא חוקי: \"%s\"\n" + #, fuzzy, c-format #| msgid "%s: can't open shadow file\n" msgid "%s: no options\n" @@ -2157,6 +2251,10 @@ msgstr "" msgid "%s: UID '%lu' already exists\n" msgstr "" +#, c-format +msgid "%s: %s does not exist, you cannot use the flags %s or %s\n" +msgstr "" + #, c-format msgid "%s: directory %s exists\n" msgstr "" @@ -2197,6 +2295,23 @@ msgstr "" msgid "failed to rename mailbox" msgstr "" +#, fuzzy, c-format +msgid "%s: failed to remove uid range %lu-%lu from '%s'\n" +msgstr "%s: מספר טלפון בעבודה לא חוקי: \"%s\"\n" + +#, fuzzy, c-format +#| msgid "%s: fields too long\n" +msgid "%s: failed to add uid range %lu-%lu from '%s'\n" +msgstr "%s: שדות ארוכים מידי\n" + +#, fuzzy, c-format +msgid "%s: failed to remove gid range %lu-%lu from '%s'\n" +msgstr "%s: מספר טלפון בעבודה לא חוקי: \"%s\"\n" + +#, fuzzy, c-format +msgid "%s: failed to add gid range %lu-%lu from '%s'\n" +msgstr "ספרית שורש לא חוקית \"%s\"\n" + #, c-format msgid "" "You have modified %s.\n" @@ -2246,6 +2361,18 @@ msgstr "" msgid "Couldn't make backup" msgstr "" +#, fuzzy, c-format +msgid "%s: %s: %s\n" +msgstr "passwd: %s\n" + +#, c-format +msgid "%s: %s returned with status %d\n" +msgstr "" + +#, c-format +msgid "%s: %s killed by signal %d\n" +msgstr "" + msgid "failed to open scratch file" msgstr "" @@ -2317,9 +2444,6 @@ msgstr "ספרית שורש לא חוקית \"%s\"\n" #~ msgid "%s: can't rewrite password file\n" #~ msgstr "%s: לא יכול לכתוב מחדש קובץ סיסמאות\n" -#~ msgid "%s: can't update password file\n" -#~ msgstr "%s: לא יכול לעדכן קובץ סיסמאות\n" - #~ msgid "%s: can't update shadow password file\n" #~ msgstr "%s: לא יכול לעדכן קובץ סיסמאות צל\n" diff --git a/po/hu.gmo b/po/hu.gmo new file mode 100644 index 0000000000000000000000000000000000000000..2e541847092a6f4fe8d70f26cef97bca3b8c01ca GIT binary patch literal 20162 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 I=&S_)ADF1@tN;K2 literal 0 HcmV?d00001 diff --git a/po/hu.po b/po/hu.po index d2832cae..00a22470 100644 --- a/po/hu.po +++ b/po/hu.po @@ -3,7 +3,7 @@ msgid "" msgstr "" "Project-Id-Version: 4.0.18\n" "Report-Msgid-Bugs-To: pkg-shadow-devel@lists.alioth.debian.org\n" -"POT-Creation-Date: 2012-05-20 19:52+0200\n" +"POT-Creation-Date: 2016-09-18 21:41-0500\n" "PO-Revision-Date: 2007-11-25 20:56+0100\n" "Last-Translator: SZERVÁC Attila \n" "Language-Team: Hungarian \n" @@ -435,6 +435,11 @@ msgstr "%s: érvénytelen otthoni telefonszám: \"%s\"\n" msgid "%s: cannot access chroot directory %s: %s\n" msgstr "%s: %s könyvtár nem hozható létre\n" +#, fuzzy, c-format +#| msgid "%s: cannot create directory %s\n" +msgid "%s: cannot chdir to chroot directory %s: %s\n" +msgstr "%s: %s könyvtár nem hozható létre\n" + #, fuzzy, c-format #| msgid "%s: cannot create directory %s\n" msgid "%s: unable to chroot to directory %s: %s\n" @@ -776,6 +781,11 @@ msgstr "%s: %d. sor: túl hosszú\n" msgid "%s: line %d: missing new password\n" msgstr "%s: %d. sor: hiányzó új jelszó\n" +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to crypt password with salt '%s': %s\n" +msgstr "%s: a jogosultságok eldobása meghiúsult (%s)\n" + #, fuzzy, c-format #| msgid "%s: group %s does not exist\n" msgid "%s: line %d: group '%s' does not exist\n" @@ -1071,6 +1081,11 @@ msgstr "A tag már létezik\n" msgid "%s: Cannot setup cleanup service.\n" msgstr "%s: A felhasználóneved megállapítása sikertelen\n" +msgid "" +" -f, --force delete group even if it is the primary group " +"of a user\n" +msgstr "" + #, fuzzy, c-format #| msgid "%s: cannot rename directory %s to %s\n" msgid "%s: cannot remove entry '%s' from %s\n" @@ -1287,6 +1302,16 @@ msgid "" " -b, --before DAYS print only lastlog records older than DAYS\n" msgstr "" +msgid "" +" -C, --clear clear lastlog record of an user (usable only " +"with -u)\n" +msgstr "" + +msgid "" +" -S, --set set lastlog record to current time (usable " +"only with -u)\n" +msgstr "" + msgid "" " -t, --time DAYS print only lastlog records more recent than " "DAYS\n" @@ -1305,6 +1330,24 @@ msgstr "Felhasználónév Port Legutóbb" msgid "**Never logged in**" msgstr "**Sosem lépett be**" +#, fuzzy, c-format +#| msgid "%s: cannot create directory %s\n" +msgid "%s: Failed to update the entry for UID %lu\n" +msgstr "%s: %s könyvtár nem hozható létre\n" + +#, fuzzy, c-format +#| msgid "%s: can't update password file\n" +msgid "%s: Failed to update the lastlog file\n" +msgstr "%s: a jelszófájl frissítése sikertelen\n" + +#, c-format +msgid "%s: Option -C cannot be used together with option -S\n" +msgstr "" + +#, c-format +msgid "%s: Options -C and -S require option -u to specify the user\n" +msgstr "" + #, c-format msgid "Usage: %s [-p] [name]\n" msgstr "Használat: %s [-p] [név]\n" @@ -1338,6 +1381,15 @@ msgstr "" "\n" "[Leválasztás átlépve -- root bejelentkezés engedélyezett]" +#, c-format +msgid "%s: Cannot possibly work without effective root\n" +msgstr "" + +msgid "No utmp entry. You must exec \"login\" from the lowest level \"sh\"" +msgstr "" +"Nincs utmp bejegyzés. Futtasd a \"login\"-t a legalacsonyabb szintű \"sh\"-" +"ból." + #, fuzzy, c-format #| msgid "" #| "\n" @@ -1349,15 +1401,6 @@ msgstr "" "\n" "A bejelentkezés %d mp. után elkésett\n" -#, c-format -msgid "%s: Cannot possibly work without effective root\n" -msgstr "" - -msgid "No utmp entry. You must exec \"login\" from the lowest level \"sh\"" -msgstr "" -"Nincs utmp bejegyzés. Futtasd a \"login\"-t a legalacsonyabb szintű \"sh\"-" -"ból." - #, c-format msgid "login: PAM Failure, aborting: %s\n" msgstr "login: PAM hiba, törölve: %s\n" @@ -1434,6 +1477,11 @@ msgstr "Használat: newgrp [-] [csoport]\n" msgid "Usage: sg group [[-c] command]\n" msgstr "Használat: sg csoport [[-c] parancs]\n" +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to crypt password with previous salt: %s\n" +msgstr "%s: a jogosultságok eldobása meghiúsult (%s)\n" + #, fuzzy msgid "Invalid password.\n" msgstr "Régi jelszó: " @@ -1503,6 +1551,20 @@ msgstr "%s: %d. sor: chown sikertelen\n" msgid "%s: line %d: can't update entry\n" msgstr "%s: %d. sor: nem tudom frissíteni a bejegyzést\n" +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to prepare new %s entry\n" +msgstr "%s: a jogosultságok eldobása meghiúsult (%s)\n" + +#, fuzzy, c-format +msgid "%s: can't find subordinate user range\n" +msgstr "%s: %s létrehozása sikertelen\n" + +#, fuzzy, c-format +#| msgid "%s: can't update group file\n" +msgid "%s: can't find subordinate group range\n" +msgstr "%s: nem tudom frissíteni a csoport fájlt\n" + msgid "" " -a, --all report password status on all accounts\n" msgstr "" @@ -1756,12 +1818,6 @@ msgstr "Jelszó hitelesítés átlépve.\n" msgid "Please enter your OWN password as authentication.\n" msgstr "Add meg SAJÁT jelszavad a hitelesítéshez.\n" -msgid " ...killed.\n" -msgstr "" - -msgid " ...waiting for child to terminate.\n" -msgstr "" - #, fuzzy, c-format #| msgid "%s: cannot lock file %s\n" msgid "%s: Cannot fork user shell\n" @@ -1779,12 +1835,20 @@ msgid "Session terminated, terminating shell..." msgstr "" #, c-format -msgid "%s: %s\n" -msgstr "%s: %s\n" +msgid " ...killed.\n" +msgstr "" + +#, c-format +msgid " ...waiting for child to terminate.\n" +msgstr "" msgid " ...terminated.\n" msgstr "" +#, c-format +msgid "%s: %s\n" +msgstr "%s: %s\n" + # CHECK! msgid "" "Usage: su [options] [LOGIN]\n" @@ -2050,6 +2114,11 @@ msgstr "" msgid "%s: failed to reset the lastlog entry of UID %lu: %s\n" msgstr "" +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to prepare the new %s entry\n" +msgstr "%s: a jogosultságok eldobása meghiúsult (%s)\n" + #, c-format msgid "%s: cannot create directory %s\n" msgstr "%s: %s könyvtár nem hozható létre\n" @@ -2096,6 +2165,14 @@ msgstr "%s: %s könyvtár nem hozható létre\n" msgid "%s: can't create group\n" msgstr "%s: %s létrehozása sikertelen\n" +#, fuzzy, c-format +msgid "%s: can't create subordinate user IDs\n" +msgstr "%s: %s létrehozása sikertelen\n" + +#, fuzzy, c-format +msgid "%s: can't create subordinate group IDs\n" +msgstr "%s: %s létrehozása sikertelen\n" + #, c-format msgid "" "%s: warning: the home directory already exists.\n" @@ -2138,6 +2215,11 @@ msgstr "" "%s: Nem tudom %s csoportot törölni, ami egy másik felhasználó elsődleges " "csoportja.\n" +#, fuzzy, c-format +#| msgid "%s: cannot rename directory %s to %s\n" +msgid "%s: cannot remove entry %lu from %s\n" +msgstr "%s: nem tudom átnevezni %s könyvtárat erre: %s\n" + #, fuzzy, c-format #| msgid "%s: invalid home directory '%s'\n" msgid "%s: %s mail spool (%s) not found\n" @@ -2245,6 +2327,18 @@ msgstr "" msgid " -U, --unlock unlock the user account\n" msgstr "" +msgid " -v, --add-subuids FIRST-LAST add range of subordinate uids\n" +msgstr "" + +msgid " -V, --del-subuids FIRST-LAST remove range of subordinate uids\n" +msgstr "" + +msgid " -w, --add-subgids FIRST-LAST add range of subordinate gids\n" +msgstr "" + +msgid " -W, --del-subgids FIRST-LAST remove range of subordinate gids\n" +msgstr "" + msgid "" " -Z, --selinux-user SEUSER new SELinux user mapping for the user " "account\n" @@ -2261,6 +2355,16 @@ msgstr "" msgid "%s: user '%s' already exists in %s\n" msgstr "%s: %s felhasználó létezik\n" +#, fuzzy, c-format +#| msgid "%s: invalid date '%s'\n" +msgid "%s: invalid subordinate uid range '%s'\n" +msgstr "%s: érvénytelen dátum: \"%s\"\n" + +#, fuzzy, c-format +#| msgid "%s: invalid date '%s'\n" +msgid "%s: invalid subordinate gid range '%s'\n" +msgstr "%s: érvénytelen dátum: \"%s\"\n" + #, fuzzy, c-format #| msgid "%s: cannot open file %s\n" msgid "%s: no options\n" @@ -2279,6 +2383,10 @@ msgstr "%s: -e és -f árnyék jelszavakat vár\n" msgid "%s: UID '%lu' already exists\n" msgstr "A tag már létezik\n" +#, c-format +msgid "%s: %s does not exist, you cannot use the flags %s or %s\n" +msgstr "" + #, c-format msgid "%s: directory %s exists\n" msgstr "%s: %s könyvtár létezik\n" @@ -2320,6 +2428,26 @@ msgstr "a postafiók tulajdonosának váltása sikertelen" msgid "failed to rename mailbox" msgstr "a postafiók átnevezése sikertelen" +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to remove uid range %lu-%lu from '%s'\n" +msgstr "%s: a jogosultságok eldobása meghiúsult (%s)\n" + +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to add uid range %lu-%lu from '%s'\n" +msgstr "%s: a jogosultságok eldobása meghiúsult (%s)\n" + +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to remove gid range %lu-%lu from '%s'\n" +msgstr "%s: a jogosultságok eldobása meghiúsult (%s)\n" + +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to add gid range %lu-%lu from '%s'\n" +msgstr "%s: a jogosultságok eldobása meghiúsult (%s)\n" + #, c-format msgid "" "You have modified %s.\n" @@ -2382,6 +2510,20 @@ msgstr "Nem tudtam zárolni a fájlt" msgid "Couldn't make backup" msgstr "Nem tudtam biztonsági másolatot készíteni" +#, fuzzy, c-format +#| msgid "%s: %s\n" +msgid "%s: %s: %s\n" +msgstr "%s: %s\n" + +#, fuzzy, c-format +#| msgid "%s: %s not found in /etc/passwd\n" +msgid "%s: %s returned with status %d\n" +msgstr "%s: %s nem található a /etc/passwd-ben\n" + +#, c-format +msgid "%s: %s killed by signal %d\n" +msgstr "" + #, fuzzy #| msgid "Unable to open group file\n" msgid "failed to open scratch file" @@ -3083,9 +3225,6 @@ msgstr "%s: érvénytelen alapkönyvtár: \"%s\"\n" #~ msgid "%s: can't rewrite password file\n" #~ msgstr "%s: a jelszófájl újraírása sikertelen\n" -#~ msgid "%s: can't update password file\n" -#~ msgstr "%s: a jelszófájl frissítése sikertelen\n" - #~ msgid "%s: can't update shadow password file\n" #~ msgstr "%s: az árnyék jelszófájl frissítése sikertelen\n" @@ -3107,9 +3246,6 @@ msgstr "%s: érvénytelen alapkönyvtár: \"%s\"\n" #~ msgid "Cannot open the password file.\n" #~ msgstr "A jelszófájl nem nyitható meg.\n" -#~ msgid "%s: %s not found in /etc/passwd\n" -#~ msgstr "%s: %s nem található a /etc/passwd-ben\n" - #~ msgid "Error updating the password entry.\n" #~ msgstr "Hiba a jelszó bejegyzés frissítésekor\n" @@ -3317,9 +3453,6 @@ msgstr "%s: érvénytelen alapkönyvtár: \"%s\"\n" #~ msgid "%s: can't update shadow group file\n" #~ msgstr "%s: nem tudom frissíteni az árnyék csoport fájlt\n" -#~ msgid "%s: can't update group file\n" -#~ msgstr "%s: nem tudom frissíteni a csoport fájlt\n" - #~ msgid "%s: can't delete shadow group file\n" #~ msgstr "%s: nem tudom törölni az árnyék csoport fájlt\n" diff --git a/po/id.gmo b/po/id.gmo new file mode 100644 index 0000000000000000000000000000000000000000..8fcd4ac0d1d6037102b7663e4eb19a9c37b4e921 GIT binary patch literal 16358 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 U#!Y2*-^YxEY(bj@>d9E}|Hq-WkpKVy literal 0 HcmV?d00001 diff --git a/po/id.po b/po/id.po index 4a87054a..c94de81e 100644 --- a/po/id.po +++ b/po/id.po @@ -5,7 +5,7 @@ msgid "" msgstr "" "Project-Id-Version: shadow 4.0.15\n" "Report-Msgid-Bugs-To: pkg-shadow-devel@lists.alioth.debian.org\n" -"POT-Creation-Date: 2012-05-20 19:52+0200\n" +"POT-Creation-Date: 2016-09-18 21:41-0500\n" "PO-Revision-Date: 2007-11-25 20:58+0100\n" "Last-Translator: Parlin Imanuel Toh \n" "Language-Team: Debian Indonesia \n" @@ -433,6 +433,11 @@ msgstr "%s: telepon rumah tidak sah: \"%s\"\n" msgid "%s: cannot access chroot directory %s: %s\n" msgstr "%s: tak dapat membuat direktori %s\n" +#, fuzzy, c-format +#| msgid "%s: cannot create directory %s\n" +msgid "%s: cannot chdir to chroot directory %s: %s\n" +msgstr "%s: tak dapat membuat direktori %s\n" + #, fuzzy, c-format #| msgid "%s: cannot create directory %s\n" msgid "%s: unable to chroot to directory %s: %s\n" @@ -773,6 +778,11 @@ msgstr "%s: baris %d: baris terlalu panjang\n" msgid "%s: line %d: missing new password\n" msgstr "%s: baris %d: kata sandi baru hilang\n" +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to crypt password with salt '%s': %s\n" +msgstr "%s: gagal membuang hak (%s)\n" + #, fuzzy, c-format #| msgid "%s: group %s does not exist\n" msgid "%s: line %d: group '%s' does not exist\n" @@ -1067,6 +1077,11 @@ msgstr "" msgid "%s: Cannot setup cleanup service.\n" msgstr "%s: Tidak dapat menentukan nama pengguna anda.\n" +msgid "" +" -f, --force delete group even if it is the primary group " +"of a user\n" +msgstr "" + #, fuzzy, c-format #| msgid "%s: cannot rename directory %s to %s\n" msgid "%s: cannot remove entry '%s' from %s\n" @@ -1280,6 +1295,16 @@ msgid "" " -b, --before DAYS print only lastlog records older than DAYS\n" msgstr "" +msgid "" +" -C, --clear clear lastlog record of an user (usable only " +"with -u)\n" +msgstr "" + +msgid "" +" -S, --set set lastlog record to current time (usable " +"only with -u)\n" +msgstr "" + msgid "" " -t, --time DAYS print only lastlog records more recent than " "DAYS\n" @@ -1298,6 +1323,24 @@ msgstr "Nama pengguna Port Terakhir" msgid "**Never logged in**" msgstr "**Tak pernah log in**" +#, fuzzy, c-format +#| msgid "%s: cannot create directory %s\n" +msgid "%s: Failed to update the entry for UID %lu\n" +msgstr "%s: tak dapat membuat direktori %s\n" + +#, fuzzy, c-format +#| msgid "%s: can't update password file\n" +msgid "%s: Failed to update the lastlog file\n" +msgstr "%s: tidak dapat memperbaharui berkas kata sandi\n" + +#, c-format +msgid "%s: Option -C cannot be used together with option -S\n" +msgstr "" + +#, c-format +msgid "%s: Options -C and -S require option -u to specify the user\n" +msgstr "" + #, c-format msgid "Usage: %s [-p] [name]\n" msgstr "Penggunaan: %s [-p] [nama]\n" @@ -1331,6 +1374,14 @@ msgstr "" "\n" "[Pemutusan hubungan diabaikan -- login root diperbolehkan.]" +#, c-format +msgid "%s: Cannot possibly work without effective root\n" +msgstr "" + +msgid "No utmp entry. You must exec \"login\" from the lowest level \"sh\"" +msgstr "" +"Tanpa entri utmp. Anda mesti menjalankan \"login\" dari level terendah \"sh\"" + #, fuzzy, c-format #| msgid "" #| "\n" @@ -1342,14 +1393,6 @@ msgstr "" "\n" "Login time out setelah %d detik.\n" -#, c-format -msgid "%s: Cannot possibly work without effective root\n" -msgstr "" - -msgid "No utmp entry. You must exec \"login\" from the lowest level \"sh\"" -msgstr "" -"Tanpa entri utmp. Anda mesti menjalankan \"login\" dari level terendah \"sh\"" - #, c-format msgid "login: PAM Failure, aborting: %s\n" msgstr "login: Kegagalan PAM, berhenti: %s\n" @@ -1426,6 +1469,11 @@ msgstr "Penggunaan: newgrp [-] [grup]\n" msgid "Usage: sg group [[-c] command]\n" msgstr "Penggunaan: sg grup [[-c] perintah]\n" +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to crypt password with previous salt: %s\n" +msgstr "%s: gagal membuang hak (%s)\n" + #, fuzzy msgid "Invalid password.\n" msgstr "Kata sandi lama: " @@ -1495,6 +1543,20 @@ msgstr "%s: baris %d: chown gagal\n" msgid "%s: line %d: can't update entry\n" msgstr "%s: baris %d: tak dapat memperbaharui entri\n" +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to prepare new %s entry\n" +msgstr "%s: gagal membuang hak (%s)\n" + +#, fuzzy, c-format +msgid "%s: can't find subordinate user range\n" +msgstr "%s: tak dapat membuat %s\n" + +#, fuzzy, c-format +#| msgid "%s: can't update group file\n" +msgid "%s: can't find subordinate group range\n" +msgstr "%s: tidak dapat memperbaharui berkas grup\n" + msgid "" " -a, --all report password status on all accounts\n" msgstr "" @@ -1748,12 +1810,6 @@ msgstr "Otentikasi kata sandi diabaikan.\n" msgid "Please enter your OWN password as authentication.\n" msgstr "Silakan masukkan kata sandi anda SENDIRI sebagai otentikasi.\n" -msgid " ...killed.\n" -msgstr "" - -msgid " ...waiting for child to terminate.\n" -msgstr "" - #, fuzzy, c-format #| msgid "%s: cannot lock file %s\n" msgid "%s: Cannot fork user shell\n" @@ -1771,12 +1827,20 @@ msgid "Session terminated, terminating shell..." msgstr "" #, c-format -msgid "%s: %s\n" -msgstr "%s: %s\n" +msgid " ...killed.\n" +msgstr "" + +#, c-format +msgid " ...waiting for child to terminate.\n" +msgstr "" msgid " ...terminated.\n" msgstr "" +#, c-format +msgid "%s: %s\n" +msgstr "%s: %s\n" + #, fuzzy msgid "" "Usage: su [options] [LOGIN]\n" @@ -2043,6 +2107,11 @@ msgstr "" msgid "%s: failed to reset the lastlog entry of UID %lu: %s\n" msgstr "" +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to prepare the new %s entry\n" +msgstr "%s: gagal membuang hak (%s)\n" + #, c-format msgid "%s: cannot create directory %s\n" msgstr "%s: tak dapat membuat direktori %s\n" @@ -2086,6 +2155,14 @@ msgstr "%s: tak dapat membuat direktori %s\n" msgid "%s: can't create group\n" msgstr "%s: tak dapat membuat %s\n" +#, fuzzy, c-format +msgid "%s: can't create subordinate user IDs\n" +msgstr "%s: tak dapat membuat %s\n" + +#, fuzzy, c-format +msgid "%s: can't create subordinate group IDs\n" +msgstr "%s: tak dapat membuat %s\n" + #, c-format msgid "" "%s: warning: the home directory already exists.\n" @@ -2128,6 +2205,11 @@ msgstr "" "%s: tidak dapat menghapus grup %s yg merupakan grup utama dari pengguna " "lain.\n" +#, fuzzy, c-format +#| msgid "%s: cannot rename directory %s to %s\n" +msgid "%s: cannot remove entry %lu from %s\n" +msgstr "%s: tak dapat mengubah nama direktori %s menjadi %s\n" + #, fuzzy, c-format msgid "%s: %s mail spool (%s) not found\n" msgstr "%s: direktori rumah `%s' tak sah\n" @@ -2233,6 +2315,18 @@ msgstr "" msgid " -U, --unlock unlock the user account\n" msgstr "" +msgid " -v, --add-subuids FIRST-LAST add range of subordinate uids\n" +msgstr "" + +msgid " -V, --del-subuids FIRST-LAST remove range of subordinate uids\n" +msgstr "" + +msgid " -w, --add-subgids FIRST-LAST add range of subordinate gids\n" +msgstr "" + +msgid " -W, --del-subgids FIRST-LAST remove range of subordinate gids\n" +msgstr "" + msgid "" " -Z, --selinux-user SEUSER new SELinux user mapping for the user " "account\n" @@ -2249,6 +2343,14 @@ msgstr "" msgid "%s: user '%s' already exists in %s\n" msgstr "%s: pengguna %s telah ada\n" +#, fuzzy, c-format +msgid "%s: invalid subordinate uid range '%s'\n" +msgstr "%s: tanggal `%s' tak sah\n" + +#, fuzzy, c-format +msgid "%s: invalid subordinate gid range '%s'\n" +msgstr "%s: tanggal `%s' tak sah\n" + #, fuzzy, c-format #| msgid "%s: cannot open file %s\n" msgid "%s: no options\n" @@ -2266,6 +2368,10 @@ msgstr "%s: diperlukan kata sandi bayangan untuk -e dan -f\n" msgid "%s: UID '%lu' already exists\n" msgstr "" +#, c-format +msgid "%s: %s does not exist, you cannot use the flags %s or %s\n" +msgstr "" + #, c-format msgid "%s: directory %s exists\n" msgstr "%s: direktori %s telah ada\n" @@ -2307,6 +2413,26 @@ msgstr "gagal mengganti pemilik kotak-surat" msgid "failed to rename mailbox" msgstr "gagal mengubah nama kotak-surat" +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to remove uid range %lu-%lu from '%s'\n" +msgstr "%s: gagal membuang hak (%s)\n" + +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to add uid range %lu-%lu from '%s'\n" +msgstr "%s: gagal membuang hak (%s)\n" + +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to remove gid range %lu-%lu from '%s'\n" +msgstr "%s: gagal membuang hak (%s)\n" + +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to add gid range %lu-%lu from '%s'\n" +msgstr "%s: gagal membuang hak (%s)\n" + #, c-format msgid "" "You have modified %s.\n" @@ -2369,6 +2495,20 @@ msgstr "Tidak dapat mengunci berkas" msgid "Couldn't make backup" msgstr "Tidak dapat membuat backup" +#, fuzzy, c-format +#| msgid "%s: %s\n" +msgid "%s: %s: %s\n" +msgstr "%s: %s\n" + +#, fuzzy, c-format +#| msgid "%s: %s not found in /etc/passwd\n" +msgid "%s: %s returned with status %d\n" +msgstr "%s: %s tidak ditemukan pada /etc/passwd\n" + +#, c-format +msgid "%s: %s killed by signal %d\n" +msgstr "" + #, fuzzy msgid "failed to open scratch file" msgstr "%s: tidak dapat membuka berkas grup\n" @@ -2968,9 +3108,6 @@ msgstr "%s: direktori awal `%s' tak sah\n" #~ msgid "%s: can't rewrite password file\n" #~ msgstr "%s: tidak dapat menulis kembali berkas kata sandi\n" -#~ msgid "%s: can't update password file\n" -#~ msgstr "%s: tidak dapat memperbaharui berkas kata sandi\n" - #~ msgid "%s: can't update shadow password file\n" #~ msgstr "%s: tidak dapat memperbaharui berkas kata sandi bayangan\n" @@ -2992,9 +3129,6 @@ msgstr "%s: direktori awal `%s' tak sah\n" #~ msgid "Cannot open the password file.\n" #~ msgstr "Tidak dapat membuka berkas kata sandi.\n" -#~ msgid "%s: %s not found in /etc/passwd\n" -#~ msgstr "%s: %s tidak ditemukan pada /etc/passwd\n" - #~ msgid "Error updating the password entry.\n" #~ msgstr "Kesalahan saat memperbaharui entri kata sandi.\n" @@ -3187,9 +3321,6 @@ msgstr "%s: direktori awal `%s' tak sah\n" #~ msgid "%s: can't update shadow group file\n" #~ msgstr "%s: tidak dapat memperbaharui berkas grup bayangan\n" -#~ msgid "%s: can't update group file\n" -#~ msgstr "%s: tidak dapat memperbaharui berkas grup\n" - #~ msgid "%s: can't delete shadow group file\n" #~ msgstr "%s: tidak dapat menghapus berkas grup bayangan\n" diff --git a/po/insert-header.sin b/po/insert-header.sin new file mode 100644 index 00000000..b26de01f --- /dev/null +++ b/po/insert-header.sin @@ -0,0 +1,23 @@ +# Sed script that inserts the file called HEADER before the header entry. +# +# At each occurrence of a line starting with "msgid ", we execute the following +# commands. At the first occurrence, insert the file. At the following +# occurrences, do nothing. The distinction between the first and the following +# occurrences is achieved by looking at the hold space. +/^msgid /{ +x +# Test if the hold space is empty. +s/m/m/ +ta +# Yes it was empty. First occurrence. Read the file. +r HEADER +# Output the file's contents by reading the next line. But don't lose the +# current line while doing this. +g +N +bb +:a +# The hold space was nonempty. Following occurrences. Do nothing. +x +:b +} diff --git a/po/it.gmo b/po/it.gmo new file mode 100644 index 0000000000000000000000000000000000000000..098d81714968d94357427af579b155b0c418dee4 GIT binary patch literal 22888 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 Bve*Cs literal 0 HcmV?d00001 diff --git a/po/it.po b/po/it.po index 29f1781c..4495f538 100644 --- a/po/it.po +++ b/po/it.po @@ -25,7 +25,7 @@ msgid "" msgstr "" "Project-Id-Version: shadow 4.1.1\n" "Report-Msgid-Bugs-To: pkg-shadow-devel@lists.alioth.debian.org\n" -"POT-Creation-Date: 2012-05-20 19:52+0200\n" +"POT-Creation-Date: 2016-09-18 21:41-0500\n" "PO-Revision-Date: 2008-03-27 14:40+0100\n" "Last-Translator: Danilo Piazzalunga \n" "Language-Team: Italian \n" @@ -466,6 +466,11 @@ msgstr "%s: telefono di casa «%s» non valido\n" msgid "%s: cannot access chroot directory %s: %s\n" msgstr "%s: impossibile creare la directory %s\n" +#, fuzzy, c-format +#| msgid "%s: cannot create directory %s\n" +msgid "%s: cannot chdir to chroot directory %s: %s\n" +msgstr "%s: impossibile creare la directory %s\n" + #, fuzzy, c-format #| msgid "%s: cannot create directory %s\n" msgid "%s: unable to chroot to directory %s: %s\n" @@ -835,6 +840,11 @@ msgstr "%s: riga %d: riga troppo lunga\n" msgid "%s: line %d: missing new password\n" msgstr "%s: riga %d: manca la nuova password\n" +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to crypt password with salt '%s': %s\n" +msgstr "%s: impossibile abbandonare i privilegi (%s)\n" + #, fuzzy, c-format #| msgid "%s: group %s does not exist\n" msgid "%s: line %d: group '%s' does not exist\n" @@ -1156,6 +1166,11 @@ msgstr "Membro già esistente\n" msgid "%s: Cannot setup cleanup service.\n" msgstr "%s: impossibile determinare il proprio nome utente.\n" +msgid "" +" -f, --force delete group even if it is the primary group " +"of a user\n" +msgstr "" + #, fuzzy, c-format #| msgid "%s: cannot rename directory %s to %s\n" msgid "%s: cannot remove entry '%s' from %s\n" @@ -1388,6 +1403,16 @@ msgid "" " -b, --before DAYS print only lastlog records older than DAYS\n" msgstr "" +msgid "" +" -C, --clear clear lastlog record of an user (usable only " +"with -u)\n" +msgstr "" + +msgid "" +" -S, --set set lastlog record to current time (usable " +"only with -u)\n" +msgstr "" + msgid "" " -t, --time DAYS print only lastlog records more recent than " "DAYS\n" @@ -1406,6 +1431,24 @@ msgstr "Nome utente Porta Ultimo accesso" msgid "**Never logged in**" msgstr "**Nessun accesso effettuato**" +#, fuzzy, c-format +#| msgid "%s: cannot create directory %s\n" +msgid "%s: Failed to update the entry for UID %lu\n" +msgstr "%s: impossibile creare la directory %s\n" + +#, fuzzy, c-format +#| msgid "%s: can't update password file\n" +msgid "%s: Failed to update the lastlog file\n" +msgstr "%s: impossibile aggiornare il file delle password\n" + +#, c-format +msgid "%s: Option -C cannot be used together with option -S\n" +msgstr "" + +#, c-format +msgid "%s: Options -C and -S require option -u to specify the user\n" +msgstr "" + #, c-format msgid "Usage: %s [-p] [name]\n" msgstr "Uso: %s [-p] [NOME]\n" @@ -1440,6 +1483,13 @@ msgstr "" "\n" "[Disconnessione obbligatoria evitata: root può accedere.]" +#, c-format +msgid "%s: Cannot possibly work without effective root\n" +msgstr "" + +msgid "No utmp entry. You must exec \"login\" from the lowest level \"sh\"" +msgstr "Nessuna voce utmp. Eseguire «login» dalla shell di livello più basso" + #, fuzzy, c-format #| msgid "" #| "\n" @@ -1451,13 +1501,6 @@ msgstr "" "\n" "Login scaduto dopo %d secondi.\n" -#, c-format -msgid "%s: Cannot possibly work without effective root\n" -msgstr "" - -msgid "No utmp entry. You must exec \"login\" from the lowest level \"sh\"" -msgstr "Nessuna voce utmp. Eseguire «login» dalla shell di livello più basso" - #, c-format msgid "login: PAM Failure, aborting: %s\n" msgstr "login: PAM ha restituito un errore: %s\n" @@ -1535,6 +1578,11 @@ msgstr "Uso: newgrp [-] [GRUPPO]\n" msgid "Usage: sg group [[-c] command]\n" msgstr "Uso: sg GRUPPO [[-c] COMANDO]\n" +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to crypt password with previous salt: %s\n" +msgstr "%s: impossibile abbandonare i privilegi (%s)\n" + msgid "Invalid password.\n" msgstr "Password non valida.\n" @@ -1608,6 +1656,21 @@ msgstr "%s: riga %d: la chiamata chown ha restituito un errore\n" msgid "%s: line %d: can't update entry\n" msgstr "%s: riga %d: impossibile aggiornare la voce\n" +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to prepare new %s entry\n" +msgstr "%s: impossibile abbandonare i privilegi (%s)\n" + +#, fuzzy, c-format +#| msgid "%s: can't create user\n" +msgid "%s: can't find subordinate user range\n" +msgstr "%s: impossibile creare l'utente\n" + +#, fuzzy, c-format +#| msgid "%s: can't update group file\n" +msgid "%s: can't find subordinate group range\n" +msgstr "%s: impossibile aggiornare il file dei gruppi\n" + msgid "" " -a, --all report password status on all accounts\n" msgstr "" @@ -1886,12 +1949,6 @@ msgstr "Evitata l'autenticazione tramite password.\n" msgid "Please enter your OWN password as authentication.\n" msgstr "Inserire la PROPRIA password per autenticarsi.\n" -msgid " ...killed.\n" -msgstr "" - -msgid " ...waiting for child to terminate.\n" -msgstr "" - #, fuzzy, c-format #| msgid "%s: cannot lock file %s\n" msgid "%s: Cannot fork user shell\n" @@ -1909,12 +1966,20 @@ msgid "Session terminated, terminating shell..." msgstr "" #, c-format -msgid "%s: %s\n" -msgstr "%s: %s\n" +msgid " ...killed.\n" +msgstr "" + +#, c-format +msgid " ...waiting for child to terminate.\n" +msgstr "" msgid " ...terminated.\n" msgstr "" +#, c-format +msgid "%s: %s\n" +msgstr "%s: %s\n" + msgid "" "Usage: su [options] [LOGIN]\n" "\n" @@ -2214,6 +2279,11 @@ msgstr "" msgid "%s: failed to reset the lastlog entry of UID %lu: %s\n" msgstr "" +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to prepare the new %s entry\n" +msgstr "%s: impossibile abbandonare i privilegi (%s)\n" + #, c-format msgid "%s: cannot create directory %s\n" msgstr "%s: impossibile creare la directory %s\n" @@ -2260,6 +2330,16 @@ msgstr "%s: impossibile creare la directory %s\n" msgid "%s: can't create group\n" msgstr "%s: impossibile creare il gruppo\n" +#, fuzzy, c-format +#| msgid "%s: can't create user\n" +msgid "%s: can't create subordinate user IDs\n" +msgstr "%s: impossibile creare l'utente\n" + +#, fuzzy, c-format +#| msgid "%s: can't create group\n" +msgid "%s: can't create subordinate group IDs\n" +msgstr "%s: impossibile creare il gruppo\n" + #, c-format msgid "" "%s: warning: the home directory already exists.\n" @@ -2311,6 +2391,11 @@ msgstr "" "%s: impossibile rimuovere il gruppo «%s» in quanto gruppo principale di un " "altro utente.\n" +#, fuzzy, c-format +#| msgid "%s: cannot rename directory %s to %s\n" +msgid "%s: cannot remove entry %lu from %s\n" +msgstr "%s: impossibile rinominare la directory %s in %s\n" + #, fuzzy, c-format #| msgid "%s: invalid home directory '%s'\n" msgid "%s: %s mail spool (%s) not found\n" @@ -2444,6 +2529,18 @@ msgstr "" msgid " -U, --unlock unlock the user account\n" msgstr "" +msgid " -v, --add-subuids FIRST-LAST add range of subordinate uids\n" +msgstr "" + +msgid " -V, --del-subuids FIRST-LAST remove range of subordinate uids\n" +msgstr "" + +msgid " -w, --add-subgids FIRST-LAST add range of subordinate gids\n" +msgstr "" + +msgid " -W, --del-subgids FIRST-LAST remove range of subordinate gids\n" +msgstr "" + msgid "" " -Z, --selinux-user SEUSER new SELinux user mapping for the user " "account\n" @@ -2466,6 +2563,16 @@ msgstr "" msgid "%s: user '%s' already exists in %s\n" msgstr "%s: l'utente «%s» esiste già\n" +#, fuzzy, c-format +#| msgid "%s: invalid date '%s'\n" +msgid "%s: invalid subordinate uid range '%s'\n" +msgstr "%s: data «%s» non valida\n" + +#, fuzzy, c-format +#| msgid "%s: invalid date '%s'\n" +msgid "%s: invalid subordinate gid range '%s'\n" +msgstr "%s: data «%s» non valida\n" + #, fuzzy, c-format #| msgid "%s: cannot open file %s\n" msgid "%s: no options\n" @@ -2484,6 +2591,10 @@ msgstr "%s: le shadow password sono necessarie per le opzioni -e e -f\n" msgid "%s: UID '%lu' already exists\n" msgstr "Membro già esistente\n" +#, c-format +msgid "%s: %s does not exist, you cannot use the flags %s or %s\n" +msgstr "" + #, c-format msgid "%s: directory %s exists\n" msgstr "%s: la directory %s esiste già\n" @@ -2527,6 +2638,26 @@ msgstr "impossibile cambiare il proprietario della casella di posta" msgid "failed to rename mailbox" msgstr "impossibile rinominare la casella di posta" +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to remove uid range %lu-%lu from '%s'\n" +msgstr "%s: impossibile abbandonare i privilegi (%s)\n" + +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to add uid range %lu-%lu from '%s'\n" +msgstr "%s: impossibile abbandonare i privilegi (%s)\n" + +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to remove gid range %lu-%lu from '%s'\n" +msgstr "%s: impossibile abbandonare i privilegi (%s)\n" + +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to add gid range %lu-%lu from '%s'\n" +msgstr "%s: impossibile abbandonare i privilegi (%s)\n" + #, fuzzy, c-format #| msgid "" #| "You have modified %s.\n" @@ -2596,6 +2727,20 @@ msgstr "Impossibile fare il lock del file" msgid "Couldn't make backup" msgstr "Impossibile effettuare il backup" +#, fuzzy, c-format +#| msgid "%s: %s\n" +msgid "%s: %s: %s\n" +msgstr "%s: %s\n" + +#, fuzzy, c-format +#| msgid "%s: %s not found in /etc/passwd\n" +msgid "%s: %s returned with status %d\n" +msgstr "%s: impossibile trovare «%s» in /etc/passwd\n" + +#, c-format +msgid "%s: %s killed by signal %d\n" +msgstr "" + #, fuzzy #| msgid "Unable to open group file\n" msgid "failed to open scratch file" @@ -3345,9 +3490,6 @@ msgstr "%s: directory di base «%s» non valida\n" #~ msgid "%s: can't rewrite password file\n" #~ msgstr "%s: impossibile riscrivere il file delle password\n" -#~ msgid "%s: can't update password file\n" -#~ msgstr "%s: impossibile aggiornare il file delle password\n" - #~ msgid "%s: can't update shadow password file\n" #~ msgstr "%s: impossibile aggiornare il file delle shadow password\n" @@ -3366,9 +3508,6 @@ msgstr "%s: directory di base «%s» non valida\n" #~ msgid "Cannot open the password file.\n" #~ msgstr "Impossibile aprire il file delle password.\n" -#~ msgid "%s: %s not found in /etc/passwd\n" -#~ msgstr "%s: impossibile trovare «%s» in /etc/passwd\n" - #~ msgid "Error updating the password entry.\n" #~ msgstr "Errore nell'aggiornare la voce nel file delle password.\n" @@ -3578,9 +3717,6 @@ msgstr "%s: directory di base «%s» non valida\n" #~ msgid "%s: can't update shadow group file\n" #~ msgstr "%s: impossibile aggiornare il file dei gruppi shadow\n" -#~ msgid "%s: can't update group file\n" -#~ msgstr "%s: impossibile aggiornare il file dei gruppi\n" - #~ msgid "%s: can't delete shadow group file\n" #~ msgstr "%s: impossibile eliminare il file dei gruppi shadow\n" diff --git a/po/ja.gmo b/po/ja.gmo new file mode 100644 index 0000000000000000000000000000000000000000..b71a9166c5af559eb7c8dcf9449e7aca82638782 GIT binary patch literal 74158 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\n" "Language-Team: Japanese \n" @@ -420,6 +420,11 @@ msgstr "%s: chroot のパス'%s' が不正です\n" msgid "%s: cannot access chroot directory %s: %s\n" msgstr "%s: chroot ディレクトリ%s にアクセスできません: %s\n" +#, fuzzy, c-format +#| msgid "%s: cannot access chroot directory %s: %s\n" +msgid "%s: cannot chdir to chroot directory %s: %s\n" +msgstr "%s: chroot ディレクトリ%s にアクセスできません: %s\n" + #, c-format msgid "%s: unable to chroot to directory %s: %s\n" msgstr "%s: ディレクトリ %s に chroot できませんでした: %s\n" @@ -773,6 +778,11 @@ msgstr "%s: %d 行: 行が長過ぎます\n" msgid "%s: line %d: missing new password\n" msgstr "%s: %d 行: 新規パスワードがありません\n" +#, fuzzy, c-format +#| msgid "%s: Failed to write %s: %s\n" +msgid "%s: failed to crypt password with salt '%s': %s\n" +msgstr "%s: %s に書き込めませんでした: %s\n" + #, c-format msgid "%s: line %d: group '%s' does not exist\n" msgstr "%s: %d 行: グループ '%s' は存在しません\n" @@ -1074,6 +1084,14 @@ msgstr "%s: GID '%lu' は既に存在します\n" msgid "%s: Cannot setup cleanup service.\n" msgstr "%s: クリーンアップサービスを設定できません。\n" +#, fuzzy +#| msgid "" +#| " -r, --reset reset the counters of login failures\n" +msgid "" +" -f, --force delete group even if it is the primary group " +"of a user\n" +msgstr " -r, --reset ログイン失敗のカウンタをリセットする\n" + #, c-format msgid "%s: cannot remove entry '%s' from %s\n" msgstr "%s: '%s' のエントリを %s から削除できません\n" @@ -1301,6 +1319,22 @@ msgstr "" " -b, --before DAYS DAYS 日より以前の lastlog 記録だけを表示す" "る\n" +#, fuzzy +#| msgid "" +#| " -a, --all display faillog records for all users\n" +msgid "" +" -C, --clear clear lastlog record of an user (usable only " +"with -u)\n" +msgstr " -a, --all 全ユーザの faillog 記録を表示する\n" + +#, fuzzy +#| msgid "" +#| " -a, --all display faillog records for all users\n" +msgid "" +" -S, --set set lastlog record to current time (usable " +"only with -u)\n" +msgstr " -a, --all 全ユーザの faillog 記録を表示する\n" + msgid "" " -t, --time DAYS print only lastlog records more recent than " "DAYS\n" @@ -1321,6 +1355,24 @@ msgstr "ユーザ名 ポート 最近のログイン" msgid "**Never logged in**" msgstr "**一度もログインしていません**" +#, fuzzy, c-format +#| msgid "%s: Failed to get the entry for UID %lu\n" +msgid "%s: Failed to update the entry for UID %lu\n" +msgstr "%s: UID %lu のエントリを取得できませんでした\n" + +#, fuzzy, c-format +#| msgid "%s: failed to reset the lastlog entry of UID %lu: %s\n" +msgid "%s: Failed to update the lastlog file\n" +msgstr "%s: UID %lu の lastlog エントリをリセットできませんでした: %s\n" + +#, c-format +msgid "%s: Option -C cannot be used together with option -S\n" +msgstr "" + +#, c-format +msgid "%s: Options -C and -S require option -u to specify the user\n" +msgstr "" + #, c-format msgid "Usage: %s [-p] [name]\n" msgstr "使い方: %s [-p] [ユーザ名]\n" @@ -1354,14 +1406,6 @@ msgstr "" "\n" "[切断を迂回 -- root ログインが可能です。]" -#, c-format -msgid "" -"\n" -"Login timed out after %u seconds.\n" -msgstr "" -"\n" -"あと %u 秒でログインはタイムアウトします。\n" - #, c-format msgid "%s: Cannot possibly work without effective root\n" msgstr "%s: おそらく実効 root がないと動作できません\n" @@ -1371,6 +1415,14 @@ msgstr "" "utmp にエントリがありません。\"login\" を \"sh\" の最低レベルから行う必要があ" "ります" +#, c-format +msgid "" +"\n" +"Login timed out after %u seconds.\n" +msgstr "" +"\n" +"あと %u 秒でログインはタイムアウトします。\n" + #, c-format msgid "login: PAM Failure, aborting: %s\n" msgstr "login: PAM が失敗しました、終了します: %s\n" @@ -1444,6 +1496,11 @@ msgstr "使い方: newgrp [-] [グループ]\n" msgid "Usage: sg group [[-c] command]\n" msgstr "使い方: sg グループ [[-c] コマンド]\n" +#, fuzzy, c-format +#| msgid "%s: Failed to write %s: %s\n" +msgid "%s: failed to crypt password with previous salt: %s\n" +msgstr "%s: %s に書き込めませんでした: %s\n" + msgid "Invalid password.\n" msgstr "そのパスワードは使えません。\n" @@ -1512,6 +1569,21 @@ msgstr "%s: %d 行: chown %s が失敗しました: %s\n" msgid "%s: line %d: can't update entry\n" msgstr "%s: %d 行: エントリを更新できません\n" +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to prepare new %s entry\n" +msgstr "%s: %s の新しいエントリ '%s' を準備できませんでした。\n" + +#, fuzzy, c-format +#| msgid "%s: can't create user\n" +msgid "%s: can't find subordinate user range\n" +msgstr "%s: ユーザを作成できません\n" + +#, fuzzy, c-format +#| msgid "%s: can't create group\n" +msgid "%s: can't find subordinate group range\n" +msgstr "%s: グループを作成できません\n" + msgid "" " -a, --all report password status on all accounts\n" msgstr "" @@ -1775,12 +1847,6 @@ msgstr "パスワード認証を迂回します。\n" msgid "Please enter your OWN password as authentication.\n" msgstr "「あなた自身のパスワード」を入力して認証してください。\n" -msgid " ...killed.\n" -msgstr " ...kill されました。\n" - -msgid " ...waiting for child to terminate.\n" -msgstr " ...子プロセスの終了を待ちます。\n" - #, c-format msgid "%s: Cannot fork user shell\n" msgstr "%s: ユーザシェルを起動できません。\n" @@ -1797,12 +1863,20 @@ msgid "Session terminated, terminating shell..." msgstr "セッションが終了しました。シェルを終了しています..." #, c-format -msgid "%s: %s\n" -msgstr "%s: %s\n" +msgid " ...killed.\n" +msgstr " ...kill されました。\n" + +#, c-format +msgid " ...waiting for child to terminate.\n" +msgstr " ...子プロセスの終了を待ちます。\n" msgid " ...terminated.\n" msgstr " ...終了しました。\n" +#, c-format +msgid "%s: %s\n" +msgstr "%s: %s\n" + msgid "" "Usage: su [options] [LOGIN]\n" "\n" @@ -2017,7 +2091,7 @@ msgid " -s, --shell SHELL login shell of the new account\n" msgstr " -s, --shell SHELL 新アカウントのログインシェル\n" msgid " -u, --uid UID user ID of the new account\n" -msgstr " -u, --iud UID 新アカウントのユーザ ID\n" +msgstr " -u, --uid UID 新アカウントのユーザ ID\n" msgid "" " -U, --user-group create a group with the same name as the " @@ -2071,6 +2145,11 @@ msgstr "%s: UID %lu の faillog エントリをリセットできませんでし msgid "%s: failed to reset the lastlog entry of UID %lu: %s\n" msgstr "%s: UID %lu の lastlog エントリをリセットできませんでした: %s\n" +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to prepare the new %s entry\n" +msgstr "%s: %s の新しいエントリ '%s' を準備できませんでした。\n" + #, c-format msgid "%s: cannot create directory %s\n" msgstr "%s: ディレクトリ %s を作成できません\n" @@ -2114,6 +2193,16 @@ msgstr "%s: %s の tcb ディレクトリの作成に失敗しました\n" msgid "%s: can't create group\n" msgstr "%s: グループを作成できません\n" +#, fuzzy, c-format +#| msgid "%s: can't create user\n" +msgid "%s: can't create subordinate user IDs\n" +msgstr "%s: ユーザを作成できません\n" + +#, fuzzy, c-format +#| msgid "%s: can't create group\n" +msgid "%s: can't create subordinate group IDs\n" +msgstr "%s: グループを作成できません\n" + #, c-format msgid "" "%s: warning: the home directory already exists.\n" @@ -2159,6 +2248,11 @@ msgstr "%s: グループ %s には他のメンバーがいるので削除しま msgid "%s: group %s is the primary group of another user and is not removed.\n" msgstr "%s: グループ %s は他のユーザのプライマリグループなので削除しません。\n" +#, fuzzy, c-format +#| msgid "%s: cannot remove entry '%s' from %s\n" +msgid "%s: cannot remove entry %lu from %s\n" +msgstr "%s: '%s' のエントリを %s から削除できません\n" + #, c-format msgid "%s: %s mail spool (%s) not found\n" msgstr "%s: %s のメールスプール (%s) がありません\n" @@ -2276,6 +2370,18 @@ msgid " -U, --unlock unlock the user account\n" msgstr "" " -U, --unlock このユーザアカウントのロックを解除する\n" +msgid " -v, --add-subuids FIRST-LAST add range of subordinate uids\n" +msgstr "" + +msgid " -V, --del-subuids FIRST-LAST remove range of subordinate uids\n" +msgstr "" + +msgid " -w, --add-subgids FIRST-LAST add range of subordinate gids\n" +msgstr "" + +msgid " -W, --del-subgids FIRST-LAST remove range of subordinate gids\n" +msgstr "" + msgid "" " -Z, --selinux-user SEUSER new SELinux user mapping for the user " "account\n" @@ -2297,6 +2403,16 @@ msgstr "" msgid "%s: user '%s' already exists in %s\n" msgstr "%s: ユーザ '%s' は既に %s に存在します\n" +#, fuzzy, c-format +#| msgid "%s: invalid date '%s'\n" +msgid "%s: invalid subordinate uid range '%s'\n" +msgstr "%s: 日付 '%s' は不正です\n" + +#, fuzzy, c-format +#| msgid "%s: invalid date '%s'\n" +msgid "%s: invalid subordinate gid range '%s'\n" +msgstr "%s: 日付 '%s' は不正です\n" + #, c-format msgid "%s: no options\n" msgstr "%s: オプションがありません\n" @@ -2313,6 +2429,11 @@ msgstr "%s: -e および -f にはシャドウパスワードが必要です\n" msgid "%s: UID '%lu' already exists\n" msgstr "%s: UID '%lu' は既に存在します\n" +#, fuzzy, c-format +#| msgid "%s: %s is not authorized to change the password of %s\n" +msgid "%s: %s does not exist, you cannot use the flags %s or %s\n" +msgstr "%s: %s は %s のパスワードを変更する権限がありません\n" + #, c-format msgid "%s: directory %s exists\n" msgstr "%s: ディレクトリ %s は存在します\n" @@ -2357,6 +2478,26 @@ msgstr "mailbox 所有者の変更に失敗しました" msgid "failed to rename mailbox" msgstr "mailbox の名前変更に失敗しました" +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to remove uid range %lu-%lu from '%s'\n" +msgstr "%s: %s の新しいエントリ '%s' を準備できませんでした。\n" + +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to add uid range %lu-%lu from '%s'\n" +msgstr "%s: %s の新しいエントリ '%s' を準備できませんでした。\n" + +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to remove gid range %lu-%lu from '%s'\n" +msgstr "%s: %s の新しいエントリ '%s' を準備できませんでした。\n" + +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to add gid range %lu-%lu from '%s'\n" +msgstr "%s: %s の新しいエントリ '%s' を準備できませんでした。\n" + #, c-format msgid "" "You have modified %s.\n" @@ -2408,6 +2549,20 @@ msgstr "ファイルをロックできません" msgid "Couldn't make backup" msgstr "バックアップを作成できません" +#, fuzzy, c-format +#| msgid "%s: PAM: %s\n" +msgid "%s: %s: %s\n" +msgstr "%s: PAM: %s\n" + +#, fuzzy, c-format +#| msgid "%s: nscd exited with status %d\n" +msgid "%s: %s returned with status %d\n" +msgstr "%s: nscd はステータス %d で終了しました\n" + +#, c-format +msgid "%s: %s killed by signal %d\n" +msgstr "" + msgid "failed to open scratch file" msgstr "スクラッチファイルをオープンできませんでした" diff --git a/po/kk.gmo b/po/kk.gmo new file mode 100644 index 0000000000000000000000000000000000000000..8bcfb6a8e64abe074341d71cfa12e7b893678a3c GIT binary patch literal 81155 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\n" "Language-Team: Kazakh \n" @@ -417,6 +417,11 @@ msgstr "%s: '%s' chroot жолы қате\n" msgid "%s: cannot access chroot directory %s: %s\n" msgstr "%s: %s chroot бумасына қатынау мүмкін емес: %s\n" +#, fuzzy, c-format +#| msgid "%s: cannot access chroot directory %s: %s\n" +msgid "%s: cannot chdir to chroot directory %s: %s\n" +msgstr "%s: %s chroot бумасына қатынау мүмкін емес: %s\n" + #, c-format msgid "%s: unable to chroot to directory %s: %s\n" msgstr "%s: %s бумасына chroot жасау мүмкін емес: %s\n" @@ -780,6 +785,11 @@ msgstr "%s: жол %d: жол өте ұзын\n" msgid "%s: line %d: missing new password\n" msgstr "%s: жол %d: жаңа пароль жоқ\n" +#, fuzzy, c-format +#| msgid "%s: Failed to write %s: %s\n" +msgid "%s: failed to crypt password with salt '%s': %s\n" +msgstr "%s: %s жазу сәтсіз: %s\n" + #, c-format msgid "%s: line %d: group '%s' does not exist\n" msgstr "%s: жол %d: '%s' тобы жоқ болып тұр\n" @@ -1086,6 +1096,14 @@ msgstr "%s: GID '%lu' бар болып тұр\n" msgid "%s: Cannot setup cleanup service.\n" msgstr "%s: Тазарту қызметін орнату мүмкін емес.\n" +#, fuzzy +#| msgid "" +#| " -r, --reset reset the counters of login failures\n" +msgid "" +" -f, --force delete group even if it is the primary group " +"of a user\n" +msgstr " -r, --reset сәтсіз кіру талап санағышын нөлдеу\n" + #, c-format msgid "%s: cannot remove entry '%s' from %s\n" msgstr "%s: '%s' жазбасын %s ішінен өшіру мүмкін емес\n" @@ -1312,6 +1330,26 @@ msgstr "" " -b, --before КҮН мерзімі КҮНнен үлкен ғана lastlog жазбаларын " "көрсету\n" +#, fuzzy +#| msgid "" +#| " -a, --all display faillog records for all users\n" +msgid "" +" -C, --clear clear lastlog record of an user (usable only " +"with -u)\n" +msgstr "" +" -a, --all барлық пайдаланушылар үшін faillog " +"жазбаларын көрсету\n" + +#, fuzzy +#| msgid "" +#| " -a, --all display faillog records for all users\n" +msgid "" +" -S, --set set lastlog record to current time (usable " +"only with -u)\n" +msgstr "" +" -a, --all барлық пайдаланушылар үшін faillog " +"жазбаларын көрсету\n" + msgid "" " -t, --time DAYS print only lastlog records more recent than " "DAYS\n" @@ -1334,6 +1372,24 @@ msgstr "Пайдаланушы Порт Соңғы" msgid "**Never logged in**" msgstr "**Жүйеге ешқашан кірмеген**" +#, fuzzy, c-format +#| msgid "%s: Failed to get the entry for UID %lu\n" +msgid "%s: Failed to update the entry for UID %lu\n" +msgstr "%s: UID %lu үшін жазбаны алу мүмкін емес\n" + +#, fuzzy, c-format +#| msgid "%s: failed to reset the lastlog entry of UID %lu: %s\n" +msgid "%s: Failed to update the lastlog file\n" +msgstr "%s: %lu UID-і үшін lastlog жазбасын нөлдеу сәтсіз: %s\n" + +#, c-format +msgid "%s: Option -C cannot be used together with option -S\n" +msgstr "" + +#, c-format +msgid "%s: Options -C and -S require option -u to specify the user\n" +msgstr "" + #, c-format msgid "Usage: %s [-p] [name]\n" msgstr "Қолданылуы: %s [-p] [аты]\n" @@ -1368,14 +1424,6 @@ msgstr "" "[Жүйеден мәжбүрлі шығу орындалмады -- root үшін жүйеге кіруге рұқсат " "етілген.]" -#, c-format -msgid "" -"\n" -"Login timed out after %u seconds.\n" -msgstr "" -"\n" -"Жүйеге кіру уақыты %u секундтан кейін аяқталды.\n" - #, c-format msgid "%s: Cannot possibly work without effective root\n" msgstr "%s: Эффективті root-сыз жұмыс істемеуі мүмкін\n" @@ -1385,6 +1433,14 @@ msgstr "" "Utmp жазбасы жоқ. Сізге exec \"login\" командасын бірінші деңгейден \"sh\" " "қосу керек" +#, c-format +msgid "" +"\n" +"Login timed out after %u seconds.\n" +msgstr "" +"\n" +"Жүйеге кіру уақыты %u секундтан кейін аяқталды.\n" + #, c-format msgid "login: PAM Failure, aborting: %s\n" msgstr "login: PAM қатесі, тоқтатылды: %s\n" @@ -1457,6 +1513,11 @@ msgstr "Қолданылуы: newgrp [-] [топ]\n" msgid "Usage: sg group [[-c] command]\n" msgstr "Қолданылуы: sg топ [[-c] командасы]\n" +#, fuzzy, c-format +#| msgid "%s: Failed to write %s: %s\n" +msgid "%s: failed to crypt password with previous salt: %s\n" +msgstr "%s: %s жазу сәтсіз: %s\n" + msgid "Invalid password.\n" msgstr "пароль қате.\n" @@ -1524,6 +1585,21 @@ msgstr "%s: жол %d: chown %s сәтсіз: %s\n" msgid "%s: line %d: can't update entry\n" msgstr "%s: жол %d: жазбаны жаңарту мүмкін емес\n" +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to prepare new %s entry\n" +msgstr "%s: жаңа %s '%s' жазбаны дайындау мүмкін емес\n" + +#, fuzzy, c-format +#| msgid "%s: can't create user\n" +msgid "%s: can't find subordinate user range\n" +msgstr "%s: пайдаланушыны жасау мүмкін емес\n" + +#, fuzzy, c-format +#| msgid "%s: can't create group\n" +msgid "%s: can't find subordinate group range\n" +msgstr "%s: топты құру мүмкін емес\n" + msgid "" " -a, --all report password status on all accounts\n" msgstr "" @@ -1795,12 +1871,6 @@ msgstr "Парольдік аутентификацияны аттап өтем msgid "Please enter your OWN password as authentication.\n" msgstr "Шындылықты тексеру үшін ӨЗІҢІЗДІҢ пароліңізді енгізіңіз.\n" -msgid " ...killed.\n" -msgstr " ...өлтірілді.\n" - -msgid " ...waiting for child to terminate.\n" -msgstr " ...ұрпақ үрдістің тоқтатылуын күту.\n" - #, c-format msgid "%s: Cannot fork user shell\n" msgstr "%s: Пайдаланушы қоршамын іске қосу мүмкін емес\n" @@ -1817,12 +1887,20 @@ msgid "Session terminated, terminating shell..." msgstr "Сессия тоқтатылды, қоршамды тоқтату..." #, c-format -msgid "%s: %s\n" -msgstr "%s: %s\n" +msgid " ...killed.\n" +msgstr " ...өлтірілді.\n" + +#, c-format +msgid " ...waiting for child to terminate.\n" +msgstr " ...ұрпақ үрдістің тоқтатылуын күту.\n" msgid " ...terminated.\n" msgstr " ...тоқтатылды.\n" +#, c-format +msgid "%s: %s\n" +msgstr "%s: %s\n" + msgid "" "Usage: su [options] [LOGIN]\n" "\n" @@ -2100,6 +2178,11 @@ msgstr "%s: %lu UID-і үшін faillog жазбасын нөлдеу сәтсі msgid "%s: failed to reset the lastlog entry of UID %lu: %s\n" msgstr "%s: %lu UID-і үшін lastlog жазбасын нөлдеу сәтсіз: %s\n" +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to prepare the new %s entry\n" +msgstr "%s: жаңа %s '%s' жазбаны дайындау мүмкін емес\n" + #, c-format msgid "%s: cannot create directory %s\n" msgstr "%s: %s бумасын жасау мүкін емес\n" @@ -2142,6 +2225,16 @@ msgstr "%s: %s үшін tcb бумасын жасау мүмкін емес\n" msgid "%s: can't create group\n" msgstr "%s: топты құру мүмкін емес\n" +#, fuzzy, c-format +#| msgid "%s: can't create user\n" +msgid "%s: can't create subordinate user IDs\n" +msgstr "%s: пайдаланушыны жасау мүмкін емес\n" + +#, fuzzy, c-format +#| msgid "%s: can't create group\n" +msgid "%s: can't create subordinate group IDs\n" +msgstr "%s: топты құру мүмкін емес\n" + #, c-format msgid "" "%s: warning: the home directory already exists.\n" @@ -2186,6 +2279,11 @@ msgstr "" "%s: %s тобын өшіру мүмкін емес, ол басқа пайдаланушы үшін басыңқы топ болып " "табылады.\n" +#, fuzzy, c-format +#| msgid "%s: cannot remove entry '%s' from %s\n" +msgid "%s: cannot remove entry %lu from %s\n" +msgstr "%s: '%s' жазбасын %s ішінен өшіру мүмкін емес\n" + #, c-format msgid "%s: %s mail spool (%s) not found\n" msgstr "%s: %s пошта спулы (%s) табылмады\n" @@ -2310,6 +2408,18 @@ msgid " -U, --unlock unlock the user account\n" msgstr "" " -U, --unlock пайдаланушы тіркелгісін оқшаулаудан босату\n" +msgid " -v, --add-subuids FIRST-LAST add range of subordinate uids\n" +msgstr "" + +msgid " -V, --del-subuids FIRST-LAST remove range of subordinate uids\n" +msgstr "" + +msgid " -w, --add-subgids FIRST-LAST add range of subordinate gids\n" +msgstr "" + +msgid " -W, --del-subgids FIRST-LAST remove range of subordinate gids\n" +msgstr "" + msgid "" " -Z, --selinux-user SEUSER new SELinux user mapping for the user " "account\n" @@ -2329,6 +2439,16 @@ msgstr "" msgid "%s: user '%s' already exists in %s\n" msgstr "%s: '%s' пайдаланушысы %s ішінде бар болып тұр\n" +#, fuzzy, c-format +#| msgid "%s: invalid date '%s'\n" +msgid "%s: invalid subordinate uid range '%s'\n" +msgstr "%s: '%s' күні қате\n" + +#, fuzzy, c-format +#| msgid "%s: invalid date '%s'\n" +msgid "%s: invalid subordinate gid range '%s'\n" +msgstr "%s: '%s' күні қате\n" + #, c-format msgid "%s: no options\n" msgstr "%s: опциялар жоқ\n" @@ -2345,6 +2465,11 @@ msgstr "%s: -e пен -f үшін көлеңкелі парольдер кере msgid "%s: UID '%lu' already exists\n" msgstr "%s: '%lu' UID-і бар болып тұр\n" +#, fuzzy, c-format +#| msgid "%s: %s is not authorized to change the password of %s\n" +msgid "%s: %s does not exist, you cannot use the flags %s or %s\n" +msgstr "%s: %s пайдаланушының %s үшін паролді өзгертуге құқығы жоқ\n" + #, c-format msgid "%s: directory %s exists\n" msgstr "%s: %s бумасы бар болып тұр\n" @@ -2389,6 +2514,26 @@ msgstr "mailbox иесін ауыстыру қатемен аяқталды" msgid "failed to rename mailbox" msgstr "mailbox атын ауыстыру қатемен аяқталды" +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to remove uid range %lu-%lu from '%s'\n" +msgstr "%s: жаңа %s '%s' жазбаны дайындау мүмкін емес\n" + +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to add uid range %lu-%lu from '%s'\n" +msgstr "%s: жаңа %s '%s' жазбаны дайындау мүмкін емес\n" + +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to remove gid range %lu-%lu from '%s'\n" +msgstr "%s: жаңа %s '%s' жазбаны дайындау мүмкін емес\n" + +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to add gid range %lu-%lu from '%s'\n" +msgstr "%s: жаңа %s '%s' жазбаны дайындау мүмкін емес\n" + #, c-format msgid "" "You have modified %s.\n" @@ -2442,6 +2587,20 @@ msgstr "Файлды оқшаулау мүмкін емес" msgid "Couldn't make backup" msgstr "Қор көшірмені жасау мүмкін емес" +#, fuzzy, c-format +#| msgid "%s: PAM: %s\n" +msgid "%s: %s: %s\n" +msgstr "%s: PAM: %s\n" + +#, fuzzy, c-format +#| msgid "%s: nscd exited with status %d" +msgid "%s: %s returned with status %d\n" +msgstr "%s: nscd %d статуспен жұмысын өз аяқтады" + +#, c-format +msgid "%s: %s killed by signal %d\n" +msgstr "" + msgid "failed to open scratch file" msgstr "scratch файлын ашу сәтсіз" diff --git a/po/km.gmo b/po/km.gmo new file mode 100644 index 0000000000000000000000000000000000000000..a713366a25c4b571884ede7dcd54880284bf9592 GIT binary patch literal 28822 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 literal 0 HcmV?d00001 diff --git a/po/km.po b/po/km.po index e7167bbf..6f3488fd 100644 --- a/po/km.po +++ b/po/km.po @@ -11,7 +11,7 @@ msgid "" msgstr "" "Project-Id-Version: shadow_po_km\n" "Report-Msgid-Bugs-To: pkg-shadow-devel@lists.alioth.debian.org\n" -"POT-Creation-Date: 2012-05-20 19:52+0200\n" +"POT-Creation-Date: 2016-09-18 21:41-0500\n" "PO-Revision-Date: 2006-06-28 10:08+0700\n" "Last-Translator: Khoem Sokhem \n" "Language-Team: Khmer \n" @@ -447,6 +447,11 @@ msgstr "%s ៖ លេខ​ទូរស័ព្ទនៅផ្ទះ​មិ msgid "%s: cannot access chroot directory %s: %s\n" msgstr "%s ៖ មិន​​អាច​បង្កើត​ថត​ %s បានឡើយ\n" +#, fuzzy, c-format +#| msgid "%s: cannot create directory %s\n" +msgid "%s: cannot chdir to chroot directory %s: %s\n" +msgstr "%s ៖ មិន​​អាច​បង្កើត​ថត​ %s បានឡើយ\n" + #, fuzzy, c-format #| msgid "%s: cannot create directory %s\n" msgid "%s: unable to chroot to directory %s: %s\n" @@ -791,6 +796,11 @@ msgstr "%s ៖ បន្ទាត់​ %d ៖ បន្ទាត់​វែ msgid "%s: line %d: missing new password\n" msgstr "%s ៖ បន្ទាត់​ %d ៖ បាត់បង់​ពាក្យ​សម្ងាត់​ថ្មី​\n" +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to crypt password with salt '%s': %s\n" +msgstr "%s ៖ បរាជ័យ​ក្នុងការ​ទម្លាក់​សិទ្ធ (%s)\n" + #, fuzzy, c-format #| msgid "%s: group %s does not exist\n" msgid "%s: line %d: group '%s' does not exist\n" @@ -1085,6 +1095,11 @@ msgstr "" msgid "%s: Cannot setup cleanup service.\n" msgstr "%s ៖ មិន​អាចកំណត់​ឈ្មោះ​អ្នកប្រើ​របស់​អ្នក​បាន​ទេ ។\n" +msgid "" +" -f, --force delete group even if it is the primary group " +"of a user\n" +msgstr "" + #, fuzzy, c-format #| msgid "%s: cannot rename directory %s to %s\n" msgid "%s: cannot remove entry '%s' from %s\n" @@ -1305,6 +1320,16 @@ msgid "" " -b, --before DAYS print only lastlog records older than DAYS\n" msgstr "" +msgid "" +" -C, --clear clear lastlog record of an user (usable only " +"with -u)\n" +msgstr "" + +msgid "" +" -S, --set set lastlog record to current time (usable " +"only with -u)\n" +msgstr "" + msgid "" " -t, --time DAYS print only lastlog records more recent than " "DAYS\n" @@ -1325,6 +1350,24 @@ msgstr "ឈ្មោះ​អ្នក​ប្រើ ច្រ msgid "**Never logged in**" msgstr "**មិន​ដែល​ចូល​សោះ**" +#, fuzzy, c-format +#| msgid "%s: cannot create directory %s\n" +msgid "%s: Failed to update the entry for UID %lu\n" +msgstr "%s ៖ មិន​​អាច​បង្កើត​ថត​ %s បានឡើយ\n" + +#, fuzzy, c-format +#| msgid "%s: can't update password file\n" +msgid "%s: Failed to update the lastlog file\n" +msgstr "%s ៖ មិនអាច​ធ្វើឲ្យ​ឯកសារ​ពាក្យ​សម្ងាត់​ទាន់សម័យ​បានទេ\n" + +#, c-format +msgid "%s: Option -C cannot be used together with option -S\n" +msgstr "" + +#, c-format +msgid "%s: Options -C and -S require option -u to specify the user\n" +msgstr "" + #, c-format msgid "Usage: %s [-p] [name]\n" msgstr "របៀបប្រើ ៖ %s [-p] [name]\n" @@ -1361,6 +1404,13 @@ msgstr "" "\n" "[បាន​វៀង​ការ​ផ្ដាច់ -- បាន​អនុញ្ញាត​ការ​ចូល​ជា root ។]\n" +#, c-format +msgid "%s: Cannot possibly work without effective root\n" +msgstr "" + +msgid "No utmp entry. You must exec \"login\" from the lowest level \"sh\"" +msgstr "គ្មាន​ធាតុ​ utmp ឡើយ ។ អ្នក​ត្រូវ​ប្រតិបត្តិ​ \"login\" ពី​កម្រិត​ទាប​បំផុត​ \"sh\"" + #, fuzzy, c-format #| msgid "" #| "\n" @@ -1372,13 +1422,6 @@ msgstr "" "\n" "អស់​ពេល​ចូល​បន្ទាប់ពី %d វិនាទី ។\n" -#, c-format -msgid "%s: Cannot possibly work without effective root\n" -msgstr "" - -msgid "No utmp entry. You must exec \"login\" from the lowest level \"sh\"" -msgstr "គ្មាន​ធាតុ​ utmp ឡើយ ។ អ្នក​ត្រូវ​ប្រតិបត្តិ​ \"login\" ពី​កម្រិត​ទាប​បំផុត​ \"sh\"" - #, c-format msgid "login: PAM Failure, aborting: %s\n" msgstr "ចូល ៖ PAM បរាជ័យ​ កំពុង​បោះបង់​ ៖ %s\n" @@ -1456,6 +1499,11 @@ msgstr "របៀបប្រើ ៖ newgrp [-] [group]\n" msgid "Usage: sg group [[-c] command]\n" msgstr "របៀបប្រើ​ ៖ ក្រុម sg [[-c] command]\n" +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to crypt password with previous salt: %s\n" +msgstr "%s ៖ បរាជ័យ​ក្នុងការ​ទម្លាក់​សិទ្ធ (%s)\n" + #, fuzzy msgid "Invalid password.\n" msgstr "ពាក្យ​សម្ងាត់​ចាស់ ៖ " @@ -1525,6 +1573,20 @@ msgstr "%s ៖ បន្ទាត់​ %d ៖ chown បានបរាជ័ msgid "%s: line %d: can't update entry\n" msgstr "%s ៖ បន្ទាត់​ %d ៖ មិនអាចធ្វើឲ្យ​ធាតុបញ្ចូល​ទាន់សម័យបានឡើយ\n" +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to prepare new %s entry\n" +msgstr "%s ៖ បរាជ័យ​ក្នុងការ​ទម្លាក់​សិទ្ធ (%s)\n" + +#, fuzzy, c-format +msgid "%s: can't find subordinate user range\n" +msgstr "%s ៖ មិន​អាច​បង្កើត​ %s បានឡើយ\n" + +#, fuzzy, c-format +#| msgid "%s: can't update group file\n" +msgid "%s: can't find subordinate group range\n" +msgstr "%s ៖ មិនអាច​ធ្វើឲ្យ​ឯកសារក្រុម​ទាន់សម័យបានទេ​\n" + msgid "" " -a, --all report password status on all accounts\n" msgstr "" @@ -1783,12 +1845,6 @@ msgstr "ការ​ផ្ទៀងផ្ទាត់​ភាព​ត្រឹ msgid "Please enter your OWN password as authentication.\n" msgstr "សូម​បញ្ចូល​ពាក្យ​សម្ងាត់ផ្ទាល់ខ្លួន​របស់អ្នក​ ជា​ការផ្ទៀងផ្ទាត់ភាពត្រឹមត្រូវ​ ។\n" -msgid " ...killed.\n" -msgstr "" - -msgid " ...waiting for child to terminate.\n" -msgstr "" - #, fuzzy, c-format #| msgid "%s: cannot lock file %s\n" msgid "%s: Cannot fork user shell\n" @@ -1806,12 +1862,20 @@ msgid "Session terminated, terminating shell..." msgstr "" #, c-format -msgid "%s: %s\n" -msgstr "%s ៖ %s\n" +msgid " ...killed.\n" +msgstr "" + +#, c-format +msgid " ...waiting for child to terminate.\n" +msgstr "" msgid " ...terminated.\n" msgstr "" +#, c-format +msgid "%s: %s\n" +msgstr "%s ៖ %s\n" + #, fuzzy msgid "" "Usage: su [options] [LOGIN]\n" @@ -2078,6 +2142,11 @@ msgstr "" msgid "%s: failed to reset the lastlog entry of UID %lu: %s\n" msgstr "" +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to prepare the new %s entry\n" +msgstr "%s ៖ បរាជ័យ​ក្នុងការ​ទម្លាក់​សិទ្ធ (%s)\n" + #, c-format msgid "%s: cannot create directory %s\n" msgstr "%s ៖ មិន​​អាច​បង្កើត​ថត​ %s បានឡើយ\n" @@ -2120,6 +2189,14 @@ msgstr "%s ៖ មិន​​អាច​បង្កើត​ថត​ %s ប msgid "%s: can't create group\n" msgstr "%s ៖ មិន​អាច​បង្កើត​ %s បានឡើយ\n" +#, fuzzy, c-format +msgid "%s: can't create subordinate user IDs\n" +msgstr "%s ៖ មិន​អាច​បង្កើត​ %s បានឡើយ\n" + +#, fuzzy, c-format +msgid "%s: can't create subordinate group IDs\n" +msgstr "%s ៖ មិន​អាច​បង្កើត​ %s បានឡើយ\n" + #, c-format msgid "" "%s: warning: the home directory already exists.\n" @@ -2160,6 +2237,11 @@ msgstr "" msgid "%s: group %s is the primary group of another user and is not removed.\n" msgstr "%s ៖ មិនអាច​យកក្រុម %s ដែលជា​ក្រុម​ចម្បង​សម្រាប់​អ្នកប្រើដទៃទៀតចេញបានទេ ។\n" +#, fuzzy, c-format +#| msgid "%s: cannot rename directory %s to %s\n" +msgid "%s: cannot remove entry %lu from %s\n" +msgstr "%s ៖ មិនអាចប្ដូរឈ្មោះ​ថត​ %s ទៅ​ជា​ %s បានឡើយ\n" + #, fuzzy, c-format #| msgid "%s: invalid home directory '%s'\n" msgid "%s: %s mail spool (%s) not found\n" @@ -2267,6 +2349,18 @@ msgstr "" msgid " -U, --unlock unlock the user account\n" msgstr "" +msgid " -v, --add-subuids FIRST-LAST add range of subordinate uids\n" +msgstr "" + +msgid " -V, --del-subuids FIRST-LAST remove range of subordinate uids\n" +msgstr "" + +msgid " -w, --add-subgids FIRST-LAST add range of subordinate gids\n" +msgstr "" + +msgid " -W, --del-subgids FIRST-LAST remove range of subordinate gids\n" +msgstr "" + msgid "" " -Z, --selinux-user SEUSER new SELinux user mapping for the user " "account\n" @@ -2283,6 +2377,16 @@ msgstr "" msgid "%s: user '%s' already exists in %s\n" msgstr "%s ៖ អ្នក​ប្រើ​ %s មាន​រួច​ហើយ​\n" +#, fuzzy, c-format +#| msgid "%s: invalid date '%s'\n" +msgid "%s: invalid subordinate uid range '%s'\n" +msgstr "%s ៖ កាលបរិច្ឆទ​មិន​ត្រឹមត្រូវ​ '%s'\n" + +#, fuzzy, c-format +#| msgid "%s: invalid date '%s'\n" +msgid "%s: invalid subordinate gid range '%s'\n" +msgstr "%s ៖ កាលបរិច្ឆទ​មិន​ត្រឹមត្រូវ​ '%s'\n" + #, fuzzy, c-format #| msgid "%s: cannot open file %s\n" msgid "%s: no options\n" @@ -2300,6 +2404,10 @@ msgstr "%s ៖ ពាក្យ​សម្ងាត់​ស្រមោល​ msgid "%s: UID '%lu' already exists\n" msgstr "" +#, c-format +msgid "%s: %s does not exist, you cannot use the flags %s or %s\n" +msgstr "" + #, c-format msgid "%s: directory %s exists\n" msgstr "%s ៖ មានថត​ %s ​រួច​ហើយ​\n" @@ -2341,6 +2449,26 @@ msgstr "បរាជ័យ​ក្នុងការ​ផ្លាស់ប្ msgid "failed to rename mailbox" msgstr "​បរាជ័យ​ក្នុងការប្ដូរឈ្មោះប្រអប់" +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to remove uid range %lu-%lu from '%s'\n" +msgstr "%s ៖ បរាជ័យ​ក្នុងការ​ទម្លាក់​សិទ្ធ (%s)\n" + +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to add uid range %lu-%lu from '%s'\n" +msgstr "%s ៖ បរាជ័យ​ក្នុងការ​ទម្លាក់​សិទ្ធ (%s)\n" + +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to remove gid range %lu-%lu from '%s'\n" +msgstr "%s ៖ បរាជ័យ​ក្នុងការ​ទម្លាក់​សិទ្ធ (%s)\n" + +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to add gid range %lu-%lu from '%s'\n" +msgstr "%s ៖ បរាជ័យ​ក្នុងការ​ទម្លាក់​សិទ្ធ (%s)\n" + #, c-format msgid "" "You have modified %s.\n" @@ -2403,6 +2531,20 @@ msgstr "មិនអាច​ចាក់សោ​ឯកសារបានឡើ msgid "Couldn't make backup" msgstr "មិនអាច​បង្កើត​ព័ត៌មាន​បម្រុងទុក​បានឡើយ" +#, fuzzy, c-format +#| msgid "%s: %s\n" +msgid "%s: %s: %s\n" +msgstr "%s ៖ %s\n" + +#, fuzzy, c-format +#| msgid "%s: %s not found in /etc/passwd\n" +msgid "%s: %s returned with status %d\n" +msgstr "%s ៖ %s រក​មិន​ឃើញ​ក្នុង​ /etc/passwd ទេ\n" + +#, c-format +msgid "%s: %s killed by signal %d\n" +msgstr "" + #, fuzzy msgid "failed to open scratch file" msgstr "%s ៖ មិនអាច​បើក​ឯកសារក្រុម​បានទេ​\n" @@ -2964,9 +3106,6 @@ msgstr "%s  ៖ ថត​មូលដ្ឋាន​មិន​ត្រឹ #~ msgid "%s: can't rewrite password file\n" #~ msgstr "%s ៖ មិនអាច​សរសេរ​ឯកសារពាក្យសម្ងាត់​ឡើងវិញបានទេ​\n" -#~ msgid "%s: can't update password file\n" -#~ msgstr "%s ៖ មិនអាច​ធ្វើឲ្យ​ឯកសារ​ពាក្យ​សម្ងាត់​ទាន់សម័យ​បានទេ\n" - #~ msgid "%s: can't update shadow password file\n" #~ msgstr "%s ៖ មិនអាច​ធ្វើ​ឲ្យ​ឯកសារពាក្យសម្ងាត់​ស្រមោលទាន់សម័យបានទេ\n" @@ -2988,9 +3127,6 @@ msgstr "%s  ៖ ថត​មូលដ្ឋាន​មិន​ត្រឹ #~ msgid "Cannot open the password file.\n" #~ msgstr "មិនអាច​បើក​ឯកសារ​ពាក្យសម្ងាត់​បានឡើយ ។\n" -#~ msgid "%s: %s not found in /etc/passwd\n" -#~ msgstr "%s ៖ %s រក​មិន​ឃើញ​ក្នុង​ /etc/passwd ទេ\n" - #~ msgid "Error updating the password entry.\n" #~ msgstr "មានកំហុស​ក្នុងការ​ធ្វើ​ឲ្យ​​ធាតុបញ្ចូល​​ពាក្យសម្ងាត់ទាន់សម័យ ។\n" @@ -3183,9 +3319,6 @@ msgstr "%s  ៖ ថត​មូលដ្ឋាន​មិន​ត្រឹ #~ msgid "%s: can't update shadow group file\n" #~ msgstr "%s ៖ មិនអាច​ធ្វើឲ្យ​ឯកសារ​ក្រុម​ស្រមោល​ទាន់សម័យ​បានទេ​\n" -#~ msgid "%s: can't update group file\n" -#~ msgstr "%s ៖ មិនអាច​ធ្វើឲ្យ​ឯកសារក្រុម​ទាន់សម័យបានទេ​\n" - #~ msgid "%s: can't delete shadow group file\n" #~ msgstr "%s ៖ មិនអាច​លុប​ឯកសារក្រុម​ស្រមោលបានទេ​\n" diff --git a/po/ko.gmo b/po/ko.gmo new file mode 100644 index 0000000000000000000000000000000000000000..cf5cba491d9491c37099a83085879fd49b7ed344 GIT binary patch literal 33111 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 G=l=%Ib;XSU literal 0 HcmV?d00001 diff --git a/po/ko.po b/po/ko.po index 32eca8a1..7a008419 100644 --- a/po/ko.po +++ b/po/ko.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: shadow 4.1.1\n" "Report-Msgid-Bugs-To: pkg-shadow-devel@lists.alioth.debian.org\n" -"POT-Creation-Date: 2012-05-20 19:52+0200\n" +"POT-Creation-Date: 2016-09-18 21:41-0500\n" "PO-Revision-Date: 2009-04-19 21:32+0900\n" "Last-Translator: Changwoo Ryu \n" "Language-Team: Korean \n" @@ -437,6 +437,11 @@ msgstr "%s: 잘못된 집 전화번호: '%s'\n" msgid "%s: cannot access chroot directory %s: %s\n" msgstr "%s: 디렉터리 %s을(를) 만들 수 없습니다\n" +#, fuzzy, c-format +#| msgid "%s: cannot create directory %s\n" +msgid "%s: cannot chdir to chroot directory %s: %s\n" +msgstr "%s: 디렉터리 %s을(를) 만들 수 없습니다\n" + #, fuzzy, c-format #| msgid "%s: cannot create directory %s\n" msgid "%s: unable to chroot to directory %s: %s\n" @@ -786,6 +791,11 @@ msgstr "%s: %d번 줄: 너무 깁니다\n" msgid "%s: line %d: missing new password\n" msgstr "%s: %d번 줄: 새 암호가 없습니다\n" +#, fuzzy, c-format +#| msgid "%s: failed to remove %s\n" +msgid "%s: failed to crypt password with salt '%s': %s\n" +msgstr "%s: %s을(를) 제거하는데 실패했습니다\n" + #, c-format msgid "%s: line %d: group '%s' does not exist\n" msgstr "%s: %d번 줄: '%s' 그룹이 없습니다\n" @@ -1091,6 +1101,11 @@ msgstr "%s: '%lu' GID가 이미 있습니다\n" msgid "%s: Cannot setup cleanup service.\n" msgstr "%s: 사용자 이름을 인식할 수 없습니다.\n" +msgid "" +" -f, --force delete group even if it is the primary group " +"of a user\n" +msgstr "" + #, c-format msgid "%s: cannot remove entry '%s' from %s\n" msgstr "%s: '%s' 항목을 %s에서 제거할 수 없습니다\n" @@ -1307,6 +1322,16 @@ msgid "" " -b, --before DAYS print only lastlog records older than DAYS\n" msgstr "" +msgid "" +" -C, --clear clear lastlog record of an user (usable only " +"with -u)\n" +msgstr "" + +msgid "" +" -S, --set set lastlog record to current time (usable " +"only with -u)\n" +msgstr "" + msgid "" " -t, --time DAYS print only lastlog records more recent than " "DAYS\n" @@ -1325,6 +1350,24 @@ msgstr "사용자이름 포트 최근정보" msgid "**Never logged in**" msgstr "**한번도 로그인한 적이 없습니다**" +#, fuzzy, c-format +#| msgid "lastlog: Failed to get the entry for UID %d\n" +msgid "%s: Failed to update the entry for UID %lu\n" +msgstr "lastlog: UID %d번의 항목을 읽는데 실패했습니다\n" + +#, fuzzy, c-format +#| msgid "%s: failed to reset the lastlog entry of UID %lu: %s\n" +msgid "%s: Failed to update the lastlog file\n" +msgstr "%s: UID %lu번의 최근 기록 항목을 초기화하는데 실패했습니다: %s\n" + +#, c-format +msgid "%s: Option -C cannot be used together with option -S\n" +msgstr "" + +#, c-format +msgid "%s: Options -C and -S require option -u to specify the user\n" +msgstr "" + #, c-format msgid "Usage: %s [-p] [name]\n" msgstr "사용법: %s [-p] [이름]\n" @@ -1358,6 +1401,14 @@ msgstr "" "\n" "[접속해제가 무시되었습니다 -- 루트 로그인 허용.]" +#, c-format +msgid "%s: Cannot possibly work without effective root\n" +msgstr "" + +msgid "No utmp entry. You must exec \"login\" from the lowest level \"sh\"" +msgstr "" +"UTMP 항목이 없습니다. 가장 낮은 \"sh\"에서 \"login\"을 실행해야 합니다." + #, fuzzy, c-format #| msgid "" #| "\n" @@ -1369,14 +1420,6 @@ msgstr "" "\n" "%d 초 후 로그인이 종료되었습니다.\n" -#, c-format -msgid "%s: Cannot possibly work without effective root\n" -msgstr "" - -msgid "No utmp entry. You must exec \"login\" from the lowest level \"sh\"" -msgstr "" -"UTMP 항목이 없습니다. 가장 낮은 \"sh\"에서 \"login\"을 실행해야 합니다." - #, c-format msgid "login: PAM Failure, aborting: %s\n" msgstr "login: PAM 실패. 중지 중: %s\n" @@ -1451,6 +1494,11 @@ msgstr "사용법: newgrp [-] [그룹]\n" msgid "Usage: sg group [[-c] command]\n" msgstr "사용법: sg group [[-c] 명령]\n" +#, fuzzy, c-format +#| msgid "%s: failed to remove %s\n" +msgid "%s: failed to crypt password with previous salt: %s\n" +msgstr "%s: %s을(를) 제거하는데 실패했습니다\n" + msgid "Invalid password.\n" msgstr "쓸 수 없는 암호입니다.\n" @@ -1520,6 +1568,21 @@ msgstr "%s: %d번 줄: chown 실패했습니다\n" msgid "%s: line %d: can't update entry\n" msgstr "%s: %d번 줄: 입력값을 업데이트 할 수 없습니다\n" +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to prepare new %s entry\n" +msgstr "%s: 새 %s 항목 '%s'을(를) 준비하는데 실패했습니다\n" + +#, fuzzy, c-format +#| msgid "%s: can't create user\n" +msgid "%s: can't find subordinate user range\n" +msgstr "%s: 사용자를 만들 수 없습니다\n" + +#, fuzzy, c-format +#| msgid "%s: can't create group\n" +msgid "%s: can't find subordinate group range\n" +msgstr "%s: 그룹을 만들 수 없습니다\n" + msgid "" " -a, --all report password status on all accounts\n" msgstr "" @@ -1781,12 +1844,6 @@ msgstr "암호 인증이 무시되었습니다.\n" msgid "Please enter your OWN password as authentication.\n" msgstr "인증하기 위해 본인의 암호를 입력하십시오.\n" -msgid " ...killed.\n" -msgstr "" - -msgid " ...waiting for child to terminate.\n" -msgstr "" - #, fuzzy, c-format #| msgid "%s: Cannot determine your user name.\n" msgid "%s: Cannot fork user shell\n" @@ -1804,12 +1861,20 @@ msgid "Session terminated, terminating shell..." msgstr "" #, c-format -msgid "%s: %s\n" -msgstr "%s: %s\n" +msgid " ...killed.\n" +msgstr "" + +#, c-format +msgid " ...waiting for child to terminate.\n" +msgstr "" msgid " ...terminated.\n" msgstr "" +#, c-format +msgid "%s: %s\n" +msgstr "%s: %s\n" + msgid "" "Usage: su [options] [LOGIN]\n" "\n" @@ -2095,6 +2160,11 @@ msgstr "" msgid "%s: failed to reset the lastlog entry of UID %lu: %s\n" msgstr "%s: UID %lu번의 최근 기록 항목을 초기화하는데 실패했습니다: %s\n" +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to prepare the new %s entry\n" +msgstr "%s: 새 %s 항목 '%s'을(를) 준비하는데 실패했습니다\n" + #, c-format msgid "%s: cannot create directory %s\n" msgstr "%s: 디렉터리 %s을(를) 만들 수 없습니다\n" @@ -2137,6 +2207,16 @@ msgstr "%s: 디렉터리 %s을(를) 만들 수 없습니다\n" msgid "%s: can't create group\n" msgstr "%s: 그룹을 만들 수 없습니다\n" +#, fuzzy, c-format +#| msgid "%s: can't create user\n" +msgid "%s: can't create subordinate user IDs\n" +msgstr "%s: 사용자를 만들 수 없습니다\n" + +#, fuzzy, c-format +#| msgid "%s: can't create group\n" +msgid "%s: can't create subordinate group IDs\n" +msgstr "%s: 그룹을 만들 수 없습니다\n" + #, c-format msgid "" "%s: warning: the home directory already exists.\n" @@ -2180,6 +2260,11 @@ msgstr "" msgid "%s: group %s is the primary group of another user and is not removed.\n" msgstr "%s: %s 그룹은 다른 사용자의 주요 그룹이므로 제거하지 않습니다.\n" +#, fuzzy, c-format +#| msgid "%s: cannot remove entry '%s' from %s\n" +msgid "%s: cannot remove entry %lu from %s\n" +msgstr "%s: '%s' 항목을 %s에서 제거할 수 없습니다\n" + #, fuzzy, c-format #| msgid "%s: invalid home directory '%s'\n" msgid "%s: %s mail spool (%s) not found\n" @@ -2305,6 +2390,18 @@ msgstr "" msgid " -U, --unlock unlock the user account\n" msgstr "" +msgid " -v, --add-subuids FIRST-LAST add range of subordinate uids\n" +msgstr "" + +msgid " -V, --del-subuids FIRST-LAST remove range of subordinate uids\n" +msgstr "" + +msgid " -w, --add-subgids FIRST-LAST add range of subordinate gids\n" +msgstr "" + +msgid " -W, --del-subgids FIRST-LAST remove range of subordinate gids\n" +msgstr "" + msgid "" " -Z, --selinux-user SEUSER new SELinux user mapping for the user " "account\n" @@ -2322,6 +2419,16 @@ msgstr "" msgid "%s: user '%s' already exists in %s\n" msgstr "%s: '%s' 사용자가 이미 %s 안에 있습니다\n" +#, fuzzy, c-format +#| msgid "%s: invalid date '%s'\n" +msgid "%s: invalid subordinate uid range '%s'\n" +msgstr "%s: 날짜 '%s'은(는) 잘못되었습니다\n" + +#, fuzzy, c-format +#| msgid "%s: invalid date '%s'\n" +msgid "%s: invalid subordinate gid range '%s'\n" +msgstr "%s: 날짜 '%s'은(는) 잘못되었습니다\n" + #, fuzzy, c-format #| msgid "%s: cannot open %s\n" msgid "%s: no options\n" @@ -2339,6 +2446,11 @@ msgstr "%s: -e 옵션과 -f 옵션은 셰도우 암호가 필요합니다\n" msgid "%s: UID '%lu' already exists\n" msgstr "%s: '%lu' UID가 이미 있습니다\n" +#, fuzzy, c-format +#| msgid "%s: %s is not authorized to change the password of %s\n" +msgid "%s: %s does not exist, you cannot use the flags %s or %s\n" +msgstr "%s: %s 사용자는 %s의 암호를 바꿀 권한이 없습니다\n" + #, c-format msgid "%s: directory %s exists\n" msgstr "%s: 디렉터리 %s은(는) 이미 있습니다\n" @@ -2383,6 +2495,26 @@ msgstr "메일함 소유자를 바꾸는 데 실패했습니다" msgid "failed to rename mailbox" msgstr "메일함의 이름을 바꾸는 데 실패했습니다" +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to remove uid range %lu-%lu from '%s'\n" +msgstr "%s: 새 %s 항목 '%s'을(를) 준비하는데 실패했습니다\n" + +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to add uid range %lu-%lu from '%s'\n" +msgstr "%s: 새 %s 항목 '%s'을(를) 준비하는데 실패했습니다\n" + +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to remove gid range %lu-%lu from '%s'\n" +msgstr "%s: 새 %s 항목 '%s'을(를) 준비하는데 실패했습니다\n" + +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to add gid range %lu-%lu from '%s'\n" +msgstr "%s: 새 %s 항목 '%s'을(를) 준비하는데 실패했습니다\n" + #, c-format msgid "" "You have modified %s.\n" @@ -2442,6 +2574,19 @@ msgstr "파일을 잠글 수 없습니다" msgid "Couldn't make backup" msgstr "백업을 만들 수 없습니다" +#, fuzzy, c-format +#| msgid "%s: %s\n" +msgid "%s: %s: %s\n" +msgstr "%s: %s\n" + +#, c-format +msgid "%s: %s returned with status %d\n" +msgstr "" + +#, c-format +msgid "%s: %s killed by signal %d\n" +msgstr "" + #, fuzzy #| msgid "failed to rename mailbox" msgid "failed to open scratch file" diff --git a/po/nb.gmo b/po/nb.gmo new file mode 100644 index 0000000000000000000000000000000000000000..c0f2669169f33cc19a0c1089e71107a8c81c272d GIT binary patch literal 64155 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 literal 0 HcmV?d00001 diff --git a/po/nb.po b/po/nb.po index 5e32ff73..b65c4665 100644 --- a/po/nb.po +++ b/po/nb.po @@ -11,7 +11,7 @@ msgid "" msgstr "" "Project-Id-Version: shadow 4.0.17\n" "Report-Msgid-Bugs-To: pkg-shadow-devel@lists.alioth.debian.org\n" -"POT-Creation-Date: 2012-05-20 19:52+0200\n" +"POT-Creation-Date: 2016-09-18 21:41-0500\n" "PO-Revision-Date: 2012-01-18 17:19+0100\n" "Last-Translator: Bjørn Steensrud \n" "Language-Team: Norwegian Bokmål \n" @@ -442,6 +442,11 @@ msgstr "%s: ugyldig chroot-sti «%s»\n" msgid "%s: cannot access chroot directory %s: %s\n" msgstr "%s: kan ikke få tilgang til chroot-mappa %s: %s\n" +#, fuzzy, c-format +#| msgid "%s: cannot access chroot directory %s: %s\n" +msgid "%s: cannot chdir to chroot directory %s: %s\n" +msgstr "%s: kan ikke få tilgang til chroot-mappa %s: %s\n" + #, c-format msgid "%s: unable to chroot to directory %s: %s\n" msgstr "%s: kan ikke chroot til mappa %s: %s\n" @@ -809,6 +814,12 @@ msgstr "%s: linje %d: linja er for lang\n" msgid "%s: line %d: missing new password\n" msgstr "%s: linje %d: mangler nytt passord\n" +# , c-format +#, fuzzy, c-format +#| msgid "%s: Failed to write %s: %s\n" +msgid "%s: failed to crypt password with salt '%s': %s\n" +msgstr "%s: Klarte ikke skrive %s: %s\n" + # , c-format #, c-format msgid "%s: line %d: group '%s' does not exist\n" @@ -1127,6 +1138,16 @@ msgstr "%s; GID «%lu» finnes fra før.\n" msgid "%s: Cannot setup cleanup service.\n" msgstr "%s: Kan ikke sette opp oppryddingstjeneste.\n" +#, fuzzy +#| msgid "" +#| " -r, --reset reset the counters of login failures\n" +msgid "" +" -f, --force delete group even if it is the primary group " +"of a user\n" +msgstr "" +" -r, --reset tilbakestill tellere for mislykte " +"innlogginger\n" + # , c-format #, c-format msgid "%s: cannot remove entry '%s' from %s\n" @@ -1366,6 +1387,24 @@ msgstr "" " -b, --before DAGER skriv ut bare lastlog-poster eldre enn " "DAGER\n" +#, fuzzy +#| msgid "" +#| " -a, --all display faillog records for all users\n" +msgid "" +" -C, --clear clear lastlog record of an user (usable only " +"with -u)\n" +msgstr "" +" -a, --all vis faillog -oppføringer for alle brukere\n" + +#, fuzzy +#| msgid "" +#| " -a, --all display faillog records for all users\n" +msgid "" +" -S, --set set lastlog record to current time (usable " +"only with -u)\n" +msgstr "" +" -a, --all vis faillog -oppføringer for alle brukere\n" + msgid "" " -t, --time DAYS print only lastlog records more recent than " "DAYS\n" @@ -1386,6 +1425,24 @@ msgstr "Brukernavn Port Sist" msgid "**Never logged in**" msgstr "**Aldri vært innlogget**" +#, fuzzy, c-format +#| msgid "%s: Failed to get the entry for UID %lu\n" +msgid "%s: Failed to update the entry for UID %lu\n" +msgstr "%s: Klarte ikke hente innslag for UID %lu\n" + +#, fuzzy, c-format +#| msgid "%s: can't update password file\n" +msgid "%s: Failed to update the lastlog file\n" +msgstr "%s: kan ikke oppdatere passordfila\n" + +#, c-format +msgid "%s: Option -C cannot be used together with option -S\n" +msgstr "" + +#, c-format +msgid "%s: Options -C and -S require option -u to specify the user\n" +msgstr "" + #, c-format msgid "Usage: %s [-p] [name]\n" msgstr "Bruk: %s [-p] [navn]\n" @@ -1419,6 +1476,13 @@ msgstr "" "\n" "[Frakobling omgått - root-innlogging tillatt.]" +#, c-format +msgid "%s: Cannot possibly work without effective root\n" +msgstr "%s: Kan umulig virke uten effektiv root\n" + +msgid "No utmp entry. You must exec \"login\" from the lowest level \"sh\"" +msgstr "Ingen oppføring i utmp. Du må kjøre «login» fra «sh» på laveste nivå" + #, c-format msgid "" "\n" @@ -1427,13 +1491,6 @@ msgstr "" "\n" "Innlogging avbrutt på tid etter %u sekunder.\n" -#, c-format -msgid "%s: Cannot possibly work without effective root\n" -msgstr "%s: Kan umulig virke uten effektiv root\n" - -msgid "No utmp entry. You must exec \"login\" from the lowest level \"sh\"" -msgstr "Ingen oppføring i utmp. Du må kjøre «login» fra «sh» på laveste nivå" - #, c-format msgid "login: PAM Failure, aborting: %s\n" msgstr "login: PAM mislyktes, avbryter: %s\n" @@ -1506,6 +1563,12 @@ msgstr "Bruk: newgrp [-] [gruppe]\n" msgid "Usage: sg group [[-c] command]\n" msgstr "Bruk: sg group [[-c] command]\n" +# , c-format +#, fuzzy, c-format +#| msgid "%s: Failed to write %s: %s\n" +msgid "%s: failed to crypt password with previous salt: %s\n" +msgstr "%s: Klarte ikke skrive %s: %s\n" + msgid "Invalid password.\n" msgstr "Ugyldig passord.\n" @@ -1581,6 +1644,23 @@ msgstr "%s: linje %d: chown %s mislyktes: %s\n" msgid "%s: line %d: can't update entry\n" msgstr "%s: linje %d: kan ikke oppdatere oppføring\n" +# , c-format +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to prepare new %s entry\n" +msgstr "%s: klarte ikke lage det nye %s-innslaget «%s»\n" + +# , c-format +#, fuzzy, c-format +#| msgid "%s: can't create user\n" +msgid "%s: can't find subordinate user range\n" +msgstr "%s: kan ikke opprette bruker\n" + +#, fuzzy, c-format +#| msgid "%s: can't update group file\n" +msgid "%s: can't find subordinate group range\n" +msgstr "%s: kan ikke oppdatere gruppefila\n" + msgid "" " -a, --all report password status on all accounts\n" msgstr "" @@ -1855,12 +1935,6 @@ msgstr "Passordautentisering forbi-koblet.\n" msgid "Please enter your OWN password as authentication.\n" msgstr "Oppgi ditt EGET passord som autentisering.\n" -msgid " ...killed.\n" -msgstr " … drept.\n" - -msgid " ...waiting for child to terminate.\n" -msgstr " ... venter på at barneprosess avslutter.\n" - #, c-format msgid "%s: Cannot fork user shell\n" msgstr "%s: Kan ikke spalte ut brukerskall\n" @@ -1877,12 +1951,20 @@ msgid "Session terminated, terminating shell..." msgstr "Økt avsluttet, avslutter skall ..." #, c-format -msgid "%s: %s\n" -msgstr "%s: %s\n" +msgid " ...killed.\n" +msgstr " … drept.\n" + +#, c-format +msgid " ...waiting for child to terminate.\n" +msgstr " ... venter på at barneprosess avslutter.\n" msgid " ...terminated.\n" msgstr " … avsluttet.\n" +#, c-format +msgid "%s: %s\n" +msgstr "%s: %s\n" + msgid "" "Usage: su [options] [LOGIN]\n" "\n" @@ -2166,6 +2248,12 @@ msgstr "%s: klarte ikke nullstille faillog-innslaget for UID %lu: %s\n" msgid "%s: failed to reset the lastlog entry of UID %lu: %s\n" msgstr "%s: klarte ikke nullstille lastlog-innslaget for UID %lu: %s\n" +# , c-format +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to prepare the new %s entry\n" +msgstr "%s: klarte ikke lage det nye %s-innslaget «%s»\n" + #, c-format msgid "%s: cannot create directory %s\n" msgstr "%s: kan ikke opprette mappa %s\n" @@ -2213,6 +2301,18 @@ msgstr "%s: Klarte ikke opprette tcb-mappe for %s\n" msgid "%s: can't create group\n" msgstr "%s: kan ikke opprette gruppa\n" +# , c-format +#, fuzzy, c-format +#| msgid "%s: can't create user\n" +msgid "%s: can't create subordinate user IDs\n" +msgstr "%s: kan ikke opprette bruker\n" + +# , c-format +#, fuzzy, c-format +#| msgid "%s: can't create group\n" +msgid "%s: can't create subordinate group IDs\n" +msgstr "%s: kan ikke opprette gruppa\n" + #, c-format msgid "" "%s: warning: the home directory already exists.\n" @@ -2259,6 +2359,12 @@ msgid "%s: group %s is the primary group of another user and is not removed.\n" msgstr "" "%s: gruppa %s er en primærgruppe for en annen bruker og blir ikke fjernet.\n" +# , c-format +#, fuzzy, c-format +#| msgid "%s: cannot remove entry '%s' from %s\n" +msgid "%s: cannot remove entry %lu from %s\n" +msgstr "%s: kunne ikke fjerne innslaget «%s» fra %s\n" + #, c-format msgid "%s: %s mail spool (%s) not found\n" msgstr "%s: %s e-postlager (%s) ikke funnet.\n" @@ -2377,6 +2483,18 @@ msgstr " -u, --uid UID ny UID for brukerkontoen\n" msgid " -U, --unlock unlock the user account\n" msgstr " -U, --unlock lås opp brukerkontoen\n" +msgid " -v, --add-subuids FIRST-LAST add range of subordinate uids\n" +msgstr "" + +msgid " -V, --del-subuids FIRST-LAST remove range of subordinate uids\n" +msgstr "" + +msgid " -w, --add-subgids FIRST-LAST add range of subordinate gids\n" +msgstr "" + +msgid " -W, --del-subgids FIRST-LAST remove range of subordinate gids\n" +msgstr "" + msgid "" " -Z, --selinux-user SEUSER new SELinux user mapping for the user " "account\n" @@ -2397,6 +2515,16 @@ msgstr "" msgid "%s: user '%s' already exists in %s\n" msgstr "%s: bruker «%s» finnes fra før i %s\n" +#, fuzzy, c-format +#| msgid "%s: invalid date '%s'\n" +msgid "%s: invalid subordinate uid range '%s'\n" +msgstr "%s: ugyldig dato «%s»\n" + +#, fuzzy, c-format +#| msgid "%s: invalid date '%s'\n" +msgid "%s: invalid subordinate gid range '%s'\n" +msgstr "%s: ugyldig dato «%s»\n" + # , c-format #, c-format msgid "%s: no options\n" @@ -2414,6 +2542,11 @@ msgstr "%s: skyggepassord kreves for -e og -f\n" msgid "%s: UID '%lu' already exists\n" msgstr "%s: UID «%lu» finnes fra før\n" +#, fuzzy, c-format +#| msgid "%s: %s is not authorized to change the password of %s\n" +msgid "%s: %s does not exist, you cannot use the flags %s or %s\n" +msgstr "%s: %s har ikke rett til å endre passord for %s\n" + #, c-format msgid "%s: directory %s exists\n" msgstr "%s: mappa %s finnes\n" @@ -2461,6 +2594,30 @@ msgstr "klarte ikke å endre eier av mailbox" msgid "failed to rename mailbox" msgstr "klarte ikke å endre navn på mailbox" +# , c-format +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to remove uid range %lu-%lu from '%s'\n" +msgstr "%s: klarte ikke lage det nye %s-innslaget «%s»\n" + +# , c-format +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to add uid range %lu-%lu from '%s'\n" +msgstr "%s: klarte ikke lage det nye %s-innslaget «%s»\n" + +# , c-format +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to remove gid range %lu-%lu from '%s'\n" +msgstr "%s: klarte ikke lage det nye %s-innslaget «%s»\n" + +# , c-format +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to add gid range %lu-%lu from '%s'\n" +msgstr "%s: klarte ikke lage det nye %s-innslaget «%s»\n" + #, c-format msgid "" "You have modified %s.\n" @@ -2514,6 +2671,20 @@ msgstr "Kunne ikke låse fil" msgid "Couldn't make backup" msgstr "Kunne ikke lage backup" +#, fuzzy, c-format +#| msgid "%s: PAM: %s\n" +msgid "%s: %s: %s\n" +msgstr "%s: PAM: %s\n" + +#, fuzzy, c-format +#| msgid "%s: nscd exited with status %d" +msgid "%s: %s returned with status %d\n" +msgstr "%s: nscd avsluttet med status %d" + +#, c-format +msgid "%s: %s killed by signal %d\n" +msgstr "" + msgid "failed to open scratch file" msgstr "klarte ikke å åpne kladdefil" @@ -3254,9 +3425,6 @@ msgstr "%s: klarte ikke å finne tcb-mappe for %s\n" #~ msgid "%s: can't rewrite password file\n" #~ msgstr "%s: kan ikke gjenskrive passordfila\n" -#~ msgid "%s: can't update password file\n" -#~ msgstr "%s: kan ikke oppdatere passordfila\n" - #~ msgid "%s: can't update shadow password file\n" #~ msgstr "%s: kan ikke oppdatere skyggepassordfila\n" @@ -3473,9 +3641,6 @@ msgstr "%s: klarte ikke å finne tcb-mappe for %s\n" #~ msgid "%s: can't update shadow group file\n" #~ msgstr "%s: kan ikke oppdatere shadow-gruppefila\n" -#~ msgid "%s: can't update group file\n" -#~ msgstr "%s: kan ikke oppdatere gruppefila\n" - #~ msgid "%s: can't delete shadow group file\n" #~ msgstr "%s: kan ikke slette shadow-gruppefila\n" diff --git a/po/ne.gmo b/po/ne.gmo new file mode 100644 index 0000000000000000000000000000000000000000..eba4d55f87f0626e663593863bec93c100448b2f GIT binary patch literal 28797 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 literal 0 HcmV?d00001 diff --git a/po/ne.po b/po/ne.po index 252c53f5..49af09a2 100644 --- a/po/ne.po +++ b/po/ne.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: shadow 4.0.17\n" "Report-Msgid-Bugs-To: pkg-shadow-devel@lists.alioth.debian.org\n" -"POT-Creation-Date: 2012-05-20 19:52+0200\n" +"POT-Creation-Date: 2016-09-18 21:41-0500\n" "PO-Revision-Date: 2006-06-16 14:30+0545\n" "Last-Translator: Shiva Pokharel \n" "Language-Team: Nepali \n" @@ -441,6 +441,11 @@ msgstr "%s: अवैध गृह फोन: '%s'\n" msgid "%s: cannot access chroot directory %s: %s\n" msgstr "%s: डाइरेकट्री सिर्जना गर्न सकिएन %s\n" +#, fuzzy, c-format +#| msgid "%s: cannot create directory %s\n" +msgid "%s: cannot chdir to chroot directory %s: %s\n" +msgstr "%s: डाइरेकट्री सिर्जना गर्न सकिएन %s\n" + #, fuzzy, c-format #| msgid "%s: cannot create directory %s\n" msgid "%s: unable to chroot to directory %s: %s\n" @@ -782,6 +787,11 @@ msgstr "%s: रेखा %d: अति लामो रेखा\n" msgid "%s: line %d: missing new password\n" msgstr "%s: रेखा %d: नयाँ पासवर्ड हराइरहेको छ\n" +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to crypt password with salt '%s': %s\n" +msgstr "%s: विशेषधिकारहरू छोड्न असफल भयो (%s)\n" + #, fuzzy, c-format #| msgid "%s: group %s does not exist\n" msgid "%s: line %d: group '%s' does not exist\n" @@ -1076,6 +1086,11 @@ msgstr "" msgid "%s: Cannot setup cleanup service.\n" msgstr "%s: तपाईँको प्रयोगकर्ता नाम निर्धारण गर्न सकिएन ।\n" +msgid "" +" -f, --force delete group even if it is the primary group " +"of a user\n" +msgstr "" + #, fuzzy, c-format #| msgid "%s: cannot rename directory %s to %s\n" msgid "%s: cannot remove entry '%s' from %s\n" @@ -1292,6 +1307,16 @@ msgid "" " -b, --before DAYS print only lastlog records older than DAYS\n" msgstr "" +msgid "" +" -C, --clear clear lastlog record of an user (usable only " +"with -u)\n" +msgstr "" + +msgid "" +" -S, --set set lastlog record to current time (usable " +"only with -u)\n" +msgstr "" + msgid "" " -t, --time DAYS print only lastlog records more recent than " "DAYS\n" @@ -1310,6 +1335,24 @@ msgstr "सबैभन्दा पछिल्लो पोर् msgid "**Never logged in**" msgstr "**Never logged in**" +#, fuzzy, c-format +#| msgid "%s: cannot create directory %s\n" +msgid "%s: Failed to update the entry for UID %lu\n" +msgstr "%s: डाइरेकट्री सिर्जना गर्न सकिएन %s\n" + +#, fuzzy, c-format +#| msgid "%s: can't update password file\n" +msgid "%s: Failed to update the lastlog file\n" +msgstr "%s: पासवर्ड फाइल अद्यावधिक गर्न सकिएन\n" + +#, c-format +msgid "%s: Option -C cannot be used together with option -S\n" +msgstr "" + +#, c-format +msgid "%s: Options -C and -S require option -u to specify the user\n" +msgstr "" + #, c-format msgid "Usage: %s [-p] [name]\n" msgstr "उपयोग: %s [-p] [name]\n" @@ -1343,6 +1386,15 @@ msgstr "" "\n" "[बाइपास जडान विच्छेदन भयो --मूल लगइनलाई अनुमति छ । ]" +#, c-format +msgid "%s: Cannot possibly work without effective root\n" +msgstr "" + +msgid "No utmp entry. You must exec \"login\" from the lowest level \"sh\"" +msgstr "" +"utmp प्रविष्टि भएन । तपाईँले \"login\" गर्दा ज्यादै न्यून तह \"sh\" बाट कार्यन्वयन " +"गर्नुपर्छ" + #, fuzzy, c-format #| msgid "" #| "\n" @@ -1354,15 +1406,6 @@ msgstr "" "\n" "%d सेकेण्ड पछि लगइन समय समाप्त भयो ।\n" -#, c-format -msgid "%s: Cannot possibly work without effective root\n" -msgstr "" - -msgid "No utmp entry. You must exec \"login\" from the lowest level \"sh\"" -msgstr "" -"utmp प्रविष्टि भएन । तपाईँले \"login\" गर्दा ज्यादै न्यून तह \"sh\" बाट कार्यन्वयन " -"गर्नुपर्छ" - #, c-format msgid "login: PAM Failure, aborting: %s\n" msgstr "लगइन: PAM असफल भयो, परित्याग गरिदै: %s\n" @@ -1439,6 +1482,11 @@ msgstr "उपयोग: newgrp [-] [group]\n" msgid "Usage: sg group [[-c] command]\n" msgstr "उपयोग: sg group [[-c] आदेश]\n" +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to crypt password with previous salt: %s\n" +msgstr "%s: विशेषधिकारहरू छोड्न असफल भयो (%s)\n" + #, fuzzy msgid "Invalid password.\n" msgstr "पुरानो पासवर्ड: " @@ -1508,6 +1556,20 @@ msgstr "%s: रेखा %d: chown असफल भयो\n" msgid "%s: line %d: can't update entry\n" msgstr "%s: रेखा %d: प्रविष्टि अद्यावधिक गर्न सकिएन\n" +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to prepare new %s entry\n" +msgstr "%s: विशेषधिकारहरू छोड्न असफल भयो (%s)\n" + +#, fuzzy, c-format +msgid "%s: can't find subordinate user range\n" +msgstr "%s: यो %s सिर्जना गर्न सकिदैन\n" + +#, fuzzy, c-format +#| msgid "%s: can't update group file\n" +msgid "%s: can't find subordinate group range\n" +msgstr "%s: समूह फाइल अद्यावधिक गर्न सकिएन\n" + msgid "" " -a, --all report password status on all accounts\n" msgstr "" @@ -1762,12 +1824,6 @@ msgstr "पासवर्ड प्रमाणीकरण बाइपास msgid "Please enter your OWN password as authentication.\n" msgstr " कृपया प्रमाणीकरणको रुपमा तपाईँको आफ्नो पासवर्ड प्रविष्ट गर्नुहोस् ।\n" -msgid " ...killed.\n" -msgstr "" - -msgid " ...waiting for child to terminate.\n" -msgstr "" - #, fuzzy, c-format #| msgid "%s: cannot lock file %s\n" msgid "%s: Cannot fork user shell\n" @@ -1785,12 +1841,20 @@ msgid "Session terminated, terminating shell..." msgstr "" #, c-format -msgid "%s: %s\n" -msgstr "%s: %s\n" +msgid " ...killed.\n" +msgstr "" + +#, c-format +msgid " ...waiting for child to terminate.\n" +msgstr "" msgid " ...terminated.\n" msgstr "" +#, c-format +msgid "%s: %s\n" +msgstr "%s: %s\n" + #, fuzzy msgid "" "Usage: su [options] [LOGIN]\n" @@ -2055,6 +2119,11 @@ msgstr "" msgid "%s: failed to reset the lastlog entry of UID %lu: %s\n" msgstr "" +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to prepare the new %s entry\n" +msgstr "%s: विशेषधिकारहरू छोड्न असफल भयो (%s)\n" + #, c-format msgid "%s: cannot create directory %s\n" msgstr "%s: डाइरेकट्री सिर्जना गर्न सकिएन %s\n" @@ -2099,6 +2168,14 @@ msgstr "%s: डाइरेकट्री सिर्जना गर्न msgid "%s: can't create group\n" msgstr "%s: यो %s सिर्जना गर्न सकिदैन\n" +#, fuzzy, c-format +msgid "%s: can't create subordinate user IDs\n" +msgstr "%s: यो %s सिर्जना गर्न सकिदैन\n" + +#, fuzzy, c-format +msgid "%s: can't create subordinate group IDs\n" +msgstr "%s: यो %s सिर्जना गर्न सकिदैन\n" + #, c-format msgid "" "%s: warning: the home directory already exists.\n" @@ -2139,6 +2216,11 @@ msgstr "" msgid "%s: group %s is the primary group of another user and is not removed.\n" msgstr "%s: समूह %s हटाउन सकिदैन जुन अर्को प्रयोगकर्ताको लागि प्राथमिक समूह हो ।\n" +#, fuzzy, c-format +#| msgid "%s: cannot rename directory %s to %s\n" +msgid "%s: cannot remove entry %lu from %s\n" +msgstr "%s: डाइरेक्ट्री %s लाई %s मा पुन:नामकरण गर्न सकिदैन\n" + #, fuzzy, c-format #| msgid "%s: invalid home directory '%s'\n" msgid "%s: %s mail spool (%s) not found\n" @@ -2246,6 +2328,18 @@ msgstr "" msgid " -U, --unlock unlock the user account\n" msgstr "" +msgid " -v, --add-subuids FIRST-LAST add range of subordinate uids\n" +msgstr "" + +msgid " -V, --del-subuids FIRST-LAST remove range of subordinate uids\n" +msgstr "" + +msgid " -w, --add-subgids FIRST-LAST add range of subordinate gids\n" +msgstr "" + +msgid " -W, --del-subgids FIRST-LAST remove range of subordinate gids\n" +msgstr "" + msgid "" " -Z, --selinux-user SEUSER new SELinux user mapping for the user " "account\n" @@ -2262,6 +2356,16 @@ msgstr "" msgid "%s: user '%s' already exists in %s\n" msgstr "%s: प्रयोगकर्ता %s अवस्थित छ\n" +#, fuzzy, c-format +#| msgid "%s: invalid date '%s'\n" +msgid "%s: invalid subordinate uid range '%s'\n" +msgstr "%s: अवैध मिति '%s'\n" + +#, fuzzy, c-format +#| msgid "%s: invalid date '%s'\n" +msgid "%s: invalid subordinate gid range '%s'\n" +msgstr "%s: अवैध मिति '%s'\n" + #, fuzzy, c-format #| msgid "%s: cannot open file %s\n" msgid "%s: no options\n" @@ -2279,6 +2383,10 @@ msgstr "%s: -e र -f को लागि स्याडो पासवर् msgid "%s: UID '%lu' already exists\n" msgstr "" +#, c-format +msgid "%s: %s does not exist, you cannot use the flags %s or %s\n" +msgstr "" + #, c-format msgid "%s: directory %s exists\n" msgstr "%s: डाइरेक्ट्री %s अवस्थित छ\n" @@ -2320,6 +2428,26 @@ msgstr "मेलबक्स प्रापक परिवर्तन गर msgid "failed to rename mailbox" msgstr "मेल बक्सलाई पुन:नामकरण गर्न असफल भयो" +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to remove uid range %lu-%lu from '%s'\n" +msgstr "%s: विशेषधिकारहरू छोड्न असफल भयो (%s)\n" + +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to add uid range %lu-%lu from '%s'\n" +msgstr "%s: विशेषधिकारहरू छोड्न असफल भयो (%s)\n" + +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to remove gid range %lu-%lu from '%s'\n" +msgstr "%s: विशेषधिकारहरू छोड्न असफल भयो (%s)\n" + +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to add gid range %lu-%lu from '%s'\n" +msgstr "%s: विशेषधिकारहरू छोड्न असफल भयो (%s)\n" + #, c-format msgid "" "You have modified %s.\n" @@ -2382,6 +2510,20 @@ msgstr "फाइल ताल्चा मार्न सकिदैन" msgid "Couldn't make backup" msgstr "जगेडा बनाउँन सकिदैन" +#, fuzzy, c-format +#| msgid "%s: %s\n" +msgid "%s: %s: %s\n" +msgstr "%s: %s\n" + +#, fuzzy, c-format +#| msgid "%s: %s not found in /etc/passwd\n" +msgid "%s: %s returned with status %d\n" +msgstr "%s: %s /etc/passwd मा फेला परेन\n" + +#, c-format +msgid "%s: %s killed by signal %d\n" +msgstr "" + #, fuzzy msgid "failed to open scratch file" msgstr "%s: समूह फाइल खोल्न असक्षम भयो\n" @@ -2955,9 +3097,6 @@ msgstr "%s: अवैध डाइरेक्ट्री '%s'\n" #~ msgid "%s: can't rewrite password file\n" #~ msgstr "%s: पासवर्ड फाइल पुन:लेखन गर्न सकिएन\n" -#~ msgid "%s: can't update password file\n" -#~ msgstr "%s: पासवर्ड फाइल अद्यावधिक गर्न सकिएन\n" - #~ msgid "%s: can't update shadow password file\n" #~ msgstr "%s: स्याडो पासवर्ड फाइल अद्यावधिक गर्न सकिएन\n" @@ -2979,9 +3118,6 @@ msgstr "%s: अवैध डाइरेक्ट्री '%s'\n" #~ msgid "Cannot open the password file.\n" #~ msgstr "पासवर्ड फाइल खोल्न सकिएन ।\n" -#~ msgid "%s: %s not found in /etc/passwd\n" -#~ msgstr "%s: %s /etc/passwd मा फेला परेन\n" - #~ msgid "Error updating the password entry.\n" #~ msgstr "पासवर्ड प्रविष्टिमा त्रुटि अद्यावधिक गरिदैछ ।\n" @@ -3174,9 +3310,6 @@ msgstr "%s: अवैध डाइरेक्ट्री '%s'\n" #~ msgid "%s: can't update shadow group file\n" #~ msgstr "%s: स्याडो समूह फाइल अद्यावधिक गर्न सकिएन\n" -#~ msgid "%s: can't update group file\n" -#~ msgstr "%s: समूह फाइल अद्यावधिक गर्न सकिएन\n" - #~ msgid "%s: can't delete shadow group file\n" #~ msgstr "%s: स्याडो समूह फाइल मेट्न सकिएन\n" diff --git a/po/nl.gmo b/po/nl.gmo new file mode 100644 index 0000000000000000000000000000000000000000..f382a887feee80e3d6d3a0d02f60195424cf5eb6 GIT binary patch literal 20525 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 literal 0 HcmV?d00001 diff --git a/po/nl.po b/po/nl.po index 5f136559..bd84c4b5 100644 --- a/po/nl.po +++ b/po/nl.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: shadow 4.0.18\n" "Report-Msgid-Bugs-To: pkg-shadow-devel@lists.alioth.debian.org\n" -"POT-Creation-Date: 2012-05-20 19:52+0200\n" +"POT-Creation-Date: 2016-09-18 21:41-0500\n" "PO-Revision-Date: 2007-11-25 21:11+0100\n" "Last-Translator: Bart Cornelis \n" "Language-Team: debian-l10n-dutch \n" @@ -440,6 +440,11 @@ msgstr "%s: '%s' voor 'telefoon thuis' is ongeldig\n" msgid "%s: cannot access chroot directory %s: %s\n" msgstr "%s: kan map %s niet aanmaken\n" +#, fuzzy, c-format +#| msgid "%s: cannot create directory %s\n" +msgid "%s: cannot chdir to chroot directory %s: %s\n" +msgstr "%s: kan map %s niet aanmaken\n" + #, fuzzy, c-format #| msgid "%s: cannot create directory %s\n" msgid "%s: unable to chroot to directory %s: %s\n" @@ -781,6 +786,11 @@ msgstr "%s: regel %d: regel is te lang\n" msgid "%s: line %d: missing new password\n" msgstr "%s: regel %d: nieuw wachtwoord ontbreekt\n" +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to crypt password with salt '%s': %s\n" +msgstr "%s: afgeven van rechten is mislukt (%s)\n" + #, fuzzy, c-format #| msgid "%s: group %s does not exist\n" msgid "%s: line %d: group '%s' does not exist\n" @@ -1076,6 +1086,11 @@ msgstr "Lid bestaat reeds\n" msgid "%s: Cannot setup cleanup service.\n" msgstr "%s: Kan uw gebruikersnaam niet bepalen.\n" +msgid "" +" -f, --force delete group even if it is the primary group " +"of a user\n" +msgstr "" + #, fuzzy, c-format #| msgid "%s: cannot rename directory %s to %s\n" msgid "%s: cannot remove entry '%s' from %s\n" @@ -1292,6 +1307,16 @@ msgid "" " -b, --before DAYS print only lastlog records older than DAYS\n" msgstr "" +msgid "" +" -C, --clear clear lastlog record of an user (usable only " +"with -u)\n" +msgstr "" + +msgid "" +" -S, --set set lastlog record to current time (usable " +"only with -u)\n" +msgstr "" + msgid "" " -t, --time DAYS print only lastlog records more recent than " "DAYS\n" @@ -1310,6 +1335,24 @@ msgstr "Gebruikersnaam Poort Laatste" msgid "**Never logged in**" msgstr "**Heeft zich nog nooit aangemeld**" +#, fuzzy, c-format +#| msgid "%s: cannot create directory %s\n" +msgid "%s: Failed to update the entry for UID %lu\n" +msgstr "%s: kan map %s niet aanmaken\n" + +#, fuzzy, c-format +#| msgid "%s: can't update password file\n" +msgid "%s: Failed to update the lastlog file\n" +msgstr "%s: kan wachtwoordbestand niet bijwerken\n" + +#, c-format +msgid "%s: Option -C cannot be used together with option -S\n" +msgstr "" + +#, c-format +msgid "%s: Options -C and -S require option -u to specify the user\n" +msgstr "" + #, c-format msgid "Usage: %s [-p] [name]\n" msgstr "Gebruik: %s [-p] [naam]\n" @@ -1343,6 +1386,15 @@ msgstr "" "\n" "[Verbinding verbreken omzeild -- aanmelden van root is toegelaten.]" +#, c-format +msgid "%s: Cannot possibly work without effective root\n" +msgstr "" + +msgid "No utmp entry. You must exec \"login\" from the lowest level \"sh\"" +msgstr "" +"Er is geen utmp-ingang. U dient 'login' uit te voeren vanaf de laagste " +"niveau 'sh'" + #, fuzzy, c-format #| msgid "" #| "\n" @@ -1354,15 +1406,6 @@ msgstr "" "\n" "Aanmelding is na %d seconden verlopen.\n" -#, c-format -msgid "%s: Cannot possibly work without effective root\n" -msgstr "" - -msgid "No utmp entry. You must exec \"login\" from the lowest level \"sh\"" -msgstr "" -"Er is geen utmp-ingang. U dient 'login' uit te voeren vanaf de laagste " -"niveau 'sh'" - #, c-format msgid "login: PAM Failure, aborting: %s\n" msgstr "login: PAM-fout, er wordt afgebroken: %s\n" @@ -1440,6 +1483,11 @@ msgstr "Gebruik: newgrp [-] [groep]\n" msgid "Usage: sg group [[-c] command]\n" msgstr "Gebruik: sg groep [[-c] commando]\n" +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to crypt password with previous salt: %s\n" +msgstr "%s: afgeven van rechten is mislukt (%s)\n" + #, fuzzy msgid "Invalid password.\n" msgstr "Oud wachtwoord: " @@ -1509,6 +1557,20 @@ msgstr "%s: regel %d: chown is mislukt\n" msgid "%s: line %d: can't update entry\n" msgstr "%s: regel %d: kan ingang niet bijwerken\n" +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to prepare new %s entry\n" +msgstr "%s: afgeven van rechten is mislukt (%s)\n" + +#, fuzzy, c-format +msgid "%s: can't find subordinate user range\n" +msgstr "%s: kan %s niet aanmaken\n" + +#, fuzzy, c-format +#| msgid "%s: can't update group file\n" +msgid "%s: can't find subordinate group range\n" +msgstr "%s: kan groepbestand niet bijwerken\n" + msgid "" " -a, --all report password status on all accounts\n" msgstr "" @@ -1765,12 +1827,6 @@ msgstr "Wachtwoordauthentificatie is omzeild.\n" msgid "Please enter your OWN password as authentication.\n" msgstr "Gelieve uw EIGEN wachtwoord in te voeren voor authentificatie.\n" -msgid " ...killed.\n" -msgstr "" - -msgid " ...waiting for child to terminate.\n" -msgstr "" - #, fuzzy, c-format #| msgid "%s: cannot lock file %s\n" msgid "%s: Cannot fork user shell\n" @@ -1788,12 +1844,20 @@ msgid "Session terminated, terminating shell..." msgstr "" #, c-format -msgid "%s: %s\n" -msgstr "%s: %s\n" +msgid " ...killed.\n" +msgstr "" + +#, c-format +msgid " ...waiting for child to terminate.\n" +msgstr "" msgid " ...terminated.\n" msgstr "" +#, c-format +msgid "%s: %s\n" +msgstr "%s: %s\n" + msgid "" "Usage: su [options] [LOGIN]\n" "\n" @@ -2058,6 +2122,11 @@ msgstr "" msgid "%s: failed to reset the lastlog entry of UID %lu: %s\n" msgstr "" +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to prepare the new %s entry\n" +msgstr "%s: afgeven van rechten is mislukt (%s)\n" + #, c-format msgid "%s: cannot create directory %s\n" msgstr "%s: kan map %s niet aanmaken\n" @@ -2104,6 +2173,14 @@ msgstr "%s: kan map %s niet aanmaken\n" msgid "%s: can't create group\n" msgstr "%s: kan %s niet aanmaken\n" +#, fuzzy, c-format +msgid "%s: can't create subordinate user IDs\n" +msgstr "%s: kan %s niet aanmaken\n" + +#, fuzzy, c-format +msgid "%s: can't create subordinate group IDs\n" +msgstr "%s: kan %s niet aanmaken\n" + #, c-format msgid "" "%s: warning: the home directory already exists.\n" @@ -2146,6 +2223,11 @@ msgstr "" "%s: kan de groep %s niet verwijderen, daar deze de primaire groep van een " "andere gebruiker is.\n" +#, fuzzy, c-format +#| msgid "%s: cannot rename directory %s to %s\n" +msgid "%s: cannot remove entry %lu from %s\n" +msgstr "%s: kan map %s niet hernoemen naar %s\n" + #, fuzzy, c-format #| msgid "%s: invalid home directory '%s'\n" msgid "%s: %s mail spool (%s) not found\n" @@ -2255,6 +2337,18 @@ msgstr "" msgid " -U, --unlock unlock the user account\n" msgstr "" +msgid " -v, --add-subuids FIRST-LAST add range of subordinate uids\n" +msgstr "" + +msgid " -V, --del-subuids FIRST-LAST remove range of subordinate uids\n" +msgstr "" + +msgid " -w, --add-subgids FIRST-LAST add range of subordinate gids\n" +msgstr "" + +msgid " -W, --del-subgids FIRST-LAST remove range of subordinate gids\n" +msgstr "" + msgid "" " -Z, --selinux-user SEUSER new SELinux user mapping for the user " "account\n" @@ -2271,6 +2365,16 @@ msgstr "" msgid "%s: user '%s' already exists in %s\n" msgstr "%s: gebruiker %s bestaat al\n" +#, fuzzy, c-format +#| msgid "%s: invalid date '%s'\n" +msgid "%s: invalid subordinate uid range '%s'\n" +msgstr "%s: ongeldige datum '%s'\n" + +#, fuzzy, c-format +#| msgid "%s: invalid date '%s'\n" +msgid "%s: invalid subordinate gid range '%s'\n" +msgstr "%s: ongeldige datum '%s'\n" + #, fuzzy, c-format #| msgid "%s: cannot open file %s\n" msgid "%s: no options\n" @@ -2289,6 +2393,10 @@ msgstr "%s: schaduwwachtwoorden zijn vereist voor opties -e en -f\n" msgid "%s: UID '%lu' already exists\n" msgstr "Lid bestaat reeds\n" +#, c-format +msgid "%s: %s does not exist, you cannot use the flags %s or %s\n" +msgstr "" + #, c-format msgid "%s: directory %s exists\n" msgstr "%s: map %s bestaat al\n" @@ -2331,6 +2439,26 @@ msgstr "aanpassen van de eigenaar van de e-mailbox is mislukt" msgid "failed to rename mailbox" msgstr "hernoemen van de e-mailbox is mislukt" +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to remove uid range %lu-%lu from '%s'\n" +msgstr "%s: afgeven van rechten is mislukt (%s)\n" + +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to add uid range %lu-%lu from '%s'\n" +msgstr "%s: afgeven van rechten is mislukt (%s)\n" + +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to remove gid range %lu-%lu from '%s'\n" +msgstr "%s: afgeven van rechten is mislukt (%s)\n" + +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to add gid range %lu-%lu from '%s'\n" +msgstr "%s: afgeven van rechten is mislukt (%s)\n" + #, c-format msgid "" "You have modified %s.\n" @@ -2393,6 +2521,20 @@ msgstr "Kon bestand niet vergrendelen" msgid "Couldn't make backup" msgstr "Kon geen reservekopie maken" +#, fuzzy, c-format +#| msgid "%s: %s\n" +msgid "%s: %s: %s\n" +msgstr "%s: %s\n" + +#, fuzzy, c-format +#| msgid "%s: %s not found in /etc/passwd\n" +msgid "%s: %s returned with status %d\n" +msgstr "%s: %s is niet gevonden in /etc/passwd\n" + +#, c-format +msgid "%s: %s killed by signal %d\n" +msgstr "" + #, fuzzy #| msgid "Unable to open group file\n" msgid "failed to open scratch file" @@ -3067,9 +3209,6 @@ msgstr "%s: ongeldige basismap '%s'\n" #~ msgid "%s: can't rewrite password file\n" #~ msgstr "%s: kan het wachtwoordbestand niet herschrijven\n" -#~ msgid "%s: can't update password file\n" -#~ msgstr "%s: kan wachtwoordbestand niet bijwerken\n" - #~ msgid "%s: can't update shadow password file\n" #~ msgstr "%s: kan schaduwwachtwoordbestand niet bijwerken\n" @@ -3092,9 +3231,6 @@ msgstr "%s: ongeldige basismap '%s'\n" #~ msgid "Cannot open the password file.\n" #~ msgstr "Kan het wachtwoordbestand niet openen.\n" -#~ msgid "%s: %s not found in /etc/passwd\n" -#~ msgstr "%s: %s is niet gevonden in /etc/passwd\n" - #~ msgid "Error updating the password entry.\n" #~ msgstr "Fout tijdens het bijwerken van de wachtwoordingang.\n" @@ -3302,9 +3438,6 @@ msgstr "%s: ongeldige basismap '%s'\n" #~ msgid "%s: can't update shadow group file\n" #~ msgstr "%s: kan schaduwgroepbestand niet bijwerken\n" -#~ msgid "%s: can't update group file\n" -#~ msgstr "%s: kan groepbestand niet bijwerken\n" - #~ msgid "%s: can't delete shadow group file\n" #~ msgstr "%s: kan schaduwgroepbestand niet verwijderen\n" diff --git a/po/nn.gmo b/po/nn.gmo new file mode 100644 index 0000000000000000000000000000000000000000..2fe4984212581a5311d8569f8a2e9e4884bb51ef GIT binary patch literal 12845 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 NOl%8G1b=Q5{|A{60{j2~ literal 0 HcmV?d00001 diff --git a/po/nn.po b/po/nn.po index 99970b1a..b582a1c0 100644 --- a/po/nn.po +++ b/po/nn.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: shadow\n" "Report-Msgid-Bugs-To: pkg-shadow-devel@lists.alioth.debian.org\n" -"POT-Creation-Date: 2012-05-20 19:52+0200\n" +"POT-Creation-Date: 2016-09-18 21:41-0500\n" "PO-Revision-Date: 2004-06-03 21:41+0200\n" "Last-Translator: Håvard Korsvoll \n" "Language-Team: Norwegian (Nynorsk) \n" @@ -433,6 +433,11 @@ msgstr "%s: ugyldig telefonnummer, heime: «%s»\n" msgid "%s: cannot access chroot directory %s: %s\n" msgstr "%s: kan ikkje oppretta mappa %s\n" +#, fuzzy, c-format +#| msgid "%s: cannot create directory %s\n" +msgid "%s: cannot chdir to chroot directory %s: %s\n" +msgstr "%s: kan ikkje oppretta mappa %s\n" + #, fuzzy, c-format #| msgid "%s: cannot create directory %s\n" msgid "%s: unable to chroot to directory %s: %s\n" @@ -776,6 +781,10 @@ msgstr "%s: linje %d: linja er for lang\n" msgid "%s: line %d: missing new password\n" msgstr "%s: linje %d: manglar nytt passord\n" +#, fuzzy, c-format +msgid "%s: failed to crypt password with salt '%s': %s\n" +msgstr "%s: ugyldig telefonnummer, arbeid: «%s»\n" + #, fuzzy, c-format #| msgid "%s: group %s does not exist\n" msgid "%s: line %d: group '%s' does not exist\n" @@ -1067,6 +1076,11 @@ msgstr "" msgid "%s: Cannot setup cleanup service.\n" msgstr "%s: Klarer ikkje avgjere brukarnamnet ditt.\n" +msgid "" +" -f, --force delete group even if it is the primary group " +"of a user\n" +msgstr "" + #, fuzzy, c-format #| msgid "%s: cannot rename directory %s to %s\n" msgid "%s: cannot remove entry '%s' from %s\n" @@ -1280,6 +1294,16 @@ msgid "" " -b, --before DAYS print only lastlog records older than DAYS\n" msgstr "" +msgid "" +" -C, --clear clear lastlog record of an user (usable only " +"with -u)\n" +msgstr "" + +msgid "" +" -S, --set set lastlog record to current time (usable " +"only with -u)\n" +msgstr "" + msgid "" " -t, --time DAYS print only lastlog records more recent than " "DAYS\n" @@ -1298,6 +1322,24 @@ msgstr "Brukarnamn Port Siste" msgid "**Never logged in**" msgstr "**Aldri vore innlogga**" +#, fuzzy, c-format +#| msgid "%s: cannot create directory %s\n" +msgid "%s: Failed to update the entry for UID %lu\n" +msgstr "%s: kan ikkje oppretta mappa %s\n" + +#, fuzzy, c-format +#| msgid "%s: can't update password file\n" +msgid "%s: Failed to update the lastlog file\n" +msgstr "%s: klarer ikkje oppdatere passordfil\n" + +#, c-format +msgid "%s: Option -C cannot be used together with option -S\n" +msgstr "" + +#, c-format +msgid "%s: Options -C and -S require option -u to specify the user\n" +msgstr "" + #, c-format msgid "Usage: %s [-p] [name]\n" msgstr "Bruk: %s [-p] [namn]\n" @@ -1331,6 +1373,13 @@ msgstr "" "\n" "[Fråkopling omgått -- innlogging av root er tillete.]" +#, c-format +msgid "%s: Cannot possibly work without effective root\n" +msgstr "" + +msgid "No utmp entry. You must exec \"login\" from the lowest level \"sh\"" +msgstr "" + #, fuzzy, c-format #| msgid "" #| "\n" @@ -1342,13 +1391,6 @@ msgstr "" "\n" "Innlogging gjekk ut på tid etter %d sekund.\n" -#, c-format -msgid "%s: Cannot possibly work without effective root\n" -msgstr "" - -msgid "No utmp entry. You must exec \"login\" from the lowest level \"sh\"" -msgstr "" - #, c-format msgid "login: PAM Failure, aborting: %s\n" msgstr "" @@ -1427,6 +1469,10 @@ msgstr "Bruk: newgrp [-] [gruppe]\n" msgid "Usage: sg group [[-c] command]\n" msgstr "Bruk: sg gruppe [[-c] kommando]\n" +#, fuzzy, c-format +msgid "%s: failed to crypt password with previous salt: %s\n" +msgstr "%s: ugyldig telefonnummer, arbeid: «%s»\n" + #, fuzzy msgid "Invalid password.\n" msgstr "Gamalt passord:" @@ -1496,6 +1542,20 @@ msgstr "%s: linje %d: chown feila\n" msgid "%s: line %d: can't update entry\n" msgstr "%s: linje %d: kan ikkje oppdatere oppføring\n" +#, fuzzy, c-format +#| msgid "%s: line %d: can't update entry\n" +msgid "%s: failed to prepare new %s entry\n" +msgstr "%s: linje %d: kan ikkje oppdatere oppføring\n" + +#, fuzzy, c-format +msgid "%s: can't find subordinate user range\n" +msgstr "%s: kan ikkje oppretta %s\n" + +#, fuzzy, c-format +#| msgid "%s: can't update group file\n" +msgid "%s: can't find subordinate group range\n" +msgstr "%s: klarer ikkje oppdatere gruppefil\n" + msgid "" " -a, --all report password status on all accounts\n" msgstr "" @@ -1749,12 +1809,6 @@ msgstr "Passordautentisering er forbigått.\n" msgid "Please enter your OWN password as authentication.\n" msgstr "Oppgje ditt EIGE passord for autentisering.\n" -msgid " ...killed.\n" -msgstr "" - -msgid " ...waiting for child to terminate.\n" -msgstr "" - #, fuzzy, c-format #| msgid "%s: cannot lock file %s\n" msgid "%s: Cannot fork user shell\n" @@ -1771,13 +1825,21 @@ msgstr "" msgid "Session terminated, terminating shell..." msgstr "" -#, fuzzy, c-format -msgid "%s: %s\n" -msgstr "passwd: %s\n" +#, c-format +msgid " ...killed.\n" +msgstr "" + +#, c-format +msgid " ...waiting for child to terminate.\n" +msgstr "" msgid " ...terminated.\n" msgstr "" +#, fuzzy, c-format +msgid "%s: %s\n" +msgstr "passwd: %s\n" + msgid "" "Usage: su [options] [LOGIN]\n" "\n" @@ -2030,6 +2092,11 @@ msgstr "" msgid "%s: failed to reset the lastlog entry of UID %lu: %s\n" msgstr "" +#, fuzzy, c-format +#| msgid "%s: line %d: can't update entry\n" +msgid "%s: failed to prepare the new %s entry\n" +msgstr "%s: linje %d: kan ikkje oppdatere oppføring\n" + #, c-format msgid "%s: cannot create directory %s\n" msgstr "%s: kan ikkje oppretta mappa %s\n" @@ -2073,6 +2140,14 @@ msgstr "%s: kan ikkje oppretta mappa %s\n" msgid "%s: can't create group\n" msgstr "%s: kan ikkje oppretta %s\n" +#, fuzzy, c-format +msgid "%s: can't create subordinate user IDs\n" +msgstr "%s: kan ikkje oppretta %s\n" + +#, fuzzy, c-format +msgid "%s: can't create subordinate group IDs\n" +msgstr "%s: kan ikkje oppretta %s\n" + #, c-format msgid "" "%s: warning: the home directory already exists.\n" @@ -2109,6 +2184,11 @@ msgstr "" msgid "%s: group %s is the primary group of another user and is not removed.\n" msgstr "%s: klarer ikkje fjerna primærgruppa til brukaren.\n" +#, fuzzy, c-format +#| msgid "%s: cannot rename directory %s to %s\n" +msgid "%s: cannot remove entry %lu from %s\n" +msgstr "%s: klarte ikkje endra namn på mappa %s til %s\n" + #, fuzzy, c-format msgid "%s: %s mail spool (%s) not found\n" msgstr "%s: ugyldig heimemappe «%s»\n" @@ -2215,6 +2295,18 @@ msgstr "" msgid " -U, --unlock unlock the user account\n" msgstr "" +msgid " -v, --add-subuids FIRST-LAST add range of subordinate uids\n" +msgstr "" + +msgid " -V, --del-subuids FIRST-LAST remove range of subordinate uids\n" +msgstr "" + +msgid " -w, --add-subgids FIRST-LAST add range of subordinate gids\n" +msgstr "" + +msgid " -W, --del-subgids FIRST-LAST remove range of subordinate gids\n" +msgstr "" + msgid "" " -Z, --selinux-user SEUSER new SELinux user mapping for the user " "account\n" @@ -2231,6 +2323,14 @@ msgstr "" msgid "%s: user '%s' already exists in %s\n" msgstr "%s: brukar %s finst\n" +#, fuzzy, c-format +msgid "%s: invalid subordinate uid range '%s'\n" +msgstr "%s: ugyldig dato «%s»\n" + +#, fuzzy, c-format +msgid "%s: invalid subordinate gid range '%s'\n" +msgstr "%s: ugyldig dato «%s»\n" + #, fuzzy, c-format #| msgid "%s: cannot open file %s\n" msgid "%s: no options\n" @@ -2248,6 +2348,10 @@ msgstr "%s: skuggepassord krevst for -e og -f\n" msgid "%s: UID '%lu' already exists\n" msgstr "" +#, c-format +msgid "%s: %s does not exist, you cannot use the flags %s or %s\n" +msgstr "" + #, c-format msgid "%s: directory %s exists\n" msgstr "%s: mappa %s finst\n" @@ -2289,6 +2393,23 @@ msgstr "klarte ikke å endra eigar av mailbox" msgid "failed to rename mailbox" msgstr "klarte ikkje endra namn på mailbox" +#, fuzzy, c-format +msgid "%s: failed to remove uid range %lu-%lu from '%s'\n" +msgstr "%s: ugyldig telefonnummer, arbeid: «%s»\n" + +#, fuzzy, c-format +#| msgid "%s: fields too long\n" +msgid "%s: failed to add uid range %lu-%lu from '%s'\n" +msgstr "%s: felta er for lange\n" + +#, fuzzy, c-format +msgid "%s: failed to remove gid range %lu-%lu from '%s'\n" +msgstr "%s: ugyldig telefonnummer, arbeid: «%s»\n" + +#, fuzzy, c-format +msgid "%s: failed to add gid range %lu-%lu from '%s'\n" +msgstr "%s: ugyldig startmappe «%s»\n" + #, c-format msgid "" "You have modified %s.\n" @@ -2347,6 +2468,19 @@ msgstr "Klarte ikkje låsa fil" msgid "Couldn't make backup" msgstr "Klarte ikkje laga reservekopi" +#, fuzzy, c-format +msgid "%s: %s: %s\n" +msgstr "passwd: %s\n" + +#, fuzzy, c-format +#| msgid "%s: %s not found in /etc/passwd\n" +msgid "%s: %s returned with status %d\n" +msgstr "%s: %s ikkje funne i /etc/passwd\n" + +#, c-format +msgid "%s: %s killed by signal %d\n" +msgstr "" + #, fuzzy msgid "failed to open scratch file" msgstr "%s: klarer ikkje opna gruppefil\n" @@ -2499,9 +2633,6 @@ msgstr "%s: ugyldig startmappe «%s»\n" #~ msgid "%s: can't rewrite password file\n" #~ msgstr "%s: klarer ikkje skriva ny passordfil\n" -#~ msgid "%s: can't update password file\n" -#~ msgstr "%s: klarer ikkje oppdatere passordfil\n" - #~ msgid "%s: can't update shadow password file\n" #~ msgstr "%s: klarer ikkje oppdatere skuggepassordfil\n" @@ -2526,9 +2657,6 @@ msgstr "%s: ugyldig startmappe «%s»\n" #~ msgid "Cannot open the password file.\n" #~ msgstr "Klarer ikkje opna passordfila.\n" -#~ msgid "%s: %s not found in /etc/passwd\n" -#~ msgstr "%s: %s ikkje funne i /etc/passwd\n" - #~ msgid "Error updating the password entry.\n" #~ msgstr "Feil ved oppdatering av passordet.\n" @@ -2725,9 +2853,6 @@ msgstr "%s: ugyldig startmappe «%s»\n" #~ msgid "%s: can't update shadow group file\n" #~ msgstr "%s: klarer ikkje oppdatere skuggegruppefil\n" -#~ msgid "%s: can't update group file\n" -#~ msgstr "%s: klarer ikkje oppdatere gruppefil\n" - #~ msgid "%s: can't delete shadow group file\n" #~ msgstr "%s: klan ikkje slette skuggegruppefil\n" diff --git a/po/pl.gmo b/po/pl.gmo new file mode 100644 index 0000000000000000000000000000000000000000..9419af034eab36a6950306c7d02517eb381f2040 GIT binary patch literal 20430 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 UBQn?9(Xw=ia3+N&m01e@Ki`Lfg8%>k literal 0 HcmV?d00001 diff --git a/po/pl.po b/po/pl.po index 0666542b..f25bf72f 100644 --- a/po/pl.po +++ b/po/pl.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: shadow 4.0.18\n" "Report-Msgid-Bugs-To: pkg-shadow-devel@lists.alioth.debian.org\n" -"POT-Creation-Date: 2012-05-20 19:52+0200\n" +"POT-Creation-Date: 2016-09-18 21:41-0500\n" "PO-Revision-Date: 2007-11-25 20:53+0100\n" "Last-Translator: Tomasz Kłoczko \n" "Language-Team: Polish \n" @@ -445,6 +445,11 @@ msgstr "%s: nieprawidłowy numer telefonu domowego: '%s'\n" msgid "%s: cannot access chroot directory %s: %s\n" msgstr "%s: nie można utworzyć katalogu %s\n" +#, fuzzy, c-format +#| msgid "%s: cannot create directory %s\n" +msgid "%s: cannot chdir to chroot directory %s: %s\n" +msgstr "%s: nie można utworzyć katalogu %s\n" + #, fuzzy, c-format #| msgid "%s: cannot create directory %s\n" msgid "%s: unable to chroot to directory %s: %s\n" @@ -786,6 +791,11 @@ msgstr "%s: linia %d: linia zbyt długa\n" msgid "%s: line %d: missing new password\n" msgstr "%s: linia %d: brakuje nowego hasła\n" +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to crypt password with salt '%s': %s\n" +msgstr "%s: niepowiodło się porzucenie uprawnień (%s)\n" + #, fuzzy, c-format #| msgid "%s: group %s does not exist\n" msgid "%s: line %d: group '%s' does not exist\n" @@ -1081,6 +1091,11 @@ msgstr "Członek grupy już istnieje\n" msgid "%s: Cannot setup cleanup service.\n" msgstr "%s: Nie można ustalić twojej nazwy użytkownika.\n" +msgid "" +" -f, --force delete group even if it is the primary group " +"of a user\n" +msgstr "" + #, fuzzy, c-format #| msgid "%s: cannot rename directory %s to %s\n" msgid "%s: cannot remove entry '%s' from %s\n" @@ -1299,6 +1314,16 @@ msgid "" " -b, --before DAYS print only lastlog records older than DAYS\n" msgstr "" +msgid "" +" -C, --clear clear lastlog record of an user (usable only " +"with -u)\n" +msgstr "" + +msgid "" +" -S, --set set lastlog record to current time (usable " +"only with -u)\n" +msgstr "" + msgid "" " -t, --time DAYS print only lastlog records more recent than " "DAYS\n" @@ -1317,6 +1342,24 @@ msgstr "Użytkownik Port Ostatnio" msgid "**Never logged in**" msgstr "**Nigdy nie zalogowany**" +#, fuzzy, c-format +#| msgid "%s: cannot create directory %s\n" +msgid "%s: Failed to update the entry for UID %lu\n" +msgstr "%s: nie można utworzyć katalogu %s\n" + +#, fuzzy, c-format +#| msgid "%s: can't update password file\n" +msgid "%s: Failed to update the lastlog file\n" +msgstr "%s: nie można zaktualizować pliku z hasłami\n" + +#, c-format +msgid "%s: Option -C cannot be used together with option -S\n" +msgstr "" + +#, c-format +msgid "%s: Options -C and -S require option -u to specify the user\n" +msgstr "" + #, c-format msgid "Usage: %s [-p] [name]\n" msgstr "Użycie: %s [-p] [nazwa]\n" @@ -1350,6 +1393,14 @@ msgstr "" "\n" "[Rozłączenie pominięte -- zezwolenie na logowanie się roota.]" +#, c-format +msgid "%s: Cannot possibly work without effective root\n" +msgstr "" + +msgid "No utmp entry. You must exec \"login\" from the lowest level \"sh\"" +msgstr "" +"Brak wpisu w utmp. Musisz wykonać \"login\" z najniższego poziomu \"sh\"" + #, fuzzy, c-format #| msgid "" #| "\n" @@ -1361,14 +1412,6 @@ msgstr "" "\n" "Limit czasu logowania przekroczony po %d sekundach.\n" -#, c-format -msgid "%s: Cannot possibly work without effective root\n" -msgstr "" - -msgid "No utmp entry. You must exec \"login\" from the lowest level \"sh\"" -msgstr "" -"Brak wpisu w utmp. Musisz wykonać \"login\" z najniższego poziomu \"sh\"" - #, c-format msgid "login: PAM Failure, aborting: %s\n" msgstr "login: PAM niepowodzenie, przerwane: %s\n" @@ -1445,6 +1488,11 @@ msgstr "Użycie: newgrp [-] [grupa]\n" msgid "Usage: sg group [[-c] command]\n" msgstr "Użycie: sg grupa [[-c] polecenie]\n" +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to crypt password with previous salt: %s\n" +msgstr "%s: niepowiodło się porzucenie uprawnień (%s)\n" + #, fuzzy msgid "Invalid password.\n" msgstr "Stare hasło: " @@ -1514,6 +1562,20 @@ msgstr "%s: linia %d: chown nie powiodło się\n" msgid "%s: line %d: can't update entry\n" msgstr "%s: linia %d: nie można zaktualizować wpisu\n" +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to prepare new %s entry\n" +msgstr "%s: niepowiodło się porzucenie uprawnień (%s)\n" + +#, fuzzy, c-format +msgid "%s: can't find subordinate user range\n" +msgstr "%s: nie można utworzyć %s\n" + +#, fuzzy, c-format +#| msgid "%s: can't update group file\n" +msgid "%s: can't find subordinate group range\n" +msgstr "%s: nie można zaktualizować pliku z grupami\n" + msgid "" " -a, --all report password status on all accounts\n" msgstr "" @@ -1767,12 +1829,6 @@ msgstr "Uwierzytelnianie na podstawie hasła pominięte.\n" msgid "Please enter your OWN password as authentication.\n" msgstr "Proszę wpisz swoje WŁASNE hasło jako hasło uwierzytelniające.\n" -msgid " ...killed.\n" -msgstr "" - -msgid " ...waiting for child to terminate.\n" -msgstr "" - #, fuzzy, c-format #| msgid "%s: cannot lock file %s\n" msgid "%s: Cannot fork user shell\n" @@ -1790,12 +1846,20 @@ msgid "Session terminated, terminating shell..." msgstr "" #, c-format -msgid "%s: %s\n" -msgstr "%s: %s\n" +msgid " ...killed.\n" +msgstr "" + +#, c-format +msgid " ...waiting for child to terminate.\n" +msgstr "" msgid " ...terminated.\n" msgstr "" +#, c-format +msgid "%s: %s\n" +msgstr "%s: %s\n" + msgid "" "Usage: su [options] [LOGIN]\n" "\n" @@ -2058,6 +2122,11 @@ msgstr "" msgid "%s: failed to reset the lastlog entry of UID %lu: %s\n" msgstr "" +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to prepare the new %s entry\n" +msgstr "%s: niepowiodło się porzucenie uprawnień (%s)\n" + #, c-format msgid "%s: cannot create directory %s\n" msgstr "%s: nie można utworzyć katalogu %s\n" @@ -2103,6 +2172,14 @@ msgstr "%s: nie można utworzyć katalogu %s\n" msgid "%s: can't create group\n" msgstr "%s: nie można utworzyć %s\n" +#, fuzzy, c-format +msgid "%s: can't create subordinate user IDs\n" +msgstr "%s: nie można utworzyć %s\n" + +#, fuzzy, c-format +msgid "%s: can't create subordinate group IDs\n" +msgstr "%s: nie można utworzyć %s\n" + #, c-format msgid "" "%s: warning: the home directory already exists.\n" @@ -2145,6 +2222,11 @@ msgstr "" "%s: nie można usunąć grupy %s która jest grupą podstawową\n" "dla innego użytkownika.\n" +#, fuzzy, c-format +#| msgid "%s: cannot rename directory %s to %s\n" +msgid "%s: cannot remove entry %lu from %s\n" +msgstr "%s: nie można zmienić nazwy katalogu z %s na %s\n" + #, fuzzy, c-format #| msgid "%s: invalid home directory '%s'\n" msgid "%s: %s mail spool (%s) not found\n" @@ -2253,6 +2335,18 @@ msgstr "" msgid " -U, --unlock unlock the user account\n" msgstr "" +msgid " -v, --add-subuids FIRST-LAST add range of subordinate uids\n" +msgstr "" + +msgid " -V, --del-subuids FIRST-LAST remove range of subordinate uids\n" +msgstr "" + +msgid " -w, --add-subgids FIRST-LAST add range of subordinate gids\n" +msgstr "" + +msgid " -W, --del-subgids FIRST-LAST remove range of subordinate gids\n" +msgstr "" + msgid "" " -Z, --selinux-user SEUSER new SELinux user mapping for the user " "account\n" @@ -2269,6 +2363,16 @@ msgstr "" msgid "%s: user '%s' already exists in %s\n" msgstr "%s: użytkownik %s istnieje\n" +#, fuzzy, c-format +#| msgid "%s: invalid date '%s'\n" +msgid "%s: invalid subordinate uid range '%s'\n" +msgstr "%s: nieprawidłowa data '%s'\n" + +#, fuzzy, c-format +#| msgid "%s: invalid date '%s'\n" +msgid "%s: invalid subordinate gid range '%s'\n" +msgstr "%s: nieprawidłowa data '%s'\n" + #, fuzzy, c-format #| msgid "%s: cannot open file %s\n" msgid "%s: no options\n" @@ -2287,6 +2391,10 @@ msgstr "%s: ukryte hasła wymagane dla -e i -f\n" msgid "%s: UID '%lu' already exists\n" msgstr "Członek grupy już istnieje\n" +#, c-format +msgid "%s: %s does not exist, you cannot use the flags %s or %s\n" +msgstr "" + #, c-format msgid "%s: directory %s exists\n" msgstr "%s: katalog %s istnieje\n" @@ -2329,6 +2437,26 @@ msgstr "zmiana właściciela skrzynki pocztowej nie powiodła się" msgid "failed to rename mailbox" msgstr "zmiana nazwy skrzynki pocztowej nie powiodła się" +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to remove uid range %lu-%lu from '%s'\n" +msgstr "%s: niepowiodło się porzucenie uprawnień (%s)\n" + +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to add uid range %lu-%lu from '%s'\n" +msgstr "%s: niepowiodło się porzucenie uprawnień (%s)\n" + +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to remove gid range %lu-%lu from '%s'\n" +msgstr "%s: niepowiodło się porzucenie uprawnień (%s)\n" + +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to add gid range %lu-%lu from '%s'\n" +msgstr "%s: niepowiodło się porzucenie uprawnień (%s)\n" + #, c-format msgid "" "You have modified %s.\n" @@ -2391,6 +2519,20 @@ msgstr "Nie można zablokować pliku" msgid "Couldn't make backup" msgstr "Nie można wykonać kopii zapasowej" +#, fuzzy, c-format +#| msgid "%s: %s\n" +msgid "%s: %s: %s\n" +msgstr "%s: %s\n" + +#, fuzzy, c-format +#| msgid "%s: %s not found in /etc/passwd\n" +msgid "%s: %s returned with status %d\n" +msgstr "%s: nie znaleziono %s w /etc/passwd\n" + +#, c-format +msgid "%s: %s killed by signal %d\n" +msgstr "" + #, fuzzy #| msgid "Unable to open group file\n" msgid "failed to open scratch file" @@ -3066,9 +3208,6 @@ msgstr "%s: nieprawidłowy katalog bazowy '%s'\n" #~ msgid "%s: can't rewrite password file\n" #~ msgstr "%s: nie można przepisać pliku z hasłami\n" -#~ msgid "%s: can't update password file\n" -#~ msgstr "%s: nie można zaktualizować pliku z hasłami\n" - #~ msgid "%s: can't update shadow password file\n" #~ msgstr "%s: nie można zaktualizować pliku z ukrytymi hasłami\n" @@ -3090,9 +3229,6 @@ msgstr "%s: nieprawidłowy katalog bazowy '%s'\n" #~ msgid "Cannot open the password file.\n" #~ msgstr "Nie można otworzyć pliku z hasłami.\n" -#~ msgid "%s: %s not found in /etc/passwd\n" -#~ msgstr "%s: nie znaleziono %s w /etc/passwd\n" - #~ msgid "Error updating the password entry.\n" #~ msgstr "Błąd podczas aktualizacji wpisu do bazy haseł.\n" @@ -3300,9 +3436,6 @@ msgstr "%s: nieprawidłowy katalog bazowy '%s'\n" #~ msgid "%s: can't update shadow group file\n" #~ msgstr "%s: nie można zaktualizować pliku z ukrytymi hasłami grup\n" -#~ msgid "%s: can't update group file\n" -#~ msgstr "%s: nie można zaktualizować pliku z grupami\n" - #~ msgid "%s: can't delete shadow group file\n" #~ msgstr "%s: nie można skasować pliku z ukrytymi hasłami grup\n" diff --git a/po/pt.gmo b/po/pt.gmo new file mode 100644 index 0000000000000000000000000000000000000000..ebfac57f856d4604ffac70fbea0cb907ec87d285 GIT binary patch literal 68564 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\n" "Language-Team: Portuguese \n" @@ -432,6 +432,11 @@ msgstr "%s: caminho de chroot inválido: '%s'\n" msgid "%s: cannot access chroot directory %s: %s\n" msgstr "%s: não pode aceder ao directório chroot %s: %s\n" +#, fuzzy, c-format +#| msgid "%s: cannot access chroot directory %s: %s\n" +msgid "%s: cannot chdir to chroot directory %s: %s\n" +msgstr "%s: não pode aceder ao directório chroot %s: %s\n" + #, c-format msgid "%s: unable to chroot to directory %s: %s\n" msgstr "%s: não foi possível fazer chroot para o directório %s: %s\n" @@ -799,6 +804,11 @@ msgstr "%s: linha %d: linha demasiado comprida\n" msgid "%s: line %d: missing new password\n" msgstr "%s: linha %d: falta a nova palavra-passe\n" +#, fuzzy, c-format +#| msgid "%s: Failed to write %s: %s\n" +msgid "%s: failed to crypt password with salt '%s': %s\n" +msgstr "%s: Falhou ao escrever %s: %s\n" + #, c-format msgid "%s: line %d: group '%s' does not exist\n" msgstr "%s: linha %d: o grupo '%s' não existe\n" @@ -1104,6 +1114,14 @@ msgstr "%s: o GID '%lu' já existe\n" msgid "%s: Cannot setup cleanup service.\n" msgstr "%s: Não é possível configurar o serviço cleanup.\n" +#, fuzzy +#| msgid "" +#| " -r, --reset reset the counters of login failures\n" +msgid "" +" -f, --force delete group even if it is the primary group " +"of a user\n" +msgstr " -r, --reset apagar o contador de logins falhados\n" + #, c-format msgid "%s: cannot remove entry '%s' from %s\n" msgstr "%s: não é possível remover a entrada '%s' de %s\n" @@ -1335,6 +1353,26 @@ msgstr "" " -b, --before DIAS escrever apenas registos de lastlog mais\n" " antigos que DIAS\n" +#, fuzzy +#| msgid "" +#| " -a, --all display faillog records for all users\n" +msgid "" +" -C, --clear clear lastlog record of an user (usable only " +"with -u)\n" +msgstr "" +" -a, --all mostrar registos do faillog para todos os " +"utilizadores\n" + +#, fuzzy +#| msgid "" +#| " -a, --all display faillog records for all users\n" +msgid "" +" -S, --set set lastlog record to current time (usable " +"only with -u)\n" +msgstr "" +" -a, --all mostrar registos do faillog para todos os " +"utilizadores\n" + msgid "" " -t, --time DAYS print only lastlog records more recent than " "DAYS\n" @@ -1357,6 +1395,24 @@ msgstr "Utilizador Porto Último" msgid "**Never logged in**" msgstr "**Nunca entrou no sistema**" +#, fuzzy, c-format +#| msgid "%s: Failed to get the entry for UID %lu\n" +msgid "%s: Failed to update the entry for UID %lu\n" +msgstr "%s: Falhou obter a entrada para UID %lu\n" + +#, fuzzy, c-format +#| msgid "%s: failed to reset the lastlog entry of UID %lu: %s\n" +msgid "%s: Failed to update the lastlog file\n" +msgstr "%s: falhou apagar o registo lastlog para o UID %lu: %s\n" + +#, c-format +msgid "%s: Option -C cannot be used together with option -S\n" +msgstr "" + +#, c-format +msgid "%s: Options -C and -S require option -u to specify the user\n" +msgstr "" + #, c-format msgid "Usage: %s [-p] [name]\n" msgstr "Utilização: %s [-p] [nome]\n" @@ -1390,14 +1446,6 @@ msgstr "" "\n" "[Encerramento ultrapassado -- login de root permitido.]" -#, c-format -msgid "" -"\n" -"Login timed out after %u seconds.\n" -msgstr "" -"\n" -"Tempo de login caducou após %u segundos.\n" - #, c-format msgid "%s: Cannot possibly work without effective root\n" msgstr "%s: Não é possível trabalhar sem root\n" @@ -1407,6 +1455,14 @@ msgstr "" "Sem entrada utmp. Tem de executar \"login\" a partir do \"sh\" de nível " "mais baixo" +#, c-format +msgid "" +"\n" +"Login timed out after %u seconds.\n" +msgstr "" +"\n" +"Tempo de login caducou após %u segundos.\n" + #, c-format msgid "login: PAM Failure, aborting: %s\n" msgstr "login: Falha de PAM, a abortar: %s\n" @@ -1479,6 +1535,11 @@ msgstr "Utilização: newgrp [-] [grupo]\n" msgid "Usage: sg group [[-c] command]\n" msgstr "Utilização: sg grupo [[-c] comando]\n" +#, fuzzy, c-format +#| msgid "%s: Failed to write %s: %s\n" +msgid "%s: failed to crypt password with previous salt: %s\n" +msgstr "%s: Falhou ao escrever %s: %s\n" + msgid "Invalid password.\n" msgstr "Palavra-passe inválida.\n" @@ -1546,6 +1607,21 @@ msgstr "%s: linha %d: chown %s falhou: %s\n" msgid "%s: line %d: can't update entry\n" msgstr "%s: linha %d: não é possível actualizar o registo\n" +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to prepare new %s entry\n" +msgstr "%s: falhou a preparação para a nova %s entrada '%s'\n" + +#, fuzzy, c-format +#| msgid "%s: can't create user\n" +msgid "%s: can't find subordinate user range\n" +msgstr "%s: não é possível criar o utilizador\n" + +#, fuzzy, c-format +#| msgid "%s: can't create group\n" +msgid "%s: can't find subordinate group range\n" +msgstr "%s: não é possível criar grupo\n" + msgid "" " -a, --all report password status on all accounts\n" msgstr "" @@ -1823,12 +1899,6 @@ msgstr "Autenticação por palavra-passe foi contornada.\n" msgid "Please enter your OWN password as authentication.\n" msgstr "Por favor introduza a SUA palavra-passe como autenticação.\n" -msgid " ...killed.\n" -msgstr " ...morto.\n" - -msgid " ...waiting for child to terminate.\n" -msgstr " ...á espera que o processo-filho termine.\n" - #, c-format msgid "%s: Cannot fork user shell\n" msgstr "%s: Não é possível fazer fork à shell de utilizador.\n" @@ -1845,12 +1915,20 @@ msgid "Session terminated, terminating shell..." msgstr "Sessão terminada, a terminar shell..." #, c-format -msgid "%s: %s\n" -msgstr "%s: %s\n" +msgid " ...killed.\n" +msgstr " ...morto.\n" + +#, c-format +msgid " ...waiting for child to terminate.\n" +msgstr " ...á espera que o processo-filho termine.\n" msgid " ...terminated.\n" msgstr " ...terminado.\n" +#, c-format +msgid "%s: %s\n" +msgstr "%s: %s\n" + msgid "" "Usage: su [options] [LOGIN]\n" "\n" @@ -2134,6 +2212,11 @@ msgstr "%s: falhou apagar o registo faillog para o UID %lu: %s\n" msgid "%s: failed to reset the lastlog entry of UID %lu: %s\n" msgstr "%s: falhou apagar o registo lastlog para o UID %lu: %s\n" +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to prepare the new %s entry\n" +msgstr "%s: falhou a preparação para a nova %s entrada '%s'\n" + #, c-format msgid "%s: cannot create directory %s\n" msgstr "%s: não é possível criar o directório %s\n" @@ -2177,6 +2260,16 @@ msgstr "%s: Falhou a criação do directório tcb para %s\n" msgid "%s: can't create group\n" msgstr "%s: não é possível criar grupo\n" +#, fuzzy, c-format +#| msgid "%s: can't create user\n" +msgid "%s: can't create subordinate user IDs\n" +msgstr "%s: não é possível criar o utilizador\n" + +#, fuzzy, c-format +#| msgid "%s: can't create group\n" +msgid "%s: can't create subordinate group IDs\n" +msgstr "%s: não é possível criar grupo\n" + #, c-format msgid "" "%s: warning: the home directory already exists.\n" @@ -2225,6 +2318,11 @@ msgid "%s: group %s is the primary group of another user and is not removed.\n" msgstr "" "%s: o grupo %s é o grupo primário de outro utilizador e não é removido.\n" +#, fuzzy, c-format +#| msgid "%s: cannot remove entry '%s' from %s\n" +msgid "%s: cannot remove entry %lu from %s\n" +msgstr "%s: não é possível remover a entrada '%s' de %s\n" + #, c-format msgid "%s: %s mail spool (%s) not found\n" msgstr "%s: %s spool de mail (%s) não foi encontrado\n" @@ -2349,6 +2447,18 @@ msgstr " -u, --uid UID novo UID para a conta do utilizador\n" msgid " -U, --unlock unlock the user account\n" msgstr " -U, --unlock desbloquear a conta do utilizador\n" +msgid " -v, --add-subuids FIRST-LAST add range of subordinate uids\n" +msgstr "" + +msgid " -V, --del-subuids FIRST-LAST remove range of subordinate uids\n" +msgstr "" + +msgid " -w, --add-subgids FIRST-LAST add range of subordinate gids\n" +msgstr "" + +msgid " -W, --del-subgids FIRST-LAST remove range of subordinate gids\n" +msgstr "" + msgid "" " -Z, --selinux-user SEUSER new SELinux user mapping for the user " "account\n" @@ -2370,6 +2480,16 @@ msgstr "" msgid "%s: user '%s' already exists in %s\n" msgstr "%s: o utilizador %s já existe em %s\n" +#, fuzzy, c-format +#| msgid "%s: invalid date '%s'\n" +msgid "%s: invalid subordinate uid range '%s'\n" +msgstr "%s: a data '%s' é inválida\n" + +#, fuzzy, c-format +#| msgid "%s: invalid date '%s'\n" +msgid "%s: invalid subordinate gid range '%s'\n" +msgstr "%s: a data '%s' é inválida\n" + #, c-format msgid "%s: no options\n" msgstr "%s: sem opções\n" @@ -2386,6 +2506,11 @@ msgstr "%s: são necessárias palavras-passe shadow para -e e -f\n" msgid "%s: UID '%lu' already exists\n" msgstr "%s: O UID '%lu' já existe\n" +#, fuzzy, c-format +#| msgid "%s: %s is not authorized to change the password of %s\n" +msgid "%s: %s does not exist, you cannot use the flags %s or %s\n" +msgstr "%s: %s não está autorizado a alterar a palavra-passe de %s\n" + #, c-format msgid "%s: directory %s exists\n" msgstr "%s: o directório %s existe\n" @@ -2433,6 +2558,26 @@ msgstr "a alteração do dono da caixa de correio falhou" msgid "failed to rename mailbox" msgstr "falha ao renomear a caixa do correio" +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to remove uid range %lu-%lu from '%s'\n" +msgstr "%s: falhou a preparação para a nova %s entrada '%s'\n" + +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to add uid range %lu-%lu from '%s'\n" +msgstr "%s: falhou a preparação para a nova %s entrada '%s'\n" + +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to remove gid range %lu-%lu from '%s'\n" +msgstr "%s: falhou a preparação para a nova %s entrada '%s'\n" + +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to add gid range %lu-%lu from '%s'\n" +msgstr "%s: falhou a preparação para a nova %s entrada '%s'\n" + #, c-format msgid "" "You have modified %s.\n" @@ -2487,6 +2632,20 @@ msgstr "Não é possível obter acesso exclusivo ao ficheiro" msgid "Couldn't make backup" msgstr "Não é possível efectuar cópia de segurança" +#, fuzzy, c-format +#| msgid "%s: PAM: %s\n" +msgid "%s: %s: %s\n" +msgstr "%s: PAM: %s\n" + +#, fuzzy, c-format +#| msgid "%s: nscd exited with status %d" +msgid "%s: %s returned with status %d\n" +msgstr "%s: nscd saiu com o estado %d" + +#, c-format +msgid "%s: %s killed by signal %d\n" +msgstr "" + msgid "failed to open scratch file" msgstr "falhou abrir ficheiro 'scratch'" diff --git a/po/pt_BR.gmo b/po/pt_BR.gmo new file mode 100644 index 0000000000000000000000000000000000000000..be75eb4ee7ee9c16767e339a4e9e628f1b065d33 GIT binary patch literal 59505 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\n" "Language-Team: Debian-BR Project \n" @@ -429,6 +429,11 @@ msgstr "%s: telefone residencial inválido: '%s'\n" msgid "%s: cannot access chroot directory %s: %s\n" msgstr "%s: não foi possível criar o diretório %s: %s\n" +#, fuzzy, c-format +#| msgid "%s: Cannot create directory %s: %s\n" +msgid "%s: cannot chdir to chroot directory %s: %s\n" +msgstr "%s: não foi possível criar o diretório %s: %s\n" + #, fuzzy, c-format #| msgid "%s: Failed to create tcb directory for %s\n" msgid "%s: unable to chroot to directory %s: %s\n" @@ -792,6 +797,11 @@ msgstr "%s : linha %d : linha muito extensa\n" msgid "%s: line %d: missing new password\n" msgstr "%s : linha %d : nova senha faltando\n" +#, fuzzy, c-format +#| msgid "%s: failed to remove %s\n" +msgid "%s: failed to crypt password with salt '%s': %s\n" +msgstr "%s: falha ao remover %s\n" + #, c-format msgid "%s: line %d: group '%s' does not exist\n" msgstr "%s: linha %d: grupo %s não existe\n" @@ -1095,6 +1105,15 @@ msgstr "%s: GID '%lu' já existe\n" msgid "%s: Cannot setup cleanup service.\n" msgstr "%s : Não foi possível determinar seu nome de usuário.\n" +#, fuzzy +#| msgid "" +#| " -r, --reset reset the counters of login failures\n" +msgid "" +" -f, --force delete group even if it is the primary group " +"of a user\n" +msgstr "" +" -r, --reset zera os contadores de falhas de login\n" + #, c-format msgid "%s: cannot remove entry '%s' from %s\n" msgstr "%s: não é possível remover entrada '%s' de %s\n" @@ -1320,6 +1339,26 @@ msgstr "" " -b, --before DIAS imprime somente registros lastlog mais\n" " antigos que DIAS\n" +#, fuzzy +#| msgid "" +#| " -a, --all display faillog records for all users\n" +msgid "" +" -C, --clear clear lastlog record of an user (usable only " +"with -u)\n" +msgstr "" +" -a, --all mostrar registros de faillog de todos os " +"usuários\n" + +#, fuzzy +#| msgid "" +#| " -a, --all display faillog records for all users\n" +msgid "" +" -S, --set set lastlog record to current time (usable " +"only with -u)\n" +msgstr "" +" -a, --all mostrar registros de faillog de todos os " +"usuários\n" + msgid "" " -t, --time DAYS print only lastlog records more recent than " "DAYS\n" @@ -1342,6 +1381,24 @@ msgstr "Nome de Usuário Porta Último" msgid "**Never logged in**" msgstr "**Nunca logou**" +#, fuzzy, c-format +#| msgid "%s: Failed to get the entry for UID %lu\n" +msgid "%s: Failed to update the entry for UID %lu\n" +msgstr "%s: Falha ao obter a entrada para o UID %lu\n" + +#, fuzzy, c-format +#| msgid "%s: can't update password file\n" +msgid "%s: Failed to update the lastlog file\n" +msgstr "%s : não foi possível atualizar arquivo de senhas\n" + +#, c-format +msgid "%s: Option -C cannot be used together with option -S\n" +msgstr "" + +#, c-format +msgid "%s: Options -C and -S require option -u to specify the user\n" +msgstr "" + #, c-format msgid "Usage: %s [-p] [name]\n" msgstr "Uso : %s [-p] [nome]\n" @@ -1375,14 +1432,6 @@ msgstr "" "\n" "[Desconexão contornada -- login de root permitido.]" -#, c-format -msgid "" -"\n" -"Login timed out after %u seconds.\n" -msgstr "" -"\n" -"Login expirou após %u segundos.\n" - #, c-format msgid "%s: Cannot possibly work without effective root\n" msgstr "%s: talvez não seja possível trabalhar sem o root efetivamente\n" @@ -1392,6 +1441,14 @@ msgstr "" "Nenhuma entrada utmp. Voce deve executar \"login\" do \"sh\" de nível mais " "baixo" +#, c-format +msgid "" +"\n" +"Login timed out after %u seconds.\n" +msgstr "" +"\n" +"Login expirou após %u segundos.\n" + #, c-format msgid "login: PAM Failure, aborting: %s\n" msgstr "login: Falha do PAM, abortando: %s\n" @@ -1465,6 +1522,11 @@ msgstr "Uso : newgrp [-] [grupo]\n" msgid "Usage: sg group [[-c] command]\n" msgstr "Uso : sg group [[-c] comando]\n" +#, fuzzy, c-format +#| msgid "%s: failed to remove %s\n" +msgid "%s: failed to crypt password with previous salt: %s\n" +msgstr "%s: falha ao remover %s\n" + msgid "Invalid password.\n" msgstr "Senha inválida.\n" @@ -1532,6 +1594,21 @@ msgstr "%s: linha %d: chown %s falhou: %s\n" msgid "%s: line %d: can't update entry\n" msgstr "%s : linha %d : não foi possível atualizar entrada\n" +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to prepare new %s entry\n" +msgstr "%s: falha ao preparar a nova entrada %s '%s'\n" + +#, fuzzy, c-format +#| msgid "%s: can't create user\n" +msgid "%s: can't find subordinate user range\n" +msgstr "%s: não foi possível criar usuário\n" + +#, fuzzy, c-format +#| msgid "%s: can't update group file\n" +msgid "%s: can't find subordinate group range\n" +msgstr "%s : não foi possível atualizar arquivo de grupo\n" + msgid "" " -a, --all report password status on all accounts\n" msgstr "" @@ -1803,12 +1880,6 @@ msgstr "Autenticação por senha contornada.\n" msgid "Please enter your OWN password as authentication.\n" msgstr "Por favor, informe sua PRÓPRIA senha como autenticação.\n" -msgid " ...killed.\n" -msgstr " ...morto.\n" - -msgid " ...waiting for child to terminate.\n" -msgstr " ...esperando o filho terminar.\n" - #, c-format msgid "%s: Cannot fork user shell\n" msgstr "%s: Não posso ramificar shell de usuário\n" @@ -1825,12 +1896,20 @@ msgid "Session terminated, terminating shell..." msgstr "Sessão terminada, encerrando o shell..." #, c-format -msgid "%s: %s\n" -msgstr "%s: %s\n" +msgid " ...killed.\n" +msgstr " ...morto.\n" + +#, c-format +msgid " ...waiting for child to terminate.\n" +msgstr " ...esperando o filho terminar.\n" msgid " ...terminated.\n" msgstr " ...encerrado.\n" +#, c-format +msgid "%s: %s\n" +msgstr "%s: %s\n" + msgid "" "Usage: su [options] [LOGIN]\n" "\n" @@ -2117,6 +2196,11 @@ msgstr "%s: falha ao zerar a entrada do faillog de UID %lu: %s\n" msgid "%s: failed to reset the lastlog entry of UID %lu: %s\n" msgstr "%s: falha ao zerar a entrada do lastlog do UID %lu: %s\n" +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to prepare the new %s entry\n" +msgstr "%s: falha ao preparar a nova entrada %s '%s'\n" + #, c-format msgid "%s: cannot create directory %s\n" msgstr "%s : não foi possível criar diretório %s\n" @@ -2160,6 +2244,16 @@ msgstr "%s: Falha ao criar diretório tcb para %s\n" msgid "%s: can't create group\n" msgstr "%s: não é possível criar grupo\n" +#, fuzzy, c-format +#| msgid "%s: can't create user\n" +msgid "%s: can't create subordinate user IDs\n" +msgstr "%s: não foi possível criar usuário\n" + +#, fuzzy, c-format +#| msgid "%s: can't create group\n" +msgid "%s: can't create subordinate group IDs\n" +msgstr "%s: não é possível criar grupo\n" + #, c-format msgid "" "%s: warning: the home directory already exists.\n" @@ -2212,6 +2306,11 @@ msgid "%s: group %s is the primary group of another user and is not removed.\n" msgstr "" "%s: grupo %s é o grupo primário de outro usuário e não será removido.\n" +#, fuzzy, c-format +#| msgid "%s: cannot remove entry '%s' from %s\n" +msgid "%s: cannot remove entry %lu from %s\n" +msgstr "%s: não é possível remover entrada '%s' de %s\n" + #, fuzzy, c-format #| msgid "%s: %s home directory (%s) not found\n" msgid "%s: %s mail spool (%s) not found\n" @@ -2334,6 +2433,18 @@ msgstr " -u, --uid UID novo UID para a conta de usuário\n" msgid " -U, --unlock unlock the user account\n" msgstr " -U, --unlock destravar a conta de usuário\n" +msgid " -v, --add-subuids FIRST-LAST add range of subordinate uids\n" +msgstr "" + +msgid " -V, --del-subuids FIRST-LAST remove range of subordinate uids\n" +msgstr "" + +msgid " -w, --add-subgids FIRST-LAST add range of subordinate gids\n" +msgstr "" + +msgid " -W, --del-subgids FIRST-LAST remove range of subordinate gids\n" +msgstr "" + #, fuzzy #| msgid "" #| " -Z, --selinux-user new SELinux user mapping for the user " @@ -2358,6 +2469,16 @@ msgstr "" msgid "%s: user '%s' already exists in %s\n" msgstr "%s: usuário '%s' já existe em %s\n" +#, fuzzy, c-format +#| msgid "%s: invalid date '%s'\n" +msgid "%s: invalid subordinate uid range '%s'\n" +msgstr "%s: data `%s' inválida\n" + +#, fuzzy, c-format +#| msgid "%s: invalid date '%s'\n" +msgid "%s: invalid subordinate gid range '%s'\n" +msgstr "%s: data `%s' inválida\n" + #, fuzzy, c-format #| msgid "%s: cannot open %s\n" msgid "%s: no options\n" @@ -2375,6 +2496,11 @@ msgstr "%s : senhas shadow necessárias para -e e -f\n" msgid "%s: UID '%lu' already exists\n" msgstr "%s: UID '%lu' já existe\n" +#, fuzzy, c-format +#| msgid "%s: %s is not authorized to change the password of %s\n" +msgid "%s: %s does not exist, you cannot use the flags %s or %s\n" +msgstr "%s: %s não está autorizado a trocar a senha de %s\n" + #, c-format msgid "%s: directory %s exists\n" msgstr "%s : diretório %s existe\n" @@ -2418,6 +2544,26 @@ msgstr "falha au mudar o dono da caixa-postal" msgid "failed to rename mailbox" msgstr "falha ao renomear caixa-postal" +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to remove uid range %lu-%lu from '%s'\n" +msgstr "%s: falha ao preparar a nova entrada %s '%s'\n" + +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to add uid range %lu-%lu from '%s'\n" +msgstr "%s: falha ao preparar a nova entrada %s '%s'\n" + +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to remove gid range %lu-%lu from '%s'\n" +msgstr "%s: falha ao preparar a nova entrada %s '%s'\n" + +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to add gid range %lu-%lu from '%s'\n" +msgstr "%s: falha ao preparar a nova entrada %s '%s'\n" + #, c-format msgid "" "You have modified %s.\n" @@ -2471,6 +2617,20 @@ msgstr "Não foi possível obter lock em arquivo" msgid "Couldn't make backup" msgstr "Não foi possível fazer backup" +#, fuzzy, c-format +#| msgid "%s: %s\n" +msgid "%s: %s: %s\n" +msgstr "%s: %s\n" + +#, fuzzy, c-format +#| msgid "%s: %s not found in /etc/passwd\n" +msgid "%s: %s returned with status %d\n" +msgstr "%s : %s não encontrado em /etc/passwd\n" + +#, c-format +msgid "%s: %s killed by signal %d\n" +msgstr "" + msgid "failed to open scratch file" msgstr "falha ao abrir arquivo de rascunho" @@ -3100,9 +3260,6 @@ msgstr "%s: falha ao procurar o diretório tcb para %s\n" #~ msgid "%s: can't rewrite password file\n" #~ msgstr "%s : não foi possível reescrever arquivo de senhas\n" -#~ msgid "%s: can't update password file\n" -#~ msgstr "%s : não foi possível atualizar arquivo de senhas\n" - #~ msgid "%s: can't update shadow password file\n" #~ msgstr "%s : não foi possível atualizar arquivos de senhas shadow\n" @@ -3126,9 +3283,6 @@ msgstr "%s: falha ao procurar o diretório tcb para %s\n" #~ msgid "Cannot open the password file.\n" #~ msgstr "Não foi possível abrir arquivo de senhas.\n" -#~ msgid "%s: %s not found in /etc/passwd\n" -#~ msgstr "%s : %s não encontrado em /etc/passwd\n" - #~ msgid "Error updating the password entry.\n" #~ msgstr "Erro atualizando a entrada de senha.\n" @@ -3346,9 +3500,6 @@ msgstr "%s: falha ao procurar o diretório tcb para %s\n" #~ msgid "%s: can't update shadow group file\n" #~ msgstr "%s : não foi possível atualizar arquivo de grupo shadow\n" -#~ msgid "%s: can't update group file\n" -#~ msgstr "%s : não foi possível atualizar arquivo de grupo\n" - #~ msgid "%s: can't delete shadow group file\n" #~ msgstr "%s : não foi possível remover arquivo de grupo shadow\n" diff --git a/po/quot.sed b/po/quot.sed new file mode 100644 index 00000000..0122c463 --- /dev/null +++ b/po/quot.sed @@ -0,0 +1,6 @@ +s/"\([^"]*\)"/“\1”/g +s/`\([^`']*\)'/‘\1’/g +s/ '\([^`']*\)' / ‘\1’ /g +s/ '\([^`']*\)'$/ ‘\1’/g +s/^'\([^`']*\)' /‘\1’ /g +s/“”/""/g diff --git a/po/remove-potcdate.sin b/po/remove-potcdate.sin new file mode 100644 index 00000000..2436c49e --- /dev/null +++ b/po/remove-potcdate.sin @@ -0,0 +1,19 @@ +# Sed script that remove the POT-Creation-Date line in the header entry +# from a POT file. +# +# The distinction between the first and the following occurrences of the +# pattern is achieved by looking at the hold space. +/^"POT-Creation-Date: .*"$/{ +x +# Test if the hold space is empty. +s/P/P/ +ta +# Yes it was empty. First occurrence. Remove the line. +g +d +bb +:a +# The hold space was nonempty. Following occurrences. Do nothing. +x +:b +} diff --git a/po/ro.gmo b/po/ro.gmo new file mode 100644 index 0000000000000000000000000000000000000000..c6acaa4a47cd413c14dbc0100a89c6416796d00e GIT binary patch literal 19329 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\n" "Language-Team: Romanian \n" @@ -441,6 +441,11 @@ msgstr "%s: număr telefon acasă nevalid: '%s'\n" msgid "%s: cannot access chroot directory %s: %s\n" msgstr "%s: nu pot crea directorul %s\n" +#, fuzzy, c-format +#| msgid "%s: cannot create directory %s\n" +msgid "%s: cannot chdir to chroot directory %s: %s\n" +msgstr "%s: nu pot crea directorul %s\n" + #, fuzzy, c-format #| msgid "%s: cannot create directory %s\n" msgid "%s: unable to chroot to directory %s: %s\n" @@ -782,6 +787,11 @@ msgstr "%s: linia %d: linie prea lungă\n" msgid "%s: line %d: missing new password\n" msgstr "%s: linia %d: lipseşte noua parolă\n" +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to crypt password with salt '%s': %s\n" +msgstr "%s : eşuare în abandonarea privilegiilor (%s)\n" + #, fuzzy, c-format #| msgid "%s: group %s does not exist\n" msgid "%s: line %d: group '%s' does not exist\n" @@ -1076,6 +1086,11 @@ msgstr "" msgid "%s: Cannot setup cleanup service.\n" msgstr "%s: Nu vă pot determina numele de utilizator.\n" +msgid "" +" -f, --force delete group even if it is the primary group " +"of a user\n" +msgstr "" + #, fuzzy, c-format #| msgid "%s: cannot rename directory %s to %s\n" msgid "%s: cannot remove entry '%s' from %s\n" @@ -1292,6 +1307,16 @@ msgid "" " -b, --before DAYS print only lastlog records older than DAYS\n" msgstr "" +msgid "" +" -C, --clear clear lastlog record of an user (usable only " +"with -u)\n" +msgstr "" + +msgid "" +" -S, --set set lastlog record to current time (usable " +"only with -u)\n" +msgstr "" + msgid "" " -t, --time DAYS print only lastlog records more recent than " "DAYS\n" @@ -1310,6 +1335,24 @@ msgstr "Nume utilizator Port Cel mai recent" msgid "**Never logged in**" msgstr "**Niciodată autentificat**" +#, fuzzy, c-format +#| msgid "%s: cannot create directory %s\n" +msgid "%s: Failed to update the entry for UID %lu\n" +msgstr "%s: nu pot crea directorul %s\n" + +#, fuzzy, c-format +#| msgid "%s: can't update password file\n" +msgid "%s: Failed to update the lastlog file\n" +msgstr "%s: nu pot actualiza fişierul passwd\n" + +#, c-format +msgid "%s: Option -C cannot be used together with option -S\n" +msgstr "" + +#, c-format +msgid "%s: Options -C and -S require option -u to specify the user\n" +msgstr "" + #, c-format msgid "Usage: %s [-p] [name]\n" msgstr "Utilizare: %s [-p] [nume]\n" @@ -1343,6 +1386,15 @@ msgstr "" "\n" "[Deconectare ocolită -- autentificare permisă pentru root.]" +#, c-format +msgid "%s: Cannot possibly work without effective root\n" +msgstr "" + +msgid "No utmp entry. You must exec \"login\" from the lowest level \"sh\"" +msgstr "" +"Nici o intrare utmp. Trebuie să executaţi \"login\" de la nivelul cel mai de " +"jos \"sh\"" + #, fuzzy, c-format #| msgid "" #| "\n" @@ -1354,15 +1406,6 @@ msgstr "" "\n" "Timp expirat pentru autentificare după %d secunde.\n" -#, c-format -msgid "%s: Cannot possibly work without effective root\n" -msgstr "" - -msgid "No utmp entry. You must exec \"login\" from the lowest level \"sh\"" -msgstr "" -"Nici o intrare utmp. Trebuie să executaţi \"login\" de la nivelul cel mai de " -"jos \"sh\"" - #, c-format msgid "login: PAM Failure, aborting: %s\n" msgstr "autentificare: eşuare PAM, abandonare : %s\n" @@ -1439,6 +1482,11 @@ msgstr "Utilizare: newgrp [-] [grup]\n" msgid "Usage: sg group [[-c] command]\n" msgstr "Utilizare: sg grup [[-c] comanda]\n" +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to crypt password with previous salt: %s\n" +msgstr "%s : eşuare în abandonarea privilegiilor (%s)\n" + #, fuzzy msgid "Invalid password.\n" msgstr "Parola veche: " @@ -1508,6 +1556,20 @@ msgstr "%s: linia %d: eşuare chown\n" msgid "%s: line %d: can't update entry\n" msgstr "%s: linia %d: nu pot actualiza intrarea\n" +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to prepare new %s entry\n" +msgstr "%s : eşuare în abandonarea privilegiilor (%s)\n" + +#, fuzzy, c-format +msgid "%s: can't find subordinate user range\n" +msgstr "%s: nu pot crea %s\n" + +#, fuzzy, c-format +#| msgid "%s: can't update group file\n" +msgid "%s: can't find subordinate group range\n" +msgstr "%s: nu pot actualiza fişierul de grupuri\n" + msgid "" " -a, --all report password status on all accounts\n" msgstr "" @@ -1762,12 +1824,6 @@ msgstr "Autentificare cu parolă ocolită.\n" msgid "Please enter your OWN password as authentication.\n" msgstr "Vă rog introduceţi PROPRIA parolă pentru autentificare.\n" -msgid " ...killed.\n" -msgstr "" - -msgid " ...waiting for child to terminate.\n" -msgstr "" - #, fuzzy, c-format #| msgid "%s: cannot lock file %s\n" msgid "%s: Cannot fork user shell\n" @@ -1785,12 +1841,20 @@ msgid "Session terminated, terminating shell..." msgstr "" #, c-format -msgid "%s: %s\n" -msgstr "%s: %s\n" +msgid " ...killed.\n" +msgstr "" + +#, c-format +msgid " ...waiting for child to terminate.\n" +msgstr "" msgid " ...terminated.\n" msgstr "" +#, c-format +msgid "%s: %s\n" +msgstr "%s: %s\n" + #, fuzzy msgid "" "Usage: su [options] [LOGIN]\n" @@ -2056,6 +2120,11 @@ msgstr "" msgid "%s: failed to reset the lastlog entry of UID %lu: %s\n" msgstr "" +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to prepare the new %s entry\n" +msgstr "%s : eşuare în abandonarea privilegiilor (%s)\n" + #, c-format msgid "%s: cannot create directory %s\n" msgstr "%s: nu pot crea directorul %s\n" @@ -2102,6 +2171,14 @@ msgstr "%s: nu pot crea directorul %s\n" msgid "%s: can't create group\n" msgstr "%s: nu pot crea %s\n" +#, fuzzy, c-format +msgid "%s: can't create subordinate user IDs\n" +msgstr "%s: nu pot crea %s\n" + +#, fuzzy, c-format +msgid "%s: can't create subordinate group IDs\n" +msgstr "%s: nu pot crea %s\n" + #, c-format msgid "" "%s: warning: the home directory already exists.\n" @@ -2143,6 +2220,11 @@ msgid "%s: group %s is the primary group of another user and is not removed.\n" msgstr "" "%s: Nu pot şterge grupul %s care este un grup primar pentru alt utilizator.\n" +#, fuzzy, c-format +#| msgid "%s: cannot rename directory %s to %s\n" +msgid "%s: cannot remove entry %lu from %s\n" +msgstr "%s: nu pot redenumi directorul %s în %s\n" + #, fuzzy, c-format #| msgid "%s: invalid home directory '%s'\n" msgid "%s: %s mail spool (%s) not found\n" @@ -2252,6 +2334,18 @@ msgstr "" msgid " -U, --unlock unlock the user account\n" msgstr "" +msgid " -v, --add-subuids FIRST-LAST add range of subordinate uids\n" +msgstr "" + +msgid " -V, --del-subuids FIRST-LAST remove range of subordinate uids\n" +msgstr "" + +msgid " -w, --add-subgids FIRST-LAST add range of subordinate gids\n" +msgstr "" + +msgid " -W, --del-subgids FIRST-LAST remove range of subordinate gids\n" +msgstr "" + msgid "" " -Z, --selinux-user SEUSER new SELinux user mapping for the user " "account\n" @@ -2268,6 +2362,16 @@ msgstr "" msgid "%s: user '%s' already exists in %s\n" msgstr "%s: utilizatorul %s există\n" +#, fuzzy, c-format +#| msgid "%s: invalid date '%s'\n" +msgid "%s: invalid subordinate uid range '%s'\n" +msgstr "%s: dată nevalidă '%s'\n" + +#, fuzzy, c-format +#| msgid "%s: invalid date '%s'\n" +msgid "%s: invalid subordinate gid range '%s'\n" +msgstr "%s: dată nevalidă '%s'\n" + #, fuzzy, c-format #| msgid "%s: cannot open file %s\n" msgid "%s: no options\n" @@ -2285,6 +2389,10 @@ msgstr "%s: sunt necesare parole criptate pentru -e şi -f\n" msgid "%s: UID '%lu' already exists\n" msgstr "" +#, c-format +msgid "%s: %s does not exist, you cannot use the flags %s or %s\n" +msgstr "" + #, c-format msgid "%s: directory %s exists\n" msgstr "%s: directorul %s există\n" @@ -2327,6 +2435,26 @@ msgstr "eşuare în schimbarea proprietarului căsuţei poştale" msgid "failed to rename mailbox" msgstr "eşuare în redenumirea căsuţei poştale" +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to remove uid range %lu-%lu from '%s'\n" +msgstr "%s : eşuare în abandonarea privilegiilor (%s)\n" + +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to add uid range %lu-%lu from '%s'\n" +msgstr "%s : eşuare în abandonarea privilegiilor (%s)\n" + +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to remove gid range %lu-%lu from '%s'\n" +msgstr "%s : eşuare în abandonarea privilegiilor (%s)\n" + +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to add gid range %lu-%lu from '%s'\n" +msgstr "%s : eşuare în abandonarea privilegiilor (%s)\n" + #, c-format msgid "" "You have modified %s.\n" @@ -2389,6 +2517,20 @@ msgstr "N-am putut încuia fişierul" msgid "Couldn't make backup" msgstr "N-am putut face o copie de rezervă" +#, fuzzy, c-format +#| msgid "%s: %s\n" +msgid "%s: %s: %s\n" +msgstr "%s: %s\n" + +#, fuzzy, c-format +#| msgid "%s: %s not found in /etc/passwd\n" +msgid "%s: %s returned with status %d\n" +msgstr "%s: %s negăsit în /etc/passwd\n" + +#, c-format +msgid "%s: %s killed by signal %d\n" +msgstr "" + #, fuzzy msgid "failed to open scratch file" msgstr "%s: nu pot deschide fişierul de grupuri\n" @@ -3031,9 +3173,6 @@ msgstr "%s: director de bază nevalid '%s'\n" #~ msgid "%s: can't rewrite password file\n" #~ msgstr "%s: nu pot rescrie fişierul passwd\n" -#~ msgid "%s: can't update password file\n" -#~ msgstr "%s: nu pot actualiza fişierul passwd\n" - #~ msgid "%s: can't update shadow password file\n" #~ msgstr "%s: nu pot actualiza fişierul shadow\n" @@ -3055,9 +3194,6 @@ msgstr "%s: director de bază nevalid '%s'\n" #~ msgid "Cannot open the password file.\n" #~ msgstr "Nu pot deschide fişierul passwd.\n" -#~ msgid "%s: %s not found in /etc/passwd\n" -#~ msgstr "%s: %s negăsit în /etc/passwd\n" - #~ msgid "Error updating the password entry.\n" #~ msgstr "Eroare la actualizarea intrării în passwd.\n" @@ -3250,9 +3386,6 @@ msgstr "%s: director de bază nevalid '%s'\n" #~ msgid "%s: can't update shadow group file\n" #~ msgstr "%s: nu pot actualiza fişierul gshadow\n" -#~ msgid "%s: can't update group file\n" -#~ msgstr "%s: nu pot actualiza fişierul de grupuri\n" - #~ msgid "%s: can't delete shadow group file\n" #~ msgstr "%s: nu pot şterge fişierul gshadow\n" diff --git a/po/ru.gmo b/po/ru.gmo new file mode 100644 index 0000000000000000000000000000000000000000..2100eea8d71abb0a14e675ff0a12edda49fe8803 GIT binary patch literal 88101 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 EUml~gfdBvi literal 0 HcmV?d00001 diff --git a/po/ru.po b/po/ru.po index cafaf117..11b8315c 100644 --- a/po/ru.po +++ b/po/ru.po @@ -10,7 +10,7 @@ msgid "" msgstr "" "Project-Id-Version: shadow 4.1.5.1-1\n" "Report-Msgid-Bugs-To: pkg-shadow-devel@lists.alioth.debian.org\n" -"POT-Creation-Date: 2012-05-20 19:52+0200\n" +"POT-Creation-Date: 2016-09-18 21:41-0500\n" "PO-Revision-Date: 2013-07-29 10:42+0400\n" "Last-Translator: Yuri Kozlov \n" "Language-Team: Russian \n" @@ -436,6 +436,11 @@ msgstr "%s: некорректное значение пути chroot «%s»\n" msgid "%s: cannot access chroot directory %s: %s\n" msgstr "%s: нет доступа к каталогу chroot %s: %s\n" +#, fuzzy, c-format +#| msgid "%s: cannot access chroot directory %s: %s\n" +msgid "%s: cannot chdir to chroot directory %s: %s\n" +msgstr "%s: нет доступа к каталогу chroot %s: %s\n" + #, c-format msgid "%s: unable to chroot to directory %s: %s\n" msgstr "%s: не удалось выполнить chroot в каталог %s: %s\n" @@ -801,6 +806,11 @@ msgstr "%s: строка %d: слишком длинная строка\n" msgid "%s: line %d: missing new password\n" msgstr "%s: строка %d: отсутствует новый пароль\n" +#, fuzzy, c-format +#| msgid "%s: Failed to write %s: %s\n" +msgid "%s: failed to crypt password with salt '%s': %s\n" +msgstr "%s: не удалось записать %s: %s\n" + #, c-format msgid "%s: line %d: group '%s' does not exist\n" msgstr "%s: строка %d: группа «%s» не существует\n" @@ -1114,6 +1124,15 @@ msgstr "%s: GID «%lu» уже существует\n" msgid "%s: Cannot setup cleanup service.\n" msgstr "%s: не удалось настроить службу очистки.\n" +#, fuzzy +#| msgid "" +#| " -r, --reset reset the counters of login failures\n" +msgid "" +" -f, --force delete group even if it is the primary group " +"of a user\n" +msgstr "" +" -r, --reset сбросить счётчик неудачных попыток входа\n" + #, c-format msgid "%s: cannot remove entry '%s' from %s\n" msgstr "%s: не удалось удалить запись «%s» из %s\n" @@ -1338,6 +1357,26 @@ msgstr "" " -b, --before ДНЕЙ показать записи lastlog за последние ДНЕЙ " "дней\n" +#, fuzzy +#| msgid "" +#| " -a, --all display faillog records for all users\n" +msgid "" +" -C, --clear clear lastlog record of an user (usable only " +"with -u)\n" +msgstr "" +" -a, --all показать записи faillog для всех " +"пользователей\n" + +#, fuzzy +#| msgid "" +#| " -a, --all display faillog records for all users\n" +msgid "" +" -S, --set set lastlog record to current time (usable " +"only with -u)\n" +msgstr "" +" -a, --all показать записи faillog для всех " +"пользователей\n" + msgid "" " -t, --time DAYS print only lastlog records more recent than " "DAYS\n" @@ -1360,6 +1399,24 @@ msgstr "Пользователь Порт Последний ра msgid "**Never logged in**" msgstr "**Никогда не входил в систему**" +#, fuzzy, c-format +#| msgid "%s: Failed to get the entry for UID %lu\n" +msgid "%s: Failed to update the entry for UID %lu\n" +msgstr "%s: не удалось получить запись для UID %lu\n" + +#, fuzzy, c-format +#| msgid "%s: failed to reset the lastlog entry of UID %lu: %s\n" +msgid "%s: Failed to update the lastlog file\n" +msgstr "%s: не удалось сбросить запись в lastlog для UID %lu: %s\n" + +#, c-format +msgid "%s: Option -C cannot be used together with option -S\n" +msgstr "" + +#, c-format +msgid "%s: Options -C and -S require option -u to specify the user\n" +msgstr "" + #, c-format msgid "Usage: %s [-p] [name]\n" msgstr "Использование: %s [-p] [имя пользователя]\n" @@ -1393,14 +1450,6 @@ msgstr "" "\n" "[Отключение не выполнено — вход в систему для суперпользователя разрешён.]" -#, c-format -msgid "" -"\n" -"Login timed out after %u seconds.\n" -msgstr "" -"\n" -"Время выполнения входа в систему истекло (%u секунд).\n" - #, c-format msgid "%s: Cannot possibly work without effective root\n" msgstr "%s: невозможно выполнить без прав суперпользователя\n" @@ -1409,6 +1458,14 @@ msgid "No utmp entry. You must exec \"login\" from the lowest level \"sh\"" msgstr "" "Нет записи в utmp. Вы должны запускать «login» из самого первого уровня «sh»" +#, c-format +msgid "" +"\n" +"Login timed out after %u seconds.\n" +msgstr "" +"\n" +"Время выполнения входа в систему истекло (%u секунд).\n" + #, c-format msgid "login: PAM Failure, aborting: %s\n" msgstr "login: ошибка PAM, аварийное завершение работы: %s\n" @@ -1482,6 +1539,11 @@ msgstr "Использование: newgrp [-] [группа]\n" msgid "Usage: sg group [[-c] command]\n" msgstr "Использование: sg группа [[-c] команда]\n" +#, fuzzy, c-format +#| msgid "%s: Failed to write %s: %s\n" +msgid "%s: failed to crypt password with previous salt: %s\n" +msgstr "%s: не удалось записать %s: %s\n" + msgid "Invalid password.\n" msgstr "Неправильный пароль.\n" @@ -1550,6 +1612,21 @@ msgstr "%s: строка %d: вызов chown %s завершился неуда msgid "%s: line %d: can't update entry\n" msgstr "%s: строка %d: не удалось обновить запись\n" +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to prepare new %s entry\n" +msgstr "%s: не удалось подготовить новую %s запись «%s»\n" + +#, fuzzy, c-format +#| msgid "%s: can't create user\n" +msgid "%s: can't find subordinate user range\n" +msgstr "%s: не удалось создать пользователя\n" + +#, fuzzy, c-format +#| msgid "%s: can't create group\n" +msgid "%s: can't find subordinate group range\n" +msgstr "%s: не удалось создать группу\n" + msgid "" " -a, --all report password status on all accounts\n" msgstr "" @@ -1821,12 +1898,6 @@ msgstr "Проверка подлинности по паролю пропуще msgid "Please enter your OWN password as authentication.\n" msgstr "Введите ваш СОБСТВЕННЫЙ пароль для аутентификации.\n" -msgid " ...killed.\n" -msgstr " … завершён.\n" - -msgid " ...waiting for child to terminate.\n" -msgstr " … ожидает завершения потомка.\n" - #, c-format msgid "%s: Cannot fork user shell\n" msgstr "%s: невозможно выполнить fork пользовательской оболочки\n" @@ -1843,12 +1914,20 @@ msgid "Session terminated, terminating shell..." msgstr "Сеанс завершён, выполняется завершение оболочки…" #, c-format -msgid "%s: %s\n" -msgstr "%s: %s\n" +msgid " ...killed.\n" +msgstr " … завершён.\n" + +#, c-format +msgid " ...waiting for child to terminate.\n" +msgstr " … ожидает завершения потомка.\n" msgid " ...terminated.\n" msgstr " … завершён.\n" +#, c-format +msgid "%s: %s\n" +msgstr "%s: %s\n" + msgid "" "Usage: su [options] [LOGIN]\n" "\n" @@ -2142,6 +2221,11 @@ msgstr "%s: не удалось сбросить запись в faillog для msgid "%s: failed to reset the lastlog entry of UID %lu: %s\n" msgstr "%s: не удалось сбросить запись в lastlog для UID %lu: %s\n" +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to prepare the new %s entry\n" +msgstr "%s: не удалось подготовить новую %s запись «%s»\n" + #, c-format msgid "%s: cannot create directory %s\n" msgstr "%s: не удалось создать каталог %s\n" @@ -2185,6 +2269,16 @@ msgstr "%s: не удалось создать tcb-каталог для %s\n" msgid "%s: can't create group\n" msgstr "%s: не удалось создать группу\n" +#, fuzzy, c-format +#| msgid "%s: can't create user\n" +msgid "%s: can't create subordinate user IDs\n" +msgstr "%s: не удалось создать пользователя\n" + +#, fuzzy, c-format +#| msgid "%s: can't create group\n" +msgid "%s: can't create subordinate group IDs\n" +msgstr "%s: не удалось создать группу\n" + #, c-format msgid "" "%s: warning: the home directory already exists.\n" @@ -2233,6 +2327,11 @@ msgstr "" "%s: группа %s является первичной для другого пользователя и не может быть " "удалена.\n" +#, fuzzy, c-format +#| msgid "%s: cannot remove entry '%s' from %s\n" +msgid "%s: cannot remove entry %lu from %s\n" +msgstr "%s: не удалось удалить запись «%s» из %s\n" + #, c-format msgid "%s: %s mail spool (%s) not found\n" msgstr "%s: почтовый ящик %s (%s) не найден\n" @@ -2354,6 +2453,18 @@ msgstr " -u, --uid UID новый UID для учётной з msgid " -U, --unlock unlock the user account\n" msgstr " -U, --unlock разблокировать учётную запись\n" +msgid " -v, --add-subuids FIRST-LAST add range of subordinate uids\n" +msgstr "" + +msgid " -V, --del-subuids FIRST-LAST remove range of subordinate uids\n" +msgstr "" + +msgid " -w, --add-subgids FIRST-LAST add range of subordinate gids\n" +msgstr "" + +msgid " -W, --del-subgids FIRST-LAST remove range of subordinate gids\n" +msgstr "" + msgid "" " -Z, --selinux-user SEUSER new SELinux user mapping for the user " "account\n" @@ -2374,6 +2485,16 @@ msgstr "" msgid "%s: user '%s' already exists in %s\n" msgstr "%s: пользователь «%s» уже существует в %s\n" +#, fuzzy, c-format +#| msgid "%s: invalid date '%s'\n" +msgid "%s: invalid subordinate uid range '%s'\n" +msgstr "%s: неверная дата «%s»\n" + +#, fuzzy, c-format +#| msgid "%s: invalid date '%s'\n" +msgid "%s: invalid subordinate gid range '%s'\n" +msgstr "%s: неверная дата «%s»\n" + #, c-format msgid "%s: no options\n" msgstr "%s: не указаны параметры\n" @@ -2391,6 +2512,11 @@ msgstr "" msgid "%s: UID '%lu' already exists\n" msgstr "%s: UID «%lu» уже существует\n" +#, fuzzy, c-format +#| msgid "%s: %s is not authorized to change the password of %s\n" +msgid "%s: %s does not exist, you cannot use the flags %s or %s\n" +msgstr "%s: у %s нет прав изменять пароль %s\n" + #, c-format msgid "%s: directory %s exists\n" msgstr "%s: каталог %s существует\n" @@ -2438,6 +2564,26 @@ msgstr "не удалось сменить владельца почтового msgid "failed to rename mailbox" msgstr "не удалось переименовать почтовый ящик" +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to remove uid range %lu-%lu from '%s'\n" +msgstr "%s: не удалось подготовить новую %s запись «%s»\n" + +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to add uid range %lu-%lu from '%s'\n" +msgstr "%s: не удалось подготовить новую %s запись «%s»\n" + +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to remove gid range %lu-%lu from '%s'\n" +msgstr "%s: не удалось подготовить новую %s запись «%s»\n" + +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to add gid range %lu-%lu from '%s'\n" +msgstr "%s: не удалось подготовить новую %s запись «%s»\n" + #, c-format msgid "" "You have modified %s.\n" @@ -2494,6 +2640,20 @@ msgstr "Не удалось заблокировать файл" msgid "Couldn't make backup" msgstr "Не удалось создать резервную копию" +#, fuzzy, c-format +#| msgid "%s: PAM: %s\n" +msgid "%s: %s: %s\n" +msgstr "%s: PAM: %s\n" + +#, fuzzy, c-format +#| msgid "%s: nscd exited with status %d\n" +msgid "%s: %s returned with status %d\n" +msgstr "%s: nscd завершился с кодом выхода %d\n" + +#, c-format +msgid "%s: %s killed by signal %d\n" +msgstr "" + msgid "failed to open scratch file" msgstr "не удалось открыть черновой файл" diff --git a/po/shadow.pot b/po/shadow.pot index 4ec9169b..0a6bf2e3 100644 --- a/po/shadow.pot +++ b/po/shadow.pot @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: pkg-shadow-devel@lists.alioth.debian.org\n" -"POT-Creation-Date: 2012-05-20 19:52+0200\n" +"POT-Creation-Date: 2016-09-18 21:41-0500\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -408,6 +408,10 @@ msgstr "" msgid "%s: cannot access chroot directory %s: %s\n" msgstr "" +#, c-format +msgid "%s: cannot chdir to chroot directory %s: %s\n" +msgstr "" + #, c-format msgid "%s: unable to chroot to directory %s: %s\n" msgstr "" @@ -737,6 +741,10 @@ msgstr "" msgid "%s: line %d: missing new password\n" msgstr "" +#, c-format +msgid "%s: failed to crypt password with salt '%s': %s\n" +msgstr "" + #, c-format msgid "%s: line %d: group '%s' does not exist\n" msgstr "" @@ -1007,6 +1015,11 @@ msgstr "" msgid "%s: Cannot setup cleanup service.\n" msgstr "" +msgid "" +" -f, --force delete group even if it is the primary group " +"of a user\n" +msgstr "" + #, c-format msgid "%s: cannot remove entry '%s' from %s\n" msgstr "" @@ -1212,6 +1225,16 @@ msgid "" " -b, --before DAYS print only lastlog records older than DAYS\n" msgstr "" +msgid "" +" -C, --clear clear lastlog record of an user (usable only " +"with -u)\n" +msgstr "" + +msgid "" +" -S, --set set lastlog record to current time (usable " +"only with -u)\n" +msgstr "" + msgid "" " -t, --time DAYS print only lastlog records more recent than " "DAYS\n" @@ -1230,6 +1253,22 @@ msgstr "" msgid "**Never logged in**" msgstr "" +#, c-format +msgid "%s: Failed to update the entry for UID %lu\n" +msgstr "" + +#, c-format +msgid "%s: Failed to update the lastlog file\n" +msgstr "" + +#, c-format +msgid "%s: Option -C cannot be used together with option -S\n" +msgstr "" + +#, c-format +msgid "%s: Options -C and -S require option -u to specify the user\n" +msgstr "" + #, c-format msgid "Usage: %s [-p] [name]\n" msgstr "" @@ -1259,12 +1298,6 @@ msgid "" "[Disconnect bypassed -- root login allowed.]" msgstr "" -#, c-format -msgid "" -"\n" -"Login timed out after %u seconds.\n" -msgstr "" - #, c-format msgid "%s: Cannot possibly work without effective root\n" msgstr "" @@ -1272,6 +1305,12 @@ msgstr "" msgid "No utmp entry. You must exec \"login\" from the lowest level \"sh\"" msgstr "" +#, c-format +msgid "" +"\n" +"Login timed out after %u seconds.\n" +msgstr "" + #, c-format msgid "login: PAM Failure, aborting: %s\n" msgstr "" @@ -1340,6 +1379,10 @@ msgstr "" msgid "Usage: sg group [[-c] command]\n" msgstr "" +#, c-format +msgid "%s: failed to crypt password with previous salt: %s\n" +msgstr "" + msgid "Invalid password.\n" msgstr "" @@ -1405,6 +1448,18 @@ msgstr "" msgid "%s: line %d: can't update entry\n" msgstr "" +#, c-format +msgid "%s: failed to prepare new %s entry\n" +msgstr "" + +#, c-format +msgid "%s: can't find subordinate user range\n" +msgstr "" + +#, c-format +msgid "%s: can't find subordinate group range\n" +msgstr "" + msgid "" " -a, --all report password status on all accounts\n" msgstr "" @@ -1638,12 +1693,6 @@ msgstr "" msgid "Please enter your OWN password as authentication.\n" msgstr "" -msgid " ...killed.\n" -msgstr "" - -msgid " ...waiting for child to terminate.\n" -msgstr "" - #, c-format msgid "%s: Cannot fork user shell\n" msgstr "" @@ -1660,12 +1709,20 @@ msgid "Session terminated, terminating shell..." msgstr "" #, c-format -msgid "%s: %s\n" +msgid " ...killed.\n" +msgstr "" + +#, c-format +msgid " ...waiting for child to terminate.\n" msgstr "" msgid " ...terminated.\n" msgstr "" +#, c-format +msgid "%s: %s\n" +msgstr "" + msgid "" "Usage: su [options] [LOGIN]\n" "\n" @@ -1904,6 +1961,10 @@ msgstr "" msgid "%s: failed to reset the lastlog entry of UID %lu: %s\n" msgstr "" +#, c-format +msgid "%s: failed to prepare the new %s entry\n" +msgstr "" + #, c-format msgid "%s: cannot create directory %s\n" msgstr "" @@ -1943,6 +2004,14 @@ msgstr "" msgid "%s: can't create group\n" msgstr "" +#, c-format +msgid "%s: can't create subordinate user IDs\n" +msgstr "" + +#, c-format +msgid "%s: can't create subordinate group IDs\n" +msgstr "" + #, c-format msgid "" "%s: warning: the home directory already exists.\n" @@ -1979,6 +2048,10 @@ msgstr "" msgid "%s: group %s is the primary group of another user and is not removed.\n" msgstr "" +#, c-format +msgid "%s: cannot remove entry %lu from %s\n" +msgstr "" + #, c-format msgid "%s: %s mail spool (%s) not found\n" msgstr "" @@ -2080,6 +2153,18 @@ msgstr "" msgid " -U, --unlock unlock the user account\n" msgstr "" +msgid " -v, --add-subuids FIRST-LAST add range of subordinate uids\n" +msgstr "" + +msgid " -V, --del-subuids FIRST-LAST remove range of subordinate uids\n" +msgstr "" + +msgid " -w, --add-subgids FIRST-LAST add range of subordinate gids\n" +msgstr "" + +msgid " -W, --del-subgids FIRST-LAST remove range of subordinate gids\n" +msgstr "" + msgid "" " -Z, --selinux-user SEUSER new SELinux user mapping for the user " "account\n" @@ -2095,6 +2180,14 @@ msgstr "" msgid "%s: user '%s' already exists in %s\n" msgstr "" +#, c-format +msgid "%s: invalid subordinate uid range '%s'\n" +msgstr "" + +#, c-format +msgid "%s: invalid subordinate gid range '%s'\n" +msgstr "" + #, c-format msgid "%s: no options\n" msgstr "" @@ -2111,6 +2204,10 @@ msgstr "" msgid "%s: UID '%lu' already exists\n" msgstr "" +#, c-format +msgid "%s: %s does not exist, you cannot use the flags %s or %s\n" +msgstr "" + #, c-format msgid "%s: directory %s exists\n" msgstr "" @@ -2151,6 +2248,22 @@ msgstr "" msgid "failed to rename mailbox" msgstr "" +#, c-format +msgid "%s: failed to remove uid range %lu-%lu from '%s'\n" +msgstr "" + +#, c-format +msgid "%s: failed to add uid range %lu-%lu from '%s'\n" +msgstr "" + +#, c-format +msgid "%s: failed to remove gid range %lu-%lu from '%s'\n" +msgstr "" + +#, c-format +msgid "%s: failed to add gid range %lu-%lu from '%s'\n" +msgstr "" + #, c-format msgid "" "You have modified %s.\n" @@ -2199,6 +2312,18 @@ msgstr "" msgid "Couldn't make backup" msgstr "" +#, c-format +msgid "%s: %s: %s\n" +msgstr "" + +#, c-format +msgid "%s: %s returned with status %d\n" +msgstr "" + +#, c-format +msgid "%s: %s killed by signal %d\n" +msgstr "" + msgid "failed to open scratch file" msgstr "" diff --git a/po/sk.gmo b/po/sk.gmo new file mode 100644 index 0000000000000000000000000000000000000000..1e30a87e9213def1ba886064f2f124fce3984123 GIT binary patch literal 45486 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 literal 0 HcmV?d00001 diff --git a/po/sk.po b/po/sk.po index 8022544d..1465ac6e 100644 --- a/po/sk.po +++ b/po/sk.po @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: shadow 4.0.17\n" "Report-Msgid-Bugs-To: pkg-shadow-devel@lists.alioth.debian.org\n" -"POT-Creation-Date: 2012-05-20 19:52+0200\n" +"POT-Creation-Date: 2016-09-18 21:41-0500\n" "PO-Revision-Date: 2011-11-26 22:06+0100\n" "Last-Translator: Ivan Masár \n" "Language-Team: Slovak \n" @@ -441,6 +441,11 @@ msgstr "%s: chybné telefónne číslo domov: „%s“\n" msgid "%s: cannot access chroot directory %s: %s\n" msgstr "%s: nedá sa vytvoriť adresár %s\n" +#, fuzzy, c-format +#| msgid "%s: cannot create directory %s\n" +msgid "%s: cannot chdir to chroot directory %s: %s\n" +msgstr "%s: nedá sa vytvoriť adresár %s\n" + #, fuzzy, c-format #| msgid "%s: cannot create directory %s\n" msgid "%s: unable to chroot to directory %s: %s\n" @@ -800,6 +805,11 @@ msgstr "%s: riadok %d je príliš dlhý\n" msgid "%s: line %d: missing new password\n" msgstr "%s: riadok %d: chýba nové heslo\n" +#, fuzzy, c-format +#| msgid "%s: failed to remove %s\n" +msgid "%s: failed to crypt password with salt '%s': %s\n" +msgstr "%s: zlyhalo odstránenie %s\n" + #, c-format msgid "%s: line %d: group '%s' does not exist\n" msgstr "%s: riadok %d: skupina „%s“ neexistuje\n" @@ -1105,6 +1115,15 @@ msgstr "%s: GID „%lu“ už existuje\n" msgid "%s: Cannot setup cleanup service.\n" msgstr "%s: vaše používateľské meno sa nedá zistiť.\n" +#, fuzzy +#| msgid "" +#| " -r, --reset reset the counters of login failures\n" +msgid "" +" -f, --force delete group even if it is the primary group " +"of a user\n" +msgstr "" +" -r, --reset vynuluje počítadlá chybných prihlásení\n" + #, c-format msgid "%s: cannot remove entry '%s' from %s\n" msgstr "%s: nie je možné odstrániť položku „%s“ z %s\n" @@ -1323,6 +1342,26 @@ msgid "" " -b, --before DAYS print only lastlog records older than DAYS\n" msgstr "" +#, fuzzy +#| msgid "" +#| " -a, --all display faillog records for all users\n" +msgid "" +" -C, --clear clear lastlog record of an user (usable only " +"with -u)\n" +msgstr "" +" -a, --all zobrazí faillog záznamy všetkých " +"používateľov\n" + +#, fuzzy +#| msgid "" +#| " -a, --all display faillog records for all users\n" +msgid "" +" -S, --set set lastlog record to current time (usable " +"only with -u)\n" +msgstr "" +" -a, --all zobrazí faillog záznamy všetkých " +"používateľov\n" + msgid "" " -t, --time DAYS print only lastlog records more recent than " "DAYS\n" @@ -1341,6 +1380,24 @@ msgstr "Používateľ Port Naposledy" msgid "**Never logged in**" msgstr "**Nebol nikdy prihlásený**" +#, fuzzy, c-format +#| msgid "%s: Failed to get the entry for UID %lu\n" +msgid "%s: Failed to update the entry for UID %lu\n" +msgstr "%s: Nepodarilo sa získať položku s UID %lu\n" + +#, fuzzy, c-format +#| msgid "%s: can't update password file\n" +msgid "%s: Failed to update the lastlog file\n" +msgstr "%s: súbor s heslami sa nedá aktualizovaťt\n" + +#, c-format +msgid "%s: Option -C cannot be used together with option -S\n" +msgstr "" + +#, c-format +msgid "%s: Options -C and -S require option -u to specify the user\n" +msgstr "" + #, c-format msgid "Usage: %s [-p] [name]\n" msgstr "Použitie: %s [-p] [meno]\n" @@ -1374,6 +1431,13 @@ msgstr "" "\n" "[Odpojenie vynechané -- používateľ root sa môže prihlásiť.]" +#, c-format +msgid "%s: Cannot possibly work without effective root\n" +msgstr "" + +msgid "No utmp entry. You must exec \"login\" from the lowest level \"sh\"" +msgstr "Žiaden utmp záznam. Musíte spustiť „login“ z najnižšej inštancie „sh“" + #, c-format msgid "" "\n" @@ -1382,13 +1446,6 @@ msgstr "" "\n" "Uplynul časový limit (%u sekúnd) na prihlásenie.\n" -#, c-format -msgid "%s: Cannot possibly work without effective root\n" -msgstr "" - -msgid "No utmp entry. You must exec \"login\" from the lowest level \"sh\"" -msgstr "Žiaden utmp záznam. Musíte spustiť „login“ z najnižšej inštancie „sh“" - #, c-format msgid "login: PAM Failure, aborting: %s\n" msgstr "prihlásenie: Chyba PAM, ukončuje sa: %s\n" @@ -1462,6 +1519,11 @@ msgstr "Použitie: newgrp [-] [skupina]\n" msgid "Usage: sg group [[-c] command]\n" msgstr "Použitie: sg skupina [[-c] príkaz]\n" +#, fuzzy, c-format +#| msgid "%s: failed to remove %s\n" +msgid "%s: failed to crypt password with previous salt: %s\n" +msgstr "%s: zlyhalo odstránenie %s\n" + msgid "Invalid password.\n" msgstr "Neplatné heslo.\n" @@ -1530,6 +1592,21 @@ msgstr "%s: riadok %d: volanie chown zlyhalo\n" msgid "%s: line %d: can't update entry\n" msgstr "%s: riadok %d: položka sa nedá aktualizovať\n" +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to prepare new %s entry\n" +msgstr "%s: zlyhalo pripravenie novej položky %s „%s“\n" + +#, fuzzy, c-format +#| msgid "%s: can't create user\n" +msgid "%s: can't find subordinate user range\n" +msgstr "%s: nie je možné vytvoriť používateľa\n" + +#, fuzzy, c-format +#| msgid "%s: can't update group file\n" +msgid "%s: can't find subordinate group range\n" +msgstr "%s: súbor s heslami sa nedá aktualizovať\n" + msgid "" " -a, --all report password status on all accounts\n" msgstr " -a, --all zobrazí stav hesiel pre všetky účty\n" @@ -1794,12 +1871,6 @@ msgstr "Overenie hesla vynechané.\n" msgid "Please enter your OWN password as authentication.\n" msgstr "Pre overenie zadajte VAŠE vlastné heslo.\n" -msgid " ...killed.\n" -msgstr "" - -msgid " ...waiting for child to terminate.\n" -msgstr "" - #, fuzzy, c-format #| msgid "%s: cannot lock file %s\n" msgid "%s: Cannot fork user shell\n" @@ -1817,12 +1888,20 @@ msgid "Session terminated, terminating shell..." msgstr "" #, c-format -msgid "%s: %s\n" -msgstr "%s: %s\n" +msgid " ...killed.\n" +msgstr "" + +#, c-format +msgid " ...waiting for child to terminate.\n" +msgstr "" msgid " ...terminated.\n" msgstr "" +#, c-format +msgid "%s: %s\n" +msgstr "%s: %s\n" + msgid "" "Usage: su [options] [LOGIN]\n" "\n" @@ -2091,6 +2170,11 @@ msgstr "%s: Nepodarilo sa obnoviť položku faillog s UID %lu: %s\n" msgid "%s: failed to reset the lastlog entry of UID %lu: %s\n" msgstr "%s: Nepodarilo sa obnoviť položku lastlog s UID %lu: %s\n" +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to prepare the new %s entry\n" +msgstr "%s: zlyhalo pripravenie novej položky %s „%s“\n" + #, c-format msgid "%s: cannot create directory %s\n" msgstr "%s: nedá sa vytvoriť adresár %s\n" @@ -2135,6 +2219,16 @@ msgstr "%s: nedá sa vytvoriť adresár %s\n" msgid "%s: can't create group\n" msgstr "%s: sa nedá vytvoriť skupina\n" +#, fuzzy, c-format +#| msgid "%s: can't create user\n" +msgid "%s: can't create subordinate user IDs\n" +msgstr "%s: nie je možné vytvoriť používateľa\n" + +#, fuzzy, c-format +#| msgid "%s: can't create group\n" +msgid "%s: can't create subordinate group IDs\n" +msgstr "%s: sa nedá vytvoriť skupina\n" + #, c-format msgid "" "%s: warning: the home directory already exists.\n" @@ -2179,6 +2273,11 @@ msgstr "" "%s: skupina %s sa nedá odstrániť, pretože je primárnou skupinou iného " "používateľa.\n" +#, fuzzy, c-format +#| msgid "%s: cannot remove entry '%s' from %s\n" +msgid "%s: cannot remove entry %lu from %s\n" +msgstr "%s: nie je možné odstrániť položku „%s“ z %s\n" + #, fuzzy, c-format #| msgid "%s: invalid home directory '%s'\n" msgid "%s: %s mail spool (%s) not found\n" @@ -2301,6 +2400,18 @@ msgstr " -u, --uid UID nový UID pre používateľský účet\n msgid " -U, --unlock unlock the user account\n" msgstr " -U, --unlock odblokuje používateľský účet\n" +msgid " -v, --add-subuids FIRST-LAST add range of subordinate uids\n" +msgstr "" + +msgid " -V, --del-subuids FIRST-LAST remove range of subordinate uids\n" +msgstr "" + +msgid " -w, --add-subgids FIRST-LAST add range of subordinate gids\n" +msgstr "" + +msgid " -W, --del-subgids FIRST-LAST remove range of subordinate gids\n" +msgstr "" + #, fuzzy #| msgid "" #| " -d, --home HOME_DIR new home directory for the user account\n" @@ -2324,6 +2435,16 @@ msgstr "" msgid "%s: user '%s' already exists in %s\n" msgstr "%s: používateľ %s už existuje v %s\n" +#, fuzzy, c-format +#| msgid "%s: invalid date '%s'\n" +msgid "%s: invalid subordinate uid range '%s'\n" +msgstr "%s: chybný dátum „%s“\n" + +#, fuzzy, c-format +#| msgid "%s: invalid date '%s'\n" +msgid "%s: invalid subordinate gid range '%s'\n" +msgstr "%s: chybný dátum „%s“\n" + #, fuzzy, c-format #| msgid "%s: cannot open %s\n" msgid "%s: no options\n" @@ -2341,6 +2462,11 @@ msgstr "%s: prepínače -e a -f vyžadujú tieňové heslá\n" msgid "%s: UID '%lu' already exists\n" msgstr "%s: UID „%lu“ už existuje\n" +#, fuzzy, c-format +#| msgid "%s: %s is not authorized to change the password of %s\n" +msgid "%s: %s does not exist, you cannot use the flags %s or %s\n" +msgstr "%s: %s nemá oprávnenie zmeniť heslo %s\n" + #, c-format msgid "%s: directory %s exists\n" msgstr "%s: adresár %s už existuje\n" @@ -2387,6 +2513,26 @@ msgstr "chyba pri zmene vlastníka schránky" msgid "failed to rename mailbox" msgstr "chyba pri premenovaní schránky" +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to remove uid range %lu-%lu from '%s'\n" +msgstr "%s: zlyhalo pripravenie novej položky %s „%s“\n" + +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to add uid range %lu-%lu from '%s'\n" +msgstr "%s: zlyhalo pripravenie novej položky %s „%s“\n" + +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to remove gid range %lu-%lu from '%s'\n" +msgstr "%s: zlyhalo pripravenie novej položky %s „%s“\n" + +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to add gid range %lu-%lu from '%s'\n" +msgstr "%s: zlyhalo pripravenie novej položky %s „%s“\n" + #, c-format msgid "" "You have modified %s.\n" @@ -2444,6 +2590,20 @@ msgstr "Súbor sa nedá zamknúť" msgid "Couldn't make backup" msgstr "Nedá sa vytvoriť záloha" +#, fuzzy, c-format +#| msgid "%s: PAM: %s\n" +msgid "%s: %s: %s\n" +msgstr "%s: PAM: %s\n" + +#, fuzzy, c-format +#| msgid "%s: %s not found in /etc/passwd\n" +msgid "%s: %s returned with status %d\n" +msgstr "%s: %s sa nenachádza v /etc/passwd\n" + +#, c-format +msgid "%s: %s killed by signal %d\n" +msgstr "" + #, fuzzy #| msgid "Unable to open group file\n" msgid "failed to open scratch file" @@ -3221,9 +3381,6 @@ msgstr "%s: chybný základný adresár „%s“\n" #~ msgid "%s: can't rewrite password file\n" #~ msgstr "%s: súbor s heslami sa nedá prepísať\n" -#~ msgid "%s: can't update password file\n" -#~ msgstr "%s: súbor s heslami sa nedá aktualizovaťt\n" - #~ msgid "%s: can't update shadow password file\n" #~ msgstr "%s: súbor s tieňovými heslami sa nedá aktualizovať\n" @@ -3245,9 +3402,6 @@ msgstr "%s: chybný základný adresár „%s“\n" #~ msgid "Cannot open the password file.\n" #~ msgstr "Súbor s heslami sa nedá otvoriť.\n" -#~ msgid "%s: %s not found in /etc/passwd\n" -#~ msgstr "%s: %s sa nenachádza v /etc/passwd\n" - #~ msgid "Error updating the password entry.\n" #~ msgstr "Chyba pri aktualizácii záznamu hesla.\n" @@ -3457,9 +3611,6 @@ msgstr "%s: chybný základný adresár „%s“\n" #~ msgid "%s: can't update shadow group file\n" #~ msgstr "%s: súbor s tieňovými heslami sa nedá aktualizovať\n" -#~ msgid "%s: can't update group file\n" -#~ msgstr "%s: súbor s heslami sa nedá aktualizovať\n" - #~ msgid "%s: can't delete shadow group file\n" #~ msgstr "%s: súbor s tieňovými heslami skupín sa nedá zmazať\n" diff --git a/po/sq.gmo b/po/sq.gmo new file mode 100644 index 0000000000000000000000000000000000000000..f721dbc1c0ef070c8ba8b265ac3efa97a5b093d8 GIT binary patch literal 1068 zcmah{O>fgc5H(P~%#8!zhXI5Dp*40|P;pyC>4#LcQL7S)KwLKQ#@@uYW8@tNX*Jk)6TsY2YM)^sy1GWLjH6oRk<)$*mn|lLQ_DS~=cvVhdf%l3VB~==e)0zsdhLjpzmDZm|D%DqdpvD2ZgV1YT8On7k6=mF#I4GqN zxN!9S&;9=jNlQ|pF}W`SZ^!7K=s32Kusva{)G8*M@k9@3E(n8Je^->+IM%eOOxW`( zwXCIMD*GuLr?Euri~L!RscgV=sa+N%qAj@!v`PJ)?G{@xf;*hdR=E=~HNxmI3!kuP zo*Gd+7qReB7$TAFihWskaGV#;u_$7VkiyxxG5;WpkhjIHV=cp#&Fdw`w3g#8Y7V>Hsr3=CM#Al^2eU}Y| zm2NVc#o9Zfi(?0$iQ&pdi4sBNVizelM;Qa={ CV>!tH literal 0 HcmV?d00001 diff --git a/po/sq.po b/po/sq.po index e3ea7d61..6fe0c87f 100644 --- a/po/sq.po +++ b/po/sq.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: shadow 4.0.3\n" "Report-Msgid-Bugs-To: pkg-shadow-devel@lists.alioth.debian.org\n" -"POT-Creation-Date: 2012-05-20 19:52+0200\n" +"POT-Creation-Date: 2016-09-18 21:41-0500\n" "PO-Revision-Date: 2004-11-20 03:28+0100\n" "Last-Translator: Elian Myftiu \n" "Language-Team: Albanian \n" @@ -410,6 +410,10 @@ msgstr "Kujdes: grup i panjohur %s\n" msgid "%s: cannot access chroot directory %s: %s\n" msgstr "Kujdes: grup i panjohur %s\n" +#, fuzzy, c-format +msgid "%s: cannot chdir to chroot directory %s: %s\n" +msgstr "Kujdes: grup i panjohur %s\n" + #, fuzzy, c-format msgid "%s: unable to chroot to directory %s: %s\n" msgstr "Kujdes: grup i panjohur %s\n" @@ -740,6 +744,10 @@ msgstr "" msgid "%s: line %d: missing new password\n" msgstr "" +#, fuzzy, c-format +msgid "%s: failed to crypt password with salt '%s': %s\n" +msgstr "Kujdes: grup i panjohur %s\n" + #, fuzzy, c-format msgid "%s: line %d: group '%s' does not exist\n" msgstr "Kujdes: grup i panjohur %s\n" @@ -1010,6 +1018,11 @@ msgstr "" msgid "%s: Cannot setup cleanup service.\n" msgstr "Kujdes: grup i panjohur %s\n" +msgid "" +" -f, --force delete group even if it is the primary group " +"of a user\n" +msgstr "" + #, c-format msgid "%s: cannot remove entry '%s' from %s\n" msgstr "" @@ -1216,6 +1229,16 @@ msgid "" " -b, --before DAYS print only lastlog records older than DAYS\n" msgstr "" +msgid "" +" -C, --clear clear lastlog record of an user (usable only " +"with -u)\n" +msgstr "" + +msgid "" +" -S, --set set lastlog record to current time (usable " +"only with -u)\n" +msgstr "" + msgid "" " -t, --time DAYS print only lastlog records more recent than " "DAYS\n" @@ -1234,6 +1257,22 @@ msgstr "" msgid "**Never logged in**" msgstr "" +#, fuzzy, c-format +msgid "%s: Failed to update the entry for UID %lu\n" +msgstr "Kujdes: grup i panjohur %s\n" + +#, fuzzy, c-format +msgid "%s: Failed to update the lastlog file\n" +msgstr "Kujdes: grup i panjohur %s\n" + +#, c-format +msgid "%s: Option -C cannot be used together with option -S\n" +msgstr "" + +#, c-format +msgid "%s: Options -C and -S require option -u to specify the user\n" +msgstr "" + #, c-format msgid "Usage: %s [-p] [name]\n" msgstr "" @@ -1263,12 +1302,6 @@ msgid "" "[Disconnect bypassed -- root login allowed.]" msgstr "" -#, c-format -msgid "" -"\n" -"Login timed out after %u seconds.\n" -msgstr "" - #, c-format msgid "%s: Cannot possibly work without effective root\n" msgstr "" @@ -1276,6 +1309,12 @@ msgstr "" msgid "No utmp entry. You must exec \"login\" from the lowest level \"sh\"" msgstr "" +#, c-format +msgid "" +"\n" +"Login timed out after %u seconds.\n" +msgstr "" + #, c-format msgid "login: PAM Failure, aborting: %s\n" msgstr "" @@ -1344,6 +1383,10 @@ msgstr "" msgid "Usage: sg group [[-c] command]\n" msgstr "" +#, fuzzy, c-format +msgid "%s: failed to crypt password with previous salt: %s\n" +msgstr "Kujdes: grup i panjohur %s\n" + #, fuzzy msgid "Invalid password.\n" msgstr " Zgjidh një fjalëkalim të ri.\n" @@ -1410,6 +1453,18 @@ msgstr "Kujdes: grup i panjohur %s\n" msgid "%s: line %d: can't update entry\n" msgstr "" +#, fuzzy, c-format +msgid "%s: failed to prepare new %s entry\n" +msgstr "Kujdes: grup i panjohur %s\n" + +#, c-format +msgid "%s: can't find subordinate user range\n" +msgstr "" + +#, fuzzy, c-format +msgid "%s: can't find subordinate group range\n" +msgstr "Kujdes: grup i panjohur %s\n" + msgid "" " -a, --all report password status on all accounts\n" msgstr "" @@ -1644,12 +1699,6 @@ msgstr "" msgid "Please enter your OWN password as authentication.\n" msgstr "" -msgid " ...killed.\n" -msgstr "" - -msgid " ...waiting for child to terminate.\n" -msgstr "" - #, fuzzy, c-format msgid "%s: Cannot fork user shell\n" msgstr "Kujdes: grup i panjohur %s\n" @@ -1666,12 +1715,20 @@ msgid "Session terminated, terminating shell..." msgstr "" #, c-format -msgid "%s: %s\n" +msgid " ...killed.\n" +msgstr "" + +#, c-format +msgid " ...waiting for child to terminate.\n" msgstr "" msgid " ...terminated.\n" msgstr "" +#, c-format +msgid "%s: %s\n" +msgstr "" + msgid "" "Usage: su [options] [LOGIN]\n" "\n" @@ -1911,6 +1968,10 @@ msgstr "" msgid "%s: failed to reset the lastlog entry of UID %lu: %s\n" msgstr "" +#, fuzzy, c-format +msgid "%s: failed to prepare the new %s entry\n" +msgstr "Kujdes: grup i panjohur %s\n" + #, c-format msgid "%s: cannot create directory %s\n" msgstr "" @@ -1950,6 +2011,14 @@ msgstr "" msgid "%s: can't create group\n" msgstr "Kujdes: grup i panjohur %s\n" +#, fuzzy, c-format +msgid "%s: can't create subordinate user IDs\n" +msgstr "Kujdes: grup i panjohur %s\n" + +#, fuzzy, c-format +msgid "%s: can't create subordinate group IDs\n" +msgstr "Kujdes: grup i panjohur %s\n" + #, c-format msgid "" "%s: warning: the home directory already exists.\n" @@ -1986,6 +2055,10 @@ msgstr "" msgid "%s: group %s is the primary group of another user and is not removed.\n" msgstr "" +#, fuzzy, c-format +msgid "%s: cannot remove entry %lu from %s\n" +msgstr "Kujdes: grup i panjohur %s\n" + #, c-format msgid "%s: %s mail spool (%s) not found\n" msgstr "" @@ -2087,6 +2160,18 @@ msgstr "" msgid " -U, --unlock unlock the user account\n" msgstr "" +msgid " -v, --add-subuids FIRST-LAST add range of subordinate uids\n" +msgstr "" + +msgid " -V, --del-subuids FIRST-LAST remove range of subordinate uids\n" +msgstr "" + +msgid " -w, --add-subgids FIRST-LAST add range of subordinate gids\n" +msgstr "" + +msgid " -W, --del-subgids FIRST-LAST remove range of subordinate gids\n" +msgstr "" + msgid "" " -Z, --selinux-user SEUSER new SELinux user mapping for the user " "account\n" @@ -2102,6 +2187,14 @@ msgstr "" msgid "%s: user '%s' already exists in %s\n" msgstr "" +#, fuzzy, c-format +msgid "%s: invalid subordinate uid range '%s'\n" +msgstr "Kujdes: grup i panjohur %s\n" + +#, fuzzy, c-format +msgid "%s: invalid subordinate gid range '%s'\n" +msgstr "Kujdes: grup i panjohur %s\n" + #, fuzzy, c-format msgid "%s: no options\n" msgstr "Kujdes: grup i panjohur %s\n" @@ -2118,6 +2211,10 @@ msgstr "" msgid "%s: UID '%lu' already exists\n" msgstr "" +#, c-format +msgid "%s: %s does not exist, you cannot use the flags %s or %s\n" +msgstr "" + #, c-format msgid "%s: directory %s exists\n" msgstr "" @@ -2158,6 +2255,22 @@ msgstr "" msgid "failed to rename mailbox" msgstr "" +#, fuzzy, c-format +msgid "%s: failed to remove uid range %lu-%lu from '%s'\n" +msgstr "Kujdes: grup i panjohur %s\n" + +#, c-format +msgid "%s: failed to add uid range %lu-%lu from '%s'\n" +msgstr "" + +#, fuzzy, c-format +msgid "%s: failed to remove gid range %lu-%lu from '%s'\n" +msgstr "Kujdes: grup i panjohur %s\n" + +#, c-format +msgid "%s: failed to add gid range %lu-%lu from '%s'\n" +msgstr "" + #, c-format msgid "" "You have modified %s.\n" @@ -2206,6 +2319,18 @@ msgstr "" msgid "Couldn't make backup" msgstr "" +#, fuzzy, c-format +msgid "%s: %s: %s\n" +msgstr "Kujdes: grup i panjohur %s\n" + +#, c-format +msgid "%s: %s returned with status %d\n" +msgstr "" + +#, c-format +msgid "%s: %s killed by signal %d\n" +msgstr "" + msgid "failed to open scratch file" msgstr "" diff --git a/po/stamp-po b/po/stamp-po new file mode 100644 index 00000000..9788f702 --- /dev/null +++ b/po/stamp-po @@ -0,0 +1 @@ +timestamp diff --git a/po/stats b/po/stats deleted file mode 100644 index 386d765f..00000000 --- a/po/stats +++ /dev/null @@ -1,20 +0,0 @@ -#!/bin/sh -export LANG=C -echo "language translated fuzzy untranslated" -echo "-----------------------------------------" -for i in $(cat LINGUAS | xargs); do - echo -n " $i " - msgfmt -c --statistics -o /dev/null $i.po 2>&1 | - awk -v LNG="$1" '{ - gsub(/ untranslated/, ""); - gsub(/ translated/, ""); - gsub(/ messages/, ""); - gsub(/ message/, ""); - gsub(/ translations/, ""); - gsub(/ translation/, ""); - gsub(/ fuzzy/, ""); - gsub(/[.,]/, ""); - {printf "%8s %8s %8s\n", $1, $2, $3} - }' -done -echo "-----------------------------------------" diff --git a/po/sv.gmo b/po/sv.gmo new file mode 100644 index 0000000000000000000000000000000000000000..a0fc1a5e45ec56f2dad14868094b9e73ca022aa2 GIT binary patch literal 56876 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 K4ySZw_x}L;>yNqs literal 0 HcmV?d00001 diff --git a/po/sv.po b/po/sv.po index 9da2b2b1..bbf6c992 100644 --- a/po/sv.po +++ b/po/sv.po @@ -7,7 +7,7 @@ msgid "" msgstr "" "Project-Id-Version: shadow 4.1.1\n" "Report-Msgid-Bugs-To: pkg-shadow-devel@lists.alioth.debian.org\n" -"POT-Creation-Date: 2012-05-20 19:52+0200\n" +"POT-Creation-Date: 2016-09-18 21:41-0500\n" "PO-Revision-Date: 2011-11-25 22:08+0100\n" "Last-Translator: Daniel Nylander \n" "Language-Team: Swedish \n" @@ -425,6 +425,11 @@ msgstr "%s: ogiltigt telefonnummer (hem): \"%s\"\n" msgid "%s: cannot access chroot directory %s: %s\n" msgstr "%s: Kan inte skapa katalogen %s: %s\n" +#, fuzzy, c-format +#| msgid "%s: Cannot create directory %s: %s\n" +msgid "%s: cannot chdir to chroot directory %s: %s\n" +msgstr "%s: Kan inte skapa katalogen %s: %s\n" + #, fuzzy, c-format #| msgid "%s: Failed to create tcb directory for %s\n" msgid "%s: unable to chroot to directory %s: %s\n" @@ -789,6 +794,11 @@ msgstr "%s: rad %d: raden för lång\n" msgid "%s: line %d: missing new password\n" msgstr "%s: rad %d: saknar nytt lösenord\n" +#, fuzzy, c-format +#| msgid "%s: failed to remove %s\n" +msgid "%s: failed to crypt password with salt '%s': %s\n" +msgstr "%s: misslyckades med att ta bort %s\n" + #, c-format msgid "%s: line %d: group '%s' does not exist\n" msgstr "%s: rad %d: gruppen \"%s\" finns inte\n" @@ -1087,6 +1097,15 @@ msgstr "%s: GID \"%lu\" finns redan\n" msgid "%s: Cannot setup cleanup service.\n" msgstr "%s: Kan inte fastställa ditt användarnamn.\n" +#, fuzzy +#| msgid "" +#| " -r, --reset reset the counters of login failures\n" +msgid "" +" -f, --force delete group even if it is the primary group " +"of a user\n" +msgstr "" +" -r, --reset nollställd räknarna för inloggningsfel\n" + #, c-format msgid "%s: cannot remove entry '%s' from %s\n" msgstr "%s: kan inte ta bort posten \"%s\" från %s\n" @@ -1317,6 +1336,24 @@ msgstr "" "än\n" " DAGAR\n" +#, fuzzy +#| msgid "" +#| " -a, --all display faillog records for all users\n" +msgid "" +" -C, --clear clear lastlog record of an user (usable only " +"with -u)\n" +msgstr "" +" -a, --all visa faillog-poster för alla användare\n" + +#, fuzzy +#| msgid "" +#| " -a, --all display faillog records for all users\n" +msgid "" +" -S, --set set lastlog record to current time (usable " +"only with -u)\n" +msgstr "" +" -a, --all visa faillog-poster för alla användare\n" + msgid "" " -t, --time DAYS print only lastlog records more recent than " "DAYS\n" @@ -1340,6 +1377,24 @@ msgstr "Användarnamn Port Senast" msgid "**Never logged in**" msgstr "**Aldrig varit inloggad**" +#, fuzzy, c-format +#| msgid "%s: Failed to get the entry for UID %lu\n" +msgid "%s: Failed to update the entry for UID %lu\n" +msgstr "%s: Misslyckades med att få posten för UID %lu\n" + +#, fuzzy, c-format +#| msgid "%s: Failed to get the entry for UID %lu\n" +msgid "%s: Failed to update the lastlog file\n" +msgstr "%s: Misslyckades med att få posten för UID %lu\n" + +#, c-format +msgid "%s: Option -C cannot be used together with option -S\n" +msgstr "" + +#, c-format +msgid "%s: Options -C and -S require option -u to specify the user\n" +msgstr "" + #, c-format msgid "Usage: %s [-p] [name]\n" msgstr "Användning: %s [-p] [namn]\n" @@ -1373,6 +1428,13 @@ msgstr "" "\n" "[Nedkoppling kringgådd -- rootinloggning tillåten.]" +#, c-format +msgid "%s: Cannot possibly work without effective root\n" +msgstr "%s: Kan inte fungera utan en användbar root\n" + +msgid "No utmp entry. You must exec \"login\" from the lowest level \"sh\"" +msgstr "Ingen utmp post. Du måste köra \"login\" från den lägsta nivån \"sh\"" + #, c-format msgid "" "\n" @@ -1381,13 +1443,6 @@ msgstr "" "\n" "Inloggningen översteg tidsgränsen efter %u sekunder.\n" -#, c-format -msgid "%s: Cannot possibly work without effective root\n" -msgstr "%s: Kan inte fungera utan en användbar root\n" - -msgid "No utmp entry. You must exec \"login\" from the lowest level \"sh\"" -msgstr "Ingen utmp post. Du måste köra \"login\" från den lägsta nivån \"sh\"" - #, c-format msgid "login: PAM Failure, aborting: %s\n" msgstr "login: PAM misslyckades, avbryter: %s\n" @@ -1461,6 +1516,11 @@ msgstr "Användning: newgrp [-] [grupp]\n" msgid "Usage: sg group [[-c] command]\n" msgstr "Användning: sg grupp [[-c] kommando]\n" +#, fuzzy, c-format +#| msgid "%s: failed to remove %s\n" +msgid "%s: failed to crypt password with previous salt: %s\n" +msgstr "%s: misslyckades med att ta bort %s\n" + msgid "Invalid password.\n" msgstr "Ogiltigt lösenord.\n" @@ -1528,6 +1588,21 @@ msgstr "%s: rad %d: chown %s misslyckades: %s\n" msgid "%s: line %d: can't update entry\n" msgstr "%s: rad %d: kan inte uppdatera post\n" +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to prepare new %s entry\n" +msgstr "%s: misslyckades med att förbereda den nya %s-posten \"%s\"\n" + +#, fuzzy, c-format +#| msgid "%s: can't create user\n" +msgid "%s: can't find subordinate user range\n" +msgstr "%s: kan inte skapa användare\n" + +#, fuzzy, c-format +#| msgid "%s: can't create group\n" +msgid "%s: can't find subordinate group range\n" +msgstr "%s: kan inte skapa grupp\n" + msgid "" " -a, --all report password status on all accounts\n" msgstr "" @@ -1799,12 +1874,6 @@ msgstr "Lösenordsautentisering kringgådd.\n" msgid "Please enter your OWN password as authentication.\n" msgstr "Vänligen ange ditt EGNA lösenord för autentisering.\n" -msgid " ...killed.\n" -msgstr " ...dödad.\n" - -msgid " ...waiting for child to terminate.\n" -msgstr " ...väntar på att barn ska termineras.\n" - #, c-format msgid "%s: Cannot fork user shell\n" msgstr "%s: Kan inte grena användarskal\n" @@ -1821,12 +1890,20 @@ msgid "Session terminated, terminating shell..." msgstr "Sessionen terminerad, terminerar skal..." #, c-format -msgid "%s: %s\n" -msgstr "%s: %s\n" +msgid " ...killed.\n" +msgstr " ...dödad.\n" + +#, c-format +msgid " ...waiting for child to terminate.\n" +msgstr " ...väntar på att barn ska termineras.\n" msgid " ...terminated.\n" msgstr " ...terminerad.\n" +#, c-format +msgid "%s: %s\n" +msgstr "%s: %s\n" + msgid "" "Usage: su [options] [LOGIN]\n" "\n" @@ -2110,6 +2187,11 @@ msgstr "" msgid "%s: failed to reset the lastlog entry of UID %lu: %s\n" msgstr "" +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to prepare the new %s entry\n" +msgstr "%s: misslyckades med att förbereda den nya %s-posten \"%s\"\n" + #, c-format msgid "%s: cannot create directory %s\n" msgstr "%s: kan inte skapa katalog %s\n" @@ -2153,6 +2235,16 @@ msgstr "%s: Misslyckades med att skapa tcb-katalog för %s\n" msgid "%s: can't create group\n" msgstr "%s: kan inte skapa grupp\n" +#, fuzzy, c-format +#| msgid "%s: can't create user\n" +msgid "%s: can't create subordinate user IDs\n" +msgstr "%s: kan inte skapa användare\n" + +#, fuzzy, c-format +#| msgid "%s: can't create group\n" +msgid "%s: can't create subordinate group IDs\n" +msgstr "%s: kan inte skapa grupp\n" + #, c-format msgid "" "%s: warning: the home directory already exists.\n" @@ -2200,6 +2292,11 @@ msgstr "" "%s: gruppen %s är den primära gruppen för en annan användare och tas inte " "bort.\n" +#, fuzzy, c-format +#| msgid "%s: cannot remove entry '%s' from %s\n" +msgid "%s: cannot remove entry %lu from %s\n" +msgstr "%s: kan inte ta bort posten \"%s\" från %s\n" + #, fuzzy, c-format #| msgid "%s: %s home directory (%s) not found\n" msgid "%s: %s mail spool (%s) not found\n" @@ -2318,6 +2415,18 @@ msgstr " -u, --uid UID nytt UID för användarkontot\n" msgid " -U, --unlock unlock the user account\n" msgstr " -U, --unlock lås upp användarkontot\n" +msgid " -v, --add-subuids FIRST-LAST add range of subordinate uids\n" +msgstr "" + +msgid " -V, --del-subuids FIRST-LAST remove range of subordinate uids\n" +msgstr "" + +msgid " -w, --add-subgids FIRST-LAST add range of subordinate gids\n" +msgstr "" + +msgid " -W, --del-subgids FIRST-LAST remove range of subordinate gids\n" +msgstr "" + #, fuzzy #| msgid "" #| " -s, --shell SHELL new login shell for the user account\n" @@ -2341,6 +2450,16 @@ msgstr "" msgid "%s: user '%s' already exists in %s\n" msgstr "%s: användaren \"%s\" finns redan i %s\n" +#, fuzzy, c-format +#| msgid "%s: invalid date '%s'\n" +msgid "%s: invalid subordinate uid range '%s'\n" +msgstr "%s: ogiltigt datum \"%s\"\n" + +#, fuzzy, c-format +#| msgid "%s: invalid date '%s'\n" +msgid "%s: invalid subordinate gid range '%s'\n" +msgstr "%s: ogiltigt datum \"%s\"\n" + #, fuzzy, c-format #| msgid "%s: cannot open %s\n" msgid "%s: no options\n" @@ -2358,6 +2477,11 @@ msgstr "%s: skugglösenord krävs för -e och -f\n" msgid "%s: UID '%lu' already exists\n" msgstr "%s: UID \"%lu\" finns redan\n" +#, fuzzy, c-format +#| msgid "%s: %s is not authorized to change the password of %s\n" +msgid "%s: %s does not exist, you cannot use the flags %s or %s\n" +msgstr "%s: %s är inte behörig att ändra lösenordet för %s\n" + #, c-format msgid "%s: directory %s exists\n" msgstr "%s: katalogen %s finns redan\n" @@ -2405,6 +2529,26 @@ msgstr "misslyckades med att byta ägare på postlåda" msgid "failed to rename mailbox" msgstr "misslyckades med att byta namn på postlåda" +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to remove uid range %lu-%lu from '%s'\n" +msgstr "%s: misslyckades med att förbereda den nya %s-posten \"%s\"\n" + +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to add uid range %lu-%lu from '%s'\n" +msgstr "%s: misslyckades med att förbereda den nya %s-posten \"%s\"\n" + +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to remove gid range %lu-%lu from '%s'\n" +msgstr "%s: misslyckades med att förbereda den nya %s-posten \"%s\"\n" + +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to add gid range %lu-%lu from '%s'\n" +msgstr "%s: misslyckades med att förbereda den nya %s-posten \"%s\"\n" + #, c-format msgid "" "You have modified %s.\n" @@ -2459,6 +2603,19 @@ msgstr "Kunde inte låsa fil" msgid "Couldn't make backup" msgstr "Kunde inte göra en säkerhetskopia" +#, fuzzy, c-format +#| msgid "%s: %s\n" +msgid "%s: %s: %s\n" +msgstr "%s: %s\n" + +#, c-format +msgid "%s: %s returned with status %d\n" +msgstr "" + +#, c-format +msgid "%s: %s killed by signal %d\n" +msgstr "" + msgid "failed to open scratch file" msgstr "" diff --git a/po/tl.gmo b/po/tl.gmo new file mode 100644 index 0000000000000000000000000000000000000000..42e8c3a21169d214ab47214b99837eb727f0c957 GIT binary patch literal 20382 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\n" "Language-Team: Tagalog \n" @@ -448,6 +448,11 @@ msgstr "%s: hindi tanggap na telepono sa bahay: '%s'\n" msgid "%s: cannot access chroot directory %s: %s\n" msgstr "%s: hindi malikha ang directory %s\n" +#, fuzzy, c-format +#| msgid "%s: cannot create directory %s\n" +msgid "%s: cannot chdir to chroot directory %s: %s\n" +msgstr "%s: hindi malikha ang directory %s\n" + #, fuzzy, c-format #| msgid "%s: cannot create directory %s\n" msgid "%s: unable to chroot to directory %s: %s\n" @@ -789,6 +794,11 @@ msgstr "%s: linya %d: sobrang haba ng linya\n" msgid "%s: line %d: missing new password\n" msgstr "%s: linya %d: walang bagong password\n" +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to crypt password with salt '%s': %s\n" +msgstr "%s: bigo sa pagtanggal ng mga pribilehiyo (%s)\n" + #, fuzzy, c-format #| msgid "%s: group %s does not exist\n" msgid "%s: line %d: group '%s' does not exist\n" @@ -1084,6 +1094,11 @@ msgstr "Mayroon nang kasapi na ganito\n" msgid "%s: Cannot setup cleanup service.\n" msgstr "%s: Hindi makilala ang inyong pangalan.\n" +msgid "" +" -f, --force delete group even if it is the primary group " +"of a user\n" +msgstr "" + #, fuzzy, c-format #| msgid "%s: cannot rename directory %s to %s\n" msgid "%s: cannot remove entry '%s' from %s\n" @@ -1300,6 +1315,16 @@ msgid "" " -b, --before DAYS print only lastlog records older than DAYS\n" msgstr "" +msgid "" +" -C, --clear clear lastlog record of an user (usable only " +"with -u)\n" +msgstr "" + +msgid "" +" -S, --set set lastlog record to current time (usable " +"only with -u)\n" +msgstr "" + msgid "" " -t, --time DAYS print only lastlog records more recent than " "DAYS\n" @@ -1318,6 +1343,24 @@ msgstr "Pangalan Puerta Hulihan" msgid "**Never logged in**" msgstr "**Di pumasok kailanman**" +#, fuzzy, c-format +#| msgid "%s: cannot create directory %s\n" +msgid "%s: Failed to update the entry for UID %lu\n" +msgstr "%s: hindi malikha ang directory %s\n" + +#, fuzzy, c-format +#| msgid "%s: can't update password file\n" +msgid "%s: Failed to update the lastlog file\n" +msgstr "%s: hindi maapdeyt ang talaksang password\n" + +#, c-format +msgid "%s: Option -C cannot be used together with option -S\n" +msgstr "" + +#, c-format +msgid "%s: Options -C and -S require option -u to specify the user\n" +msgstr "" + #, c-format msgid "Usage: %s [-p] [name]\n" msgstr "Pag-gamit: %s [-p] [pangalan]\n" @@ -1351,6 +1394,15 @@ msgstr "" "\n" "[Nilaktawan ang pag-diskonek -- pinayagang makapasok ang root.]" +#, c-format +msgid "%s: Cannot possibly work without effective root\n" +msgstr "" + +msgid "No utmp entry. You must exec \"login\" from the lowest level \"sh\"" +msgstr "" +"Walang nakapasok sa utmp. Kailangan niyong mag-exec \"login\" mula sa " +"pinakamababang antas ng \"sh\"" + #, fuzzy, c-format #| msgid "" #| "\n" @@ -1362,15 +1414,6 @@ msgstr "" "\n" "Lumipas ang taning ng pagpasok ng %d segundo.\n" -#, c-format -msgid "%s: Cannot possibly work without effective root\n" -msgstr "" - -msgid "No utmp entry. You must exec \"login\" from the lowest level \"sh\"" -msgstr "" -"Walang nakapasok sa utmp. Kailangan niyong mag-exec \"login\" mula sa " -"pinakamababang antas ng \"sh\"" - #, c-format msgid "login: PAM Failure, aborting: %s\n" msgstr "login: kabiguan sa PAM, humihinto: %s\n" @@ -1447,6 +1490,11 @@ msgstr "Pag-gamit: newgrp [-] [grupo]\n" msgid "Usage: sg group [[-c] command]\n" msgstr "Pag-gamit: sg grupo [[-c] utos]\n" +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to crypt password with previous salt: %s\n" +msgstr "%s: bigo sa pagtanggal ng mga pribilehiyo (%s)\n" + #, fuzzy msgid "Invalid password.\n" msgstr "Lumang kontrasenyas:" @@ -1516,6 +1564,20 @@ msgstr "%s: linya %d: bigo ang chown\n" msgid "%s: line %d: can't update entry\n" msgstr "%s: linya %d: hindi ma-apdeyt ang ipinasok\n" +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to prepare new %s entry\n" +msgstr "%s: bigo sa pagtanggal ng mga pribilehiyo (%s)\n" + +#, fuzzy, c-format +msgid "%s: can't find subordinate user range\n" +msgstr "%s: hindi malikha ang %s\n" + +#, fuzzy, c-format +#| msgid "%s: can't update group file\n" +msgid "%s: can't find subordinate group range\n" +msgstr "%s: hindi ma-apdeyt ang talaksang grupo\n" + msgid "" " -a, --all report password status on all accounts\n" msgstr "" @@ -1770,12 +1832,6 @@ msgstr "Linampasan ang password authentication.\n" msgid "Please enter your OWN password as authentication.\n" msgstr "Ibigay ang inyong SARILING kontrasenyas bilang authentication.\n" -msgid " ...killed.\n" -msgstr "" - -msgid " ...waiting for child to terminate.\n" -msgstr "" - #, fuzzy, c-format #| msgid "%s: cannot lock file %s\n" msgid "%s: Cannot fork user shell\n" @@ -1793,12 +1849,20 @@ msgid "Session terminated, terminating shell..." msgstr "" #, c-format -msgid "%s: %s\n" -msgstr "%s: %s\n" +msgid " ...killed.\n" +msgstr "" + +#, c-format +msgid " ...waiting for child to terminate.\n" +msgstr "" msgid " ...terminated.\n" msgstr "" +#, c-format +msgid "%s: %s\n" +msgstr "%s: %s\n" + msgid "" "Usage: su [options] [LOGIN]\n" "\n" @@ -2064,6 +2128,11 @@ msgstr "" msgid "%s: failed to reset the lastlog entry of UID %lu: %s\n" msgstr "" +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to prepare the new %s entry\n" +msgstr "%s: bigo sa pagtanggal ng mga pribilehiyo (%s)\n" + #, c-format msgid "%s: cannot create directory %s\n" msgstr "%s: hindi malikha ang directory %s\n" @@ -2110,6 +2179,14 @@ msgstr "%s: hindi malikha ang directory %s\n" msgid "%s: can't create group\n" msgstr "%s: hindi malikha ang %s\n" +#, fuzzy, c-format +msgid "%s: can't create subordinate user IDs\n" +msgstr "%s: hindi malikha ang %s\n" + +#, fuzzy, c-format +msgid "%s: can't create subordinate group IDs\n" +msgstr "%s: hindi malikha ang %s\n" + #, c-format msgid "" "%s: warning: the home directory already exists.\n" @@ -2152,6 +2229,11 @@ msgstr "" "%s: hindi matanggal ang grupong %s dahil ito'y pangunahing grupo ng ibang " "gumagamit.\n" +#, fuzzy, c-format +#| msgid "%s: cannot rename directory %s to %s\n" +msgid "%s: cannot remove entry %lu from %s\n" +msgstr "%s: hindi mapalitan ng pangalan ang directory %s sa %s\n" + #, fuzzy, c-format #| msgid "%s: invalid home directory '%s'\n" msgid "%s: %s mail spool (%s) not found\n" @@ -2259,6 +2341,18 @@ msgstr "" msgid " -U, --unlock unlock the user account\n" msgstr "" +msgid " -v, --add-subuids FIRST-LAST add range of subordinate uids\n" +msgstr "" + +msgid " -V, --del-subuids FIRST-LAST remove range of subordinate uids\n" +msgstr "" + +msgid " -w, --add-subgids FIRST-LAST add range of subordinate gids\n" +msgstr "" + +msgid " -W, --del-subgids FIRST-LAST remove range of subordinate gids\n" +msgstr "" + msgid "" " -Z, --selinux-user SEUSER new SELinux user mapping for the user " "account\n" @@ -2275,6 +2369,16 @@ msgstr "" msgid "%s: user '%s' already exists in %s\n" msgstr "%s: mayroon nang gumagamit na %s\n" +#, fuzzy, c-format +#| msgid "%s: invalid date '%s'\n" +msgid "%s: invalid subordinate uid range '%s'\n" +msgstr "%s: hindi tanggap na petsa '%s'\n" + +#, fuzzy, c-format +#| msgid "%s: invalid date '%s'\n" +msgid "%s: invalid subordinate gid range '%s'\n" +msgstr "%s: hindi tanggap na petsa '%s'\n" + #, fuzzy, c-format #| msgid "%s: cannot open file %s\n" msgid "%s: no options\n" @@ -2293,6 +2397,10 @@ msgstr "%s: kailangan ang shadow password para sa -e at -f\n" msgid "%s: UID '%lu' already exists\n" msgstr "Mayroon nang kasapi na ganito\n" +#, c-format +msgid "%s: %s does not exist, you cannot use the flags %s or %s\n" +msgstr "" + #, c-format msgid "%s: directory %s exists\n" msgstr "%s: mayroon nang directory na %s\n" @@ -2335,6 +2443,26 @@ msgstr "bigo sa pagpalit ng may-ari ng mailbox" msgid "failed to rename mailbox" msgstr "bigo sa pagpalit ng pangalan ng mailbox" +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to remove uid range %lu-%lu from '%s'\n" +msgstr "%s: bigo sa pagtanggal ng mga pribilehiyo (%s)\n" + +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to add uid range %lu-%lu from '%s'\n" +msgstr "%s: bigo sa pagtanggal ng mga pribilehiyo (%s)\n" + +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to remove gid range %lu-%lu from '%s'\n" +msgstr "%s: bigo sa pagtanggal ng mga pribilehiyo (%s)\n" + +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to add gid range %lu-%lu from '%s'\n" +msgstr "%s: bigo sa pagtanggal ng mga pribilehiyo (%s)\n" + #, c-format msgid "" "You have modified %s.\n" @@ -2397,6 +2525,20 @@ msgstr "Hindi maaldaba ang talaksan" msgid "Couldn't make backup" msgstr "Hindi makagawa ng backup" +#, fuzzy, c-format +#| msgid "%s: %s\n" +msgid "%s: %s: %s\n" +msgstr "%s: %s\n" + +#, fuzzy, c-format +#| msgid "%s: %s not found in /etc/passwd\n" +msgid "%s: %s returned with status %d\n" +msgstr "%s: hindi nahanap ang %s sa /etc/passwd\n" + +#, c-format +msgid "%s: %s killed by signal %d\n" +msgstr "" + #, fuzzy #| msgid "Unable to open group file\n" msgid "failed to open scratch file" @@ -3053,9 +3195,6 @@ msgstr "%s: hindi tanggap na batayang directory '%s'\n" #~ msgid "%s: can't rewrite password file\n" #~ msgstr "%s: hindi maisulat-muli ang talaksang password\n" -#~ msgid "%s: can't update password file\n" -#~ msgstr "%s: hindi maapdeyt ang talaksang password\n" - #~ msgid "%s: can't update shadow password file\n" #~ msgstr "%s: hindi maapdeyt ang talaksang shadow password\n" @@ -3077,9 +3216,6 @@ msgstr "%s: hindi tanggap na batayang directory '%s'\n" #~ msgid "Cannot open the password file.\n" #~ msgstr "Hindi mabuksan ang talaksang password\n" -#~ msgid "%s: %s not found in /etc/passwd\n" -#~ msgstr "%s: hindi nahanap ang %s sa /etc/passwd\n" - #~ msgid "Error updating the password entry.\n" #~ msgstr "Error sa pag-apdeyt ng password entry.\n" @@ -3288,9 +3424,6 @@ msgstr "%s: hindi tanggap na batayang directory '%s'\n" #~ msgid "%s: can't update shadow group file\n" #~ msgstr "%s: hindi ma-apdeyt ang talaksang grupo na shadow\n" -#~ msgid "%s: can't update group file\n" -#~ msgstr "%s: hindi ma-apdeyt ang talaksang grupo\n" - #~ msgid "%s: can't delete shadow group file\n" #~ msgstr "%s: hindi matanggal ang talaksang grupo na shadow\n" diff --git a/po/tr.gmo b/po/tr.gmo new file mode 100644 index 0000000000000000000000000000000000000000..0b41e6060de8064fffd638a8bef009371a4f3c9b GIT binary patch literal 22330 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 NlbI7X&lHq`{|h26PC@_x literal 0 HcmV?d00001 diff --git a/po/tr.po b/po/tr.po index 1bb65d19..c8161a5a 100644 --- a/po/tr.po +++ b/po/tr.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: shadow 4.0.18\n" "Report-Msgid-Bugs-To: pkg-shadow-devel@lists.alioth.debian.org\n" -"POT-Creation-Date: 2012-05-20 19:52+0200\n" +"POT-Creation-Date: 2016-09-18 21:41-0500\n" "PO-Revision-Date: 2008-03-29 20:31+0200\n" "Last-Translator: Mehmet Türker \n" "Language-Team: Türkçe \n" @@ -444,6 +444,11 @@ msgstr "%s: geçersiz ev telefonu: '%s'\n" msgid "%s: cannot access chroot directory %s: %s\n" msgstr "%s: %s dizini yaratılamıyor\n" +#, fuzzy, c-format +#| msgid "%s: cannot create directory %s\n" +msgid "%s: cannot chdir to chroot directory %s: %s\n" +msgstr "%s: %s dizini yaratılamıyor\n" + #, fuzzy, c-format #| msgid "%s: cannot create directory %s\n" msgid "%s: unable to chroot to directory %s: %s\n" @@ -817,6 +822,11 @@ msgstr "%s: satır %d: satır çok uzun\n" msgid "%s: line %d: missing new password\n" msgstr "%s: satır %d: yeni parola eksik\n" +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to crypt password with salt '%s': %s\n" +msgstr "%s: ayrıcalıklar iptal edilemedi (%s)\n" + #, fuzzy, c-format #| msgid "%s: group %s does not exist\n" msgid "%s: line %d: group '%s' does not exist\n" @@ -1136,6 +1146,11 @@ msgstr "Üye zaten mevcut\n" msgid "%s: Cannot setup cleanup service.\n" msgstr "%s: Kullanıcı isminiz belirlenemedi.\n" +msgid "" +" -f, --force delete group even if it is the primary group " +"of a user\n" +msgstr "" + #, fuzzy, c-format #| msgid "%s: cannot rename directory %s to %s\n" msgid "%s: cannot remove entry '%s' from %s\n" @@ -1369,6 +1384,16 @@ msgid "" " -b, --before DAYS print only lastlog records older than DAYS\n" msgstr "" +msgid "" +" -C, --clear clear lastlog record of an user (usable only " +"with -u)\n" +msgstr "" + +msgid "" +" -S, --set set lastlog record to current time (usable " +"only with -u)\n" +msgstr "" + msgid "" " -t, --time DAYS print only lastlog records more recent than " "DAYS\n" @@ -1387,6 +1412,24 @@ msgstr "Kullanıcı adı Port Sonuncu" msgid "**Never logged in**" msgstr "**Hiç giriş yapmadı**" +#, fuzzy, c-format +#| msgid "%s: cannot create directory %s\n" +msgid "%s: Failed to update the entry for UID %lu\n" +msgstr "%s: %s dizini yaratılamıyor\n" + +#, fuzzy, c-format +#| msgid "%s: can't update password file\n" +msgid "%s: Failed to update the lastlog file\n" +msgstr "%s: parola dosyası güncellenemedi\n" + +#, c-format +msgid "%s: Option -C cannot be used together with option -S\n" +msgstr "" + +#, c-format +msgid "%s: Options -C and -S require option -u to specify the user\n" +msgstr "" + #, c-format msgid "Usage: %s [-p] [name]\n" msgstr "Kullanım: %s [-p] [isim]\n" @@ -1420,6 +1463,15 @@ msgstr "" "\n" "[Bağlantı kesilmesi atlandı -- root girişi olanaklı.]" +#, c-format +msgid "%s: Cannot possibly work without effective root\n" +msgstr "" + +msgid "No utmp entry. You must exec \"login\" from the lowest level \"sh\"" +msgstr "" +"Bu bir utmp girişi değil. En düşük \"sh\" düzeyinde \"login\" i " +"çalıştırmalısınız. " + #, fuzzy, c-format #| msgid "" #| "\n" @@ -1431,15 +1483,6 @@ msgstr "" "\n" "Giriş %d saniye sonra zaman aşımına uğradı.\n" -#, c-format -msgid "%s: Cannot possibly work without effective root\n" -msgstr "" - -msgid "No utmp entry. You must exec \"login\" from the lowest level \"sh\"" -msgstr "" -"Bu bir utmp girişi değil. En düşük \"sh\" düzeyinde \"login\" i " -"çalıştırmalısınız. " - #, c-format msgid "login: PAM Failure, aborting: %s\n" msgstr "login: PAM başarısızlığa uğradı, çıkıyor: %s\n" @@ -1516,6 +1559,11 @@ msgstr "Kullanım: newgrp [-] [grup]\n" msgid "Usage: sg group [[-c] command]\n" msgstr "Kullanım: sg grup [[-c] komut]\n" +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to crypt password with previous salt: %s\n" +msgstr "%s: ayrıcalıklar iptal edilemedi (%s)\n" + msgid "Invalid password.\n" msgstr "Geçersiz parola.\n" @@ -1589,6 +1637,21 @@ msgstr "%s: satır %d: chown başarısız oldu\n" msgid "%s: line %d: can't update entry\n" msgstr "%s: satır %d: kayıt güncellenemiyor\n" +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to prepare new %s entry\n" +msgstr "%s: ayrıcalıklar iptal edilemedi (%s)\n" + +#, fuzzy, c-format +#| msgid "%s: can't create user\n" +msgid "%s: can't find subordinate user range\n" +msgstr "%s: kullanıcı yaratılamıyor\n" + +#, fuzzy, c-format +#| msgid "%s: can't update group file\n" +msgid "%s: can't find subordinate group range\n" +msgstr "%s: grup dosyası güncellenemiyor\n" + msgid "" " -a, --all report password status on all accounts\n" msgstr "" @@ -1867,12 +1930,6 @@ msgstr "Parola yetkilendirmesi atlandı.\n" msgid "Please enter your OWN password as authentication.\n" msgstr "Lütfen yetkilendirme için KENDİ parolanızı girin.\n" -msgid " ...killed.\n" -msgstr "" - -msgid " ...waiting for child to terminate.\n" -msgstr "" - #, fuzzy, c-format #| msgid "%s: cannot lock file %s\n" msgid "%s: Cannot fork user shell\n" @@ -1890,12 +1947,20 @@ msgid "Session terminated, terminating shell..." msgstr "" #, c-format -msgid "%s: %s\n" -msgstr "%s: %s\n" +msgid " ...killed.\n" +msgstr "" + +#, c-format +msgid " ...waiting for child to terminate.\n" +msgstr "" msgid " ...terminated.\n" msgstr "" +#, c-format +msgid "%s: %s\n" +msgstr "%s: %s\n" + msgid "" "Usage: su [options] [LOGIN]\n" "\n" @@ -2196,6 +2261,11 @@ msgstr "" msgid "%s: failed to reset the lastlog entry of UID %lu: %s\n" msgstr "" +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to prepare the new %s entry\n" +msgstr "%s: ayrıcalıklar iptal edilemedi (%s)\n" + #, c-format msgid "%s: cannot create directory %s\n" msgstr "%s: %s dizini yaratılamıyor\n" @@ -2242,6 +2312,16 @@ msgstr "%s: %s dizini yaratılamıyor\n" msgid "%s: can't create group\n" msgstr "%s: grup yaratılamıyor\n" +#, fuzzy, c-format +#| msgid "%s: can't create user\n" +msgid "%s: can't create subordinate user IDs\n" +msgstr "%s: kullanıcı yaratılamıyor\n" + +#, fuzzy, c-format +#| msgid "%s: can't create group\n" +msgid "%s: can't create subordinate group IDs\n" +msgstr "%s: grup yaratılamıyor\n" + #, c-format msgid "" "%s: warning: the home directory already exists.\n" @@ -2292,6 +2372,11 @@ msgid "%s: group %s is the primary group of another user and is not removed.\n" msgstr "" "%s: Başka bir kullanıcı için birincil grub olan %s grubu kaldırılamıyor.\n" +#, fuzzy, c-format +#| msgid "%s: cannot rename directory %s to %s\n" +msgid "%s: cannot remove entry %lu from %s\n" +msgstr "%s: %s dizini %s olarak yeniden adlandırılamıyor\n" + #, fuzzy, c-format #| msgid "%s: invalid home directory '%s'\n" msgid "%s: %s mail spool (%s) not found\n" @@ -2423,6 +2508,18 @@ msgstr "" msgid " -U, --unlock unlock the user account\n" msgstr "" +msgid " -v, --add-subuids FIRST-LAST add range of subordinate uids\n" +msgstr "" + +msgid " -V, --del-subuids FIRST-LAST remove range of subordinate uids\n" +msgstr "" + +msgid " -w, --add-subgids FIRST-LAST add range of subordinate gids\n" +msgstr "" + +msgid " -W, --del-subgids FIRST-LAST remove range of subordinate gids\n" +msgstr "" + msgid "" " -Z, --selinux-user SEUSER new SELinux user mapping for the user " "account\n" @@ -2446,6 +2543,16 @@ msgstr "" msgid "%s: user '%s' already exists in %s\n" msgstr "%s: kullanıcı %s mevcut\n" +#, fuzzy, c-format +#| msgid "%s: invalid date '%s'\n" +msgid "%s: invalid subordinate uid range '%s'\n" +msgstr "%s: geçersiz tarih '%s'\n" + +#, fuzzy, c-format +#| msgid "%s: invalid date '%s'\n" +msgid "%s: invalid subordinate gid range '%s'\n" +msgstr "%s: geçersiz tarih '%s'\n" + #, fuzzy, c-format #| msgid "%s: cannot open file %s\n" msgid "%s: no options\n" @@ -2464,6 +2571,10 @@ msgstr "%s: -e ve -f için gölge parolalar gerekli\n" msgid "%s: UID '%lu' already exists\n" msgstr "Üye zaten mevcut\n" +#, c-format +msgid "%s: %s does not exist, you cannot use the flags %s or %s\n" +msgstr "" + #, c-format msgid "%s: directory %s exists\n" msgstr "%s: %s dizini mevcut\n" @@ -2505,6 +2616,26 @@ msgstr "postakutusu sahibi değiştirilmedi" msgid "failed to rename mailbox" msgstr "postakutusu isim değişikliği başarısız" +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to remove uid range %lu-%lu from '%s'\n" +msgstr "%s: ayrıcalıklar iptal edilemedi (%s)\n" + +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to add uid range %lu-%lu from '%s'\n" +msgstr "%s: ayrıcalıklar iptal edilemedi (%s)\n" + +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to remove gid range %lu-%lu from '%s'\n" +msgstr "%s: ayrıcalıklar iptal edilemedi (%s)\n" + +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to add gid range %lu-%lu from '%s'\n" +msgstr "%s: ayrıcalıklar iptal edilemedi (%s)\n" + #, fuzzy, c-format #| msgid "" #| "You have modified %s.\n" @@ -2574,6 +2705,20 @@ msgstr "Dosya kilitlenemedi" msgid "Couldn't make backup" msgstr "Yedek alınamadı" +#, fuzzy, c-format +#| msgid "%s: %s\n" +msgid "%s: %s: %s\n" +msgstr "%s: %s\n" + +#, fuzzy, c-format +#| msgid "%s: %s not found in /etc/passwd\n" +msgid "%s: %s returned with status %d\n" +msgstr "%s: %s /etc/passwd içinde bulunamadı\n" + +#, c-format +msgid "%s: %s killed by signal %d\n" +msgstr "" + #, fuzzy #| msgid "Unable to open group file\n" msgid "failed to open scratch file" @@ -3356,9 +3501,6 @@ msgstr "%s: geçersiz ana dizin '%s'\n" #~ msgid "%s: can't rewrite password file\n" #~ msgstr "%s: parola dosyasına yazılamadı\n" -#~ msgid "%s: can't update password file\n" -#~ msgstr "%s: parola dosyası güncellenemedi\n" - #~ msgid "%s: can't update shadow password file\n" #~ msgstr "%s: gölge parola dosyası güncellenemedi\n" @@ -3380,9 +3522,6 @@ msgstr "%s: geçersiz ana dizin '%s'\n" #~ msgid "Cannot open the password file.\n" #~ msgstr "Parola dosyası açılamıyor.\n" -#~ msgid "%s: %s not found in /etc/passwd\n" -#~ msgstr "%s: %s /etc/passwd içinde bulunamadı\n" - #~ msgid "Error updating the password entry.\n" #~ msgstr "Parola kaydı güncellenmesinde hata.\n" @@ -3591,9 +3730,6 @@ msgstr "%s: geçersiz ana dizin '%s'\n" #~ msgid "%s: can't update shadow group file\n" #~ msgstr "%s: gölge grup dosyası güncellenemiyor\n" -#~ msgid "%s: can't update group file\n" -#~ msgstr "%s: grup dosyası güncellenemiyor\n" - #~ msgid "%s: can't delete shadow group file\n" #~ msgstr "%s: gölge grup dosyası silinemiyor\n" diff --git a/po/uk.gmo b/po/uk.gmo new file mode 100644 index 0000000000000000000000000000000000000000..420756071f7f885ada9d1c5e9e5053567731779b GIT binary patch literal 24819 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\n" "Language-Team: Ukrainian\n" @@ -442,6 +442,11 @@ msgstr "%s: невірний домашній телефон: \"%s\"\n" msgid "%s: cannot access chroot directory %s: %s\n" msgstr "%s: не можу створити теку %s\n" +#, fuzzy, c-format +#| msgid "%s: cannot create directory %s\n" +msgid "%s: cannot chdir to chroot directory %s: %s\n" +msgstr "%s: не можу створити теку %s\n" + #, fuzzy, c-format #| msgid "%s: cannot create directory %s\n" msgid "%s: unable to chroot to directory %s: %s\n" @@ -783,6 +788,11 @@ msgstr "%s: рядок %d: рядок занадто довгий\n" msgid "%s: line %d: missing new password\n" msgstr "%s: рядок %d: бракує нового пароля\n" +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to crypt password with salt '%s': %s\n" +msgstr "%s: не вдалося скинути привілеї (%s)\n" + #, fuzzy, c-format #| msgid "%s: group %s does not exist\n" msgid "%s: line %d: group '%s' does not exist\n" @@ -1078,6 +1088,11 @@ msgstr "Член вже існує\n" msgid "%s: Cannot setup cleanup service.\n" msgstr "%s: Не можу визначити Ваше ім'я користувача.\n" +msgid "" +" -f, --force delete group even if it is the primary group " +"of a user\n" +msgstr "" + #, fuzzy, c-format #| msgid "%s: cannot rename directory %s to %s\n" msgid "%s: cannot remove entry '%s' from %s\n" @@ -1294,6 +1309,16 @@ msgid "" " -b, --before DAYS print only lastlog records older than DAYS\n" msgstr "" +msgid "" +" -C, --clear clear lastlog record of an user (usable only " +"with -u)\n" +msgstr "" + +msgid "" +" -S, --set set lastlog record to current time (usable " +"only with -u)\n" +msgstr "" + msgid "" " -t, --time DAYS print only lastlog records more recent than " "DAYS\n" @@ -1312,6 +1337,24 @@ msgstr "Користувач Порт Останній вхід" msgid "**Never logged in**" msgstr "**Ніколи не входив**" +#, fuzzy, c-format +#| msgid "%s: cannot create directory %s\n" +msgid "%s: Failed to update the entry for UID %lu\n" +msgstr "%s: не можу створити теку %s\n" + +#, fuzzy, c-format +#| msgid "%s: can't update password file\n" +msgid "%s: Failed to update the lastlog file\n" +msgstr "%s: не можу оновити файл паролів\n" + +#, c-format +msgid "%s: Option -C cannot be used together with option -S\n" +msgstr "" + +#, c-format +msgid "%s: Options -C and -S require option -u to specify the user\n" +msgstr "" + #, c-format msgid "Usage: %s [-p] [name]\n" msgstr "Використання: %s [-p] [ім'я]\n" @@ -1345,6 +1388,14 @@ msgstr "" "\n" "[Сталося відключення -- дозволено лише вхід root-a.]" +#, c-format +msgid "%s: Cannot possibly work without effective root\n" +msgstr "" + +msgid "No utmp entry. You must exec \"login\" from the lowest level \"sh\"" +msgstr "" +"Немає запису utmp. Вам потрібно виконати \"login\" з \"sh\" найнижчого рівня" + #, fuzzy, c-format #| msgid "" #| "\n" @@ -1356,14 +1407,6 @@ msgstr "" "\n" "Час логіну буде вичерпано за %d секунд.\n" -#, c-format -msgid "%s: Cannot possibly work without effective root\n" -msgstr "" - -msgid "No utmp entry. You must exec \"login\" from the lowest level \"sh\"" -msgstr "" -"Немає запису utmp. Вам потрібно виконати \"login\" з \"sh\" найнижчого рівня" - #, c-format msgid "login: PAM Failure, aborting: %s\n" msgstr "login: Помилка PAM, перервано: %s\n" @@ -1440,6 +1483,11 @@ msgstr "Використання: newgrp [-] [група]\n" msgid "Usage: sg group [[-c] command]\n" msgstr "Використання: sg група [[-c] команда]\n" +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to crypt password with previous salt: %s\n" +msgstr "%s: не вдалося скинути привілеї (%s)\n" + #, fuzzy msgid "Invalid password.\n" msgstr "Старий пароль: " @@ -1509,6 +1557,20 @@ msgstr "%s: рядок %d: chown не виконався\n" msgid "%s: line %d: can't update entry\n" msgstr "%s: рядок %d: не можу оновити запис\n" +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to prepare new %s entry\n" +msgstr "%s: не вдалося скинути привілеї (%s)\n" + +#, fuzzy, c-format +msgid "%s: can't find subordinate user range\n" +msgstr "%s: не можу створити %s\n" + +#, fuzzy, c-format +#| msgid "%s: can't update group file\n" +msgid "%s: can't find subordinate group range\n" +msgstr "%s: не можу оновити файл груп\n" + msgid "" " -a, --all report password status on all accounts\n" msgstr "" @@ -1763,12 +1825,6 @@ msgstr "Аутентифікацію пройдено.\n" msgid "Please enter your OWN password as authentication.\n" msgstr "Будь ласка введіть Ваш власний пароль для аутентифікації.\n" -msgid " ...killed.\n" -msgstr "" - -msgid " ...waiting for child to terminate.\n" -msgstr "" - #, fuzzy, c-format #| msgid "%s: cannot lock file %s\n" msgid "%s: Cannot fork user shell\n" @@ -1786,12 +1842,20 @@ msgid "Session terminated, terminating shell..." msgstr "" #, c-format -msgid "%s: %s\n" -msgstr "%s: %s\n" +msgid " ...killed.\n" +msgstr "" + +#, c-format +msgid " ...waiting for child to terminate.\n" +msgstr "" msgid " ...terminated.\n" msgstr "" +#, c-format +msgid "%s: %s\n" +msgstr "%s: %s\n" + msgid "" "Usage: su [options] [LOGIN]\n" "\n" @@ -2055,6 +2119,11 @@ msgstr "" msgid "%s: failed to reset the lastlog entry of UID %lu: %s\n" msgstr "" +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to prepare the new %s entry\n" +msgstr "%s: не вдалося скинути привілеї (%s)\n" + #, c-format msgid "%s: cannot create directory %s\n" msgstr "%s: не можу створити теку %s\n" @@ -2101,6 +2170,14 @@ msgstr "%s: не можу створити теку %s\n" msgid "%s: can't create group\n" msgstr "%s: не можу створити %s\n" +#, fuzzy, c-format +msgid "%s: can't create subordinate user IDs\n" +msgstr "%s: не можу створити %s\n" + +#, fuzzy, c-format +msgid "%s: can't create subordinate group IDs\n" +msgstr "%s: не можу створити %s\n" + #, c-format msgid "" "%s: warning: the home directory already exists.\n" @@ -2142,6 +2219,11 @@ msgid "%s: group %s is the primary group of another user and is not removed.\n" msgstr "" "%s: не можу видалити групу %s яка є первинною групою іншого користувача.\n" +#, fuzzy, c-format +#| msgid "%s: cannot rename directory %s to %s\n" +msgid "%s: cannot remove entry %lu from %s\n" +msgstr "%s: не можу перейменувати теку з %s на %s\n" + #, fuzzy, c-format #| msgid "%s: invalid home directory '%s'\n" msgid "%s: %s mail spool (%s) not found\n" @@ -2249,6 +2331,18 @@ msgstr "" msgid " -U, --unlock unlock the user account\n" msgstr "" +msgid " -v, --add-subuids FIRST-LAST add range of subordinate uids\n" +msgstr "" + +msgid " -V, --del-subuids FIRST-LAST remove range of subordinate uids\n" +msgstr "" + +msgid " -w, --add-subgids FIRST-LAST add range of subordinate gids\n" +msgstr "" + +msgid " -W, --del-subgids FIRST-LAST remove range of subordinate gids\n" +msgstr "" + msgid "" " -Z, --selinux-user SEUSER new SELinux user mapping for the user " "account\n" @@ -2265,6 +2359,16 @@ msgstr "" msgid "%s: user '%s' already exists in %s\n" msgstr "%s: користувач %s існує\n" +#, fuzzy, c-format +#| msgid "%s: invalid date '%s'\n" +msgid "%s: invalid subordinate uid range '%s'\n" +msgstr "%s: невірна дата \"%s\"\n" + +#, fuzzy, c-format +#| msgid "%s: invalid date '%s'\n" +msgid "%s: invalid subordinate gid range '%s'\n" +msgstr "%s: невірна дата \"%s\"\n" + #, fuzzy, c-format #| msgid "%s: cannot open file %s\n" msgid "%s: no options\n" @@ -2283,6 +2387,10 @@ msgstr "%s: приховані паролі потрібні для -e і -f\n" msgid "%s: UID '%lu' already exists\n" msgstr "Член вже існує\n" +#, c-format +msgid "%s: %s does not exist, you cannot use the flags %s or %s\n" +msgstr "" + #, c-format msgid "%s: directory %s exists\n" msgstr "%s: тека %s існує\n" @@ -2324,6 +2432,26 @@ msgstr "не можу змінити власника поштової скри msgid "failed to rename mailbox" msgstr "не можу перейменувати поштову скриньку" +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to remove uid range %lu-%lu from '%s'\n" +msgstr "%s: не вдалося скинути привілеї (%s)\n" + +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to add uid range %lu-%lu from '%s'\n" +msgstr "%s: не вдалося скинути привілеї (%s)\n" + +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to remove gid range %lu-%lu from '%s'\n" +msgstr "%s: не вдалося скинути привілеї (%s)\n" + +#, fuzzy, c-format +#| msgid "%s: failed to drop privileges (%s)\n" +msgid "%s: failed to add gid range %lu-%lu from '%s'\n" +msgstr "%s: не вдалося скинути привілеї (%s)\n" + #, c-format msgid "" "You have modified %s.\n" @@ -2386,6 +2514,20 @@ msgstr "Не можу блокувати файл" msgid "Couldn't make backup" msgstr "Не можу зробити резервну копію" +#, fuzzy, c-format +#| msgid "%s: %s\n" +msgid "%s: %s: %s\n" +msgstr "%s: %s\n" + +#, fuzzy, c-format +#| msgid "%s: %s not found in /etc/passwd\n" +msgid "%s: %s returned with status %d\n" +msgstr "%s: %s не знайдено у /etc/passwd\n" + +#, c-format +msgid "%s: %s killed by signal %d\n" +msgstr "" + #, fuzzy #| msgid "Unable to open group file\n" msgid "failed to open scratch file" @@ -3067,9 +3209,6 @@ msgstr "%s: невірна базова тека \"%s\"\n" #~ msgid "%s: can't rewrite password file\n" #~ msgstr "%s: не можу переписати файл паролів\n" -#~ msgid "%s: can't update password file\n" -#~ msgstr "%s: не можу оновити файл паролів\n" - #~ msgid "%s: can't update shadow password file\n" #~ msgstr "%s: не можу оновити файл прихованих паролів\n" @@ -3091,9 +3230,6 @@ msgstr "%s: невірна базова тека \"%s\"\n" #~ msgid "Cannot open the password file.\n" #~ msgstr "Не можу відкрити файл паролів.\n" -#~ msgid "%s: %s not found in /etc/passwd\n" -#~ msgstr "%s: %s не знайдено у /etc/passwd\n" - #~ msgid "Error updating the password entry.\n" #~ msgstr "Не можу оновити запис у файлі паролів.\n" @@ -3301,9 +3437,6 @@ msgstr "%s: невірна базова тека \"%s\"\n" #~ msgid "%s: can't update shadow group file\n" #~ msgstr "%s: не можу оновити файл прихованих груп\n" -#~ msgid "%s: can't update group file\n" -#~ msgstr "%s: не можу оновити файл груп\n" - #~ msgid "%s: can't delete shadow group file\n" #~ msgstr "%s: не можу видалити файл прихованих груп\n" diff --git a/po/vi.gmo b/po/vi.gmo new file mode 100644 index 0000000000000000000000000000000000000000..f2148d4499d4467f10e56491dddb7b81a0a89aac GIT binary patch literal 57831 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

{l?yOC-r7w(Y*6A|) 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 Ru5EP5s-Ljnlk!\n" "Language-Team: Vietnamese \n" @@ -437,6 +437,11 @@ msgstr "%s: số điện thoại ở nhà không hợp lệ: « %s »\n" msgid "%s: cannot access chroot directory %s: %s\n" msgstr "%s: không thể tạo thư mục %s\n" +#, fuzzy, c-format +#| msgid "%s: cannot create directory %s\n" +msgid "%s: cannot chdir to chroot directory %s: %s\n" +msgstr "%s: không thể tạo thư mục %s\n" + #, fuzzy, c-format #| msgid "%s: cannot create directory %s\n" msgid "%s: unable to chroot to directory %s: %s\n" @@ -803,6 +808,11 @@ msgstr "%s: dòng %d: dòng quá dài\n" msgid "%s: line %d: missing new password\n" msgstr "%s: dòng %d: thiếu mật khẩu mới\n" +#, fuzzy, c-format +#| msgid "%s: failed to remove %s\n" +msgid "%s: failed to crypt password with salt '%s': %s\n" +msgstr "%s: không gỡ bỏ được %s\n" + #, c-format msgid "%s: line %d: group '%s' does not exist\n" msgstr "%s: dòng %d, nhóm « %s » không tồn tại\n" @@ -1114,6 +1124,15 @@ msgstr "%s: GID « %lu » đã có\n" msgid "%s: Cannot setup cleanup service.\n" msgstr "%s: không thể quyết định tên người dùng của bạn.\n" +#, fuzzy +#| msgid "" +#| " -r, --reset reset the counters of login failures\n" +msgid "" +" -f, --force delete group even if it is the primary group " +"of a user\n" +msgstr "" +" -r, --reset đặt lại các bộ đếm lần không đăng nhập được\n" + #, c-format msgid "%s: cannot remove entry '%s' from %s\n" msgstr "%s: không thể gỡ bỏ mục nhập « %s » khỏi %s\n" @@ -1353,6 +1372,26 @@ msgstr "" " -b, --before SỐ hiển thị chỉ những bản ghi lastlog\n" " cũ hơn số ngày này (_trước_)\n" +#, fuzzy +#| msgid "" +#| " -a, --all display faillog records for all users\n" +msgid "" +" -C, --clear clear lastlog record of an user (usable only " +"with -u)\n" +msgstr "" +" -a, --all hiển thị các mục ghi faillog cho mọi người " +"dùng\n" + +#, fuzzy +#| msgid "" +#| " -a, --all display faillog records for all users\n" +msgid "" +" -S, --set set lastlog record to current time (usable " +"only with -u)\n" +msgstr "" +" -a, --all hiển thị các mục ghi faillog cho mọi người " +"dùng\n" + msgid "" " -t, --time DAYS print only lastlog records more recent than " "DAYS\n" @@ -1375,6 +1414,24 @@ msgstr "Tên dùng\t\t\t Cổng Mới nhất" msgid "**Never logged in**" msgstr "**Chưa bao giờ đăng nhập**" +#, fuzzy, c-format +#| msgid "%s: Failed to get the entry for UID %lu\n" +msgid "%s: Failed to update the entry for UID %lu\n" +msgstr "%s: Không lấy được mục nhập cho UID %lu\n" + +#, fuzzy, c-format +#| msgid "%s: failed to reset the lastlog entry of UID %lu: %s\n" +msgid "%s: Failed to update the lastlog file\n" +msgstr "%s: không đặt lại được mục nhập lastlog của UID %lu: %s\n" + +#, c-format +msgid "%s: Option -C cannot be used together with option -S\n" +msgstr "" + +#, c-format +msgid "%s: Options -C and -S require option -u to specify the user\n" +msgstr "" + #, c-format msgid "Usage: %s [-p] [name]\n" msgstr "Sử dụng: %s [-p] [tên]\n" @@ -1408,14 +1465,6 @@ msgstr "" "\n" "[Chức năng ngắt kết nối đã bị vòng: cho phép người chủ đăng nhập.]" -#, c-format -msgid "" -"\n" -"Login timed out after %u seconds.\n" -msgstr "" -"\n" -"Đăng nhập đã quá hạn sau %u giây.\n" - #, c-format msgid "%s: Cannot possibly work without effective root\n" msgstr "%s: Không thể làm việc mà không có gốc có hiệu lực\n" @@ -1425,6 +1474,14 @@ msgstr "" "Không có mục nhập utmp. Vì thế bạn cần phải thực hiện « login » (đăng nhập) " "từ « sh » (trình bao) cấp dưới cùng." +#, c-format +msgid "" +"\n" +"Login timed out after %u seconds.\n" +msgstr "" +"\n" +"Đăng nhập đã quá hạn sau %u giây.\n" + #, c-format msgid "login: PAM Failure, aborting: %s\n" msgstr "login: (đăng nhập) PAM bị lỗi nên hủy bỏ : %s\n" @@ -1502,6 +1559,11 @@ msgstr "" "Sử dụng: sg group [[-c] lệnh]\n" "[group: nhóm]\n" +#, fuzzy, c-format +#| msgid "%s: failed to remove %s\n" +msgid "%s: failed to crypt password with previous salt: %s\n" +msgstr "%s: không gỡ bỏ được %s\n" + msgid "Invalid password.\n" msgstr "Mật khẩu không hợp lệ.\n" @@ -1570,6 +1632,21 @@ msgstr "%s: dòng %d: lỗi chown (thay đổi quyền sở hữu) %s: %s\n" msgid "%s: line %d: can't update entry\n" msgstr "%s: dòng %d: không thể cập nhật mục nhập\n" +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to prepare new %s entry\n" +msgstr "%s: lỗi chuẩn bị mục nhập %s mới « %s »\n" + +#, fuzzy, c-format +#| msgid "%s: can't create user\n" +msgid "%s: can't find subordinate user range\n" +msgstr "%s: không thể tạo người dùng\n" + +#, fuzzy, c-format +#| msgid "%s: can't create group\n" +msgid "%s: can't find subordinate group range\n" +msgstr "%s: không thể tạo nhóm\n" + msgid "" " -a, --all report password status on all accounts\n" msgstr "" @@ -1852,12 +1929,6 @@ msgstr "Xác thực mật khẩu bị đi vòng.\n" msgid "Please enter your OWN password as authentication.\n" msgstr "Hãy nhập mật khẩu của MÌNH để xác thực.\n" -msgid " ...killed.\n" -msgstr "" - -msgid " ...waiting for child to terminate.\n" -msgstr "" - #, fuzzy, c-format #| msgid "%s: Cannot determine your user name.\n" msgid "%s: Cannot fork user shell\n" @@ -1875,12 +1946,20 @@ msgid "Session terminated, terminating shell..." msgstr "" #, c-format -msgid "%s: %s\n" -msgstr "%s: %s\n" +msgid " ...killed.\n" +msgstr "" + +#, c-format +msgid " ...waiting for child to terminate.\n" +msgstr "" msgid " ...terminated.\n" msgstr "" +#, c-format +msgid "%s: %s\n" +msgstr "%s: %s\n" + msgid "" "Usage: su [options] [LOGIN]\n" "\n" @@ -2170,6 +2249,11 @@ msgstr "%s: không đặt lại được mục nhập faillog của UID %lu: %s\ msgid "%s: failed to reset the lastlog entry of UID %lu: %s\n" msgstr "%s: không đặt lại được mục nhập lastlog của UID %lu: %s\n" +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to prepare the new %s entry\n" +msgstr "%s: lỗi chuẩn bị mục nhập %s mới « %s »\n" + #, c-format msgid "%s: cannot create directory %s\n" msgstr "%s: không thể tạo thư mục %s\n" @@ -2213,6 +2297,16 @@ msgstr "%s: không thể tạo thư mục %s\n" msgid "%s: can't create group\n" msgstr "%s: không thể tạo nhóm\n" +#, fuzzy, c-format +#| msgid "%s: can't create user\n" +msgid "%s: can't create subordinate user IDs\n" +msgstr "%s: không thể tạo người dùng\n" + +#, fuzzy, c-format +#| msgid "%s: can't create group\n" +msgid "%s: can't create subordinate group IDs\n" +msgstr "%s: không thể tạo nhóm\n" + #, c-format msgid "" "%s: warning: the home directory already exists.\n" @@ -2263,6 +2357,11 @@ msgid "%s: group %s is the primary group of another user and is not removed.\n" msgstr "" "%s: nhóm %s là nhóm chính của một người dùng khác thì không bị gỡ bỏ.\n" +#, fuzzy, c-format +#| msgid "%s: cannot remove entry '%s' from %s\n" +msgid "%s: cannot remove entry %lu from %s\n" +msgstr "%s: không thể gỡ bỏ mục nhập « %s » khỏi %s\n" + #, fuzzy, c-format #| msgid "%s: %s home directory (%s) not found\n" msgid "%s: %s mail spool (%s) not found\n" @@ -2386,6 +2485,18 @@ msgstr " -u, --uid UID UID mới cho tài khoản người dùn msgid " -U, --unlock unlock the user account\n" msgstr " -U, --unlock mở khoá tài khoản người dùng\n" +msgid " -v, --add-subuids FIRST-LAST add range of subordinate uids\n" +msgstr "" + +msgid " -V, --del-subuids FIRST-LAST remove range of subordinate uids\n" +msgstr "" + +msgid " -w, --add-subgids FIRST-LAST add range of subordinate gids\n" +msgstr "" + +msgid " -W, --del-subgids FIRST-LAST remove range of subordinate gids\n" +msgstr "" + #, fuzzy #| msgid "" #| " -Z, --selinux-user new SELinux user mapping for the user " @@ -2411,6 +2522,16 @@ msgstr "" msgid "%s: user '%s' already exists in %s\n" msgstr "%s: người dùng « %s » đã có trong %s\n" +#, fuzzy, c-format +#| msgid "%s: invalid date '%s'\n" +msgid "%s: invalid subordinate uid range '%s'\n" +msgstr "%s: ngày không hợp lệ « %s »\n" + +#, fuzzy, c-format +#| msgid "%s: invalid date '%s'\n" +msgid "%s: invalid subordinate gid range '%s'\n" +msgstr "%s: ngày không hợp lệ « %s »\n" + #, fuzzy, c-format #| msgid "%s: cannot open %s\n" msgid "%s: no options\n" @@ -2428,6 +2549,11 @@ msgstr "%s: mật khẩu bóng cần thiết cho hai tùy chọn « -e » và « msgid "%s: UID '%lu' already exists\n" msgstr "%s: UID « %lu » đã có\n" +#, fuzzy, c-format +#| msgid "%s: %s is not authorized to change the password of %s\n" +msgid "%s: %s does not exist, you cannot use the flags %s or %s\n" +msgstr "%s: %s không có quyền thay đổi mật khẩu của %s\n" + #, c-format msgid "%s: directory %s exists\n" msgstr "%s: thư mục %s đã có\n" @@ -2473,6 +2599,26 @@ msgstr "lỗi thay đổi chủ hộp thư" msgid "failed to rename mailbox" msgstr "lỗi thay đổi tên của hộp thư" +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to remove uid range %lu-%lu from '%s'\n" +msgstr "%s: lỗi chuẩn bị mục nhập %s mới « %s »\n" + +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to add uid range %lu-%lu from '%s'\n" +msgstr "%s: lỗi chuẩn bị mục nhập %s mới « %s »\n" + +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to remove gid range %lu-%lu from '%s'\n" +msgstr "%s: lỗi chuẩn bị mục nhập %s mới « %s »\n" + +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to add gid range %lu-%lu from '%s'\n" +msgstr "%s: lỗi chuẩn bị mục nhập %s mới « %s »\n" + #, c-format msgid "" "You have modified %s.\n" @@ -2533,6 +2679,19 @@ msgstr "Không thể khoá tập tin" msgid "Couldn't make backup" msgstr "Không thể sao lưu" +#, fuzzy, c-format +#| msgid "%s: %s\n" +msgid "%s: %s: %s\n" +msgstr "%s: %s\n" + +#, c-format +msgid "%s: %s returned with status %d\n" +msgstr "" + +#, c-format +msgid "%s: %s killed by signal %d\n" +msgstr "" + #, fuzzy #| msgid "failed to rename mailbox" msgid "failed to open scratch file" diff --git a/po/zh_CN.gmo b/po/zh_CN.gmo new file mode 100644 index 0000000000000000000000000000000000000000..ccd8e82b9aec2f1adc78b602b7931166eb093955 GIT binary patch literal 60594 zcmchg37l2MmH%H>r8SEtQDdUss7RwWg2p8zs0gSin=Be7glW1T(4n{V>lVq13xbG% zifoFCg5bj95=9nCW|GXrY%@tF&SX#Q*WDzUS0ggD2G~hN+{yz=wGvA-fO~73bUIac3 zD*vB@k8Xzy|~V0K5wKi7<<#xjd+RH-RemFG1D&{11A$ZUV)ZFN0ISBR`bOjRCI* zmER_CJ$MMb3A}~O+Q9z=DN3&SVyC|iEa3ik5K_61Q8=>7JqD`0KLr&&-7LA z{{9G5`Ku|+XTZ(ionQph<$ekjAJ2m5La+h65&S7AetwujD8ENRwbL&^nlg7T#6J$s z2j%}gQ1b9T5{d84p!j=E!P|oW;{l%stMLCD z@JR3*;2iLk;6HMDF84OvsqhRDDZ6DwEWka4ybnh4tOGX2s{aV<80ajJQY;?js{h~7SQ+wN=}{uKLq|1 zRJ~9BD=)_dpxSRD7=epH)qgXndVdW(1^fdj`97f*nE^+ED$g`f<)06}16&Cz-$#P~ zm%tIYe-Yd#&GGV%0U4@tb3nD{HcJ&TR^4z5~z5ug5uMEg39mY2KOHYz8m)pP;%P>D&3u61U?R`TrUUr&q49? zsE>L7JqHy3t^tRDOF@-q7bto!gUYuHd>=Syf$KGAfog}Tpvv=E@L2FcFan#J5B|~zXhP^-vUZLp8_NB z^PuSc6g&$&w%O@j42phzaNiAzuP=bg=bPX;;IBcYJEg_(YB0jR5LEj0U^Vz9Q2GA~ zG`VSYc{(3dd9DKQ13wC`0e=gMe|OO7#os4EwbPeDwMS=gAKB*aGr%+PzY079>;NP1 z0Z?=ffER;52Iqh$7rfux3|@}=Z@}STRlCc_2SJr<2Kaig0TiDb!PCKeK;s8E2=_NZ zwf{eZO7}ZZ@dkBxIfj8M$7E3T`8X&!SpkZFyFl^j`=I#y#v7f#r-R4fo(>)h&IOMH z7lGo#YEbE(1C{QFpyd0%K=I-Dg`WS#pyJO4RgYVP`*Bcw`+D&I1E_Q--{f*S4pceo zL6v(csP=mVRC^o*mER9RmGAf9JHe_&K0clT;*~oeTng?4&jT;`gqQ1M;Ja|&30?+n z2F1@#@Cxu(U=?`5C!N2e!3%NE0+ru=0k?xH*FI2u{wMHw@Qf74g!=+e<+u(!4xA50;AcU}<-?%HxvzoB_qX7Cz~gWB z_CF6)xvl|~e;ugyYzEH(Zv&O?IZ*Up0VRjO0#62yy~X)7BH*>)mH2-W6yLuHD*s=A z>Ywkp)&0kUaxVZC{s5@_zX+;5zZvky;EA|@4T=v{x8-tsUx&^Os^YUA6cfMT$ zz8n8GQ0Z2HqPq=@z-K_U&$q#O;LkwG;Z;k$J!XNT+X1S6n}Yv-Q1reN@YmoF+*Qk* z?z!M;xTk@lw-7uUTn>tF>p<~!Cn$b@5gY-2H{g+X_r2Nmz6I~^|sB_G#-lFKGg z^}ZcE3ET`$01tx7|L7IYw^KpI9~p2OC_0Ux%CihqzS}|ZaUa5gA@G=M7qU7+%P4m=9{Iye~oXHfb78C1OYtn_%7fy!rQaMyun z;rmGYkfSw22}W(;Qk6II!CYb z{(C8?{67v(0>21~Kkr!YdgN^IGTe^`_bMD z=kfP@xu$}nao-6l{@20F!Kw#*+_?r6{fzBPOlkMdA5Qd28-bN;KdI+f7-!IaX${K9exg82%fY#m%A360V@4d zp!o4iQ1s7v#OrZ0sPeoN+`k7ufcyQAhWtUx9~A$K;B@faTYQ{o1~10_05}5tKB#tn z%T{C^{3LiA_zI}@{K#X@$GgD~;{G-$KEG|7^YJQh4DNeDmFpF7Eco{AUauLT%6}Iq ze*PHz5IFd8FV7rMi5N3|UgOZPb1Fr(l-05=K0WQaV5R^P! zwae>uH)wnVPs0BryM4U>1o%$e_k+iPyFrEjHTYKWCjoyA9*z6I!8d_NJ?-*v4EQ$O z^8?-lDtsAuB)Aeh23!XY10M&6fd2%Z4CbEkc0L6>3+FZ9iQuQfcY*7{2;2$QfZqhq z1ph1eS3m3X_IU6#{F}iM;60%D^hNO9;J*a-5zo1MICw1nSApX9EKvO407?$N74U@5 zx%;Ew>G*F6_?3Xa0wet2@w|`E?*|ocCMZ5G235}o10D$BKLAJJ|GF2vzL$U(;JyJo z1H3!hH_f7CuN_od+537-jyULzPd ze>rIU4(=B~<@XKnRPa}zQ04tsQ1v_E ztKLo*fRdl_pyWFbo(_HnRC_-PsvLX4;ovKv%5mh^Jl+tn8ux_Y?f}*P8$rd}0iFSV z4ODsl4UE9!zV32#A^1Mr6G6pm0hRw+@I-JQD0%xXD0;sHKLsB34c`Y@2CDsD|4k1+ z162LSf%2~l?xn%K6+9FFuYhNPzXe4%`g@Om38?Y04*V#%5xgAy4^Vu)^dG!EZv&Oj zQ{X$mm%%rHKLXW1e+H_Z{{)J^@BNnR!xw?);2r~t-vv*+ePlMw3cLM$<;9I}# zd^-zNya@qY0^S3@4gb%9ZwJ2wivD*)_^&~=|FPe3`WJ!X?+h>kTZ8*<(CQWZUk>;S zQ0b5UN3YkppwdkRRlfo#ey;*W_u1h84N&#@IruK{i0`_5oCF??dpM|ajsmBF*MhUa zC%_MYN510ia~b#++_m6kU<>$W@ELFl_#!BJRsZDtKOX!L?h&B!Z3f=~-Uh0?>p`{u zbD-MkC!ori`)8NKlfbb!$AY4JN5Hk<#kd~@j|G1QUI6|MR6CyiJ@>x`lz%<=5%7Lc zbp8$V<0#tb#K;?5gI3C;po(;YVD*oGl;Cwg{nF0ZG6ihmiX{I3V!4c3A02R{vp56^%q?{`7v`x`I4tNas(}4d5D&IH#G>iw}wAWE@ z@FM*0{h7ea`B1{#^{Je%A*4BzOYu zhXcMC@LQnj`wLL*^p2v-$2p+rT>~ngdQkjt58?NKlKbaCwe!mX{{X5!XLLEe*`WCH zN$_lNE2#GU7ASuF92EUGb$fpA0#(jxP~{mN{AUGsYY1Nva4UEU@m>N|-X8`0O$dKu zkC*c#a0ub&fe|)j#zNl@k86a0Sys-AxYRnHTD;c{LB zivES*U~meka@`2N9lRHOGq?pD1U?z?bKq>;2f=FalwW%KD?zn$b8xQ!5!2jS{m1V^ z;9~G3@XfDBw+Q|Udjk*6pL?3;8T`M_vxj&6KIxE~5aPctlTPD^ep`6Hi2pU;i{oUYq@%tXnLZ1JJyNYtX3tY_eZJy(KZX)aePb<&oaX-lu z@t*y?fpqcjD}*=j=yx{wD9;nY{W)+2&n})i!ms1m!g~k!FJKMN7~Y3~zXkRCDDV1R z13u@k_W!%c^Y_8MF5r9cyOMb0c+TKCC6r6@`3mkGJZjt1LH*uJ_<6iDMdUW}Ob!08 z2j?jQzasA+lx!SBDp3wRXuQ;NjzBHWX~5#S=8U+~1g(*n(@Hafq^ZsV=A9>n&ZpSTI-_H92p1ysRY6V?3Afe1zw_Jni`ZHP0yC-@$VM?-zo9 z&oh_z>%sUph&=uuj(_CI+<7M|mA{{Z}3MdG)O_mg>k#rtNSS9#a(-yCws;QnTK zKMnjf&sjV-Ysu3$=de=l(#;{BcA8Q@vOdnu&5 zD#Yo*J&WgZo@YbY(S%j;%)s5n^Hbgz@J!>0f3NWJK!`t+_xr;8&q9Pc+%NJRj1z#n zcs|c_BmP&1_-~_ZXY#IdkKZTkBRu*wIOIM~*y)7n_brE9V@NCKn}Xlt;P3Ds%`-9h z{TUpN`zIjFI@4b?*Xj3m{6EbT|Bm2&Fb>V7+27OnpNGd0l%b0ED5SXqzYp?$56@-1 zKbA>!O6I*q@pw)n-c<1C;D3Q{gx)INSM$WbFZ2E>o`b<}Klo(=Z{+zS&u4J|4m^sq zPk{Or@Egx_FVCg8zb;RHU%;*3zk~nAGl=)Mfn&|r|CI__O%!b)@-h2tS(l{RDlL=XAy4x0`1P;kTL#zVW^@#Fy9CcrFQHg0p#k!*jhH{C*PR zzQB7k&$064_X7SO=DCDtKJK@IAGHw1XWrxA4ZQpV?gx2Vd49_CpFH}lcgX!S?l<#3 zo##tD%Xv10I2(9>kmo4eKLpnVe_nGph4*X0zva1=XO;rO?+9=b&vEeO3&C#%xF)>6 zf%w1Xc@Iw;&#!piN!T&O-x}hq3|JrVeDKpeck^uGS;g~N9{tWCy?#G%$h{Ny1H8`z zcLu*lz(3&r@8G_H_wVuK1`RHZj0P8~7?G<67ox_Nc@51Yqg>Sly+rK|P5Jt$rK3Hn zo!g#oiw1W@g?wF0bA4eL@uw{+wC9_my2h3QvF5h4MQucFXwFAXwGGYf`R3Z@x_qu` z`l8l+M56Y#md2X;sJ$g>ZELB^lVo8-`~0Z6rLC#9F)FmzwzYS(o?TT9op}v6<{{S7 z9<|mM3JY7>oP5DE%upXXGFNq7ZCi6g^SqJK!hG$5G(mNqBD6&flzkq>QNA68yt$hf zEv#KMbXcxx=GcY;C2P*twMTOnDKAP@Q{!11FQVGU#+HTo`eCzjk^kV*%$n9&QB7Mk zzopP#Rqj8tX1)c?BHG-jxwa`kOL1yOpAF^O`lg2FhC+K=ZF@^wAsRh);`m8t4;wbD zDiH4z3ihrkhPHftZF@c%_u(nyr;eLFcJ%ad5%K_o z>*`uMAZl?eU1Skqc_yyWxKy!ZK zfXoWz88}0TB^)iy)R;NVD2!K;8=7nD+9j3aCygF6ef+i5+TAwubtAbWXm#?i>@-VYFf)Zc2JH@-{&v z8e8fXSUJo7Gk>vDtsb|ZC7Y;ZO|>`G*DfkV6GwlTX1+dYBh{9$hNgz5sJWwQ4ryr? zi#jKd4CWJF3|QkJeN;ToB$It!qzloEY2&7{-zw1DQd8HKM_6m- zw>0JB^ifpb!g$jjd6>zQ7%-$jk0n|?5?)8gTx3O=Bu+p`F^xy4dWwUl`Vmj;Hj zvR_;5Pv6KF3QBJ*(@O(`L||oxkVfCvT7+pT0wZ~QN3UTgirVt6Ep3_J65_QmG^=03 zvHB88oFQTz&6Pzs_{XfPkg!s#!IaSS{kB*l7{-q4RE~vAGA8HOjh;Fw(JhJJ^99l=8l_8tg?;NmT#hCN43q1qG{tMD2jK^rrOq4k<<_$SGNyp z)5fXC7*UOE1ClA>TJOST$k7L)+NjW)uWOjwPzPnpC@xZ^jI4;Ys<0-Nq+FRAC;qW4 zmL^fRlTc(*FzeMDQ_P=a;zwo>kke+145h}#EP>>`zM;_CSi2~iTid_{KM&!oL(3=_ zmznY{7avEx4tK))v~ct=rOA zPZioxd?F>YTGXi)b@THTCrbB^n}vBInd{R|pP|yyB<@FJCQqC=ZqoFmb*~sVX7aRX zZbQBiWjaw~N^0b#=p((Ve`9T9M?OxSA(+X%ZBc7`O;f&oeoK8caoqGPCy%ufsPuIT zqpMh0HPRtUg9}3~b-g%HpKr{g+x7Yde-TOQ9{2m+V|JEQuRb3}I3GGBQR$?eP1mdA zhjfX*NuvtXXV*7!CTdqso|u(NRZrY36T`Sd%A%xM5<({8WyH#e^wF|LLW0Qj5lt99 zjTwFP^)Z_@eVD3DV#P^$oa#q$8f&Y(+A7~{?MW9e{n>EQfOp(dg{T&tEQy|>VA_0X zYPn!U9SJ=2Fx%XV)W`B5?IuY*MYg;{_e(=e3cWu&*Y>rhV}fjlTB#XK{Yw)j3#oWf6dE#NPl(Xaz9?$Vw>2=}_0ju` z=Y5frV3m_Z&oNU+D!2o3o5?yZr&VE|1aMwMeI!9B|Hb{9PT(R(94SEK#}1qph8fLx zxKb}l^_?_Z83M}kb@4I+7Ft`dKFD0zl&rDK3Q&QHwIzBeWe)r*rt{#S5BU!9#Yyr zY?|>{zUDRp4JyR{v0yJyo(uB%)|&Q~1^MREHC`xm(x1dHjSty@$Ose`Fj`K#dfbGJ zwkXz1IE`zyjTr8lu_Lh@QsjI)x@)rZwc0nTBxWwE&}io0uYS;P^1}R!n%Dy&gQgc=`*ieMSGS(OcGfj0g$)c1ky4fh>uo8Zn*;1A!Mqm;d7o1Z4`6U!$ zM^L4V1$B-2T6mDZDKm+56b@%uB?e9$dp;V%yp}d>;7yr~8{Eu*T{vT9a5Jk+$4yl4 zf6ww3GRb6*38KtoW>q)SglzaMZwm1+U#9>1nsq=4kQ5@vZYHi)r?-*9_5y0^eS~e6 zJWyRXLjIq#!m_8FuDhrsxvk7tk(t14%Awjx3}a-A3g6t)jP0u7`l zZmyU-{mOAuXOEwB`Q*46N+(y39#&_>P?|(6X7@=vN*u8>no!wzjl1mQ!(Ym*B>~Kt)rQ4T9NaXpWW%^=@q`G-&4}nmTUEXCub0z-UVEAVP*p3)UrePbSWuG-Kjr!6crR zM}r^rK&_7_(==(=WA0UgWZxh}$gW?E2LmK5P3C1SNM;K2YuWGVU{Ad?&vcfbcI9a8 ztSd&`-|#wfz(K-|eu@A zd(4!e_R@TxWmdoGT{+Ov1E&$!S1ne7iuRK#{0j0%Q)z3+7i0yG=Y@9hTW1=~`dgMT z?xV4W8t(`+X)Ga}X61SPhHPtR%$NpHnKO z>mZ})?GrCuys_f~g?%mxWeF=0J7?-uIr=Jz`a&SDWsff zq;6!Z9fiA^bu`QmCuVHSZ5r4(N%l33LtVX&8@#M))nN-@p#<-LWslP-wX`h=h7FXT zt7lg>Y_!Z}FOh8pGk|1F8#k#i10F&6UtI`=a}H|hG4oqE&xEon@s34xm;zY-a0tXE zp?EaU9_JwrXB8H(pU80`DB++TS;e5y#~ur78#o~4o4IxK8`uw$_7}%es+ofu8Rxao z=fn{XcG4U3bK7y4QZsninT1@~gd3F`%(*BRtB8dsytF+88-#~dP0)VALJWPJSi*oZ zSZB7<1ck#*ksb;gT%f~E2?w$`B&MTd_Mgs=g>z)prWBv1 zN)Jj`|G8d9LQaBo^e@!fR;8n!!M4Q$;qcInSb66Gmz^I$P(=w1vH> ziS73VVuc-iQ^{n(uI*rJtgYb_^f4{YT+!0>6-$7|hP0karqD^_r_seREn@Xf33fC) zfwaJ>#ufEZr4lpxU?xd6!@JO41C`h7cmfougSwnqbIv2+d{3?rijt zRL;Y`Pr=#{V#XJzSsF{r%F)xtj2~Y)Ud$_5k>I;2*THhH${Vd-j0tlM{&kHFOrnAH z)igss8ca28R#7`AtX6eOI9PKvbwf!<$xBZ}c?D{2NQ2^Y2%J2eBcs^@%!qk(Totay z2UJe&X-kaG($dt54T5+cJ{kd_bXtFFt2`d9E$x`v<{^j(2L-e`*D3=|_iUScq-Ai5 z0NFy4lP0tNu3SCkJXF_U4A7PUYv0IpfZ7}Byeg{J@EVCLCeeIdAqn1nCJDpSUyxZy zd02U-%|vxLj%Gc?Pm_jyO7ZI1>DIuUj~2Cbw7CFE2??SZN>$(1(#lcQh8xi<=H+|mX5ktHWEbOXE4j^! z$MPU_ffC}ez;nqARUu5WAtD9Fo<2C(sFPBa>e0fXkxKq7s|rZ=qKK2T3zAbG`MGmB z-4>s$O@z&bmaUNi*%p?96&N2v5*vM`LWMX|*lYnCI!&)ejN=8yO6{&JSZ#E3RC)Rx zBX)&C_2SyNraT6O=DJ17vs8CXMz*&6ypBf9x~5E;O|sBFyIF!XYQ(Ur=@cq9zmr50 zvrW}Wf4`g#T{4B3*cawEw5k$n=h6u-r*dZ!xd4ktDKC9+@%Boi#&VMmKGJ0Z4VTy)E z#t-ee<(oN85+Y6OD6}@zHMDdTbg-(0u`cLRX;O8M*0%hOic}`(uJ%ZMQ2{cF*|2DQ zd#r?c*Jmln%7;0!q^oEtubDe&KcP_5nSA|te8DPPyY7I&o-? zrKp~jx0h+32(47|5=}FX+gpJs$u?A7tG?vZ3C#i}k-}-XSbqtmHDso}snqj>krc#? zjHdin4Z;*&l8O2CUyd+I`rvOh_tjz0>O&DSQ)#br8m4tCWl7dyPR%miXV;QgCH6II z;*#JnylA%b0x|*xC0~jx-QACTn^4y4T$r8e2>NeH-q{%<7{O898#~Z8Pi;Kamyy1O zqg7<6y;<2^Hf*h}bC)GS(*IZkvG#~%wZT`dUJXxg%v1VofjojHQ=jF_)&%KTkwytJ zDsH4&vY0yjg5kr<>D9Hg`k`H=XB}V8Kt?rEIx`zPDrOf`h)r8%O)xNpGQHPE?(%ZZ zWpCCxaLSylnv&L@>7Z4^wyH0YW-v^Jww!8^*SL43R9uGu9D&vEh*})|fTxqiIGgxC;+@hICeY4U^P#RoP*EBqswT-G9drC{D ztnCXhi{WAso5ada->2hz93jlEm_X*6-KI1-#t}Qn-aDNsj=jD8YbIyu2`z$Ij@|B5T7FTj=-cO@Feb@t5yOa@HRG2hZ(6|g)o;zL@dhqpU(vFo zLrGaZK&)h!Ag6)W$|8@HzfBz&@MYHRz#ggZC0N+`RzWZ?nN)?3sCyf3v*OEYs^nB< zX2;A4HKwR~p_!<|+;06g z)dz#l*IcMW55%M_GNFzvQ2o2V1aPMp&B9&B~T7XQr9<(hFNbADDTvNKGw zMC4qAo7(-G`NdRhQ*v^!%WAit$=qO-2^^#j$eX_-O zD;Bq@|F~}OoL|d<<~ez~nUBapSVXLhZ*G1J$_-;`fw4Q}j276WZ$xeMWE0On$)x{Q z%OFPw2_3e>_CTZwhN+&nR9VjsGab!{qpgRM9+8eg9a)n|tmvR3V-PKsPFI`N5~@!u zCRm`gKSd3=ia^}2O@jEy1m6110mG_fyWrrpBFhMwMsrEl0L$u$gJ8D)@iPV`8PPTU z@OVtoI&EpGL_4vL7FQ^)6oNDM;x$`O=ffZfHfAmBm(0-dvVE1 zG38kjBh^N<$EU9vnL$DVJ^(E>D=s2OlawU6q^eB)jH~DihGA8c7<;u+m$a)d+Gc^x z(DrRZ+RgNBKFgcX?j>0mV{8Ja%EaRTc>B_VlFz=))^Io!DkisjGjlpq0vR*Y*#Ke% zNW_3I95`8Hp(=v{tN0U*c8`krN)e2E&(PeNXHMcHur^ku^XAc74b5ksnd3yj=;Ve0 ztd!Ku7M}60$=Gp|#*Z6IIf$i$F3~uBIOuz>V`Y@CzMfyr#ECUy#|}**`8OnmLH4sO zG!GO;LZ-f6tzay3M!H%lxw(u@t+=$36Yi17jd3%l@9&!ek+v3Pb-^W)rdNIIP>HEk zqM`_M@;a#&N8wVJ=7Mes(X}ZdMlk-cFo3wSqvmlCYb;j2{ib%4WgNv1*Cm2sd(J7j z(zwhKd~;-L9O_yxGiID`X++~3H;p9Wm~^qpHWcP3Ma$4aCDLU%*($oxT61ljL+X9d_G0AxjNnal= zp2mrfBotc36%p|rGFUaYMXX7p2FrCNikVoUK`O<{663Q5jM{~~Rik&&HG^lHAZ27y z97VCgr*di(9_{V+6=)kXrJo&jSZ?Cs7~KC+IqcK1v$d%tjkFMP!vQC& z)kI=Z*fa66i(vwE zRVJrx$RsQ|wUy-KZ(y=*QeLj_h$kU7xhw3e&>?EfA*N2)=`prH<7O7EFxaH+?V6^n z@@A-~9j?@+KvQ%)F*lwALv5TA&3x6)<;$&MRb%}& zE-{9gVC=YQnRMRUw2zmNibtwUtg^|F2 z$5PXL$!==C#-nGaBuGuw(N8t1H58h#Ek{!AW2(M&aaQK0F?wrKN(^mmgvRe8VY-d% zlGB)-BibA5zFoA3u4_v@z4CUmw;Ny*&KjF@F|#fU#QFa7zj;`R}b9+Vu;^(c!lK1)NewNGZVUfJ{&rj)TA#spZCc5)PDSZ+pYd$Hrh z-fuF#zWmT4mm`sONW;$lacqZsFj>%OwUVJyc3x4@G*Xa}E*4N^zmjsMe7S8hy%)nvN}N(-l6aSF4l`VT%V8sUqH0Vw%r6=AlZ^fhDS&mznb%?uO$fJK^Vlm?FG z%d&yvd54)9K75*Wmz<-;eUFM1|%p$xI;lJ@v@(3`0b1=zF4c(#78W1A#XMM(w_@wd8;uS zYa8Fb=QG-AAQ#S^$O@~k%2Mt1#@e<99be+GKD>)1xU3MVQx|8L7HgM7CZ*{2dpNBm z{42Y%3rvE#ZTgYM&H5@yMeiH)l>L@TDUGvvs?!8Y;94sM0Z za<~SVjR;*NqlFeSI4qYW(e@m&6AbQl+|mm_ zi@GZ*+&y$V>56iCIBr~yOYwT7^q@bV` zb&`)J;56&_+?`KV(dlss%luPmRQ{qJNSaC%5--xB^msNLrX0=2hUn^;gzFjg!9R}H zUl5aCtb~-OvYim8C{aQYwyP_>P-!916Iok@cj+mBhb_38 zSa0Ci5uJyYPS#=dLtbl&LSHFj(dCSDlk4j`*e3H+$;Hg97sBp+r6b*!5SUv3OLz42 z*(%Jl2$zH-Siyvo$w7zt{lJVB0w%>~9(~*(o~B-9@#4EC0{>Ae+ZN^0`xz3sDh~)d zRo-fS1ePUE4f18j<#K6A5dB!wG}R~@>_$sB*Z9IBlhy+Zb=Z-yUnd6L-svl~LRBVO z+0nO5h+QF`ehiWcG5chkw=H?nl7-`xp;nnh_HBYbRApEyOXHhsQ3=I(gtT7H&b9H~ zJBFVO(nq2R*ZnY#b*A_XmL{CT ziQki>2-QO)m%pVSNet1ns*g{lc!le8Z7qDAl&{Yr zVsjB%UAoP<93|z*m9(`so~eJ?7-o&8*`ZS0B(RqzArCf<+uC#X#<$XZx)Z-+SILE> z|0~@l&_V~QbWbO}O>_I)j&|%~Ri3fN-;wEXt6bC2Pjl*IbJ!nT0)PBm8{N`-cr5HsbuMsdn*p&BOwC64qSSF|SZF zy=7$7x?rB}p5Uqn?taDEa;dIOD-2_D<{&2b$R4UIn3Fyf--norEXbY4r#JU-Zy3AiwBjwYU22b<5D(_ z7&g3Wj9+S1qrXxy5;Mq6?dNbYbVKt8&9IM9kD4+4@|ug%cq;c?ZiF9)4O4rMBcqGv zF#MuFqKGusT+T&tlJQn^7DkQuVC1i(hJUb1e{SQ~`!`C`{qJpbui4(U?1kd$yYS@? zaCAi7+wLi@UfI22U-7_wJN@_kCNt*6!%ud$8xRo4cOA zg>_d{Tyk^I&OKfLuQjnN{jH78J^Q*I*sBlp?T21xe}zMTZNr27?`^=!?rpnS$Fi#H z_b+Y?>e=~H_ko?=`);Ei-8(mTufDx__xj?pbv>K6Tk5e|--cxtJI`I~U+Uhn7p`^P z|6JFa7Z2@Q-?MWINo@v|9(!oXUC^_nGYSV=it(=2OjELx0U~`^u^t`dxOLw z&mUU%90ls!v-f9Pfz~pg_kh7^)xDOdA#es-3TtCMKy{$HwIzav$weA>8|^h zbuWLuYw^uS_-fUpuRm?kx#upIn_hq0qI1s<71-EbT)f{%O%N&D+RM}|em%72X37yd z*q+tJRWDeYiAvKH{=P-m1B;7Wwt4B}bhJ(9o-JKZZKjortJa5#ym%)q)P4V+o)9bKUN{+)~& zR>w)IW658xNRt#-uTURB=J(xZk^B9F6LeI@LECy_R8Xokmwx}=L~-@q#U;;sbq;M< z&3MqW^WdR%>Tki0n4^a}i9Y_)M98B! zfefEudx)QeIu%LUzR(3BouSm&$nFjG2t2jid_rK(I<(<-2DzT+w)X7Y9rwU~|7b*z zQEQ(tFUM19Mn;{4|6Pd8^^;zaqz*j?4^aP}rO$TmS>E%~ixGe9L0nlyk1HAA@zk`R zVME2&;)~B~2;R4n&dbydJ4hJhX~!04oAIUc-+m~WlaetB87w}uH`9ar{qqf-`<8Uw zac}Xi-CgS*@7%l6uj+yX!)wpMyMtzwa@x(%ef;@`u16PlJ+#$}?c+e#`d!7)iR+nb6&i>(s>=YaMC6UD)>$-M+u6NR|XSW|(x;)F&Y(rfzCaPJNG<+Nr{1z9lO5&WJ74L%owN^Fzv2a;$DBGfwr&E z!O(l0YDNUIWk`BbTm>hiYTJyKNKskOOUq+NF3bMFf{1wn=U*aGrO7J&ZH8>iRY;~a zoc&oAR+#j+ey9wl!fOJ7l$w0oHu_sG~;=?f26;WIrVEqOvMeJS4cEK`+q zuBRVlKj{LU2g5t&VA2kO4`TYKk)n$$u2J0j!Kp$i;eZEe(iD$S>?LYQJ~omwGL zg}*?M^a!{Y)MlrnP98McG*=Oz3&sm2kE8x$t3(Dh%A6^v9UDskepk}|l)JjP>Iqu}`|#fH&S+SP?$}b? zv$MGT@y>&ryKde^Kk8b!U7ae&^w95L7bus$ozEBd?&x0gxt?8{SR`QrFcSU#eSt70 z+On2apAU{@A}Kj2`Lh^y`F~%3J%CxC0m3B|ik$~{YWbDUS(douF9!??`Xk-Z)+C(= z9w5s@Pi*gc@cE3c;oHOdtC4+0FzYMA28p64_R+2YnUbM0|qHp-^gHh1qkFV)*v2AOTi zdqA2dbM3#@ij0$*2IHYF(T{z`3ncDY5nfFDE$tZEThHF;A683=%$Lr|7Mn%69cSet ze&z+6gjt+ttKYM8Gr735NxaIh>_N)=S8^((v9F3pIOXBaM+r&7h; zt4fw;QUVUk3J|BGP?QMcO_o@!6L@ZYT&+(|#hpQ7i?=T+?tHO(+ddR}TC4MbOiEET zokN;1e>@kJq~~)lcrAUXXcnV6kzDbr{LnF%?e5%jC#p=gS0U?%Ht*}+aYyl`C7RVA zSls>44(Gvus|4eH_HPGRA=nVFcwxRe^6I;k<~7`t?{-07VzZ3J!dTpLmnjGm;V{sb zT|JM~m^IPa<4K5Zmsn-(B_{P{X-j))WjgV!_S%zHAKLU_am_ATkMayvfzmSgwFkZL zsV^Uv{Aspo??a5uR`@uk z)u0a|gFFet6-komH`D(rrwip)5o`tIS$eXlI?i}#vaI@#z3K_K5*%8yp=Z}FOAu~a zkM9vl8rfcaGV<8Pdsf7z`W2lA7{~5%Qzk=Tteys1l`oEWWi}b1A$RDOouuq~`r&Lr zl(_eO@y;7qof(_*hXxn3^!qxvKd!w_S0hA_egviPV?+PW!T9{Ez;otSbPioph3Fa zJ#qo{NzAnq4uXx2y4Kx{nMb_}d;5-cmT63&;+5`U2naiZQhDQB-Ajjq@?&TjwVB*} zqGw-`GyK^+E8ha&vn#f_SS@`F=z~OjHm!`$Y+2F!ZRqY=c~5cgszaM!M60vBOYdEe zw`SZ>q#10}RxfcS!(3_FvP@Ic(}s-fJ zmbJ_x{N1)=>Yg$`3}PEl1BS*p+oh;>D}t*KoqKQhKXB0$spD{&y78yq%hFxt@`X&+ zgfIQ)y7+HLXUK5kvC>WHW#dzE`GdtJPZim5EMKSfds+Hx(*KHEHog}9FLPyj&#o5^ zExx1c&d1$EnM};u_(fuNy`W7J-%gG)f$K$#NQci}1o~2Ll{gWV* zEqpF1Y+MtKlAvztyFT>gtO%(P((SbZlUa}jycS-Xv&=%f+)AmXm>ZycOJDBT^rt;^ z+y3|ebqF9n4N&cy6LsII_{Tp46$;5WstL>c1cz57-8j+}Cv2B@!s4?4$E0z>jKZ)wDb>xn9-A_H% zSA@tfO|KZqIS7-S>qws&`-~}ZPLxAB>CQ*AoB!l4HIA;aOc<3mQg!!JPf0pCpg|SF zaIeeL$);#V)=);SOh3eq3H!HKkGp=+{x) z?1WOLSwn=(C{Qt4_vW4K7j)esCMUySc{6vdd8xSn*6urAWVonMUJLD7xs4M8-TRi& z8A|G`WBUuj5F2ZwnQ}@JURp=lY}Dms$L>|Vvk2l+TA7Fmp=a-t6x`R=)pqH+&OIgL zbl^IBllvE!SKq|i`*=9Zgvxg7lH%>3!}6lBh7Po9mj;>_wqmF(sZ-CceUkgq^7PKw zhp6(5t=D;w8$ByVVC5>Nu#N~+bg*|-%a67>Wr>+<%a{*b8OTVUo!Ls}MUr}d z@ewR%rIvz5>0Hz;f3IN4DCc#t0Yo=Us|+@-l|&LH^?1eb6{-gZRnx4cK?1T-U0L&@ z`$l7*R6VNH5oCPv{*ri6@%9Zm)2F&vR(_7z>Zl=0b53IiT0wTFEfk0FB)EJ+k@%b5 zaL5k2(Nx6FUU+WK?Cs`6>76LKS3SLIy^Ky02_oe<7$va{e5A#w;a>HHe8IYTqJ5F~S?&X8xCC(JXOZe=Z!3a{p^wRa}XYcKVQOoJeYHx#*UMt=iRf$2K&mko3?kkJ8^5rJ1=rqeP$O5PXP4SZGAb{=l6S zymbEc!?U&*m-5c1j4*q8%gA(X9PAxd63}(?BeHl~RH{_%vud#5$BT{~u?piwW0_?v zqK6_SzJ@I!>Syrc6Me}5o@KsM(y~SxXrhv8v1EI4-X^i)+DBF6nV}?eXM^mp@i|U! z#Ii^_yGFH3eB;GkAHFnQBBjOKC8g!%lBvOF?Gm!?Td_nVPEVCun?27v-Ou5e={FjD z?&)z^oMFN2X>A-chk9ztDR1$;N&84L8L?p$F9u}A zD!2Z}GLtla@BX3{yY>JPC_f0s+Ov3Y9g{G}M_sO{WMjIt3|3k@8%1AY=))8pS7_DU z-79yyX_}S_=fF`JmUGbB=Hko$~jz%?ztfov0|o~a9IDB63VK>s<%zq$(`%e)1`pw#9|fJ`cmP%31coU zwX)wORSWFgtLPm~ho#o_EAo7$J^L%pJyycV}S!OR*`NsvkpEpgYF+XOW`-1;mM zlx&O3M!#e$h8G#U_ub~hkarJGEJejtw_sXKha#tKHiyNSPJM}=jt;hlNVI$vL%rqx zhiQ5yYLXRKJyzVZ)-_=lzGQ?+Ga*^r>e;D2OUmsUp<~?*#LG)s9bKRMbL4L@$zSE!#x?JJZz=}=Zb!7SVQ3Qbl^eMR8Z zLUM2jw)7dz&RX>o!FRH}v-CwI*`MQhQa_~JB+wU;AhN#3$=F4c_VNh*@WfZ|ZiDY# zjI3!c4BJ8VOFDVqQA~3PqER81FC9v>fIefD*j-CwG3%~cua3pYkzE2)nMCC(Nl_ed zQmItt%pjEX=t}XN^Qk6Yk~PCDAtj@8Nq9G(neD!t`L6H!2KLA5XqfQ&tgN?xEI$2~ zJdV0a26hgf1>>H?=q6uI z$837A!~zYOxDtWu@xAVD=VcxYi#|IqgDiC2f3S1kquK4dbWBwvncM_gxZQvp+^W2p z&r^l6+NZ6agBzGGL!b$G5WQq@cHnVzb; zb*<|TnbTzG_w!zvi{I0tjSP0~m=$gg_vtf@1+UzpqJ^E7;_c6LKfy6bS5D2C-L>}- zJ6vgA$;Z}8YzH(bXB^!Yg4#whRNHL6%sT5 zE!$JVVQgG|SF&F*fG}{mqVpn|`AT|FO+IKY9toy$s0@|GI z2gbx|v)FBvP-mKt?!~7cnXldA;VNqxx{dRRYc*(_PMMXBtT_eoh>K@Evf3|`a5Hu` zkt^U{df3*vcU$)w_WGojhLORTim+_RX21xee=P6I=YjcjZ?H#4cPWU zYS?!6p77%Ho>^LBcZbQ=BgIAdOERyRTb6p7Gfm|ENSw@kWRqo$r&LEn&vYHVWNt25 z;v*F$3T~P>3F$Q@c$|1tDwmp+LJ~3n1#;q(5*60x_4q`ZiD|FQh!2sDoO}1l864mSF>{S!O z4_RXD5V%h@hnDg!tG+YU#>N&c+dKE|>*N549dt{ZJt2>%J42W~tt7r@9^X|=K|R>N zk@S`5VUjsa8g9m8ET9AoIZ0{M*ehPda95S9#+K#Z(i53&sp1Rir}nyZ9VV#H`xOBP zmvZSkEs*1`bzg}3X>wUG@4Uy#9z4P~==y-E^pf@7;dU@)kf>s#VY`aAs$AEOM=?z$ z9E^o1Sp&x&)Xi3HJ~67JSr<1cp*&G8h!3Liu#R-;z>cXG850M&nT+|l^LSf2?EA$Z zum(E&7ZCr3hUD4oD6jOGI2?@RGu2aQK38f032Ulo6BGB77JsNbe zWw*=u_+Gk4rsl~YrviGHa|VXSD5-olyu2I_ZSC3hNVqY*EX?Px-rThw5HbjJoay|P zllzV7eTCVD>2aWMV%qViI~giNRl>%j4V|%cZsEZ2fwI=3iZYN(G7Jd z5KVpMR$ZcU|ARdT9y_##!_Gm;N$#5nOyJ-d7Qb+oZJ%ym@zWVOzgZ<-C9s9Tnk-(N zaB5el2PX#Ql1v%x*$!l>lkkM4Qs>_LeI;Ui@Q(s>t`ND&ml0NX;$U@Wj3pAKbQ3ox zDcCXel7uy-^>t)6+g?sLW3|b7$Mdd5ndo^O;jm~LLEMH_cB?tt%?#!7V6V8&BMBvXinr zS00WM67QicA0Q)}4569x%EV`4T{+M}!25RdjjgugHxlNBjw6*IYFt%JWSU)u?i78Z z%ysWr%l$Y^oif$>Nwu9DJ72s*hfuwpvg3;+H=~9bx74qK&aJP}sPt>N#$=G@d%FnT zGiL+a)~eKt-nxlBwNO{T23-}V55MN@;_sz0*=^aVp~AipiW?un4O<7Rspj*kF&0KR zhZrV8_p-~-)xo&xme1|96gjvPZP4W_9+=dCiK$2qZUG3L%XJWOomB{3%CAF@oZFIG z`Ve0~Krc>EvIL;4&IXRu(F|tAryf!^)KfE|A<$!oA=Kmh73p4O^3h7mtUm~;7`^wt z;?uW439^Ox5Jm5GtpE?ZpANsAlrw9NU}AXjPEG{4=Bq;34LwO4cdZMeVyv)Fi*ni2 zo-TMH>Wl?BUs#7&JGXEEu&N}D_sgWactlTIF-Tdbqx~)0&vae)%!Fm}7o9q5XstSSH_(vy(B&O`zW8C1FUw%-N9&Fq7^wCErNIWzCyEOIqL&008IO} zq@DZLcJ6yB9M-UP#;^C^@9d;!=X4OH?_i@42A}(OA6mM~4I1X{heCJ_Dno=J&nL;4 z?Ny9JcKF40aa~?6E6mc{y%E*gc6L!GDs2B2xk!}V?1@61u3=Y9#!yBJWhuq)+50Sh zxDAW|zy7Nv$QeFMTWVER?jR9^aW;L3G+=}*m64Tcgt6l=NSR_9zPF?SlY7wZJ(_vg zWt!>D!+qfcR4sl3J|POXXAqmL{1bIuZ0?!(pv8It zh0KK_C9dy~`?>I3AAb9OzH75=717x>XdK*x?O8`Z_AE}R_5NZk%*cLWIrkiBUm`R% zvo`fi)M>sT5Kryu!xAOQ9O~h$MD^43XZIoUF_+IG6%%Gt__rRGI{a6GNNN&#U^^c^ zcWu=C>PsN7GKG(HaMzx;BxAttfTbdwg>~wM1;)s{dN|q=}F3j<$ ztS@5hnnx`>P`~V0vf^7&`B;Ik&r`L>&c3|wvf^+iqu^m}U2-~)YOG!-6l^K0+ zV1Z>eEn+ECD&&?Zs_!aHCcyQ~ega(2=#_%qC+YcIYmNfMY0QMM)l*p-<<5P}2~Ps! z;&`q`qig-jk{A_kHh1$mYe-bPo?Un4WGc%X#;}XZWQLN(^C78gyh)o4Hi{CZQZe*3 zB6~0KVp)t|zC9-^#etoEzzSQ9>jYTTyB=IEdhzmX)8KkqB*YGTRDH+x&xCr#wu74f z;bq*sGEVYsrVen%pK`H57pxS%_Ov62uHLE|@h#?5H5lLZsY{9R{UQIOfUcTRXD97y z6>a23>bL~O)$5FZWcO(g+-!G|wOLO^f!W`hys%qJBgN%+XYzOo2j zZtHXMCHcAxkx3{og0}juT%cfg-_SGE4rUwTg?PGh#*V55hQ~Wi70AOxlgw1$8Si|n z$quP8fcdeT&>v7nlQ!}5Es`ADwz!Ffjy5YaN29?}a376H2^V6Mg)+<@bT19^S_Bcu zrlHcYIAv1!0O5($*hz|H^RzO->{e)n)S=v&^Y)oMlc_N+k1xlA5^e^N>=X(wvR9dV zf7irdiz3$-OifO1KG%)s8hds;LWkxqUi$DpCYQUy8r9`DJ4pE#F7}zBZ&c7m>K-N& z&Q0dLw2l2Vn=Lhx)=c<7T`gQKPH5(9i}*hBP+Hd>xU4$`=pT))_X?^ zI*6}hZO--{m6Ta^fp?p@df0ATj3-E+d}5_77E5CLK%|l(Jn>ejlgq?{KlZf%wXH;B M`<;B?Uq<8q1Ic\n" "Language-Team: Chinese (simplified) \n" @@ -417,6 +417,11 @@ msgstr "%s:无效的 chroot 路径“%s”\n" msgid "%s: cannot access chroot directory %s: %s\n" msgstr "%s:无法访问 chroot 目录 %s:%s\n" +#, fuzzy, c-format +#| msgid "%s: cannot access chroot directory %s: %s\n" +msgid "%s: cannot chdir to chroot directory %s: %s\n" +msgstr "%s:无法访问 chroot 目录 %s:%s\n" + #, c-format msgid "%s: unable to chroot to directory %s: %s\n" msgstr "%s:无法 chroot 到目录 %s: %s\n" @@ -762,6 +767,11 @@ msgstr "%s:第 %d 行:此行太长\n" msgid "%s: line %d: missing new password\n" msgstr "%s:第 %d 行:缺少新密码\n" +#, fuzzy, c-format +#| msgid "%s: Failed to write %s: %s\n" +msgid "%s: failed to crypt password with salt '%s': %s\n" +msgstr "%s: 写入 %s 失败: %s\n" + #, c-format msgid "%s: line %d: group '%s' does not exist\n" msgstr "%s:第 %d 行:组“%s”不存在\n" @@ -1045,6 +1055,14 @@ msgstr "%s:GID “%lu”已经存在\n" msgid "%s: Cannot setup cleanup service.\n" msgstr "%s:无法确定您的用户名。\n" +#, fuzzy +#| msgid "" +#| " -r, --reset reset the counters of login failures\n" +msgid "" +" -f, --force delete group even if it is the primary group " +"of a user\n" +msgstr " -r, --reset\t\t重置登陆失败计数\n" + #, c-format msgid "%s: cannot remove entry '%s' from %s\n" msgstr "%1$s:无法从 %3$s 中移除 %2$s\n" @@ -1260,6 +1278,22 @@ msgid "" " -b, --before DAYS print only lastlog records older than DAYS\n" msgstr " -b, --before DAYS 仅打印早于 DAYS 的最近登录记录\n" +#, fuzzy +#| msgid "" +#| " -a, --all display faillog records for all users\n" +msgid "" +" -C, --clear clear lastlog record of an user (usable only " +"with -u)\n" +msgstr " -a, --all\t\t\t为所有用户显示登陆失败记录\n" + +#, fuzzy +#| msgid "" +#| " -a, --all display faillog records for all users\n" +msgid "" +" -S, --set set lastlog record to current time (usable " +"only with -u)\n" +msgstr " -a, --all\t\t\t为所有用户显示登陆失败记录\n" + msgid "" " -t, --time DAYS print only lastlog records more recent than " "DAYS\n" @@ -1278,6 +1312,24 @@ msgstr "用户名 端口 最后登陆时间" msgid "**Never logged in**" msgstr "**从未登录过**" +#, fuzzy, c-format +#| msgid "%s: Failed to get the entry for UID %lu\n" +msgid "%s: Failed to update the entry for UID %lu\n" +msgstr "%s:获取 UID %lu 的条目失败\n" + +#, fuzzy, c-format +#| msgid "%s: can't update password file\n" +msgid "%s: Failed to update the lastlog file\n" +msgstr "%s:无法更新密码文件\n" + +#, c-format +msgid "%s: Option -C cannot be used together with option -S\n" +msgstr "" + +#, c-format +msgid "%s: Options -C and -S require option -u to specify the user\n" +msgstr "" + #, c-format msgid "Usage: %s [-p] [name]\n" msgstr "用法:%s [-p] [名称]\n" @@ -1311,6 +1363,13 @@ msgstr "" "\n" "[忽略断线要求 -- 允许 root 登录。]" +#, c-format +msgid "%s: Cannot possibly work without effective root\n" +msgstr "%s:没有有效 root 的情况下,不可能工作\n" + +msgid "No utmp entry. You must exec \"login\" from the lowest level \"sh\"" +msgstr "没有 utmp 条目。您必须在最底层的“sh”里执行“login”" + #, c-format msgid "" "\n" @@ -1319,13 +1378,6 @@ msgstr "" "\n" "%u 秒后登录超时。\n" -#, c-format -msgid "%s: Cannot possibly work without effective root\n" -msgstr "%s:没有有效 root 的情况下,不可能工作\n" - -msgid "No utmp entry. You must exec \"login\" from the lowest level \"sh\"" -msgstr "没有 utmp 条目。您必须在最底层的“sh”里执行“login”" - #, c-format msgid "login: PAM Failure, aborting: %s\n" msgstr "login: PAM 错误,正在退出:%s\n" @@ -1398,6 +1450,11 @@ msgstr "用法:newgrp [-] [组]\n" msgid "Usage: sg group [[-c] command]\n" msgstr "用法:sg 组 [[-c] 命令]\n" +#, fuzzy, c-format +#| msgid "%s: Failed to write %s: %s\n" +msgid "%s: failed to crypt password with previous salt: %s\n" +msgstr "%s: 写入 %s 失败: %s\n" + msgid "Invalid password.\n" msgstr "无效的密码。\n" @@ -1463,6 +1520,21 @@ msgstr "%s:第 %d 行:改变 %s 的属主失败:%s\n" msgid "%s: line %d: can't update entry\n" msgstr "%s:第 %d 行:无法更新条目\n" +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to prepare new %s entry\n" +msgstr "%s:准备新 %s 条目“%s”失败\n" + +#, fuzzy, c-format +#| msgid "%s: can't create user\n" +msgid "%s: can't find subordinate user range\n" +msgstr "%s:无法创建用户\n" + +#, fuzzy, c-format +#| msgid "%s: can't update group file\n" +msgid "%s: can't find subordinate group range\n" +msgstr "%s 无法更新组文件\n" + msgid "" " -a, --all report password status on all accounts\n" msgstr " -a, --all 报告所有帐户的密码状态\n" @@ -1714,12 +1786,6 @@ msgstr "忽略密码认证\n" msgid "Please enter your OWN password as authentication.\n" msgstr "请输入您*自己*的密码作为验证。\n" -msgid " ...killed.\n" -msgstr " ...已被杀死。\n" - -msgid " ...waiting for child to terminate.\n" -msgstr " ...等待子进程结束。\n" - #, c-format msgid "%s: Cannot fork user shell\n" msgstr "%s:无法 fork 用户 shell\n" @@ -1736,12 +1802,20 @@ msgid "Session terminated, terminating shell..." msgstr "会话结束,结束 shell ..." #, c-format -msgid "%s: %s\n" -msgstr "%s:%s\n" +msgid " ...killed.\n" +msgstr " ...已被杀死。\n" + +#, c-format +msgid " ...waiting for child to terminate.\n" +msgstr " ...等待子进程结束。\n" msgid " ...terminated.\n" msgstr " ...已结束。\n" +#, c-format +msgid "%s: %s\n" +msgstr "%s:%s\n" + msgid "" "Usage: su [options] [LOGIN]\n" "\n" @@ -2001,6 +2075,11 @@ msgstr "%s:重置 UID %lu 的登录失败条目失败:%s\n" msgid "%s: failed to reset the lastlog entry of UID %lu: %s\n" msgstr "%s:重置 UID %lu 的最近登录条目失败:%s\n" +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to prepare the new %s entry\n" +msgstr "%s:准备新 %s 条目“%s”失败\n" + #, c-format msgid "%s: cannot create directory %s\n" msgstr "%s:无法创建目录 %s\n" @@ -2040,6 +2119,16 @@ msgstr "%s:为 %s 创建 tcb 目录失败\n" msgid "%s: can't create group\n" msgstr "%s:无法创建用户组\n" +#, fuzzy, c-format +#| msgid "%s: can't create user\n" +msgid "%s: can't create subordinate user IDs\n" +msgstr "%s:无法创建用户\n" + +#, fuzzy, c-format +#| msgid "%s: can't create group\n" +msgid "%s: can't create subordinate group IDs\n" +msgstr "%s:无法创建用户组\n" + #, c-format msgid "" "%s: warning: the home directory already exists.\n" @@ -2078,6 +2167,11 @@ msgstr "%s:组“%s”没有移除,因为它包含其它成员。\n" msgid "%s: group %s is the primary group of another user and is not removed.\n" msgstr "%s:没有删除 %s 组,因为它是另外一个用户的主组。\n" +#, fuzzy, c-format +#| msgid "%s: cannot remove entry '%s' from %s\n" +msgid "%s: cannot remove entry %lu from %s\n" +msgstr "%1$s:无法从 %3$s 中移除 %2$s\n" + #, c-format msgid "%s: %s mail spool (%s) not found\n" msgstr "%s: %s 邮件池 (%s) 未找到\n" @@ -2183,6 +2277,18 @@ msgstr " -u, --uid UID 用户帐号的新 UID\n" msgid " -U, --unlock unlock the user account\n" msgstr " -U, --unlock 解锁用户帐号\n" +msgid " -v, --add-subuids FIRST-LAST add range of subordinate uids\n" +msgstr "" + +msgid " -V, --del-subuids FIRST-LAST remove range of subordinate uids\n" +msgstr "" + +msgid " -w, --add-subgids FIRST-LAST add range of subordinate gids\n" +msgstr "" + +msgid " -W, --del-subgids FIRST-LAST remove range of subordinate gids\n" +msgstr "" + msgid "" " -Z, --selinux-user SEUSER new SELinux user mapping for the user " "account\n" @@ -2200,6 +2306,16 @@ msgstr "" msgid "%s: user '%s' already exists in %s\n" msgstr "%s:用户 %s 已存在于 %s 中\n" +#, fuzzy, c-format +#| msgid "%s: invalid date '%s'\n" +msgid "%s: invalid subordinate uid range '%s'\n" +msgstr "%s:无效的日期“%s”\n" + +#, fuzzy, c-format +#| msgid "%s: invalid date '%s'\n" +msgid "%s: invalid subordinate gid range '%s'\n" +msgstr "%s:无效的日期“%s”\n" + #, c-format msgid "%s: no options\n" msgstr "%s:无选项\n" @@ -2216,6 +2332,11 @@ msgstr "%s:-e 和 -f 参数需要影子密码\n" msgid "%s: UID '%lu' already exists\n" msgstr "%s:UID “%lu”已经存在\n" +#, fuzzy, c-format +#| msgid "%s: %s is not authorized to change the password of %s\n" +msgid "%s: %s does not exist, you cannot use the flags %s or %s\n" +msgstr "%s:%s 没有被授权更改 %s 的密码\n" + #, c-format msgid "%s: directory %s exists\n" msgstr "%s:目录 %s 不存在\n" @@ -2256,6 +2377,26 @@ msgstr "改变信箱所有者失败" msgid "failed to rename mailbox" msgstr "无法为信箱改名" +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to remove uid range %lu-%lu from '%s'\n" +msgstr "%s:准备新 %s 条目“%s”失败\n" + +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to add uid range %lu-%lu from '%s'\n" +msgstr "%s:准备新 %s 条目“%s”失败\n" + +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to remove gid range %lu-%lu from '%s'\n" +msgstr "%s:准备新 %s 条目“%s”失败\n" + +#, fuzzy, c-format +#| msgid "%s: failed to prepare the new %s entry '%s'\n" +msgid "%s: failed to add gid range %lu-%lu from '%s'\n" +msgstr "%s:准备新 %s 条目“%s”失败\n" + #, c-format msgid "" "You have modified %s.\n" @@ -2307,6 +2448,20 @@ msgstr "无法锁定文件" msgid "Couldn't make backup" msgstr "无法备份" +#, fuzzy, c-format +#| msgid "%s: PAM: %s\n" +msgid "%s: %s: %s\n" +msgstr "%s: PAM: %s\n" + +#, fuzzy, c-format +#| msgid "%s: nscd exited with status %d" +msgid "%s: %s returned with status %d\n" +msgstr "%s: nscd 以状态 %d 退出" + +#, c-format +msgid "%s: %s killed by signal %d\n" +msgstr "" + msgid "failed to open scratch file" msgstr "打开临时文件失败" @@ -2828,9 +2983,6 @@ msgstr "%s:无法为“%s”找到 tcb 目录\n" #~ msgid "%s: can't rewrite password file\n" #~ msgstr "%s:无法重写密码文件\n" -#~ msgid "%s: can't update password file\n" -#~ msgstr "%s:无法更新密码文件\n" - #~ msgid "%s: can't update shadow password file\n" #~ msgstr "%s:无法更新影子密码文件\n" @@ -3054,9 +3206,6 @@ msgstr "%s:无法为“%s”找到 tcb 目录\n" #~ msgid "%s: can't update shadow group file\n" #~ msgstr "%s:无法更新影子组文件\n" -#~ msgid "%s: can't update group file\n" -#~ msgstr "%s 无法更新组文件\n" - #~ msgid "%s: can't delete shadow group file\n" #~ msgstr "%s:无法删除影子组文件\n" diff --git a/po/zh_TW.gmo b/po/zh_TW.gmo new file mode 100644 index 0000000000000000000000000000000000000000..0b2e51e1a17785800af96fcfb502a0dc90b8a5cb GIT binary patch literal 14002 zcmb7~dvIJwm4`1OEM!7}BoJ6avKNT3?0AH%Jl0Wc632GHY-D?Fh2VHi_F8i#4Ia%E zb7w3o1d!kI`w_n_;s>@PzwJ1&WJ|WUwqV(1pHQ_`sVxc?qC1b;rC|4uty;3F?035R z-kFhQ15)gSURfvhJZi0fePB4U~E3f*%Fj!71Rkzy|O#_$T16zz4uPVE!4f z0TjN^f+FWP!CG(!_(|{zDD-cFHuw%G{O`ZZvc3#H1d6`C4c-gx2W@Zwl=Z&}3ZMTo z{U5(u&-)N4bYB5klGO!H1=oU*T0a0qo;N`o{4el9@Gd47dA|To1QVvd4Ya8bfFl2! zApflQd`!=O4=DYUK+)$s5SCU76n;IRtn(Nsdi;A(*7Fu9bnk+)j=NDhDzNH6;qxRY z_V7GtgUdl#_hC@@{tY+*{7+EU^>LVsTob^x;1l3O;159?d>dpc>r*WLHn0H{JDCE? z_%DK=2A>BZwO#^+-wsgZJq|tw{s0tveHRq{-j1+BcQ5!TSa0fWrv4Hrc67nuUxT8L zAA@3_{{zZCzYAhQ)~8U$WH1iOxK{9eU=9>Hz6pw+c7tMP$3cGF07dRs3|<6f+&>vCfilmn z_v`T!L9ve}@Coo6pzQZ~Q1tRc5D~0@2Sv_zK>k_xQIY;BpwK^S>PtY;$10G2)%gCaqQ~1YB3XY8h$^fmgG)fs<2vwz;2u!y>?k-NJOj$U-GURz z{@w+OULOD@&OQN706R?k9#G`H0E<Z}8v1hpGPt6hEtB(W0*fAX8X5gZn^8tZSgi z9e`pN?}9=0# z`!*=+{p5Jdngvb(WgS^i=3fsA{V`DF_&ZSK{|}I%)<;l=)E@(7KfeajWp#m~w?n3X z7?k;b0m^>Jrb~RgACz@BfFj>Bpu~$5_z1Wh6utwXtm9umk@r`i@P7xi!B1c;QhyAT zdNU~c$bq7dy`bpr8u&r*C*UIR=U^i^mCY6TmVtMGyTLyKkAgyf3KYFu0-4hKXHevQ z8x*74jViR%J^YW*7Xxp|G?*U{eDpBn+-ak$e%X#?V!we095M$ zzaV@}|DE+(-upr6uK|VMWKi@x6BNBJFqj5!qrMW9^=txVzb}Cz-@k$~{&tK}_UjX% ztn*P&^fVt7yU2hN_jZE9?-VHea1oU8KL+mve+CMl-+*FAA8H`xg7x4`Fa-~`u-bK^W&V8sn>(T zCke{_yaWoL?V!+~H26c){}w2E_+Qh056Tj{22l9UHrQ!!J1BPaIw@wdQz$~SMBKF%x*-w$5tgG_3hstu(AU-d@CW`Ertj(v$Z=;6j?`pp0P`*Wxy;@3P zdsW;8R6g4dK0*0YY2b%jS-UAqC=TT-lou&6iu}GynXbO{pRK?*Dfdw3QXZqckK$5f zU*=K%oYG7g{rd|V?xf73JWmlj+e!HtBl<9?F*~Pf}J<)>9NE4H7Gxj&t<0mZG!@LnD1LE+T`=8iu&W` z`;*{A^SutdjdC~TL#Az$!B@ZsDKAmJN?A*Jm?FQ$l=+k`lv^oQtj4!fURyHVXj`%Q z-G0{Xuv=1|?FDjF*Zh?5t;ZX1o@c zAzjIAyPftj9Zt&jvrZ

zo*?g-=^@sS7hNYj--n-{oaAdtXmj!F_zA6?@Lfq?75k zM!U;(mXrt7x`>dmlUdtoLmZhm=ew$&?(TBB$Jbf0g)@>qlBM02ti8Bf=0d7?Tu-gm zX*;Qu*X1Va7Fo9bp@D_*&P8@SW4C*LHa5C_VZ2>+EP|}nPCFg$BB7by?x7~zvD0o> zBxId*pc#kxv+b^J7U(28lIf(M%{W;v1I@ykR6_LLvIHqwGhT;XQ#Zl4>^Ah>=})z4 zP>+*L2;;i@ZxU9PGsk^cE;`Sma==AYPyq_#)Qi_ zRN&g(UM?fsmQjin$(dzVda092CTuo1)2+l%&9fQl*x78irkX1(d_T#W6K*=m7V7rq zOt-O!loN@!z{??Sw-RY-k{!YbJG?})wL97?JDJABJDjX=6l2$#M4lEWJx*5Qvs*6B zB9dLJL~m(#(rvD9J9J=!HNH_4Lu8>X85bGsL^6W~dI*L}En!gIFD8?4Tb*1g>)Wl# zlv_pQb-HO~RW~Nd;ENsA^N2r$vsKP-yUVaVBSykg8o{PgxrA$fCiNNZvmVBpv0GD4 zn;~>F88o6+%Vr{@i^Xawb(d^uOV&+H)I_KxsV%3HC^UvK6rwpIw1-`X=A!JMRT!D= zxSebjlfm56IFx5Q3F1vVCaFw_hHSf&)owFUMT2;ov5JTl#Evc2t6H>lNn>!4A==|= z{BgQ3C1zTa2(2L3nUEb-rg<}hFs_ZF31w6!VJB=k%fx6|{J#_W}y`MJ(cFN2k60>9l!cwKrUA~*CA;2Sv{Mjr|BX;rkL zT1QhEWg3n*q_Ukf@xS%=Vri%(Y>P|!cDuu&wb;cOwGo(A$d+|D>24FPZNJlPNn*|k zySBqwhUttqCYVbvNfRGKjcOs3$zkDI%<2x+R!Y#MYQqJ5!y0DhLVFaLMDX z2@__!OYvTgw>E@GrYB6WrnR)VK7re_{ha(&ZsN4GcscxN#?0BXX3juJs8qwuWt~Zm zCW(VH#Mo;W@QXJ!#b?YI9}&4i}6T`p!l2jC3x1^wl&>E zNEJZsSu;c|$q10cbh*pimK@X9_||lx687OTO@M|r?2&zP6wUQBdy6cb=1g0g;dTKIr^2Am76-8C0Lu& zvLx4O>AjW}Rt5mtin`h2bs}xDiVWr2& z)|qUwshm36O+YB=1{Y~B!OsdyO(yYFfq^@m`&2F zvY)wO5~+4*l))+rH3HMCoAj8;lJv;1y{a+VepJZm9$NS_k{9b7(SBN|W4_&Fbp8zc zOeDVkHzysl^vL;QaORs6*ULy!V1*2#HB4)BqeiWI+24fI?Gt>mT@rt;6Ofgq2uDrE z9;$hn#y^nPY;uy25AH41a9XK)<+Ed=3N^CDs7IyzUz*c2bL!`Xh*UmRCm-QheR3)* z87J;OuBuZ4tua<sl+;06xunly(MfWZ zt|IBS6P^SuQstKR$8B z(I*rRH!f30D{Yxh+PIFX#h1JMHgg0mTo`XzBw>$ZI-&aAjLMfsdFxzq6V;@hnJGrm zMFdYvrd9bfBciLSS|gbZd*>`paSS`HvgKT-Nq`(QCJ~=xs?LgrjLIWo<(@EcC~xj_ zUS^4ji3>=F<@TWt9E{e>Bwu7cebmbZKnPUoqJ1%{ianK^!po7~Y5M^)Ql$~Nbvvf1 z?LAQ^9Etg%J>8@W+X92(jCFbc%1@P?s#C7|k%8+AmpkI`2p{f+x? z#zN&q%DeO(DlN&VrABax60-`wql-iBc=fy?m&fuAqD*BTh)mK=2CI_URuTkmAdx8H zMaYCIt7<87q_(EZV5^I=?hMjrtWP62NR8#>~lKx8|}u*Kk^7ysvZ2 z$7dztUm=O&ENQgObPw0n*F6@S$1N$7jW_vi$wd6AT$>+n_8RTZC2es{7EhqS)RQT> zwAb-0!qvPk;Vw=(={hgd7MnY#IX+!p8Q>h3Y`xKLsGsy`y#BHHq{()}q{fFQ#p@rb zuZJ)`&s~}n2_m}sN8zMGx;Z1dCc$z?i` zyVcFaXOdsZeWcNzyf~R9|0NWp;!pFwBbLyqs{YhTkK6ilYW?G}ug2$kE;7f%B}J<# zcagB`H>u`nv!0ta`}g8&#pGBUxpJ+rqrcd*I@r3Y(0~5d!~3jQ;lfbijq|15eWhLN zem%T#_`?ye3nqdG$o&l_bT}$AWF^ z`7Ewl6AYg(>|3RW)Rxw6%I`X-c`-g19te6b>e+)cE62apvw}y~;M$eK&ZGHV1BHQo z#be9!=U2!ZYp{BGvH!dlps;rcVW1xCm33rrD1ZFGnD4B*OTV;g#i_T};>iuA<%9W` z*NzPK1U(y&P>U<#*fzbzVCUOZyLx46cWL{?s9aFKt{E47`@_TgN@iE;k)HpWnF~wy}I)PjGdk zCeQCVD;pm4^{ag!TrUI`Es<75IsWR)ItA9kWvxwY7TI)7qE{!nifQGVUarCnl7HzNwpt&OIzWfi#dipv%A zh4b68Q>XV}24)hJL=*l|>|GnIzKHwe`}Y=4h}8sJjYt2or!V!(p6`YV+;ORRW_@sa zcmB*9`MoQGwUzR}+V;QzluSM8!;$Q{$JlQ#f@>ypebonN5EG>ujGkXrh-zmqe8=i!?etV>ty+-b%fY#AQA9Ex6PX`AEDrR80 zYOf8s*vZN(qc^ZN*nbdPEA{MU4|HdwA@MKq@xdXz;h}33`}gG6Tr8d3AuKOmF#My; z3(aX0LX+jW^E=MwH!c^J!O`6#Ll?ykE}ty#V0@Zg>g&Ohb%tV0Mx8N+N!&HtuIUJz znzTykLbQD&&#_gsV-Z$UjLl6uG=?j|N!fvsCBJbkF>vJan$q&k!I6Dh+FFU&M>qx& za)yPJeJ2VBjz&5~IZ+si8bvE%gpL}`_~;acM!Y|a)4bNonWPS6oQMM_7$~2y@?wi+ zm#ZIWEBnPpXc}EMoG(Xj)0!SomNT40djEz|Q|Dj-bi=~ss{N=+VS2o40V0AyInKg1{OK|35Y5!31_<6NV zl^bZ=)b?iKJjH9bg3-CvnG{f>zu>(;`B?=gW& z%T&#HIo~=%3rVU_9npq`exo&xs18?4FA!%V@lpI!MqoJb#~rr!v!5+_TdiHi7e=OobKXynp{VBIF-sw@Xx z^sOxH9VTtjfw58%#oqOLxX7!sA)_44Nslm1YD0T1o#W_X#S@!~{llR`^_a*Uj9_90 zy`vgsy0SlA7mG)(^vMZ(d^gNP->bX=RqOo5G4<*z*G1DXJJ0uCBdiqn9^gh6#?i{~ zriE9N>oZ+9a6HHvpdzm792wdb^x%W)MzHY`G3(ctcCa*^f?GH5RvgfpoQLXmL%1oe z-J+XS4$r5>g_S!5Dnk(Uzr-wz?qE@uJk3^A%;Rj-Qu#cq4;C(PQ7=mSh-&g`U6MJx+TE~28i2zCg4hvt-Miodvh=ME%{Hj zLMAnfa9)v?H`Ci0H_+I1x3=G;>cxeOJTRu2VaNZMUQXw#t``6eCO1FsuF8Y-7D z-fr>sVD+mJVaG>n7F{m^&e%z19!Y)6p?9d+Co zS0;LxZgn-Z#D!H}f)`214PSxOj!N>O4_8H^GYd0S)MwmZMcvVTmEw;*x^fX?Q$!+Z z-wxG_SzdhwV=}L`DhQ1IbgS3TIa6_y(2utaGNG8alisbt`U64VIc~J1b7AC`R}~fg r#I{gY<%+b*Dj#vswo=@fgwaA2NmQ%$!l)S{_~ZDa5*egXSLpu-e\n" "Language-Team: Chinese (traditional) \n" @@ -437,6 +437,11 @@ msgstr "%s:無效的住家電話:“%s”\n" msgid "%s: cannot access chroot directory %s: %s\n" msgstr "%s:無法建立目錄 %s\n" +#, fuzzy, c-format +#| msgid "%s: cannot create directory %s\n" +msgid "%s: cannot chdir to chroot directory %s: %s\n" +msgstr "%s:無法建立目錄 %s\n" + #, fuzzy, c-format #| msgid "%s: cannot create directory %s\n" msgid "%s: unable to chroot to directory %s: %s\n" @@ -775,6 +780,10 @@ msgstr "%s:第 %d 行:此行太長\n" msgid "%s: line %d: missing new password\n" msgstr "%s:第 %d 行:缺少新密碼\n" +#, fuzzy, c-format +msgid "%s: failed to crypt password with salt '%s': %s\n" +msgstr "%s:無效的工作電話:“%s”\n" + #, fuzzy, c-format #| msgid "%s: group %s does not exist\n" msgid "%s: line %d: group '%s' does not exist\n" @@ -1066,6 +1075,11 @@ msgstr "" msgid "%s: Cannot setup cleanup service.\n" msgstr "%s:無法確定您的使用者名稱。\n" +msgid "" +" -f, --force delete group even if it is the primary group " +"of a user\n" +msgstr "" + #, fuzzy, c-format #| msgid "%s: cannot rename directory %s to %s\n" msgid "%s: cannot remove entry '%s' from %s\n" @@ -1279,6 +1293,16 @@ msgid "" " -b, --before DAYS print only lastlog records older than DAYS\n" msgstr "" +msgid "" +" -C, --clear clear lastlog record of an user (usable only " +"with -u)\n" +msgstr "" + +msgid "" +" -S, --set set lastlog record to current time (usable " +"only with -u)\n" +msgstr "" + msgid "" " -t, --time DAYS print only lastlog records more recent than " "DAYS\n" @@ -1297,6 +1321,24 @@ msgstr "使用者名 埠號 最後登入時間" msgid "**Never logged in**" msgstr "**從未登入過**" +#, fuzzy, c-format +#| msgid "%s: cannot create directory %s\n" +msgid "%s: Failed to update the entry for UID %lu\n" +msgstr "%s:無法建立目錄 %s\n" + +#, fuzzy, c-format +#| msgid "%s: can't update password file\n" +msgid "%s: Failed to update the lastlog file\n" +msgstr "%s:無法更新密碼檔案\n" + +#, c-format +msgid "%s: Option -C cannot be used together with option -S\n" +msgstr "" + +#, c-format +msgid "%s: Options -C and -S require option -u to specify the user\n" +msgstr "" + #, c-format msgid "Usage: %s [-p] [name]\n" msgstr "用法:%s [-p] [名稱]\n" @@ -1330,6 +1372,13 @@ msgstr "" "\n" "[忽略斷線要求 -- 允許 root 登入。]" +#, c-format +msgid "%s: Cannot possibly work without effective root\n" +msgstr "" + +msgid "No utmp entry. You must exec \"login\" from the lowest level \"sh\"" +msgstr "" + #, fuzzy, c-format #| msgid "" #| "\n" @@ -1341,13 +1390,6 @@ msgstr "" "\n" "登入逾時 %d 秒\n" -#, c-format -msgid "%s: Cannot possibly work without effective root\n" -msgstr "" - -msgid "No utmp entry. You must exec \"login\" from the lowest level \"sh\"" -msgstr "" - #, c-format msgid "login: PAM Failure, aborting: %s\n" msgstr "" @@ -1426,6 +1468,10 @@ msgstr "用法:newgrp [-] [群組]\n" msgid "Usage: sg group [[-c] command]\n" msgstr "用法:sg 群組 [[-c] 命令]\n" +#, fuzzy, c-format +msgid "%s: failed to crypt password with previous salt: %s\n" +msgstr "%s:無效的工作電話:“%s”\n" + #, fuzzy msgid "Invalid password.\n" msgstr "舊密碼:" @@ -1495,6 +1541,20 @@ msgstr "%s:第 %d 行:改變擁有者或群組失敗\n" msgid "%s: line %d: can't update entry\n" msgstr "%s:第 %d 行:無法更新項目\n" +#, fuzzy, c-format +#| msgid "%s: line %d: can't update entry\n" +msgid "%s: failed to prepare new %s entry\n" +msgstr "%s:第 %d 行:無法更新項目\n" + +#, fuzzy, c-format +msgid "%s: can't find subordinate user range\n" +msgstr "%s:無法建立 %s\n" + +#, fuzzy, c-format +#| msgid "%s: can't update group file\n" +msgid "%s: can't find subordinate group range\n" +msgstr "%s 無法更新群組檔案\n" + msgid "" " -a, --all report password status on all accounts\n" msgstr "" @@ -1748,12 +1808,6 @@ msgstr "忽略密碼認証\n" msgid "Please enter your OWN password as authentication.\n" msgstr "請輸入您自己的密碼作為驗証。\n" -msgid " ...killed.\n" -msgstr "" - -msgid " ...waiting for child to terminate.\n" -msgstr "" - #, fuzzy, c-format #| msgid "%s: cannot lock file %s\n" msgid "%s: Cannot fork user shell\n" @@ -1770,13 +1824,21 @@ msgstr "" msgid "Session terminated, terminating shell..." msgstr "" -#, fuzzy, c-format -msgid "%s: %s\n" -msgstr "passwd:%s\n" +#, c-format +msgid " ...killed.\n" +msgstr "" + +#, c-format +msgid " ...waiting for child to terminate.\n" +msgstr "" msgid " ...terminated.\n" msgstr "" +#, fuzzy, c-format +msgid "%s: %s\n" +msgstr "passwd:%s\n" + msgid "" "Usage: su [options] [LOGIN]\n" "\n" @@ -2029,6 +2091,11 @@ msgstr "" msgid "%s: failed to reset the lastlog entry of UID %lu: %s\n" msgstr "" +#, fuzzy, c-format +#| msgid "%s: line %d: can't update entry\n" +msgid "%s: failed to prepare the new %s entry\n" +msgstr "%s:第 %d 行:無法更新項目\n" + #, c-format msgid "%s: cannot create directory %s\n" msgstr "%s:無法建立目錄 %s\n" @@ -2071,6 +2138,14 @@ msgstr "%s:無法建立目錄 %s\n" msgid "%s: can't create group\n" msgstr "%s:無法建立 %s\n" +#, fuzzy, c-format +msgid "%s: can't create subordinate user IDs\n" +msgstr "%s:無法建立 %s\n" + +#, fuzzy, c-format +msgid "%s: can't create subordinate group IDs\n" +msgstr "%s:無法建立 %s\n" + #, c-format msgid "" "%s: warning: the home directory already exists.\n" @@ -2107,6 +2182,11 @@ msgstr "" msgid "%s: group %s is the primary group of another user and is not removed.\n" msgstr "%s:不能刪除使用者的主群組。\n" +#, fuzzy, c-format +#| msgid "%s: cannot rename directory %s to %s\n" +msgid "%s: cannot remove entry %lu from %s\n" +msgstr "%s:無法將目錄 %s 改名為 %s\n" + #, fuzzy, c-format msgid "%s: %s mail spool (%s) not found\n" msgstr "%s:無效的主目錄“%s”\n" @@ -2212,6 +2292,18 @@ msgstr "" msgid " -U, --unlock unlock the user account\n" msgstr "" +msgid " -v, --add-subuids FIRST-LAST add range of subordinate uids\n" +msgstr "" + +msgid " -V, --del-subuids FIRST-LAST remove range of subordinate uids\n" +msgstr "" + +msgid " -w, --add-subgids FIRST-LAST add range of subordinate gids\n" +msgstr "" + +msgid " -W, --del-subgids FIRST-LAST remove range of subordinate gids\n" +msgstr "" + msgid "" " -Z, --selinux-user SEUSER new SELinux user mapping for the user " "account\n" @@ -2228,6 +2320,14 @@ msgstr "" msgid "%s: user '%s' already exists in %s\n" msgstr "%s:使用者 %s 已存在\n" +#, fuzzy, c-format +msgid "%s: invalid subordinate uid range '%s'\n" +msgstr "%s:無效日期“%s”\n" + +#, fuzzy, c-format +msgid "%s: invalid subordinate gid range '%s'\n" +msgstr "%s:無效日期“%s”\n" + #, fuzzy, c-format #| msgid "%s: cannot open file %s\n" msgid "%s: no options\n" @@ -2245,6 +2345,10 @@ msgstr "%s:-e 和 -f 參數需要shadow密碼\n" msgid "%s: UID '%lu' already exists\n" msgstr "" +#, c-format +msgid "%s: %s does not exist, you cannot use the flags %s or %s\n" +msgstr "" + #, c-format msgid "%s: directory %s exists\n" msgstr "%s:目錄 %s 不存在\n" @@ -2286,6 +2390,23 @@ msgstr "改變信箱所有者失敗" msgid "failed to rename mailbox" msgstr "無法為信箱改名" +#, fuzzy, c-format +msgid "%s: failed to remove uid range %lu-%lu from '%s'\n" +msgstr "%s:無效的工作電話:“%s”\n" + +#, fuzzy, c-format +#| msgid "%s: fields too long\n" +msgid "%s: failed to add uid range %lu-%lu from '%s'\n" +msgstr "%s:字段太長\n" + +#, fuzzy, c-format +msgid "%s: failed to remove gid range %lu-%lu from '%s'\n" +msgstr "%s:無效的工作電話:“%s”\n" + +#, fuzzy, c-format +msgid "%s: failed to add gid range %lu-%lu from '%s'\n" +msgstr "%s:無效的主目錄“%s”\n" + #, c-format msgid "" "You have modified %s.\n" @@ -2344,6 +2465,19 @@ msgstr "無法鎖定檔案" msgid "Couldn't make backup" msgstr "無法備份" +#, fuzzy, c-format +msgid "%s: %s: %s\n" +msgstr "passwd:%s\n" + +#, fuzzy, c-format +#| msgid "%s: %s not found in /etc/passwd\n" +msgid "%s: %s returned with status %d\n" +msgstr "%s:未在 /etc/passwd 中找到 %s\n" + +#, c-format +msgid "%s: %s killed by signal %d\n" +msgstr "" + #, fuzzy msgid "failed to open scratch file" msgstr "%s:無法打開群組檔案\n" @@ -2669,9 +2803,6 @@ msgstr "%s:無效的主目錄“%s”\n" #~ msgid "%s: can't rewrite password file\n" #~ msgstr "%s:無法重寫密碼檔案\n" -#~ msgid "%s: can't update password file\n" -#~ msgstr "%s:無法更新密碼檔案\n" - #~ msgid "%s: can't update shadow password file\n" #~ msgstr "%s:無法更新shadow密碼檔案\n" @@ -2696,9 +2827,6 @@ msgstr "%s:無效的主目錄“%s”\n" #~ msgid "Cannot open the password file.\n" #~ msgstr "無法打開密碼檔案。\n" -#~ msgid "%s: %s not found in /etc/passwd\n" -#~ msgstr "%s:未在 /etc/passwd 中找到 %s\n" - #~ msgid "Error updating the password entry.\n" #~ msgstr "更改密碼項目時出錯。\n" @@ -2895,9 +3023,6 @@ msgstr "%s:無效的主目錄“%s”\n" #~ msgid "%s: can't update shadow group file\n" #~ msgstr "%s:無法更新shadow群組檔案\n" -#~ msgid "%s: can't update group file\n" -#~ msgstr "%s 無法更新群組檔案\n" - #~ msgid "%s: can't delete shadow group file\n" #~ msgstr "%s:無法刪除shadow群組檔案\n" diff --git a/src/.gitignore b/src/.gitignore deleted file mode 100644 index d5716b98..00000000 --- a/src/.gitignore +++ /dev/null @@ -1,35 +0,0 @@ -/chage -/chfn -/chgpasswd -/chpasswd -/chsh -/expiry -/faillog -/gpasswd -/groupadd -/groupdel -/groupmems -/groupmod -/groups -/grpck -/grpconv -/grpunconv -/id -/lastlog -/login -/logoutd -/newgrp -/newgidmap -/newuidmap -/newusers -/nologin -/passwd -/pwck -/pwconv -/pwunconv -/su -/sulogin -/useradd -/userdel -/usermod -/vipw diff --git a/src/Makefile.am b/src/Makefile.am index 25e288d3..dc520b5d 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -52,10 +52,13 @@ usbin_PROGRAMS = \ noinst_PROGRAMS = id sulogin suidbins = su -suidubins = chage chfn chsh expiry gpasswd newgrp passwd newuidmap newgidmap +suidubins = chage chfn chsh expiry gpasswd newgrp passwd if ACCT_TOOLS_SETUID suidubins += chage chgpasswd chpasswd groupadd groupdel groupmod newusers useradd userdel usermod endif +if ENABLE_SUBIDS + suidubins += newgidmap newuidmap +endif if WITH_TCB suidubins -= passwd @@ -95,6 +98,7 @@ groupmod_LDADD = $(LDADD) $(LIBPAM_SUID) $(LIBAUDIT) $(LIBSELINUX) grpck_LDADD = $(LDADD) $(LIBSELINUX) grpconv_LDADD = $(LDADD) $(LIBSELINUX) grpunconv_LDADD = $(LDADD) $(LIBSELINUX) +lastlog_LDADD = $(LDADD) $(LIBAUDIT) login_SOURCES = \ login.c \ login_nopam.c diff --git a/src/Makefile.in b/src/Makefile.in new file mode 100644 index 00000000..dc04b877 --- /dev/null +++ b/src/Makefile.in @@ -0,0 +1,1251 @@ +# Makefile.in generated by automake 1.15 from Makefile.am. +# @configure_input@ + +# Copyright (C) 1994-2014 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@ +bin_PROGRAMS = groups$(EXEEXT) login$(EXEEXT) su$(EXEEXT) +sbin_PROGRAMS = nologin$(EXEEXT) +ubin_PROGRAMS = faillog$(EXEEXT) lastlog$(EXEEXT) chage$(EXEEXT) \ + chfn$(EXEEXT) chsh$(EXEEXT) expiry$(EXEEXT) gpasswd$(EXEEXT) \ + newgrp$(EXEEXT) passwd$(EXEEXT) $(am__EXEEXT_1) +@ENABLE_SUBIDS_TRUE@am__append_1 = newgidmap newuidmap +usbin_PROGRAMS = chgpasswd$(EXEEXT) chpasswd$(EXEEXT) \ + groupadd$(EXEEXT) groupdel$(EXEEXT) groupmems$(EXEEXT) \ + groupmod$(EXEEXT) grpck$(EXEEXT) grpconv$(EXEEXT) \ + grpunconv$(EXEEXT) logoutd$(EXEEXT) newusers$(EXEEXT) \ + pwck$(EXEEXT) pwconv$(EXEEXT) pwunconv$(EXEEXT) \ + useradd$(EXEEXT) userdel$(EXEEXT) usermod$(EXEEXT) \ + vipw$(EXEEXT) +noinst_PROGRAMS = id$(EXEEXT) sulogin$(EXEEXT) +subdir = src +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__installdirs = "$(DESTDIR)$(bindir)" "$(DESTDIR)$(sbindir)" \ + "$(DESTDIR)$(ubindir)" "$(DESTDIR)$(usbindir)" +@ENABLE_SUBIDS_TRUE@am__EXEEXT_1 = newgidmap$(EXEEXT) \ +@ENABLE_SUBIDS_TRUE@ newuidmap$(EXEEXT) +PROGRAMS = $(bin_PROGRAMS) $(noinst_PROGRAMS) $(sbin_PROGRAMS) \ + $(ubin_PROGRAMS) $(usbin_PROGRAMS) +chage_SOURCES = chage.c +chage_OBJECTS = chage.$(OBJEXT) +am__DEPENDENCIES_1 = +am__DEPENDENCIES_2 = $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ + $(top_builddir)/libmisc/libmisc.a \ + $(top_builddir)/lib/libshadow.la +@ACCT_TOOLS_SETUID_TRUE@am__DEPENDENCIES_3 = $(am__DEPENDENCIES_1) +chage_DEPENDENCIES = $(am__DEPENDENCIES_2) $(am__DEPENDENCIES_3) \ + $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) +AM_V_lt = $(am__v_lt_@AM_V@) +am__v_lt_ = $(am__v_lt_@AM_DEFAULT_V@) +am__v_lt_0 = --silent +am__v_lt_1 = +chfn_SOURCES = chfn.c +chfn_OBJECTS = chfn.$(OBJEXT) +@USE_PAM_FALSE@am__DEPENDENCIES_4 = $(am__DEPENDENCIES_1) +chfn_DEPENDENCIES = $(am__DEPENDENCIES_2) $(am__DEPENDENCIES_1) \ + $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_4) \ + $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) +chgpasswd_SOURCES = chgpasswd.c +chgpasswd_OBJECTS = chgpasswd.$(OBJEXT) +chgpasswd_DEPENDENCIES = $(am__DEPENDENCIES_2) $(am__DEPENDENCIES_3) \ + $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) +chpasswd_SOURCES = chpasswd.c +chpasswd_OBJECTS = chpasswd.$(OBJEXT) +chpasswd_DEPENDENCIES = $(am__DEPENDENCIES_2) $(am__DEPENDENCIES_1) \ + $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) +chsh_SOURCES = chsh.c +chsh_OBJECTS = chsh.$(OBJEXT) +chsh_DEPENDENCIES = $(am__DEPENDENCIES_2) $(am__DEPENDENCIES_1) \ + $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_4) \ + $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) +expiry_SOURCES = expiry.c +expiry_OBJECTS = expiry.$(OBJEXT) +expiry_LDADD = $(LDADD) +expiry_DEPENDENCIES = $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ + $(top_builddir)/libmisc/libmisc.a \ + $(top_builddir)/lib/libshadow.la +faillog_SOURCES = faillog.c +faillog_OBJECTS = faillog.$(OBJEXT) +faillog_LDADD = $(LDADD) +faillog_DEPENDENCIES = $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ + $(top_builddir)/libmisc/libmisc.a \ + $(top_builddir)/lib/libshadow.la +gpasswd_SOURCES = gpasswd.c +gpasswd_OBJECTS = gpasswd.$(OBJEXT) +gpasswd_DEPENDENCIES = $(am__DEPENDENCIES_2) $(am__DEPENDENCIES_1) \ + $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) +groupadd_SOURCES = groupadd.c +groupadd_OBJECTS = groupadd.$(OBJEXT) +groupadd_DEPENDENCIES = $(am__DEPENDENCIES_2) $(am__DEPENDENCIES_3) \ + $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) +groupdel_SOURCES = groupdel.c +groupdel_OBJECTS = groupdel.$(OBJEXT) +groupdel_DEPENDENCIES = $(am__DEPENDENCIES_2) $(am__DEPENDENCIES_3) \ + $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) +groupmems_SOURCES = groupmems.c +groupmems_OBJECTS = groupmems.$(OBJEXT) +groupmems_DEPENDENCIES = $(am__DEPENDENCIES_2) $(am__DEPENDENCIES_1) \ + $(am__DEPENDENCIES_1) +groupmod_SOURCES = groupmod.c +groupmod_OBJECTS = groupmod.$(OBJEXT) +groupmod_DEPENDENCIES = $(am__DEPENDENCIES_2) $(am__DEPENDENCIES_3) \ + $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) +groups_SOURCES = groups.c +groups_OBJECTS = groups.$(OBJEXT) +groups_LDADD = $(LDADD) +groups_DEPENDENCIES = $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ + $(top_builddir)/libmisc/libmisc.a \ + $(top_builddir)/lib/libshadow.la +grpck_SOURCES = grpck.c +grpck_OBJECTS = grpck.$(OBJEXT) +grpck_DEPENDENCIES = $(am__DEPENDENCIES_2) $(am__DEPENDENCIES_1) +grpconv_SOURCES = grpconv.c +grpconv_OBJECTS = grpconv.$(OBJEXT) +grpconv_DEPENDENCIES = $(am__DEPENDENCIES_2) $(am__DEPENDENCIES_1) +grpunconv_SOURCES = grpunconv.c +grpunconv_OBJECTS = grpunconv.$(OBJEXT) +grpunconv_DEPENDENCIES = $(am__DEPENDENCIES_2) $(am__DEPENDENCIES_1) +id_SOURCES = id.c +id_OBJECTS = id.$(OBJEXT) +id_LDADD = $(LDADD) +id_DEPENDENCIES = $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ + $(top_builddir)/libmisc/libmisc.a \ + $(top_builddir)/lib/libshadow.la +lastlog_SOURCES = lastlog.c +lastlog_OBJECTS = lastlog.$(OBJEXT) +lastlog_DEPENDENCIES = $(am__DEPENDENCIES_2) $(am__DEPENDENCIES_1) +am_login_OBJECTS = login.$(OBJEXT) login_nopam.$(OBJEXT) +login_OBJECTS = $(am_login_OBJECTS) +login_DEPENDENCIES = $(am__DEPENDENCIES_2) $(am__DEPENDENCIES_1) \ + $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_4) \ + $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) +logoutd_SOURCES = logoutd.c +logoutd_OBJECTS = logoutd.$(OBJEXT) +logoutd_LDADD = $(LDADD) +logoutd_DEPENDENCIES = $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ + $(top_builddir)/libmisc/libmisc.a \ + $(top_builddir)/lib/libshadow.la +newgidmap_SOURCES = newgidmap.c +newgidmap_OBJECTS = newgidmap.$(OBJEXT) +newgidmap_DEPENDENCIES = $(am__DEPENDENCIES_2) $(am__DEPENDENCIES_1) +newgrp_SOURCES = newgrp.c +newgrp_OBJECTS = newgrp.$(OBJEXT) +newgrp_DEPENDENCIES = $(am__DEPENDENCIES_2) $(am__DEPENDENCIES_1) \ + $(am__DEPENDENCIES_1) +newuidmap_SOURCES = newuidmap.c +newuidmap_OBJECTS = newuidmap.$(OBJEXT) +newuidmap_DEPENDENCIES = $(am__DEPENDENCIES_2) $(am__DEPENDENCIES_1) +newusers_SOURCES = newusers.c +newusers_OBJECTS = newusers.$(OBJEXT) +newusers_DEPENDENCIES = $(am__DEPENDENCIES_2) $(am__DEPENDENCIES_1) \ + $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) +nologin_SOURCES = nologin.c +nologin_OBJECTS = nologin.$(OBJEXT) +nologin_DEPENDENCIES = +passwd_SOURCES = passwd.c +passwd_OBJECTS = passwd.$(OBJEXT) +passwd_DEPENDENCIES = $(am__DEPENDENCIES_2) $(am__DEPENDENCIES_1) \ + $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ + $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_4) +pwck_SOURCES = pwck.c +pwck_OBJECTS = pwck.$(OBJEXT) +pwck_DEPENDENCIES = $(am__DEPENDENCIES_2) $(am__DEPENDENCIES_1) +pwconv_SOURCES = pwconv.c +pwconv_OBJECTS = pwconv.$(OBJEXT) +pwconv_DEPENDENCIES = $(am__DEPENDENCIES_2) $(am__DEPENDENCIES_1) +pwunconv_SOURCES = pwunconv.c +pwunconv_OBJECTS = pwunconv.$(OBJEXT) +pwunconv_DEPENDENCIES = $(am__DEPENDENCIES_2) $(am__DEPENDENCIES_1) +am_su_OBJECTS = su.$(OBJEXT) suauth.$(OBJEXT) +su_OBJECTS = $(am_su_OBJECTS) +su_DEPENDENCIES = $(am__DEPENDENCIES_2) $(am__DEPENDENCIES_1) \ + $(am__DEPENDENCIES_4) $(am__DEPENDENCIES_1) \ + $(am__DEPENDENCIES_1) +sulogin_SOURCES = sulogin.c +sulogin_OBJECTS = sulogin.$(OBJEXT) +sulogin_DEPENDENCIES = $(am__DEPENDENCIES_2) $(am__DEPENDENCIES_1) +useradd_SOURCES = useradd.c +useradd_OBJECTS = useradd.$(OBJEXT) +useradd_DEPENDENCIES = $(am__DEPENDENCIES_2) $(am__DEPENDENCIES_3) \ + $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ + $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ + $(am__DEPENDENCIES_1) +userdel_SOURCES = userdel.c +userdel_OBJECTS = userdel.$(OBJEXT) +userdel_DEPENDENCIES = $(am__DEPENDENCIES_2) $(am__DEPENDENCIES_3) \ + $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ + $(am__DEPENDENCIES_1) +usermod_SOURCES = usermod.c +usermod_OBJECTS = usermod.$(OBJEXT) +usermod_DEPENDENCIES = $(am__DEPENDENCIES_2) $(am__DEPENDENCIES_3) \ + $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ + $(am__DEPENDENCIES_1) $(am__DEPENDENCIES_1) \ + $(am__DEPENDENCIES_1) +vipw_SOURCES = vipw.c +vipw_OBJECTS = vipw.$(OBJEXT) +vipw_DEPENDENCIES = $(am__DEPENDENCIES_2) $(am__DEPENDENCIES_1) +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 = +DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir) +depcomp = $(SHELL) $(top_srcdir)/depcomp +am__depfiles_maybe = depfiles +am__mv = mv -f +COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ + $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) +LTCOMPILE = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=compile $(CC) $(DEFS) \ + $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) \ + $(AM_CFLAGS) $(CFLAGS) +AM_V_CC = $(am__v_CC_@AM_V@) +am__v_CC_ = $(am__v_CC_@AM_DEFAULT_V@) +am__v_CC_0 = @echo " CC " $@; +am__v_CC_1 = +CCLD = $(CC) +LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ + $(AM_LDFLAGS) $(LDFLAGS) -o $@ +AM_V_CCLD = $(am__v_CCLD_@AM_V@) +am__v_CCLD_ = $(am__v_CCLD_@AM_DEFAULT_V@) +am__v_CCLD_0 = @echo " CCLD " $@; +am__v_CCLD_1 = +SOURCES = chage.c chfn.c chgpasswd.c chpasswd.c chsh.c expiry.c \ + faillog.c gpasswd.c groupadd.c groupdel.c groupmems.c \ + groupmod.c groups.c grpck.c grpconv.c grpunconv.c id.c \ + lastlog.c $(login_SOURCES) logoutd.c newgidmap.c newgrp.c \ + newuidmap.c newusers.c nologin.c passwd.c pwck.c pwconv.c \ + pwunconv.c $(su_SOURCES) sulogin.c useradd.c userdel.c \ + usermod.c vipw.c +DIST_SOURCES = chage.c chfn.c chgpasswd.c chpasswd.c chsh.c expiry.c \ + faillog.c gpasswd.c groupadd.c groupdel.c groupmems.c \ + groupmod.c groups.c grpck.c grpconv.c grpunconv.c id.c \ + lastlog.c $(login_SOURCES) logoutd.c newgidmap.c newgrp.c \ + newuidmap.c newusers.c nologin.c passwd.c pwck.c pwconv.c \ + pwunconv.c $(su_SOURCES) sulogin.c useradd.c userdel.c \ + usermod.c vipw.c +am__can_run_installinfo = \ + case $$AM_UPDATE_INFO_DIR in \ + n|no|NO) false;; \ + *) (install-info --version) >/dev/null 2>&1;; \ + esac +am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) $(LISP) +# Read a list of newline-separated strings from the standard input, +# and print each of them once, without duplicates. Input order is +# *not* preserved. +am__uniquify_input = $(AWK) '\ + BEGIN { nonempty = 0; } \ + { items[$$0] = 1; nonempty = 1; } \ + END { if (nonempty) { for (i in items) print i; }; } \ +' +# Make sure the list of sources is unique. This is necessary because, +# e.g., the same source file might be shared among _SOURCES variables +# for different programs/libraries. +am__define_uniq_tagged_files = \ + list='$(am__tagged_files)'; \ + unique=`for i in $$list; do \ + if test -f "$$i"; then echo $$i; else echo $(srcdir)/$$i; fi; \ + done | $(am__uniquify_input)` +ETAGS = etags +CTAGS = ctags +am__DIST_COMMON = $(srcdir)/Makefile.in $(top_srcdir)/depcomp +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@ +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@ +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@ +EXTRA_DIST = \ + .indent.pro + +ubindir = ${prefix}/bin +usbindir = ${prefix}/sbin +suidperms = 4755 +sgidperms = 2755 +INCLUDES = \ + -I${top_srcdir}/lib \ + -I$(top_srcdir)/libmisc + +suidbins = su +suidubins = chage chfn chsh expiry gpasswd newgrp passwd +@WITH_TCB_TRUE@shadowsgidubins = passwd +LDADD = $(INTLLIBS) \ + $(LIBTCB) \ + $(top_builddir)/libmisc/libmisc.a \ + $(top_builddir)/lib/libshadow.la + +AM_CPPFLAGS = -DLOCALEDIR=\"$(datadir)/locale\" +@ACCT_TOOLS_SETUID_FALSE@LIBPAM_SUID = +@ACCT_TOOLS_SETUID_TRUE@LIBPAM_SUID = $(LIBPAM) +@USE_PAM_FALSE@LIBCRYPT_NOPAM = $(LIBCRYPT) +@USE_PAM_TRUE@LIBCRYPT_NOPAM = +chage_LDADD = $(LDADD) $(LIBPAM_SUID) $(LIBAUDIT) $(LIBSELINUX) +newuidmap_LDADD = $(LDADD) $(LIBSELINUX) +newgidmap_LDADD = $(LDADD) $(LIBSELINUX) +chfn_LDADD = $(LDADD) $(LIBPAM) $(LIBSELINUX) $(LIBCRYPT_NOPAM) $(LIBSKEY) $(LIBMD) +chgpasswd_LDADD = $(LDADD) $(LIBPAM_SUID) $(LIBSELINUX) $(LIBCRYPT) +chsh_LDADD = $(LDADD) $(LIBPAM) $(LIBSELINUX) $(LIBCRYPT_NOPAM) $(LIBSKEY) $(LIBMD) +chpasswd_LDADD = $(LDADD) $(LIBPAM) $(LIBSELINUX) $(LIBCRYPT) +gpasswd_LDADD = $(LDADD) $(LIBAUDIT) $(LIBSELINUX) $(LIBCRYPT) +groupadd_LDADD = $(LDADD) $(LIBPAM_SUID) $(LIBAUDIT) $(LIBSELINUX) +groupdel_LDADD = $(LDADD) $(LIBPAM_SUID) $(LIBAUDIT) $(LIBSELINUX) +groupmems_LDADD = $(LDADD) $(LIBPAM) $(LIBSELINUX) +groupmod_LDADD = $(LDADD) $(LIBPAM_SUID) $(LIBAUDIT) $(LIBSELINUX) +grpck_LDADD = $(LDADD) $(LIBSELINUX) +grpconv_LDADD = $(LDADD) $(LIBSELINUX) +grpunconv_LDADD = $(LDADD) $(LIBSELINUX) +lastlog_LDADD = $(LDADD) $(LIBAUDIT) +login_SOURCES = \ + login.c \ + login_nopam.c + +login_LDADD = $(LDADD) $(LIBPAM) $(LIBAUDIT) $(LIBCRYPT_NOPAM) $(LIBSKEY) $(LIBMD) +newgrp_LDADD = $(LDADD) $(LIBAUDIT) $(LIBCRYPT) +newusers_LDADD = $(LDADD) $(LIBPAM) $(LIBSELINUX) $(LIBCRYPT) +nologin_LDADD = +passwd_LDADD = $(LDADD) $(LIBPAM) $(LIBCRACK) $(LIBAUDIT) $(LIBSELINUX) $(LIBCRYPT_NOPAM) +pwck_LDADD = $(LDADD) $(LIBSELINUX) +pwconv_LDADD = $(LDADD) $(LIBSELINUX) +pwunconv_LDADD = $(LDADD) $(LIBSELINUX) +su_SOURCES = \ + su.c \ + suauth.c + +su_LDADD = $(LDADD) $(LIBPAM) $(LIBCRYPT_NOPAM) $(LIBSKEY) $(LIBMD) +sulogin_LDADD = $(LDADD) $(LIBCRYPT) +useradd_LDADD = $(LDADD) $(LIBPAM_SUID) $(LIBAUDIT) $(LIBSELINUX) $(LIBSEMANAGE) $(LIBACL) $(LIBATTR) +userdel_LDADD = $(LDADD) $(LIBPAM_SUID) $(LIBAUDIT) $(LIBSELINUX) $(LIBSEMANAGE) +usermod_LDADD = $(LDADD) $(LIBPAM_SUID) $(LIBAUDIT) $(LIBSELINUX) $(LIBSEMANAGE) $(LIBACL) $(LIBATTR) +vipw_LDADD = $(LDADD) $(LIBSELINUX) +all: all-am + +.SUFFIXES: +.SUFFIXES: .c .lo .o .obj +$(srcdir)/Makefile.in: @MAINTAINER_MODE_TRUE@ $(srcdir)/Makefile.am $(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) --gnu src/Makefile'; \ + $(am__cd) $(top_srcdir) && \ + $(AUTOMAKE) --gnu src/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; + +$(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): +install-binPROGRAMS: $(bin_PROGRAMS) + @$(NORMAL_INSTALL) + @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \ + if test -n "$$list"; then \ + echo " $(MKDIR_P) '$(DESTDIR)$(bindir)'"; \ + $(MKDIR_P) "$(DESTDIR)$(bindir)" || exit 1; \ + fi; \ + for p in $$list; do echo "$$p $$p"; done | \ + sed 's/$(EXEEXT)$$//' | \ + while read p p1; do if test -f $$p \ + || test -f $$p1 \ + ; then echo "$$p"; echo "$$p"; else :; fi; \ + done | \ + sed -e 'p;s,.*/,,;n;h' \ + -e 's|.*|.|' \ + -e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \ + sed 'N;N;N;s,\n, ,g' | \ + $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \ + { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \ + if ($$2 == $$4) files[d] = files[d] " " $$1; \ + else { print "f", $$3 "/" $$4, $$1; } } \ + END { for (d in files) print "f", d, files[d] }' | \ + while read type dir files; do \ + if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \ + test -z "$$files" || { \ + echo " $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files '$(DESTDIR)$(bindir)$$dir'"; \ + $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files "$(DESTDIR)$(bindir)$$dir" || exit $$?; \ + } \ + ; done + +uninstall-binPROGRAMS: + @$(NORMAL_UNINSTALL) + @list='$(bin_PROGRAMS)'; test -n "$(bindir)" || list=; \ + files=`for p in $$list; do echo "$$p"; done | \ + sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \ + -e 's/$$/$(EXEEXT)/' \ + `; \ + test -n "$$list" || exit 0; \ + echo " ( cd '$(DESTDIR)$(bindir)' && rm -f" $$files ")"; \ + cd "$(DESTDIR)$(bindir)" && rm -f $$files + +clean-binPROGRAMS: + @list='$(bin_PROGRAMS)'; test -n "$$list" || exit 0; \ + echo " rm -f" $$list; \ + rm -f $$list || exit $$?; \ + test -n "$(EXEEXT)" || exit 0; \ + list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \ + echo " rm -f" $$list; \ + rm -f $$list + +clean-noinstPROGRAMS: + @list='$(noinst_PROGRAMS)'; test -n "$$list" || exit 0; \ + echo " rm -f" $$list; \ + rm -f $$list || exit $$?; \ + test -n "$(EXEEXT)" || exit 0; \ + list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \ + echo " rm -f" $$list; \ + rm -f $$list +install-sbinPROGRAMS: $(sbin_PROGRAMS) + @$(NORMAL_INSTALL) + @list='$(sbin_PROGRAMS)'; test -n "$(sbindir)" || list=; \ + if test -n "$$list"; then \ + echo " $(MKDIR_P) '$(DESTDIR)$(sbindir)'"; \ + $(MKDIR_P) "$(DESTDIR)$(sbindir)" || exit 1; \ + fi; \ + for p in $$list; do echo "$$p $$p"; done | \ + sed 's/$(EXEEXT)$$//' | \ + while read p p1; do if test -f $$p \ + || test -f $$p1 \ + ; then echo "$$p"; echo "$$p"; else :; fi; \ + done | \ + sed -e 'p;s,.*/,,;n;h' \ + -e 's|.*|.|' \ + -e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \ + sed 'N;N;N;s,\n, ,g' | \ + $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \ + { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \ + if ($$2 == $$4) files[d] = files[d] " " $$1; \ + else { print "f", $$3 "/" $$4, $$1; } } \ + END { for (d in files) print "f", d, files[d] }' | \ + while read type dir files; do \ + if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \ + test -z "$$files" || { \ + echo " $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files '$(DESTDIR)$(sbindir)$$dir'"; \ + $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files "$(DESTDIR)$(sbindir)$$dir" || exit $$?; \ + } \ + ; done + +uninstall-sbinPROGRAMS: + @$(NORMAL_UNINSTALL) + @list='$(sbin_PROGRAMS)'; test -n "$(sbindir)" || list=; \ + files=`for p in $$list; do echo "$$p"; done | \ + sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \ + -e 's/$$/$(EXEEXT)/' \ + `; \ + test -n "$$list" || exit 0; \ + echo " ( cd '$(DESTDIR)$(sbindir)' && rm -f" $$files ")"; \ + cd "$(DESTDIR)$(sbindir)" && rm -f $$files + +clean-sbinPROGRAMS: + @list='$(sbin_PROGRAMS)'; test -n "$$list" || exit 0; \ + echo " rm -f" $$list; \ + rm -f $$list || exit $$?; \ + test -n "$(EXEEXT)" || exit 0; \ + list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \ + echo " rm -f" $$list; \ + rm -f $$list +install-ubinPROGRAMS: $(ubin_PROGRAMS) + @$(NORMAL_INSTALL) + @list='$(ubin_PROGRAMS)'; test -n "$(ubindir)" || list=; \ + if test -n "$$list"; then \ + echo " $(MKDIR_P) '$(DESTDIR)$(ubindir)'"; \ + $(MKDIR_P) "$(DESTDIR)$(ubindir)" || exit 1; \ + fi; \ + for p in $$list; do echo "$$p $$p"; done | \ + sed 's/$(EXEEXT)$$//' | \ + while read p p1; do if test -f $$p \ + || test -f $$p1 \ + ; then echo "$$p"; echo "$$p"; else :; fi; \ + done | \ + sed -e 'p;s,.*/,,;n;h' \ + -e 's|.*|.|' \ + -e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \ + sed 'N;N;N;s,\n, ,g' | \ + $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \ + { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \ + if ($$2 == $$4) files[d] = files[d] " " $$1; \ + else { print "f", $$3 "/" $$4, $$1; } } \ + END { for (d in files) print "f", d, files[d] }' | \ + while read type dir files; do \ + if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \ + test -z "$$files" || { \ + echo " $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files '$(DESTDIR)$(ubindir)$$dir'"; \ + $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files "$(DESTDIR)$(ubindir)$$dir" || exit $$?; \ + } \ + ; done + +uninstall-ubinPROGRAMS: + @$(NORMAL_UNINSTALL) + @list='$(ubin_PROGRAMS)'; test -n "$(ubindir)" || list=; \ + files=`for p in $$list; do echo "$$p"; done | \ + sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \ + -e 's/$$/$(EXEEXT)/' \ + `; \ + test -n "$$list" || exit 0; \ + echo " ( cd '$(DESTDIR)$(ubindir)' && rm -f" $$files ")"; \ + cd "$(DESTDIR)$(ubindir)" && rm -f $$files + +clean-ubinPROGRAMS: + @list='$(ubin_PROGRAMS)'; test -n "$$list" || exit 0; \ + echo " rm -f" $$list; \ + rm -f $$list || exit $$?; \ + test -n "$(EXEEXT)" || exit 0; \ + list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \ + echo " rm -f" $$list; \ + rm -f $$list +install-usbinPROGRAMS: $(usbin_PROGRAMS) + @$(NORMAL_INSTALL) + @list='$(usbin_PROGRAMS)'; test -n "$(usbindir)" || list=; \ + if test -n "$$list"; then \ + echo " $(MKDIR_P) '$(DESTDIR)$(usbindir)'"; \ + $(MKDIR_P) "$(DESTDIR)$(usbindir)" || exit 1; \ + fi; \ + for p in $$list; do echo "$$p $$p"; done | \ + sed 's/$(EXEEXT)$$//' | \ + while read p p1; do if test -f $$p \ + || test -f $$p1 \ + ; then echo "$$p"; echo "$$p"; else :; fi; \ + done | \ + sed -e 'p;s,.*/,,;n;h' \ + -e 's|.*|.|' \ + -e 'p;x;s,.*/,,;s/$(EXEEXT)$$//;$(transform);s/$$/$(EXEEXT)/' | \ + sed 'N;N;N;s,\n, ,g' | \ + $(AWK) 'BEGIN { files["."] = ""; dirs["."] = 1 } \ + { d=$$3; if (dirs[d] != 1) { print "d", d; dirs[d] = 1 } \ + if ($$2 == $$4) files[d] = files[d] " " $$1; \ + else { print "f", $$3 "/" $$4, $$1; } } \ + END { for (d in files) print "f", d, files[d] }' | \ + while read type dir files; do \ + if test "$$dir" = .; then dir=; else dir=/$$dir; fi; \ + test -z "$$files" || { \ + echo " $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files '$(DESTDIR)$(usbindir)$$dir'"; \ + $(INSTALL_PROGRAM_ENV) $(LIBTOOL) $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=install $(INSTALL_PROGRAM) $$files "$(DESTDIR)$(usbindir)$$dir" || exit $$?; \ + } \ + ; done + +uninstall-usbinPROGRAMS: + @$(NORMAL_UNINSTALL) + @list='$(usbin_PROGRAMS)'; test -n "$(usbindir)" || list=; \ + files=`for p in $$list; do echo "$$p"; done | \ + sed -e 'h;s,^.*/,,;s/$(EXEEXT)$$//;$(transform)' \ + -e 's/$$/$(EXEEXT)/' \ + `; \ + test -n "$$list" || exit 0; \ + echo " ( cd '$(DESTDIR)$(usbindir)' && rm -f" $$files ")"; \ + cd "$(DESTDIR)$(usbindir)" && rm -f $$files + +clean-usbinPROGRAMS: + @list='$(usbin_PROGRAMS)'; test -n "$$list" || exit 0; \ + echo " rm -f" $$list; \ + rm -f $$list || exit $$?; \ + test -n "$(EXEEXT)" || exit 0; \ + list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \ + echo " rm -f" $$list; \ + rm -f $$list + +chage$(EXEEXT): $(chage_OBJECTS) $(chage_DEPENDENCIES) $(EXTRA_chage_DEPENDENCIES) + @rm -f chage$(EXEEXT) + $(AM_V_CCLD)$(LINK) $(chage_OBJECTS) $(chage_LDADD) $(LIBS) + +chfn$(EXEEXT): $(chfn_OBJECTS) $(chfn_DEPENDENCIES) $(EXTRA_chfn_DEPENDENCIES) + @rm -f chfn$(EXEEXT) + $(AM_V_CCLD)$(LINK) $(chfn_OBJECTS) $(chfn_LDADD) $(LIBS) + +chgpasswd$(EXEEXT): $(chgpasswd_OBJECTS) $(chgpasswd_DEPENDENCIES) $(EXTRA_chgpasswd_DEPENDENCIES) + @rm -f chgpasswd$(EXEEXT) + $(AM_V_CCLD)$(LINK) $(chgpasswd_OBJECTS) $(chgpasswd_LDADD) $(LIBS) + +chpasswd$(EXEEXT): $(chpasswd_OBJECTS) $(chpasswd_DEPENDENCIES) $(EXTRA_chpasswd_DEPENDENCIES) + @rm -f chpasswd$(EXEEXT) + $(AM_V_CCLD)$(LINK) $(chpasswd_OBJECTS) $(chpasswd_LDADD) $(LIBS) + +chsh$(EXEEXT): $(chsh_OBJECTS) $(chsh_DEPENDENCIES) $(EXTRA_chsh_DEPENDENCIES) + @rm -f chsh$(EXEEXT) + $(AM_V_CCLD)$(LINK) $(chsh_OBJECTS) $(chsh_LDADD) $(LIBS) + +expiry$(EXEEXT): $(expiry_OBJECTS) $(expiry_DEPENDENCIES) $(EXTRA_expiry_DEPENDENCIES) + @rm -f expiry$(EXEEXT) + $(AM_V_CCLD)$(LINK) $(expiry_OBJECTS) $(expiry_LDADD) $(LIBS) + +faillog$(EXEEXT): $(faillog_OBJECTS) $(faillog_DEPENDENCIES) $(EXTRA_faillog_DEPENDENCIES) + @rm -f faillog$(EXEEXT) + $(AM_V_CCLD)$(LINK) $(faillog_OBJECTS) $(faillog_LDADD) $(LIBS) + +gpasswd$(EXEEXT): $(gpasswd_OBJECTS) $(gpasswd_DEPENDENCIES) $(EXTRA_gpasswd_DEPENDENCIES) + @rm -f gpasswd$(EXEEXT) + $(AM_V_CCLD)$(LINK) $(gpasswd_OBJECTS) $(gpasswd_LDADD) $(LIBS) + +groupadd$(EXEEXT): $(groupadd_OBJECTS) $(groupadd_DEPENDENCIES) $(EXTRA_groupadd_DEPENDENCIES) + @rm -f groupadd$(EXEEXT) + $(AM_V_CCLD)$(LINK) $(groupadd_OBJECTS) $(groupadd_LDADD) $(LIBS) + +groupdel$(EXEEXT): $(groupdel_OBJECTS) $(groupdel_DEPENDENCIES) $(EXTRA_groupdel_DEPENDENCIES) + @rm -f groupdel$(EXEEXT) + $(AM_V_CCLD)$(LINK) $(groupdel_OBJECTS) $(groupdel_LDADD) $(LIBS) + +groupmems$(EXEEXT): $(groupmems_OBJECTS) $(groupmems_DEPENDENCIES) $(EXTRA_groupmems_DEPENDENCIES) + @rm -f groupmems$(EXEEXT) + $(AM_V_CCLD)$(LINK) $(groupmems_OBJECTS) $(groupmems_LDADD) $(LIBS) + +groupmod$(EXEEXT): $(groupmod_OBJECTS) $(groupmod_DEPENDENCIES) $(EXTRA_groupmod_DEPENDENCIES) + @rm -f groupmod$(EXEEXT) + $(AM_V_CCLD)$(LINK) $(groupmod_OBJECTS) $(groupmod_LDADD) $(LIBS) + +groups$(EXEEXT): $(groups_OBJECTS) $(groups_DEPENDENCIES) $(EXTRA_groups_DEPENDENCIES) + @rm -f groups$(EXEEXT) + $(AM_V_CCLD)$(LINK) $(groups_OBJECTS) $(groups_LDADD) $(LIBS) + +grpck$(EXEEXT): $(grpck_OBJECTS) $(grpck_DEPENDENCIES) $(EXTRA_grpck_DEPENDENCIES) + @rm -f grpck$(EXEEXT) + $(AM_V_CCLD)$(LINK) $(grpck_OBJECTS) $(grpck_LDADD) $(LIBS) + +grpconv$(EXEEXT): $(grpconv_OBJECTS) $(grpconv_DEPENDENCIES) $(EXTRA_grpconv_DEPENDENCIES) + @rm -f grpconv$(EXEEXT) + $(AM_V_CCLD)$(LINK) $(grpconv_OBJECTS) $(grpconv_LDADD) $(LIBS) + +grpunconv$(EXEEXT): $(grpunconv_OBJECTS) $(grpunconv_DEPENDENCIES) $(EXTRA_grpunconv_DEPENDENCIES) + @rm -f grpunconv$(EXEEXT) + $(AM_V_CCLD)$(LINK) $(grpunconv_OBJECTS) $(grpunconv_LDADD) $(LIBS) + +id$(EXEEXT): $(id_OBJECTS) $(id_DEPENDENCIES) $(EXTRA_id_DEPENDENCIES) + @rm -f id$(EXEEXT) + $(AM_V_CCLD)$(LINK) $(id_OBJECTS) $(id_LDADD) $(LIBS) + +lastlog$(EXEEXT): $(lastlog_OBJECTS) $(lastlog_DEPENDENCIES) $(EXTRA_lastlog_DEPENDENCIES) + @rm -f lastlog$(EXEEXT) + $(AM_V_CCLD)$(LINK) $(lastlog_OBJECTS) $(lastlog_LDADD) $(LIBS) + +login$(EXEEXT): $(login_OBJECTS) $(login_DEPENDENCIES) $(EXTRA_login_DEPENDENCIES) + @rm -f login$(EXEEXT) + $(AM_V_CCLD)$(LINK) $(login_OBJECTS) $(login_LDADD) $(LIBS) + +logoutd$(EXEEXT): $(logoutd_OBJECTS) $(logoutd_DEPENDENCIES) $(EXTRA_logoutd_DEPENDENCIES) + @rm -f logoutd$(EXEEXT) + $(AM_V_CCLD)$(LINK) $(logoutd_OBJECTS) $(logoutd_LDADD) $(LIBS) + +newgidmap$(EXEEXT): $(newgidmap_OBJECTS) $(newgidmap_DEPENDENCIES) $(EXTRA_newgidmap_DEPENDENCIES) + @rm -f newgidmap$(EXEEXT) + $(AM_V_CCLD)$(LINK) $(newgidmap_OBJECTS) $(newgidmap_LDADD) $(LIBS) + +newgrp$(EXEEXT): $(newgrp_OBJECTS) $(newgrp_DEPENDENCIES) $(EXTRA_newgrp_DEPENDENCIES) + @rm -f newgrp$(EXEEXT) + $(AM_V_CCLD)$(LINK) $(newgrp_OBJECTS) $(newgrp_LDADD) $(LIBS) + +newuidmap$(EXEEXT): $(newuidmap_OBJECTS) $(newuidmap_DEPENDENCIES) $(EXTRA_newuidmap_DEPENDENCIES) + @rm -f newuidmap$(EXEEXT) + $(AM_V_CCLD)$(LINK) $(newuidmap_OBJECTS) $(newuidmap_LDADD) $(LIBS) + +newusers$(EXEEXT): $(newusers_OBJECTS) $(newusers_DEPENDENCIES) $(EXTRA_newusers_DEPENDENCIES) + @rm -f newusers$(EXEEXT) + $(AM_V_CCLD)$(LINK) $(newusers_OBJECTS) $(newusers_LDADD) $(LIBS) + +nologin$(EXEEXT): $(nologin_OBJECTS) $(nologin_DEPENDENCIES) $(EXTRA_nologin_DEPENDENCIES) + @rm -f nologin$(EXEEXT) + $(AM_V_CCLD)$(LINK) $(nologin_OBJECTS) $(nologin_LDADD) $(LIBS) + +passwd$(EXEEXT): $(passwd_OBJECTS) $(passwd_DEPENDENCIES) $(EXTRA_passwd_DEPENDENCIES) + @rm -f passwd$(EXEEXT) + $(AM_V_CCLD)$(LINK) $(passwd_OBJECTS) $(passwd_LDADD) $(LIBS) + +pwck$(EXEEXT): $(pwck_OBJECTS) $(pwck_DEPENDENCIES) $(EXTRA_pwck_DEPENDENCIES) + @rm -f pwck$(EXEEXT) + $(AM_V_CCLD)$(LINK) $(pwck_OBJECTS) $(pwck_LDADD) $(LIBS) + +pwconv$(EXEEXT): $(pwconv_OBJECTS) $(pwconv_DEPENDENCIES) $(EXTRA_pwconv_DEPENDENCIES) + @rm -f pwconv$(EXEEXT) + $(AM_V_CCLD)$(LINK) $(pwconv_OBJECTS) $(pwconv_LDADD) $(LIBS) + +pwunconv$(EXEEXT): $(pwunconv_OBJECTS) $(pwunconv_DEPENDENCIES) $(EXTRA_pwunconv_DEPENDENCIES) + @rm -f pwunconv$(EXEEXT) + $(AM_V_CCLD)$(LINK) $(pwunconv_OBJECTS) $(pwunconv_LDADD) $(LIBS) + +su$(EXEEXT): $(su_OBJECTS) $(su_DEPENDENCIES) $(EXTRA_su_DEPENDENCIES) + @rm -f su$(EXEEXT) + $(AM_V_CCLD)$(LINK) $(su_OBJECTS) $(su_LDADD) $(LIBS) + +sulogin$(EXEEXT): $(sulogin_OBJECTS) $(sulogin_DEPENDENCIES) $(EXTRA_sulogin_DEPENDENCIES) + @rm -f sulogin$(EXEEXT) + $(AM_V_CCLD)$(LINK) $(sulogin_OBJECTS) $(sulogin_LDADD) $(LIBS) + +useradd$(EXEEXT): $(useradd_OBJECTS) $(useradd_DEPENDENCIES) $(EXTRA_useradd_DEPENDENCIES) + @rm -f useradd$(EXEEXT) + $(AM_V_CCLD)$(LINK) $(useradd_OBJECTS) $(useradd_LDADD) $(LIBS) + +userdel$(EXEEXT): $(userdel_OBJECTS) $(userdel_DEPENDENCIES) $(EXTRA_userdel_DEPENDENCIES) + @rm -f userdel$(EXEEXT) + $(AM_V_CCLD)$(LINK) $(userdel_OBJECTS) $(userdel_LDADD) $(LIBS) + +usermod$(EXEEXT): $(usermod_OBJECTS) $(usermod_DEPENDENCIES) $(EXTRA_usermod_DEPENDENCIES) + @rm -f usermod$(EXEEXT) + $(AM_V_CCLD)$(LINK) $(usermod_OBJECTS) $(usermod_LDADD) $(LIBS) + +vipw$(EXEEXT): $(vipw_OBJECTS) $(vipw_DEPENDENCIES) $(EXTRA_vipw_DEPENDENCIES) + @rm -f vipw$(EXEEXT) + $(AM_V_CCLD)$(LINK) $(vipw_OBJECTS) $(vipw_LDADD) $(LIBS) + +mostlyclean-compile: + -rm -f *.$(OBJEXT) + +distclean-compile: + -rm -f *.tab.c + +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/chage.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/chfn.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/chgpasswd.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/chpasswd.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/chsh.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/expiry.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/faillog.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gpasswd.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/groupadd.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/groupdel.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/groupmems.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/groupmod.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/groups.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/grpck.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/grpconv.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/grpunconv.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/id.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lastlog.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/login.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/login_nopam.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/logoutd.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/newgidmap.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/newgrp.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/newuidmap.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/newusers.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/nologin.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/passwd.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pwck.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pwconv.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pwunconv.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/su.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/suauth.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/sulogin.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/useradd.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/userdel.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/usermod.Po@am__quote@ +@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/vipw.Po@am__quote@ + +.c.o: +@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ $< + +.c.obj: +@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(COMPILE) -c -o $@ `$(CYGPATH_W) '$<'` + +.c.lo: +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo +@AMDEP_TRUE@@am__fastdepCC_FALSE@ $(AM_V_CC)source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ +@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ +@am__fastdepCC_FALSE@ $(AM_V_CC@am__nodep@)$(LTCOMPILE) -c -o $@ $< + +mostlyclean-libtool: + -rm -f *.lo + +clean-libtool: + -rm -rf .libs _libs + +ID: $(am__tagged_files) + $(am__define_uniq_tagged_files); mkid -fID $$unique +tags: tags-am +TAGS: tags + +tags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) + set x; \ + here=`pwd`; \ + $(am__define_uniq_tagged_files); \ + shift; \ + if test -z "$(ETAGS_ARGS)$$*$$unique"; then :; else \ + test -n "$$unique" || unique=$$empty_fix; \ + if test $$# -gt 0; then \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + "$$@" $$unique; \ + else \ + $(ETAGS) $(ETAGSFLAGS) $(AM_ETAGSFLAGS) $(ETAGS_ARGS) \ + $$unique; \ + fi; \ + fi +ctags: ctags-am + +CTAGS: ctags +ctags-am: $(TAGS_DEPENDENCIES) $(am__tagged_files) + $(am__define_uniq_tagged_files); \ + test -z "$(CTAGS_ARGS)$$unique" \ + || $(CTAGS) $(CTAGSFLAGS) $(AM_CTAGSFLAGS) $(CTAGS_ARGS) \ + $$unique + +GTAGS: + here=`$(am__cd) $(top_builddir) && pwd` \ + && $(am__cd) $(top_srcdir) \ + && gtags -i $(GTAGS_ARGS) "$$here" +cscopelist: cscopelist-am + +cscopelist-am: $(am__tagged_files) + list='$(am__tagged_files)'; \ + case "$(srcdir)" in \ + [\\/]* | ?:[\\/]*) sdir="$(srcdir)" ;; \ + *) sdir=$(subdir)/$(srcdir) ;; \ + esac; \ + for i in $$list; do \ + if test -f "$$i"; then \ + echo "$(subdir)/$$i"; \ + else \ + echo "$$sdir/$$i"; \ + fi; \ + done >> $(top_builddir)/cscope.files + +distclean-tags: + -rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags + +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 $(PROGRAMS) +installdirs: + for dir in "$(DESTDIR)$(bindir)" "$(DESTDIR)$(sbindir)" "$(DESTDIR)$(ubindir)" "$(DESTDIR)$(usbindir)"; do \ + test -z "$$dir" || $(MKDIR_P) "$$dir"; \ + done +install: install-am +install-exec: install-exec-am +install-data: install-data-am +uninstall: uninstall-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: + +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." +clean: clean-am + +clean-am: clean-binPROGRAMS clean-generic clean-libtool \ + clean-noinstPROGRAMS clean-sbinPROGRAMS clean-ubinPROGRAMS \ + clean-usbinPROGRAMS mostlyclean-am + +distclean: distclean-am + -rm -rf ./$(DEPDIR) + -rm -f Makefile +distclean-am: clean-am distclean-compile distclean-generic \ + distclean-tags + +dvi: dvi-am + +dvi-am: + +html: html-am + +html-am: + +info: info-am + +info-am: + +install-data-am: install-ubinPROGRAMS install-usbinPROGRAMS + +install-dvi: install-dvi-am + +install-dvi-am: + +install-exec-am: install-binPROGRAMS install-sbinPROGRAMS + +install-html: install-html-am + +install-html-am: + +install-info: install-info-am + +install-info-am: + +install-man: + +install-pdf: install-pdf-am + +install-pdf-am: + +install-ps: install-ps-am + +install-ps-am: + +installcheck-am: + +maintainer-clean: maintainer-clean-am + -rm -rf ./$(DEPDIR) + -rm -f Makefile +maintainer-clean-am: distclean-am maintainer-clean-generic + +mostlyclean: mostlyclean-am + +mostlyclean-am: mostlyclean-compile mostlyclean-generic \ + mostlyclean-libtool + +pdf: pdf-am + +pdf-am: + +ps: ps-am + +ps-am: + +uninstall-am: uninstall-binPROGRAMS uninstall-sbinPROGRAMS \ + uninstall-ubinPROGRAMS uninstall-usbinPROGRAMS + +.MAKE: install-am install-strip + +.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean \ + clean-binPROGRAMS clean-generic clean-libtool \ + clean-noinstPROGRAMS clean-sbinPROGRAMS clean-ubinPROGRAMS \ + clean-usbinPROGRAMS cscopelist-am ctags ctags-am distclean \ + distclean-compile distclean-generic distclean-libtool \ + distclean-tags distdir dvi dvi-am html html-am info info-am \ + install install-am install-binPROGRAMS 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-pdf install-pdf-am \ + install-ps install-ps-am install-sbinPROGRAMS install-strip \ + install-ubinPROGRAMS install-usbinPROGRAMS installcheck \ + installcheck-am installdirs maintainer-clean \ + maintainer-clean-generic mostlyclean mostlyclean-compile \ + mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \ + tags tags-am uninstall uninstall-am uninstall-binPROGRAMS \ + uninstall-sbinPROGRAMS uninstall-ubinPROGRAMS \ + uninstall-usbinPROGRAMS + +.PRECIOUS: Makefile + +@ACCT_TOOLS_SETUID_TRUE@ suidubins += chage chgpasswd chpasswd groupadd groupdel groupmod newusers useradd userdel usermod +@ENABLE_SUBIDS_TRUE@ suidubins += newgidmap newuidmap + +@WITH_TCB_TRUE@suidubins -= passwd + +install-am: all-am + $(MAKE) $(AM_MAKEFLAGS) install-exec-am install-data-am + ln -sf newgrp $(DESTDIR)$(ubindir)/sg + ln -sf vipw $(DESTDIR)$(usbindir)/vigr + for i in $(suidbins); do \ + chmod -f $(suidperms) $(DESTDIR)$(bindir)/$$i; \ + done + for i in $(suidubins); do \ + chmod -f $(suidperms) $(DESTDIR)$(ubindir)/$$i; \ + done +@WITH_TCB_TRUE@ for i in $(shadowsgidubins); do \ +@WITH_TCB_TRUE@ chown root:shadow $(DESTDIR)$(ubindir)/$$i; \ +@WITH_TCB_TRUE@ chmod -f $(sgidperms) $(DESTDIR)$(ubindir)/$$i; \ +@WITH_TCB_TRUE@ done + +# 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/src/chage.c b/src/chage.c index 2df65a94..617e90f1 100644 --- a/src/chage.c +++ b/src/chage.c @@ -592,7 +592,7 @@ static void open_files (bool readonly) } pw_locked = true; } - if (pw_open (readonly ? O_RDONLY: O_RDWR) == 0) { + if (pw_open (readonly ? O_RDONLY: O_CREAT | O_RDWR) == 0) { fprintf (stderr, _("%s: cannot open %s\n"), Prog, pw_dbname ()); SYSLOG ((LOG_WARN, "cannot open %s", pw_dbname ())); fail_exit (E_NOPERM); @@ -613,7 +613,7 @@ static void open_files (bool readonly) } spw_locked = true; } - if (spw_open (readonly ? O_RDONLY: O_RDWR) == 0) { + if (spw_open (readonly ? O_RDONLY: O_CREAT | O_RDWR) == 0) { fprintf (stderr, _("%s: cannot open %s\n"), Prog, spw_dbname ()); SYSLOG ((LOG_WARN, "cannot open %s", spw_dbname ())); diff --git a/src/chfn.c b/src/chfn.c index a022c1a3..18aa3de7 100644 --- a/src/chfn.c +++ b/src/chfn.c @@ -463,7 +463,7 @@ static void update_gecos (const char *user, char *gecos) fail_exit (E_NOPERM); } pw_locked = true; - if (pw_open (O_RDWR) == 0) { + if (pw_open (O_CREAT | O_RDWR) == 0) { fprintf (stderr, _("%s: cannot open %s\n"), Prog, pw_dbname ()); fail_exit (E_NOPERM); diff --git a/src/chgpasswd.c b/src/chgpasswd.c index 4dd5fbab..13203a46 100644 --- a/src/chgpasswd.c +++ b/src/chgpasswd.c @@ -316,7 +316,7 @@ static void open_files (void) fail_exit (1); } gr_locked = true; - if (gr_open (O_RDWR) == 0) { + if (gr_open (O_CREAT | O_RDWR) == 0) { fprintf (stderr, _("%s: cannot open %s\n"), Prog, gr_dbname ()); fail_exit (1); @@ -332,7 +332,7 @@ static void open_files (void) fail_exit (1); } sgr_locked = true; - if (sgr_open (O_RDWR) == 0) { + if (sgr_open (O_CREAT | O_RDWR) == 0) { fprintf (stderr, _("%s: cannot open %s\n"), Prog, sgr_dbname ()); fail_exit (1); diff --git a/src/chpasswd.c b/src/chpasswd.c index 78436d6a..21008f58 100644 --- a/src/chpasswd.c +++ b/src/chpasswd.c @@ -313,7 +313,7 @@ static void open_files (void) fail_exit (1); } pw_locked = true; - if (pw_open (O_RDWR) == 0) { + if (pw_open (O_CREAT | O_RDWR) == 0) { fprintf (stderr, _("%s: cannot open %s\n"), Prog, pw_dbname ()); fail_exit (1); @@ -328,7 +328,7 @@ static void open_files (void) fail_exit (1); } spw_locked = true; - if (spw_open (O_RDWR) == 0) { + if (spw_open (O_CREAT | O_RDWR) == 0) { fprintf (stderr, _("%s: cannot open %s\n"), Prog, spw_dbname ()); diff --git a/src/chsh.c b/src/chsh.c index 393a79ff..c89708b9 100644 --- a/src/chsh.c +++ b/src/chsh.c @@ -373,7 +373,7 @@ static void update_shell (const char *user, char *newshell) fail_exit (1); } pw_locked = true; - if (pw_open (O_RDWR) == 0) { + if (pw_open (O_CREAT | O_RDWR) == 0) { fprintf (stderr, _("%s: cannot open %s\n"), Prog, pw_dbname ()); SYSLOG ((LOG_WARN, "cannot open %s", pw_dbname ())); fail_exit (1); diff --git a/src/expiry.c b/src/expiry.c index 4ae47703..41add942 100644 --- a/src/expiry.c +++ b/src/expiry.c @@ -58,7 +58,7 @@ static void process_flags (int argc, char **argv); */ static RETSIGTYPE catch_signals (unused int sig) { - exit (10); + _exit (10); } /* diff --git a/src/gpasswd.c b/src/gpasswd.c index 8959a35a..c4a492b1 100644 --- a/src/gpasswd.c +++ b/src/gpasswd.c @@ -169,9 +169,8 @@ static RETSIGTYPE catch_signals (int killed) } if (0 != killed) { - (void) putchar ('\n'); - (void) fflush (stdout); - exit (killed); + (void) write (STDOUT_FILENO, "\n", 1); + _exit (killed); } } @@ -370,7 +369,7 @@ static void open_files (void) add_cleanup (log_gpasswd_failure_system, NULL); - if (gr_open (O_RDWR) == 0) { + if (gr_open (O_CREAT | O_RDWR) == 0) { fprintf (stderr, _("%s: cannot open %s\n"), Prog, gr_dbname ()); @@ -380,7 +379,7 @@ static void open_files (void) #ifdef SHADOWGRP if (is_shadowgrp) { - if (sgr_open (O_RDWR) == 0) { + if (sgr_open (O_CREAT | O_RDWR) == 0) { fprintf (stderr, _("%s: cannot open %s\n"), Prog, sgr_dbname ()); diff --git a/src/groupadd.c b/src/groupadd.c index 39b4ec02..179438fb 100644 --- a/src/groupadd.c +++ b/src/groupadd.c @@ -346,7 +346,7 @@ static void open_files (void) add_cleanup (cleanup_report_add_group, group_name); /* And now open the databases */ - if (gr_open (O_RDWR) == 0) { + if (gr_open (O_CREAT | O_RDWR) == 0) { fprintf (stderr, _("%s: cannot open %s\n"), Prog, gr_dbname ()); SYSLOG ((LOG_WARN, "cannot open %s", gr_dbname ())); exit (E_GRP_UPDATE); @@ -354,7 +354,7 @@ static void open_files (void) #ifdef SHADOWGRP if (is_shadow_grp) { - if (sgr_open (O_RDWR) == 0) { + if (sgr_open (O_CREAT | O_RDWR) == 0) { fprintf (stderr, _("%s: cannot open %s\n"), Prog, sgr_dbname ()); diff --git a/src/groupdel.c b/src/groupdel.c index da993475..11e522b1 100644 --- a/src/groupdel.c +++ b/src/groupdel.c @@ -60,6 +60,7 @@ const char *Prog; static char *group_name; static gid_t group_id = -1; +static bool check_group_busy = true; #ifdef SHADOWGRP static bool is_shadow_grp; @@ -96,6 +97,7 @@ static /*@noreturn@*/void usage (int status) Prog); (void) fputs (_(" -h, --help display this help message and exit\n"), usageout); (void) fputs (_(" -R, --root CHROOT_DIR directory to chroot into\n"), usageout); + (void) fputs (_(" -f, --force delete group even if it is the primary group of a user\n"), usageout); (void) fputs ("\n", usageout); exit (status); } @@ -246,7 +248,7 @@ static void open_files (void) add_cleanup (cleanup_report_del_group, group_name); /* An now open the databases */ - if (gr_open (O_RDWR) == 0) { + if (gr_open (O_CREAT | O_RDWR) == 0) { fprintf (stderr, _("%s: cannot open %s\n"), Prog, gr_dbname ()); @@ -255,7 +257,7 @@ static void open_files (void) } #ifdef SHADOWGRP if (is_shadow_grp) { - if (sgr_open (O_RDWR) == 0) { + if (sgr_open (O_CREAT | O_RDWR) == 0) { fprintf (stderr, _("%s: cannot open %s\n"), Prog, sgr_dbname ()); @@ -321,7 +323,7 @@ static void process_flags (int argc, char **argv) {NULL, 0, NULL, '\0'} }; - while ((c = getopt_long (argc, argv, "hR:", + while ((c = getopt_long (argc, argv, "hfR:", long_options, NULL)) != -1) { switch (c) { case 'h': @@ -329,6 +331,9 @@ static void process_flags (int argc, char **argv) /*@notreached@*/break; case 'R': /* no-op, handled in process_root_flag () */ break; + case 'f': + check_group_busy = false; + break; default: usage (E_USAGE); } @@ -465,7 +470,9 @@ int main (int argc, char **argv) /* * Make sure this isn't the primary group of anyone. */ - group_busy (group_id); + if (check_group_busy) { + group_busy (group_id); + } /* * Do the hard stuff - open the files, delete the group entries, diff --git a/src/groupmems.c b/src/groupmems.c index e4f107f9..4a49e10b 100644 --- a/src/groupmems.c +++ b/src/groupmems.c @@ -536,14 +536,14 @@ static void open_files (void) #endif } - if (gr_open (list ? O_RDONLY : O_RDWR) == 0) { + if (gr_open (list ? O_RDONLY : O_CREAT | O_RDWR) == 0) { fprintf (stderr, _("%s: cannot open %s\n"), Prog, gr_dbname ()); fail_exit (EXIT_GROUP_FILE); } #ifdef SHADOWGRP if (is_shadowgrp) { - if (sgr_open (list ? O_RDONLY : O_RDWR) == 0) { + if (sgr_open (list ? O_RDONLY : O_CREAT | O_RDWR) == 0) { fprintf (stderr, _("%s: cannot open %s\n"), Prog, sgr_dbname ()); fail_exit (EXIT_GROUP_FILE); } diff --git a/src/groupmod.c b/src/groupmod.c index d9d38071..757c1a40 100644 --- a/src/groupmod.c +++ b/src/groupmod.c @@ -663,7 +663,7 @@ static void lock_files (void) */ static void open_files (void) { - if (gr_open (O_RDWR) == 0) { + if (gr_open (O_CREAT | O_RDWR) == 0) { fprintf (stderr, _("%s: cannot open %s\n"), Prog, gr_dbname ()); SYSLOG ((LOG_WARN, "cannot open %s", gr_dbname ())); exit (E_GRP_UPDATE); @@ -672,7 +672,7 @@ static void open_files (void) #ifdef SHADOWGRP if ( is_shadow_grp && (pflg || nflg)) { - if (sgr_open (O_RDWR) == 0) { + if (sgr_open (O_CREAT | O_RDWR) == 0) { fprintf (stderr, _("%s: cannot open %s\n"), Prog, sgr_dbname ()); @@ -683,7 +683,7 @@ static void open_files (void) #endif /* SHADOWGRP */ if (gflg) { - if (pw_open (O_RDWR) == 0) { + if (pw_open (O_CREAT | O_RDWR) == 0) { fprintf (stderr, _("%s: cannot open %s\n"), Prog, pw_dbname ()); diff --git a/src/grpck.c b/src/grpck.c index 9d1ed903..ea5d3b39 100644 --- a/src/grpck.c +++ b/src/grpck.c @@ -299,7 +299,7 @@ static void open_files (void) * Open the files. Use O_RDONLY if we are in read_only mode, * O_RDWR otherwise. */ - if (gr_open (read_only ? O_RDONLY : O_RDWR) == 0) { + if (gr_open (read_only ? O_RDONLY : O_CREAT | O_RDWR) == 0) { fprintf (stderr, _("%s: cannot open %s\n"), Prog, grp_file); if (use_system_grp_file) { @@ -308,7 +308,7 @@ static void open_files (void) fail_exit (E_CANT_OPEN); } #ifdef SHADOWGRP - if (is_shadow && (sgr_open (read_only ? O_RDONLY : O_RDWR) == 0)) { + if (is_shadow && (sgr_open (read_only ? O_RDONLY : O_CREAT | O_RDWR) == 0)) { fprintf (stderr, _("%s: cannot open %s\n"), Prog, sgr_file); if (use_system_sgr_file) { diff --git a/src/grpconv.c b/src/grpconv.c index ece8095d..f681f07f 100644 --- a/src/grpconv.c +++ b/src/grpconv.c @@ -163,7 +163,7 @@ int main (int argc, char **argv) fail_exit (5); } gr_locked = true; - if (gr_open (O_RDWR) == 0) { + if (gr_open (O_CREAT | O_RDWR) == 0) { fprintf (stderr, _("%s: cannot open %s\n"), Prog, gr_dbname ()); fail_exit (1); } diff --git a/src/grpunconv.c b/src/grpunconv.c index ea8914cb..253f06f5 100644 --- a/src/grpunconv.c +++ b/src/grpunconv.c @@ -166,7 +166,7 @@ int main (int argc, char **argv) fail_exit (5); } gr_locked = true; - if (gr_open (O_RDWR) == 0) { + if (gr_open (O_CREAT | O_RDWR) == 0) { fprintf (stderr, _("%s: cannot open %s\n"), Prog, gr_dbname ()); fail_exit (1); diff --git a/src/lastlog.c b/src/lastlog.c index ed9484aa..965691db 100644 --- a/src/lastlog.c +++ b/src/lastlog.c @@ -71,6 +71,8 @@ static struct stat statbuf; /* fstat buffer for file size */ static bool uflg = false; /* print only an user of range of users */ static bool tflg = false; /* print is restricted to most recent days */ static bool bflg = false; /* print excludes most recent days */ +static bool Cflg = false; /* clear record for user */ +static bool Sflg = false; /* set record for user */ #define NOW (time ((time_t *) 0)) @@ -83,8 +85,10 @@ static /*@noreturn@*/void usage (int status) "Options:\n"), Prog); (void) fputs (_(" -b, --before DAYS print only lastlog records older than DAYS\n"), usageout); + (void) fputs (_(" -C, --clear clear lastlog record of an user (usable only with -u)\n"), usageout); (void) fputs (_(" -h, --help display this help message and exit\n"), usageout); (void) fputs (_(" -R, --root CHROOT_DIR directory to chroot into\n"), usageout); + (void) fputs (_(" -S, --set set lastlog record to current time (usable only with -u)\n"), usageout); (void) fputs (_(" -t, --time DAYS print only lastlog records more recent than DAYS\n"), usageout); (void) fputs (_(" -u, --user LOGIN print lastlog record of the specified LOGIN\n"), usageout); (void) fputs ("\n", usageout); @@ -194,6 +198,80 @@ static void print (void) } } +static void update_one (/*@null@*/const struct passwd *pw) +{ + off_t offset; + struct lastlog ll; + int err; + + if (NULL == pw) { + return; + } + + offset = (off_t) pw->pw_uid * sizeof (ll); + /* fseeko errors are not really relevant for us. */ + err = fseeko (lastlogfile, offset, SEEK_SET); + assert (0 == err); + + memzero (&ll, sizeof (ll)); + + if (Sflg) { + ll.ll_time = NOW; +#ifdef HAVE_LL_HOST + strcpy (ll.ll_host, "localhost"); +#endif + strcpy (ll.ll_line, "lastlog"); +#ifdef WITH_AUDIT + audit_logger (AUDIT_ACCT_UNLOCK, Prog, + "clearing-lastlog", + pw->pw_name, (unsigned int) pw->pw_uid, SHADOW_AUDIT_SUCCESS); +#endif + } +#ifdef WITH_AUDIT + else { + audit_logger (AUDIT_ACCT_UNLOCK, Prog, + "refreshing-lastlog", + pw->pw_name, (unsigned int) pw->pw_uid, SHADOW_AUDIT_SUCCESS); + } +#endif + + if (fwrite (&ll, sizeof(ll), 1, lastlogfile) != 1) { + fprintf (stderr, + _("%s: Failed to update the entry for UID %lu\n"), + Prog, (unsigned long int)pw->pw_uid); + exit (EXIT_FAILURE); + } +} + +static void update (void) +{ + const struct passwd *pwent; + + if (!uflg) /* safety measure */ + return; + + if (has_umin && has_umax && (umin == umax)) { + update_one (getpwuid ((uid_t)umin)); + } else { + setpwent (); + while ( (pwent = getpwent ()) != NULL ) { + if ((has_umin && (pwent->pw_uid < (uid_t)umin)) + || (has_umax && (pwent->pw_uid > (uid_t)umax))) { + continue; + } + update_one (pwent); + } + endpwent (); + } + + if (fflush (lastlogfile) != 0 || fsync (fileno (lastlogfile)) != 0) { + fprintf (stderr, + _("%s: Failed to update the lastlog file\n"), + Prog); + exit (EXIT_FAILURE); + } +} + int main (int argc, char **argv) { /* @@ -208,18 +286,24 @@ int main (int argc, char **argv) process_root_flag ("-R", argc, argv); +#ifdef WITH_AUDIT + audit_help_open (); +#endif + { int c; static struct option const longopts[] = { {"before", required_argument, NULL, 'b'}, + {"clear", no_argument, NULL, 'C'}, {"help", no_argument, NULL, 'h'}, {"root", required_argument, NULL, 'R'}, + {"set", no_argument, NULL, 'S'}, {"time", required_argument, NULL, 't'}, {"user", required_argument, NULL, 'u'}, {NULL, 0, NULL, '\0'} }; - while ((c = getopt_long (argc, argv, "b:hR:t:u:", longopts, + while ((c = getopt_long (argc, argv, "b:ChR:St:u:", longopts, NULL)) != -1) { switch (c) { case 'b': @@ -235,11 +319,21 @@ int main (int argc, char **argv) bflg = true; break; } + case 'C': + { + Cflg = true; + break; + } case 'h': usage (EXIT_SUCCESS); /*@notreached@*/break; case 'R': /* no-op, handled in process_root_flag () */ break; + case 'S': + { + Sflg = true; + break; + } case 't': { unsigned long days; @@ -294,9 +388,21 @@ int main (int argc, char **argv) Prog, argv[optind]); usage (EXIT_FAILURE); } + if (Cflg && Sflg) { + fprintf (stderr, + _("%s: Option -C cannot be used together with option -S\n"), + Prog); + usage (EXIT_FAILURE); + } + if ((Cflg || Sflg) && !uflg) { + fprintf (stderr, + _("%s: Options -C and -S require option -u to specify the user\n"), + Prog); + usage (EXIT_FAILURE); + } } - lastlogfile = fopen (LASTLOG_FILE, "r"); + lastlogfile = fopen (LASTLOG_FILE, (Cflg || Sflg)?"r+":"r"); if (NULL == lastlogfile) { perror (LASTLOG_FILE); exit (EXIT_FAILURE); @@ -310,7 +416,10 @@ int main (int argc, char **argv) exit (EXIT_FAILURE); } - print (); + if (Cflg || Sflg) + update (); + else + print (); (void) fclose (lastlogfile); diff --git a/src/login.c b/src/login.c index d610844d..2d2e704e 100644 --- a/src/login.c +++ b/src/login.c @@ -103,7 +103,7 @@ static bool hflg = false; static bool preauth_flag = false; static bool amroot; -static unsigned int timeout; +static char tmsg[256]; /* * External identifiers. @@ -416,8 +416,8 @@ static void init_env (void) static RETSIGTYPE alarm_handler (unused int sig) { - fprintf (stderr, _("\nLogin timed out after %u seconds.\n"), timeout); - exit (0); + write (STDERR_FILENO, tmsg, strlen (tmsg)); + _exit (0); } #ifdef USE_PAM @@ -532,6 +532,7 @@ int main (int argc, char **argv) bool is_console; #endif int err; + unsigned int timeout; const char *cp; const char *tmp; char fromhost[512]; @@ -698,8 +699,10 @@ int main (int argc, char **argv) top: /* only allow ALARM sec. for login */ - (void) signal (SIGALRM, alarm_handler); timeout = getdef_unum ("LOGIN_TIMEOUT", ALARM); + snprintf (tmsg, sizeof tmsg, + _("\nLogin timed out after %u seconds.\n"), timeout); + (void) signal (SIGALRM, alarm_handler); if (timeout > 0) { (void) alarm (timeout); } diff --git a/src/newgidmap.c b/src/newgidmap.c index 1527a615..b1e33513 100644 --- a/src/newgidmap.c +++ b/src/newgidmap.c @@ -56,7 +56,7 @@ static bool verify_range(struct passwd *pw, struct map_range *range) if (have_sub_gids(pw->pw_name, range->lower, range->count)) return true; - /* Allow a process to map it's own gid */ + /* Allow a process to map its own gid */ if ((range->count == 1) && (pw->pw_gid == range->lower)) return true; @@ -94,7 +94,7 @@ static void usage(void) */ int main(int argc, char **argv) { - char proc_dir_name[PATH_MAX]; + char proc_dir_name[32]; char *target_str; pid_t target, parent; int proc_dir_fd; @@ -113,13 +113,14 @@ int main(int argc, char **argv) if (argc < 2) usage(); - /* Find the process that needs it's user namespace + /* Find the process that needs its user namespace * gid mapping set. */ target_str = argv[1]; if (!get_pid(target_str, &target)) usage(); + /* max string length is 6 + 10 + 1 + 1 = 18, allocate 32 bytes */ written = snprintf(proc_dir_name, sizeof(proc_dir_name), "/proc/%u/", target); if ((written <= 0) || (written >= sizeof(proc_dir_name))) { @@ -160,8 +161,10 @@ int main(int argc, char **argv) (getgid() != pw->pw_gid) || (pw->pw_uid != st.st_uid) || (pw->pw_gid != st.st_gid)) { - fprintf(stderr, _( "%s: Target %u is owned by a different user\n" ), - Prog, target); + fprintf(stderr, _( "%s: Target %u is owned by a different user: uid:%lu pw_uid:%lu st_uid:%lu, gid:%lu pw_gid:%lu st_gid:%lu\n" ), + Prog, target, + (unsigned long int)getuid(), (unsigned long int)pw->pw_uid, (unsigned long int)st.st_uid, + (unsigned long int)getgid(), (unsigned long int)pw->pw_gid, (unsigned long int)st.st_gid); return EXIT_FAILURE; } diff --git a/src/newgrp.c b/src/newgrp.c index 49dd1512..b8d3ddc8 100644 --- a/src/newgrp.c +++ b/src/newgrp.c @@ -255,12 +255,15 @@ static void syslog_sg (const char *name, const char *group) { const char *loginname = getlogin (); const char *tty = ttyname (0); + char *free_login = NULL, *free_tty = NULL; if (loginname != NULL) { - loginname = xstrdup (loginname); + free_login = xstrdup (loginname); + loginname = free_login; } if (tty != NULL) { - tty = xstrdup (tty); + free_tty = xstrdup (tty); + tty = free_tty; } if (loginname == NULL) { @@ -372,6 +375,8 @@ static void syslog_sg (const char *name, const char *group) (void) signal (SIGTTOU, SIG_DFL); } #endif /* USE_PAM */ + free(free_login); + free(free_tty); } #endif /* USE_SYSLOG */ diff --git a/src/newuidmap.c b/src/newuidmap.c index 69c50940..1ba25e7a 100644 --- a/src/newuidmap.c +++ b/src/newuidmap.c @@ -56,7 +56,7 @@ static bool verify_range(struct passwd *pw, struct map_range *range) if (have_sub_uids(pw->pw_name, range->lower, range->count)) return true; - /* Allow a process to map it's own uid */ + /* Allow a process to map its own uid */ if ((range->count == 1) && (pw->pw_uid == range->lower)) return true; @@ -94,7 +94,7 @@ void usage(void) */ int main(int argc, char **argv) { - char proc_dir_name[PATH_MAX]; + char proc_dir_name[32]; char *target_str; pid_t target, parent; int proc_dir_fd; @@ -113,13 +113,14 @@ int main(int argc, char **argv) if (argc < 2) usage(); - /* Find the process that needs it's user namespace + /* Find the process that needs its user namespace * uid mapping set. */ target_str = argv[1]; if (!get_pid(target_str, &target)) usage(); + /* max string length is 6 + 10 + 1 + 1 = 18, allocate 32 bytes */ written = snprintf(proc_dir_name, sizeof(proc_dir_name), "/proc/%u/", target); if ((written <= 0) || (written >= sizeof(proc_dir_name))) { @@ -160,8 +161,10 @@ int main(int argc, char **argv) (getgid() != pw->pw_gid) || (pw->pw_uid != st.st_uid) || (pw->pw_gid != st.st_gid)) { - fprintf(stderr, _( "%s: Target %u is owned by a different user\n" ), - Prog, target); + fprintf(stderr, _( "%s: Target process %u is owned by a different user: uid:%lu pw_uid:%lu st_uid:%lu, gid:%lu pw_gid:%lu st_gid:%lu\n" ), + Prog, target, + (unsigned long int)getuid(), (unsigned long int)pw->pw_uid, (unsigned long int)st.st_uid, + (unsigned long int)getgid(), (unsigned long int)pw->pw_gid, (unsigned long int)st.st_gid); return EXIT_FAILURE; } diff --git a/src/newusers.c b/src/newusers.c index a90d04ee..724cbb40 100644 --- a/src/newusers.c +++ b/src/newusers.c @@ -805,27 +805,27 @@ static void open_files (void) } #endif /* ENABLE_SUBIDS */ - if (pw_open (O_RDWR) == 0) { + if (pw_open (O_CREAT | O_RDWR) == 0) { fprintf (stderr, _("%s: cannot open %s\n"), Prog, pw_dbname ()); fail_exit (EXIT_FAILURE); } - if (is_shadow && (spw_open (O_RDWR) == 0)) { + if (is_shadow && (spw_open (O_CREAT | O_RDWR) == 0)) { fprintf (stderr, _("%s: cannot open %s\n"), Prog, spw_dbname ()); fail_exit (EXIT_FAILURE); } - if (gr_open (O_RDWR) == 0) { + if (gr_open (O_CREAT | O_RDWR) == 0) { fprintf (stderr, _("%s: cannot open %s\n"), Prog, gr_dbname ()); fail_exit (EXIT_FAILURE); } #ifdef SHADOWGRP - if (is_shadow_grp && (sgr_open (O_RDWR) == 0)) { + if (is_shadow_grp && (sgr_open (O_CREAT | O_RDWR) == 0)) { fprintf (stderr, _("%s: cannot open %s\n"), Prog, sgr_dbname ()); fail_exit (EXIT_FAILURE); } #endif #ifdef ENABLE_SUBIDS if (is_sub_uid) { - if (sub_uid_open (O_RDWR) == 0) { + if (sub_uid_open (O_CREAT | O_RDWR) == 0) { fprintf (stderr, _("%s: cannot open %s\n"), Prog, sub_uid_dbname ()); @@ -833,7 +833,7 @@ static void open_files (void) } } if (is_sub_gid) { - if (sub_gid_open (O_RDWR) == 0) { + if (sub_gid_open (O_CREAT | O_RDWR) == 0) { fprintf (stderr, _("%s: cannot open %s\n"), Prog, sub_gid_dbname ()); diff --git a/src/passwd.c b/src/passwd.c index 3424f3bf..1191111d 100644 --- a/src/passwd.c +++ b/src/passwd.c @@ -573,7 +573,7 @@ static void update_noshadow (void) exit (E_PWDBUSY); } pw_locked = true; - if (pw_open (O_RDWR) == 0) { + if (pw_open (O_CREAT | O_RDWR) == 0) { (void) fprintf (stderr, _("%s: cannot open %s\n"), Prog, pw_dbname ()); @@ -627,7 +627,7 @@ static void update_shadow (void) exit (E_PWDBUSY); } spw_locked = true; - if (spw_open (O_RDWR) == 0) { + if (spw_open (O_CREAT | O_RDWR) == 0) { (void) fprintf (stderr, _("%s: cannot open %s\n"), Prog, spw_dbname ()); diff --git a/src/pwck.c b/src/pwck.c index 05df68ec..523135f6 100644 --- a/src/pwck.c +++ b/src/pwck.c @@ -281,7 +281,7 @@ static void open_files (void) * Open the files. Use O_RDONLY if we are in read_only mode, O_RDWR * otherwise. */ - if (pw_open (read_only ? O_RDONLY : O_RDWR) == 0) { + if (pw_open (read_only ? O_RDONLY : O_CREAT | O_RDWR) == 0) { fprintf (stderr, _("%s: cannot open %s\n"), Prog, pw_dbname ()); if (use_system_pw_file) { @@ -290,7 +290,7 @@ static void open_files (void) fail_exit (E_CANTOPEN); } if (is_shadow && !use_tcb) { - if (spw_open (read_only ? O_RDONLY : O_RDWR) == 0) { + if (spw_open (read_only ? O_RDONLY : O_CREAT | O_RDWR) == 0) { fprintf (stderr, _("%s: cannot open %s\n"), Prog, spw_dbname ()); if (use_system_spw_file) { @@ -566,7 +566,7 @@ static void check_pw_file (int *errors, bool *changed) continue; } spw_locked = true; - if (spw_open (read_only ? O_RDONLY : O_RDWR) == 0) { + if (spw_open (read_only ? O_RDONLY : O_CREAT | O_RDWR) == 0) { fprintf (stderr, _("%s: cannot open %s\n"), Prog, spw_dbname ()); diff --git a/src/pwconv.c b/src/pwconv.c index 515eba19..e2d61f87 100644 --- a/src/pwconv.c +++ b/src/pwconv.c @@ -200,7 +200,7 @@ int main (int argc, char **argv) fail_exit (E_PWDBUSY); } pw_locked = true; - if (pw_open (O_RDWR) == 0) { + if (pw_open (O_CREAT | O_RDWR) == 0) { fprintf (stderr, _("%s: cannot open %s\n"), Prog, pw_dbname ()); fail_exit (E_MISSING); @@ -305,7 +305,8 @@ int main (int argc, char **argv) } /* /etc/passwd- (backup file) */ - if (chmod (PASSWD_FILE "-", 0600) != 0) { + errno = 0; + if ((chmod (PASSWD_FILE "-", 0600) != 0) && (errno != ENOENT)) { fprintf (stderr, _("%s: failed to change the mode of %s to 0600\n"), Prog, PASSWD_FILE "-"); diff --git a/src/pwunconv.c b/src/pwunconv.c index 62e2af04..fabf0237 100644 --- a/src/pwunconv.c +++ b/src/pwunconv.c @@ -166,7 +166,7 @@ int main (int argc, char **argv) fail_exit (5); } pw_locked = true; - if (pw_open (O_RDWR) == 0) { + if (pw_open (O_CREAT | O_RDWR) == 0) { fprintf (stderr, _("%s: cannot open %s\n"), Prog, pw_dbname ()); diff --git a/src/su.c b/src/su.c index 37042172..93ffd2fb 100644 --- a/src/su.c +++ b/src/su.c @@ -105,6 +105,8 @@ static char caller_name[BUFSIZ]; static bool change_environment = true; #ifdef USE_PAM +static char kill_msg[256]; +static char wait_msg[256]; static pam_handle_t *pamh = NULL; static int caught = 0; /* PID of the child, in case it needs to be killed */ @@ -161,8 +163,7 @@ static RETSIGTYPE die (int killed) } if (killed != 0) { - closelog (); - exit (128+killed); + _exit (128+killed); } } @@ -182,12 +183,11 @@ static RETSIGTYPE kill_child (int unused(s)) { if (0 != pid_child) { (void) kill (-pid_child, SIGKILL); - (void) fputs (_(" ...killed.\n"), stderr); + (void) write (STDERR_FILENO, kill_msg, strlen (kill_msg)); } else { - (void) fputs (_(" ...waiting for child to terminate.\n"), - stderr); + (void) write (STDERR_FILENO, wait_msg, strlen (wait_msg)); } - exit (255); + _exit (255); } #endif /* USE_PAM */ @@ -373,6 +373,9 @@ static void prepare_pam_close_session (void) stderr); (void) kill (-pid_child, caught); + snprintf (kill_msg, 256, _(" ...killed.\n")); + snprintf (wait_msg, 256, _(" ...waiting for child to terminate.\n")); + (void) signal (SIGALRM, kill_child); (void) alarm (2); @@ -422,7 +425,7 @@ static void check_perms_pam (const struct passwd *pw) int ret; ret = pam_authenticate (pamh, 0); if (PAM_SUCCESS != ret) { - SYSLOG ((LOG_ERR, "pam_authenticate: %s", + SYSLOG (((pw->pw_uid != 0)? LOG_NOTICE : LOG_WARN, "pam_authenticate: %s", pam_strerror (pamh, ret))); fprintf (stderr, _("%s: %s\n"), Prog, pam_strerror (pamh, ret)); (void) pam_end (pamh, ret); @@ -585,7 +588,7 @@ static /*@only@*/struct passwd * check_perms (void) if (NULL == pw) { (void) fprintf (stderr, _("No passwd entry for user '%s'\n"), name); - SYSLOG ((LOG_ERR, "No passwd entry for user '%s'", name)); + SYSLOG ((LOG_NOTICE, "No passwd entry for user '%s'", name)); su_failure (caller_tty, true); } @@ -615,7 +618,7 @@ static /*@only@*/struct passwd * check_perms (void) (void) fprintf (stderr, _("No passwd entry for user '%s'\n"), name); - SYSLOG ((LOG_ERR, + SYSLOG ((LOG_NOTICE, "No passwd entry for user '%s'", name)); su_failure (caller_tty, true); } diff --git a/src/sulogin.c b/src/sulogin.c index ccbf2c5d..4264099b 100644 --- a/src/sulogin.c +++ b/src/sulogin.c @@ -70,7 +70,7 @@ static RETSIGTYPE catch_signals (int); static RETSIGTYPE catch_signals (unused int sig) { - exit (1); + _exit (1); } /* diff --git a/src/useradd.c b/src/useradd.c index 1b65bf44..fefa234c 100644 --- a/src/useradd.c +++ b/src/useradd.c @@ -1537,7 +1537,7 @@ static void open_files (void) exit (E_PW_UPDATE); } pw_locked = true; - if (pw_open (O_RDWR) == 0) { + if (pw_open (O_CREAT | O_RDWR) == 0) { fprintf (stderr, _("%s: cannot open %s\n"), Prog, pw_dbname ()); fail_exit (E_PW_UPDATE); } @@ -1554,7 +1554,7 @@ static void open_files (void) fail_exit (E_GRP_UPDATE); } gr_locked = true; - if (gr_open (O_RDWR) == 0) { + if (gr_open (O_CREAT | O_RDWR) == 0) { fprintf (stderr, _("%s: cannot open %s\n"), Prog, gr_dbname ()); fail_exit (E_GRP_UPDATE); } @@ -1567,7 +1567,7 @@ static void open_files (void) fail_exit (E_GRP_UPDATE); } sgr_locked = true; - if (sgr_open (O_RDWR) == 0) { + if (sgr_open (O_CREAT | O_RDWR) == 0) { fprintf (stderr, _("%s: cannot open %s\n"), Prog, sgr_dbname ()); @@ -1584,7 +1584,7 @@ static void open_files (void) fail_exit (E_SUB_UID_UPDATE); } sub_uid_locked = true; - if (sub_uid_open (O_RDWR) == 0) { + if (sub_uid_open (O_CREAT | O_RDWR) == 0) { fprintf (stderr, _("%s: cannot open %s\n"), Prog, sub_uid_dbname ()); @@ -1599,7 +1599,7 @@ static void open_files (void) fail_exit (E_SUB_GID_UPDATE); } sub_gid_locked = true; - if (sub_gid_open (O_RDWR) == 0) { + if (sub_gid_open (O_CREAT | O_RDWR) == 0) { fprintf (stderr, _("%s: cannot open %s\n"), Prog, sub_gid_dbname ()); @@ -1621,7 +1621,7 @@ static void open_shadow (void) fail_exit (E_PW_UPDATE); } spw_locked = true; - if (spw_open (O_RDWR) == 0) { + if (spw_open (O_CREAT | O_RDWR) == 0) { fprintf (stderr, _("%s: cannot open %s\n"), Prog, spw_dbname ()); @@ -1993,6 +1993,11 @@ int main (int argc, char **argv) #endif /* USE_PAM */ #endif /* ACCT_TOOLS_SETUID */ +#ifdef ENABLE_SUBIDS + uid_t uid_min = (uid_t) getdef_ulong ("UID_MIN", 1000UL); + uid_t uid_max = (uid_t) getdef_ulong ("UID_MAX", 60000UL); +#endif + /* * Get my name so that I can use it to report errors. */ @@ -2021,15 +2026,18 @@ int main (int argc, char **argv) #ifdef SHADOWGRP is_shadow_grp = sgr_file_present (); #endif + + process_flags (argc, argv); + #ifdef ENABLE_SUBIDS - is_sub_uid = sub_uid_file_present (); - is_sub_gid = sub_gid_file_present (); + is_sub_uid = sub_uid_file_present () && !rflg && + (!user_id || (user_id <= uid_max && user_id >= uid_min)); + is_sub_gid = sub_gid_file_present () && !rflg && + (!user_id || (user_id <= uid_max && user_id >= uid_min)); #endif /* ENABLE_SUBIDS */ get_defaults (); - process_flags (argc, argv); - #ifdef ACCT_TOOLS_SETUID #ifdef USE_PAM { diff --git a/src/userdel.c b/src/userdel.c index 19b12bc4..9092b5c1 100644 --- a/src/userdel.c +++ b/src/userdel.c @@ -565,7 +565,7 @@ static void open_files (void) fail_exit (E_PW_UPDATE); } pw_locked = true; - if (pw_open (O_RDWR) == 0) { + if (pw_open (O_CREAT | O_RDWR) == 0) { fprintf (stderr, _("%s: cannot open %s\n"), Prog, pw_dbname ()); #ifdef WITH_AUDIT @@ -590,7 +590,7 @@ static void open_files (void) fail_exit (E_PW_UPDATE); } spw_locked = true; - if (spw_open (O_RDWR) == 0) { + if (spw_open (O_CREAT | O_RDWR) == 0) { fprintf (stderr, _("%s: cannot open %s\n"), Prog, spw_dbname ()); @@ -616,7 +616,7 @@ static void open_files (void) fail_exit (E_GRP_UPDATE); } gr_locked = true; - if (gr_open (O_RDWR) == 0) { + if (gr_open (O_CREAT | O_RDWR) == 0) { fprintf (stderr, _("%s: cannot open %s\n"), Prog, gr_dbname ()); #ifdef WITH_AUDIT audit_logger (AUDIT_DEL_USER, Prog, @@ -641,7 +641,7 @@ static void open_files (void) fail_exit (E_GRP_UPDATE); } sgr_locked= true; - if (sgr_open (O_RDWR) == 0) { + if (sgr_open (O_CREAT | O_RDWR) == 0) { fprintf (stderr, _("%s: cannot open %s\n"), Prog, sgr_dbname ()); #ifdef WITH_AUDIT @@ -669,7 +669,7 @@ static void open_files (void) fail_exit (E_SUB_UID_UPDATE); } sub_uid_locked = true; - if (sub_uid_open (O_RDWR) == 0) { + if (sub_uid_open (O_CREAT | O_RDWR) == 0) { fprintf (stderr, _("%s: cannot open %s\n"), Prog, sub_uid_dbname ()); #ifdef WITH_AUDIT @@ -695,7 +695,7 @@ static void open_files (void) fail_exit (E_SUB_GID_UPDATE); } sub_gid_locked = true; - if (sub_gid_open (O_RDWR) == 0) { + if (sub_gid_open (O_CREAT | O_RDWR) == 0) { fprintf (stderr, _("%s: cannot open %s\n"), Prog, sub_gid_dbname ()); #ifdef WITH_AUDIT diff --git a/src/usermod.c b/src/usermod.c index e7d43513..687487d9 100644 --- a/src/usermod.c +++ b/src/usermod.c @@ -1361,6 +1361,7 @@ static void process_flags (int argc, char **argv) exit (E_UID_IN_USE); } +#ifdef ENABLE_SUBIDS if ( (vflg || Vflg) && !is_sub_uid) { fprintf (stderr, @@ -1376,6 +1377,7 @@ static void process_flags (int argc, char **argv) Prog, sub_gid_dbname (), "-w", "-W"); exit (E_USAGE); } +#endif /* ENABLE_SUBIDS */ } /* @@ -1530,7 +1532,7 @@ static void open_files (void) fail_exit (E_PW_UPDATE); } pw_locked = true; - if (pw_open (O_RDWR) == 0) { + if (pw_open (O_CREAT | O_RDWR) == 0) { fprintf (stderr, _("%s: cannot open %s\n"), Prog, pw_dbname ()); @@ -1543,7 +1545,7 @@ static void open_files (void) fail_exit (E_PW_UPDATE); } spw_locked = true; - if (is_shadow_pwd && (spw_open (O_RDWR) == 0)) { + if (is_shadow_pwd && (spw_open (O_CREAT | O_RDWR) == 0)) { fprintf (stderr, _("%s: cannot open %s\n"), Prog, spw_dbname ()); @@ -1562,7 +1564,7 @@ static void open_files (void) fail_exit (E_GRP_UPDATE); } gr_locked = true; - if (gr_open (O_RDWR) == 0) { + if (gr_open (O_CREAT | O_RDWR) == 0) { fprintf (stderr, _("%s: cannot open %s\n"), Prog, gr_dbname ()); @@ -1576,7 +1578,7 @@ static void open_files (void) fail_exit (E_GRP_UPDATE); } sgr_locked = true; - if (is_shadow_grp && (sgr_open (O_RDWR) == 0)) { + if (is_shadow_grp && (sgr_open (O_CREAT | O_RDWR) == 0)) { fprintf (stderr, _("%s: cannot open %s\n"), Prog, sgr_dbname ()); @@ -1593,7 +1595,7 @@ static void open_files (void) fail_exit (E_SUB_UID_UPDATE); } sub_uid_locked = true; - if (sub_uid_open (O_RDWR) == 0) { + if (sub_uid_open (O_CREAT | O_RDWR) == 0) { fprintf (stderr, _("%s: cannot open %s\n"), Prog, sub_uid_dbname ()); @@ -1608,7 +1610,7 @@ static void open_files (void) fail_exit (E_SUB_GID_UPDATE); } sub_gid_locked = true; - if (sub_gid_open (O_RDWR) == 0) { + if (sub_gid_open (O_CREAT | O_RDWR) == 0) { fprintf (stderr, _("%s: cannot open %s\n"), Prog, sub_gid_dbname ()); @@ -1717,60 +1719,6 @@ static void usr_update (void) fail_exit (E_PW_UPDATE); } } -#ifdef ENABLE_SUBIDS - if (Vflg) { - struct ulong_range_list_entry *ptr; - for (ptr = del_sub_uids; ptr != NULL; ptr = ptr->next) { - unsigned long count = ptr->range.last - ptr->range.first + 1; - if (sub_uid_remove(user_name, ptr->range.first, count) == 0) { - fprintf (stderr, - _("%s: failed to remove uid range %lu-%lu from '%s'\n"), - Prog, ptr->range.first, ptr->range.last, - sub_uid_dbname ()); - fail_exit (E_SUB_UID_UPDATE); - } - } - } - if (vflg) { - struct ulong_range_list_entry *ptr; - for (ptr = add_sub_uids; ptr != NULL; ptr = ptr->next) { - unsigned long count = ptr->range.last - ptr->range.first + 1; - if (sub_uid_add(user_name, ptr->range.first, count) == 0) { - fprintf (stderr, - _("%s: failed to add uid range %lu-%lu from '%s'\n"), - Prog, ptr->range.first, ptr->range.last, - sub_uid_dbname ()); - fail_exit (E_SUB_UID_UPDATE); - } - } - } - if (Wflg) { - struct ulong_range_list_entry *ptr; - for (ptr = del_sub_gids; ptr != NULL; ptr = ptr->next) { - unsigned long count = ptr->range.last - ptr->range.first + 1; - if (sub_gid_remove(user_name, ptr->range.first, count) == 0) { - fprintf (stderr, - _("%s: failed to remove gid range %lu-%lu from '%s'\n"), - Prog, ptr->range.first, ptr->range.last, - sub_gid_dbname ()); - fail_exit (E_SUB_GID_UPDATE); - } - } - } - if (wflg) { - struct ulong_range_list_entry *ptr; - for (ptr = add_sub_gids; ptr != NULL; ptr = ptr->next) { - unsigned long count = ptr->range.last - ptr->range.first + 1; - if (sub_gid_add(user_name, ptr->range.first, count) == 0) { - fprintf (stderr, - _("%s: failed to add gid range %lu-%lu from '%s'\n"), - Prog, ptr->range.first, ptr->range.last, - sub_gid_dbname ()); - fail_exit (E_SUB_GID_UPDATE); - } - } - } -#endif /* ENABLE_SUBIDS */ } /* @@ -2174,16 +2122,66 @@ int main (int argc, char **argv) */ open_files (); if ( cflg || dflg || eflg || fflg || gflg || Lflg || lflg || pflg - || sflg || uflg || Uflg -#ifdef ENABLE_SUBIDS - || vflg || Vflg || wflg || Wflg -#endif /* ENABLE_SUBIDS */ - ) { + || sflg || uflg || Uflg) { usr_update (); } if (Gflg || lflg) { grp_update (); } +#ifdef ENABLE_SUBIDS + if (Vflg) { + struct ulong_range_list_entry *ptr; + for (ptr = del_sub_uids; ptr != NULL; ptr = ptr->next) { + unsigned long count = ptr->range.last - ptr->range.first + 1; + if (sub_uid_remove(user_name, ptr->range.first, count) == 0) { + fprintf (stderr, + _("%s: failed to remove uid range %lu-%lu from '%s'\n"), + Prog, ptr->range.first, ptr->range.last, + sub_uid_dbname ()); + fail_exit (E_SUB_UID_UPDATE); + } + } + } + if (vflg) { + struct ulong_range_list_entry *ptr; + for (ptr = add_sub_uids; ptr != NULL; ptr = ptr->next) { + unsigned long count = ptr->range.last - ptr->range.first + 1; + if (sub_uid_add(user_name, ptr->range.first, count) == 0) { + fprintf (stderr, + _("%s: failed to add uid range %lu-%lu from '%s'\n"), + Prog, ptr->range.first, ptr->range.last, + sub_uid_dbname ()); + fail_exit (E_SUB_UID_UPDATE); + } + } + } + if (Wflg) { + struct ulong_range_list_entry *ptr; + for (ptr = del_sub_gids; ptr != NULL; ptr = ptr->next) { + unsigned long count = ptr->range.last - ptr->range.first + 1; + if (sub_gid_remove(user_name, ptr->range.first, count) == 0) { + fprintf (stderr, + _("%s: failed to remove gid range %lu-%lu from '%s'\n"), + Prog, ptr->range.first, ptr->range.last, + sub_gid_dbname ()); + fail_exit (E_SUB_GID_UPDATE); + } + } + } + if (wflg) { + struct ulong_range_list_entry *ptr; + for (ptr = add_sub_gids; ptr != NULL; ptr = ptr->next) { + unsigned long count = ptr->range.last - ptr->range.first + 1; + if (sub_gid_add(user_name, ptr->range.first, count) == 0) { + fprintf (stderr, + _("%s: failed to add gid range %lu-%lu from '%s'\n"), + Prog, ptr->range.first, ptr->range.last, + sub_gid_dbname ()); + fail_exit (E_SUB_GID_UPDATE); + } + } + } +#endif /* ENABLE_SUBIDS */ close_files (); #ifdef WITH_TCB diff --git a/ylwrap b/ylwrap new file mode 100755 index 00000000..7c2d927f --- /dev/null +++ b/ylwrap @@ -0,0 +1,247 @@ +#! /bin/sh +# ylwrap - wrapper for lex/yacc invocations. + +scriptversion=2013-01-12.17; # UTC + +# Copyright (C) 1996-2014 Free Software Foundation, Inc. +# +# Written by Tom Tromey . +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2, or (at your option) +# any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with this program. If not, see . + +# As a special exception to the GNU General Public License, if you +# distribute this file as part of a program that contains a +# configuration script generated by Autoconf, you may include it under +# the same distribution terms that you use for the rest of that program. + +# This file is maintained in Automake, please report +# bugs to or send patches to +# . + +get_dirname () +{ + case $1 in + */*|*\\*) printf '%s\n' "$1" | sed -e 's|\([\\/]\)[^\\/]*$|\1|';; + # Otherwise, we want the empty string (not "."). + esac +} + +# guard FILE +# ---------- +# The CPP macro used to guard inclusion of FILE. +guard () +{ + printf '%s\n' "$1" \ + | sed \ + -e 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/' \ + -e 's/[^ABCDEFGHIJKLMNOPQRSTUVWXYZ]/_/g' \ + -e 's/__*/_/g' +} + +# quote_for_sed [STRING] +# ---------------------- +# Return STRING (or stdin) quoted to be used as a sed pattern. +quote_for_sed () +{ + case $# in + 0) cat;; + 1) printf '%s\n' "$1";; + esac \ + | sed -e 's|[][\\.*]|\\&|g' +} + +case "$1" in + '') + echo "$0: No files given. Try '$0 --help' for more information." 1>&2 + exit 1 + ;; + --basedir) + basedir=$2 + shift 2 + ;; + -h|--h*) + cat <<\EOF +Usage: ylwrap [--help|--version] INPUT [OUTPUT DESIRED]... -- PROGRAM [ARGS]... + +Wrapper for lex/yacc invocations, renaming files as desired. + + INPUT is the input file + OUTPUT is one file PROG generates + DESIRED is the file we actually want instead of OUTPUT + PROGRAM is program to run + ARGS are passed to PROG + +Any number of OUTPUT,DESIRED pairs may be used. + +Report bugs to . +EOF + exit $? + ;; + -v|--v*) + echo "ylwrap $scriptversion" + exit $? + ;; +esac + + +# The input. +input=$1 +shift +# We'll later need for a correct munging of "#line" directives. +input_sub_rx=`get_dirname "$input" | quote_for_sed` +case $input in + [\\/]* | ?:[\\/]*) + # Absolute path; do nothing. + ;; + *) + # Relative path. Make it absolute. + input=`pwd`/$input + ;; +esac +input_rx=`get_dirname "$input" | quote_for_sed` + +# Since DOS filename conventions don't allow two dots, +# the DOS version of Bison writes out y_tab.c instead of y.tab.c +# and y_tab.h instead of y.tab.h. Test to see if this is the case. +y_tab_nodot=false +if test -f y_tab.c || test -f y_tab.h; then + y_tab_nodot=true +fi + +# The parser itself, the first file, is the destination of the .y.c +# rule in the Makefile. +parser=$1 + +# A sed program to s/FROM/TO/g for all the FROM/TO so that, for +# instance, we rename #include "y.tab.h" into #include "parse.h" +# during the conversion from y.tab.c to parse.c. +sed_fix_filenames= + +# Also rename header guards, as Bison 2.7 for instance uses its header +# guard in its implementation file. +sed_fix_header_guards= + +while test $# -ne 0; do + if test x"$1" = x"--"; then + shift + break + fi + from=$1 + # Handle y_tab.c and y_tab.h output by DOS + if $y_tab_nodot; then + case $from in + "y.tab.c") from=y_tab.c;; + "y.tab.h") from=y_tab.h;; + esac + fi + shift + to=$1 + shift + sed_fix_filenames="${sed_fix_filenames}s|"`quote_for_sed "$from"`"|$to|g;" + sed_fix_header_guards="${sed_fix_header_guards}s|"`guard "$from"`"|"`guard "$to"`"|g;" +done + +# The program to run. +prog=$1 +shift +# Make any relative path in $prog absolute. +case $prog in + [\\/]* | ?:[\\/]*) ;; + *[\\/]*) prog=`pwd`/$prog ;; +esac + +dirname=ylwrap$$ +do_exit="cd '`pwd`' && rm -rf $dirname > /dev/null 2>&1;"' (exit $ret); exit $ret' +trap "ret=129; $do_exit" 1 +trap "ret=130; $do_exit" 2 +trap "ret=141; $do_exit" 13 +trap "ret=143; $do_exit" 15 +mkdir $dirname || exit 1 + +cd $dirname + +case $# in + 0) "$prog" "$input" ;; + *) "$prog" "$@" "$input" ;; +esac +ret=$? + +if test $ret -eq 0; then + for from in * + do + to=`printf '%s\n' "$from" | sed "$sed_fix_filenames"` + if test -f "$from"; then + # If $2 is an absolute path name, then just use that, + # otherwise prepend '../'. + case $to in + [\\/]* | ?:[\\/]*) target=$to;; + *) target=../$to;; + esac + + # Do not overwrite unchanged header files to avoid useless + # recompilations. Always update the parser itself: it is the + # destination of the .y.c rule in the Makefile. Divert the + # output of all other files to a temporary file so we can + # compare them to existing versions. + if test $from != $parser; then + realtarget=$target + target=tmp-`printf '%s\n' "$target" | sed 's|.*[\\/]||g'` + fi + + # Munge "#line" or "#" directives. Don't let the resulting + # debug information point at an absolute srcdir. Use the real + # output file name, not yy.lex.c for instance. Adjust the + # include guards too. + sed -e "/^#/!b" \ + -e "s|$input_rx|$input_sub_rx|" \ + -e "$sed_fix_filenames" \ + -e "$sed_fix_header_guards" \ + "$from" >"$target" || ret=$? + + # Check whether files must be updated. + if test "$from" != "$parser"; then + if test -f "$realtarget" && cmp -s "$realtarget" "$target"; then + echo "$to is unchanged" + rm -f "$target" + else + echo "updating $to" + mv -f "$target" "$realtarget" + fi + fi + else + # A missing file is only an error for the parser. This is a + # blatant hack to let us support using "yacc -d". If -d is not + # specified, don't fail when the header file is "missing". + if test "$from" = "$parser"; then + ret=1 + fi + fi + done +fi + +# Remove the directory. +cd .. +rm -rf $dirname + +exit $ret + +# Local Variables: +# mode: shell-script +# sh-indentation: 2 +# eval: (add-hook 'write-file-hooks 'time-stamp) +# time-stamp-start: "scriptversion=" +# time-stamp-format: "%:y-%02m-%02d.%02H" +# time-stamp-time-zone: "UTC" +# time-stamp-end: "; # UTC" +# End: