Compare commits

..

241 Commits
1.951 ... 1.962

Author SHA1 Message Date
Jamie Cameron
b6ad8b0f41 Check for netplan command as well 2020-11-10 11:20:38 -08:00
Jamie Cameron
5eb2d26862 New dev version bump 2020-11-09 20:51:42 -08:00
Ilia Rostovtsev
2c0ac4fa56 Fix color for errors 2020-11-09 14:50:51 +03:00
Jamie Cameron
65f4c4149f Number can be negative https://github.com/webmin/webmin/issues/1321 2020-11-08 17:54:05 -08:00
Jamie Cameron
2a94a7dbd1 Merge branch 'master' of github.com:webmin/webmin 2020-11-08 14:33:52 -08:00
Jamie Cameron
6833ce004a Don't break os_type as it is used later 2020-11-08 14:28:51 -08:00
Ilia Rostovtsev
cdcfdfb2ad Change Others to Tools and update translations 2020-11-08 14:29:49 +03:00
Ilia Rostovtsev
3e8418eed2 Fix to update OS version properly 2020-11-06 18:54:27 +03:00
Jamie Cameron
c9f4968bcb Merge branch 'master' of github.com:webmin/webmin 2020-11-05 10:02:39 -08:00
Jamie Cameron
2437f73570 Netplan dir may exist but be empty https://www.virtualmin.com/node/70054 2020-11-03 20:35:40 -08:00
Ilia Rostovtsev
25b7ee5b1a Fix to call OS cache refresh on manual call only 2020-11-02 22:19:07 +03:00
Jamie Cameron
286eace8b7 Version bump 2020-11-01 22:28:38 -08:00
Jamie Cameron
ed59ce2984 Code cleanups 2020-11-01 22:11:11 -08:00
Jamie Cameron
8e3adcc605 more ui-lib conversion 2020-11-01 22:11:00 -08:00
Jamie Cameron
26d38556f0 Fix some wording 2020-11-01 17:21:52 -08:00
Jamie Cameron
5e7b0386ff Merge branch 'master' of github.com:webmin/webmin 2020-11-01 17:12:59 -08:00
Jamie Cameron
21f7dc9971 UI-lib conversion 2020-11-01 17:12:51 -08:00
Ilia Rostovtsev
66eccaf7e7 Fix to regenerate OS cache on info recollect 2020-11-01 12:53:30 +03:00
Ilia Rostovtsev
2a104b43c9 Remove no longer used variable (another one) 2020-10-31 13:24:56 +03:00
Ilia Rostovtsev
f69c84ef81 Remove no longer used variable 2020-10-31 12:34:02 +03:00
Ilia Rostovtsev
20a2fdf400 Fix to update OS cache every day
https://www.virtualmin.com/node/69596
2020-10-31 12:30:47 +03:00
Ilia Rostovtsev
b02acf87e5 Fix to escape other params 2020-10-30 19:40:49 +03:00
Ilia Rostovtsev
ec6e681818 Fix to urlize password for 2FA https://github.com/webmin/webmin/issues/1317#issuecomment-718707491
https://www.virtualmin.com/node/70081
https://sourceforge.net/p/webadmin/bugs/5418
2020-10-29 16:10:38 +03:00
Ilia Rostovtsev
32fe68ea12 Generate distinctive name for 2FA app
Example: sub1.domain.com (username)
2020-10-28 11:46:05 +03:00
Jamie Cameron
a6b3d26416 Fix perl warning https://sourceforge.net/p/webadmin/bugs/5422/ 2020-10-25 17:24:17 -07:00
Ilia Rostovtsev
c665f36af6 Add XCP-ng Linux support detection
https://sourceforge.net/p/webadmin/bugs/5019
2020-10-24 14:14:09 +03:00
Ilia Rostovtsev
18b12d3401 Fix a bug in UTF7 conversion to support other languages (like Russian) https://github.com/webmin/usermin/issues/62
Folder name like `.&BB8EQAQ4BDIENQRC-` wasn't working before
2020-10-23 22:40:26 +03:00
Ilia Rostovtsev
bec8d15d7a Add ability to decode UTF7 encoded imap folders https://github.com/webmin/usermin/issues/62 2020-10-23 17:11:29 +03:00
Ilia Rostovtsev
51894fe0c3 Fix OpenSUSE version detection
Previously, the version was grabbed as 15.2" from the string PRETTY_NAME="openSUSE Leap 15.2" - this patch makes sure that only 15.2 is grabbed
2020-10-23 12:41:25 +03:00
Ilia Rostovtsev
1b29af7780 Fix translator glitches #1313 2020-10-22 12:55:04 +03:00
Ilia Rostovtsev
7e5ccdc77a Merge pull request #1313 from mateusz-szafraniec/patch-1
fixed pl.auto
2020-10-22 12:53:51 +03:00
Jamie Cameron
3377c44813 Remove useless alignments 2020-10-21 17:06:41 -07:00
Mateusz Szafraniec
70019b7843 Update pl.auto
fixed translation
2020-10-21 15:01:21 +02:00
Jamie Cameron
0b864c966f Update perms 2020-10-20 15:35:18 -07:00
Jamie Cameron
5834437209 PID file can be in a different location on newer FreeBSD releases 2020-10-20 15:32:45 -07:00
Jamie Cameron
2cb5d88637 Work on ui-lib conversion 2020-10-20 15:30:55 -07:00
Jamie Cameron
546ea972de Fix perl warning 2020-10-19 10:25:53 -07:00
Jamie Cameron
d5331075bb Fix perl warning 2020-10-19 10:16:08 -07:00
Jamie Cameron
4f21870885 Fix perl warning 2020-10-17 13:58:48 -07:00
Ilia Rostovtsev
5d9d5ce9ff Add MariaDB 10.4 support for SSL type option 2020-10-17 20:33:05 +03:00
Ilia Rostovtsev
cf6eeadaa3 Fix to stop false positive syslogging on page reload 2020-10-16 19:59:53 +03:00
Ilia Rostovtsev
523bdc0066 Cosmetic changes to previous commit 26008394a9 2020-10-16 19:27:14 +03:00
Ilia Rostovtsev
26008394a9 Fix to prevent count failed when empty 2FA token is sent
b68a47fa0d
511e70aa97
2020-10-16 17:48:16 +03:00
Ilia Rostovtsev
0ac26ba423 Fix comment typo 2020-10-16 15:45:31 +03:00
Ilia Rostovtsev
dd9ab85fe7 Add CentOS Stream release to OS list #1311 2020-10-16 15:19:36 +03:00
Ilia Rostovtsev
6a146e1471 Field permissions cannot be null 2020-10-16 14:54:37 +03:00
Ilia Rostovtsev
a0233341d5 Neither table nor field permissions can be null 2020-10-16 14:08:58 +03:00
Jamie Cameron
5b33741e67 Define email and notify variables before they are used https://sourceforge.net/p/webadmin/bugs/5416/ 2020-10-15 20:31:13 -07:00
Jamie Cameron
f876411cdc Merge branch 'master' of github.com:webmin/webmin 2020-10-15 20:23:39 -07:00
Jamie Cameron
140c41e48a Remove debug messages 2020-10-15 20:20:26 -07:00
Ilia Rostovtsev
b68a47fa0d Fix to prevent logging when empty 2FA token is sent 511e70aa97 2020-10-15 13:19:07 +03:00
Ilia Rostovtsev
511e70aa97 Add to support to display two factor authentication field selectively
https://virtualmin.com/node/70011
2020-10-14 19:02:37 +03:00
Ilia Rostovtsev
77e6391502 If File::MimeInfo cannot be loaded don't fail on ACL page
If fails on Ubuntu 2.040, where File::MimeInfo needs to be loaded from ../filemin/lib when used with `acl_security.pl` (which is not needed by this page)
2020-10-13 16:20:07 +03:00
Ilia Rostovtsev
1a707f1d06 Fix typo 2020-10-12 22:04:26 +03:00
Jamie Cameron
68f0e8dc98 Fix setting of perms for new users 2020-10-11 20:08:07 -07:00
Jamie Cameron
473ae9cf4a Fix warning about cbox 2020-10-11 20:05:23 -07:00
Jamie Cameron
9e6502e473 No need for extra brackets 2020-10-11 13:47:05 -07:00
Ilia Rostovtsev
f61c7bd773 Add support for MariaDB 10.4 2/3 2020-10-11 19:58:04 +03:00
Ilia Rostovtsev
760b56d809 Add support for MariaDB 10.4 1/2 2020-10-10 17:47:44 +03:00
Jamie Cameron
ff77a0f72e Don't assume case of fields 2020-10-08 22:13:16 -07:00
Ilia Rostovtsev
51daa708fe Fix to update password properly for all db versions/variants 2020-10-08 20:01:44 +03:00
Ilia Rostovtsev
b82bd80f42 Revert "Escape to prevent command expansion"
This reverts commit 20f947e7e5.
2020-10-07 20:48:20 +03:00
Ilia Rostovtsev
20f947e7e5 Escape to prevent command expansion 2020-10-07 20:17:21 +03:00
Ilia Rostovtsev
1f50a3a4e6 Add more support for strangiest sensors command output
https://sourceforge.net/p/webadmin/discussion/600155/thread/38946ad0d7
2020-10-05 23:16:38 +03:00
Ilia Rostovtsev
02e8ada005 Fix to treat command line output correctly
Ref.: 1f34cb4994
2020-10-05 18:27:29 +03:00
Jamie Cameron
3bcc674f0f Major version bump 2020-10-04 11:28:07 -07:00
Ilia Rostovtsev
d05fdd1a9a Fix to bold edit file text for consistency 2020-10-04 14:42:51 +03:00
Ilia Rostovtsev
4df257770a Add translations for atd 2020-10-04 00:36:19 +03:00
Ilia Rostovtsev
84d2d3d17f Fix text whitespaces 2020-10-04 00:32:35 +03:00
Jamie Cameron
98efcf494b Finished off support for stopping and starting atd 2020-10-01 13:25:03 -07:00
Jamie Cameron
a8afe6394f Merge branch 'master' of github.com:webmin/webmin 2020-10-01 12:46:17 -07:00
Jamie Cameron
bf835619f4 Command to start at boot 2020-10-01 12:46:14 -07:00
Ilia Rostovtsev
b4047ad429 RNDC must have correct ownership rather than root:root which fails 2020-10-01 22:35:35 +03:00
Jamie Cameron
20991a1db5 Remove useless lib files 2020-10-01 12:32:04 -07:00
Ilia Rostovtsev
f1859983ab Add missing params 78fb6c26b9 2020-09-30 12:00:06 +03:00
Jamie Cameron
78fb6c26b9 Don't flush if no change 2020-09-29 18:04:59 -07:00
Jamie Cameron
63e4afbce6 Start of work on atd server support 2020-09-26 19:22:07 -07:00
Jamie Cameron
38fc075167 Strip release number 2020-09-25 22:23:27 -07:00
Jamie Cameron
f4f163b046 Set indent reasonably when saving a directive 2020-09-25 22:22:47 -07:00
Jamie Cameron
02f08fc5d4 Remove ancient align code 2020-09-25 16:38:41 -07:00
Jamie Cameron
a6909939ba Merge branch 'master' of github.com:webmin/webmin 2020-09-25 16:04:36 -07:00
Jamie Cameron
f5004d27af Deal with huge message IDs https://sourceforge.net/p/webadmin/bugs/5408/ 2020-09-25 15:59:57 -07:00
Ilia Rostovtsev
4ce437873a Merge branch 'master' of github.com:webmin/webmin 2020-09-25 14:42:12 +03:00
Ilia Rostovtsev
4998edefde Fix typo
https://sourceforge.net/p/webadmin/bugs/5409/
2020-09-25 14:42:04 +03:00
Jamie Cameron
db53ee9364 Merge branch 'master' of github.com:webmin/webmin 2020-09-24 21:06:28 -07:00
Jamie Cameron
b490c63f0e Don't attempt to create validation records in non-master zones https://www.virtualmin.com/node/69928 2020-09-24 21:06:07 -07:00
Ilia Rostovtsev
2a956a021b Add support for latest MySQL/MariaDB 1/2 2020-09-23 16:55:52 +03:00
Ilia Rostovtsev
e32912a0de Add schedule table identifier 2020-09-22 15:48:54 +03:00
Ilia Rostovtsev
a5a3da0481 Fix index label for Usermin 2020-09-22 15:34:08 +03:00
Ilia Rostovtsev
ca07c38c42 Add default time server 2020-09-22 15:29:46 +03:00
Ilia Rostovtsev
2053e8455f Print nice warning message 2020-09-22 15:13:31 +03:00
Jamie Cameron
f99cbe4bd3 Preserve and extend indents 2020-09-20 12:53:45 -07:00
Jamie Cameron
c5d65e604e Remove apt-show-versions as a dependency https://github.com/webmin/webmin/pull/1302 2020-09-19 17:54:55 -07:00
Jamie Cameron
a15e691dc6 Merge branch 'master' of github.com:webmin/webmin 2020-09-19 17:53:54 -07:00
Jamie Cameron
c01f2dba5d Fall back to apt command if apt-show-versions is missing https://github.com/webmin/webmin/pull/1302 2020-09-19 17:53:04 -07:00
Jamie Cameron
ae16105951 Merge pull request #1301 from webmin/dev/safe-proc-exec-in-tmp-dir
Prevent exec process writing into module folder https://github.com/webmin/webmin/issues/1296
2020-09-18 16:18:32 -07:00
Ilia Rostovtsev
2eaabe9119 Remove debug function 2020-09-18 21:00:07 +03:00
Ilia Rostovtsev
19edb9f7dd Use chdir() only when in Webmin root 2020-09-18 20:59:07 +03:00
Ilia Rostovtsev
f8fbf304f2 Prevent exec process writing into module's directory https://github.com/webmin/webmin/issues/1296 2020-09-18 14:08:30 +03:00
Ilia Rostovtsev
fe03d460c4 Fix a bug 2020-09-17 13:34:32 +03:00
Jamie Cameron
2f4455aef0 Merge branch 'master' of github.com:webmin/webmin 2020-09-16 13:22:29 -07:00
Jamie Cameron
49be46c33e Command to run needs a newline at the end 2020-09-16 13:22:21 -07:00
Ilia Rostovtsev
7b8dfb7f7b Beautify miniserv error output 2020-09-14 14:57:39 +03:00
Ilia Rostovtsev
c377e2d2be Update translations for 600b0d7490 2020-09-14 13:29:37 +03:00
Jamie Cameron
4a7161d780 Fix indents 2020-09-13 16:53:07 -07:00
Jamie Cameron
600b0d7490 Add support for STARTTLS mode 2020-09-13 16:51:44 -07:00
Jamie Cameron
6079a685a1 Merge branch 'master' of github.com:webmin/webmin 2020-09-13 15:48:48 -07:00
Jamie Cameron
e86dd731fb Redirect to port 443 if port 80 was hit in SSL mode 2020-09-13 15:45:03 -07:00
Ilia Rostovtsev
cc9689d204 Fix broken chars for some module.info files in Cron module https://github.com/webmin/webmin/issues/1296 2020-09-12 14:47:50 +03:00
Jamie Cameron
9286154789 Merge branch 'master' of github.com:webmin/webmin 2020-09-10 12:28:02 -07:00
Jamie Cameron
048ae20b37 Drop 443 from port if not needed 2020-09-10 12:27:39 -07:00
Ilia Rostovtsev
682b3cf188 Update default DNSSEC algorithm to RSASHA256 2020-09-10 13:53:19 +03:00
Ilia Rostovtsev
d75dcacfd1 Fix to remove from load no longer used lib 2020-09-09 21:23:38 +03:00
Ilia Rostovtsev
51cf3fd018 Add to use helper function to create timestamped trans files 2020-09-09 21:21:50 +03:00
Ilia Rostovtsev
25127a8f58 Add proper file name upon backup, if undefined
https://virtualmin.com/node/69843
2020-09-09 16:51:17 +03:00
Jamie Cameron
3d3ffd0e17 also convert number of lines to an int for Syslog NG 2020-09-08 10:18:50 -07:00
Ilia Rostovtsev
b57fdd512f Clean removed language string 1feca0c2fe 2020-09-08 17:56:43 +03:00
Ilia Rostovtsev
7ad9321b8d Fix to print descriptions and commands consistently 2020-09-08 12:48:09 +03:00
Jamie Cameron
8b765b497a Merge branch 'master' of github.com:webmin/webmin 2020-09-06 12:04:56 -07:00
Jamie Cameron
1feca0c2fe 'all' protocol is no longer valid 2020-09-06 12:04:40 -07:00
Ilia Rostovtsev
9bdf16f9fd Merge branch 'master' of github.com:webmin/webmin 2020-09-06 19:44:01 +03:00
Ilia Rostovtsev
1f6594b2ba Sanitize input
https://sourceforge.net/p/webadmin/bugs/5404/
2020-09-06 19:43:30 +03:00
Jamie Cameron
ad18cb2f63 Properly handle directives that have lists of hashes as values, like 'routes' https://github.com/webmin/webmin/issues/1291 2020-09-04 12:35:59 -07:00
Jamie Cameron
fc4e79ed06 Fix bug in converting /12 addresses to netmasks https://github.com/webmin/webmin/issues/1292 2020-09-04 11:28:49 -07:00
Jamie Cameron
4a1abb0c10 Fix turning off broadcast address 2020-09-04 11:16:30 -07:00
Jamie Cameron
41d44ed929 Merge branch 'master' of github.com:webmin/webmin 2020-09-04 10:02:41 -07:00
Jamie Cameron
4ca40b79c0 When restarting, also use the flag file as a backup, as on CentOS 8 sometimes signals don't get processed 2020-09-04 10:02:36 -07:00
Ilia Rostovtsev
e6286bf90b Fix to compare versions number properly
http://www.virtualmin.com/node/69811
2020-09-02 18:51:51 +03:00
Ilia Rostovtsev
fafada020a Export new ui_line_break_double sub 2020-09-02 13:30:37 +03:00
Ilia Rostovtsev
3e60854861 Add double line break API 2020-09-02 13:21:08 +03:00
Ilia Rostovtsev
66ac2ba10f Fix false positive error outputs
https://forum.virtualmin.com/t/force-logrotate-fails/107301
2020-08-31 16:06:22 +03:00
Jamie Cameron
677948bd9a Fix skip of quoting for array options https://sourceforge.net/p/webadmin/bugs/5028/ 2020-08-29 17:37:10 -07:00
Jamie Cameron
c1bfc42978 Merge branch 'master' of github.com:webmin/webmin 2020-08-29 17:27:34 -07:00
Jamie Cameron
b593551c5f For systems that don't need the broadcast address to be set in the config file, don't force it to be set https://github.com/webmin/webmin/pull/1278 2020-08-29 17:27:29 -07:00
Ilia Rostovtsev
20cf24ee8c Fix least version detection in Dovecot
https://sourceforge.net/p/webadmin/bugs/5401/
2020-08-28 16:40:12 +03:00
Ilia Rostovtsev
fa8bc4d9ed When starting Apache, update last restart time e23db63f33 2d95efa30e 2020-08-27 18:06:43 +03:00
Ilia Rostovtsev
eb04469846 Fix to better accommodate different sensors output https://github.com/webmin/webmin/issues/1253 https://github.com/webmin/webmin/issues/1280 https://github.com/authentic-theme/authentic-theme/issues/1481 2020-08-25 23:58:10 +03:00
Ilia Rostovtsev
9de19ee7e4 Fix textarea rows 2020-08-25 20:48:48 +03:00
Ilia Rostovtsev
f4af200fb9 Fix to print public key nicely https://github.com/webmin/webmin/issues/1086 https://github.com/webmin/webmin/pull/1289 2020-08-25 20:39:33 +03:00
Ilia Rostovtsev
55f228a6f4 Revert "Fix spaces in public key"
This reverts commit 332d71dcd6.
2020-08-25 20:25:57 +03:00
Ilia Rostovtsev
4f1d3e9cf7 Merge branch 'master' of github.com:webmin/webmin 2020-08-25 15:14:29 +03:00
Ilia Rostovtsev
193fd0db40 Fix initially broken Spanish translation 2020-08-25 15:14:07 +03:00
Jamie Cameron
2d95efa30e Bold apply link when there are changes to be saved 2020-08-23 17:43:27 -07:00
Jamie Cameron
e23db63f33 Record last config change and restart times 2020-08-23 17:23:56 -07:00
Jamie Cameron
a7aa7602df Merge branch 'master' of github.com:webmin/webmin 2020-08-23 17:01:46 -07:00
Jamie Cameron
0bf7594833 Create link from /usr/sbin/webmin 2020-08-23 16:58:56 -07:00
Ilia Rostovtsev
7fd281ae21 Fix indent bug for newly created directives in section bf062d8228 https://github.com/virtualmin/virtualmin-gpl/pull/199 2020-08-23 15:18:24 +03:00
Ilia Rostovtsev
8dbaf0e02f Update language for at module 2020-08-23 13:00:26 +03:00
Jamie Cameron
33f7ad52fd Don't include self-referential structures in list of interfaces, as they can't be serialized 2020-08-22 17:48:27 -07:00
Jamie Cameron
4313adf159 Merge branch 'master' of github.com:webmin/webmin 2020-08-22 17:06:33 -07:00
Jamie Cameron
c4805ec951 Fix typo 2020-08-22 16:54:02 -07:00
Jamie Cameron
89b14b4d82 Merge pull request #1286 from ayoder770/master
Allow posixAccount/posixGroup Object Classes to be Overridden in ldap-useradmin Module
2020-08-22 15:30:20 -07:00
Andrew
3094acb7c1 Update to ldap-useradmin CHANGELOG
Updating my PR given the release of Webmin 1.955
2020-08-22 12:05:20 -04:00
Jamie Cameron
5f7c2e34af Handle case where dir doesn't exist yet 2020-08-19 18:21:27 -07:00
Jamie Cameron
73c6561a24 Merge branch 'master' of github.com:webmin/webmin 2020-08-18 12:05:41 -07:00
Jamie Cameron
bf062d8228 Add correct spaces for new directives 2020-08-18 12:04:40 -07:00
Ilia Rostovtsev
73ec73ca21 Let user choose when to reload Apache https://github.com/virtualmin/virtualmin-gpl/issues/195"
This reverts commit 399ded7829.
2020-08-17 12:04:22 +03:00
Jamie Cameron
facf204149 Merge branch 'master' of github.com:webmin/webmin 2020-08-16 15:49:14 -07:00
Jamie Cameron
f5a3634e09 Version bump 2020-08-16 15:48:48 -07:00
Andrew Yoder
755f2bcc70 Merge branch 'ldap-default-objectclass' 2020-08-16 18:19:10 -04:00
Andrew Yoder
a0a87ed9cd Custom object Classes for ldap-useradmin module 2020-08-16 18:18:14 -04:00
Ilia Rostovtsev
399ded7829 Reload Apache config after editing options https://github.com/virtualmin/virtualmin-gpl/issues/195 2020-08-16 18:54:54 +03:00
Jamie Cameron
2150afae0c Merge branch 'master' of github.com:webmin/webmin 2020-08-15 20:13:31 -07:00
Jamie Cameron
2b0d49416c Warn about editing monitors created by Virtualmin https://www.virtualmin.com/node/69710 2020-08-15 20:09:47 -07:00
Jamie Cameron
d9fde100b9 Merge pull request #1284 from ayoder770/master
LDAP Bind Credentials File Option for ldap-useradmin Webmin Module
2020-08-15 13:10:16 -07:00
Jamie Cameron
f2ddef2cfe Fix use of local vars 2020-08-15 12:13:58 -07:00
Andrew Yoder
4ff9866547 Merge branch 'ldap-password-file' 2020-08-15 14:11:36 -04:00
Andrew Yoder
43e8737877 Update to install_check.pl for ldap-useradmin 2020-08-15 14:10:49 -04:00
Andrew Yoder
8ffe3f9844 Merge branch 'ldap-password-file' 2020-08-15 13:34:57 -04:00
Andrew Yoder
f6f72d547e LDAP Bind credential file option for ldap-useradmin 2020-08-15 13:29:24 -04:00
Jamie Cameron
7348723545 Just log a warning if a per-IP cert doesn't exist, instead of crashing out https://www.virtualmin.com/node/69691 2020-08-14 17:01:13 -07:00
Jamie Cameron
cc27b1cdc8 Fail more gracefully 2020-08-14 16:39:38 -07:00
Jamie Cameron
301b994855 Check for init script in all dirs https://github.com/webmin/webmin/issues/1282 2020-08-13 17:38:01 -07:00
Jamie Cameron
6d862276ac Don't try to run find if dir doesn't exist https://sourceforge.net/p/webadmin/bugs/5398/ 2020-08-13 17:31:33 -07:00
Jamie Cameron
837aa43f2e fix merge conflict 2020-08-12 20:23:01 -07:00
Jamie Cameron
35bc2408af Fix bugs in the renumbering code that was causing double updates 2020-08-12 20:22:10 -07:00
Ilia Rostovtsev
6430a0ec45 Revert "Check for context in addition"
This reverts commit f1d7deb307.
2020-08-11 22:15:43 +03:00
Ilia Rostovtsev
a2f88e1d1a Fix to accommodate Raspberry Pi sensors output #1280 2020-08-10 22:43:45 +03:00
Ilia Rostovtsev
3cf65f8057 Add new API to renumber sections and members 218a5034c5 2020-08-10 15:48:25 +03:00
Jamie Cameron
5867b4120e Record and preserve indents 2020-08-09 12:13:16 -07:00
Jamie Cameron
024f08f58a Remove debug code 2020-08-09 12:06:19 -07:00
Jamie Cameron
5e63eb2b15 Merge branch 'master' of github.com:webmin/webmin 2020-08-09 12:04:23 -07:00
Jamie Cameron
218a5034c5 When renumbering, always process the entire config 2020-08-09 12:02:26 -07:00
Ilia Rostovtsev
b499398801 Fix typo 2020-08-09 21:08:36 +03:00
Jamie Cameron
9bcda0b429 Fix repored path https://sourceforge.net/p/webadmin/bugs/5394/ 2020-08-06 14:49:44 -07:00
Jamie Cameron
ec0352d798 Renumber sub-directives as well 2020-08-06 13:14:36 -07:00
Ilia Rostovtsev
b5ace450a4 Set encoding to utf-8 instead 2020-07-30 14:25:51 +03:00
Ilia Rostovtsev
43a86a8680 Enforce utf-8 for mail #1272 2020-07-30 14:18:40 +03:00
Jamie Cameron
0437c27ed1 Merge branch 'master' of github.com:webmin/webmin 2020-07-29 13:39:35 -07:00
Jamie Cameron
abfc7620f5 Handle case where primary IP is from DHCP, but other IPs are static https://github.com/webmin/webmin/issues/1269 2020-07-29 13:29:23 -07:00
Ilia Rostovtsev
275967cb7d Don't show "Change" button as being redundant (select makes a change) 2020-07-28 11:35:12 +03:00
Jamie Cameron
00c1f1410c Invert test for non-ascii characters https://github.com/webmin/webmin/issues/1272 2020-07-26 22:32:45 -07:00
Jamie Cameron
e1219d58cf New version bump 2020-07-26 11:51:59 -07:00
Jamie Cameron
db89c10c61 Use require to avoid duplicate function warnings 2020-07-25 17:56:16 -07:00
Jamie Cameron
591fbe8656 Also use the new stop flag to shut down cleanly on CentOS 8 2020-07-25 17:44:20 -07:00
Jamie Cameron
a257f33031 Merge branch 'master' of github.com:webmin/webmin 2020-07-24 13:42:39 -07:00
Jamie Cameron
0177ad2e88 Copy active default route to saved one when switching from DHCP https://github.com/webmin/webmin/issues/1266 2020-07-24 13:42:30 -07:00
Ilia Rostovtsev
49353baa58 If the redirect_prefix exists change redirect base to include the prefix #1271 2020-07-24 18:02:52 +03:00
Ilia Rostovtsev
a1ad0504f0 Fix to distinguish command from actual file https://github.com/authentic-theme/authentic-theme/issues/1485 2020-07-24 11:29:59 +03:00
Ilia Rostovtsev
917e30d04b Fix to use relative path if needed 2020-07-20 20:34:47 +03:00
Ilia Rostovtsev
c56591bd63 Fix to properly test default module 2020-07-20 16:26:11 +03:00
Jamie Cameron
fdb1a2909b Fail if module.info can't be read https://github.com/webmin/webmin/issues/1267 2020-07-18 20:50:16 -07:00
Jamie Cameron
b10a39fb50 World type may be lower case 2020-07-18 15:36:29 -07:00
Jamie Cameron
c7eaa36b24 Merge branch 'master' of github.com:webmin/webmin 2020-07-18 10:56:04 -07:00
Jamie Cameron
e18884150b Remove message about PAM perl module not being loaded 2020-07-18 10:52:50 -07:00
Ilia Rostovtsev
8d3bbdbb6e Check for new Postfix version correctly
https://www.virtualmin.com/node/69464

It would better to factor this functionality out in a separate sub
2020-07-18 19:20:58 +03:00
Jamie Cameron
2ee43178df Set parent section fields that would be set when reading the config 2020-07-17 09:53:22 -07:00
Jamie Cameron
76cc260c7e Merge branch 'master' of github.com:webmin/webmin 2020-07-12 15:11:46 -07:00
Jamie Cameron
b871dcf4c3 Don't show process detail that are for internal use only 2020-07-12 15:07:12 -07:00
Ilia Rostovtsev
1b0242c4e2 Fix to use input instead 2020-07-12 17:27:59 +03:00
Jamie Cameron
2f113ee72d Don't set HOME globally as it can confuse subsequent commands https://github.com/virtualmin/virtualmin-gpl/issues/183 2020-07-11 09:39:33 -07:00
Jamie Cameron
78b70f7e1f Handle case where no standard filters are defined 2020-07-10 19:13:21 -07:00
Jamie Cameron
c71cfc96f9 Handle case where there are no filters 2020-07-10 18:53:39 -07:00
Jamie Cameron
b7b09fcb7d Fix type detection if no info 2020-07-10 18:34:51 -07:00
Jamie Cameron
11a8bd2e55 Fix inverted cleanup of child PIDs 2020-07-10 17:35:46 -07:00
Jamie Cameron
3db98c7a2d Fix editing of rules in direct mode https://www.virtualmin.com/node/69443 2020-07-10 16:45:48 -07:00
Ilia Rostovtsev
3fa7141ae7 Fix CPU temp output #1253 https://github.com/authentic-theme/authentic-theme/issues/1481
https://sourceforge.net/p/webadmin/discussion/600155/thread/38946ad0d7/?limit=25#2479
https://github.com/webmin/webmin/issues/1253
2020-07-07 17:28:39 +03:00
Jamie Cameron
abd9cebb7d New version bump 2020-07-05 16:06:59 -07:00
Jamie Cameron
d9093ebefc Simplify an obsolete error message 2020-07-05 14:41:59 -07:00
Jamie Cameron
1ccc4e4cef Don't log to stderr if an unparsable message comes in SSL mode 2020-07-05 14:39:18 -07:00
Jamie Cameron
375eed4530 Fix stop script before running it 2020-07-05 12:06:17 -07:00
Jamie Cameron
8f61b43253 Check flag files more often 2020-07-05 11:00:13 -07:00
Jamie Cameron
3d83f033f1 Fix redirect after a manual backup 2020-07-05 10:55:09 -07:00
Ilia Rostovtsev
1279d7f616 Revert wrong "Use less harsh kill first b129fd8a27"
I remembered that we used it for compatibility, otherwise it will never work as intended

This reverts commit a1bc2b504c.
2020-07-05 14:33:29 +03:00
Ilia Rostovtsev
a1bc2b504c Use less harsh kill first b129fd8a27 2020-07-05 14:30:51 +03:00
Jamie Cameron
07f2c8683a Always enable stop-flag feature 2020-07-04 20:54:45 -07:00
Jamie Cameron
b129fd8a27 Change stop script to only kill -9 if the --kill flag is given, and adjust the setup script to only run it after re-creation by the new version 2020-07-04 20:36:49 -07:00
Jamie Cameron
b7ec392bba Don't delete the PID file on stop, because we can't just assume the stop worked 2020-07-04 17:38:00 -07:00
Jamie Cameron
ba1af2aeaf Package being installed may be webmin 2020-07-04 17:15:45 -07:00
Ilia Rostovtsev
3a64619e11 Use foreing call instead to get file name 2020-07-05 01:09:19 +03:00
Ilia Rostovtsev
e8c1223305 Fix to use safe filename 22b27811b3 (r40370102) 2020-07-05 00:47:36 +03:00
Ilia Rostovtsev
22b27811b3 Add ability to remove reboot notification from Dashboard https://github.com/authentic-theme/authentic-theme/issues/896#issuecomment-653792643 2020-07-04 22:31:55 +03:00
Jamie Cameron
b86ba57787 Merge branch 'master' of github.com:webmin/webmin 2020-07-04 11:14:55 -07:00
Jamie Cameron
d1d79c1914 Fix perl warning https://sourceforge.net/p/webadmin/bugs/5387/ 2020-07-04 11:13:32 -07:00
Ilia Rostovtsev
f01e2d3eb1 Add Chrony support (less invasive) 3548bd3573 2020-07-04 17:12:21 +03:00
Jamie Cameron
8d675e1bc8 Fix perl warning https://sourceforge.net/p/webadmin/bugs/5385/ 2020-07-03 17:11:21 -07:00
Jamie Cameron
2da5603dac New version bump 2020-07-03 15:11:58 -07:00
Jamie Cameron
44a51efb1b Revert "Add support for chronyc command for CentOS 8"
This reverts commit 3548bd3573.
2020-07-03 15:08:19 -07:00
Jamie Cameron
8a5eb8b1d5 Run the extra chown as the correct user 2020-07-03 10:28:22 -07:00
Ilia Rostovtsev
955c84903a Fix .well-known mod as mkdir -m 755 doesn't affect created parent 2020-07-03 17:03:27 +03:00
Ilia Rostovtsev
3548bd3573 Add support for chronyc command for CentOS 8
https://sourceforge.net/p/webadmin/discussion/600155/thread/a469891f3f

0798cade30
2020-07-03 13:18:02 +03:00
452 changed files with 2932 additions and 1345 deletions

View File

@@ -29,7 +29,7 @@ Webmin can be installed in two different ways:
1. By downloading a pre-built package, available for different distributions (CentOS, Fedora, SuSE, Mandriva, Debian, Ubuntu, Solaris and [other](http://www.webmin.com/support.html)) from our [download page](http://webmin.com/download.html);
<kbd>Note: It is highly recommended to [add repository](https://doxfer.webmin.com/Webmin/Installation) to your system for having automatic updates.</kbd>
2. By downloading, extracting [source file](https://prdownloads.sourceforge.net/webadmin/webmin-1.951.tar.gz), and running [_setup.sh_](http://www.webmin.com/tgz.html) script, with no arguments, which will setup to run it directly from this directory, or with a command-line argument, such as targeted directory.
2. By downloading, extracting [source file](https://prdownloads.sourceforge.net/webadmin/webmin-1.962.tar.gz), and running [_setup.sh_](http://www.webmin.com/tgz.html) script, with no arguments, which will setup to run it directly from this directory, or with a command-line argument, such as targeted directory.
<kbd>Note: If you are installing Webmin [on Windows](http://www.webmin.com/windows.html) system, you must run the command `perl setup.pl` instead. The Windows version depends on several programs, and modules that may not be part of the standard distribution. You will need _process.exe_ commmand, _sc.exe_ command, and _Win32::Daemon_ Perl module.</kbd>
## Documentation

File diff suppressed because one or more lines are too long

View File

@@ -1,7 +1,7 @@
use strict;
use warnings;
do 'acl-lib.pl';
require 'acl-lib.pl';
our ($config_directory, %gconfig);
# backup_config_files()

View File

@@ -1,5 +1,5 @@
do 'adsl-client-lib.pl';
require 'adsl-client-lib.pl';
# backup_config_files()
# Returns files and directories that can be backed up

View File

@@ -17,6 +17,8 @@ else {
map { $access_types{$_}++ } @access_types;
$site_file = ($config{'webmin_apache'} || $module_config_directory)."/site";
$httpd_info_cache = $module_config_directory."/httpd-info";
$last_config_change_flag = $module_var_directory."/config-flag";
$last_restart_time_flag = $module_var_directory."/restart-flag";
# Check if a list of supported modules needs to be built. This is done
# if the Apache binary changes, when Webmin is upgraded, or once every five
@@ -541,6 +543,7 @@ for($i=0; $i<@old || $i<@{$_[1]}; $i++) {
%v = ( "line", $change->{'line'}+1,
"eline", $change->{'line'}+1,
"file", $change->{'file'},
"indent", $change->{'indent'},
"type", 0,
"name", $_[0],
"value", $v,
@@ -550,7 +553,8 @@ for($i=0; $i<@old || $i<@{$_[1]}; $i++) {
splice(@{$_[2]}, $j, 0, \%v);
$lref = &read_file_lines($v{'file'});
push(@files, $v{'file'});
splice(@$lref, $v{'line'}, 0, "$_[0] $v");
splice(@$lref, $v{'line'}, 0,
(" " x $v{'indent'})."$_[0] $v");
$change = \%v;
}
else {
@@ -571,6 +575,7 @@ for($i=0; $i<@old || $i<@{$_[1]}; $i++) {
%v = ( "line", $l,
"eline", $l,
"file", $f,
"indent", $_[2]->[$j-1]->{'indent'},
"type", 0,
"name", $_[0],
"value", $v,
@@ -578,7 +583,8 @@ for($i=0; $i<@old || $i<@{$_[1]}; $i++) {
&renumber($_[3], $l, $f, 1);
splice(@{$_[2]}, $j, 0, \%v);
push(@files, $f);
splice(@$lref, $l, 0, "$_[0] $v");
splice(@$lref, $l, 0,
(" " x $v{'indent'})."$_[0] $v");
}
}
elsif ($i >= @{$_[1]}) {
@@ -606,6 +612,7 @@ for($i=0; $i<@old || $i<@{$_[1]}; $i++) {
$change = $old[$i];
}
}
&update_last_config_change();
return &unique(@files);
}
@@ -620,7 +627,15 @@ local $file = $olddir ? $olddir->{'file'} :
$newdir->{'file'} ? $newdir->{'file'} : $pconf->[0]->{'file'};
local $lref = &read_file_lines($file);
local $oldlen = $olddir ? $olddir->{'eline'}-$olddir->{'line'}+1 : undef;
local @newlines = $newdir ? &directive_lines($newdir) : ( );
local @newlines;
if ($newdir) {
my $isrc = $olddir ? $olddir :
@$pconf ? $pconf->[0] : undef;
if ($isrc) {
&recursive_set_indent($newdir, $isrc->{'indent'});
}
@newlines = &directive_lines($newdir);
}
if ($olddir && $newdir) {
# Update in place
if ($first) {
@@ -686,6 +701,20 @@ elsif (!$olddir && $newdir) {
$newdir->{'file'});
}
}
&update_last_config_change();
}
# recursive_set_indent(&directive, indent)
# Set the indent to match another at the same level
sub recursive_set_indent
{
my ($dir, $indent) = @_;
$dir->{'indent'} = $indent if (!defined($dir->{'indent'}));
if ($dir->{'type'}) {
foreach my $m (@{$dir->{'members'}}) {
&recursive_set_indent($m, $indent+4);
}
}
}
# recursive_set_lines_files(&directives, first-line, file)
@@ -1057,8 +1086,9 @@ foreach $f (@{$_[0]}) {
push(@fl, $f) if (&indexof($f, @fl) < 0);
}
foreach $f (&unique(@fl)) {
$rv .= &ui_checkbox($_[1], $f, $f, (&indexof($f, @{$_[0]}) < 0 ? 0 : 1 ) );
$rv .= &ui_checkbox($_[1], $f, $f, (&indexof($f, @{$_[0]}) < 0 ? 0 : 1 ) );
}
$rv ||= &ui_textbox($_[1], "", 20);
return $rv;
}
@@ -1166,12 +1196,18 @@ print "<p>\n";
# Returns HTML for a link to put in the top-right corner of every page
sub restart_button
{
local $rv;
$args = "redir=".&urlize(&this_url());
local $args = "redir=".&urlize(&this_url());
local @rv;
if (&is_apache_running()) {
if ($access{'apply'}) {
push(@rv, &ui_link("restart.cgi?$args", $text{'apache_apply'}) );
my $n = &needs_config_restart();
if ($n) {
push(@rv, &ui_link("restart.cgi?$args&newconfig=1",
"<b>$text{'apache_apply'}</b>") );
}
else {
push(@rv, &ui_link("restart.cgi?$args", $text{'apache_apply'}) );
}
}
if ($access{'stop'}) {
push(@rv, &ui_link("stop.cgi?$args", $text{'apache_stop'}) );
@@ -1398,13 +1434,14 @@ sub directive_lines
local @rv;
foreach $d (@_) {
next if ($d->{'name'} eq 'dummy');
my $indent = (" " x $d->{'indent'});
if ($d->{'type'}) {
push(@rv, "<$d->{'name'} $d->{'value'}>");
push(@rv, $indent."<$d->{'name'} $d->{'value'}>");
push(@rv, &directive_lines(@{$d->{'members'}}));
push(@rv, "</$d->{'name'}>");
push(@rv, $indent."</$d->{'name'}>");
}
else {
push(@rv, "$d->{'name'} $d->{'value'}");
push(@rv, $indent."$d->{'name'} $d->{'value'}");
}
}
return @rv;
@@ -1585,6 +1622,7 @@ else {
&kill_logged('HUP', $1) || return &text('restart_esig', $1);
&wait_for_graceful();
}
&restart_last_restart_time();
return undef;
}
@@ -1717,6 +1755,7 @@ if (!&is_apache_running()) {
return "$text{'start_eafter'} : <pre>$out</pre>";
}
}
&restart_last_restart_time();
return undef;
}
@@ -2039,5 +2078,33 @@ local $d = &virtual_server::get_domain_by("dom", $n);
return $d;
}
# update_last_config_change()
# Updates the flag file indicating when the config was changed
sub update_last_config_change
{
&open_tempfile(FLAG, ">$last_config_change_flag", 0, 1);
&close_tempfile(FLAG);
}
# restart_last_restart_time()
# Updates the flag file indicating when the config was changed
sub restart_last_restart_time
{
&open_tempfile(FLAG, ">$last_restart_time_flag", 0, 1);
&close_tempfile(FLAG);
}
# needs_config_restart()
# Returns 1 if a restart is needed for sure after a config change
sub needs_config_restart
{
my @cst = stat($last_config_change_flag);
my @rst = stat($last_restart_time_flag);
if (@cst && @rst && $cst[9] > $rst[9]) {
return 1;
}
return 0;
}
1;

View File

@@ -1,5 +1,5 @@
do 'apache-lib.pl';
require 'apache-lib.pl';
# backup_config_files()
# Returns files and directories that can be backed up

View File

@@ -41,6 +41,7 @@ else {
}
&flush_file_lines();
&unlock_file($d->{'file'});
&update_last_config_change();
&after_changing();
&webmin_log("dir", $in{'delete'} ? 'delete' : 'save',

View File

@@ -36,6 +36,7 @@ else {
}
&flush_file_lines();
&unlock_file($d->{'file'});
&update_last_config_change();
&after_changing();
&webmin_log("files", $in{'delete'} ? 'delete' : 'save',

View File

@@ -837,8 +837,8 @@ return &parse_opt("ForceType", '^\S+\/\S+$', $text{'mod_mime_etype'});
sub edit_SetOutputFilter
{
local @vals = split(/[\s;]+/, $_[0]->{'value'});
return (2, $text{'core_outfilter'},
&filters_input(\@vals, "SetOutputFilter"));
my $fi = &filters_input(\@vals, "SetOutputFilter");
return (2, $text{'core_outfilter'}, $fi);
}
sub save_SetOutputFilter
{
@@ -848,8 +848,8 @@ return &parse_filters("SetOutputFilter");
sub edit_SetInputFilter
{
local @vals = split(/[\s;]+/, $_[0]->{'value'});
return (2, $text{'core_infilter'},
&filters_input(\@vals, "SetInputFilter"));
my $fi = &filters_input(\@vals, "SetInputFilter");
return (2, $text{'core_infilter'}, $fi);
}
sub save_SetInputFilter
{

View File

@@ -37,6 +37,7 @@ else {
# Add to file
&save_directive_struct(undef, $dir, $vconf, $conf);
&flush_file_lines();
&update_last_config_change();
&unlock_file($vconf->[0]->{'file'});
&after_changing();

View File

@@ -31,6 +31,7 @@ else {
# Add to file
&save_directive_struct(undef, $dir, $hconf, $hconf);
&flush_file_lines();
&update_last_config_change();
&unlock_file($in{'file'});
&after_changing();

View File

@@ -235,11 +235,18 @@ if ($in{'adddir'} && $in{'root'}) {
}
push(@mems, $dirsect);
}
foreach my $m (@mems) {
$m->{'indent'} = 4;
}
foreach my $m (@{$dirsect->{'members'}}) {
$m->{'indent'} = 8;
}
# Save to the file
&save_directive_struct(undef, $virt, $conf, $conf);
&flush_file_lines();
&unlock_file($f);
&update_last_config_change();
&unlock_apache_files();
# Create a symlink from another dir, if requested (as in Debian)

View File

@@ -26,6 +26,7 @@ foreach $vconf (@virts) {
}
&flush_file_lines();
&unlock_all_files();
&update_last_config_change();
&after_changing();
&webmin_log("virts", "delete", scalar(@virts));
&redirect("");

View File

@@ -75,6 +75,7 @@ if ($config{'test_manual'}) {
}
unlink($temp);
&unlock_file($file);
&update_last_config_change();
&webmin_log($logtype, "manual", $logname, \%in);
foreach $h ('virt', 'idx', 'file') {

View File

@@ -37,10 +37,12 @@ return &parse_choice("SSLEngine");
sub get_sslprotos
{
my @sslprotos = ("SSLv2", "SSLv3", "TLSv1" );
if ($httpd_modules{'core'} >= 2.215) {
my $ver = $httpd_modules{'core'};
$ver =~ s/^(\d+)\.(\d)(\d+)$/$1.$2.$3/;
if (&compare_version_numbers($ver, '2.2.15') >= 0) {
push(@sslprotos, "TLSv1.1", "TLSv1.2");
}
if ($httpd_modules{'core'} >= 2.437) {
if (&compare_version_numbers($ver, '2.4.37') >= 0) {
push(@sslprotos, "TLSv1.3");
}
return @sslprotos;

View File

@@ -18,6 +18,7 @@ if ($in{'delete'}) {
&delete_file_if_empty($vconf->{'file'});
&flush_file_lines();
&unlock_file($vconf->{'file'});
&update_last_config_change();
&after_changing();

View File

@@ -9,12 +9,14 @@ do 'at-lib.pl';
sub backup_config_files
{
my @rv;
opendir(my $DIR, $config{'at_dir'});
while(my $f = readdir($DIR)) {
next if ($f eq "." || $f eq ".." || $f eq ".SEQ");
if (!-d "$config{'at_dir'}/$f") {
push(@rv, "$config{'at_dir'}/$f");
if (opendir(my $DIR, $config{'at_dir'})) {
while(my $f = readdir($DIR)) {
next if ($f eq "." || $f eq ".." || $f eq ".SEQ");
if (!-d "$config{'at_dir'}/$f") {
push(@rv, "$config{'at_dir'}/$f");
}
}
closedir($DIR);
}
return @rv;
}

16
at/bootup.cgi Executable file
View File

@@ -0,0 +1,16 @@
#!/usr/local/bin/perl
# Enable or disable atd at boot time
require './at-lib.pl';
&ReadParse();
&foreign_require("init");
$init = &get_init_name();
if ($in{'boot'}) {
&init::enable_at_boot($init);
}
else {
&init::disable_at_boot($init);
}
&webmin_log($in{'boot'} ? "bootup" : "bootdown");
&redirect("");

View File

@@ -21,6 +21,11 @@ if (!&has_command("at")) {
"../config.cgi?$module_name"));
}
# Check if OS is supported
if (!defined(&list_atjobs)) {
&ui_print_endpage(&text('index_nostyle', "../config.cgi?$module_name"));
}
# Show list of existing jobs
my @jobs = &list_atjobs();
@jobs = grep { &can_edit_user(\%access, $_->{'user'}) } @jobs;
@@ -76,7 +81,7 @@ elsif ($access{'mode'} == 3) {
else {
$usel = &ui_user_textbox("user", $in{'ext_user'});
}
print &ui_table_row($text{'index_user'}, $usel, undef, ["valign=middle","valign=middle"]);
print &ui_table_row($text{'index_user'}, $usel);
# Run date
my @now = localtime(time());
@@ -85,28 +90,28 @@ print &ui_table_row($text{'index_date'},
&ui_select("month", $now[4],
[ map { [ $_, $text{"smonth_".($_+1)} ] } ( 0 .. 11 ) ])."/".
&ui_textbox("year", $now[5]+1900, 4).
&date_chooser_button("day", "month", "year"), undef, ["valign=middle","valign=middle"]);
&date_chooser_button("day", "month", "year"));
# Run time
print &ui_table_row($text{'index_time'},
&ui_textbox("hour", undef, 2).":".&ui_textbox("min", "00", 2), undef, ["valign=middle","valign=middle"]);
&ui_textbox("hour", undef, 2).":".&ui_textbox("min", "00", 2));
# Current date and time
my ($date, $time) = split(/\s+/, &make_date(time()));
print &ui_table_row($text{'index_cdate'}, $date, undef, ["valign=middle","valign=middle"]);
print &ui_table_row($text{'index_ctime'}, $time, undef, ["valign=middle","valign=middle"]);
print &ui_table_row($text{'index_cdate'}, $date);
print &ui_table_row($text{'index_ctime'}, $time);
# Run in directory
print &ui_table_row($text{'index_dir'},
&ui_textbox("dir", $dir, 50), undef, ["valign=middle","valign=middle"]);
&ui_textbox("dir", $dir, 50));
# Commands to run
print &ui_table_row($text{'index_cmd'},
&ui_textarea("cmd", $in{'ext_cmd'}, 5, 50), undef, ["valign=top","valign=top"]);
&ui_textarea("cmd", $in{'ext_cmd'}, 5, 50));
# Send email on completion
print &ui_table_row($text{'index_mail'},
&ui_yesno_radio("mail", 0), undef, ["valign=middle","valign=middle"]);
&ui_yesno_radio("mail", 0));
print &ui_table_end();
print &ui_form_end([ [ undef, $text{'create'} ] ]);
@@ -123,7 +128,7 @@ if ($access{'allow'} && $config{'allow_file'}) {
@allow ? 1 : @deny ? 2 : 0,
[ [ 0, $text{'index_amode0'} ],
[ 1, $text{'index_amode1'} ],
[ 2, $text{'index_amode2'} ] ]), undef, ["valign=middle","valign=middle"]);
[ 2, $text{'index_amode2'} ] ]));
print &ui_table_row("",
&ui_textarea("ausers", @allow ? join("\n", @allow) :
@deny ? join("\n", @deny) : undef,
@@ -132,5 +137,34 @@ if ($access{'allow'} && $config{'allow_file'}) {
print &ui_form_end([ [ "save", $text{'save'} ] ]);
}
# If there is an init script that runs an atd server, show status
&foreign_require("init");
my $init = defined(&get_init_name) ? &get_init_name() : undef;
if ($init) {
print &ui_hr();
print &ui_buttons_start();
# Running now?
my $r = &init::status_action($init);
if ($r == 1) {
print &ui_buttons_row("stop.cgi", $text{'index_stop'},
$text{'index_stopdesc'});
}
elsif ($r == 0) {
print &ui_buttons_row("start.cgi", $text{'index_start'},
$text{'index_startdesc'});
}
# Start at boot?
my $atboot = &init::action_status($init);
print &ui_buttons_row("bootup.cgi", $text{'index_boot'},
$text{'index_bootdesc'}, undef,
&ui_radio("boot", $atboot == 2 ? 1 : 0,
[ [ 1, $text{'yes'} ],
[ 0, $text{'no'} ] ]));
print &ui_buttons_end();
}
&ui_print_footer("/", $text{'index'});

View File

@@ -19,6 +19,13 @@ index_amode1=Slegs gelys gebruikers ..
index_amode2=Almal behalwe gelys gebruikers ..
index_delete=Kanselleer geselekteerde opdragte
index_noat=Die opdrag $1 is nie op u stelsel gevind nie - dit is miskien nie geïnstalleer nie, of nie beskikbaar vir u bestuurstelsel nie.
index_nostyle=Webmin weet nie hoe om skeduleopdragte vir hierdie bedryfstelsel te bestuur nie.
index_stop=Stop die beplande bedienerbediener
index_stopdesc=Skakel die <tt>atd</tt> agtergrondbedienerproses wat geskeduleerde opdragte uitvoer. Dit sal voorkom dat opdragte op hul bepaalde tye uitgevoer word.
index_start=Begin die beplande bedienerbediener
index_startdesc=Begin die <tt>atd</tt> agtergrondbedienerproses wat geskeduleerde opdragte uitvoer. Dit is nodig om opdragte op hul bepaalde tye uit te voer.
index_boot=Begin bediener by opstart?
index_bootdesc=Verander hierdie instelling om die geskeduleerde opdragbediener tydens die opstarttyd van die stelsel in of uit te skakel.
edit_title=Geplande opdrag
edit_cmd=Volledige skrif om uit te voer
edit_shortcmd=Opdrag om uit te voer
@@ -57,3 +64,9 @@ log_create_job=Die geskeduleerde opdrag vir $1 geskep
log_delete_job=Die geskeduleerde opdrag vir $1 gekanselleer
log_exec_job=Uitgevoer geskeduleerde opdrag vir $1
log_delete_jobs=Kanselleer $1 geskeduleerde opdragte
log_stop=Gestopte bediener met geskeduleerde opdragte gestop
log_start=Die bediener vir geskeduleerde opdragte is begin
log_bootup=Skakel die beplande bediener-bediener by die opstart aan
log_bootdown=Gedeaktiveerde bediener vir geskeduleerde opdragte tydens die opstart
stop_err=Kon nie bediener stop nie
start_err=Kon nie bediener begin nie

View File

@@ -19,6 +19,13 @@ index_amode1=المستخدمين المدرجين فقط ..
index_amode2=كل ما عدا المستخدمين المدرجة ..
index_delete=إلغاء الأوامر المحددة
index_noat=لم يتم العثور على الأمر$1 على نظامك - ربما لم يتم تثبيته أو غير متوفر لنظام التشغيل الخاص بك.
index_nostyle=لا يعرف Webmin كيفية إدارة أوامر الجدولة على نظام التشغيل هذا.
index_stop=إيقاف خادم الأوامر المجدولة
index_stopdesc=قم بإيقاف تشغيل عملية خادم الخلفية <tt>atd</tt> التي تقوم بتشغيل الأوامر المجدولة. سيمنع هذا الأوامر من التنفيذ في أوقاتها المحددة.
index_start=بدء خادم الأوامر المجدولة
index_startdesc=ابدأ عملية خادم الخلفية <tt>atd</tt> التي تشغل الأوامر المجدولة. هذا مطلوب من أجل تنفيذ الأوامر في أوقاتها المحددة.
index_boot=بدء تشغيل الخادم عند التمهيد؟
index_bootdesc=قم بتغيير هذا الإعداد لتمكين أو تعطيل بدء تشغيل خادم الأوامر المجدولة في وقت تمهيد النظام.
edit_title=القيادة المجدولة
edit_cmd=النصي الكامل للتنفيذ
edit_shortcmd=قيادة لتنفيذ
@@ -57,3 +64,9 @@ log_create_job=تم إنشاء أمر مجدول لـ$1
log_delete_job=تم إلغاء الأمر المجدول لـ$1
log_exec_job=تنفيذ الأمر المجدول لـ$1
log_delete_jobs=الأوامر المجدولة$1 الملغاة
log_stop=توقف خادم الأوامر المجدولة
log_start=بدأ خادم الأوامر المجدولة
log_bootup=تم تمكين خادم الأوامر المجدولة عند التمهيد
log_bootdown=تم تعطيل خادم الأوامر المجدولة في التمهيد
stop_err=فشل في إيقاف الخادم
start_err=فشل بدء الخادم

View File

@@ -19,6 +19,13 @@ index_amode1=Толькі пералічаныя карыстальнікі ..
index_amode2=Усе, акрамя пералічаных карыстальнікаў ..
index_delete=Адмяніць выбраныя каманды
index_noat=Каманда $1 не была знойдзена ў вашай сістэме - магчыма, яна не ўстаноўлена альбо недаступная для вашай аперацыйнай сістэмы.
index_nostyle=Webmin не ведае, як кіраваць раскладам каманд у гэтай аперацыйнай сістэме.
index_stop=Спыніць сервер запланаваных каманд
index_stopdesc=Выключыце працэс фонавага сервера <tt>atd</tt>, які запускае запланаваныя каманды. Гэта прадухіліць выкананне каманд у вызначаны час.
index_start=Запусціце сервер запланаваных каманд
index_startdesc=Запусціце фонавы сервер <tt>atd</tt>, які запускае запланаваныя каманды. Гэта неабходна для выканання каманд у вызначаны час.
index_boot=Запусціць сервер пры загрузцы?
index_bootdesc=Зменіце гэты параметр, каб уключыць або адключыць запуск сервера запланаваных каманд падчас загрузкі сістэмы.
edit_title=Запланаванае камандаванне
edit_cmd=Поўны сцэнар для выканання
edit_shortcmd=Каманду для выканання
@@ -57,3 +64,9 @@ log_create_job=Створана запланаваная каманда для $
log_delete_job=Адменена запланаваная каманда для $1
log_exec_job=Выканана запланаваная каманда для $1
log_delete_jobs=Адменены $1 запланаваныя каманды
log_stop=Спынены сервер запланаваных каманд
log_start=Пачаты сервер запланаваных каманд
log_bootup=Уключаны сервер запланаваных каманд пры загрузцы
log_bootdown=Адключаны сервер запланаваных каманд пры загрузцы
stop_err=Не атрымалася спыніць сервер
start_err=Не атрымалася запусціць сервер

13
at/lang/bg.auto Normal file
View File

@@ -0,0 +1,13 @@
index_nostyle=Webmin не знае как да управлява команди за график в тази операционна система.
index_stop=Спрете сървъра за планирани команди
index_stopdesc=Изключете фоновия сървър <tt>atd</tt>, който изпълнява планирани команди. Това ще предотврати изпълнението на команди в определеното им време.
index_start=Стартирайте сървър за планирани команди
index_startdesc=Стартирайте процеса на фонов сървър <tt>atd</tt>, който изпълнява планирани команди. Това е необходимо за изпълнение на команди в определеното им време.
index_boot=Стартиране на сървъра при зареждане?
index_bootdesc=Променете тази настройка, за да разрешите или забраните стартирането на сървъра за планирани команди по време на зареждане на системата.
log_stop=Спира сървъра за насрочени команди
log_start=Стартиран сървър за насрочени команди
log_bootup=Активиран сървър за насрочени команди при зареждане
log_bootdown=Деактивиран сървър за насрочени команди при зареждане
stop_err=Спирането на сървъра не бе успешно
start_err=Стартирането на сървъра не бе успешно

13
at/lang/ca.auto Normal file
View File

@@ -0,0 +1,13 @@
index_nostyle=Webmin no sap com gestionar ordres de programació daquest sistema operatiu.
index_stop=Atura el servidor d'ordres programats
index_stopdesc=Apagueu el procés del servidor de fons <tt>atd</tt> que executa ordres programades. Això evitarà que les ordres s'executin a les hores especificades.
index_start=Inicieu el servidor d'ordres programats
index_startdesc=Inicieu el procés del servidor de fons <tt>atd</tt> que executa ordres programades. Això és necessari perquè les ordres s'executin a les hores especificades.
index_boot=Voleu iniciar el servidor a l'arrencada?
index_bootdesc=Canvieu aquest paràmetre per habilitar o desactivar l'inici del servidor d'ordres programades en arrencar el sistema.
log_stop=S'ha aturat el servidor d'ordres programades
log_start=S'ha iniciat el servidor d'ordres programades
log_bootup=S'ha activat el servidor d'ordres programades a l'arrencada
log_bootdown=S'ha desactivat el servidor d'ordres programades a l'arrencada
stop_err=No s'ha pogut aturar el servidor
start_err=No s'ha pogut iniciar el servidor

View File

@@ -1,7 +1,20 @@
index_mail=Odeslat e-mail po dokončení?
index_noat=Příkaz $1 nebyl ve vašem systému nalezen - možná není nainstalován nebo není pro váš operační systém k dispozici.
index_nostyle=Webmin neví, jak spravovat příkazy plánu v tomto operačním systému.
index_stop=Zastavit server naplánovaných příkazů
index_stopdesc=Ukončete proces serveru na pozadí <tt>atd</tt>, který spouští naplánované příkazy. Tím se zabrání provádění příkazů v zadaných časech.
index_start=Spusťte server Naplánované příkazy
index_startdesc=Spusťte proces serveru na pozadí <tt>atd</tt>, který spouští naplánované příkazy. To je vyžadováno, aby se příkazy spouštěly v zadaných časech.
index_boot=Spustit server při spuštění?
index_bootdesc=Toto nastavení změňte, abyste povolili nebo zakázali spouštění serveru naplánovaných příkazů v době spuštění systému.
log_allow=Změnili povolení uživatelé
log_create_job=Byl vytvořen naplánovaný příkaz pro $1
log_delete_job=Zrušený naplánovaný příkaz pro $1
log_exec_job=Byl proveden naplánovaný příkaz pro $1
log_delete_jobs=Zrušené $1 naplánované příkazy
log_stop=Server plánovaných příkazů zastaven
log_start=Spuštěn server naplánovaných příkazů
log_bootup=Server při spuštění povolil naplánované příkazy
log_bootdown=Zakázáno server naplánovaných příkazů při spuštění
stop_err=Server se nepodařilo zastavit
start_err=Server se nepodařilo spustit

View File

@@ -19,6 +19,13 @@ index_amode1=Kun listede brugere ..
index_amode2=Alle undtagen listede brugere ..
index_delete=Annuller valgte kommandoer
index_noat=Kommandoen $1 blev ikke fundet på dit system - måske er den ikke installeret eller ikke tilgængelig for dit operativsystem.
index_nostyle=Webmin ved ikke, hvordan man administrerer planlægningskommandoer på dette operativsystem.
index_stop=Stop planlagte kommandoserver
index_stopdesc=Luk <tt>atd</tt> baggrundsserverprocessen, der kører planlagte kommandoer. Dette forhindrer kommandoer i at udføres på deres angivne tidspunkter.
index_start=Start planlagte kommandoserver
index_startdesc=Start <tt>atd</tt> baggrundsserverprocessen, der kører planlagte kommandoer. Dette er nødvendigt for at kommandoer skal udføres på deres angivne tidspunkter.
index_boot=Start server ved opstart?
index_bootdesc=Skift denne indstilling for at aktivere eller deaktivere start af den planlagte kommandoserver på systemstarttidspunktet.
edit_title=Planlagt kommando
edit_cmd=Komplet script til at udføre
edit_shortcmd=Kommando til at udføre
@@ -57,3 +64,9 @@ log_create_job=Oprettet planlagt kommando til $1
log_delete_job=Annulleret planlagt kommando for $1
log_exec_job=Udført planlagt kommando for $1
log_delete_jobs=Annulleret $1 planlagte kommandoer
log_stop=Stoppet planlagte kommandoserver
log_start=Startet planlagt kommandoserver
log_bootup=Aktiveret planlagt kommandoserver ved opstart
log_bootdown=Deaktiveret planlagt kommandoserver ved opstart
stop_err=Serveren kunne ikke stoppes
start_err=Serveren kunne ikke startes

13
at/lang/de.auto Normal file
View File

@@ -0,0 +1,13 @@
index_nostyle=Webmin weiß nicht, wie Zeitplanbefehle auf diesem Betriebssystem verwaltet werden.
index_stop=Stoppen Sie den Server für geplante Befehle
index_stopdesc=Fahren Sie den Hintergrundserverprozess <tt>atd</tt> herunter, der geplante Befehle ausführt. Dadurch wird verhindert, dass Befehle zu den angegebenen Zeiten ausgeführt werden.
index_start=Starten Sie den Scheduled Commands Server
index_startdesc=Starten Sie den Hintergrundserverprozess <tt>atd</tt>, der geplante Befehle ausführt. Dies ist erforderlich, damit Befehle zu den angegebenen Zeiten ausgeführt werden können.
index_boot=Server beim Booten starten?
index_bootdesc=Ändern Sie diese Einstellung, um das Starten des Servers für geplante Befehle beim Systemstart zu aktivieren oder zu deaktivieren.
log_stop=Geplante Befehlsserver gestoppt
log_start=Geplanter Befehlsserver gestartet
log_bootup=Server für geplante Befehle beim Booten aktiviert
log_bootdown=Server für geplante Befehle beim Booten deaktiviert
stop_err=Server konnte nicht gestoppt werden
start_err=Server konnte nicht gestartet werden

13
at/lang/el.auto Normal file
View File

@@ -0,0 +1,13 @@
index_nostyle=Το Webmin δεν γνωρίζει πώς να διαχειρίζεται τις εντολές χρονοδιαγράμματος σε αυτό το λειτουργικό σύστημα.
index_stop=Διακοπή διακομιστή προγραμματισμένων εντολών
index_stopdesc=Τερματίστε τη διαδικασία διακομιστή παρασκηνίου <tt>atd</tt> που εκτελεί προγραμματισμένες εντολές. Αυτό θα αποτρέψει την εκτέλεση εντολών στις καθορισμένες ώρες τους.
index_start=Έναρξη διακομιστή προγραμματισμένων εντολών
index_startdesc=Ξεκινήστε τη διαδικασία διακομιστή παρασκηνίου <tt>atd</tt> που εκτελεί προγραμματισμένες εντολές. Αυτό απαιτείται για την εκτέλεση εντολών στις καθορισμένες ώρες τους.
index_boot=Εκκίνηση διακομιστή κατά την εκκίνηση;
index_bootdesc=Αλλάξτε αυτήν τη ρύθμιση για να ενεργοποιήσετε ή να απενεργοποιήσετε την εκκίνηση του προγραμματισμένου διακομιστή εντολών κατά την εκκίνηση του συστήματος.
log_stop=Διακοπή προγραμματισμένων εντολών διακομιστή
log_start=Ξεκίνησε προγραμματισμένος διακομιστής εντολών
log_bootup=Ενεργοποιήθηκε ο προγραμματισμένος διακομιστής εντολών κατά την εκκίνηση
log_bootdown=Απενεργοποιήθηκε ο προγραμματισμένος διακομιστής εντολών κατά την εκκίνηση
stop_err=Αποτυχία διακοπής διακομιστή
start_err=Αποτυχία εκκίνησης διακομιστή

View File

@@ -19,6 +19,13 @@ index_amode1=Only listed users ..
index_amode2=All except listed users ..
index_delete=Cancel Selected Commands
index_noat=The $1 command was not found on your system - maybe it is not installed, or not available for your operating system.
index_nostyle=Webmin does not know how to manage schedule commands on this operating system.
index_stop=Stop Scheduled Commands Server
index_stopdesc=Shut down the <tt>atd</tt> background server process that runs scheduled commands. This will prevent commands from executing at their specified times.
index_start=Start Scheduled Commands Server
index_startdesc=Start up the <tt>atd</tt> background server process that runs scheduled commands. This is required for commands to execute at their specified times.
index_boot=Start Server At Boot?
index_bootdesc=Change this setting to enable or disable starting the scheduled commands server at system boot time.
edit_title=Scheduled Command
edit_cmd=Full script to execute
@@ -65,4 +72,12 @@ log_create_job=Created scheduled command for $1
log_delete_job=Cancelled scheduled command for $1
log_exec_job=Executed scheduled command for $1
log_delete_jobs=Cancelled $1 scheduled commands
log_stop=Stopped scheduled commands server
log_start=Started scheduled commands server
log_bootup=Enabled scheduled commands server at boot
log_bootdown=Disabled scheduled commands server at boot
stop_err=Failed to stop server
start_err=Failed to start server
__norefs=1

View File

@@ -1,6 +1,13 @@
index_mail=¿Enviar correo electrónico al finalizar?
index_delete=Cancelar comandos seleccionados
index_noat=El comando $1 no se encontró en su sistema; tal vez no esté instalado o no esté disponible para su sistema operativo.
index_nostyle=Webmin no sabe cómo administrar los comandos de programación en este sistema operativo.
index_stop=Detener el servidor de comandos programados
index_stopdesc=Cierre el proceso del servidor en segundo plano <tt>atd</tt> que ejecuta comandos programados. Esto evitará que los comandos se ejecuten en los momentos especificados.
index_start=Iniciar el servidor de comandos programados
index_startdesc=Inicie el proceso del servidor en segundo plano <tt>atd</tt> que ejecuta comandos programados. Esto es necesario para que los comandos se ejecuten en los momentos especificados.
index_boot=¿Iniciar servidor en el arranque?
index_bootdesc=Cambie esta configuración para habilitar o deshabilitar el inicio del servidor de comandos programados en el momento del inicio del sistema.
edit_shortcmd=Comando para ejecutar
edit_showfull=Mostrar guión completo.
deletes_err=Error al cancelar comandos
@@ -10,3 +17,9 @@ log_create_job=Comando programado creado para $1
log_delete_job=Comando programado cancelado para $1
log_exec_job=Comando programado ejecutado para $1
log_delete_jobs=Se cancelaron $1 comandos programados
log_stop=Servidor de comandos programados detenido
log_start=Servidor de comandos programados iniciado
log_bootup=Servidor de comandos programados habilitado en el arranque
log_bootdown=Servidor de comandos programados deshabilitado en el arranque
stop_err=No se pudo detener el servidor
start_err=No se pudo iniciar el servidor

View File

@@ -19,6 +19,13 @@ index_amode1=Zerrendatutako erabiltzaileak bakarrik ..
index_amode2=Zerrendatutako erabiltzaileak izan ezik ..
index_delete=Utzi hautatutako aginduak
index_noat=$1 komandoa ez da zure sisteman aurkitu - agian ez dago instalatuta edo ez dago zure sistema eragilea eskuragarri.
index_nostyle=Webmin-ek ez daki sistema eragile honetako ordutegi komandoak nola kudeatu.
index_stop=Gelditu programatutako komandoen zerbitzaria
index_stopdesc=Itxi programatutako komandoak exekutatzen dituen <tt>atd</tt> atzeko planoko zerbitzariaren prozesua. Horrek aginduak zehaztutako orduetan exekutatzea ekidingo du.
index_start=Hasi programatutako komandoen zerbitzaria
index_startdesc=Hasi programatutako komandoak exekutatzen dituen <tt>atd</tt> atzeko planoko zerbitzariaren prozesua. Hori beharrezkoa da aginduak zehaztutako orduetan exekutatzeko.
index_boot=Zerbitzaria abiarazi nahi al duzu?
index_bootdesc=Aldatu ezarpen hau programatutako komandoen zerbitzaria abiaraztean gaitzeko edo desgaitzeko.
edit_title=Programatutako Agindua
edit_cmd=Gidoi osoa exekutatu
edit_shortcmd=Exekutatzeko agindua
@@ -57,3 +64,9 @@ log_create_job=Komando programatua sortu da $1 erako
log_delete_job=$1 programaren agindua bertan behera utzi da
log_exec_job=$1 erako aurreikusitako komando exekutatua
log_delete_jobs=Programa $1 aginduak bertan behera utzi ditu
log_stop=Programatutako komandoen zerbitzaria gelditu da
log_start=Programatutako komandoen zerbitzaria hasi da
log_bootup=Programatutako komandoen zerbitzaria gaituta dago abioan
log_bootdown=Desgaituta dago programatutako komandoen zerbitzaria abioan
stop_err=Ezin izan da zerbitzaria gelditu
start_err=Ezin izan da zerbitzaria abiarazi

View File

@@ -19,6 +19,13 @@ index_amode1=فقط کاربران ذکر شده ..
index_amode2=همه به جز کاربران ذکر شده ..
index_delete=دستورات منتخب را لغو کنید
index_noat=دستور$1 روی سیستم شما یافت نشد - شاید برای سیستم عامل شما نصب نشده باشد یا در دسترس نباشد.
index_nostyle=Webmin نمی داند که چگونه دستورات برنامه را در این سیستم عامل مدیریت کند.
index_stop=سرور دستورات برنامه ریزی شده را متوقف کنید
index_stopdesc=فرآیند سرور پس زمینه <tt>atd</tt> را خاموش کنید که دستورات برنامه ریزی شده را اجرا می کند. این از اجرای دستورات در زمان مشخص خود جلوگیری می کند.
index_start=سرور دستورات برنامه ریزی شده را شروع کنید
index_startdesc=فرایند سرور پس زمینه <tt>atd</tt> را اجرا کنید که دستورات برنامه ریزی شده را اجرا می کند. این مورد برای اجرای دستورات در زمان مشخص شده آنها لازم است.
index_boot=سرور را از طریق بوت شروع کنید؟
index_bootdesc=برای فعال یا غیرفعال کردن شروع سرور دستورات برنامه ریزی شده در زمان راه اندازی سیستم ، این تنظیم را تغییر دهید.
edit_title=فرمان برنامه ریزی شده
edit_cmd=اسکریپت کامل برای اجرای
edit_shortcmd=دستور اجرای
@@ -57,3 +64,9 @@ log_create_job=دستور برنامه ریزی شده برای$1 ایجاد ش
log_delete_job=دستور برنامه ریزی شده برای$1 لغو شد
log_exec_job=دستور برنامه ریزی شده برای$1 اجرا شد
log_delete_jobs=دستورات برنامه ریزی شده$1 لغو شد
log_stop=سرور دستورات برنامه ریزی شده متوقف شد
log_start=سرور دستورات برنامه ریزی شده را شروع کرد
log_bootup=هنگام راه اندازی سرور دستورات برنامه ریزی شده فعال است
log_bootdown=هنگام راه اندازی سرور دستورات برنامه ریزی شده غیرفعال است
stop_err=سرور متوقف نشد
start_err=سرور شروع نشد

View File

@@ -19,6 +19,13 @@ index_amode1=Vain luettelossa olevat käyttäjät ..
index_amode2=Kaikki paitsi luetellut käyttäjät ..
index_delete=Peruuta valitut komennot
index_noat=Komentoa $1 ei löydy järjestelmästäsi. Ehkä sitä ei ole asennettu tai se ei ole käytettävissä käyttöjärjestelmässäsi.
index_nostyle=Webmin ei osaa hallita aikataulukomentoja tässä käyttöjärjestelmässä.
index_stop=Pysäytä ajoitetut komentopalvelimet
index_stopdesc=Sammuta <tt>atd</tt> -palvelinprosessi, joka suorittaa ajoitetut komennot. Tämä estää komentoja suorittamasta määrättyinä aikoina.
index_start=Käynnistä ajoitetut komentopalvelimet
index_startdesc=Käynnistä <tt>atd</tt> -palvelinprosessi, joka suorittaa ajoitetut komennot. Tätä vaaditaan, jotta komennot voidaan suorittaa määrättyinä aikoina.
index_boot=Käynnistetäänkö palvelin käynnistettäessä?
index_bootdesc=Muuta tätä asetusta, jos haluat ottaa ajastetun komentopalvelimen käynnistämisen käyttöön tai poistaa sen käytöstä järjestelmän käynnistyksen yhteydessä.
edit_title=Ajoitettu komento
edit_cmd=Täysi suoritettava komentosarja
edit_shortcmd=Komento suorittaa
@@ -57,3 +64,9 @@ log_create_job=Luotu komento $1 : lle
log_delete_job=Peruutettu ajoitettu komento kohteelle $1
log_exec_job=Suoritettu ajoitettu komento $1 : lle
log_delete_jobs=Peruutettiin $1 ajoitetut komennot
log_stop=Ajastettujen komentojen palvelin pysäytetty
log_start=Aloitettu ajoitetut komentopalvelimet
log_bootup=Ota ajoitetut komentopalvelimet käyttöön käynnistyksen yhteydessä
log_bootdown=Poistettu ajoitetut komentopalvelimet käynnistyksen yhteydessä
stop_err=Palvelimen pysäyttäminen epäonnistui
start_err=Palvelimen käynnistäminen epäonnistui

View File

@@ -1,6 +1,19 @@
index_noat=La commande $1 est introuvable sur votre système - elle n'est peut-être pas installée ou n'est pas disponible pour votre système d'exploitation.
index_nostyle=Webmin ne sait pas comment gérer les commandes de planification sur ce système d'exploitation.
index_stop=Arrêter le serveur de commandes programmées
index_stopdesc=Arrêtez le processus du serveur d'arrière-plan <tt>atd</tt> qui exécute les commandes planifiées. Cela empêchera les commandes de s'exécuter aux heures spécifiées.
index_start=Démarrer le serveur de commandes programmées
index_startdesc=Démarrez le processus du serveur d'arrière-plan <tt>atd</tt> qui exécute les commandes planifiées. Ceci est nécessaire pour que les commandes s'exécutent aux heures spécifiées.
index_boot=Démarrer le serveur au démarrage?
index_bootdesc=Modifiez ce paramètre pour activer ou désactiver le démarrage du serveur de commandes planifiées au moment du démarrage du système.
log_allow=Utilisateurs autorisés modifiés
log_create_job=Commande planifiée créée pour $1
log_delete_job=Commande planifiée annulée pour $1
log_exec_job=Commande planifiée exécutée pour $1
log_delete_jobs=Commandes programmées $1 annulées
log_stop=Serveur de commandes planifiées arrêté
log_start=Démarrage du serveur de commandes planifiées
log_bootup=Serveur de commandes planifiées activé au démarrage
log_bootdown=Serveur de commandes planifiées désactivé au démarrage
stop_err=Échec de l'arrêt du serveur
start_err=Échec du démarrage du serveur

View File

@@ -19,6 +19,13 @@ index_amode1=משתמשים רשומים בלבד ..
index_amode2=כולם למעט משתמשים רשומים ..
index_delete=בטל פקודות שנבחרו
index_noat=הפקודה $1 לא נמצאה במערכת שלך - אולי היא לא מותקנת, או לא זמינה עבור מערכת ההפעלה שלך.
index_nostyle=Webmin לא יודע לנהל פקודות לוח זמנים במערכת הפעלה זו.
index_stop=הפסק את שרת הפקודות המתוזמן
index_stopdesc=כבה את תהליך שרת הרקע <tt>atd</tt> שמריץ פקודות מתוזמנות. זה ימנע ביצוע של פקודות בזמנים שצוינו.
index_start=הפעל שרת פקודות מתוזמן
index_startdesc=התחל את תהליך שרת הרקע <tt>atd</tt> שמריץ פקודות מתוזמנות. זה נדרש כדי לבצע פקודות בזמנים שצוינו.
index_boot=להתחיל שרת בעת אתחול?
index_bootdesc=שנה הגדרה זו כדי להפעיל או להשבית את הפעלת שרת הפקודות המתוזמן בזמן אתחול המערכת.
edit_title=פיקוד מתוזמן
edit_cmd=סקריפט מלא לביצוע
edit_shortcmd=פקודה לביצוע
@@ -57,3 +64,9 @@ log_create_job=נוצר פקודה מתוזמנת עבור $1
log_delete_job=הפקודה המתוזמנת בוטלה עבור $1
log_exec_job=בוצעה הפקודה המתוזמנת עבור $1
log_delete_jobs=ביטול $1 פקודות מתוזמנות
log_stop=הופסק שרת הפקודות המתוזמן
log_start=החל שרת פקודות מתוזמן
log_bootup=מופעלת שרת פקודות מתוזמן בעת האתחול
log_bootdown=הושבת שרת פקודות מתוזמן בעת האתחול
stop_err=עצירת השרת נכשלה
start_err=הפעלת השרת נכשלה

View File

@@ -1,5 +1,12 @@
index_mail=Pošalji e-poštu po završetku?
index_noat=Naredba $1 nije pronađena u vašem sustavu - možda nije instalirana ili nije dostupna za vaš operativni sustav.
index_nostyle=Webmin ne zna upravljati naredbama rasporeda na ovom operativnom sustavu.
index_stop=Zaustavite poslužitelj zakazanih naredbi
index_stopdesc=Isključite postupak pozadinskog poslužitelja <tt>atd</tt> koji pokreće planirane naredbe. To će spriječiti izvršavanje naredbi u određeno vrijeme.
index_start=Pokrenite poslužitelj zakazanih naredbi
index_startdesc=Pokrenite postupak pozadinskog poslužitelja <tt>atd</tt> koji pokreće planirane naredbe. To je potrebno za izvršavanje naredbi u određeno vrijeme.
index_boot=Pokrenuti poslužitelj pri pokretanju?
index_bootdesc=Promijenite ovu postavku da biste omogućili ili onemogućili pokretanje poslužitelja zakazanih naredbi u vrijeme pokretanja sustava.
edit_shortcmd=Naredba za izvršenje
edit_showfull=Prikaži cijelu skriptu.
log_allow=Promijenjeni dopušteni korisnici
@@ -7,3 +14,9 @@ log_create_job=Napravljena je zakazana naredba za $1
log_delete_job=Otkazana zakazana naredba za $1
log_exec_job=Izvršena zakazana naredba za $1
log_delete_jobs=Otkazane $1 zakazane naredbe
log_stop=Zaustavljen poslužitelj zakazanih naredbi
log_start=Započeo poslužitelj zakazanih naredbi
log_bootup=Omogućen poslužitelj zakazanih naredbi prilikom pokretanja
log_bootdown=Onemogućen poslužitelj zakazanih naredbi prilikom pokretanja
stop_err=Zaustavljanje poslužitelja nije uspjelo
start_err=Pokretanje poslužitelja nije uspjelo

View File

@@ -1,6 +1,13 @@
index_mail=E-mailt küld a befejezéskor?
index_delete=A kiválasztott parancsok törlése
index_noat=A (z) $1 parancs nem található a rendszeren - talán nincs telepítve, vagy nem érhető el az operációs rendszer számára.
index_nostyle=A Webmin nem ismeri az ütemezési parancsok kezelését ezen az operációs rendszeren.
index_stop=Az ütemezett parancsok kiszolgálójának leállítása
index_stopdesc=Állítsa le az ütemezett parancsokat futtató <tt>atd</tt> háttérszerver folyamatot. Ez megakadályozza a parancsok végrehajtását a megadott időpontban.
index_start=Indítsa el az Ütemezett parancsok kiszolgálót
index_startdesc=Indítsa el az ütemezett parancsokat futtató <tt>atd</tt> háttérszerver folyamatot. Erre a parancsok megadott időpontban történő végrehajtásához van szükség.
index_boot=Indítsa el a szervert indításkor?
index_bootdesc=Módosítsa ezt a beállítást, hogy engedélyezze vagy letiltsa az ütemezett parancskiszolgáló indítását a rendszer indításakor.
edit_shortcmd=Végrehajtási parancs
edit_showfull=A teljes szkript megjelenítése.
deletes_err=A parancsok megszakítása nem sikerült
@@ -10,3 +17,9 @@ log_create_job=Létrehozott ütemezett parancsot a (z) $1 számára
log_delete_job=A (z) $1 ütemezett parancsát törölték
log_exec_job=Végrehajtott ütemezett parancs a (z) $1 számára
log_delete_jobs=$1 ütemezett parancsok törölve
log_stop=Az ütemezett parancskiszolgáló leállt
log_start=Elindította az ütemezett parancskiszolgálót
log_bootup=Engedélyezte az ütemezett parancsok szerverét indításkor
log_bootdown=Az ütemezett parancskiszolgáló letiltva indításkor
stop_err=Nem sikerült leállítani a szervert
start_err=Nem sikerült elindítani a szervert

13
at/lang/it.auto Normal file
View File

@@ -0,0 +1,13 @@
index_nostyle=Webmin non sa come gestire i comandi di pianificazione su questo sistema operativo.
index_stop=Arresta il server dei comandi pianificati
index_stopdesc=Arresta il processo del server in background <tt>atd</tt> che esegue i comandi pianificati. Ciò impedirà l'esecuzione dei comandi agli orari specificati.
index_start=Avvia il server dei comandi pianificati
index_startdesc=Avvia il processo del server in background <tt>atd</tt> che esegue i comandi pianificati. Ciò è necessario affinché i comandi vengano eseguiti agli orari specificati.
index_boot=Avviare il server all'avvio?
index_bootdesc=Modificare questa impostazione per abilitare o disabilitare l'avvio del server dei comandi pianificati all'avvio del sistema.
log_stop=Server dei comandi pianificati arrestato
log_start=Avviato il server dei comandi pianificati
log_bootup=Abilitato il server dei comandi pianificati all'avvio
log_bootdown=Server dei comandi pianificati disabilitato all'avvio
stop_err=Impossibile arrestare il server
start_err=Impossibile avviare il server

View File

@@ -19,6 +19,13 @@ index_amode1=リストされたユーザーのみ ..
index_amode2=リストされたユーザーを除くすべて ..
index_delete=選択したコマンドをキャンセル
index_noat=$1コマンドがシステムで見つかりませんでした-インストールされていないか、オペレーティングシステムで使用できない可能性があります。
index_nostyle=Webminは、このオペレーティングシステムでスケジュールコマンドを管理する方法を知りません。
index_stop=スケジュールされたコマンドサーバーを停止する
index_stopdesc=スケジュールされたコマンドを実行する<tt>atd</tt>バックグラウンドサーバープロセスをシャットダウンします。これにより、コマンドが指定された時間に実行されなくなります。
index_start=スケジュールされたコマンドサーバーを起動します
index_startdesc=スケジュールされたコマンドを実行する<tt>atd</tt>バックグラウンドサーバープロセスを起動します。これは、コマンドを指定された時間に実行するために必要です。
index_boot=起動時にサーバーを起動しますか?
index_bootdesc=この設定を変更して、システムの起動時にスケジュールされたコマンドサーバーの起動を有効または無効にします。
edit_title=スケジュールされたコマンド
edit_cmd=実行する完全なスクリプト
edit_shortcmd=実行するコマンド
@@ -57,3 +64,9 @@ log_create_job=$1のスケジュールされたコマンドを作成しました
log_delete_job=$1のスケジュールされたコマンドをキャンセルしました
log_exec_job=$1のスケジュールされたコマンドを実行しました
log_delete_jobs=キャンセルされた $1のスケジュールされたコマンド
log_stop=スケジュールされたコマンドサーバーを停止しました
log_start=スケジュールされたコマンドサーバーを開始しました
log_bootup=起動時にスケジュールされたコマンドサーバーを有効にする
log_bootdown=起動時にスケジュールされたコマンドサーバーを無効にする
stop_err=サーバーの停止に失敗しました
start_err=サーバーの起動に失敗しました

View File

@@ -19,6 +19,13 @@ index_amode1=나열된 사용자 만 ..
index_amode2=나열된 사용자를 제외한 모든 ..
index_delete=선택된 명령 취소
index_noat=시스템에서 $1 명령을 찾을 수 없습니다. 운영 체제에서 설치되지 않았거나 사용할 수 없습니다.
index_nostyle=Webmin은이 운영 체제에서 일정 명령을 관리하는 방법을 모릅니다.
index_stop=예약 된 명령 서버 중지
index_stopdesc=예약 된 명령을 실행하는 <tt>atd</tt> 백그라운드 서버 프로세스를 종료합니다. 이렇게하면 명령이 지정된 시간에 실행되지 않습니다.
index_start=예약 된 명령 서버 시작
index_startdesc=예약 된 명령을 실행하는 <tt>atd</tt> 백그라운드 서버 프로세스를 시작합니다. 이는 명령이 지정된 시간에 실행되는 데 필요합니다.
index_boot=부팅시 서버를 시작 하시겠습니까?
index_bootdesc=시스템 부팅시 예약 된 명령 서버 시작을 활성화 또는 비활성화하려면이 설정을 변경합니다.
edit_title=예약 된 명령
edit_cmd=실행할 전체 스크립트
edit_shortcmd=실행할 명령
@@ -57,3 +64,9 @@ log_create_job=$1 에 대한 예약 된 명령 생성
log_delete_job=$1 에 대한 예약 된 명령이 취소되었습니다.
log_exec_job=$1 에 대해 예약 된 명령을 실행했습니다
log_delete_jobs=예약 된 $1 개의 예약 된 명령
log_stop=예약 된 명령 서버를 중지했습니다.
log_start=예약 된 명령 서버 시작
log_bootup=부팅시 예약 된 명령 서버 활성화
log_bootdown=부팅시 예약 된 명령 서버 비활성화
stop_err=서버를 중지하지 못했습니다.
start_err=서버를 시작하지 못했습니다.

View File

@@ -19,6 +19,13 @@ index_amode1=Tik išvardyti vartotojai ..
index_amode2=Visi, išskyrus išvardytus vartotojus ..
index_delete=Atšaukti pasirinktas komandas
index_noat=Komanda $1 nerasta jūsų sistemoje - galbūt ji neįdiegta arba jos negalima jūsų operacinei sistemai.
index_nostyle=„Webmin“ nežino, kaip valdyti tvarkaraščio komandas šioje operacinėje sistemoje.
index_stop=Sustabdyti planuojamų komandų serverį
index_stopdesc=Išjunkite <tt>atd</tt> foninio serverio procesą, vykdantį suplanuotas komandas. Tai neleis komandoms vykdyti nurodytu laiku.
index_start=Paleiskite suplanuotų komandų serverį
index_startdesc=Paleiskite foninio serverio procesą <tt>atd</tt>, vykdantį suplanuotas komandas. Tai reikalinga komandoms vykdyti nurodytu laiku.
index_boot=Paleisti serverį įkrovos metu?
index_bootdesc=Pakeiskite šį parametrą, jei norite įjungti arba išjungti suplanuotų komandų serverio paleidimą sistemos paleidimo metu.
edit_title=Suplanuota komanda
edit_cmd=Visas scenarijus vykdyti
edit_shortcmd=Įsakymas vykdyti
@@ -57,3 +64,9 @@ log_create_job=Sukurta suplanuota komanda $1
log_delete_job=Atšaukta suplanuota komanda $1
log_exec_job=Vykdyta suplanuota komanda $1
log_delete_jobs=Atšauktos $1 suplanuotos komandos
log_stop=Sustabdytas suplanuotų komandų serveris
log_start=Paleistas suplanuotų komandų serveris
log_bootup=Įjungus suplanuotų komandų serverį įgalintas
log_bootdown=Įkrovimo metu išjungtas suplanuotų komandų serveris
stop_err=Nepavyko sustabdyti serverio
start_err=Nepavyko paleisti serverio

View File

@@ -19,6 +19,13 @@ index_amode1=Tikai uzskaitītie lietotāji ..
index_amode2=Visi, izņemot uzskaitītos lietotājus ..
index_delete=Atcelt atlasītās komandas
index_noat=Komanda $1 jūsu sistēmā netika atrasta - varbūt tā nav instalēta vai nav pieejama jūsu operētājsistēmai.
index_nostyle=Webmin nezina, kā pārvaldīt grafika komandas šajā operētājsistēmā.
index_stop=Pārtraukt ieplānoto komandu serveri
index_stopdesc=Izslēdziet <tt>atd</tt> fona servera procesu, kas izpilda ieplānotās komandas. Tas novērsīs komandu izpildi noteiktajā laikā.
index_start=Startējiet ieplānoto komandu serveri
index_startdesc=Sāciet <tt>atd</tt> fona servera procesu, kas izpilda ieplānotās komandas. Tas ir nepieciešams, lai komandas varētu izpildīt noteiktajā laikā.
index_boot=Vai sākt serveri palaišanas laikā?
index_bootdesc=Mainiet šo iestatījumu, lai iespējotu vai atspējotu ieplānoto komandu servera palaišanu sistēmas sāknēšanas laikā.
edit_title=Plānotā komanda
edit_cmd=Pilns izpildāmais skripts
edit_shortcmd=Komanda izpildīt
@@ -57,3 +64,9 @@ log_create_job=Izveidota plānota komanda $1
log_delete_job=Atcelta plānotā komanda $1
log_exec_job=Izpildīta plānotā komanda $1
log_delete_jobs=Atceltas $1 plānotās komandas
log_stop=Apturēts ieplānoto komandu serveris
log_start=Sācis ieplānoto komandu serveris
log_bootup=Iespējojot ieplānoto komandu serveri
log_bootdown=Sāknēšanas laikā atspējots ieplānoto komandu serveris
stop_err=Neizdevās apturēt serveri
start_err=Neizdevās palaist serveri

13
at/lang/ms.auto Normal file
View File

@@ -0,0 +1,13 @@
index_nostyle=Webmin tidak tahu bagaimana menguruskan arahan jadual pada sistem operasi ini.
index_stop=Hentikan Pelayan Perintah Berjadual
index_stopdesc=Matikan proses pelayan latar belakang <tt>atd</tt> yang menjalankan perintah berjadual. Ini akan menghalang perintah daripada dilaksanakan pada waktu yang ditentukan.
index_start=Mulakan Pelayan Perintah Berjadual
index_startdesc=Mulakan proses pelayan latar belakang <tt>atd</tt> yang menjalankan perintah berjadual. Ini diperlukan agar perintah dapat dilaksanakan pada waktu yang ditentukan.
index_boot=Mulakan Pelayan Semasa Boot?
index_bootdesc=Ubah tetapan ini untuk mengaktifkan atau melumpuhkan memulakan pelayan perintah yang dijadualkan pada waktu boot sistem.
log_stop=Pelayan arahan berjadual dihentikan
log_start=Memulakan pelayan arahan berjadual
log_bootup=Diaktifkan pelayan arahan berjadual semasa boot
log_bootdown=Pelayan perintah berjadual dilumpuhkan semasa boot
stop_err=Gagal menghentikan pelayan
start_err=Gagal memulakan pelayan

View File

@@ -19,6 +19,13 @@ index_amode1=Utenti elenkati biss ..
index_amode2=Kollha minbarra l-utenti elenkati ..
index_delete=Ikkanċella l-Kmandi magħżula
index_noat=Il-kmand $1 ma nstabx fis-sistema tiegħek - forsi mhux installat, jew mhux disponibbli għas-sistema operattiva tiegħek.
index_nostyle=Webmin ma jafx kif jimmaniġġja l-iskedi ta 'kmandi fuq din is-sistema operattiva.
index_stop=Waqqaf is-Server tal-Kmandijiet Skedati
index_stopdesc=Agħlaq il-proċess ta 'l-isfond <tt>atd</tt> li jmexxi kmandi skedati. Dan jimpedixxi l-eżekuzzjoni tal-kmandi fil-ħinijiet speċifikati tagħhom.
index_start=Ibda Server tal-Kmandijiet Skedati
index_startdesc=Ibda l-proċess ta 'l-isfond ta' <tt>atd</tt> li jmexxi kmandi skedati. Dan huwa meħtieġ biex il-kmandi jiġu eżegwiti fil-ħinijiet speċifikati tagħhom.
index_boot=Ibda Server Fuq l-Ibbutjar?
index_bootdesc=Ibdel dan l-issettjar biex tippermetti jew tiddiżattiva l-bidu tas-server tal-kmandi skedati fil-ħin tal-ibbutjar tas-sistema.
edit_title=Skedat Kmand
edit_cmd=Skrittura sħiħa biex tesegwixxi
edit_shortcmd=Kmand biex tesegwixxi
@@ -57,3 +64,9 @@ log_create_job=Inħoloq kmand skedat għal $1
log_delete_job=Ikkanċella l-kmand skedat għal $1
log_exec_job=Eżegwit kmand skedat għal $1
log_delete_jobs=Ikkanċellat $1 kmandi skedati
log_stop=Server tal-kmand skedat imwaqqaf
log_start=Server tal-kmand skedat beda
log_bootup=Server tal-kmand skedat attivat waqt l-ibbutjar
log_bootdown=Server tal-kmand skedat b'diżabilità fil-but
stop_err=Naqas milli twaqqaf is-server
start_err=Ma rnexxilux jibda s-server

13
at/lang/nl.auto Normal file
View File

@@ -0,0 +1,13 @@
index_nostyle=Webmin weet niet hoe hij schema-opdrachten op dit besturingssysteem moet beheren.
index_stop=Stop geplande commandoserver
index_stopdesc=Sluit het <tt>atd</tt> serverproces op de achtergrond af dat geplande opdrachten uitvoert. Dit voorkomt dat opdrachten op de opgegeven tijden worden uitgevoerd.
index_start=Start Scheduled Commands Server
index_startdesc=Start het <tt>atd</tt> -achtergrondserverproces dat geplande opdrachten uitvoert. Dit is vereist om opdrachten op de opgegeven tijden uit te voeren.
index_boot=Server starten bij opstarten?
index_bootdesc=Wijzig deze instelling om het starten van de server met geplande opdrachten tijdens het opstarten van het systeem in of uit te schakelen.
log_stop=Geplande commandoserver gestopt
log_start=Gestart geplande commandoserver
log_bootup=Ingeschakelde server met geplande opdrachten bij opstarten
log_bootdown=Uitgeschakelde server met geplande opdrachten bij opstarten
stop_err=De server kan niet worden gestopt
start_err=Kan server niet starten

13
at/lang/no.auto Normal file
View File

@@ -0,0 +1,13 @@
index_nostyle=Webmin vet ikke hvordan de skal administrere tidsplankommandoer på dette operativsystemet.
index_stop=Stopp planlagte kommandoserver
index_stopdesc=Slå av <tt>atd</tt> bakgrunnsserverprosessen som kjører planlagte kommandoer. Dette forhindrer at kommandoer kjøres til de angitte tidene.
index_start=Start planlagte kommandoserver
index_startdesc=Start opp <tt>atd</tt> bakgrunnsserverprosessen som kjører planlagte kommandoer. Dette er nødvendig for at kommandoer skal kjøres til de angitte tidene.
index_boot=Start server ved oppstart?
index_bootdesc=Endre denne innstillingen for å aktivere eller deaktivere start av den planlagte kommandoserveren ved systemstart.
log_stop=Stoppet server for planlagte kommandoer
log_start=Startet planlagt kommandoserver
log_bootup=Aktivert planlagte kommandoserver ved oppstart
log_bootdown=Deaktivert planlagt kommandoserver ved oppstart
stop_err=Kunne ikke stoppe serveren
start_err=Kunne ikke starte serveren

13
at/lang/pl.auto Normal file
View File

@@ -0,0 +1,13 @@
index_nostyle=Webmin nie wie, jak zarządzać poleceniami harmonogramu w tym systemie operacyjnym.
index_stop=Zatrzymaj serwer zaplanowanych poleceń
index_stopdesc=Zamknij proces serwera w tle <tt>atd</tt>, który wykonuje zaplanowane polecenia. Zapobiegnie to wykonywaniu poleceń w określonym czasie.
index_start=Uruchom serwer poleceń zaplanowanych
index_startdesc=Uruchom proces serwera w tle <tt>atd</tt>, który wykonuje zaplanowane polecenia. Jest to wymagane, aby polecenia były wykonywane w określonym czasie.
index_boot=Uruchomić serwer podczas rozruchu?
index_bootdesc=Zmień to ustawienie, aby włączyć lub wyłączyć uruchamianie zaplanowanego serwera poleceń podczas rozruchu systemu.
log_stop=Zatrzymano serwer poleceń zaplanowanych
log_start=Uruchomiono serwer poleceń zaplanowanych
log_bootup=Włączono serwer poleceń zaplanowanych podczas rozruchu
log_bootdown=Wyłączono serwer poleceń zaplanowanych podczas rozruchu
stop_err=Nie udało się zatrzymać serwera
start_err=Nie udało się uruchomić serwera

View File

@@ -19,6 +19,13 @@ index_amode1=Somente usuários listados ..
index_amode2=Todos, exceto os usuários listados.
index_delete=Cancelar comandos selecionados
index_noat=O comando $1 não foi encontrado no seu sistema - talvez não esteja instalado ou não esteja disponível para o seu sistema operacional.
index_nostyle=O Webmin não sabe como gerenciar comandos de agendamento neste sistema operacional.
index_stop=Parar servidor de comandos programados
index_stopdesc=Desligue o processo do servidor de segundo plano <tt>atd</tt> que executa comandos programados. Isso impedirá que os comandos sejam executados nos horários especificados.
index_start=Iniciar servidor de comandos agendados
index_startdesc=Inicie o processo do servidor de segundo plano <tt>atd</tt> que executa comandos programados. Isso é necessário para que os comandos sejam executados em seus horários especificados.
index_boot=Iniciar o servidor na inicialização?
index_bootdesc=Altere esta configuração para habilitar ou desabilitar a inicialização do servidor de comandos programados no momento da inicialização do sistema.
edit_title=Comando agendado
edit_cmd=Script completo para executar
edit_shortcmd=Comando para executar
@@ -57,3 +64,9 @@ log_create_job=Comando agendado criado para $1
log_delete_job=Comando agendado cancelado para $1
log_exec_job=Comando agendado executado para $1
log_delete_jobs=$1 comandos agendados cancelados
log_stop=Servidor de comandos programados parado
log_start=Servidor de comandos programados iniciado
log_bootup=Servidor de comandos agendados habilitado na inicialização
log_bootdown=Servidor de comandos programados desativado na inicialização
stop_err=Falha ao parar o servidor
start_err=Falha ao iniciar o servidor

View File

@@ -6,6 +6,13 @@ index_amode1=Somente usuários listados ..
index_amode2=Todos, exceto os usuários listados.
index_delete=Cancelar comandos selecionados
index_noat=O comando $1 não foi encontrado no seu sistema - talvez não esteja instalado ou não esteja disponível para o seu sistema operacional.
index_nostyle=O Webmin não sabe como gerenciar comandos de agendamento neste sistema operacional.
index_stop=Parar servidor de comandos programados
index_stopdesc=Desligue o processo do servidor de segundo plano <tt>atd</tt> que executa comandos programados. Isso impedirá que os comandos sejam executados nos horários especificados.
index_start=Iniciar servidor de comandos agendados
index_startdesc=Inicie o processo do servidor de segundo plano <tt>atd</tt> que executa comandos programados. Isso é necessário para que os comandos sejam executados em seus horários especificados.
index_boot=Iniciar o servidor na inicialização?
index_bootdesc=Altere esta configuração para habilitar ou desabilitar a inicialização do servidor de comandos programados no momento da inicialização do sistema.
edit_shortcmd=Comando para executar
edit_run=Corra agora
edit_showfull=Mostrar script completo.
@@ -24,3 +31,9 @@ log_create_job=Comando agendado criado para $1
log_delete_job=Comando agendado cancelado para $1
log_exec_job=Comando agendado executado para $1
log_delete_jobs=$1 comandos agendados cancelados
log_stop=Servidor de comandos programados parado
log_start=Servidor de comandos programados iniciado
log_bootup=Servidor de comandos agendados habilitado na inicialização
log_bootdown=Servidor de comandos programados desativado na inicialização
stop_err=Falha ao parar o servidor
start_err=Falha ao iniciar o servidor

View File

@@ -19,6 +19,13 @@ index_amode1=Numai utilizatorii enumerați ..
index_amode2=Toți, cu excepția utilizatorilor enumerați ..
index_delete=Anulați comenzile selectate
index_noat=Comanda $1 nu a fost găsită pe sistemul dvs. - poate că nu este instalată sau nu este disponibilă pentru sistemul dvs. de operare.
index_nostyle=Webmin nu știe cum să gestioneze comenzile de programare pe acest sistem de operare.
index_stop=Opriți serverul de comenzi programate
index_stopdesc=Opriți procesul serverului de fundal <tt>atd</tt> care execută comenzi programate. Acest lucru va împiedica executarea comenzilor la orele specificate.
index_start=Porniți serverul de comenzi programate
index_startdesc=Porniți procesul de server de fundal <tt>atd</tt> care rulează comenzi programate. Acest lucru este necesar pentru executarea comenzilor la orele specificate.
index_boot=Porniți serverul la pornire?
index_bootdesc=Modificați această setare pentru a activa sau a dezactiva pornirea serverului de comenzi programate la momentul pornirii sistemului.
edit_title=Comandare programată
edit_cmd=Script complet pentru a executa
edit_shortcmd=Comanda de executare
@@ -57,3 +64,9 @@ log_create_job=Crearea comenzii programate pentru $1
log_delete_job=A fost anulată comanda programată pentru $1
log_exec_job=Execută comanda programată pentru $1
log_delete_jobs=Anulează $1 comenzi programate
log_stop=Server de comenzi programate oprit
log_start=A pornit serverul de comenzi programate
log_bootup=Activat serverul de comenzi programate la pornire
log_bootdown=Server de comenzi programate dezactivate la pornire
stop_err=Nu s-a putut opri serverul
start_err=Nu a putut porni serverul

13
at/lang/ru.auto Normal file
View File

@@ -0,0 +1,13 @@
index_nostyle=Webmin не знает, как управлять командами расписания в этой операционной системе.
index_stop=Остановить сервер запланированных команд
index_stopdesc=Завершите работу фонового серверного процесса <tt>atd</tt>, который выполняет запланированные команды. Это предотвратит выполнение команд в указанное время.
index_start=Запустить сервер запланированных команд
index_startdesc=Запустите фоновый серверный процесс <tt>atd</tt>, который выполняет запланированные команды. Это необходимо для выполнения команд в указанное время.
index_boot=Запустить сервер при загрузке?
index_bootdesc=Измените этот параметр, чтобы включить или отключить запуск сервера запланированных команд во время загрузки системы.
log_stop=Остановлен сервер запланированных команд
log_start=Запущен сервер запланированных команд
log_bootup=Включен сервер запланированных команд при загрузке
log_bootdown=Отключен сервер запланированных команд при загрузке
stop_err=Не удалось остановить сервер
start_err=Не удалось запустить сервер

View File

@@ -1,6 +1,13 @@
index_mail=Poslať e-mail po dokončení?
index_delete=Zrušiť vybrané príkazy
index_noat=Príkaz $1 nebol vo vašom systéme nájdený - možno nie je nainštalovaný alebo nie je k dispozícii pre váš operačný systém.
index_nostyle=Webmin nevie, ako spravovať príkazy plánovania v tomto operačnom systéme.
index_stop=Zastavte server naplánovaných príkazov
index_stopdesc=Ukončite proces servera na pozadí <tt>atd</tt>, ktorý spúšťa naplánované príkazy. Toto zabráni vykonaniu príkazov v zadanom čase.
index_start=Spustite server Naplánované príkazy
index_startdesc=Spustite proces servera na pozadí <tt>atd</tt>, ktorý spúšťa naplánované príkazy. Toto je potrebné na to, aby sa príkazy mohli vykonávať v zadaných časoch.
index_boot=Spustiť server pri štarte?
index_bootdesc=Toto nastavenie zmeňte, aby ste povolili alebo zakázali spustenie servera naplánovaných príkazov v čase zavádzania systému.
edit_shortcmd=Príkaz na vykonanie
edit_showfull=Zobraziť celý skript.
deletes_err=Nepodarilo sa zrušiť príkazy
@@ -10,3 +17,9 @@ log_create_job=Bol vytvorený naplánovaný príkaz pre $1
log_delete_job=Zrušený naplánovaný príkaz pre $1
log_exec_job=Vykonal sa naplánovaný príkaz pre $1
log_delete_jobs=Zrušené $1 naplánované príkazy
log_stop=Server plánovaných príkazov bol zastavený
log_start=Server spustených naplánovaných príkazov
log_bootup=Server povolených naplánovaných príkazov pri štarte
log_bootdown=Zakázaný server naplánovaných príkazov pri štarte
stop_err=Server sa nepodarilo zastaviť
start_err=Server sa nepodarilo spustiť

View File

@@ -19,6 +19,13 @@ index_amode1=Samo našteti uporabniki ..
index_amode2=Vsi razen naštetih uporabnikov ..
index_delete=Prekliči izbrane ukaze
index_noat=Ukaza $1 v vašem sistemu ni bilo mogoče - morda ni nameščen ali pa ni na voljo za vaš operacijski sistem.
index_nostyle=Webmin ne ve, kako upravljati ukaze razporeda v tem operacijskem sistemu.
index_stop=Ustavite strežnik načrtovanih ukazov
index_stopdesc=Zaustavite postopek strežnika v ozadju <tt>atd</tt>, ki izvaja načrtovane ukaze. To bo preprečilo izvajanje ukazov ob določenem času.
index_start=Zaženite strežnik Scheduled Commands
index_startdesc=Zaženite postopek strežnika <tt>atd</tt> v ozadju, ki izvaja načrtovane ukaze. To je potrebno za izvajanje ukazov ob določenem času.
index_boot=Želite zagnati strežnik ob zagonu?
index_bootdesc=Spremenite to nastavitev, da omogočite ali onemogočite zagon strežnika z načrtovanimi ukazi ob zagonu sistema.
edit_title=Načrtovani ukaz
edit_cmd=Celoten scenarij za izvedbo
edit_shortcmd=Ukaz za izvedbo
@@ -57,3 +64,9 @@ log_create_job=Ustvarjen načrtovan ukaz za $1
log_delete_job=Preklic načrtovanega ukaza za $1
log_exec_job=Izveden načrtovani ukaz za $1
log_delete_jobs=Preklicani $1 razporejeni ukazi
log_stop=Ustavljen strežnik za načrtovane ukaze
log_start=Začel strežnik načrtovanih ukazov
log_bootup=Omogočen strežnik za načrtovane ukaze ob zagonu
log_bootdown=Onemogočen strežnik načrtovanih ukazov ob zagonu
stop_err=Strežnika ni bilo mogoče ustaviti
start_err=Strežnika ni bilo mogoče zagnati

View File

@@ -1,6 +1,19 @@
index_mail=Skicka e-post när du är klar?
index_nostyle=Webmin vet inte hur man hanterar schemaläggskommandon för detta operativsystem.
index_stop=Stoppa schemalagda kommandoserver
index_stopdesc=Stäng av <tt>atd</tt> bakgrundsserverprocessen som kör schemalagda kommandon. Detta förhindrar att kommandon körs vid de angivna tiderna.
index_start=Starta schemalagda kommandoserver
index_startdesc=Starta <tt>atd</tt> bakgrundsserverprocessen som kör schemalagda kommandon. Detta krävs för att kommandon ska kunna köras vid de angivna tiderna.
index_boot=Starta server vid start?
index_bootdesc=Ändra denna inställning för att aktivera eller inaktivera start av den schemalagda kommandoservern vid systemstarttid.
log_allow=Ändrade tillåtna användare
log_create_job=Skapat schemalagd kommando för $1
log_delete_job=Avbruten schemalagd kommando för $1
log_exec_job=Utfört schemalagd kommando för $1
log_delete_jobs=Avbruten $1 schemalagda kommandon
log_stop=Stoppade schemalagda kommandoserver
log_start=Startade schemalagda kommandoserver
log_bootup=Aktiverad schemalagd kommandoserver vid start
log_bootdown=Inaktiverad schemalagd kommandoserver vid start
stop_err=Det gick inte att stoppa servern
start_err=Det gick inte att starta servern

View File

@@ -19,6 +19,13 @@ index_amode1=เฉพาะผู้ใช้ที่ระบุไว้ ..
index_amode2=ทั้งหมดยกเว้นผู้ใช้ที่ระบุไว้ ..
index_delete=ยกเลิกคำสั่งที่เลือก
index_noat=ไม่พบคำสั่ง $1 บนระบบของคุณ - อาจจะไม่ได้ติดตั้งหรือไม่สามารถใช้ได้กับระบบปฏิบัติการของคุณ
index_nostyle=Webmin ไม่ทราบวิธีจัดการคำสั่งกำหนดการบนระบบปฏิบัติการนี้
index_stop=หยุดเซิร์ฟเวอร์คำสั่งตามกำหนดการ
index_stopdesc=ปิดกระบวนการเซิร์ฟเวอร์พื้นหลัง <tt>atd</tt> ที่รันคำสั่งตามกำหนดเวลา วิธีนี้จะป้องกันไม่ให้คำสั่งดำเนินการตามเวลาที่กำหนด
index_start=เริ่มเซิร์ฟเวอร์คำสั่งตามกำหนดการ
index_startdesc=เริ่มต้นกระบวนการเซิร์ฟเวอร์พื้นหลัง <tt>atd</tt> ที่รันคำสั่งตามกำหนดเวลา สิ่งนี้จำเป็นสำหรับคำสั่งเพื่อดำเนินการตามเวลาที่กำหนด
index_boot=เริ่มเซิร์ฟเวอร์เมื่อเริ่มระบบหรือไม่
index_bootdesc=เปลี่ยนการตั้งค่านี้เพื่อเปิดหรือปิดใช้งานการเริ่มต้นเซิร์ฟเวอร์คำสั่งที่กำหนดเวลาไว้ในเวลาบูตระบบ
edit_title=คำสั่งตามกำหนดการ
edit_cmd=สคริปต์เต็มรูปแบบในการดำเนินการ
edit_shortcmd=คำสั่งเพื่อดำเนินการ
@@ -57,3 +64,9 @@ log_create_job=สร้างคำสั่งที่กำหนดเว
log_delete_job=ยกเลิกคำสั่งที่กำหนดเวลาไว้สำหรับ $1
log_exec_job=ดำเนินการคำสั่งตามกำหนดการสำหรับ $1
log_delete_jobs=ยกเลิกคำสั่งที่กำหนดไว้ $1
log_stop=หยุดเซิร์ฟเวอร์คำสั่งตามกำหนดเวลา
log_start=เริ่มต้นเซิร์ฟเวอร์คำสั่งตามกำหนดการ
log_bootup=เปิดใช้งานเซิร์ฟเวอร์คำสั่งตามกำหนดเวลาเมื่อบูต
log_bootdown=ปิดใช้งานเซิร์ฟเวอร์คำสั่งตามกำหนดการเมื่อบูต
stop_err=หยุดเซิร์ฟเวอร์ไม่สำเร็จ
start_err=ไม่สามารถเริ่มเซิร์ฟเวอร์ได้

View File

@@ -6,6 +6,13 @@ index_amode1=Sadece listelenen kullanıcılar ..
index_amode2=Listelenen kullanıcılar hariç tümü.
index_delete=Seçilen Komutları İptal Et
index_noat=$1 komutu sisteminizde bulunamadı - belki yüklü değil veya işletim sisteminizde kullanılamıyor.
index_nostyle=Webmin, bu işletim sisteminde zamanlama komutlarını nasıl yöneteceğini bilmiyor.
index_stop=Planlanmış Komutlar Sunucusunu Durdur
index_stopdesc=Zamanlanmış komutları çalıştıran <tt>atd</tt> arka plan sunucusu işlemini kapatın. Bu, komutların belirtilen zamanlarda yürütülmesini engelleyecektir.
index_start=Planlanmış Komutlar Sunucusunu Başlat
index_startdesc=Zamanlanmış komutları çalıştıran <tt>atd</tt> arka plan sunucusu işlemini başlatın. Bu, komutların belirtilen zamanlarda çalıştırılması için gereklidir.
index_boot=Önyüklemede Sunucu Başlatılsın mı?
index_bootdesc=Sistem önyükleme zamanında zamanlanmış komut sunucusunu başlatmayı etkinleştirmek veya devre dışı bırakmak için bu ayarı değiştirin.
edit_shortcmd=Yürütme komutu
edit_showfull=Komut dosyasının tamamını göster.
create_eallow=Belirtilen kullanıcının zamanlanmış komutları çalıştırmasına izin verilmiyor
@@ -20,3 +27,9 @@ log_create_job=$1 için zamanlanmış komut oluşturuldu
log_delete_job=$1 için zamanlanmış komut iptal edildi
log_exec_job=$1 için zamanlanmış komut yürütüldü
log_delete_jobs=$1 zamanlanmış komut iptal edildi
log_stop=Programlanmış komut sunucusu durduruldu
log_start=Zamanlanmış komut sunucusu başlatıldı
log_bootup=Önyüklemede zamanlanmış komut sunucusu etkinleştirildi
log_bootdown=Önyüklemede devre dışı bırakılan zamanlanmış komut sunucusu
stop_err=Sunucu durdurulamadı
start_err=Sunucu başlatılamadı

View File

@@ -6,6 +6,13 @@ index_amode1=Лише перелічені користувачі ..
index_amode2=Усі, крім перерахованих користувачів ..
index_delete=Скасувати вибрані команди
index_noat=Команда $1 не знайдена у вашій системі - можливо, вона не встановлена або недоступна для вашої операційної системи.
index_nostyle=Webmin не знає, як керувати командами розкладу в цій операційній системі.
index_stop=Зупиніть сервер запланованих команд
index_stopdesc=Вимкніть фоновий сервер <tt>atd</tt>, який запускає заплановані команди. Це запобіжить виконанню команд у зазначений час.
index_start=Запустіть сервер запланованих команд
index_startdesc=Запустіть фоновий сервер <tt>atd</tt>, який запускає заплановані команди. Це потрібно для виконання команд у зазначений час.
index_boot=Запустити сервер при завантаженні?
index_bootdesc=Змініть цей параметр, щоб увімкнути або вимкнути запуск сервера запланованих команд під час завантаження системи.
edit_shortcmd=Команда для виконання
edit_run=Виконати зараз
edit_showfull=Показати повний сценарій.
@@ -24,3 +31,9 @@ log_create_job=Створено заплановану команду для $1
log_delete_job=Скасовано заплановану команду для $1
log_exec_job=Виконана планова команда для $1
log_delete_jobs=Скасовано $1 заплановані команди
log_stop=Зупинено сервер запланованих команд
log_start=Розпочато сервер запланованих команд
log_bootup=Увімкнено сервер запланованих команд під час завантаження
log_bootdown=Вимкнено сервер запланованих команд під час завантаження
stop_err=Не вдалося зупинити сервер
start_err=Не вдалося запустити сервер

View File

@@ -19,6 +19,13 @@ index_amode1=صرف درج صارفین ..
index_amode2=سوائے درج فہرست صارفین کے ..
index_delete=منتخب احکامات منسوخ کریں
index_noat=آپ کے سسٹم پر$1 کمانڈ نہیں ملا تھا - ہوسکتا ہے کہ یہ انسٹال نہیں ہوا ہے ، یا آپ کے آپریٹنگ سسٹم کے لئے دستیاب نہیں ہے۔
index_nostyle=ویبمین نہیں جانتا ہے کہ اس آپریٹنگ سسٹم پر شیڈول کمانڈز کا انتظام کیسے کریں۔
index_stop=شیڈول کمانڈز سرور بند کرو
index_stopdesc=Shut down the <tt>atd</tt> background server process that runs scheduled commands. This will prevent commands from executing at their specified times.
index_start=شیڈول کمانڈز سرور شروع کریں
index_startdesc=Start up the <tt>atd</tt> background server process that runs scheduled commands. This is required for commands to execute at their specified times.
index_boot=بوٹ میں سرور شروع کریں؟
index_bootdesc=سسٹم بوٹ وقت شیڈول کمانڈز سرور کو شروع کرنے کے قابل یا غیر فعال کرنے کے لئے اس ترتیب کو تبدیل کریں۔
edit_title=شیڈول کمانڈ
edit_cmd=عمل کرنے کے لئے مکمل اسکرپٹ
edit_shortcmd=پھانسی دینے کا حکم
@@ -57,3 +64,9 @@ log_create_job=$1 کیلئے شیڈول کمانڈ تشکیل دیا گیا
log_delete_job=$1 کے لئے شیڈول کمانڈ منسوخ کردیا گیا
log_exec_job=$1 کے لئے شیڈول کمانڈ پر عمل درآمد کیا گیا
log_delete_jobs=منسوخ کردہ$1 شیڈول کمانڈز
log_stop=شیڈول کمانڈز سرور رک گیا
log_start=شیڈول کمانڈز سرور شروع کیا
log_bootup=بوٹ پر شیڈول کمانڈز سرور کو فعال کردیا
log_bootdown=بوٹ کے وقت غیر فعال شیڈول کمانڈز سرور
stop_err=سرور کو روکنے میں ناکام
start_err=سرور شروع کرنے میں ناکام

View File

@@ -19,6 +19,13 @@ index_amode1=Chỉ người dùng được liệt kê ..
index_amode2=Tất cả ngoại trừ người dùng được liệt kê ..
index_delete=Hủy bỏ các lệnh đã chọn
index_noat=Lệnh $1 không được tìm thấy trên hệ thống của bạn - có thể nó chưa được cài đặt hoặc không có sẵn cho hệ điều hành của bạn.
index_nostyle=Webmin không biết cách quản lý các lệnh lịch trình trên hệ điều hành này.
index_stop=Dừng máy chủ lệnh đã lên lịch
index_stopdesc=Tắt quá trình máy chủ nền <tt>atd</tt> chạy các lệnh đã lên lịch. Điều này sẽ ngăn không cho các lệnh thực thi vào những thời điểm cụ thể của chúng.
index_start=Khởi động máy chủ lệnh đã lên lịch
index_startdesc=Khởi động quy trình máy chủ nền <tt>atd</tt> chạy các lệnh đã lên lịch. Điều này là bắt buộc để các lệnh thực thi tại thời điểm xác định của chúng.
index_boot=Khởi động máy chủ lúc khởi động?
index_bootdesc=Thay đổi cài đặt này để bật hoặc tắt khởi động máy chủ lệnh đã lên lịch tại thời điểm khởi động hệ thống.
edit_title=Lệnh theo lịch trình
edit_cmd=Kịch bản đầy đủ để thực thi
edit_shortcmd=Lệnh thực thi
@@ -57,3 +64,9 @@ log_create_job=Tạo lệnh theo lịch trình cho $1
log_delete_job=Lệnh đã hủy theo lịch trình cho $1
log_exec_job=Đã thực hiện lệnh theo lịch trình cho $1
log_delete_jobs=Đã hủy $1 lệnh theo lịch
log_stop=Máy chủ lệnh đã lên lịch đã dừng
log_start=Đã khởi động máy chủ lệnh theo lịch trình
log_bootup=Đã bật máy chủ lệnh được lập lịch khi khởi động
log_bootdown=Đã tắt máy chủ lệnh đã lên lịch khi khởi động
stop_err=Không dừng được máy chủ
start_err=Không khởi động được máy chủ

View File

@@ -6,6 +6,13 @@ index_amode1=仅列出的用户 ..
index_amode2=除列出的用户外的所有 ..
index_delete=取消选择的命令
index_noat=在您的系统上找不到 $1命令-可能尚未安装,或者对您的操作系统不可用。
index_nostyle=Webmin不知道如何在此操作系统上管理调度命令。
index_stop=停止计划的命令服务器
index_stopdesc=关闭运行计划的命令的<tt>atd</tt>后台服务器进程。这将阻止命令在其指定时间执行。
index_start=启动计划的命令服务器
index_startdesc=启动运行计划的命令的<tt>atd</tt>后台服务器进程。这是命令在指定时间执行所需的。
index_boot=在启动时启动服务器?
index_bootdesc=更改此设置以启用或禁用在系统引导时启动计划的命令服务器。
edit_shortcmd=执行命令
edit_run=现在跑步
edit_showfull=显示完整脚本。
@@ -24,3 +31,9 @@ log_create_job=为 $1创建了计划的命令
log_delete_job=已取消 $1的预定命令
log_exec_job=已为 $1执行计划的命令
log_delete_jobs=已取消 $1个计划的命令
log_stop=停止调度的命令服务器
log_start=启动计划的命令服务器
log_bootup=引导时启用计划的命令服务器
log_bootdown=引导时禁用调度的命令服务器
stop_err=无法停止服务器
start_err=无法启动服务器

View File

@@ -6,6 +6,13 @@ index_amode1=僅列出的用戶 ..
index_amode2=除列出的用戶外的所有 ..
index_delete=取消選擇的命令
index_noat=在您的系統上找不到 $1命令-可能尚未安裝,或者對您的操作系統不可用。
index_nostyle=Webmin不知道如何在此操作系統上管理調度命令。
index_stop=停止計劃的命令服務器
index_stopdesc=關閉運行計劃的命令的<tt>atd</tt>後台服務器進程。這將阻止命令在其指定時間執行。
index_start=啟動計劃的命令服務器
index_startdesc=啟動運行計劃的命令的<tt>atd</tt>後台服務器進程。這是命令在其指定時間執行所必需的。
index_boot=在啟動時啟動服務器?
index_bootdesc=更改此設置以啟用或禁用在系統引導時啟動計劃的命令服務器。
edit_shortcmd=執行命令
edit_run=現在跑步
edit_showfull=顯示完整腳本。
@@ -24,3 +31,9 @@ log_create_job=為 $1創建了計劃的命令
log_delete_job=已取消 $1的預定命令
log_exec_job=已為 $1執行計劃的命令
log_delete_jobs=已取消 $1個計劃的命令
log_stop=停止調度的命令服務器
log_start=啟動計劃的命令服務器
log_bootup=引導時啟用計劃的命令服務器
log_bootdown=引導時禁用調度的命令服務器
stop_err=無法停止服務器
start_err=無法啟動服務器

View File

@@ -30,25 +30,27 @@ closedir($DIR);
return @rv;
}
# create_atjob(user, time, commands, directory, send-email)
# create_atjob(user, time, command, directory, send-email)
# Create a new at job that runs the given command at the given time
sub create_atjob
{
my @tm = localtime($_[1]);
my ($user, $attime, $cmd, $dir, $email) = @_;
my @tm = localtime($attime);
my $date = sprintf "%2.2d:%2.2d %d.%d.%d",
$tm[2], $tm[1], $tm[3], $tm[4]+1, $tm[5]+1900;
my $mailflag = $_[4] ? "-m" : "";
my $cmd = "cd ".quotemeta($_[3])." ; at $mailflag $date";
my @uinfo = getpwnam($_[0]);
my $mailflag = $email ? "-m" : "";
my $atcmd = "cd ".quotemeta($dir)." ; at $mailflag $date";
my @uinfo = getpwnam($user);
if ($uinfo[2] != $<) {
# Only SU if we are not already the user
$cmd = &command_as_user($_[0], 0, $cmd);
$atcmd = &command_as_user($user, 0, $atcmd);
}
no strict "subs";
&open_execute_command(AT, "$cmd >/dev/null 2>&1", 0);
print AT $_[2];
&open_execute_command(AT, "$atcmd >/dev/null 2>&1", 0);
print AT $cmd,"\n";
close(AT);
use strict "subs";
&additional_log('exec', undef, $cmd);
&additional_log('exec', undef, $atcmd);
}
# delete_atjob(id)
@@ -57,3 +59,14 @@ sub delete_atjob
&system_logged("atrm ".quotemeta($_[0])." >/dev/null 2>&1");
}
# get_init_name()
# Returns the name of the bootup action for atd, if there is one
sub get_init_name
{
&foreign_require("init");
if (&init::action_status("atd") != 0) {
return "atd";
}
return undef;
}

View File

@@ -18,11 +18,8 @@ if ($type eq "job") {
elsif ($type eq "jobs") {
return &text('log_'.$action.'_jobs', $object);
}
elsif ($action eq 'allow') {
return $text{'log_allow'};
}
else {
return undef;
return $text{'log_'.$action};
}
}

13
at/start.cgi Executable file
View File

@@ -0,0 +1,13 @@
#!/usr/local/bin/perl
# Start the atd server
require './at-lib.pl';
&error_setup($text{'start_err'});
&foreign_require("init");
my $init = &get_init_name();
my ($ok, $err) = &init::start_action($init);
&error($err) if (!$ok);
&webmin_log("start");
&redirect("");

13
at/stop.cgi Executable file
View File

@@ -0,0 +1,13 @@
#!/usr/local/bin/perl
# Stop the atd server
require './at-lib.pl';
&error_setup($text{'stop_err'});
&foreign_require("init");
my $init = &get_init_name();
my ($ok, $err) = &init::stop_action($init);
&error($err) if (!$ok);
&webmin_log("stop");
&redirect("");

View File

@@ -299,7 +299,8 @@ if ($mode == 0) {
$file = &date_subs($path);
}
else {
$file = &transname();
my $ext = &has_command("gzip") ? '.tar.gz' : '.tar';
$file = &transname_timestamped("backup", $ext);
}
# Get module descriptions

View File

@@ -67,12 +67,12 @@ our @dnssec_dlv_key = ( 257, 3, 5, '"BEAAAAPHMu/5onzrEE7z1egmhg/WPO0+juoZrW3euWE
my $rand_flag;
if ($gconfig{'os_type'} =~ /-linux$/ &&
-r "/dev/urandom" &&
!$config{'force_random'} &&
-r "/dev/urandom" &&
!$config{'force_random'} &&
$bind_version &&
&compare_version_numbers($bind_version, '9.14') < 0) {
# Version: 9.14.2 deprecated the use of -r option
# in favor of using /dev/random [bugs:#5370]
$bind_version < '9.14') {
$rand_flag = "-r /dev/urandom";
}
@@ -103,7 +103,7 @@ sub get_bind_version
{
if (&has_command($config{'named_path'})) {
my $out = &backquote_command("$config{'named_path'} -v 2>&1");
if ($out =~ /(bind|named)\s+([0-9\.]+)/i) {
if ($out && $out =~ /(bind|named)\s+([0-9\.]+)/i) {
return $2;
}
}
@@ -3600,7 +3600,8 @@ foreach my $f (readdir(ZONEDIR)) {
$rv->{'public'} = $pub->{'values'}->[3];
$rv->{'values'} = $pub->{'values'};
$rv->{'publictext'} = &read_file_contents("$dir/$f");
while($rv->{'publictext'} =~ s/^;.*\r?\n//) { }
while($rv->{'publictext'} =~ s/^;.*\r?\n//) { };
$rv->{'publictext'} = format_dnssec_public_key($rv->{'publictext'});
}
elsif ($f =~ /^K\Q$dom\E\.\+(\d+)\+(\d+)\.private$/) {
# Found the private key file
@@ -4279,5 +4280,16 @@ my $view = $zone->{'view'};
return $view ? &text('master_inview', $desc, $view) : $desc;
}
# format_dnssec_public_key(pubkey)
# Format public dnssec public key, each on new line
sub format_dnssec_public_key
{
my ($pubkey) = @_;
my @krvalues = split(/\s+/, $pubkey);
my @kvalues = @krvalues[0..5];
my $kvspace = " " x length("@kvalues");
return join(" ", @kvalues) . " " . join("\n$kvspace ", splice(@krvalues, 6));
}
1;

View File

@@ -16,7 +16,7 @@ my $desc = &ip6int_to_net(&arpa_to_ip($zone->{'name'}));
&ui_print_header($desc, $text{'check_title'}, "",
undef, undef, undef, undef, &restart_links($zone));
my $file = &make_chroot($zone->{'file'});
my $file = &make_chroot(&absolute_path($zone->{'file'}));
my @errs = &check_zone_records($zone);
if (@errs) {
# Show list of errors

View File

@@ -39,3 +39,4 @@ checkconf=named-checkconf
other_slaves=1
force_random=0
spf_record=0
pid_file=/var/run/named/pid

View File

@@ -38,20 +38,20 @@ if (@keyrecs) {
my $kt = $key->{'ksk'} ? 'ksk' : 'zone';
my ($keyrec) = grep { $_->{'values'}->[0] ==
($key->{'ksk'} ? 257 : 256) } @keyrecs;
my $keyline = join(" ", $keyrec->{'name'}, $keyrec->{'class'},
$keyrec->{'type'},
join("", @{$keyrec->{'values'}}));
my $keyline = format_dnssec_public_key(
join(" ", $keyrec->{'name'}, $keyrec->{'class'},
$keyrec->{'type'}, @{$keyrec->{'values'}}));
print &ui_hidden_start($text{'zonekey_expand'.$kt},
$kt, 0, "edit_zonekey.cgi?$in");
print $text{'zonekey_public'},"<br>\n";
print &ui_textarea("keyline", $keyline, 2, 80, "off", 0,
print &ui_textarea("keyline", $keyline, 4, 80, "off", 0,
"readonly style='width:90%'"),"<br>\n";
print &text('zonekey_publicfile',
"<tt>$key->{'publicfile'}</tt>"),"<p>\n";
print $text{'zonekey_private'},"<br>\n";
print &ui_textarea(
"private", $key->{'privatetext'}, 8, 80,
"private", $key->{'privatetext'}, 14, 80,
"off", 0, "readonly style='width:90%'"),"<br>\n";
print &text('zonekey_privatefile',
"<tt>$key->{'privatefile'}</tt>"),"<br>\n";
@@ -101,7 +101,7 @@ else {
# Key algorithm
print &ui_table_row($text{'zonekey_alg'},
&ui_select("alg", "RSASHA1",
&ui_select("alg", "RSASHA256",
[ &list_dnssec_algorithms() ]));
# Key size

View File

@@ -86,6 +86,8 @@ else {
&flush_file_lines();
&set_ownership($config{'rndc_conf'});
# MacOS specific fix - remove include for /etc/rndc.key , which we don't need
my $lref = &read_file_lines($cfile);
for(my $i=0; $i<@$lref; $i++) {

View File

@@ -24,6 +24,7 @@ else {
}
&ui_print_header(undef, $text{'add_title'}, "");
print "<b>$msg</b><p>\n";
# Setup error handler for down hosts

View File

@@ -13,23 +13,23 @@ use WebminCore;
# Returns a list of all hosts whose users are being managed by this module
sub list_useradmin_hosts
{
local %smap = map { $_->{'id'}, $_ } &list_servers();
local $hdir = "$module_config_directory/hosts";
opendir(DIR, $hdir);
local ($h, @rv);
foreach $h (readdir(DIR)) {
my %smap = map { $_->{'id'}, $_ } &list_servers();
my $hdir = "$module_config_directory/hosts";
my @rv;
opendir(DIR, $hdir) || return ();
foreach my $h (readdir(DIR)) {
next if ($h eq "." || $h eq ".." || !-d "$hdir/$h");
local %host = ( 'id', $h );
my %host = ( 'id', $h );
next if (!$smap{$h}); # underlying server was deleted
opendir(UDIR, "$hdir/$h");
foreach $f (readdir(UDIR)) {
if ($f =~ /^(\S+)\.user$/) {
local %user;
my %user;
&read_file("$hdir/$h/$f", \%user);
push(@{$host{'users'}}, \%user);
}
elsif ($f =~ /^(\S+)\.group$/) {
local %group;
my %group;
&read_file("$hdir/$h/$f", \%group);
push(@{$host{'groups'}}, \%group);
}
@@ -44,32 +44,34 @@ return @rv;
# save_useradmin_host(&host)
sub save_useradmin_host
{
local $hdir = "$module_config_directory/hosts";
local %oldfile;
my ($host) = @_;
my $hdir = "$module_config_directory/hosts";
my %oldfile;
mkdir($hdir, 0700);
if (-d "$hdir/$_[0]->{'id'}") {
opendir(DIR, "$hdir/$_[0]->{'id'}");
map { $oldfile{$_}++ } readdir(DIR);
if (-d "$hdir/$host->{'id'}") {
opendir(DIR, "$hdir/$host->{'id'}");
%oldfile = map { $_, 1 } readdir(DIR);
closedir(DIR);
}
else {
mkdir("$hdir/$_[0]->{'id'}", 0700);
mkdir("$hdir/$host->{'id'}", 0700);
}
foreach $u (@{$_[0]->{'users'}}) {
&write_file("$hdir/$_[0]->{'id'}/$u->{'user'}.user", $u);
foreach my $u (@{$host->{'users'}}) {
&write_file("$hdir/$host->{'id'}/$u->{'user'}.user", $u);
delete($oldfile{"$u->{'user'}.user"});
}
foreach $g (@{$_[0]->{'groups'}}) {
&write_file("$hdir/$_[0]->{'id'}/$g->{'group'}.group", $g);
foreach my $g (@{$host->{'groups'}}) {
&write_file("$hdir/$host->{'id'}/$g->{'group'}.group", $g);
delete($oldfile{"$g->{'group'}.group"});
}
unlink(map { "$hdir/$_[0]->{'id'}/$_" } keys %oldfile);
unlink(map { "$hdir/$host->{'id'}/$_" } keys %oldfile);
}
# delete_useradmin_host(&host)
sub delete_useradmin_host
{
system("rm -rf '$module_config_directory/hosts/$_[0]->{'id'}'");
my ($host) = @_;
&unlink_file("$module_config_directory/hosts/$host->{'id'}");
}
# list_servers()
@@ -77,7 +79,7 @@ system("rm -rf '$module_config_directory/hosts/$_[0]->{'id'}'");
# managed, plus this server
sub list_servers
{
local @servers = &servers::list_servers_sorted();
my @servers = &servers::list_servers_sorted();
return ( &servers::this_server(), grep { $_->{'user'} } @servers );
}
@@ -86,6 +88,7 @@ return ( &servers::this_server(), grep { $_->{'user'} } @servers );
# parent dirs
sub auto_home_dir
{
my ($base, $user) = @_;
if ($uconfig{'home_style'} == 0) {
return $_[0]."/".$_[1];
}
@@ -105,99 +108,90 @@ elsif ($uconfig{'home_style'} == 3) {
# server_name(&server)
sub server_name
{
return $_[0]->{'desc'} ? $_[0]->{'desc'} : $_[0]->{'host'};
my ($server) = @_;
return $server->{'desc'} || $server->{'host'};
}
# supports_gothers(&server)
# Returns 1 if some server supports group syncing, 0 if not
sub supports_gothers
{
local $vers = $remote_server_version{$_[0]->{'host'}} ||
&remote_foreign_call($_[0]->{'host'}, "useradmin",
"get_webmin_version");
my ($server) = @_;
my $vers = $remote_server_version{$server->{'host'}} ||
&remote_foreign_call($server->{'host'}, "useradmin",
"get_webmin_version");
return $vers >= 1.090;
}
# create_on_input(desc, [no-donthave], [multiple])
# create_on_input([no-donthave], [multiple])
# Returns a selector for a server or group to create users on
sub create_on_input
{
local @hosts = &list_useradmin_hosts();
local @servers = &list_servers();
if ($_[0]) {
print "<tr> <td><b>$_[0]</b></td>\n";
print "<td colspan=2>\n";
}
if ($_[2]) {
print "<select name=server size=5 multiple>\n";
}
else {
print "<select name=server>\n";
}
print "<option value=-1>$text{'uedit_all'}</option>\n";
print "<option value=-2>$text{'uedit_donthave'}</option>\n" if (!$_[1]);
local @groups = &servers::list_all_groups(\@servers);
local $h;
my ($nodont, $mul) = @_;
my @hosts = &list_useradmin_hosts();
my @servers = &list_servers();
my @opts = ( [ -1, $text{'uedit_all'} ] );
push(@opts, [ -2, $text{'uedit_donthave'} ] ) if (!$nodont);
my @groups = &servers::list_all_groups(\@servers);
my $h;
foreach $h (@hosts) {
local ($s) = grep { $_->{'id'} == $h->{'id'} } @servers;
my ($s) = grep { $_->{'id'} == $h->{'id'} } @servers;
if ($s) {
print "<option value='$s->{'id'}'>",
$s->{'desc'} ? $s->{'desc'} : $s->{'host'},"</option>\n";
push(@opts, [ $s->{'id'}, &server_name($s) ]);
$gothost{$s->{'host'}}++;
}
}
local $g;
foreach $g (@groups) {
local ($found, $m);
foreach my $g (@groups) {
my ($found, $m);
foreach $m (@{$g->{'members'}}) {
($found++, last) if ($gothost{$m});
$found++ if ($gothost{$m});
}
print "<option value='group_$g->{'name'}'>",
&text('uedit_group', $g->{'name'}),"</option>\n" if ($found);
push(@opts, [ "group_$g->{'name'}",
&text('uedit_group', $g->{'name'}) ]) if ($found);
}
print "</select>\n";
if ($_[0]) {
print "</td> </tr>\n";
}
return &ui_select("server", undef, \@opts, $mul ? 5 : 1, $mul);
}
# create_on_parse(prefix, &already, name, [no-print])
# Returns a list of selected hosts from an input created by create_on_input
sub create_on_parse
{
local @allhosts = &list_useradmin_hosts();
local @servers = &list_servers();
local @hosts;
local $server;
my ($pfx, $already, $name, $noprint) = @_;
my @allhosts = &list_useradmin_hosts();
my @servers = &list_servers();
my @hosts;
my $server;
foreach $server (split(/\0/, $in{'server'})) {
if ($server == -2) {
# Check who has it already
local %already = map { $_->{'id'}, 1 } @{$_[1]};
my %already = map { $_->{'id'}, 1 } @$already;
push(@hosts, grep { !$already{$_->{'id'}} } @allhosts);
print "<b>",&text($_[0].'3', $_[2]),"</b><p>\n" if (!$_[3]);
print "<b>",&text($pfx.'3', $name),"</b><p>\n" if (!$noprint);
}
elsif ($server =~ /^group_(.*)/) {
# Install on members of some group
local ($group) = grep { $_->{'name'} eq $1 }
my ($group) = grep { $_->{'name'} eq $1 }
&servers::list_all_groups(\@servers);
push(@hosts, grep { local $hid = $_->{'id'};
local ($s) = grep { $_->{'id'} == $hid } @servers;
push(@hosts, grep { my $hid = $_->{'id'};
my ($s) = grep { $_->{'id'} == $hid } @servers;
&indexof($s->{'host'}, @{$group->{'members'}}) >= 0 }
@allhosts);
print "<b>",&text($_[0].'4', $_[2], $group->{'name'}),
"</b><p>\n" if (!$_[3]);
print "<b>",&text($pfx.'4', $name, $group->{'name'}),
"</b><p>\n" if (!$noprint);
}
elsif ($server != -1) {
# Just install on one host
local ($onehost) = grep { $_->{'id'} == $server } @allhosts;
my ($onehost) = grep { $_->{'id'} == $server } @allhosts;
push(@hosts, $onehost);
local ($s) = grep { $_->{'id'} == $onehost->{'id'} } @servers;
print "<b>",&text($_[0].'5', $_[2],
&server_name($s)),"</b><p>\n" if (!$_[3]);
my ($s) = grep { $_->{'id'} == $onehost->{'id'} } @servers;
print "<b>",&text($pfx.'5', $name,
&server_name($s)),"</b><p>\n" if (!$noprint);
}
else {
# Installing on every host
push(@hosts, @allhosts);
print "<b>",&text($_[0], join(" ", @names)),
"</b><p>\n" if (!$_[3]);
print "<b>",&text($pfx, join(" ", @names)),
"</b><p>\n" if (!$noprint);
}
}
return &unique(@hosts);

View File

@@ -1,11 +1,11 @@
line1=Display Options,11
sort_mode=Sort hosts by,1,1-Hostname,0-Order added,2-Description
table_mode=Show hosts as,1,1-Table,0-Icons
conf_host_links=Provide a link to modify host,1,1-Yes,0-No
conf_host_links=Provide a link to modify hosts?,1,1-Yes,0-No
line2=Users and Groups Options,11
conf_add_user=Allow user add,1,1-Yes,0-No
conf_add_group=Allow group add,1,1-Yes,0-No
conf_find_user=Allow user database searching,1,1-Yes,0-No
conf_find_group=Allow group database searching,1,1-Yes,0-No
conf_allow_refresh=Allow refresh of user and group lists,1,1-Yes,0-No
conf_allow_sync=Allow server synchronization,1,1-Yes,0-No
conf_add_user=Allow user add?,1,1-Yes,0-No
conf_add_group=Allow group add?,1,1-Yes,0-No
conf_find_user=Allow user database searching?,1,1-Yes,0-No
conf_find_group=Allow group database searching?,1,1-Yes,0-No
conf_allow_refresh=Allow refresh of user and group lists?,1,1-Yes,0-No
conf_allow_sync=Allow server synchronization?,1,1-Yes,0-No

View File

@@ -12,83 +12,63 @@ $server = &foreign_call("servers", "get_server", $in{'id'});
@packages = @{$host->{'packages'}};
# Show host details
print "<table border width=100%>\n";
print "<tr $tb> <td><b>$text{'host_header'}</b></td> </tr>\n";
print "<tr $cb> <td><table width=100%>\n";
print &ui_table_start($text{'host_header'}, undef, 4);
print "<tr> <td><b>$text{'host_name'}</b></td>\n";
my $hmsg;
if ($server->{'id'}) {
print "<td>";
printf &ui_link("/servers/link.cgi/%s/","%s"),
$server->{'id'},
$hmsg = &ui_link("/servers/link.cgi/$server->{'id'}/",
$server->{'desc'} ?
"$server->{'desc'} ($server->{'host'}:$server->{'port'})" :
"$server->{'host'}:$server->{'port'}";
print "</td>";
"$server->{'desc'} ($server->{'host'}:$server->{'port'})" :
"$server->{'host'}:$server->{'port'}");
}
else {
print "<td colspan=3><a href=/>$text{'this_server'}</a></td>\n";
$hmsg = &ui_link("/", $text{'this_server'});
}
print &ui_table_row($text{'host_name'}, $hmsg, 3);
if ($server->{'id'}) {
print "<td><b>$text{'host_type'}</b></td> <td>\n";
foreach $t (@servers::server_types) {
print $t->[1] if ($t->[0] eq $server->{'type'});
}
print "</td>\n";
my ($t) = grep { $_->[0] eq $server->{'type'} } @servers::server_types;
print &ui_table_row($text{'host_type'}, $t ? $t->[1] : "");
}
print "</tr>\n";
print "<tr> <td><b>$text{'host_users'}</b></td>\n";
printf "<td>%d</td>\n", scalar(@{$host->{'users'}});
print &ui_table_row($text{'host_users'},
scalar(@{$host->{'users'}}));
print "<td><b>$text{'host_groups'}</b></td>\n";
printf "<td>%d</td> </tr>\n", scalar(@{$host->{'groups'}});
print &ui_table_row($text{'host_groups'},
scalar(@{$host->{'groups'}}));
print "</table></td></tr></table>\n";
print &ui_table_end();
# Show delete and refresh buttons
print "<p><table width=100%><tr>\n";
print &ui_buttons_start();
print "<td><form action=delete_host.cgi>\n";
print "<input type=hidden name=id value=$in{'id'}>\n";
print "<input type=submit value='$text{'host_delete'}'>\n";
print "</form></td>\n";
print &ui_buttons_row("delete_host.cgi", $text{'host_delete'}, undef,
[ [ "id", $in{'id'} ] ]);
print "<td align=right><form action=refresh.cgi>\n";
print "<input type=hidden name=id value=$in{'id'}>\n";
print "<input type=submit value='$text{'host_refresh'}'>\n";
print "</form></td>\n";
print &ui_buttons_row("refresh.cgi", $text{'host_refresh'}, undef,
[ [ "id", $in{'id'} ] ]);
print "</tr></table>\n";
print &ui_buttons_end();
# Show users and groups
print &ui_hr();
print &ui_subheading($text{'host_ulist'});
print "<table width=100% border>\n";
print "<tr $tb> <td><b>$text{'index_users'}</b></td> </tr>\n";
print "<tr $cb> <td><table width=100%>\n";
foreach $u (@{$host->{'users'}}) {
if ($i%4 == 0) { print "<tr>\n"; }
print "<td><a href=\"edit_user.cgi?user=$u->{'user'}&",
"host=$server->{'id'}\">$u->{'user'}</a></td>\n";
if ($i%4 == 3) { print "</tr>\n"; }
$i++;
print &ui_table_start($text{'host_users'}, undef, 2);
my @ugrid;
foreach my $u (@{$host->{'users'}}) {
push(@ugrid, &ui_link("edit_user.cgi?user=".&urlize($u->{'user'}).
"&host=".&urlize($server->{'id'}), $u->{'user'}));
}
print "</table></td> </tr></table>\n";
print &ui_table_row(undef, &ui_grid_table(\@ugrid, 4), 2);
print &ui_table_end();
print &ui_subheading($text{'host_glist'});
print "<table width=100% border>\n";
print "<tr $tb> <td><b>$text{'index_groups'}</b></td> </tr>\n";
print "<tr $cb> <td><table width=100%>\n";
print &ui_table_start($text{'host_groups'}, undef, 2);
my @ggrid;
foreach $g (@{$host->{'groups'}}) {
if ($j%4 == 0) { print "<tr>\n"; }
print "<td><a href=\"edit_group.cgi?group=$g->{'group'}&",
"host=$server->{'id'}\">$g->{'group'}</a></td>\n";
if ($j%4 == 3) { print "</tr>\n"; }
$j++;
push(@ggrid, &ui_link("edit_group.cgi?group=".&urlize($g->{'group'}).
"&host=".&urlize($server->{'id'}), $g->{'group'}));
}
print "</table></td> </tr></table>\n";
print &ui_table_row(undef, &ui_grid_table(\@ggrid, 4), 2);
print &ui_table_end();
&ui_print_footer("", $text{'index_return'});

View File

@@ -50,7 +50,8 @@ print "<td><input type=radio name=others value=1 checked> $text{'yes'}</td>\n";
print "<td><input type=radio name=others value=0> $text{'no'}</td> </tr>\n";
# Show server selection input
&create_on_input($text{'uedit_servers'});
print "<tr> <td>$text{'uedit_servers'}</td> ",
"<td>",&create_on_input(),"</td> </tr>\n";
print "</table></td> </tr></table><p></p><p></p>\n";

View File

@@ -27,9 +27,8 @@ foreach $h (@hosts) {
push(@titles, $s->{'desc'} ? $s->{'desc'}
: "$s->{'host'}:$s->{'port'}");
push(@links, $link);
push(@icons, $gconfig{'webprefix'} ?
($gconfig{'webprefix'}."/servers/images/".$s->{'type'}.".gif") :
("../servers/images/".$s->{'type'}.".gif"));
push(@icons, $gconfig{'webprefix'}."/servers/images/".
$s->{'type'}.".gif");
push(@installed, @{$h->{'packages'}});
$gothost{$h->{'id'}}++;
}
@@ -47,7 +46,8 @@ if (@links) {
local ($type) = grep { $_->[0] eq $s->{'type'} }
@servers::server_types;
local ($link) = $config{'conf_host_links'} ?
&ui_link("edit_host.cgi?id=$h->{'id'}",($s->{'host'} || &get_system_hostname())) :
&ui_link("edit_host.cgi?id=$h->{'id'}",
($s->{'host'} || &get_system_hostname())) :
($s->{'host'} || &get_system_hostname());
print &ui_columns_row([
$link,
@@ -67,39 +67,40 @@ if (@links) {
else {
print "<b>$text{'index_nohosts'}</b><p>\n";
}
$formno++;
print "<form data-post-icon-row-submit action=add.cgi>\n";
print "<table width=100%><tr>\n";
@addservers = grep { !$gothost{$_->{'id'}} } @servers;
print &ui_buttons_start();
# Add one server
my @addservers = grep { !$gothost{$_->{'id'}} } @servers;
if (@addservers) {
print "<td><input type=submit name=add value='$text{'index_add'}'>\n";
print "<select name=server>\n";
foreach $s (@addservers) {
print "<option value=$s->{'id'}>",
$s->{'desc'} ? $s->{'desc'} : $s->{'host'},"</option>\n";
}
print "</select></td>\n";
print &ui_buttons_row("add.cgi", $text{'index_add'}, undef,
[ [ "add", 1 ] ],
&ui_select("server", undef,
[ map { [ $_->{'id'}, &server_name($_) ] }
@addservers ]));
}
# Add one group
@groups = &servers::list_all_groups(\@servers);
if (@groups) {
print "<td align=right><input type=submit name=gadd ",
"value='$text{'index_gadd'}'>\n";
print "<select name=group>\n";
foreach $g (@groups) {
print "<option>$g->{'name'}</option>\n";
}
print "</select></td>\n";
print &ui_buttons_row("add.cgi", $text{'index_gadd'}, undef,
[ [ "gadd", 1 ] ],
&ui_select("group", undef,
[ map { $_->{'name'} } @groups ]));
}
print "</tr></table></form>\n";
if ($config{'conf_add_user'} == 0 &&
$config{'conf_add_group'} == 0 &&
$config{'conf_allow_refresh'} == 0 &&
$config{'conf_allow_sync'} == 0 &&
$config{'conf_find_user'} == 0 &&
$config{'conf_find_group'} == 0) {
# If we have configured EVERY possible 'host' action off, then don't show
# the header/horizontal-rule/etc...
print &ui_buttons_end();
if (!$config{'conf_add_user'} &&
!$config{'conf_add_group'} &&
!$config{'conf_allow_refresh'} &&
!$config{'conf_allow_sync'} &&
!$config{'conf_find_user'} &&
!$config{'conf_find_group'}) {
# If we have configured EVERY possible 'host' action off, then don't
# show the header/horizontal-rule/etc...
@hosts = ();
}
@@ -108,126 +109,73 @@ if (@hosts) {
print &ui_hr();
print &ui_subheading($text{'index_users'});
print "<table width=100%>";
if ($config{'conf_find_user'} == 1 ||
$config{'conf_add_user'} == 1) {
print "<tr>\n";
}
if ($config{'conf_find_user'} == 1) {
print "<td>\n";
print "<form action=search_user.cgi>\n";
print "<b>$text{'index_finduser'}</b> <select name=field>\n";
print "<option value=user checked>$text{'user'}</option>\n";
print "<option value=real>$text{'real'}</option>\n";
print "<option value=shell>$text{'shell'}</option>\n";
print "<option value=home>$text{'home'}</option>\n";
print "<option value=uid>$text{'uid'}</option>\n";
print "</select> <select name=match>\n";
print "<option value=0 checked>$text{'index_equals'}";
print "</option>\n";
print "<option value=4>$text{'index_contains'}</option>\n";
print "<option value=1>$text{'index_matches'}</option>\n";
print "<option value=5>$text{'index_ncontains'}</option>\n";
print "<option value=3>$text{'index_nmatches'}</option>\n";
print "</select> <input name=what size=15>&nbsp;&nbsp;\n";
print "<input type=submit value=\"$text{'find'}\"></form>\n";
print "</td>\n";
}
print &ui_buttons_start();
if ($config{'conf_add_user'} == 1 &&
$config{'conf_find_user'} == 1) {
print "<td align=right>\n";
}
elsif ($config{'conf_add_user'} == 1) {
print "<td>\n";
}
if ($config{'conf_add_user'} == 1) {
print "<form action=user_form.cgi>\n";
print "<input type=hidden name=new value=1>\n";
print "<input type=submit value='$text{'index_newuser'}'>\n";
print "</form>\n";
print "</td>\n";
}
if ($config{'conf_find_user'} == 1 ||
$config{'conf_add_user'} == 1) {
print "</tr>\n";
}
if ($config{'conf_find_user'}) {
print &ui_buttons_row(
"search_user.cgi",
$text{'index_finduser'},
undef,
undef,
&ui_select("field", "user",
[ [ "user", $text{'user'} ],
[ "real", $text{'real'} ],
[ "shell", $text{'shell'} ],
[ "home", $text{'home'} ],
[ "uid", $text{'uid'} ] ])." ".
&ui_select("match", 0,
[ [ 0, $text{'index_equals'} ],
[ 4, $text{'index_contains'} ],
[ 1, $text{'index_matches'} ],
[ 5, $text{'index_ncontains'} ],
[ 3, $text{'index_nmatches'} ] ])." ".
&ui_textbox("what", undef, 15));
}
if ($config{'conf_find_group'} == 1 ||
$config{'conf_add_group'} == 1) {
print "<tr>\n";
}
if ($config{'conf_find_group'} == 1) {
print "<td>\n";
print "<form action=search_group.cgi>";
print "<b>$text{'index_findgroup'}</b> <select name=field>\n";
print "<option value=group checked>$text{'gedit_group'}";
print "</option>\n";
print "<option value=members>$text{'gedit_members'}";
print "</option>\n";
print "<option value=gid>$text{'gedit_gid'}</option>\n";
print "</select> <select name=match>\n";
print "<option value=0 checked>$text{'index_equals'}";
print "</option>\n";
print "<option value=4>$text{'index_contains'}</option>\n";
print "<option value=1>$text{'index_matches'}</option>\n";
print "<option value=5>$text{'index_ncontains'}</option>\n";
print "<option value=3>$text{'index_nmatches'}</option>\n";
print "</select> <input name=what size=15>&nbsp;&nbsp;\n";
print "<input type=submit value=\"$text{'find'}\">";
print "</form>\n";
print "</td>";
}
if ($config{'conf_find_group'}) {
print &ui_buttons_row(
"search_group.cgi",
$text{'index_findgroup'},
undef,
undef,
&ui_select("field", "group",
[ [ "group", $text{'gedit_group'} ],
[ "members", $text{'gedit_members'} ],
[ "gid", $text{'gid'} ] ])." ".
&ui_select("match", 0,
[ [ 0, $text{'index_equals'} ],
[ 4, $text{'index_contains'} ],
[ 1, $text{'index_matches'} ],
[ 5, $text{'index_ncontains'} ],
[ 3, $text{'index_nmatches'} ] ])." ".
&ui_textbox("what", undef, 15));
}
if ($config{'conf_add_group'} == 1 &&
$config{'conf_find_group'} == 1) {
print "<td align=right>\n";
}
elsif ($config{'conf_add_group'} == 1) {
print "<td>\n";
}
if ($config{'conf_add_group'} == 1) {
print "<form action=group_form.cgi>\n";
print "<input type=hidden name=new value=1>\n";
print "<input type=submit value='$text{'index_newgroup'}'>\n";
print "</form></td>\n";
}
if ($config{'conf_find_group'} == 1 ||
$config{'conf_add_group'} == 1) {
print "</tr>\n";
}
if ($config{'conf_add_user'}) {
print &ui_buttons_row("user_form.cgi",
$text{'index_newuser'},
undef,
[ [ "new", 1 ] ]);
}
if ($config{'conf_allow_refresh'} == 1 ||
$config{'conf_allow_sync'} == 1) {
print "<tr>\n";
}
if ($config{'conf_allow_refresh'} == 1) {
print "<td>\n";
print "<form action=refresh.cgi>\n";
print "<input type=submit value='$text{'index_refresh'}'>\n";
&create_on_input(undef, 1);
print "</form>\n";
print "</td>\n";
}
if ($config{'conf_add_group'}) {
print &ui_buttons_row("group_form.cgi",
$text{'index_newgroup'},
undef,
[ [ "new", 1 ] ]);
}
if ($config{'conf_allow_refresh'} == 1 &&
$config{'conf_allow_sync'} == 1) {
print "<td align=right>";
if ($config{'conf_allow_refresh'}) {
print &ui_buttons_row("refresh.cgi",
$text{'index_refresh'}, undef, undef,
&create_on_input(1));
}
if ($config{'conf_allow_sync'}) {
print &ui_buttons_row("sync_form.cgi", $text{'index_sync'});
}
print &ui_buttons_end();
}
else {
print "<td>";
}
if ($config{'conf_allow_sync'} == 1) {
print "<form action=sync_form.cgi>\n";
print "<input type=submit value='$text{'index_sync'}'>\n";
print "</form>\n";
print "</td>\n";
}
if ($config{'conf_allow_refresh'} == 1 ||
$config{'conf_allow_sync'} == 1) {
print "</tr>\n";
}
print "</table>\n";
}
&ui_print_footer("/", $text{'index'});

View File

@@ -29,16 +29,16 @@ add_egft=Server $1 does not use the same group file format as this host
add_ok=Added $1 with $2 users and $3 groups.
host_title=Managed Server
host_header=Software managed server details
host_header=Users and groups managed server details
host_name=Host name
host_type=Server type
host_delete=Remove From Managed List
host_refresh=Refresh Users and Groups
host_users=Number of users
host_groups=Number of groups
host_ulist=Users on Server
host_glist=Groups on Server
host_return=server details
host_users=Users on Server
host_groups=Groups on Server
refresh_title=Refresh Users and Groups
refresh_header=Re-requesting user and group lists from all servers ..

View File

@@ -7,68 +7,55 @@ require './cluster-useradmin-lib.pl';
&ui_print_header(undef, $text{'sync_title'}, "");
print "$text{'sync_desc'}<p>\n";
print "<form action=sync.cgi>\n";
print "<table width='100%'>\n";
print "<tr> <td valign=top><b>$text{'sync_hosts'}</b></td> <td>\n";
&create_on_input(undef, 1, 1);
print "</td> </tr>\n";
print &ui_form_start("sync.cgi", "post");
print &ui_table_start($text{'sync_hosts'}, undef, 2);
print "<tr> <td valign=top><b>$text{'sync_users'}</b></td> <td>\n";
print "<input type=radio name=users_mode value=1> ",
"$text{'sync_uall'}&nbsp;&nbsp;\n";
print "<input type=radio name=users_mode value=0 checked> ",
"$text{'sync_unone'}<br>\n";
print "<input type=radio name=users_mode value=2> ",
"$text{'sync_usel'}\n";
print "<input name=usel size=30> ",&user_chooser_button("usel", 1),"<br>\n";
print "<input type=radio name=users_mode value=3> ",
"$text{'sync_unot'}\n";
print "<input name=unot size=30> ",&user_chooser_button("unot", 1),"<br>\n";
print "<input type=radio name=users_mode value=4> ",
"$text{'sync_uuid'}\n";
print "<input name=uuid1 size=6> - <input name=uuid2 size=6><br>\n";
print "<input type=radio name=users_mode value=5> ",
"$text{'sync_ugid'}\n";
print &unix_group_input("ugid"),"<br>\n";
print "</td> </tr>\n";
# Hosts to sync
print &ui_table_row($text{'sync_hosts'},
&create_on_input(1, 1));
print "<tr> <td valign=top><b>$text{'sync_groups'}</b></td> <td>\n";
print "<input type=radio name=groups_mode value=1> ",
"$text{'sync_gall'}&nbsp;&nbsp;\n";
print "<input type=radio name=groups_mode value=0 checked> ",
"$text{'sync_gnone'}<br>\n";
print "<input type=radio name=groups_mode value=2> ",
"$text{'sync_gsel'}\n";
print "<input name=gsel size=30> ",&group_chooser_button("gsel", 1),"<br>\n";
print "<input type=radio name=groups_mode value=3> ",
"$text{'sync_gnot'}\n";
print "<input name=gnot size=30> ",&group_chooser_button("gnot", 1),"<br>\n";
print "<input type=radio name=groups_mode value=4> ",
"$text{'sync_ggid'}\n";
print "<input name=ggid1 size=6> - <input name=ggid2 size=6><br>\n";
print "</td> </tr>\n";
# Users to sync
print &ui_table_row($text{'sync_users'},
&ui_radio_table("users_mode", 0,
[ [ 1, $text{'sync_uall'} ],
[ 0, $text{'sync_unone'} ],
[ 2, $text{'sync_usel'}, &ui_users_textbox("usel") ],
[ 3, $text{'sync_unot'}, &ui_users_textbox("unot") ],
[ 4, $text{'sync_uuid'}, &ui_textbox("uuid1", "", 6)." - ".
&ui_textbox("uuid2", "", 6) ],
[ 5, $text{'sync_ugid'}, &ui_group_textbox("ugid") ],
]));
print "<tr> <td><b>$text{'sync_test'}</b></td>\n";
print "<td><input type=radio name=test value=1> $text{'yes'}\n";
print "<input type=radio name=test value=0 checked> $text{'no'}</td> </tr>\n";
# Groups to sync
print &ui_table_row($text{'sync_groups'},
&ui_radio_table("groups_mode", 0,
[ [ 1, $text{'sync_gall'} ],
[ 0, $text{'sync_gnone'} ],
[ 2, $text{'sync_gsel'}, &ui_groups_textbox("gsel") ],
[ 3, $text{'sync_gnot'}, &ui_groups_textbox("gnot") ],
[ 4, $text{'sync_ggid'}, &ui_textbox("ggid1", "", 6)." - ".
&ui_textbox("ggid2", "", 6) ],
]));
print "<tr> <td><b>$text{'sync_makehome'}</b></td>\n";
print "<td><input type=radio name=makehome value=1 checked> $text{'yes'}\n";
print "<input type=radio name=makehome value=0> $text{'no'}</td>\n";
print "</tr>\n";
# Test mode?
print &ui_table_row($text{'sync_test'},
&ui_yesno_radio("test", 0));
print "<tr> <td><b>$text{'sync_copy'}</b></td>\n";
print "<td><input type=radio name=copy_files value=1 checked> $text{'yes'}\n";
print "<input type=radio name=copy_files value=0> $text{'no'}</td>\n";
print "</tr>\n";
# Create home dir?
print &ui_table_row($text{'sync_makehome'},
&ui_yesno_radio("makehome", 1));
print "<tr> <td><b>$text{'sync_others'}</b></td>\n";
print "<td><input type=radio name=others value=1 checked> $text{'yes'}\n";
print "<input type=radio name=others value=0> $text{'no'}</td> </tr>\n";
# Copy home dir files?
print &ui_table_row($text{'sync_copy'},
&ui_yesno_radio("copy_files", 1));
print "</table><p></p><p></p>\n";
print "<input type=submit value='$text{'sync_ok'}'></form>\n";
# Create in other modules?
print &ui_table_row($text{'sync_others'},
&ui_yesno_radio("others", 1));
print &ui_table_end();
print &ui_form_end([ [ undef, $text{'sync_ok'} ] ]);
&ui_print_footer("", $text{'index_return'});

View File

@@ -29,243 +29,182 @@ while(<SHELLS>) {
}
close(SHELLS);
print "<form action=create_user.cgi method=post>\n";
print "<table border width=100%>\n";
print "<tr $tb> <td><b>$text{'uedit_details'}</b></td> </tr>\n";
print "<tr $cb> <td><table width=100%>\n";
print &ui_form_start("save_user.cgi", "post");
print &ui_table_start($text{'uedit_details'}, "width=100%", 2);
print "<tr> <td><b>$text{'user'}</b></td>\n";
print "<td><input name=user size=10></td>\n";
# Username
print &ui_table_row($text{'user'},
&ui_textbox("user", undef, 40));
# Find the first free UID above the base
print "<td><b>$text{'uid'}</b></td>\n";
$newuid = int($uconfig{'base_uid'});
while($used{$newuid}) {
$newuid++;
}
print "<td><input name=uid size=10 value='$newuid'></td> </tr>\n";
print &ui_table_row($text{'uid'},
&ui_textbox("uid", $newuid, 10));
# Real name and possibly other fields
if ($uconfig{'extra_real'}) {
print "<tr> <td><b>$text{'real'}</b></td>\n";
print "<td><input name=real size=20></td>\n";
print &ui_table_row($text{'real'},
&ui_textbox("real", undef, 40));
print "<td><b>$text{'office'}</b></td>\n";
print "<td><input name=office size=20 value=\"$real[1]\"></td> </tr>\n";
print &ui_table_row($text{'office'},
&ui_textbox("office", undef, 20));
print "<tr> <td><b>$text{'workph'}</b></td>\n";
print "<td><input name=workph size=20></td>\n";
print &ui_table_row($text{'workph'},
&ui_textbox("workph", undef, 20));
print "<td><b>$text{'homeph'}</b></td>\n";
print "<td><input name=homeph size=20></td> </tr>\n";
print &ui_table_row($text{'homeph'},
&ui_textbox("homeph", undef, 20));
print "<tr> <td><b>$text{'extra'}</b></td>\n";
print "<td><input name=extra size=20></td>\n";
print &ui_table_row($text{'extra'},
&ui_textbox("extra", undef, 20));
}
else {
print "<tr> <td><b>$text{'real'}</b></td>\n";
print "<td><input name=real size=20></td>\n";
print &ui_table_row($text{'real'},
&ui_textbox("real", undef, 40));
}
print "<td><b>$text{'home'}</b></td>\n";
print "<td>\n";
if ($uconfig{'home_base'}) {
printf "<input type=radio name=home_base value=1 checked> %s\n",
$text{'uedit_auto'};
printf "<input type=radio name=home_base value=0>\n";
printf "<input name=home size=25> %s\n",
&file_chooser_button("home", 1);
}
else {
print "<input name=home size=25>\n",
&file_chooser_button("home", 1);
}
print "</td> </tr>\n";
# Home directory
print &ui_table_row($text{'home'},
$uconfig{'home_base'} ?
&ui_radio("home_base", 1,
[ [ 1, $text{'uedit_auto'} ],
[ 0, &ui_filebox("home", "", 40) ] ]) :
&ui_filebox("home", "", 40));
print "<tr> <td valign=top><b>$text{'shell'}</b></td>\n";
print "<td valign=top><select name=shell>\n";
# Login shell
@shlist = &unique(@shlist);
foreach $s (@shlist) {
printf "<option value='%s'>%s</option>\n", $s,
$s eq "" ? "&lt;None&gt;" : $s;
}
print "<option value=*>$text{'uedit_other'}</option>\n";
print "</select></td>\n";
push(@shlist, [ "*", $text{'uedit_other'} ]);
print &ui_table_row($text{'shell'},
&ui_select("shell", undef, \@shlist)." ".
&ui_filebox("othersh", undef, 25));
&seed_random();
foreach (1 .. 15) {
$random_password .= $random_password_chars[
rand(scalar(@random_password_chars))];
}
print "<td valign=top rowspan=3><b>$text{'pass'}</b>",
"</td> <td rowspan=3 valign=top>\n";
printf "<input type=radio name=passmode value=0> %s<br>\n",
$uconfig{'empty_mode'} ? $text{'none1'} : $text{'none2'};
printf "<input type=radio name=passmode value=1 checked> %s<br>\n",
$text{'nologin'};
printf "<input type=radio name=passmode value=3> %s\n",
$text{'clear'};
printf "<input %s name=pass size=15 value='%s'><br>\n",
$uconfig{'passwd_stars'} ? "type=password" : "",
$uconfig{'random_password'} ? $random_password : "";
printf "<input type=radio name=passmode value=2> $text{'encrypted'}\n";
printf "<input name=encpass size=13>\n";
print "</td> </tr>\n";
# Password or locked account
$rp = $uconfig{'random_password'} ? &useradmin::generate_random_password() : "";
$pfield = $uconfig{'passwd_stars'} ? &ui_password("pass", $rp, 40)
: &ui_textbox("pass", $rp, 40);
print &ui_table_row($text{'pass'},
&ui_radio_table("passmode", 1,
[ [ 0, $uconfig{'empty_mode'} ? $text{'none1'} : $text{'none2'} ],
[ 1, $text{'nologin'} ],
[ 3, $text{'clear'}, $pfield ],
[ 2, &ui_textbox("encpass", undef, 40) ] ]));
print "<tr> <td valign=top>$text{'uedit_other'}</td>\n";
print "<td valign=top><input size=25 name=othersh>\n";
print &file_chooser_button("othersh", 0),"</td> </tr>\n";
print "<tr> <td colspan=2><br></td> </tr>\n";
print "</table></td></tr></table><p>\n";
print &ui_table_end();
$pft = &foreign_call("useradmin", "passfiles_type");
if ($pft == 1 || $pft == 6) {
# This is a BSD system.. a few extra password options are supported
print "<table border width=100%>\n";
print "<tr $tb> <td><b>$text{'uedit_passopts'}</b></td> </tr>\n";
print "<tr $cb> <td><table width=100%>\n";
print "<tr> <td><b>$text{'change2'}</b></td>\n";
print "<td>";
&date_input("", "", "", 'change');
print " &nbsp; <input name=changeh size=3>";
print ":<input name=changemi size=3></td>\n";
print &ui_table_start($text{'uedit_passopts'}, undef, 2);
print "<td colspan=1><b>$text{'expire2'}</b></td>\n";
print "<td colspan=3>";
&date_input("", "", "", 'expire');
print " &nbsp; <input name=expireh size=3>";
print ":<input name=expiremi size=3></td> </tr>\n";
print &ui_table_row($text{'change2'},
&useradmin::date_input("", "", "", 'change')." ".
&ui_textbox("changeh", "", 3).":".
&ui_textbox("changemi", "", 3));
print "<tr> <td><b>$text{'class'}</b></td>\n";
print "<td><input name=class size=10></td>\n";
print "</tr>\n";
print "</table></td></tr></table><p>\n";
print &ui_table_row($text{'expire2'},
&useradmin::date_input("", "", "", 'expire')." ".
&ui_textbox("expireh", "", 3).":".
&ui_textbox("expiremi", "", 3));
print &ui_table_row($text{'class'},
&ui_textbox("class", "", 10));
print &ui_table_end();
}
elsif ($pft == 2) {
# System has a shadow password file as well.. which means it supports
# password expiry and so on
print "<table border width=100%>\n";
print "<tr $tb> <td><b>$text{'uedit_passopts'}</b></td> </tr>\n";
print "<tr $cb> <td><table width=100%>\n";
print &ui_table_start($text{'uedit_passopts'}, undef, 2);
print "<td colspan=1><b>$text{'expire'}</b></td>\n";
print "<td colspan=3>";
&date_input($eday, $emon, $eyear, 'expire');
print "</td> </tr>\n";
print &ui_table_row($text{'expire'},
&useradmin::date_input($eday, $emon, $eyear, 'expire'));
print "<tr> <td><b>$text{'min'}</b></td>\n";
print "<td><input size=5 name=min></td>\n";
print &ui_table_row($text{'min'},
&ui_textbox("min", undef, 5));
print "<td><b>$text{'max'}</b></td>\n";
print "<td><input size=5 name=max></td></tr>\n";
print &ui_table_row($text{'max'},
&ui_textbox("max", undef, 5));
print "<tr> <td><b>$text{'warn'}</b></td>\n";
print "<td><input size=5 name=warn></td>\n";
print &ui_table_row($text{'warn'},
&ui_textbox("warn", undef, 5));
print "<td><b>$text{'inactive'}</b></td>\n";
print "<td><input size=5 name=inactive></td></tr>\n";
print &ui_table_row($text{'inactive'},
&ui_textbox("inactive", undef, 5));
print "</table></td></tr></table><p>\n";
print &ui_table_end();
}
elsif ($pft == 4) {
# This is an AIX system
print "<table border width=100%>\n";
print "<tr $tb> <td><b>$text{'uedit_passopts'}</b></td> </tr>\n";
print "<tr $cb> <td><table width=100%>\n";
print &ui_table_start($text{'uedit_passopts'}, undef, 2);
print "<tr> <td><b>$text{'expire'}</b></td>\n";
print "<td>";
&date_input("", "", "", 'expire');
print " &nbsp; <input name=expireh size=3>";
print "<b>:</b><input name=expiremi size=3></td> </tr>\n";
print &ui_table_row($text{'expire'},
&useradmin::date_input("", "", "", 'expire')." ".
&ui_textbox("expireh", undef, 3).":".
&ui_textbox("expiremi", undef, 3));
print "<tr> <td><b>$text{'min_weeks'}</b></td>\n";
print "<td><input size=5 name=min></td>\n";
print &ui_table_row($text{'min_weeks'},
&ui_textbox("min", undef, 5));
print "<td><b>$text{'max_weeks'}</b></td>\n";
print "<td><input size=5 name=max></td></tr>\n";
print &ui_table_row($text{'max_weeks'},
&ui_textbox("max", undef, 5));
print "<tr> <td valign=top><b>$text{'warn'}</b></td>\n";
print "<td valign=top><input size=5 name=warn></td>\n";
print &ui_table_row($text{'warn'},
&ui_textbox("warn", undef, 5));
print "<td valign=top><b>$text{'flags'}</b></td> <td>\n";
printf "<input type=checkbox name=flags value=admin> %s<br>\n",
$text{'uedit_admin'};
printf "<input type=checkbox name=flags value=admchg> %s<br>\n",
$text{'uedit_admchg'};
printf "<input type=checkbox name=flags value=nocheck> %s\n",
$text{'uedit_nocheck'};
print "</td> </tr>\n";
print &ui_table_row($text{'flags'},
&ui_checkbox("flags", "admin", $text{'uedit_admin'})." ".
&ui_checkbox("flags", "admchg", $text{'uedit_admchg'})." ".
&ui_checkbox("flags", "nocheck", $text{'uedit_nocheck'}));
print "</table></td></tr></table><p>\n";
print &ui_table_end();
}
# Output group memberships
print "<table border width=100%>\n";
print "<tr $tb> <td><b>$text{'uedit_gmem'}</b></td> </tr>\n";
print "<tr $cb> <td><table width=100%>\n";
print "<tr> <td valign=top><b>$text{'group'}</b></td> <td valign=top>\n";
printf "<input name=gid size=15 value=\"%s\">\n",
$uconfig{'default_group'};
print "<input type=button onClick='ifield = document.forms[0].gid; chooser = window.open(\"/useradmin/my_group_chooser.cgi?multi=0&group=\"+escape(ifield.value), \"chooser\", \"toolbar=no,menubar=no,scrollbars=yes,width=300,height=200\"); chooser.ifield = ifield' value=\"...\"></td>\n";
print &ui_table_start($text{'uedit_gmem'}, "width=100%", 2);
print "<td valign=top><b>$text{'uedit_2nd'}</b></td>\n";
print "<td><select name=sgid multiple size=5>\n";
# Primary group
print &ui_table_row($text{'group'},
&ui_group_textbox("gid", $uconfig{'default_group'}));
# Secondary groups
@glist = sort { $a->{'group'} cmp $b->{'group'} } @glist
if ($uconfig{'sort_mode'});
foreach $g (@glist) {
@mems = split(/,/ , $g->{'members'});
print "<option value=\"$g->{'gid'}\">$g->{'group'} ($g->{'gid'})</option>\n";
}
print "</select></td> </tr>\n";
print "</table></td></tr></table><p>\n";
print &ui_table_row($text{'uedit_2nd'},
&ui_select("sgid", undef,
[ map { [ $_->{'gid'}, $_->{'group'} ] } @glist ],
5, 1));
print "<table border width=100%>\n";
print "<tr $tb> <td><b>$text{'uedit_oncreate'}</b></td> </tr>\n";
print "<tr $cb> <td><table>\n";
print &ui_table_end();
print "<tr> <td><b>$text{'uedit_makehome'}</b></td>\n";
print "<td><input type=radio name=makehome value=1 checked> $text{'yes'}</td>\n";
print "<td><input type=radio name=makehome value=0> $text{'no'}</td> </tr>\n";
print &ui_table_start($text{'uedit_oncreate'}, "width=100%", 2);
# Create home dir?
print &ui_table_row($text{'uedit_makehome'},
&ui_yesno_radio("makehome", 1));
# Copy home dir files?
if ($uconfig{'user_files'} =~ /\S/) {
print "<tr> <td><b>$text{'uedit_copy'}<b></td>\n";
print "<td><input type=radio name=copy_files ",
"value=1 checked> $text{'yes'}</td>\n";
print "<td><input type=radio name=copy_files ",
"value=0> $text{'no'}</td> </tr>\n";
print &ui_table_row($text{'uedit_copy'},
&ui_yesno_radio("copy_files", 1));
}
# Show make home on all servers option
print "<tr> <td><b>$text{'uedit_servs'}</b></td>\n";
print "<td><input type=radio name=servs value=1> $text{'uedit_mall'}</td>\n";
print "<td><input type=radio name=servs value=0 checked> $text{'uedit_mthis'}</td> </tr>\n";
# Create home dir on all servers?
print &ui_table_row($text{'uedit_servs'},
&ui_radio("servs", 0, [ [ 1, $text{'uedit_mall'} ],
[ 0, $text{'uedit_mthis'} ] ]));
# Show other modules option
print "<tr> <td><b>$text{'uedit_others'}</b></td>\n";
print "<td><input type=radio name=others value=1 checked> $text{'yes'}</td>\n";
print "<td><input type=radio name=others value=0> $text{'no'}</td> </tr>\n";
print &ui_table_row($text{'uedit_others'},
&ui_yesno_radio("others", 1));
# Show selector for hosts to create on
&create_on_input($text{'uedit_servers'});
print &ui_table_row($text{'uedit_servers'},
&create_on_input());
print "</table></td> </tr></table><p></p><p></p>\n";
print "<input type=submit value=\"$text{'create'}\"></form>\n";
print &ui_table_end();
print &ui_form_end([ [ undef, $text{'create'} ] ]);
&ui_print_footer("", $text{'index_return'});
# date_input(day, month, year, prefix)
sub date_input
{
print "<input name=$_[3]d size=3 value='$_[0]'>";
print "/<select name=$_[3]m>\n";
local $m;
foreach $m (1..12) {
printf "<option value=%d %s>%s</option>\n",
$m, $_[1] eq $m ? 'selected' : '', $text{"smonth_$m"};
}
print "</select>";
print "/<input name=$_[3]y size=5 value='$_[2]'>";
print &date_chooser_button("$_[3]d", "$_[3]m", "$_[3]y");
}

View File

@@ -44,7 +44,7 @@ foreach $d (&expand_usr64($Config{'privlib'}),
&expand_usr64($Config{'vendorlib_stem'} ? $Config{'vendorlib_stem'} :
$Config{'vendorlib'}),
&expand_usr64($Config{'installprivlib'})) {
next if (!$d);
next if (!$d || !-d $d);
next if ($donedir{$d});
local $f;
open(FIND, "find ".quotemeta($d)." -name .packlist -print |");

View File

@@ -1,5 +1,5 @@
do 'cron-lib.pl';
require 'cron-lib.pl';
# backup_config_files()
# Returns files and directories that can be backed up

View File

@@ -943,7 +943,7 @@ return &theme_show_times_input(@_) if (defined(&theme_show_times_input));
local $job = $_[0];
if ($config{'vixie_cron'} && (!$_[1] || $_[0]->{'special'})) {
# Allow selection of special @ times
print "<tr $cb> <td colspan=6>\n";
print "<tr data-schedule-tr $cb> <td colspan=6>\n";
printf "<input type=radio name=special_def value=1 %s> %s\n",
$job->{'special'} ? "checked" : "", $text{'edit_special1'};
print "<select name=special onChange='change_special_mode(form, 1)'>\n";

View File

@@ -1 +1 @@
desc_ja=<EFBFBD><EFBFBD><EFBFBD><EFBFBD>棚尊<EFBFBD><EFBFBD><EFBFBD><EFBFBD> Cron 尊樽其<E6A8BD><E585B6>
desc_ja=cron ジョブのスケジュール

View File

@@ -1 +1 @@
desc_ko=쩔쨔쩐<EFBFBD><EFBFBD><EFBFBD><EFBFBD> Cron <20><><EFBFBD><EFBFBD>쩐첨
desc_ko=예약된 cron 작업

View File

@@ -1 +1 @@
desc_zh=Cron <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>帽碌梅露<E6A285><E99CB2>
desc_zh=定时自动作业 (Cron)

View File

@@ -1 +1 @@
desc_zh_TW=穢w簧<EFBFBD><EFBFBD>簞繭礎疆瞻u禮@ (Cron)
desc_zh_TW=定時執行工作 (Cron)

View File

@@ -308,7 +308,9 @@ if ($file !~ /^\// && $file !~ /\|\s*$/) {
$file = "$uinfo[7]/$file";
}
}
open(FILE, "<".$file);
my $h;
$h = "<" if ($file =~ /^\// && $file !~ /\|\s*$/);
open(FILE, "$h".$file);
while(<FILE>) {
s/\r|\n//g;
next if (/^#/);

View File

@@ -92,7 +92,7 @@ run_eopt=Ungültige Option ausgewählt
run_eupload=Keine Datei zum Hochladen ausgewählt
run_emust=Fehlender Wert für Parameter '$1'
run_timeout=Die Ausführung wurde nach einem Zeitablauf von $1 Sekunden terminiert.
run_failed=Befehl mit Fehercode $1 fehlgeschlagen
run_failed=Befehl mit Fehlercode $1 fehlgeschlagen
log_modify=Befehl $1 geändert
log_create=Befehl $1 angelegt
log_delete=Befehl $1 gelöscht

View File

@@ -197,9 +197,9 @@ else {
print "<td><b>$text{'eopt_custom'}</b></td>\n";
print "<td nowrap>$text{'eopt_cnum'}\n";
my ($ov, @v) = @{$o->{'values'}};
print &ui_textbox("cnum_".$i, ( $ov =~ /^option-(\S+)$/ ? $1 : '' ), 4);
print &ui_textbox("cnum_".$i, ( $ov =~ /^option-(\S+)$/ ? $1 : '' ), 4);
print "$text{'eopt_cval'}\n";
print &ui_textbox("cval_".$i, join(" ", @v), 15);
print &ui_textbox("cval_".$i, join(" ", @v), 15);
print "</tr>\n" if ($i%2 != 0);
}
}

View File

@@ -1 +1 @@
<!doctype html public "-//w3c//dtd html 4.0 transitional//en"><html><head><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"><meta name="GENERATOR" content="Mozilla/4.72 [en] (X11; U; Linux 2.2.14-6.1.1 i686) [Netscape]"></head><body><center><h1> DHCPD ACL-substelsel </h1></center><h3> TEIKENS: </h3> Die hoofdoelstellings van die sub-stelsel ACL is die verskaffing van &#39;n kragtige, buigsame en uitbreidbare meganisme vir toegangsbeheer van verskillende voorwerpe in dhcpd-konfigurasie. Hierdie voorwerpe is gedeelde netwerke, subnette, groepe gashere en gashere. <br> Met acl-substelsel kan u ook ander funksies beheer, soos: unieke objekname, toepassing van veranderde konfigurasie, besigtiging en skrapping van dhcp-leasures. <h3> KONSEPTE: </h3> Dhcpd konfigurasie lêer wat ons as &#39;n boomstruktuur kan vertoon. Elke knooppunt van hierdie boom verteenwoordig &#39;n konfigurasie van verskillende dhcp-voorwerpe (fig. 0). <p> Acl-substelsel het twee vlakke van regte: <ul><li> globaal: lees, skryf, skep; </li><li> per-objek: lees, skryf. </li></ul> Daar bestaan wêreldwye toestemmings vir elke tipe voorwerpe (gashere, groepe, subnette, gedeelde netwerke) en beheer bedrywighede met &#39;n volledige objekstel van &#39;n gegewe tipe. <br> Wêreldwyd skep <br> Globale lees <br> Globale skryf <br> Toestemmings per objek gee u &#39;n meer buigsame manier van toegangsbeheer. Toestemmings per objek acl bestaan vir elke individuele objek. Vandag word slegs gashere en subnette per objek-slyn geïmplementeer. <br> Per-objek gelees <br> Per-objek skryf <br> Acl-substelsel kan in vier verskillende veiligheidsvlakke (of modusse) werk. <br><img SRC="ctree0.gif" alt="dhcpd-konfigurasieboom, veiligheidsvlak 0, kontroleer subnetX-regte" height=229 width=314><br><p><img SRC="ctree1.gif" alt="dhcpd-konfigurasieboom, veiligheidsvlak 1, kontroleer subnetX-toestemmings" height=229 width=314><p><img SRC="ctree2.gif" alt="dhcpd-konfigurasieboom, sekuriteitsvlak 2, kontroleer subnetX-regte" height=229 width=314><p><img SRC="ctree3.gif" alt="dhcpd-konfigurasieboom, veiligheidsvlak 3, kontroleer subnetX-regte" height=229 width=314><h3> GEBRUIKERSANTEKENINGE: </h3><h3> ONTWIKKELNOTAS: </h3></body></html>
<!doctype html public "-//w3c//dtd html 4.0 transitional//en"><html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="Mozilla/4.72 [en] (X11; U; Linux 2.2.14-6.1.1 i686) [Netscape]"></head><body><center><h1> DHCPD ACL-substelsel </h1></center><h3> TEIKENS: </h3> Die hoofdoelstellings van die sub-stelsel ACL is die verskaffing van &#39;n kragtige, buigsame en uitbreidbare meganisme vir toegangsbeheer van verskillende voorwerpe in dhcpd-konfigurasie. Hierdie voorwerpe is gedeelde netwerke, subnette, groepe gashere en gashere. <br> Met acl-substelsel kan u ook ander funksies beheer, soos: unieke objekname, toepassing van veranderde konfigurasie, besigtiging en skrapping van dhcp-leasures. <h3> KONSEPTE: </h3> Dhcpd konfigurasie lêer wat ons as &#39;n boomstruktuur kan vertoon. Elke knooppunt van hierdie boom verteenwoordig &#39;n konfigurasie van verskillende dhcp-voorwerpe (fig. 0). <p> Acl-substelsel het twee vlakke van regte: <ul><li> globaal: lees, skryf, skep; </li><li> per-objek: lees, skryf. </li></ul> Daar bestaan wêreldwye toestemmings vir elke tipe voorwerpe (gashere, groepe, subnette, gedeelde netwerke) en beheer bedrywighede met &#39;n volledige objekstel van &#39;n gegewe tipe. <br> Wêreldwyd skep <br> Globale lees <br> Globale skryf <br> Toestemmings per objek gee u &#39;n meer buigsame manier van toegangsbeheer. Toestemmings per objek acl bestaan vir elke individuele objek. Vandag word slegs gashere en subnette per objek-slyn geïmplementeer. <br> Per-objek gelees <br> Per-objek skryf <br> Acl-substelsel kan in vier verskillende veiligheidsvlakke (of modusse) werk. <br><img SRC="ctree0.gif" alt="dhcpd-konfigurasieboom, veiligheidsvlak 0, kontroleer subnetX-regte" height=229 width=314><br><p><img SRC="ctree1.gif" alt="dhcpd-konfigurasieboom, veiligheidsvlak 1, kontroleer subnetX-toestemmings" height=229 width=314><p><img SRC="ctree2.gif" alt="dhcpd-konfigurasieboom, sekuriteitsvlak 2, kontroleer subnetX-regte" height=229 width=314><p><img SRC="ctree3.gif" alt="dhcpd-konfigurasieboom, veiligheidsvlak 3, kontroleer subnetX-regte" height=229 width=314><h3> GEBRUIKERSANTEKENINGE: </h3><h3> ONTWIKKELNOTAS: </h3></body></html>

View File

@@ -1 +1 @@
<!doctype html public "-//w3c//dtd html 4.0 transitional//en"><html><head><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"><meta name="GENERATOR" content="Mozilla/4.72 [en] (X11; U; Linux 2.2.14-6.1.1 i686) [Netscape]"></head><body style=";text-align:right;direction:rtl"><center style=";text-align:right;direction:rtl"><h1 style=";text-align:right;direction:rtl"> DHCPD ACL الفرعي </h1></center><h3 style=";text-align:right;direction:rtl"> الأهداف: </h3> تتمثل الأهداف الرئيسية لنظام فرعي ACL في توفير آلية قوية ومرنة وقابلة للتمديد للتحكم في الوصول إلى كائنات مختلفة في تكوين DHCP. هذه الكائنات هي شبكات مشتركة وشبكات فرعية ومجموعات من المضيفين والمضيفين. <br> كما يسمح لك النظام الفرعي ACL بالتحكم في بعض الميزات الأخرى ، مثل: أسماء الكائنات الفريدة وتطبيق التكوين المتغير وعرض وحذف مقاييس dhcp. <h3 style=";text-align:right;direction:rtl"> المفاهيم: </h3> يمكننا عرض ملف تكوين Dhcpd كهيكل شجرة. تمثل كل عقدة في هذه الشجرة تكوينًا لكائنات dhcp مختلفة (الشكل 0). <p style=";text-align:right;direction:rtl"> يحتوي نظام Acl الفرعي على مستويين من الأذونات: <ul style=";text-align:right;direction:rtl"><li style=";text-align:right;direction:rtl"> عالمي: قراءة ، كتابة ، إنشاء ؛ </li><li style=";text-align:right;direction:rtl"> لكل كائن: قراءة وكتابة. </li></ul> توجد أذونات عامة لكل نوع من الكائنات (المضيفين والمجموعات والشبكات الفرعية والشبكات المشتركة) وتتحكم في العمليات باستخدام مجموعة كائنات كاملة من نوع معين. <br> إنشاء عالمي <br> قراءة عالمية <br> الكتابة العالمية <br> تمنحك أذونات لكل كائن طريقة أكثر مرونة للتحكم في الوصول. أذونات لكل كائن موجودة لكل كائن كائن فردي. اليوم ، يتم فقط استضافة المضيفين والشبكات الفرعية لكل كائن تحكم. <br> قراءة لكل كائن <br> الكتابة لكل كائن <br> يمكن أن يعمل النظام الفرعي Acl في 4 مستويات أمان (أو أوضاع) مختلفة. <br><img SRC="ctree0.gif" alt="شجرة تكوين dhcpd ، مستوى الأمان 0 ، تحقق من أذونات subnetX" height=229 width=314><br><p style=";text-align:right;direction:rtl"><img SRC="ctree1.gif" alt="شجرة تكوين dhcpd ، مستوى الأمان 1 ، تحقق من أذونات subnetX" height=229 width=314><p style=";text-align:right;direction:rtl"><img SRC="ctree2.gif" alt="شجرة تكوين dhcpd ، مستوى الأمان 2 ، تحقق من أذونات subnetX" height=229 width=314><p style=";text-align:right;direction:rtl"><img SRC="ctree3.gif" alt="شجرة تكوين dhcpd ، مستوى الأمان 3 ، تحقق من أذونات subnetX" height=229 width=314><h3 style=";text-align:right;direction:rtl"> ملاحظات المستخدم: </h3><h3 style=";text-align:right;direction:rtl"> ملاحظات المطور: </h3></body></html>
<!doctype html public "-//w3c//dtd html 4.0 transitional//en"><html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="Mozilla/4.72 [en] (X11; U; Linux 2.2.14-6.1.1 i686) [Netscape]"></head><body style=";text-align:right;direction:rtl"><center style=";text-align:right;direction:rtl"><h1 style=";text-align:right;direction:rtl"> DHCPD ACL الفرعي </h1></center><h3 style=";text-align:right;direction:rtl"> الأهداف: </h3> تتمثل الأهداف الرئيسية لنظام فرعي ACL في توفير آلية قوية ومرنة وقابلة للتمديد للتحكم في الوصول إلى كائنات مختلفة في تكوين DHCP. هذه الكائنات هي شبكات مشتركة وشبكات فرعية ومجموعات من المضيفين والمضيفين. <br> كما يسمح لك النظام الفرعي ACL بالتحكم في بعض الميزات الأخرى ، مثل: أسماء الكائنات الفريدة وتطبيق التكوين المتغير وعرض وحذف مقاييس dhcp. <h3 style=";text-align:right;direction:rtl"> المفاهيم: </h3> يمكننا عرض ملف تكوين Dhcpd كهيكل شجرة. تمثل كل عقدة في هذه الشجرة تكوينًا لكائنات dhcp مختلفة (الشكل 0). <p style=";text-align:right;direction:rtl"> يحتوي نظام Acl الفرعي على مستويين من الأذونات: <ul style=";text-align:right;direction:rtl"><li style=";text-align:right;direction:rtl"> عالمي: قراءة ، كتابة ، إنشاء ؛ </li><li style=";text-align:right;direction:rtl"> لكل كائن: قراءة وكتابة. </li></ul> توجد أذونات عامة لكل نوع من الكائنات (المضيفين والمجموعات والشبكات الفرعية والشبكات المشتركة) وتتحكم في العمليات باستخدام مجموعة كائنات كاملة من نوع معين. <br> إنشاء عالمي <br> قراءة عالمية <br> الكتابة العالمية <br> تمنحك أذونات لكل كائن طريقة أكثر مرونة للتحكم في الوصول. أذونات لكل كائن موجودة لكل كائن كائن فردي. اليوم ، يتم فقط استضافة المضيفين والشبكات الفرعية لكل كائن تحكم. <br> قراءة لكل كائن <br> الكتابة لكل كائن <br> يمكن أن يعمل النظام الفرعي Acl في 4 مستويات أمان (أو أوضاع) مختلفة. <br><img SRC="ctree0.gif" alt="شجرة تكوين dhcpd ، مستوى الأمان 0 ، تحقق من أذونات subnetX" height=229 width=314><br><p style=";text-align:right;direction:rtl"><img SRC="ctree1.gif" alt="شجرة تكوين dhcpd ، مستوى الأمان 1 ، تحقق من أذونات subnetX" height=229 width=314><p style=";text-align:right;direction:rtl"><img SRC="ctree2.gif" alt="شجرة تكوين dhcpd ، مستوى الأمان 2 ، تحقق من أذونات subnetX" height=229 width=314><p style=";text-align:right;direction:rtl"><img SRC="ctree3.gif" alt="شجرة تكوين dhcpd ، مستوى الأمان 3 ، تحقق من أذونات subnetX" height=229 width=314><h3 style=";text-align:right;direction:rtl"> ملاحظات المستخدم: </h3><h3 style=";text-align:right;direction:rtl"> ملاحظات المطور: </h3></body></html>

View File

@@ -1 +1 @@
<!doctype html public "-//w3c//dtd html 4.0 transitional//en"><html><head><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"><meta name="GENERATOR" content="Mozilla/4.72 [en] (X11; U; Linux 2.2.14-6.1.1 i686) [Netscape]"></head><body><center><h1> Падсістэма ACC DHCPD </h1></center><h3> ЦЭЛЫ: </h3> Асноўныя мэты падсістэмы acl - забеспячэнне магутнага, гнуткага і пашыраемага механізму кантролю доступу розных аб&#39;ектаў у канфігурацыі dhcpd. Гэтымі аб&#39;ектамі з&#39;яўляюцца агульныя сеткі, падсеткі, групы хастаў і хосты. <br> Таксама падсістэма acl дазваляе кіраваць некаторымі іншымі функцыямі, такімі як: унікальныя імёны аб&#39;ектаў, прымяненне змененай канфігурацыі, прагляд і выдаленне dhcp. <h3> Канцэпты: </h3> Файл канфігурацыі Dhcpd мы можам паказаць у выглядзе структуры дрэва. Кожны вузел гэтага дрэва ўяўляе сабой канфігурацыю розных dhcp аб&#39;ектаў (мал. 0). <p> Падсістэма Acl мае 2 ўзроўні дазволаў: <ul><li> глабальны: чытаць, пісаць, ствараць; </li><li> за аб&#39;ект: чытаць, пісаць. </li></ul> Глабальныя дазволы існуюць для кожнага тыпу аб&#39;ектаў (хасты, групы, падсеткі, агульныя сеткі) і кіруе аперацыямі з цэлым наборам аб&#39;ектаў дадзенага тыпу. <br> Глабальнае стварэнне <br> Глабальнае чытанне <br> Глабальнае пісанне <br> Дазволы на аб&#39;ект даюць вам больш гнуткі спосаб кіравання доступам. ACL дазволаў на аб&#39;ект існуе для кожнага аб&#39;екта, асобнага аб&#39;екта. На сённяшні дзень толькі хасты і падсеткі на аб&#39;ект acls пагаршаюцца. <br> Зачытаны за аб&#39;ект <br> Запішыце па аб’екце <br> Падсістэма Acl можа працаваць у чатырох розных узроўнях бяспекі (або ў рэжымах). <br><img SRC="ctree0.gif" alt="дрэва канфігурацыі dhcpd, узровень бяспекі 0, праверка дазволаў subnetX" height=229 width=314><br><p><img SRC="ctree1.gif" alt="дрэва канфігурацыі dhcpd, узровень бяспекі 1, праверка дазволаў subnetX" height=229 width=314><p><img SRC="ctree2.gif" alt="дрэва канфігурацыі dhcpd, узровень бяспекі 2, праверце дазволы subnetX" height=229 width=314><p><img SRC="ctree3.gif" alt="дрэва канфігурацыі dhcpd, узровень бяспекі 3, праверце дазволы subnetX" height=229 width=314><h3> УВАГА КАМПАНІЯ </h3><h3> Заўвагі распрацоўшчыкаў: </h3></body></html>
<!doctype html public "-//w3c//dtd html 4.0 transitional//en"><html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="Mozilla/4.72 [en] (X11; U; Linux 2.2.14-6.1.1 i686) [Netscape]"></head><body><center><h1> Падсістэма ACC DHCPD </h1></center><h3> ЦЭЛЫ: </h3> Асноўныя мэты падсістэмы acl - забеспячэнне магутнага, гнуткага і пашыраемага механізму кантролю доступу розных аб&#39;ектаў у канфігурацыі dhcpd. Гэтымі аб&#39;ектамі з&#39;яўляюцца агульныя сеткі, падсеткі, групы хастаў і хосты. <br> Таксама падсістэма acl дазваляе кіраваць некаторымі іншымі функцыямі, такімі як: унікальныя імёны аб&#39;ектаў, прымяненне змененай канфігурацыі, прагляд і выдаленне dhcp. <h3> Канцэпты: </h3> Файл канфігурацыі Dhcpd мы можам паказаць у выглядзе структуры дрэва. Кожны вузел гэтага дрэва ўяўляе сабой канфігурацыю розных dhcp аб&#39;ектаў (мал. 0). <p> Падсістэма Acl мае 2 ўзроўні дазволаў: <ul><li> глабальны: чытаць, пісаць, ствараць; </li><li> за аб&#39;ект: чытаць, пісаць. </li></ul> Глабальныя дазволы існуюць для кожнага тыпу аб&#39;ектаў (хасты, групы, падсеткі, агульныя сеткі) і кіруе аперацыямі з цэлым наборам аб&#39;ектаў дадзенага тыпу. <br> Глабальнае стварэнне <br> Глабальнае чытанне <br> Глабальнае пісанне <br> Дазволы на аб&#39;ект даюць вам больш гнуткі спосаб кіравання доступам. ACL дазволаў на аб&#39;ект існуе для кожнага аб&#39;екта, асобнага аб&#39;екта. На сённяшні дзень толькі хасты і падсеткі на аб&#39;ект acls пагаршаюцца. <br> Зачытаны за аб&#39;ект <br> Запішыце па аб’екце <br> Падсістэма Acl можа працаваць у чатырох розных узроўнях бяспекі (або ў рэжымах). <br><img SRC="ctree0.gif" alt="дрэва канфігурацыі dhcpd, узровень бяспекі 0, праверка дазволаў subnetX" height=229 width=314><br><p><img SRC="ctree1.gif" alt="дрэва канфігурацыі dhcpd, узровень бяспекі 1, праверка дазволаў subnetX" height=229 width=314><p><img SRC="ctree2.gif" alt="дрэва канфігурацыі dhcpd, узровень бяспекі 2, праверце дазволы subnetX" height=229 width=314><p><img SRC="ctree3.gif" alt="дрэва канфігурацыі dhcpd, узровень бяспекі 3, праверце дазволы subnetX" height=229 width=314><h3> УВАГА КАМПАНІЯ </h3><h3> Заўвагі распрацоўшчыкаў: </h3></body></html>

View File

@@ -1 +1 @@
<!doctype html public "-//w3c//dtd html 4.0 transitional//en"><html><head><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"><meta name="GENERATOR" content="Mozilla/4.72 [en] (X11; U; Linux 2.2.14-6.1.1 i686) [Netscape]"></head><body><center><h1> DHCPD ACL подсистема </h1></center><h3> цели: </h3> Основните цели на подсистемата acl е осигуряване на мощен, гъвкав и разтегателен механизъм за контрол на достъпа на различни обекти в dhcpd конфигурация. Тези обекти са споделени мрежи, подмрежи, групи от хостове и хостове. <br> Също така acl подсистемата ви позволява да контролирате някои други функции, като: уникални имена на обекти, прилагане на променена конфигурация, преглед и изтриване на dhcp съпротивления. <h3> понятия: </h3> Dhcpd конфигурационен файл, който можем да покажем като дървовидна структура. Всеки възел от това дърво представлява конфигурация на различни dhcp обекти (фиг. 0). <p> Подсистемата Acl има 2 нива на разрешения: <ul><li> глобален: четете, пишете, създавайте; </li><li> на обект: четете, пишете. </li></ul> Глобални разрешения съществуват за всеки тип обекти (хостове, групи, подмрежи, споделени мрежи) и контролира операциите с цял набор от обекти от даден тип. <br> Глобално създаване <br> Глобално четене <br> Глобално писане <br> Разрешенията на обект ви дават по-гъвкав начин за контрол на достъпа. За всеки обект индивидуален обект съществува acl разрешения на обект. Днес са ограничени само хостове и подмрежи на обект acls. <br> Прочитане на обект <br> Запис на обект <br> Подсистемата Acl може да работи в 4 различни нива на сигурност (или режими). <br><img SRC="ctree0.gif" alt="dhcpd конфигурационно дърво, ниво на защита 0, проверете разрешенията на subnetX" height=229 width=314><br><p><img SRC="ctree1.gif" alt="dhcpd конфигурационно дърво, ниво на защита 1, проверете разрешенията на subnetX" height=229 width=314><p><img SRC="ctree2.gif" alt="dhcpd конфигурационно дърво, ниво на защита 2, проверете разрешенията на subnetX" height=229 width=314><p><img SRC="ctree3.gif" alt="dhcpd конфигурационно дърво, ниво на защита 3, проверете разрешенията на subnetX" height=229 width=314><h3> ЗАБЕЛЕЖКИ ЗА ПОТРЕБИТЕЛЯ: </h3><h3> ЗАБЕЛЕЖКИ ЗА РАЗВИТИЕ: </h3></body></html>
<!doctype html public "-//w3c//dtd html 4.0 transitional//en"><html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="Mozilla/4.72 [en] (X11; U; Linux 2.2.14-6.1.1 i686) [Netscape]"></head><body><center><h1> DHCPD ACL подсистема </h1></center><h3> цели: </h3> Основните цели на подсистемата acl е осигуряване на мощен, гъвкав и разтегателен механизъм за контрол на достъпа на различни обекти в dhcpd конфигурация. Тези обекти са споделени мрежи, подмрежи, групи от хостове и хостове. <br> Също така acl подсистемата ви позволява да контролирате някои други функции, като: уникални имена на обекти, прилагане на променена конфигурация, преглед и изтриване на dhcp съпротивления. <h3> понятия: </h3> Dhcpd конфигурационен файл, който можем да покажем като дървовидна структура. Всеки възел от това дърво представлява конфигурация на различни dhcp обекти (фиг. 0). <p> Подсистемата Acl има 2 нива на разрешения: <ul><li> глобален: четете, пишете, създавайте; </li><li> на обект: четете, пишете. </li></ul> Глобални разрешения съществуват за всеки тип обекти (хостове, групи, подмрежи, споделени мрежи) и контролира операциите с цял набор от обекти от даден тип. <br> Глобално създаване <br> Глобално четене <br> Глобално писане <br> Разрешенията на обект ви дават по-гъвкав начин за контрол на достъпа. За всеки обект индивидуален обект съществува acl разрешения на обект. Днес са ограничени само хостове и подмрежи на обект acls. <br> Прочитане на обект <br> Запис на обект <br> Подсистемата Acl може да работи в 4 различни нива на сигурност (или режими). <br><img SRC="ctree0.gif" alt="dhcpd конфигурационно дърво, ниво на защита 0, проверете разрешенията на subnetX" height=229 width=314><br><p><img SRC="ctree1.gif" alt="dhcpd конфигурационно дърво, ниво на защита 1, проверете разрешенията на subnetX" height=229 width=314><p><img SRC="ctree2.gif" alt="dhcpd конфигурационно дърво, ниво на защита 2, проверете разрешенията на subnetX" height=229 width=314><p><img SRC="ctree3.gif" alt="dhcpd конфигурационно дърво, ниво на защита 3, проверете разрешенията на subnetX" height=229 width=314><h3> ЗАБЕЛЕЖКИ ЗА ПОТРЕБИТЕЛЯ: </h3><h3> ЗАБЕЛЕЖКИ ЗА РАЗВИТИЕ: </h3></body></html>

View File

@@ -1,7 +1,7 @@
<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="GENERATOR" content="Mozilla/4.72 [en] (X11; U; Linux 2.2.14-6.1.1 i686) [Netscape]">
</head>
<body>

View File

@@ -1 +1 @@
<!doctype html public "-//w3c//dtd html 4.0 transitional//en"><html><head><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"><meta name="GENERATOR" content="Mozilla/4.72 [en] (X11; U; Linux 2.2.14-6.1.1 i686) [Netscape]"></head><body><center><h1> DHCPD ACL subsystém </h1></center><h3> CÍLE: </h3> Hlavním cílem subsystému acl je výkonný, flexibilní a rozšiřitelný mechanismus pro řízení přístupu k různým objektům v konfiguraci dhcpd. Jedná se o sdílené sítě, podsítě, skupiny hostitelů a hostitelů. <br> Podsystém acl vám také umožňuje ovládat některé další funkce, například: jedinečné názvy objektů, použití změněné konfigurace, prohlížení a mazání dhcp leasures. <h3> KONCEPCE: </h3> Dhcpd konfigurační soubor můžeme zobrazit jako stromovou strukturu. Každý uzel tohoto stromu představuje konfiguraci různých dhcp objektů (obr. 0). <p> Subsystém Acl má dvě úrovně oprávnění: <ul><li> globální: číst, psát, vytvářet; </li><li> na objekt: čtení, zápis. </li></ul> Globální oprávnění existují pro každý typ objektů (hostitelé, skupiny, podsítě, sdílené sítě) a řídí operace s celou sadou objektů daného typu. <br> Globální vytvoření <br> Globální čtení <br> Globální zápis <br> Oprávnění pro jednotlivé objekty vám poskytují flexibilnější způsob řízení přístupu. Pro každý objekt existuje oprávnění acl pro každý objekt. Dnes jsou implementovány pouze hostitelé a podsítě na jednotlivé objekty acls. <br> Čtení podle jednotlivých objektů <br> Zápis na jeden objekt <br> Podsystém Acl může pracovat ve 4 různých úrovních zabezpečení (nebo režimech). <br><img SRC="ctree0.gif" alt="konfigurační strom dhcpd, úroveň zabezpečení 0, zkontrolujte oprávnění subnetX" height=229 width=314><br><p><img SRC="ctree1.gif" alt="konfigurační strom dhcpd, úroveň zabezpečení 1, zkontrolujte oprávnění podsítěX" height=229 width=314><p><img SRC="ctree2.gif" alt="konfigurační strom dhcpd, úroveň zabezpečení 2, zkontrolujte oprávnění subnetX" height=229 width=314><p><img SRC="ctree3.gif" alt="konfigurační strom dhcpd, úroveň zabezpečení 3, zkontrolujte oprávnění podsítěX" height=229 width=314><h3> POZNÁMKY PRO UŽIVATELE: </h3><h3> POZNÁMKY PRO VÝVOJÁŘE: </h3></body></html>
<!doctype html public "-//w3c//dtd html 4.0 transitional//en"><html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="Mozilla/4.72 [en] (X11; U; Linux 2.2.14-6.1.1 i686) [Netscape]"></head><body><center><h1> DHCPD ACL subsystém </h1></center><h3> CÍLE: </h3> Hlavním cílem subsystému acl je výkonný, flexibilní a rozšiřitelný mechanismus pro řízení přístupu k různým objektům v konfiguraci dhcpd. Jedná se o sdílené sítě, podsítě, skupiny hostitelů a hostitelů. <br> Podsystém acl vám také umožňuje ovládat některé další funkce, například: jedinečné názvy objektů, použití změněné konfigurace, prohlížení a mazání dhcp leasures. <h3> KONCEPCE: </h3> Dhcpd konfigurační soubor můžeme zobrazit jako stromovou strukturu. Každý uzel tohoto stromu představuje konfiguraci různých dhcp objektů (obr. 0). <p> Subsystém Acl má dvě úrovně oprávnění: <ul><li> globální: číst, psát, vytvářet; </li><li> na objekt: čtení, zápis. </li></ul> Globální oprávnění existují pro každý typ objektů (hostitelé, skupiny, podsítě, sdílené sítě) a řídí operace s celou sadou objektů daného typu. <br> Globální vytvoření <br> Globální čtení <br> Globální zápis <br> Oprávnění pro jednotlivé objekty vám poskytují flexibilnější způsob řízení přístupu. Pro každý objekt existuje oprávnění acl pro každý objekt. Dnes jsou implementovány pouze hostitelé a podsítě na jednotlivé objekty acls. <br> Čtení podle jednotlivých objektů <br> Zápis na jeden objekt <br> Podsystém Acl může pracovat ve 4 různých úrovních zabezpečení (nebo režimech). <br><img SRC="ctree0.gif" alt="konfigurační strom dhcpd, úroveň zabezpečení 0, zkontrolujte oprávnění subnetX" height=229 width=314><br><p><img SRC="ctree1.gif" alt="konfigurační strom dhcpd, úroveň zabezpečení 1, zkontrolujte oprávnění podsítěX" height=229 width=314><p><img SRC="ctree2.gif" alt="konfigurační strom dhcpd, úroveň zabezpečení 2, zkontrolujte oprávnění subnetX" height=229 width=314><p><img SRC="ctree3.gif" alt="konfigurační strom dhcpd, úroveň zabezpečení 3, zkontrolujte oprávnění podsítěX" height=229 width=314><h3> POZNÁMKY PRO UŽIVATELE: </h3><h3> POZNÁMKY PRO VÝVOJÁŘE: </h3></body></html>

View File

@@ -1 +1 @@
<!doctype html public "-//w3c//dtd html 4.0 transitional//en"><html><head><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"><meta name="GENERATOR" content="Mozilla/4.72 [en] (X11; U; Linux 2.2.14-6.1.1 i686) [Netscape]"></head><body><center><h1> DHCPD ACL-undersystem </h1></center><h3> MÅL: </h3> Hovedmålene med acl-undersystemet er at tilvejebringe en kraftig, fleksibel og udvidelig mekanisme til adgangskontrol af forskellige objekter i dhcpd-konfiguration. Dette objekt er delte netværk, undernet, grupper af værter og værter. <br> Også acl-undersystem giver dig mulighed for at kontrollere nogle andre funktioner, såsom: unikke objektnavne, anvendelse af ændret konfiguration, visning og sletning af dhcp-leasures. <h3> begreber: </h3> Dhcpd-konfigurationsfil, vi kan vise som en træstruktur. Hver knude på dette træ repræsenterer en konfiguration af forskellige dhcp-objekter (fig. 0). <p> Acl-undersystem har 2 niveauer af tilladelser: <ul><li> global: læse, skrive, oprette; </li><li> per-objekt: læse, skrive. </li></ul> Globale tilladelser findes for hver type objekter (værter, grupper, undernet, delte netværk) og styrer operationer med et helt objektsæt af en given type. <br> Globalt skabe <br> Globalt læst <br> Global skrivning <br> Per-objekt-tilladelser giver dig en mere fleksibel måde at få adgang til kontrol. Per-objekt-tilladelser acl findes for hvert individuelle objekt-objekt. I dag er det kun værter og undernet pr. Objekt, der aktiveres. <br> Per-objekt læst <br> Per-objekt-skrivning <br> Acl-undersystem kan fungere i 4 forskellige sikkerhedsniveauer (eller tilstande). <br><img SRC="ctree0.gif" alt="dhcpd-konfigurationstræ, sikkerhedsniveau 0, kontroller subnetX-tilladelser" height=229 width=314><br><p><img SRC="ctree1.gif" alt="dhcpd-konfigurationstræ, sikkerhedsniveau 1, kontroller subnetX-tilladelser" height=229 width=314><p><img SRC="ctree2.gif" alt="dhcpd-konfigurationstræ, sikkerhedsniveau 2, kontroller subnetX-tilladelser" height=229 width=314><p><img SRC="ctree3.gif" alt="dhcpd-konfigurationstræ, sikkerhedsniveau 3, kontroller subnetX-tilladelser" height=229 width=314><h3> BRUGSANVISNINGER: </h3><h3> UDVIKLERNOTER: </h3></body></html>
<!doctype html public "-//w3c//dtd html 4.0 transitional//en"><html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="Mozilla/4.72 [en] (X11; U; Linux 2.2.14-6.1.1 i686) [Netscape]"></head><body><center><h1> DHCPD ACL-undersystem </h1></center><h3> MÅL: </h3> Hovedmålene med acl-undersystemet er at tilvejebringe en kraftig, fleksibel og udvidelig mekanisme til adgangskontrol af forskellige objekter i dhcpd-konfiguration. Dette objekt er delte netværk, undernet, grupper af værter og værter. <br> Også acl-undersystem giver dig mulighed for at kontrollere nogle andre funktioner, såsom: unikke objektnavne, anvendelse af ændret konfiguration, visning og sletning af dhcp-leasures. <h3> begreber: </h3> Dhcpd-konfigurationsfil, vi kan vise som en træstruktur. Hver knude på dette træ repræsenterer en konfiguration af forskellige dhcp-objekter (fig. 0). <p> Acl-undersystem har 2 niveauer af tilladelser: <ul><li> global: læse, skrive, oprette; </li><li> per-objekt: læse, skrive. </li></ul> Globale tilladelser findes for hver type objekter (værter, grupper, undernet, delte netværk) og styrer operationer med et helt objektsæt af en given type. <br> Globalt skabe <br> Globalt læst <br> Global skrivning <br> Per-objekt-tilladelser giver dig en mere fleksibel måde at få adgang til kontrol. Per-objekt-tilladelser acl findes for hvert individuelle objekt-objekt. I dag er det kun værter og undernet pr. Objekt, der aktiveres. <br> Per-objekt læst <br> Per-objekt-skrivning <br> Acl-undersystem kan fungere i 4 forskellige sikkerhedsniveauer (eller tilstande). <br><img SRC="ctree0.gif" alt="dhcpd-konfigurationstræ, sikkerhedsniveau 0, kontroller subnetX-tilladelser" height=229 width=314><br><p><img SRC="ctree1.gif" alt="dhcpd-konfigurationstræ, sikkerhedsniveau 1, kontroller subnetX-tilladelser" height=229 width=314><p><img SRC="ctree2.gif" alt="dhcpd-konfigurationstræ, sikkerhedsniveau 2, kontroller subnetX-tilladelser" height=229 width=314><p><img SRC="ctree3.gif" alt="dhcpd-konfigurationstræ, sikkerhedsniveau 3, kontroller subnetX-tilladelser" height=229 width=314><h3> BRUGSANVISNINGER: </h3><h3> UDVIKLERNOTER: </h3></body></html>

View File

@@ -1 +1 @@
<!doctype html public "-//w3c//dtd html 4.0 transitional//en"><html><head><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"><meta name="GENERATOR" content="Mozilla/4.72 [en] (X11; U; Linux 2.2.14-6.1.1 i686) [Netscape]"></head><body><center><h1> DHCPD-ACL-Subsystem </h1></center><h3> ZIELE: </h3> Das Hauptziel des acl-Subsystems besteht darin, einen leistungsstarken, flexiblen und erweiterbaren Mechanismus für die Zugriffskontrolle verschiedener Objekte in der dhcpd-Konfiguration bereitzustellen. Diese Objekte sind gemeinsam genutzte Netzwerke, Subnetze, Gruppen von Hosts und Hosts. <br> Mit dem acl-Subsystem können Sie auch einige andere Funktionen steuern, z. B. eindeutige Objektnamen, Anwenden geänderter Konfigurationen, Anzeigen und Löschen von DHCP-Funktionen. <h3> KONZEPTE: </h3> Dhcpd-Konfigurationsdatei können wir als Baumstruktur anzeigen. Jeder Knoten dieses Baums repräsentiert eine Konfiguration verschiedener DHCP-Objekte (Abb. 0). <p> Das Acl-Subsystem verfügt über zwei Berechtigungsstufen: <ul><li> global: lesen, schreiben, erstellen; </li><li> pro Objekt: lesen, schreiben. </li></ul> Globale Berechtigungen sind für jeden Objekttyp (Hosts, Gruppen, Subnetze, gemeinsam genutzte Netzwerke) vorhanden und steuern Vorgänge mit einem gesamten Objektsatz eines bestimmten Typs. <br> Global erstellen <br> Globales Lesen <br> Globales Schreiben <br> Pro-Objekt-Berechtigungen bieten Ihnen eine flexiblere Möglichkeit zur Zugriffskontrolle. Pro-Objekt-Berechtigungen acl existiert für jedes Objekt einzelnes Objekt. Heutzutage werden nur Hosts und Subnetze pro Objekt aktiviert. <br> Pro Objekt gelesen <br> Pro Objekt schreiben <br> Das Acl-Subsystem kann in 4 verschiedenen Sicherheitsstufen (oder Modi) betrieben werden. <br><img SRC="ctree0.gif" alt="DHCP-Konfigurationsbaum, Sicherheitsstufe 0, SubnetX-Berechtigungen überprüfen" height=229 width=314><br><p><img SRC="ctree1.gif" alt="DHCP-Konfigurationsbaum, Sicherheitsstufe 1, SubnetX-Berechtigungen prüfen" height=229 width=314><p><img SRC="ctree2.gif" alt="DHCPD-Konfigurationsbaum, Sicherheitsstufe 2, SubnetX-Berechtigungen überprüfen" height=229 width=314><p><img SRC="ctree3.gif" alt="DHCP-Konfigurationsbaum, Sicherheitsstufe 3, SubnetX-Berechtigungen überprüfen" height=229 width=314><h3> BENUTZERHINWEISE: </h3><h3> ANMERKUNGEN DES ENTWICKLERS: </h3></body></html>
<!doctype html public "-//w3c//dtd html 4.0 transitional//en"><html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="Mozilla/4.72 [en] (X11; U; Linux 2.2.14-6.1.1 i686) [Netscape]"></head><body><center><h1> DHCPD-ACL-Subsystem </h1></center><h3> ZIELE: </h3> Das Hauptziel des acl-Subsystems besteht darin, einen leistungsstarken, flexiblen und erweiterbaren Mechanismus für die Zugriffskontrolle verschiedener Objekte in der dhcpd-Konfiguration bereitzustellen. Diese Objekte sind gemeinsam genutzte Netzwerke, Subnetze, Gruppen von Hosts und Hosts. <br> Mit dem acl-Subsystem können Sie auch einige andere Funktionen steuern, z. B. eindeutige Objektnamen, Anwenden geänderter Konfigurationen, Anzeigen und Löschen von DHCP-Funktionen. <h3> KONZEPTE: </h3> Dhcpd-Konfigurationsdatei können wir als Baumstruktur anzeigen. Jeder Knoten dieses Baums repräsentiert eine Konfiguration verschiedener DHCP-Objekte (Abb. 0). <p> Das Acl-Subsystem verfügt über zwei Berechtigungsstufen: <ul><li> global: lesen, schreiben, erstellen; </li><li> pro Objekt: lesen, schreiben. </li></ul> Globale Berechtigungen sind für jeden Objekttyp (Hosts, Gruppen, Subnetze, gemeinsam genutzte Netzwerke) vorhanden und steuern Vorgänge mit einem gesamten Objektsatz eines bestimmten Typs. <br> Global erstellen <br> Globales Lesen <br> Globales Schreiben <br> Pro-Objekt-Berechtigungen bieten Ihnen eine flexiblere Möglichkeit zur Zugriffskontrolle. Pro-Objekt-Berechtigungen acl existiert für jedes Objekt einzelnes Objekt. Heutzutage werden nur Hosts und Subnetze pro Objekt aktiviert. <br> Pro Objekt gelesen <br> Pro Objekt schreiben <br> Das Acl-Subsystem kann in 4 verschiedenen Sicherheitsstufen (oder Modi) betrieben werden. <br><img SRC="ctree0.gif" alt="DHCP-Konfigurationsbaum, Sicherheitsstufe 0, SubnetX-Berechtigungen überprüfen" height=229 width=314><br><p><img SRC="ctree1.gif" alt="DHCP-Konfigurationsbaum, Sicherheitsstufe 1, SubnetX-Berechtigungen prüfen" height=229 width=314><p><img SRC="ctree2.gif" alt="DHCPD-Konfigurationsbaum, Sicherheitsstufe 2, SubnetX-Berechtigungen überprüfen" height=229 width=314><p><img SRC="ctree3.gif" alt="DHCP-Konfigurationsbaum, Sicherheitsstufe 3, SubnetX-Berechtigungen überprüfen" height=229 width=314><h3> BENUTZERHINWEISE: </h3><h3> ANMERKUNGEN DES ENTWICKLERS: </h3></body></html>

View File

@@ -1 +1 @@
<!doctype html public "-//w3c//dtd html 4.0 transitional//en"><html><head><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"><meta name="GENERATOR" content="Mozilla/4.72 [en] (X11; U; Linux 2.2.14-6.1.1 i686) [Netscape]"></head><body><center><h1> Υποσύστημα DHCPD ACL </h1></center><h3> ΣΤΟΧΟΙ: </h3> Οι κύριοι στόχοι του υποσυστήματος acl είναι η παροχή ενός ισχυρού, ευέλικτου και επεκτάσιμου μηχανισμού για έλεγχο πρόσβασης διαφορετικών αντικειμένων σε διαμόρφωση dhcpd. Αυτά τα αντικείμενα είναι κοινόχρηστα δίκτυα, υποδίκτυα, ομάδες κεντρικών υπολογιστών και κεντρικών υπολογιστών. <br> Επίσης, το υποσύστημα acl σας επιτρέπει να ελέγχετε ορισμένες άλλες δυνατότητες, όπως: μοναδικά ονόματα αντικειμένων, εφαρμογή αλλαγμένης διαμόρφωσης, προβολή και διαγραφή μισθώσεων dhcp. <h3> ΕΝΝΟΙΕΣ: </h3> Αρχείο διαμόρφωσης Dhcpd που μπορούμε να δείξουμε ως δομή δέντρου. Κάθε κόμβος αυτού του δέντρου αντιπροσωπεύει μια διαμόρφωση διαφορετικών αντικειμένων dhcp (εικ. 0). <p> Το υποσύστημα Acl έχει 2 επίπεδα δικαιωμάτων: <ul><li> παγκόσμιο: ανάγνωση, εγγραφή, δημιουργία; </li><li> ανά αντικείμενο: ανάγνωση, εγγραφή. </li></ul> Υπάρχουν καθολικά δικαιώματα για κάθε τύπο αντικειμένων (κεντρικοί υπολογιστές, ομάδες, υποδίκτυα, κοινόχρηστα δίκτυα) και ελέγχει τις λειτουργίες με ένα σύνολο αντικειμένων συγκεκριμένου τύπου. <br> Παγκόσμια δημιουργία <br> Παγκόσμια ανάγνωση <br> Παγκόσμια γραφή <br> Τα δικαιώματα ανά αντικείμενο σας δίνουν έναν πιο ευέλικτο τρόπο ελέγχου πρόσβασης. Δικαιώματα ανά αντικείμενο υπάρχει για κάθε αντικείμενο μεμονωμένο αντικείμενο. Σήμερα έχουν τεθεί σε εφαρμογή μόνο κεντρικοί υπολογιστές και υποδίκτυα ανά αντικείμενο. <br> Ανά ανά αντικείμενο <br> Εγγραφή ανά αντικείμενο <br> Το υποσύστημα Acl μπορεί να λειτουργήσει σε 4 διαφορετικά επίπεδα ασφαλείας (ή τρόπους). <br><img SRC="ctree0.gif" alt="δέντρο διαμόρφωσης dhcpd, επίπεδο ασφαλείας 0, ελέγξτε τα δικαιώματα subnetX" height=229 width=314><br><p><img SRC="ctree1.gif" alt="δέντρο διαμόρφωσης dhcpd, επίπεδο ασφάλειας 1, ελέγξτε τα δικαιώματα subnetX" height=229 width=314><p><img SRC="ctree2.gif" alt="δέντρο διαμόρφωσης dhcpd, επίπεδο ασφαλείας 2, ελέγξτε τα δικαιώματα subnetX" height=229 width=314><p><img SRC="ctree3.gif" alt="δέντρο διαμόρφωσης dhcpd, επίπεδο ασφάλειας 3, ελέγξτε τα δικαιώματα subnetX" height=229 width=314><h3> ΣΗΜΕΙΩΣΕΙΣ ΧΡΗΣΤΗ: </h3><h3> ΣΗΜΕΙΩΣΕΙΣ ΑΝΑΠΤΥΞΗΣ: </h3></body></html>
<!doctype html public "-//w3c//dtd html 4.0 transitional//en"><html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><meta name="GENERATOR" content="Mozilla/4.72 [en] (X11; U; Linux 2.2.14-6.1.1 i686) [Netscape]"></head><body><center><h1> Υποσύστημα DHCPD ACL </h1></center><h3> ΣΤΟΧΟΙ: </h3> Οι κύριοι στόχοι του υποσυστήματος acl είναι η παροχή ενός ισχυρού, ευέλικτου και επεκτάσιμου μηχανισμού για έλεγχο πρόσβασης διαφορετικών αντικειμένων σε διαμόρφωση dhcpd. Αυτά τα αντικείμενα είναι κοινόχρηστα δίκτυα, υποδίκτυα, ομάδες κεντρικών υπολογιστών και κεντρικών υπολογιστών. <br> Επίσης, το υποσύστημα acl σας επιτρέπει να ελέγχετε ορισμένες άλλες δυνατότητες, όπως: μοναδικά ονόματα αντικειμένων, εφαρμογή αλλαγμένης διαμόρφωσης, προβολή και διαγραφή μισθώσεων dhcp. <h3> ΕΝΝΟΙΕΣ: </h3> Αρχείο διαμόρφωσης Dhcpd που μπορούμε να δείξουμε ως δομή δέντρου. Κάθε κόμβος αυτού του δέντρου αντιπροσωπεύει μια διαμόρφωση διαφορετικών αντικειμένων dhcp (εικ. 0). <p> Το υποσύστημα Acl έχει 2 επίπεδα δικαιωμάτων: <ul><li> παγκόσμιο: ανάγνωση, εγγραφή, δημιουργία; </li><li> ανά αντικείμενο: ανάγνωση, εγγραφή. </li></ul> Υπάρχουν καθολικά δικαιώματα για κάθε τύπο αντικειμένων (κεντρικοί υπολογιστές, ομάδες, υποδίκτυα, κοινόχρηστα δίκτυα) και ελέγχει τις λειτουργίες με ένα σύνολο αντικειμένων συγκεκριμένου τύπου. <br> Παγκόσμια δημιουργία <br> Παγκόσμια ανάγνωση <br> Παγκόσμια γραφή <br> Τα δικαιώματα ανά αντικείμενο σας δίνουν έναν πιο ευέλικτο τρόπο ελέγχου πρόσβασης. Δικαιώματα ανά αντικείμενο υπάρχει για κάθε αντικείμενο μεμονωμένο αντικείμενο. Σήμερα έχουν τεθεί σε εφαρμογή μόνο κεντρικοί υπολογιστές και υποδίκτυα ανά αντικείμενο. <br> Ανά ανά αντικείμενο <br> Εγγραφή ανά αντικείμενο <br> Το υποσύστημα Acl μπορεί να λειτουργήσει σε 4 διαφορετικά επίπεδα ασφαλείας (ή τρόπους). <br><img SRC="ctree0.gif" alt="δέντρο διαμόρφωσης dhcpd, επίπεδο ασφαλείας 0, ελέγξτε τα δικαιώματα subnetX" height=229 width=314><br><p><img SRC="ctree1.gif" alt="δέντρο διαμόρφωσης dhcpd, επίπεδο ασφάλειας 1, ελέγξτε τα δικαιώματα subnetX" height=229 width=314><p><img SRC="ctree2.gif" alt="δέντρο διαμόρφωσης dhcpd, επίπεδο ασφαλείας 2, ελέγξτε τα δικαιώματα subnetX" height=229 width=314><p><img SRC="ctree3.gif" alt="δέντρο διαμόρφωσης dhcpd, επίπεδο ασφάλειας 3, ελέγξτε τα δικαιώματα subnetX" height=229 width=314><h3> ΣΗΜΕΙΩΣΕΙΣ ΧΡΗΣΤΗ: </h3><h3> ΣΗΜΕΙΩΣΕΙΣ ΑΝΑΠΤΥΞΗΣ: </h3></body></html>

View File

@@ -1,7 +1,7 @@
<!doctype html public "-//w3c//dtd html 4.0 transitional//en">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<meta name="GENERATOR" content="Mozilla/4.72 [en] (X11; U; Linux 2.2.14-6.1.1 i686) [Netscape]">
</head>
<body>

Some files were not shown because too many files have changed in this diff Show More