{"id":340355,"date":"2022-10-28T09:00:08","date_gmt":"2022-10-28T09:00:08","guid":{"rendered":"http:\/\/savepearlharbor.com\/?p=340355"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-29T21:00:00","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=340355","title":{"rendered":"<span>\u0418\u043c\u043f\u043e\u0440\u0442\u043e\u0437\u0430\u043c\u0435\u0449\u0435\u043d\u0438\u0435 \u043d\u0430 \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0435. \u0427\u0430\u0441\u0442\u044c 6. \u041f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u0438\u0435 \u0440\u0430\u0431\u043e\u0447\u0438\u0435 \u043c\u0435\u0441\u0442\u0430<\/span>"},"content":{"rendered":"<div><\/div>\n<div id=\"post-content-body\">\n<div>\n<div class=\"article-formatted-body article-formatted-body article-formatted-body_version-2\">\n<div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\">\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/5fc\/b3e\/160\/5fcb3e160894d7703abc08e317193418.png\" width=\"750\" height=\"396\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/5fc\/b3e\/160\/5fcb3e160894d7703abc08e317193418.png\"\/><figcaption><\/figcaption><\/figure>\n<p>\u042d\u0442\u0430 \u0441\u0442\u0430\u0442\u044c\u044f \u0434\u043e\u0432\u043e\u043b\u044c\u043d\u043e \u0434\u043e\u043b\u0433\u043e \u043d\u0435 \u043c\u043e\u0433\u043b\u0430 \u0443\u0432\u0438\u0434\u0435\u0442\u044c \u0441\u0432\u0435\u0442, \u043f\u043e \u0440\u044f\u0434\u0443 \u043f\u0440\u0438\u0447\u0438\u043d, \u043e\u0442 \u043f\u0440\u043e\u0431\u043b\u0435\u043c \u0441\u043e \u0437\u0434\u043e\u0440\u043e\u0432\u044c\u0435\u043c \u043f\u043e\u0441\u043b\u0435 COVID (\u044f \u043e\u0442\u0443\u043f\u0435\u043b), \u0434\u043e \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0438\u044f \u0432\u0440\u0435\u043c\u0435\u043d\u0438. \u0412\u0440\u0435\u043c\u044f \u0448\u043b\u043e, \u0438\u043c\u043f\u043e\u0440\u0442\u043e\u0437\u0430\u043c\u0435\u0449\u0435\u043d\u0438\u0435 \u043d\u0430\u0431\u0438\u0440\u0430\u043b\u043e \u043e\u0431\u043e\u0440\u043e\u0442\u044b, \u043f\u0438\u043b\u043e\u0442\u044b \u0441\u0442\u0430\u043d\u043e\u0432\u0438\u043b\u0438\u0441\u044c \u043f\u0440\u043e\u0434\u0430\u043a\u0448-\u0441\u0440\u0435\u0434\u0430\u043c\u0438, \u0438 \u0432\u0441\u0435 <s>\u043a\u0430\u0442\u0438\u043b\u043e\u0441\u044c \u043f\u043e\u0434 \u043e\u0442\u043a\u043e\u0441<\/s> \u0448\u043b\u043e \u043a \u0441\u0432\u0435\u0442\u043b\u043e\u043c\u0443 \u0431\u0443\u0434\u0443\u0449\u0435\u043c\u0443.<\/p>\n<p>\u041a\u0430\u043a\u043e\u0435-\u0442\u043e \u0432\u0440\u0435\u043c\u044f \u043d\u0430\u0437\u0430\u0434 \u043c\u044b \u0441 \u043a\u043e\u043c\u0430\u043d\u0434\u043e\u0439 \u0442\u043e\u0436\u0435 \u043f\u0440\u0438\u0441\u0442\u0443\u043f\u0438\u043b\u0438 \u043a \u043f\u0438\u043b\u043e\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044e \u043c\u0438\u0433\u0440\u0430\u0446\u0438\u0438 \u043d\u0430 \u00ab\u043e\u0442\u0435\u0447\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0435\u00bb \u041f\u041e. \u0418 \u0432\u043e\u0442, \u0447\u0442\u043e \u0438\u0437 \u044d\u0442\u043e\u0433\u043e \u0432\u044b\u0448\u043b\u043e.<\/p>\n<p>\u041d\u0430\u0447\u0430\u043b\u043e\u0441\u044c \u0432\u0441\u0435 \u0441 \u0440\u0430\u0437\u0433\u043e\u0432\u043e\u0440\u043e\u0432. \u0410 \u043a\u0443\u0434\u0430 \u0431\u0435\u0437 \u043d\u0438\u0445?<\/p>\n<p>\u0421 \u0447\u0435\u0433\u043e \u043d\u0430\u0447\u0438\u043d\u0430\u0435\u0442\u0441\u044f \u043c\u0438\u0433\u0440\u0430\u0446\u0438\u044f? \u0421 \u0432\u044b\u0431\u043e\u0440\u0430 \u041f\u041e? \u041d\u0435\u0442, \u0441 \u043f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0438 \u0430\u043d\u0430\u043b\u0438\u0437\u0430.<\/p>\n<p><em>    &#8212; \u0427\u0435\u0433\u043e \u043c\u044b \u0445\u043e\u0442\u0438\u043c \u0434\u043e\u0441\u0442\u0438\u0447\u044c?<\/em><\/p>\n<p><em>    &#8212; \u0417\u0430\u043c\u0435\u0441\u0442\u0438\u0442\u044c \u0438\u043c\u043f\u043e\u0440\u0442\u043d\u044b\u0435 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u044b\u0435 \u043f\u0440\u043e\u0434\u0443\u043a\u0442\u044b \u043e\u0442\u0435\u0447\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u043c\u0438 \u0430\u043d\u0430\u043b\u043e\u0433\u0430\u043c\u0438.<\/em><\/p>\n<p><em>    &#8212; \u041f\u043e\u043b\u043d\u043e\u0441\u0442\u044c\u044e?<\/em><\/p>\n<p><em>    &#8212; \u0414\u0430.<\/em><\/p>\n<p><em>    &#8212; \u0410 \u0435\u0441\u043b\u0438 \u0430\u043d\u0430\u043b\u043e\u0433\u043e\u0432 \u043d\u0435\u0442?<\/em><\/p>\n<p><em>    &#8212; \u0422\u043e\u0433\u0434\u0430 \u0432 \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u043c \u043e\u0431\u044a\u0435\u043c\u0435.<\/em><\/p>\n<p>\u0418 \u0442\u0443\u0442 \u0443 \u043d\u0430\u0441 \u0432\u0441\u0442\u0430\u043b\u0430 \u0434\u0438\u043b\u0435\u043c\u043c\u0430. \u041f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u0438 \u041a\u043e\u043c\u043f\u0430\u043d\u0438\u0438 \u0432 \u0440\u0430\u0431\u043e\u0442\u0435 \u043f\u043e\u043c\u0438\u043c\u043e \u043f\u0440\u043e\u0447\u0435\u0433\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0442 CAD \u0438 PLM \u0441\u043e\u0444\u0442, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u0440\u043e\u0441\u0442\u043e \u043d\u0435 \u0443\u043c\u0435\u0435\u0442 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u043d\u0430 Linux. \u0412\u0435\u0440\u043d\u0435\u0435, \u0443\u043c\u0435\u0435\u0442, \u043d\u043e \u0447\u0435\u0440\u0435\u0437 \u043a\u043e\u0441\u0442\u044b\u043b\u0438 wine\u2019\u0430, \u0447\u0442\u043e \u0432\u044b\u0437\u044b\u0432\u0430\u0435\u0442 \u043d\u0435\u0434\u043e\u0432\u043e\u043b\u044c\u0441\u0442\u0432\u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439 \u0432 \u043f\u043b\u0430\u043d\u0435 \u0431\u044b\u0441\u0442\u0440\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f. \u0422\u0430\u043a \u0436\u0435 \u043c\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c VDI Horizon, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0443\u043c\u0435\u0435\u0442 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0442\u043e\u043b\u044c\u043a\u043e \u0441 AD. \u0410 \u0430\u043d\u0430\u043b\u043e\u0433\u043e\u0432 \u0443 Horizon \u043d\u0435\u0442. \u0418 \u043d\u0435 \u0433\u043e\u0432\u043e\u0440\u0438\u0442\u0435 \u043f\u0440\u043e \u0432\u0441\u044f\u043a\u0438\u0435 \u0442\u0430\u043c \u043d\u0430\u0434\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0434\u043b\u044f ProxMox \u0438 \u0432\u043e\u0442 \u044d\u0442\u043e \u0432\u043e\u0442 \u0432\u0441\u0435. \u041d\u0438 \u043e\u0434\u043d\u0430 \u0438\u0437 \u0434\u0440\u0443\u0433\u0438\u0445 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0445 VDI-\u0441\u0438\u0441\u0442\u0435\u043c \u043d\u0435 \u0443\u043c\u0435\u0435\u0442 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0441 Instant Clones. \u041c\u0430\u043a\u0441\u0438\u043c\u0443\u043c, \u0447\u0442\u043e \u043f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u0435\u0442 OpenSource (\u0438 \u0438\u043c\u043f\u043e\u0440\u0442\u043e\u0437\u0430\u043c\u0435\u0449\u0435\u043d\u0438\u0435, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u043e \u043d\u0430 OpenSource) &#8212; \u044d\u0442\u043e Linked Clones. \u0410 \u0443 \u043d\u0430\u0441 \u043d\u0430 IC \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u044b \u043a\u0430\u043a Windows \u043f\u0443\u043b\u044b, \u0442\u0430\u043a \u0438 Linux. \u0418 \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c VDI-\u0440\u0430\u0431\u043e\u0447\u0438\u0435 \u0441\u0442\u043e\u043b\u044b \u043a\u0430\u043a \u043f\u043e\u043b\u043d\u043e\u0446\u0435\u043d\u043d\u044b\u0435 \u043c\u0430\u0448\u0438\u043d\u044b \u2014 \u044d\u0442\u043e \u0441\u043c\u0435\u0440\u0442\u0438 \u043f\u043e\u0434\u043e\u0431\u043d\u043e, \u0438 \u0441\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c \u0432\u043b\u0430\u0434\u0435\u043d\u0438\u044f \u0432\u044b\u0440\u0430\u0441\u0442\u0430\u0435\u0442 \u0437\u0430 \u0441\u0447\u0435\u0442 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u0438 \u0434\u0435\u0440\u0436\u0430\u0442\u044c \u043e\u0433\u0440\u043e\u043c\u043d\u044b\u0439 \u0448\u0442\u0430\u0442 \u0442\u0435\u0445\u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u043c\u044b \u043d\u0435 \u0441\u043c\u043e\u0436\u0435\u043c \u043f\u043e\u043b\u043d\u043e\u0441\u0442\u044c\u044e \u0443\u0439\u0442\u0438 \u043e\u0442 Windows, \u043a\u0430\u043a \u0431\u044b \u043d\u0430\u043c \u044d\u0442\u043e\u0433\u043e \u043d\u0438 \u0445\u043e\u0442\u0435\u043b\u043e\u0441\u044c. \u0418 \u0438\u0437 \u044d\u0442\u043e\u0433\u043e \u0432\u044b\u0442\u0435\u043a\u0430\u0435\u0442 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0435:<\/p>\n<ul>\n<li>\n<p><strong><u>\u041c\u044b \u043d\u0435 \u0441\u043c\u043e\u0436\u0435\u043c \u0443\u0439\u0442\u0438 \u043e\u0442 \u0434\u043e\u043c\u0435\u043d\u0430 \u043d\u0430 \u0431\u0430\u0437\u0435 Windows<\/u><\/strong><\/p>\n<\/li>\n<li>\n<p>\u0414\u043b\u044f \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0435\u043d\u0438\u044f \u0440\u0430\u0431\u043e\u0442\u043e\u0441\u043f\u043e\u0441\u043e\u0431\u043d\u043e\u0441\u0442\u0438 \u0438\u043d\u0444\u0440\u0430\u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u044b \u043d\u0443\u0436\u043d\u044b \u0442\u0430\u043a\u0436\u0435 \u0441\u0435\u0440\u0432\u0438\u0441\u044b DNS, DHCP, WSUS, CA and etc, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043d\u0435\u0442 \u0441\u043c\u044b\u0441\u043b\u0430 (\u0438\u043b\u0438 \u043d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e) \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0438\u0442\u044c \u043d\u0430 Linux.<\/p>\n<\/li>\n<\/ul>\n<p>\u0410 \u0440\u0430\u0437 \u043c\u044b \u043d\u0435 \u0441\u043c\u043e\u0436\u0435\u043c \u043f\u043e\u043b\u043d\u043e\u0441\u0442\u044c\u044e \u0438\u043c\u043f\u043e\u0440\u0442\u043e\u0437\u0430\u043c\u0435\u0441\u0442\u0438\u0442\u044c\u0441\u044f, \u0442\u043e \u0438 \u043f\u0440\u043e\u0435\u043a\u0442 \u043d\u0435 \u0438\u043c\u0435\u0435\u0442 \u043e\u0441\u043e\u0431\u043e\u0433\u043e \u0441\u043c\u044b\u0441\u043b\u0430. \u041d\u0430 \u044d\u0442\u043e\u043c \u043c\u043e\u0436\u043d\u043e \u0431\u044b\u043b\u043e \u0431\u044b \u0438 \u0437\u0430\u043a\u043e\u043d\u0447\u0438\u0442\u044c, \u043d\u043e \u043c\u044b \u0440\u0435\u0448\u0438\u043b\u0438, \u0447\u0442\u043e \u0440\u0430\u0437 \u0443\u0436 \u0438\u043d\u0444\u0440\u0430\u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0443 \u0438\u043c\u043f\u043e\u0440\u0442\u043e\u0437\u0430\u043c\u0435\u0441\u0442\u0438\u0442\u044c \u043d\u0435 \u0432\u044b\u0439\u0434\u0435\u0442 \u2014 \u0437\u0430\u0439\u043c\u0435\u043c\u0441\u044f \u0445\u043e\u0442\u044f \u0431\u044b \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u043e\u0439 \u0441\u0440\u0435\u0434\u043e\u0439. \u0410 \u0441\u043e \u0441\u0442\u043e\u0440\u043e\u043d\u044b \u0438\u043d\u0444\u0440\u044b \u0441\u0434\u0435\u043b\u0430\u0435\u043c \u0432\u0441\u0435, \u0447\u0442\u043e \u0441\u043c\u043e\u0436\u0435\u043c. Zabbix \u043f\u0435\u0440\u0435\u0432\u0435\u0437\u0435\u043c \u043d\u0430 \u043e\u0442\u0435\u0447\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u0443\u044e \u041e\u0421\u044c.. \u0435\u0449\u0435 \u0447\u0435\u0433\u043e-\u043d\u0438\u0431\u0443\u0434\u044c.. \u041f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0430, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043f\u043e\u0447\u0442\u043e\u0432\u043e\u0433\u043e \u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u0437\u0430\u043a\u043b\u044e\u0447\u0430\u0435\u0442\u0441\u044f \u0432 \u0442\u043e\u043c, \u0447\u0442\u043e Exchange \u0443 \u043d\u0430\u0441 \u0435\u0441\u0442\u044c, \u0438 \u043e\u043d \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442.. \u0410 \u0447\u0442\u043e\u0431\u044b \u0435\u0433\u043e \u0437\u0430\u043c\u0435\u043d\u0438\u0442\u044c \u043d\u0430 \u0443\u0441\u043b\u043e\u0432\u043d\u044b\u0439 Communigate Pro \u043d\u0430\u043c \u043d\u0443\u0436\u043d\u043e \u043f\u043e\u0442\u0440\u0430\u0442\u0438\u0442\u044c \u043a\u0443\u0447\u0443 \u0434\u0435\u043d\u0435\u0433. \u0410 \u043a\u0442\u043e \u0436\u0435 \u043b\u044e\u0431\u0438\u0442 \u0442\u0440\u0430\u0442\u0438\u0442\u044c \u0434\u0435\u043d\u044c\u0433\u0438, \u0435\u0441\u043b\u0438 \u0438 \u0442\u0430\u043a \u0432\u0441\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442?.. \u0418 \u0442\u0430\u043a \u0441 \u0431\u043e\u043b\u044c\u0448\u0438\u043d\u0441\u0442\u0432\u043e\u043c \u0440\u0430\u0437\u0432\u0435\u0440\u043d\u0443\u0442\u044b\u0445 \u0432 \u043f\u0440\u043e\u0434\u0435 \u0441\u0438\u0441\u0442\u0435\u043c.<\/p>\n<p>\u041d\u0430 \u0442\u043e\u043c \u0438 \u043f\u043e\u0440\u0435\u0448\u0430\u043b\u0438.<\/p>\n<h2>0. Ansible<\/h2>\n<p>\u041a\u0430\u043a \u043f\u043e\u0434\u043d\u044f\u0442\u044c Ansible \u044f \u043f\u0438\u0441\u0430\u0442\u044c \u043d\u0435 \u0431\u0443\u0434\u0443, \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438 \u043e\u0431 \u044d\u0442\u043e\u043c \u0432 \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u0430\u0445 \u0431\u043e\u043b\u0435\u0435, \u0447\u0435\u043c \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e, \u043d\u0435 \u0432\u0438\u0436\u0443 \u0441\u043c\u044b\u0441\u043b\u0430 \u0437\u0430\u0433\u0440\u043e\u043c\u043e\u0436\u0434\u0430\u0442\u044c \u0441\u0442\u0430\u0442\u044c\u044e \u043b\u0438\u0448\u043d\u0435\u0439 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0435\u0439. \u0413\u043b\u0430\u0432\u043d\u043e\u0435, \u0447\u0442\u043e \u0442\u0430\u043c \u043d\u0443\u0436\u043d\u043e \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u2014 \u044d\u0442\u043e \u0441\u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u0442\u044c ssh-\u043a\u043b\u044e\u0447, \u0441 \u043a\u043e\u0442\u043e\u0440\u044b\u043c Ansible \u0431\u0443\u0434\u0435\u0442 \u0445\u043e\u0434\u0438\u0442\u044c \u043a \u043a\u043b\u0438\u0435\u043d\u0442\u0430\u043c, \u0438 \u043f\u0440\u043e\u0434\u0443\u043c\u0430\u0442\u044c \u0434\u043e\u0441\u0442\u0430\u0432\u043a\u0443 \u044d\u0442\u043e\u0433\u043e \u043a\u043b\u044e\u0447\u0430 \u043d\u0430 \u043a\u043b\u0438\u0435\u043d\u0442\u043e\u0432.<\/p>\n<p>\u0418 \u0435\u0449\u0435 \u043e\u0434\u0438\u043d \u043d\u044e\u0430\u043d\u0441 \u2013 \u0434\u0438\u043d\u0430\u043c\u0438\u0447\u0435\u0441\u043a\u043e\u0435 inventory. \u041a\u043b\u0438\u0435\u043d\u0442\u0441\u043a\u0438\u0435 \u041f\u041a \u2013 \u0434\u0435\u043b\u043e \u043d\u0435\u043f\u043e\u0441\u0442\u043e\u044f\u043d\u043d\u043e\u0435: \u043a\u0442\u043e-\u0442\u043e \u0443\u0432\u043e\u043b\u0438\u043b\u0441\u044f, \u043a\u0442\u043e-\u0442\u043e \u043f\u0440\u0438\u0448\u0435\u043b, \u043a\u0430\u043a\u0438\u0435-\u0442\u043e \u041f\u041a \u0432\u044b\u043a\u043b\u044e\u0447\u0435\u043d\u044b, \u043a\u0430\u043a\u0438\u0435-\u0442\u043e \u0431\u043e\u043b\u044c\u0448\u0435 \u043d\u0435 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0442. \u0418 \u043a\u0430\u043a \u044d\u0442\u043e \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0442\u044c \u0432 \u0430\u043a\u0442\u0443\u0430\u043b\u044c\u043d\u043e\u043c \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0438 \u2013 \u0446\u0435\u043b\u0430\u044f \u0437\u0430\u0434\u0430\u0447\u0430. \u041e\u0441\u043e\u0431\u0435\u043d\u043d\u043e, \u043a\u043e\u0433\u0434\u0430 \u0440\u0435\u0447\u044c \u0438\u0434\u0435\u0442 \u043d\u0435 \u043e \u0434\u0435\u0441\u044f\u0442\u043a\u0430\u0445, \u0438 \u0434\u0430\u0436\u0435 \u043d\u0435 \u043e \u0441\u043e\u0442\u043d\u044f\u0445, \u0430 \u043e \u0442\u044b\u0441\u044f\u0447\u0430\u0445 \u043c\u0430\u0448\u0438\u043d. \u041c\u044b \u043f\u043e\u0448\u043b\u0438 \u043f\u043e \u0431\u043e\u043b\u0435\u0435-\u043c\u0435\u043d\u0435\u0435 \u043f\u0440\u043e\u0441\u0442\u043e\u043c\u0443 \u043f\u0443\u0442\u0438 \u2013 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u043f\u043b\u0430\u0433\u0438\u043d\u0430 <a href=\"https:\/\/docs.ansible.com\/ansible\/latest\/collections\/community\/general\/nmap_inventory.html\" rel=\"noopener noreferrer nofollow\">nmap <\/a>\u0432 \u0441\u0432\u044f\u0437\u043a\u0435 \u0441 \u043f\u043b\u0430\u0433\u0438\u043d\u043e\u043c <a href=\"https:\/\/docs.ansible.com\/ansible\/latest\/collections\/ansible\/builtin\/constructed_inventory.html\" rel=\"noopener noreferrer nofollow\">constructed<\/a> \u0434\u043b\u044f Ansible. \u041f\u0440\u0438 \u0437\u0430\u043f\u0443\u0441\u043a\u0435 \u043e\u043d \u043e\u043f\u0440\u0430\u0448\u0438\u0432\u0430\u0435\u0442 \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u044b\u0435 \u043f\u043e\u0434\u0441\u0435\u0442\u0438 \u0438 \u0444\u043e\u0440\u043c\u0438\u0440\u0443\u0435\u0442 \u0441\u043f\u0438\u0441\u043e\u043a \u0445\u043e\u0441\u0442\u043e\u0432 \u0434\u043b\u044f \u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u043f\u043b\u0435\u0439\u0431\u0443\u043a\u043e\u0432 \u0438\u043b\u0438 \u0440\u043e\u043b\u0435\u0439, \u0430 \u043f\u043e\u0442\u043e\u043c \u0434\u0435\u043b\u0430\u0435\u0442 \u0441\u0432\u043e\u0438 \u0433\u0440\u044f\u0437\u043d\u044b\u0435 \u0434\u0435\u043b\u0438\u0448\u043a\u0438 \u043d\u0430 \u043e\u0442\u043e\u0431\u0440\u0430\u043d\u043d\u044b\u0435 \u043f\u043e \u043f\u0440\u0430\u0432\u0438\u043b\u0430\u043c \u0445\u043e\u0441\u0442\u044b.<\/p>\n<h3>0.1. \u041c\u0443\u043a\u0438 \u0432\u044b\u0431\u043e\u0440\u0430 \u0434\u0438\u0441\u0442\u0440\u0438\u0431\u0443\u0442\u0438\u0432\u0430<\/h3>\n<p>\u0418\u0437 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u043d\u044b\u0445 \u043d\u0430 \u0440\u044b\u043d\u043a\u0435 \u00ab\u043e\u0442\u0435\u0447\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0445\u00bb \u041e\u0421 \u043f\u043e \u0444\u0430\u043a\u0442\u0443 \u0432\u044b\u0431\u043e\u0440-\u0442\u043e \u0438 \u043d\u0435 \u0432\u0435\u043b\u0438\u043a, \u0431\u043b\u0430\u0433\u043e, 99% \u043d\u0430\u0448\u0438\u0445 \u0440\u0430\u0431\u043e\u0447\u0438\u0445 \u043c\u0435\u0441\u0442 \u043d\u0435 \u043d\u0443\u0436\u043d\u043e \u0437\u0430\u043a\u0440\u044b\u0432\u0430\u0442\u044c \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u0446\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u043c\u0438 \u041e\u0421\u044f\u043c\u0438. DEB \u0438\u043b\u0438 RPM, Gentoo-\u043f\u043e\u0434\u043e\u0431\u043d\u044b\u0435 \u043f\u043e\u0434\u0435\u043b\u043a\u0438 \u0434\u043b\u044f \u0446\u0435\u043d\u0442\u0440\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u043d\u043e\u0433\u043e \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0434\u0430\u0436\u0435 \u043d\u0435 \u0440\u0430\u0441\u0441\u043c\u0430\u0442\u0440\u0438\u0432\u0430\u043b\u0438\u0441\u044c, \u0441\u043f\u0430\u0441\u0438\u0431\u043e. \u0410\u0441\u0442\u0440\u0430\\\u0410\u043b\u044c\u0442\\\u0420\u0435\u0434\u041e\u0421\\ROSA. \u041f\u0440\u043e\u0431\u043b\u0435\u043c\u0430 \u0432 \u0442\u043e\u043c, \u0447\u0442\u043e \u0432\u0441\u0435 \u043e\u043d\u0438 \u043f\u043b\u0430\u0442\u043d\u044b\u0435. \u041d\u043e. \u0423 \u0410\u043b\u044c\u0442\u0430 \u0435\u0441\u0442\u044c \u0444\u043e\u0440\u043a &#8212; <a href=\"https:\/\/www.basealt.ru\/simplylinux\" rel=\"noopener noreferrer nofollow\">Simply Linux<\/a>, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 <a href=\"https:\/\/www.basealt.ru\/about\/news\/archive\/view\/rossiiskaja-os-simply-linux-besplatno-vsem-postradavshim-ot-sankcii\" rel=\"noopener noreferrer nofollow\">\u0431\u0435\u0441\u043f\u043b\u0430\u0442\u0435\u043d \u0434\u043b\u044f \u043a\u043e\u043c\u043c\u0435\u0440\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f<\/a>. \u0414\u0443\u043c\u0430\u044e, \u0434\u0430\u043b\u044c\u0448\u0435 \u043d\u0435 \u0441\u0442\u043e\u0438\u0442 \u043e\u0431\u044a\u044f\u0441\u043d\u044f\u0442\u044c, \u043f\u043e\u0447\u0435\u043c\u0443 \u043c\u044b \u0432\u044b\u0431\u0440\u0430\u043b\u0438 Simply Linux.<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/810\/826\/589\/810826589a332a6261c2dddbdab87f41.png\" width=\"604\" height=\"297\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/810\/826\/589\/810826589a332a6261c2dddbdab87f41.png\"\/><figcaption><\/figcaption><\/figure>\n<p>\u041d\u0438\u0436\u0435 \u0435\u0441\u0442\u044c \u0433\u043b\u0430\u0432\u0430 \u043f\u0440\u043e \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0435 ISO-\u043e\u0431\u0440\u0430\u0437\u0430.<\/p>\n<h2>1. \u041b\u043e\u043a\u0430\u043b\u044c\u043d\u044b\u0439 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0439<\/h2>\n<p>\u0412 \u043d\u0430\u0448\u0435\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u0432\u0441\u0435 \u0434\u0430\u0436\u0435 \u043f\u0440\u043e\u0449\u0435, \u0447\u0435\u043c \u043e\u0431\u044b\u0447\u043d\u043e. \u0411\u0430\u0437\u0410\u043b\u044c\u0442 \u0441\u0434\u0435\u043b\u0430\u043b \u0432\u0435\u0431-\u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0432 \u043f\u0430\u0440\u0443 \u043a\u043b\u0438\u043a\u043e\u0432 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u0440\u0435\u043f\u043b\u0438\u043a\u0430\u0446\u0438\u044e \u0438\u0445 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u044f (\u0432\u044b\u0431\u0440\u0430\u043d\u043d\u044b\u0445 \u0432\u0435\u0442\u043e\u043a).<\/p>\n<p>\u0412\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u0432\u043e\u0442 \u0442\u0430\u043a:<\/p>\n<figure class=\"full-width\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/174\/6ee\/98f\/1746ee98ffca127746b56f0a99a3f7bf.png\" width=\"1033\" height=\"790\" data-src=\"https:\/\/habrastorage.org\/getpro\/habr\/upload_files\/174\/6ee\/98f\/1746ee98ffca127746b56f0a99a3f7bf.png\"\/><figcaption><\/figcaption><\/figure>\n<p>\u0427\u0442\u043e\u0431\u044b \u043f\u043e\u043f\u0430\u0441\u0442\u044c \u043d\u0430 \u044d\u0442\u0443 \u0441\u0442\u0440\u0430\u043d\u0438\u0447\u043a\u0443, \u043d\u0443\u0436\u043d\u043e \u0434\u043e\u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u043f\u0430\u043a\u0435\u0442\u044b <a href=\"https:\/\/www.altlinux.org\/Alterator-ahttpd-server\" rel=\"noopener noreferrer nofollow\">ahttpd<\/a>, alterator-fbi \u0438 <a href=\"https:\/\/www.altlinux.org\/Alterator-mirror\" rel=\"noopener noreferrer nofollow\">alterator-mirror<\/a>, \u0438 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c-\u0430\u043a\u0442\u0438\u0432\u0438\u0440\u043e\u0432\u0430\u0442\u044c ahttpd:<\/p>\n<pre><code class=\"bash\">systemctl start ahttpd systemctl enable ahttpd<\/code><\/pre>\n<p>\u0412 \u0446\u0435\u043b\u043e\u043c \u0432 \u044d\u0442\u043e\u0439 \u0430\u0434\u043c\u0438\u043d\u043a\u0435 \u0434\u043e\u0432\u043e\u043b\u044c\u043d\u043e \u043c\u043d\u043e\u0433\u043e \u0444\u0443\u043d\u043a\u0446\u0438\u0439 \u043f\u043e\u043c\u0438\u043c\u043e \u0437\u0435\u0440\u043a\u0430\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u044f, \u0434\u043e\u0441\u0442\u0443\u043f \u043a \u043a\u043e\u0442\u043e\u0440\u044b\u043c \u043e\u0442\u043a\u0440\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u0441 \u0434\u043e\u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u043e\u0439 \u043d\u0443\u0436\u043d\u044b\u0445 \u043f\u0430\u043a\u0435\u0442\u043e\u0432 \u0430\u043b\u044c\u0442\u0435\u0440\u0430\u0442\u043e\u0440\u0430.<\/p>\n<p>\u0414\u0430\u043b\u044c\u0448\u0435 \u043c\u044b \u0441\u0442\u043e\u043b\u043a\u043d\u0443\u043b\u0438\u0441\u044c \u0441 \u0442\u0435\u043c, \u0447\u0442\u043e \u043d\u0435\u043b\u044c\u0437\u044f \u0432\u044b\u0431\u0440\u0430\u0442\u044c, \u043a\u0443\u0434\u0430 \u0431\u0443\u0434\u0443\u0442 \u0437\u0435\u0440\u043a\u0430\u043b\u0438\u0440\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u043f\u0430\u043a\u0435\u0442\u044b. \u0412 \u0412\u0438\u043a\u0435 \u0410\u043b\u044c\u0442\u0430 \u043f\u0438\u0448\u0443\u0442 \u043f\u0440\u043e \u0442\u043e, \u0447\u0442\u043e \u043d\u0430\u0434\u043e \u043b\u0435\u0437\u0442\u044c \u0432 <code>fstab<\/code>, \u0438 \u0442\u0430\u043c \u043c\u043e\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0436\u0435\u043b\u0430\u0435\u043c\u043e\u0435 \u0440\u0430\u0441\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u043a <code>\/srv\/public\/mirror<\/code>*. \u041d\u043e \u043d\u0430\u043c \u044d\u0442\u043e \u043f\u043e\u043a\u0430\u0437\u0430\u043b\u043e\u0441\u044c \u0441\u0442\u0440\u0430\u043d\u043d\u044b\u043c. \u0412 \u0438\u0442\u043e\u0433\u0435 \u043d\u0430\u0448\u043b\u0438 \u0444\u0430\u0439\u043b\u0438\u043a <code>\/usr\/lib\/alterator\/backend3\/mirror<\/code>, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u0443\u043a\u0430\u0437\u0430\u043d\u044b \u043f\u0443\u0442\u0438 \u0434\u043b\u044f alterato-mirror. \u041f\u043e\u043c\u0435\u043d\u044f\u043b\u0438 <code>dest_dir=\/repos\/alt_main-repo<\/code> \u0438 \u0432\u0441\u0435 \u043f\u043e\u0435\u0445\u0430\u043b\u043e.<\/p>\n<p>*<sup>(\u0421\u0442\u0430\u0442\u044c\u044e \u0432 \u0412\u0438\u043a\u0435 \u0410\u043b\u044c\u0442\u0430 \u043f\u0440\u0430\u0432\u0438\u043b \u044f \u043f\u043e \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430\u043c \u043d\u0430\u0448\u0438\u0445 \u0438\u0437\u044b\u0441\u043a\u0430\u043d\u0438\u0439)<\/sup><\/p>\n<p>\u0414\u0430\u043b\u044c\u0448\u0435 \u043c\u044b \u043f\u043e\u0434\u0443\u043c\u0430\u043b\u0438 \u043e \u0442\u043e\u043c, \u0447\u0442\u043e \u043d\u0430\u043c \u043d\u0443\u0436\u0435\u043d \u0431\u0443\u0434\u0435\u0442 \u043a\u0430\u0441\u0442\u043e\u043c\u043d\u044b\u0439 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0439, \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043c\u044b \u0431\u0443\u0434\u0435\u043c \u0441\u0432\u0430\u043b\u0438\u0432\u0430\u0442\u044c \u043f\u0430\u043a\u0435\u0442\u044b \u0442\u043e\u0433\u043e \u0436\u0435 \u041a\u0430\u0441\u043f\u0435\u0440\u0430 \u0438 1\u0421.. \u0434\u0430 \u0438 \u043f\u0440\u043e\u0447\u0438\u0435, \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u043d\u0435\u0442 \u0432 \u0440\u0435\u043f\u043e\u0437\u0430\u0445 \u0410\u043b\u044c\u0442\u0430 (Simply). \u0421\u043f\u0438\u0441\u043e\u043a \u0434\u043e\u043f.\u0441\u043e\u0444\u0442\u0430 \u0443 \u043d\u0430\u0441 \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u0441\u044f \u043f\u0440\u0438\u043c\u0435\u0440\u043d\u043e \u0442\u0430\u043a\u043e\u0439:<\/p>\n<ul>\n<li>\n<p>1\u0421 \u0442\u043e\u043b\u0441\u0442\u044b\u0439 \u0438 \u0442\u043e\u043d\u043a\u0438\u0439 \u043a\u043b\u0438\u0435\u043d\u0442<\/p>\n<\/li>\n<li>\n<p>Google Chrome<\/p>\n<\/li>\n<li>\n<p>\u041a\u0430\u0441\u043f\u0435\u0440\u0441\u043a\u0438\u0439 \u0430\u0433\u0435\u043d\u0442 \u0438 \u043a\u043b\u0438\u0435\u043d\u0442<\/p>\n<\/li>\n<li>\n<p>OnlyOffice (\u043d\u0443 \u043d\u0435 Libre \u0436\u0435 \u043e\u0444\u0438\u0441\u043d\u044b\u043c \u0440\u0430\u0431\u043e\u0442\u043d\u0438\u043a\u0430\u043c \u043e\u0442\u0434\u0430\u0432\u0430\u0442\u044c..)<\/p>\n<\/li>\n<li>\n<p>VNC-Viewer<\/p>\n<\/li>\n<li>\n<p>VMWare Horizon Client (\u043f\u0440\u043e \u043d\u0435\u0433\u043e \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u0430\u044f \u0438\u0441\u0442\u043e\u0440\u0438\u044f, \u043a\u0430\u043a Windows-\u0430\u0434\u043c\u0438\u043d (\u044f) \u043f\u044b\u0442\u0430\u043b\u0441\u044f RPM \u0441\u043e\u0431\u0440\u0430\u0442\u044c)<\/p>\n<\/li>\n<\/ul>\n<p>\u0427\u0442\u043e\u0431\u044b \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u043a\u0430\u0441\u0442\u043e\u043c\u043d\u044b\u0439 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0439, \u043d\u0443\u0436\u043d\u043e \u043f\u0440\u043e\u0447\u0438\u0442\u0430\u0442\u044c <a href=\"https:\/\/www.altlinux.org\/APT_%D0%B2_ALT_Linux\/CreateRepository\" rel=\"noopener noreferrer nofollow\">\u044d\u0442\u043e <\/a>\u0438 <a href=\"https:\/\/www.altlinux.org\/APT_%D0%B2_ALT_Linux\/OwnRepo\" rel=\"noopener noreferrer nofollow\">\u044d\u0442\u043e<\/a>, \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u043d\u0443\u0436\u043d\u0443\u044e \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0443 \u043a\u0430\u0442\u0430\u043b\u043e\u0433\u043e\u0432, \u043d\u0430\u043f\u043e\u043b\u043d\u0438\u0442\u044c \u043d\u0443\u0436\u043d\u043e\u0435 \u043c\u0435\u0441\u0442\u043e RPM-\u043f\u0430\u043a\u0435\u0442\u0430\u043c\u0438, \u0441\u043e\u0437\u0434\u0430\u0442\u044c gpg-\u043a\u043b\u044e\u0447, \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u0438 \u043f\u043e\u0434\u043f\u0438\u0441\u0430\u0442\u044c \u0438\u043d\u0434\u0435\u043a\u0441\u044b, \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0439 \u043a\u043b\u0438\u0435\u043d\u0442\u0430\u043c, \u0438 \u043c\u043e\u0436\u043d\u043e \u0440\u0430\u0434\u043e\u0432\u0430\u0442\u044c\u0441\u044f.<\/p>\n<p>\u0412 \u0446\u0435\u043b\u043e\u043c \u2013 \u043d\u0438\u0447\u0435\u0433\u043e \u0441\u043b\u043e\u0436\u043d\u043e\u0433\u043e, \u0435\u0441\u043b\u0438 \u043d\u0435 \u043d\u0430\u043a\u043e\u0441\u044f\u0447\u0438\u0442\u044c \u0441 \u0434\u0435\u0440\u0435\u0432\u043e\u043c \u043a\u0430\u0442\u0430\u043b\u043e\u0433\u043e\u0432, \u043a\u0430\u043a \u044f \u043f\u043e \u043d\u0430\u0447\u0430\u043b\u0443.<\/p>\n<p>\u041f\u043e\u0441\u043b\u0435 \u0437\u0430\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u043a\u0430\u0442\u0430\u043b\u043e\u0433\u0430 \u0441 RPM-\u043f\u0430\u043a\u0435\u0442\u0430\u043c\u0438, \u0432 \u043c\u043e\u0435\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u044d\u0442\u043e <code>\/repos\/alt_custom-repo\/x86_64\/RPMS.alt_custom_repo\/<\/code>, \u043d\u0443\u0436\u043d\u043e \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u0438 \u043f\u043e\u0434\u043f\u0438\u0441\u0430\u0442\u044c \u0438\u043d\u0434\u0435\u043a\u0441\u044b:<\/p>\n<pre><code class=\"bash\">genbasedir --create --progress --sign --default-key=[gpg-key \u0431\u0435\u0437 \u0441\u043a\u043e\u0431\u043e\u043a] --topdir=\/repos\/alt_custom-repo x86_64 alt_custom_repo<\/code><\/pre>\n<p>*<code>genbasedir<\/code> \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043a\u043e\u043c\u0430\u043d\u0434\u043e\u0439 \u0438\u0437 \u043f\u0430\u043a\u0435\u0442\u0430 <code>apt-utils<\/code>.<\/p>\n<p>\u041e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 \u0441\u043b\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u0443 \u043c\u0435\u043d\u044f \u0432\u044b\u0437\u0432\u0430\u043b\u0438 2 \u043f\u0430\u043a\u0435\u0442\u0430 \u2013 OnlyOffice \u0438 VMWare Horizon Client. \u041f\u0435\u0440\u0432\u044b\u0439 \u043d\u0435 \u043c\u043e\u0436\u0435\u0442 \u0443\u0434\u043e\u0432\u043b\u0435\u0442\u0432\u043e\u0440\u0438\u0442\u044c \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438, \u0432\u0442\u043e\u0440\u043e\u0439 \u043f\u0440\u043e\u0441\u0442\u043e \u043d\u0435 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442.<\/p>\n<h3>1.3. \u041f\u0430\u043a\u0435\u0442\u044b<\/h3>\n<p>\u0422\u0443\u0442 \u044f \u0432\u044b\u043d\u0443\u0436\u0434\u0435\u043d \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u043b\u0438\u0440\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u043e\u0442\u0441\u0442\u0443\u043f\u043b\u0435\u043d\u0438\u0435 &#8212; \u044f \u0438 \u043c\u043e\u044f \u043a\u043e\u043c\u0430\u043d\u0434\u0430 &#8212; \u0447\u0438\u0441\u0442\u044b\u0439 SRE, \u043f\u0430\u0440\u043d\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043f\u0440\u043e \u044d\u0442\u0438 \u0432\u0430\u0448\u0438 CI\\CD \u0438 DevOps \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0438 \u0437\u043d\u0430\u044e\u0442 \u0442\u043e\u043b\u044c\u043a\u043e \u0438\u0437 \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u043e\u0432 \u0438 \u0440\u0430\u0437\u0433\u043e\u0432\u043e\u0440\u043e\u0432 \u0441 \u043a\u043e\u043b\u043b\u0435\u0433\u0430\u043c\u0438. \u042d\u0442\u043e \u044f \u043a \u0442\u043e\u043c\u0443, \u0447\u0442\u043e \u043f\u0435\u0440\u0435\u0441\u043e\u0431\u0440\u0430\u0442\u044c RPM-\u043f\u0430\u043a\u0435\u0442 \u0434\u043b\u044f \u0441\u0438\u0441\u0430\u0434\u043c\u0438\u043d\u0430 &#8212; \u044d\u0442\u043e \u0442\u0451\u043c\u043d\u044b\u0439 \u043b\u0435\u0441. \u041d\u043e \u043c\u044b \u043d\u0435 \u043e\u0442\u0441\u0442\u0443\u043f\u0430\u0435\u043c \u043f\u0435\u0440\u0435\u0434 \u0441\u043b\u043e\u0436\u043d\u043e\u0441\u0442\u044f\u043c\u0438. \u0421\u0430\u043c\u043e\u0435 \u0441\u043b\u043e\u0436\u043d\u043e\u0435 \u0431\u044b\u043b\u043e \u0440\u0430\u0437\u043e\u0431\u0440\u0430\u0442\u044c\u0441\u044f \u0432 \u0441\u043a\u0440\u0438\u043f\u043b\u0435\u0442\u0430\u0445 \u0438 \u043d\u0430\u0439\u0442\u0438 \u0438\u043d\u0444\u0443 \u043e \u0442\u043e\u043c, \u0432 \u043a\u0430\u043a\u043e\u0439 \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u043e\u043d\u0438 \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u044e\u0442\u0441\u044f \u043f\u0440\u0438 \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0438 \u043f\u0430\u043a\u0435\u0442\u0430. \u0418 \u0442\u0443\u0442 \u043c\u043d\u0435 \u043f\u043e\u043c\u043e\u0433\u043b\u0430 <a href=\"https:\/\/docs.fedoraproject.org\/en-US\/packaging-guidelines\/\" rel=\"noopener noreferrer nofollow\">\u0432\u043e\u0442 \u044d\u0442\u0430 \u0434\u043e\u043a\u0430<\/a>.<\/p>\n<h4>1.3.1. OnlyOffice<\/h4>\n<p>\u0422\u0443\u0442 \u0432\u0441\u0435 \u043f\u0440\u043e\u0441\u0442\u043e \u2013 \u043f\u0435\u0440\u0435\u0441\u043e\u0431\u0440\u0430\u0442\u044c RPM \u0431\u0435\u0437 \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0445 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0435\u0439. \u041d\u043e \u0441\u0442\u043e\u0438\u0442 \u0441\u0440\u0430\u0437\u0443 \u0443\u0442\u043e\u0447\u043d\u0438\u0442\u044c, \u0447\u0442\u043e \u0410\u043b\u044c\u0442 (Simply) \u043f\u043e \u0434\u0435\u0444\u043e\u043b\u0442\u0443 \u043d\u0435 \u0434\u0430\u0441\u0442 \u0440\u0443\u0442\u0443 \u0441\u043e\u0431\u0440\u0430\u0442\u044c RPM-\u043f\u0430\u043a\u0435\u0442, \u0434\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u043f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u0435\u0442\u0441\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043d\u0435\u043f\u0440\u0438\u0432\u0438\u043b\u0435\u0433\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0433\u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f. \u0414\u0435\u043b\u0430\u0435\u043c:<\/p>\n<pre><code class=\"bash\">cd \/tmp wget https:\/\/download.onlyoffice.com\/install\/desktop\/editors\/linux\/onlyoffice-desktopeditors.x86_64.rpm?_ga=2.238710784.1633530263.1666265796-724860256.1666265796 sudo apt-get install wget wget https:\/\/download.onlyoffice.com\/install\/desktop\/editors\/linux\/onlyoffice-desktopeditors.x86_64.rpm?_ga=2.238710784.1633530263.1666265796-724860256.1666265796 rpmrebuild -enp onlyoffice-desktopeditors.x86_64.rpm\\?_ga\\=2.238710784.1633530263.1666265796-724860256.1666265796 sudo apt-get install rpmrebuild rpmrebuild -enp onlyoffice-desktopeditors.x86_64.rpm\\?_ga\\=2.238710784.1633530263.1666265796-724860256.1666265796<\/code><\/pre>\n<p>=\u042a<\/p>\n<p>\u0418 \u0432 \u043e\u0442\u043a\u0440\u044b\u0432\u0448\u0435\u0439\u0441\u044f \u0441\u043f\u0435\u043a\u0435 \u043a\u043e\u043c\u043c\u0435\u043d\u0442\u0438\u0440\u0443\u0435\u043c \u043f\u0430\u043a\u0435\u0442\u044b, \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u043d\u0435\u0442 \u0432 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u044f\u0445 \u042010. \u041f\u0440\u0438\u0432\u043e\u0434\u0438\u043c \u043a \u0432\u0438\u0434\u0443:<\/p>\n<pre><code class=\"bash\">Requires:      \/bin\/sh Requires:      \/bin\/sh Requires:      \/bin\/sh Requires:      \/bin\/sh Requires:      \/bin\/sh Requires:      atk Requires:      boost-filesystem Requires:      curl #Requires:      dejavu-sans-fonts #Requires:      dejavu-sans-mono-fonts #Requires:      dejavu-serif-fonts Requires:      gtk3 Requires:      libX11 Requires:      libXScrnSaver Requires:      liberation-mono-fonts Requires:      liberation-narrow-fonts Requires:      liberation-sans-fonts Requires:      liberation-serif-fonts Requires:      libstdc++ >= 4.8.0 Requires:      libxcb #Requires:      rpmlib(CompressedFileNames) &lt;= 3.0.4-1 #Requires:      rpmlib(FileDigests) &lt;= 4.6.0-1 #Requires:      rpmlib(PayloadFilesHavePrefix) &lt;= 4.0-1 #Requires:      rpmlib(PayloadIsXz) &lt;= 5.2-1 #Requires:      xcb-util-image #Requires:      xcb-util-keysyms #Requires:      xcb-util-renderutil #Requires:      xcb-util-wm #Requires:      xdg-utils<\/code><\/pre>\n<p>\u0418 \u0441\u043e\u0445\u0440\u0430\u043d\u044f\u0435\u043c. \u041d\u0430 \u0432\u044b\u0445\u043e\u0434\u0435 \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u0442\u0441\u044f RPM-\u043f\u0430\u043a\u0435\u0442 \u0431\u0435\u0437 \u043d\u0435\u0443\u0434\u043e\u0432\u043b\u0435\u0442\u0432\u043e\u0440\u0435\u043d\u043d\u044b\u0445 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0435\u0439. \u0414\u0430, \u0442\u0430\u043a \u0434\u0435\u043b\u0430\u0442\u044c \u043d\u0435\u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e. \u041d\u043e, \u043d\u0430 \u0412\u0438\u043a\u0435 \u0410\u043b\u044c\u0442\u0430 \u0442\u0430\u043a \u0438 \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043e \u2013 <a href=\"https:\/\/www.altlinux.org\/OnlyOffice\" rel=\"noopener noreferrer nofollow\">\u0438\u0433\u043d\u043e\u0440\u0438\u0440\u0443\u0439 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438<\/a>, \u0438 &#171;\u0441\u043f\u0438\u043d\u0430 \u0431\u043e\u043b\u0435\u0442\u044c \u043d\u0435 \u0431\u0443\u0434\u0435\u0442&#187;.<\/p>\n<p>\u0411\u043e\u043b\u0435\u0435 \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u044b\u043c \u0440\u0435\u0448\u0435\u043d\u0438\u0435\u043c, \u043a\u043e\u043d\u0435\u0447\u043d\u043e \u0436\u0435, \u0431\u044b\u043b\u043e \u0431\u044b \u0441\u043e\u0431\u0440\u0430\u0442\u044c \u043f\u0430\u043a\u0435\u0442 \u0438\u0437 \u0438\u0441\u0445\u043e\u0434\u043d\u0438\u043a\u043e\u0432. \u041d\u043e \u043c\u044b \u0436\u0435 SRE.. \u0418 \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u044d\u0442\u043e \u043c\u044b \u0437\u0430\u043f\u0438\u0441\u0430\u043b\u0438 \u0432 \u043f\u043b\u0430\u043d\u044b. \u041d\u0430 \u043f\u043e\u0442\u043e\u043c.<\/p>\n<h4>1.3.2. VMWare Horizon Client<\/h4>\n<p>\u0421\u043e\u0431\u0440\u0430\u0442\u044c \u0438\u0437 \u0438\u0441\u0445\u043e\u0434\u043d\u0438\u043a\u043e\u0432 \u043f\u0440\u043e\u043f\u0440\u0438\u0435\u0442\u0430\u0440\u043d\u043e\u0435 \u041f\u041e \u043d\u0435 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u0441\u044f, \u0434\u0430\u0436\u0435 \u0435\u0441\u043b\u0438 \u0432\u044b &#8212; \u043d\u0435 \u044f. Horizon \u043c\u043e\u0436\u043d\u043e \u0441\u043a\u0430\u0447\u0430\u0442\u044c \u0432 \u0432\u0438\u0434\u0435 tarball-\u0430\u0440\u0445\u0438\u0432\u0430 \u0441 \u0431\u0438\u043d\u0430\u0440\u043d\u0438\u043a\u0430\u043c\u0438, \u0438 \u043f\u0438\u0441\u0430\u0442\u044c \u0441\u043f\u0435\u043a\u0443 \u043f\u043e\u0434 \u043d\u0438\u0445. \u041d\u043e \u044f \u043f\u043e\u0448\u0435\u043b \u043f\u043e \u0431\u043e\u043b\u0435\u0435 \u043f\u0440\u043e\u0441\u0442\u043e\u043c\u0443 \u043f\u0443\u0442\u0438. \u042f \u0441\u043a\u0430\u0447\u0430\u043b bundle, \u043d\u0430\u043f\u0438\u0441\u0430\u043b spec-\u0444\u0430\u0439\u043b \u0434\u043b\u044f \u0435\u0433\u043e \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438, \u0438 \u0437\u0430\u043f\u0430\u043a\u043e\u0432\u0430\u043b \u044d\u0442\u043e \u0432\u0441\u0435 \u0432 RPM-\u043f\u0430\u043a\u0435\u0442.<\/p>\n<p>\u0410 \u043f\u043e\u0442\u043e\u043c \u044f \u0440\u0435\u0448\u0438\u043b \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u044d\u0442\u043e \u0434\u0435\u043b\u043e. \u0418 \u043d\u0430\u043f\u0438\u0441\u0430\u043b \u0441\u043a\u0440\u0438\u043f\u0442\u0438\u043a, \u043a\u043e\u0442\u043e\u0440\u044b\u0439, \u043f\u043e\u043b\u0443\u0447\u0430\u044f \u043d\u0430 \u0432\u0445\u043e\u0434 \u0441\u0441\u044b\u043b\u043a\u0443 \u043d\u0430 \u0441\u043a\u0430\u0447\u0438\u0432\u0430\u043d\u0438\u0435 bundle&#8217;\u0430 Horizon Client&#8217;\u0430, \u0441\u043e\u0437\u0434\u0430\u0435\u0442 \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0443 \u043a\u0430\u0442\u0430\u043b\u043e\u0433\u043e\u0432 \u0434\u043b\u044f \u0441\u0431\u043e\u0440\u043a\u0438, \u043c\u0435\u043d\u044f\u0435\u0442 \u0432 \u0441\u043f\u0435\u043a\u0435 &#171;\u0445\u0445\u0445\u0445\u0445\u0445&#187; \u043d\u0430 &#171;\u0432\u0435\u0440\u0441\u0438\u044e&#187;, \u0438 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u0442 \u0441\u0431\u043e\u0440\u043a\u0443.<\/p>\n<p>Spec-\u0444\u0430\u0439\u043b <a href=\"https:\/\/customerconnect.vmware.com\/en\/downloads\/info\/slug\/desktop_end_user_computing\/vmware_horizon_clients\/horizon_8\" rel=\"noopener noreferrer nofollow\">Horizon Agent <\/a>for Linux \u0432\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u0442\u0430\u043a:<\/p>\n<pre><code class=\"bash\">Name:           vmware-horizon-client Version:        xxxxxx Release:        1 Summary:        custom rpm package vmware-horizon-client  License:        GPL Source0:        %{name}-%{version}.tar.gz  Requires:       bash Requires:       python3-modules-sqlite3 Requires:       python3-modules-curses Requires:       python3-module-pexpect Requires:       python-modules-json Requires:       python-module-pygtk Requires:       python-module-jinja2 Requires:       python-module-yaml Requires:       python-module-distutils-extra  %description VMware Horizon Client for LAB.RU team custom repo  %prep %setup -q  %install install -d -m 0755 $RPM_BUILD_ROOT\/opt\/vdi\/ install -m 0755 %{name}-%{version} $RPM_BUILD_ROOT\/opt\/vdi\/%{name}-%{version}  %pretrans if !([ -z \"$(pgrep vmware-view)\" ]); then         pkill -f vmware-view fi  %preun if !([ -z \"$(pgrep vmware-view)\" ]); then         pkill -f vmware-view fi file=(`ls \/opt\/vdi\/`) if !([ -z $file ]); then         env VMWARE_KEEP_CONFIG=no \/opt\/vdi\/$file -u vmware-horizon-client --console         rm -f \/opt\/vdi\/$file fi if test -f \"\/etc\/skel\/\u0420\u0430\u0431\u043e\u0447\u0438\u0439 \u0441\u0442\u043e\u043b\/vmware-view.desktop\"; then         rm -f \"\/etc\/skel\/\u0420\u0430\u0431\u043e\u0447\u0438\u0439 \u0441\u0442\u043e\u043b\/vmware-view.desktop\" fi  %posttrans env TERM=dumb VMWARE_EULAS_AGREED=yes \/opt\/vdi\/%{name}-%{version} --console --set-setting vmware-horizon-integrated-printing vmipEnable yes --set-setting vmware-horizon-html5mmr html5mmrEnable yes --set-setting vmware-horizon-usb usbEnable yes --set-setting vmware-horizon-smartcard smartcardEnable yes --set-setting vmware-horizon-rtav rtavEnable yes --set-setting vmware-horizon-tsdr tsdrEnable yes --set-setting vmware-horizon-scannerclient scannerEnable yes --set-setting vmware-horizon-serialportclient serialportEnable yes --set-setting vmware-horizon-mmr mmrEnable yes --set-setting vmware-horizon-media-provider mediaproviderEnable yes --set-setting vmware-horizon-teams-optimization teamsOptimizationEnable no echo \"view.defaultBroker = 'uag.lab.ru'\" > \/etc\/vmware\/view-mandatory-config echo \"view.defaultDomain = 'lab'\" >> \/etc\/vmware\/view-mandatory-config echo \"view.defaultProtocol = 'BLAST'\" >> \/etc\/vmware\/view-mandatory-config echo \"view.autoHideToolbar = 'TRUE'\" >> \/etc\/vmware\/view-mandatory-config echo \"view.autoConnectBroker = 'uag.lab.ru'\" >> \/etc\/vmware\/view-mandatory-config echo \"view.enableMMR = 'TRUE'\" >> \/etc\/vmware\/view-mandatory-config chmod +x \/usr\/share\/applications\/vmware-view.desktop if !([[ -f \"\/etc\/skel\/\u0420\u0430\u0431\u043e\u0447\u0438\u0439\\ \u0441\u0442\u043e\u043b\/vmware-view.desktop\" ]]); then ln -sf \/usr\/share\/applications\/vmware-view.desktop \/etc\/skel\/\u0420\u0430\u0431\u043e\u0447\u0438\u0439\\ \u0441\u0442\u043e\u043b\/vmware-view.desktop chmod 755 \/etc\/skel\/\u0420\u0430\u0431\u043e\u0447\u0438\u0439\\ \u0441\u0442\u043e\u043b\/vmware-view.desktop fi if [[ -d \/home\/LAB.RU\/ ]]; then         for dir in $(ls \/home\/LAB.RU\/ | grep -v _); do                 if !([[ -f \"\/home\/LAB.RU\/$dir\/\u0420\u0430\u0431\u043e\u0447\u0438\u0439\\ \u0441\u0442\u043e\u043b\/vmware-view.desktop\" ]]); then                         ln -sf \/usr\/share\/applications\/vmware-view.desktop \/home\/LAB.RU\/$dir\/\u0420\u0430\u0431\u043e\u0447\u0438\u0439\\ \u0441\u0442\u043e\u043b\/vmware-view.desktop                         chmod 755 \/home\/LAB.RU\/$dir\/\u0420\u0430\u0431\u043e\u0447\u0438\u0439\\ \u0441\u0442\u043e\u043b\/vmware-view.desktop                 fi         done fi  %files \/opt\/vdi\/%{name}-%{version}  %changelog * August 2022 ANSysoev -<\/code><\/pre>\n<p>\u0421\u043a\u0440\u0438\u043f\u0442 \u0434\u043b\u044f \u0432\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u0442\u0430\u043a:<\/p>\n<pre><code class=\"bash\">#!\/bin\/bash if [ -z \"$@\" ]; then echo \"run script with link to download Horizon Client as argument at run\" else         cd \/home\/user\/rpmbuild\/         rm -rf \/home\/user\/rpmbuild\/*         mkdir BUILD BUILDROOT SOURCES SPECS SRPMS         cd \/home\/user\/rpmbuild\/SOURCES         wget \"$@\"         version=$(ls | sed -e \"s\/VMware-Horizon-Client-\/\/\" -e \"s\/.bundle\/\/\" -e \"s\/-\/.\/g\")         name=\"vmware-horizon-client\"         fullname=$(echo $name-$version)         mkdir $fullname         mv $(find \/home\/user\/rpmbuild\/SOURCES\/  -maxdepth 1 -type f) \/home\/user\/rpmbuild\/SOURCES\/$fullname\/$fullname         tar -czvf $fullname.tar.gz $fullname         cp \/home\/user\/vmware-horizon-client.spec \/home\/user\/rpmbuild\/SPECS\/vmware-horizon-client.spec         sed -i \"s\/xxxxxx\/$version\/\" \/home\/user\/rpmbuild\/SPECS\/vmware-horizon-client.spec         cd \/home\/user\/rpmbuild\/         rpmbuild -bb SPECS\/vmware-horizon-client.spec fi<\/code><\/pre>\n<p>\u0414\u043b\u044f \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u043d\u0430\u0434\u043e \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0432\u043e\u0442 \u0442\u0430\u043a\u0443\u044e \u043c\u0430\u0433\u0438\u044e:<\/p>\n<pre><code class=\"bash\">horizon-client-RPM-1.sh https:\/\/download3.vmware.com\/software\/CART23FQ3_LIN64_2209\/VMware-Horizon-Client-2209-8.7.0-20616018.x64.bundle<\/code><\/pre>\n<p>\u0418 \u041d\u0430 \u0432\u044b\u0445\u043e\u0434\u0435 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u0441\u044f \u0441\u043e\u0431\u0440\u0430\u043d\u043d\u044b\u0439 \u043f\u0430\u043a\u0435\u0442\u0438\u043a:<\/p>\n<pre><code class=\"bash\">tree rpmbuild \u251c\u2500\u2500 BUILD \u2502\u00a0\u00a0 \u2514\u2500\u2500 vmware-horizon-client-2209.8.7.0.20616018.x64 \u2502\u00a0\u00a0     \u2514\u2500\u2500 vmware-horizon-client-2209.8.7.0.20616018.x64 \u251c\u2500\u2500 BUILDROOT \u251c\u2500\u2500 RPMS \u2502\u00a0\u00a0 \u2514\u2500\u2500 x86_64 \u2502\u00a0\u00a0     \u2514\u2500\u2500 vmware-horizon-client-2209.8.7.0.20616018.x64-1.x86_64.rpm \u251c\u2500\u2500 SOURCES \u2502\u00a0\u00a0 \u251c\u2500\u2500 vmware-horizon-client-2209.8.7.0.20616018.x64 \u2502\u00a0\u00a0 \u2502\u00a0\u00a0 \u2514\u2500\u2500 vmware-horizon-client-2209.8.7.0.20616018.x64 \u2502\u00a0\u00a0 \u2514\u2500\u2500 vmware-horizon-client-2209.8.7.0.20616018.x64.tar.gz \u251c\u2500\u2500 SPECS \u2502\u00a0\u00a0 \u2514\u2500\u2500 vmware-horizon-client.spec \u2514\u2500\u2500 SRPMS<\/code><\/pre>\n<h4>1.3.3. Google Chrome and etc.<\/h4>\n<p>\u0422\u0443\u0442 \u0432\u043e\u043e\u0431\u0449\u0435 \u043f\u0440\u043e\u0431\u043b\u0435\u043c \u043d\u0435\u0442, \u043f\u0440\u043e\u0441\u0442\u043e \u0441\u043a\u0430\u0447\u0438\u0432\u0430\u0435\u0442\u0441\u044f RPM-\u043f\u0430\u043a\u0435\u0442 \u0441 \u043e\u0444\u0438\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0441\u0430\u0439\u0442\u0430, \u043a\u043e\u043f\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u0432 \u043a\u0430\u0442\u0430\u043b\u043e\u0433, \u0438 \u0432\u0441\u0435. \u0412\u0441\u0435 \u043f\u0430\u043a\u0435\u0442\u044b \u0441 \u0443\u0434\u043e\u0432\u043b\u0435\u0442\u0432\u043e\u0440\u0435\u043d\u043d\u044b\u043c\u0438 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u044f\u043c\u0438 \u0441\u0442\u0430\u0432\u044f\u0442\u0441\u044f \u0442\u0430\u043a. \u0418 \u044d\u0442\u043e \u0445\u043e\u0440\u043e\u0448\u043e.<\/p>\n<h2>2. \u041f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0435 ISO-\u043e\u0431\u0440\u0430\u0437\u0430<\/h2>\n<p>\u041c\u044b \u0432\u044b\u0431\u0440\u0430\u043b\u0438 Simply, \u043f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u043e\u043d \u0431\u0435\u0441\u043f\u043b\u0430\u0442\u043d\u044b\u0439.<\/p>\n<p>\u041d\u043e. \u041e\u0442\u0434\u0430\u0432\u0430\u0442\u044c \u043e\u0444\u0438\u0441\u043d\u044b\u043c \u0440\u0430\u0431\u043e\u0442\u043d\u0438\u043a\u0430\u043c Linux \u0441 xfce \u043d\u0430 \u0431\u043e\u0440\u0442\u0443 \u2014 \u044d\u0442\u043e \u043f\u0430\u0440\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u0440\u0430\u0431\u043e\u0442\u0443 \u043e\u0444\u0438\u0441\u0430 \u043d\u0430 \u043d\u0435\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u0439 \u0441\u0440\u043e\u043a. \u0415\u0441\u043b\u0438 \u0431\u043e\u043b\u0435\u0435-\u043c\u0435\u043d\u0435\u0435 \u043f\u0440\u0438\u0432\u044b\u0447\u043d\u044b\u0435 \u043a \u041f\u041a \u0440\u0435\u0431\u044f\u0442\u0430 \u043e\u0441\u0432\u043e\u044f\u0442\u0441\u044f \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0431\u044b\u0441\u0442\u0440\u043e, \u043d\u043e \u0442\u043e\u0436\u0435 \u043d\u0435 \u0441\u0440\u0430\u0437\u0443, \u0442\u043e \u0442\u0451\u0442\u0443\u0448\u043a\u0438-\u0431\u0443\u0445\u0433\u0430\u043b\u0442\u0435\u0440\u044b \u2014 \u0441\u043a\u043e\u0440\u0435\u0435 \u043d\u0438\u043a\u043e\u0433\u0434\u0430, \u0447\u0435\u043c \u0431\u044b\u0441\u0442\u0440\u043e. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u0447\u0442\u043e? \u041f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e, \u043d\u0430\u0434\u043e \u043f\u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c KDE! \u042d\u0442\u043e \u0442\u043e\u0436\u0435 \u043d\u0435 \u0440\u0435\u0448\u0438\u0442 \u0432\u0441\u0435 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b, \u043d\u043e \u043f\u043e\u0440\u043e\u0433 \u0432\u0445\u043e\u0436\u0434\u0435\u043d\u0438\u044f \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u0441\u043d\u0438\u0437\u0438\u0442\u0441\u044f.<\/p>\n<p>\u041d\u043e. \u0415\u0441\u043b\u0438 \u0432\u044b\u043f\u0438\u043b\u0438\u0442\u044c xfce \u0438 \u043f\u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0441\u0432\u0435\u0440\u0445\u0443 KDE \u2014 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u0441\u044f \u043d\u0435 \u043a\u043e\u0448\u0435\u0440\u043d\u043e. \u041e\u0441\u0442\u0430\u043d\u0443\u0442\u0441\u044f \u043b\u0438\u0448\u043d\u0438\u0435 \u043f\u0430\u043a\u0435\u0442\u044b \u043e\u0442 DM \u0438 DE, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u043d\u0430\u0434\u043e \u043b\u0435\u0437\u0442\u044c \u0432 ISO \u0438 \u043f\u043e\u043d\u044f\u0442\u044c, \u043a\u0430\u043a \u0436\u0435 \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 Linux, \u0447\u0442\u043e\u0431\u044b \u0432\u043c\u0435\u0448\u0430\u0442\u044c\u0441\u044f \u0432 \u044d\u0442\u043e\u0442 \u043f\u0440\u043e\u0446\u0435\u0441\u0441 \u0438 \u0432\u043c\u0435\u0441\u0442\u043e \u043e\u0434\u043d\u043e\u0439 DE \u043f\u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0434\u0440\u0443\u0433\u0443\u044e.<\/p>\n<p>\u041d\u0430 \u0441\u0430\u043c\u043e\u043c \u0434\u0435\u043b\u0435 \u043d\u0438\u0447\u0435\u0433\u043e \u0441\u043b\u043e\u0436\u043d\u043e\u0433\u043e \u0432 \u044d\u0442\u043e\u043c \u043d\u0435\u0442 (\u0435\u0441\u043b\u0438 \u0440\u0430\u0437\u043e\u0431\u0440\u0430\u0442\u044c\u0441\u044f), \u043d\u043e \u0432\u0441\u0435 \u043f\u043e \u043f\u043e\u0440\u044f\u0434\u043a\u0443.<\/p>\n<p>\u041f\u0440\u043e\u0447\u0438\u0442\u0430\u0432 \u0412\u0438\u043a\u0443 \u0410\u043b\u044c\u0442\u0430 <a href=\"https:\/\/www.altlinux.org\/%D0%9C%D0%BE%D0%B4%D0%B8%D1%84%D0%B8%D0%BA%D0%B0%D1%86%D0%B8%D1%8F_%D1%83%D1%81%D1%82%D0%B0%D0%BD%D0%BE%D0%B2%D0%BE%D1%87%D0%BD%D0%BE%D0%B3%D0%BE_ISO_%D0%BE%D0%B1%D1%80%D0%B0%D0%B7%D0%B0\" rel=\"noopener noreferrer nofollow\">\u041c\u043e\u0434\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u044f \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043e\u0447\u043d\u043e\u0433\u043e ISO \u043e\u0431\u0440\u0430\u0437\u0430<\/a>, <a href=\"https:\/\/www.altlinux.org\/%D0%A1%D0%BE%D0%B7%D0%B4%D0%B0%D0%BD%D0%B8%D0%B5_%D0%BE%D0%B1%D1%80%D0%B0%D0%B7%D0%BE%D0%B2_%D1%83%D1%81%D1%82%D1%80%D0%BE%D0%B9%D1%81%D1%82%D0%B2\" rel=\"noopener noreferrer nofollow\">\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u043e\u0431\u0440\u0430\u0437\u043e\u0432 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432<\/a>, <a href=\"https:\/\/www.altlinux.org\/Autoinstall#%D0%94%D0%B5%D0%BB%D0%B0%D0%B5%D0%BC_%C2%AB%D1%81%D0%BE%D0%B1%D1%81%D1%82%D0%B2%D0%B5%D0%BD%D0%BD%D1%8B%D0%B9%C2%BB_%D0%B4%D0%B8%D1%81%D1%82%D1%80%D0%B8%D0%B1%D1%83%D1%82%D0%B8%D0%B2\" rel=\"noopener noreferrer nofollow\">Autoinstall<\/a>, \u0438 \u043d\u0438\u0447\u0435\u0433\u043e \u0432 \u043d\u0435\u0439 \u043d\u0435 \u043f\u043e\u043d\u044f\u0432, \u044f \u0440\u0435\u0448\u0438\u043b \u043e\u0442\u0432\u044f\u0437\u0430\u0442\u044c\u0441\u044f \u043e\u0442 \u0434\u0438\u0441\u0442\u0440\u0438\u0431\u0443\u0442\u0438\u0432\u0430, \u0438 \u043f\u043e\u043b\u0435\u0437 \u0432 \u0442\u0435\u043e\u0440\u0438\u044e. \u0425\u043e\u0442\u044f \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u044f\u044f \u0441\u0441\u044b\u043b\u043a\u0430 \u043c\u043d\u0435 \u043f\u043e\u043c\u043e\u0433\u043b\u0430 \u0432\u043e \u043c\u043d\u043e\u0433\u043e\u043c.<\/p>\n<p>\u0427\u0442\u043e \u0435\u0441\u0442\u044c \u0434\u0438\u0441\u0442\u0440\u0438\u0431\u0443\u0442\u0438\u0432 Linux? \u0414\u0438\u0441\u0442\u0440\u0438\u0431\u0443\u0442\u0438\u0432 \u2013 \u044d\u0442\u043e, \u0441\u0438\u043b\u044c\u043d\u043e \u0443\u043f\u0440\u043e\u0449\u0430\u044f, \u044f\u0434\u0440\u043e Linux + \u043d\u0430\u0431\u043e\u0440 \u043f\u0430\u043a\u0435\u0442\u043e\u0432. \u0412\u0441\u0451. \u041d\u0430\u0431\u043e\u0440 \u043f\u0430\u043a\u0435\u0442\u043e\u0432 \u041f\u041e \u2013 \u0441\u0443\u0442\u044c \u00ab\u0432\u0441\u0442\u0440\u043e\u0435\u043d\u043d\u044b\u0439 \u0432 ISO \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0439\u00bb. \u0423 Simply \u043f\u0430\u043a\u0435\u0442\u044b \u043b\u0435\u0436\u0430\u0442 \u0432 <code>\\ISOroot\\ALTLinux\\RPMS.main\\<\/code>. \u0427\u0442\u043e\u0431\u044b \u0441\u043e\u0431\u0440\u0430\u0442\u044c \u0434\u0438\u0441\u0442\u0440\u0438\u0431\u0443\u0442\u0438\u0432, \u043d\u0443\u0436\u043d\u043e \u043d\u0430\u0431\u0440\u0430\u0442\u044c \u0432\u044b\u0431\u0440\u0430\u043d\u043d\u044b\u0435 \u043f\u0430\u043a\u0435\u0442\u044b, \u0443\u0434\u043e\u0432\u043b\u0435\u0442\u0432\u043e\u0440\u0438\u0442\u044c \u0438\u0445 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438, \u0438 \u043f\u043e\u043b\u043e\u0436\u0438\u0442\u044c \u0432 ISO, \u043e\u043f\u0438\u0441\u0430\u0442\u044c \u00ab\u0433\u0440\u0443\u043f\u043f\u044b \u041f\u041e\u00bb, \u043f\u0435\u0440\u0435\u0441\u0447\u0438\u0442\u0430\u0442\u044c \u0438 \u043f\u043e\u0434\u043f\u0438\u0441\u0430\u0442\u044c \u0438\u043d\u0434\u0435\u043a\u0441\u044b. . \u0412 \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u0438 <code>Metadata\\pkg-groups.tar\\lists\\<\/code> \u043b\u0435\u0436\u0438\u0442 \u0444\u0430\u0439\u043b <code>.base<\/code>, \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0449\u0438\u0439 \u0432 \u0441\u0435\u0431\u0435 \u0441\u043f\u0438\u0441\u043e\u043a \u043f\u0430\u043a\u0435\u0442\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043d\u0430\u043a\u0430\u0442\u044b\u0432\u0430\u044e\u0442\u0441\u044f \u0432 \u043b\u044e\u0431\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435, \u0430 \u0442\u0430\u043a \u0436\u0435 \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u044f <code>slinux<\/code>, \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0449\u0430\u044f \u0432 \u0441\u0435\u0431\u0435 \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u044d\u0442\u0438\u0445 \u0441\u0430\u043c\u044b\u0445 \u0433\u0440\u0443\u043f\u043f \u041f\u041e (\u0438\u043c\u044f \u0438 \u0441\u043e\u0441\u0442\u0430\u0432 \u043f\u0430\u043a\u0435\u0442\u043e\u0432 \u043a\u0430\u0436\u0434\u043e\u0439 \u0433\u0440\u0443\u043f\u043f\u044b).<\/p>\n<p>\u0414\u043b\u044f \u0442\u043e\u0433\u043e, \u0447\u0442\u043e\u0431\u044b \u0438\u0437\u0431\u0430\u0432\u0438\u0442\u044c\u0441\u044f \u043e\u0442 xfce \u0438 \u0434\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0432\u043c\u0435\u0441\u0442\u043e \u043d\u0435\u0433\u043e KDE \u0435\u0441\u0442\u044c 2 \u043f\u0443\u0442\u0438: \u0441\u043b\u043e\u0436\u043d\u044b\u0439 \u0438 \u043e\u0447\u0435\u043d\u044c \u0441\u043b\u043e\u0436\u043d\u044b\u0439.<\/p>\n<p>\u041e\u0447\u0435\u043d\u044c \u0441\u043b\u043e\u0436\u043d\u044b\u0439 \u043f\u0440\u0435\u0434\u043f\u043e\u043b\u0430\u0433\u0430\u0435\u0442 \u0441\u043a\u0430\u0447\u0438\u0432\u0430\u043d\u0438\u0435 \u0438\u0437 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u044f \u043d\u0443\u0436\u043d\u044b\u0445 \u043f\u0430\u043a\u0435\u0442\u043e\u0432 (KDE \u0438 \u0435\u0433\u043e \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438). \u041d\u043e \u043c\u043d\u0435 \u0431\u044b\u043b\u043e \u043b\u0435\u043d\u044c. \u041d\u0430\u0432\u0435\u0440\u043d\u043e\u0435, \u0435\u0441\u0442\u044c \u043a\u0430\u043a\u043e\u0439-\u0442\u043e \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0439 \u0441\u043e\u0444\u0442, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0443\u043c\u0435\u0435\u0442 \u0441\u0447\u0438\u0442\u044b\u0432\u0430\u0442\u044c \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u0438\u0437 \u043c\u0435\u0442\u0430\u0434\u0430\u0442\u044b \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u043e\u0433\u043e \u043f\u0430\u043a\u0435\u0442\u0430, \u0438 \u0432\u044b\u043a\u0430\u0447\u0438\u0432\u0430\u0442\u044c \u044d\u0442\u0438 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438.. \u041d\u043e \u044f \u0442\u0430\u043a\u043e\u0433\u043e \u043d\u0435 \u043d\u0430\u0448\u0435\u043b, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u043f\u043e\u0448\u0435\u043b \u043f\u043e \u0441\u043b\u043e\u0436\u043d\u043e\u043c\u0443 \u043f\u0443\u0442\u0438, \u0430 \u0438\u043c\u0435\u043d\u043d\u043e \u2014 \u0441\u043a\u0430\u0447\u0430\u043b \u0410\u043b\u044c\u0442 Workstation 10 K (\u0443 \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u0442\u0430 \u0436\u0435 \u043f\u0430\u043a\u0435\u0442\u043d\u0430\u044f \u0431\u0430\u0437\u0430, \u0447\u0442\u043e \u0438 \u0443 Simply, \u0442\u043e\u043b\u044c\u043a\u043e \u0441 KDE \u0438\u0441\u043a\u0430\u0440\u043e\u043f\u043a\u0435), \u0438 \u043f\u043e\u0434\u043c\u0435\u043d\u0438\u043b \u043f\u0430\u043a\u0435\u0442\u044b \u0432 ISO-\u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0438 \u0438 \u0444\u0430\u0439\u043b <code>.base<\/code>, \u0441\u043e\u0431\u0440\u0430\u043b, \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u043b\u2026 \u2026 \u2026 \u2026 ..\u0438\u0438\u0438\u0438\u0438\u0438.. \u043f\u043e\u043b\u0443\u0447\u0438\u043b \u0441\u0432\u0435\u0436\u0435\u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043d\u044b\u0439 \u0410\u043b\u044c\u0442 10 K. \u0423\u0434\u0438\u0432\u0438\u043b\u0441\u044f. \u041c\u043d\u043e\u0433\u043e \u0434\u0443\u043c\u0430\u043b. \u0412 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u043c \u043e \u0442\u043e\u043c, \u0447\u0442\u043e \u043c\u043e\u0438\u0445 \u0442\u0435\u043e\u0440\u0435\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u043f\u043e\u0437\u043d\u0430\u043d\u0438\u0439 \u044f\u0432\u043d\u043e \u043d\u0435\u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0434\u043b\u044f \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 \u043f\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u043d\u043e\u0439 \u043c\u043d\u043e\u0439 \u0436\u0435 \u0437\u0430\u0434\u0430\u0447\u0438. (\u041a\u0430\u043a \u0436\u0435 \u0441\u043b\u043e\u0436\u043d\u043e \u0438 \u043d\u0435\u043f\u0440\u0438\u044f\u0442\u043d\u043e \u0431\u044b\u0442\u044c \u0442\u0443\u043f\u044b\u043c! \u041f\u0440\u043e\u043a\u043b\u044f\u0442\u044b\u0439 COVID!)<\/p>\n<p>\u041f\u043e\u0441\u043b\u0435 <s>\u043f\u0440\u043e\u043b\u0438\u0442\u044b\u0445 \u0441\u043b\u0435\u0437, \u043f\u043e\u043a\u0440\u0430\u0441\u043d\u0435\u0432\u0448\u0438\u0445 \u0433\u043b\u0430\u0437, \u0432\u044b\u0440\u0432\u0430\u043d\u043d\u044b\u0445 \u0432\u043e\u043b\u043e\u0441 \u0438 \u043e\u0431\u0433\u0440\u044b\u0437\u0435\u043d\u043d\u044b\u0445 \u043d\u043e\u0433\u0442\u0435\u0439<\/s> \u043f\u043e\u0438\u0441\u043a\u0430 \u043f\u0440\u0438\u0447\u0438\u043d, \u044f \u043f\u043e\u043d\u044f\u043b, \u0447\u0442\u043e \u0432 \u0441\u043f\u0438\u0441\u043a\u0435 \u043f\u0430\u043a\u0435\u0442\u043e\u0432 \u0435\u0441\u0442\u044c RPM\u2019\u043a\u0438 \u0441\u043e \u0441\u043b\u043e\u0432\u043e\u043c branding \u0432 \u0438\u043c\u0435\u043d\u0438, \u0438 \u043f\u043e\u043d\u044f\u043b, \u0447\u0442\u043e \u0438\u043c\u0435\u043d\u043d\u043e \u0438\u0445 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u0432 \u0446\u0435\u043b\u0435\u0432\u0443\u044e \u0441\u0438\u0441\u0442\u0435\u043c\u0443 \u043e\u0442\u0432\u0435\u0447\u0430\u0435\u0442 \u0437\u0430 \u0442\u043e, \u043a\u0430\u043a\u043e\u0439 \u0434\u0438\u0441\u0442\u0440\u0438\u0431\u0443\u0442\u0438\u0432 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u0441\u044f \u043d\u0430 \u0432\u044b\u0445\u043e\u0434\u0435. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043e\u0434\u0438\u043d \u0438\u0437 \u043f\u0430\u043a\u0435\u0442\u043e\u0432 \u043f\u0440\u0430\u0432\u0438\u0442 \u0444\u0430\u0439\u043b\u0438\u043a<code>\/etc\/system-release<\/code>, \u0434\u0440\u0443\u0433\u043e\u0439 \u043d\u0430\u043a\u0438\u0434\u044b\u0432\u0430\u0435\u0442 \u043d\u0435\u0441\u043a\u0443\u0447\u043d\u044b\u0435 \u043e\u0431\u043e\u0438 \u0438 \u0442.\u0434.<\/p>\n<p>\u0421\u043b\u043e\u0432\u043e\u043c, \u043f\u043e\u0441\u043b\u0435 \u043d\u0435\u0445\u0438\u0442\u0440\u044b\u0445, \u043d\u043e \u0441\u043a\u0443\u0447\u043d\u044b\u0445 \u0438 \u0443\u0442\u043e\u043c\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u043f\u0440\u0430\u0432\u043e\u043a \u0444\u0430\u0439\u043b\u0438\u043a\u0430 <code>.base<\/code> \u0438 \u0437\u0430\u043a\u0438\u0434\u044b\u0432\u0430\u043d\u0438\u044f \u0432 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0439 \u043d\u0435\u0434\u043e\u0441\u0442\u0430\u044e\u0449\u0438\u0445 \u043f\u0430\u043a\u0435\u0442\u043e\u0432 (\u0443 \u043c\u0435\u043d\u044f \u043d\u0430 \u044d\u0442\u043e \u0443\u0448\u043b\u043e \u043f\u0440\u0438\u043c\u0435\u0440\u043d\u043e 10 \u043f\u043e\u043f\u044b\u0442\u043e\u043a \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u0441\u0438\u0441\u0442\u0435\u043c\u044b), \u044f \u043f\u043e\u043b\u0443\u0447\u0438\u043b \u043d\u0430 \u0432\u044b\u0445\u043e\u0434\u0435 Simply Linux 10 K. \u041f\u043e\u0442\u043e\u043c \u044f \u0440\u0435\u0448\u0438\u043b, \u0447\u0442\u043e \u044d\u0442\u043e\u0433\u043e \u043d\u0435\u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e, \u0438 \u043e\u0442\u0441\u043e\u0431\u0440\u0430\u043b \u0435\u0449\u0435 \u043e\u0434\u0438\u043d ISO \u0443\u0436\u0435 \u0431\u0435\u0437 DE.. Simply Linux Server. \u0410 \u0442\u043e \u043d\u0430 \u0447\u0435\u043c \u043c\u043d\u0435 Ansible \u0438 \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u044b\u0439 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0439 \u0440\u0430\u0437\u0432\u043e\u0440\u0430\u0447\u0438\u0432\u0430\u0442\u044c?<\/p>\n<p>\u0421\u043f\u0438\u0441\u043e\u043a \u043a\u043e\u043c\u0430\u043d\u0434 \u0447\u0443\u0442\u044c \u043d\u0438\u0436\u0435.<\/p>\n<p>\u0414\u0430\u043b\u0435\u0435 \u2014 \u0434\u043e\u0441\u0442\u0430\u0432\u043a\u0430 \u043d\u0430 \u0441\u0432\u0435\u0436\u0435\u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043d\u0443\u044e \u0441\u0438\u0441\u0442\u0435\u043c\u0443 \u043a\u043b\u044e\u0447\u0435\u0439 Ansible \u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 hostname. \u0415\u0441\u043b\u0438 \u0432 \u041e\u0421\u0438 \u0431\u0443\u0434\u0443\u0442 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u044b \u043a\u043b\u044e\u0447\u0438 \u043e\u0442 Ansible, \u0442\u043e \u0434\u0430\u043b\u044c\u0448\u0435 \u043c\u043e\u0436\u043d\u043e \u0432\u0441\u0435 \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0447\u0435\u0440\u0435\u0437 \u0441\u0430\u043c Ansible. \u0422\u0443\u0442 \u043d\u0430\u043c \u043f\u043e\u043c\u043e\u0436\u0435\u0442 \u043f\u0430\u043a\u0435\u0442 alterator-postinstall \u0438 \u043f\u0440\u043e\u0441\u0442\u0435\u0439\u0448\u0438\u0439 \u0441\u043a\u0440\u0438\u043f\u0442, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0434\u043e\u0441\u0442\u0430\u0432\u0438\u0442 \u0432 <code>\/root\/.ssh\/authorized_keys<\/code> \u043d\u0443\u0436\u043d\u044b\u0435 \u043a\u043b\u044e\u0447\u0438. \u0423 \u043c\u0435\u043d\u044f 2 Ansible, 1 \u0432  \u0433\u043e\u043b\u043e\u0432\u043d\u043e\u043c \u043e\u0444\u0438\u0441\u0435, \u0438 1 \u0432 \u0444\u0438\u043b\u0438\u0430\u043b\u0435, \u043a\u0430\u043d\u0430\u043b \u0441 \u043a\u043e\u0442\u043e\u0440\u044b\u043c, \u043c\u044f\u0433\u043a\u043e \u0433\u043e\u0432\u043e\u0440\u044f, \u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0436\u0435\u043b\u0430\u0442\u044c \u043b\u0443\u0447\u0448\u0435\u0433\u043e. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 2 \u043a\u043b\u044e\u0447\u0430. \u0422\u0430\u043a \u0436\u0435 \u043d\u0443\u0436\u043d\u043e \u043f\u043e\u0437\u0430\u0431\u043e\u0442\u0438\u0442\u044c\u0441\u044f \u043e\u0431 \u0438\u043d\u0436\u0435\u043d\u0435\u0440\u0430\u0445 \u0442\u0435\u0445\u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438, \u0438 \u0437\u0430\u043a\u0438\u043d\u0443\u0442\u044c \u0432 \u0441\u0432\u0435\u0436\u0443\u044e \u0441\u0438\u0441\u0442\u0435\u043c\u0443 \u0441\u043a\u0440\u0438\u043f\u0442, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0445 \u0432 AD \u0437\u0430\u043f\u0438\u0441\u0435\u0439 \u0434\u043b\u044f \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u043e\u0432, \u0431\u0443\u0434\u0435\u0442 \u043f\u043e\u0434\u0431\u0438\u0440\u0430\u0442\u044c \u043f\u043e\u0434\u0445\u043e\u0434\u044f\u0449\u0438\u0439 hostname \u0434\u043b\u044f \u043d\u043e\u0432\u043e\u0433\u043e \u041f\u041a \u043f\u0435\u0440\u0435\u0434 \u0432\u0432\u043e\u0434\u043e\u043c \u0432 \u0434\u043e\u043c\u0435\u043d. \u042d\u0442\u0438 \u0441\u043a\u0440\u0438\u043f\u0442\u044b \u0442\u043e\u0436\u0435 \u043d\u0443\u0436\u043d\u043e \u0431\u0443\u0434\u0435\u0442 \u0434\u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0432 \u0446\u0435\u043b\u0435\u0432\u0443\u044e \u0441\u0438\u0441\u0442\u0435\u043c\u0443. \u0421\u043a\u0440\u0438\u043f\u0442 \u043d\u0430\u0437\u043e\u0432\u0435\u043c 87-set-ansbls-keys.sh, \u0438 \u043d\u0430\u043f\u0438\u0448\u0435\u043c \u0432 \u043d\u0435\u043c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0435 (\u043d\u0443 \u043f\u043e\u0447\u0442\u0438 \u0442\u0430\u043a, \u043a\u043b\u044e\u0447\u0438 \u044f \u0432\u0430\u043c \u043d\u0435 \u043f\u043e\u043a\u0430\u0436\u0443 =\u042a):<\/p>\n<pre><code class=\"bash\">#!\/bin\/sh  . install2-init-functions  echo \"ssh-rsa \u0431\u043b\u0430-\u0431\u043b\u0430-\u0431\u043b\u0430-\u043d\u0430\u0431\u043e\u0440-\u0441\u0438\u043c\u0432\u043e\u043b\u043e\u0432 root@ansible-filial-hostname\" > $destdir\/root\/.ssh\/authorized_keys echo \"ssh-rsa \u0431\u043b\u0430-\u0431\u043b\u0430-\u0431\u043b\u0430-\u043d\u0430\u0431\u043e\u0440-\u0441\u0438\u043c\u0432\u043e\u043b\u043e\u0432 root@ansible-hostname\" >> $destdir\/root\/.ssh\/authorized_keys  cp \/var\/ChangeHostName.py $destdir\/var\/<\/code><\/pre>\n<p>\u0422\u0443\u0442 \u043e\u0434\u043d\u0430 \u0442\u043e\u043d\u043a\u043e\u0441\u0442\u044c \u2014 \u0442\u0430\u0440\u0433\u0435\u0442 \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u0441 \u043f\u0440\u0435\u0444\u0444\u0438\u043a\u0441\u043e\u043c <code>$destdir<\/code>, \u0438\u043d\u0430\u0447\u0435 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0449\u0438\u043a, \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u044f \u0434\u0438\u0440\u0435\u043a\u0442\u0438\u0432\u0443 postinstall, \u0437\u0430\u043f\u0438\u0448\u0435\u0442 \u043a\u043b\u044e\u0447\u0438 \u0432 \u0441\u0432\u043e\u0439 \/root, \u0430 \u043d\u0435 \u0432 \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u043c\u0443\u044e \u041e\u0421.<\/p>\n<p>\u0421\u043a\u0440\u0438\u043f\u0442 \u043f\u043e\u0438\u0441\u043a\u0430 \u043f\u043e\u0434\u0445\u043e\u0434\u044f\u0449\u0435\u0433\u043e hostname \u043f\u0440\u043e\u0441\u0442, \u043a\u0430\u043a 5 \u043a\u043e\u043f\u0435\u0435\u043a (\u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u043d\u0438\u043a\u0442\u043e \u043d\u0435 \u0432\u0438\u0434\u0435\u043b \u0443\u0436\u0435 \u0447\u0435\u0440\u0442 \u0437\u043d\u0430\u0435\u0442 \u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043b\u0435\u0442). \u042f \u0441\u043e\u0437\u0434\u0430\u043b \u0432 AD \u0431\u0435\u0441\u043f\u0440\u0430\u0432\u043d\u0443\u044e \u0443\u0447\u0435\u0442\u043a\u0443, \u0447\u0442\u043e\u0431\u044b Python \u043c\u043e\u0433 \u0441\u0445\u043e\u0434\u0438\u0442\u044c \u0432 AD \u0438 \u0441\u0447\u0438\u0442\u0430\u0442\u044c \u0443\u0436\u0435 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0435 \u0432 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u043e\u0439 OU \u0443\u0447\u0435\u0442\u043a\u0438 \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u043e\u0432, \u0438 \u0432\u044b\u0431\u0440\u0430\u0442\u044c \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439 \u043f\u043e \u0441\u043f\u0438\u0441\u043a\u0443.<\/p>\n<pre><code class=\"python\">#!\/usr\/bin\/python3 # -*- coding: utf-8 -*- import os import sys from getpass import getpass from ldap3 import Server, Connection, SUBTREE, LEVEL import time  username=\"lab.ru\\linux_to_domain\" password=\"Passw0rd!\"  server = Server(\"dc-1.lab.ru\", port=389, use_ssl=False, get_info='ALL') connection = Connection(server, user=username, password=password,                fast_decoder=True, auto_bind=True, auto_referrals=True, check_names=False, read_only=True,                lazy=False, raise_exceptions=False)  hostnamedigit=1 hostname = \"ARM-\"+'{:0>4}'.format(hostnamedigit)  def get_all_ad_hosts(connection):      results = list()     elements = connection.extend.standard.paged_search(         search_base='OU=LINUX,OU=Computers,dc=lab,dc=ru',         search_filter='(&amp;(objectCategory=computer)(!(userAccountControl:1.2.840.113556.1.4.803:=2)))',         search_scope=SUBTREE,         attributes=['name'],         paged_size=100)     for element in elements:         host = dict()         if 'dn' in element:             host['dn'] = element['dn']             host['name'] = element['attributes'][u'name'][0]             results.append(host)     return(results)     connection.unbind()  def search_for_duplicatename(hostname,list_of_computers):     for computer in list_of_computers:         if computer['name'].casefold() == hostname.casefold():             print(hostname+\" already exists\")             return 1     return 0  computers = get_all_ad_hosts(connection) while search_for_duplicatename(hostname, computers) != 0:     hostnamedigit += 1     hostname = \"ARM-\"+'{:0>4}'.format(hostnamedigit) print(hostname) os.system(\"hostnamectl set-hostname \"+hostname) print(\"Your system is gonna reboot in 10 seconds....\") time.sleep(10) os.system(\"reboot now\")<\/code><\/pre>\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u043e \u0442\u043e\u043c, \u043a\u0443\u0434\u0430 \u0436\u0435 \u044d\u0442\u0438 \u0441\u043a\u0440\u0438\u043f\u0442\u044b \u043f\u043e\u043c\u0435\u0441\u0442\u0438\u0442\u044c. \u0426\u0435\u043b\u0435\u0432\u0430\u044f \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u044f \u2014 \u0430\u0440\u0445\u0438\u0432 altinst, \u043d\u0430\u0445\u043e\u0434\u044f\u0449\u0438\u0439\u0441\u044f \u0432 \u043a\u043e\u0440\u043d\u0435 ISO. \u0412 \u0430\u0440\u0445\u0438\u0432\u0435 \u0441\u043a\u0440\u0438\u043f\u0442 \u043d\u0443\u0436\u043d\u043e \u0440\u0430\u0441\u043f\u043e\u043b\u043e\u0436\u0438\u0442\u044c \u0432 \u0434\u0438\u0440\u0435\u043a\u0442\u043e\u0440\u0438\u0438 <code>\/usr\/share\/install2\/postinstall.d\/<\/code> \u0438 \u043d\u0435 \u0437\u0430\u0431\u044b\u0442\u044c \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0435\u0433\u043e \u0438\u0441\u043f\u043e\u043b\u043d\u044f\u0435\u043c\u044b\u043c, \u0438\u043d\u0430\u0447\u0435 \u0447\u0443\u0434\u0430 \u043d\u0435 \u043f\u0440\u043e\u0438\u0437\u043e\u0439\u0434\u0435\u0442. \u0421\u043a\u0440\u0438\u043f\u0442 \u043f\u043e\u0434\u0431\u043e\u0440\u0430 hostname \u044f \u043f\u043e\u043b\u043e\u0436\u0438\u043b \u0432 \/var, \u0445\u043e\u0442\u044f \u044d\u0442\u043e \u043d\u0435 \u0438\u0433\u0440\u0430\u0435\u0442 \u043e\u0441\u043e\u0431\u043e\u0439 \u0440\u043e\u043b\u0438.<\/p>\n<p>\u041d\u043e. \u041f\u0440\u0435\u0436\u0434\u0435, \u0447\u0435\u043c \u0432\u0441\u0435 \u044d\u0442\u043e \u0441\u0434\u0435\u043b\u0430\u0442\u044c, \u043d\u0443\u0436\u043d\u043e \u0441\u043c\u043e\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c <a href=\"https:\/\/www.basealt.ru\/simplylinux\/download\" rel=\"noopener noreferrer nofollow\">\u0441\u043a\u0430\u0447\u0430\u043d\u043d\u044b\u0439 ISO<\/a>, \u0441\u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043a\u0443\u0434\u0430-\u0442\u043e \u0435\u0433\u043e \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u043c\u043e\u0435, \u0440\u0430\u0441\u043f\u0430\u043a\u043e\u0432\u0430\u0442\u044c \u0430\u0440\u0445\u0438\u0432 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e squashfs-tools (\u043f\u0430\u043a\u0435\u0442 \u043d\u0443\u0436\u043d\u043e \u043f\u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c), \u0441\u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0441\u043a\u0440\u0438\u043f\u0442\u044b, \u043f\u043e\u043c\u0435\u043d\u044f\u0442\u044c \u0444\u0430\u0439\u043b\u0438\u043a <code>.base<\/code>.. \u0421\u043b\u043e\u0432\u043e\u043c, \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0432\u0441\u0435 \u0441\u0432\u043e\u0438 \u0433\u0440\u044f\u0437\u043d\u044b\u0435 \u0434\u0435\u043b\u0438\u0448\u043a\u0438, \u0438 \u043f\u043e\u0442\u043e\u043c \u0437\u0430\u043f\u0430\u043a\u043e\u0432\u0430\u0442\u044c \u0430\u0440\u0445\u0438\u0432 \u0438 \u0441\u043e\u0431\u0440\u0430\u0442\u044c ISO. \u0418\u0442\u043e\u0433\u043e (\u043f\u0435\u0440\u0435\u0434 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435\u043c <code>genbasedir<\/code> \u043d\u0443\u0436\u043d\u043e \u0441\u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u0435 \u043f\u0430\u043a\u0435\u0442\u044b, \u0443\u0434\u0430\u043b\u0438\u0442\u044c \u043b\u0438\u0448\u043d\u0438\u0435, \u0438 \u043f\u0440\u0438\u0432\u0435\u0441\u0442\u0438 \u0432 \u043f\u043e\u0440\u044f\u0434\u043e\u043a \u0444\u0430\u0439\u043b\u044b, \u043e\u0442\u0432\u0435\u0447\u0430\u044e\u0449\u0438\u0435 \u0437\u0430 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0443 \u0433\u0440\u0443\u043f\u043f \u041f\u041e, \u043a\u0430\u043a \u0431\u044b\u043b\u043e \u043e\u043f\u0438\u0441\u0430\u043d\u043e \u0432\u044b\u0448\u0435):<\/p>\n<pre><code class=\"bash\">apt-get install apt-utils squashfs-tools mkdir \/home\/user\/slinux_iso \/home\/user\/altinst cd \/home\/user\/altinst sudo mount \/home\/user\/slinux.iso \/mnt cp -r \/mnt\/* \/home\/user\/slinux_iso\/ unsquashfs \/home\/user\/slinux_iso\/altinst cp \/path_to_script_ansible_keys.sh \/home\/user\/altinst\/squashfs-root\/usr\/share\/install2\/postinstall.d\/87-set-ansbls-keys.sh chmod +x \/home\/user\/altinst\/squashfs-root\/usr\/share\/install2\/postinstall.d\/87-set-ansbls-keys.sh cp \/path_to_script_hostname \/home\/user\/altinst\/squashfs-root\/var\/ChangeHostName.py chmod +x \/home\/user\/altinst\/squashfs-root\/var\/ChangeHostName.py mksquashfs \/home\/user\/altinst\/squashfs-root\/ \/home\/user\/slinux_iso\/altinst genbasedir --create --topdir=\/home\/user\/slinux_iso\/ ALTLinux main sudo xorriso \\ -as mkisofs \\ -joliet \\ -partition_cyl_align \"off\" \\ -partition_offset 16 \\ -iso-level 3 \\ -full-iso9660-filenames \\ -sysid \"LINUX\" \\ -volid \"Simply Linux 10.1 x86_64\" \\ -volset \"ALT\" \\ -publisher \"BASEALT LTD\" \\ -appid \"SIMPLY LINUX 10.1 X86_64 2022-06-28\" \\ -copyright \"LICENSE_ALL_HTML\" \\ -eltorito-boot syslinux\/isolinux.cfg \\ -eltorito-catalog syslinux\/boot.cat \\ -no-emul-boot \\ -boot-load-size 4 \\ -boot-info-table \\ -isohybrid-mbr syslinux\/isohdpfx.bin \\ -eltorito-alt-boot \\ -e EFI\/.efiboot.img \\ -no-emul-boot \\ -isohybrid-gpt-basdat \\ -output ..\/SimplyLinux10_KDE.iso<\/code><\/pre>\n<p>\u0418 \u0436\u0434\u0435\u043c.<\/p>\n<p>\u0412 \u0446\u0435\u043b\u043e\u043c, \u043c\u043e\u0436\u043d\u043e \u0431\u044b\u043b\u043e \u0437\u0430\u0441\u043a\u0440\u0438\u043f\u0442\u043e\u0432\u0430\u0442\u044c \u0438 \u0435\u0449\u0435 \u043a\u0430\u043a\u0438\u0435-\u0442\u043e \u0448\u0442\u0443\u043a\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0434\u0435\u043b\u0430\u044e\u0442\u0441\u044f \u043f\u0440\u0438 \u043f\u0435\u0440\u0432\u043e\u043c \u0437\u0430\u043f\u0443\u0441\u043a\u0435 \u0441\u0438\u0441\u0442\u0435\u043c\u044b, \u043a\u0430\u043a \u0442\u043e \u2013 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u0434\u043e\u043c\u0435\u043d\u043d\u044b\u0445 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0432, \u043f\u0440\u043e\u043f\u0438\u0441\u044b\u0432\u0430\u043d\u0438\u0435 \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u044f \u0438 \u0442.\u0434. \u041d\u043e \u043c\u044b \u043f\u0440\u0435\u0434\u043f\u043e\u0447\u043b\u0438 \u0434\u0435\u043b\u0430\u0442\u044c \u044d\u0442\u043e \u0447\u0435\u0440\u0435\u0437 Ansible. \u0422\u0430\u043a \u044d\u0442\u043e \u043f\u0440\u043e\u0449\u0435 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u0438\u0440\u043e\u0432\u0430\u0442\u044c, \u0438 \u043f\u0440\u043e\u0449\u0435 \u0447\u0442\u043e-\u0442\u043e \u0438\u0437\u043c\u0435\u043d\u0438\u0442\u044c, \u0435\u0441\u043b\u0438 \u044d\u0442\u043e \u043f\u043e\u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f.<\/p>\n<h2>3. Ansible playbooks<\/h2>\n<p>\u0414\u0430\u043b\u044c\u0448\u0435 \u043c\u044b \u043f\u0440\u0438\u0441\u0442\u0443\u043f\u0438\u043b\u0438 \u043a \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u0438\u044e \u043f\u043b\u0435\u0439\u0431\u0443\u043a\u043e\u0432 \u0434\u043b\u044f \u0434\u043e\u0441\u0442\u0430\u0432\u043a\u0438 \u043d\u0430 \u043a\u043b\u0438\u0435\u043d\u0442\u044b \u043d\u0443\u0436\u043d\u044b\u0445 \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043a:<\/p>\n<ul>\n<li>\n<p>ssh<\/p>\n<\/li>\n<li>\n<p>sssd<\/p>\n<\/li>\n<li>\n<p>samba<\/p>\n<\/li>\n<li>\n<p>kerberos<\/p>\n<\/li>\n<li>\n<p>pam<\/p>\n<\/li>\n<li>\n<p>cups<\/p>\n<\/li>\n<li>\n<p>\u0432\u0432\u043e\u0434 \u0432 \u0434\u043e\u043c\u0435\u043d<\/p>\n<\/li>\n<li>\n<p>\u2026 etc.<\/p>\n<\/li>\n<\/ul>\n<p>\u042f \u0434\u043e\u0432\u043e\u043b\u044c\u043d\u043e \u0434\u043e\u043b\u0433\u043e \u0434\u0443\u043c\u0430\u043b \u043e \u0442\u043e\u043c, \u043d\u0443\u0436\u043d\u043e \u043b\u0438 \u043f\u0440\u0438\u0432\u043e\u0434\u0438\u0442\u044c \u043b\u0438\u0441\u0442\u0438\u043d\u0433 \u043f\u043b\u0435\u0439\u0431\u0443\u043a\u043e\u0432. \u0418, \u043f\u043e\u0441\u043e\u0432\u0435\u0442\u043e\u0432\u0430\u0432\u0448\u0438\u0441\u044c \u0441 \u043a\u043e\u043c\u0430\u043d\u0434\u043e\u0439, \u043c\u044b \u0440\u0435\u0448\u0438\u043b\u0438, \u0447\u0442\u043e \u043d\u0435 \u0432\u0441\u0435 \u0441\u0442\u043e\u0438\u0442 \u0432\u044b\u043a\u043b\u0430\u0434\u044b\u0432\u0430\u0442\u044c. \u041f\u043e \u0440\u044f\u0434\u0443 \u043f\u0440\u0438\u0447\u0438\u043d.<\/p>\n<details class=\"spoiler\">\n<summary>\u0421\u043f\u043e\u0439\u043b\u0435\u0440<\/summary>\n<div class=\"spoiler__content\">\n<p><em>\u0414\u0430, \u043c\u044b \u0437\u043d\u0430\u0435\u043c, \u0447\u0442\u043e \u0432 \u043d\u0438\u0436\u0435\u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u043c \u043c\u043e\u0436\u043d\u043e \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0432\u0441\u0435 \u0438\u043d\u0430\u0447\u0435. \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0440\u043e\u043b\u0438, \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435 \u0438 \u0442.\u0434. \u0425\u0440\u0430\u043d\u0438\u0442\u044c \u0432\u0441\u0435 \u0432 \u0433\u0438\u0442\u0435, \u043e\u0442\u0441\u043b\u0435\u0436\u0438\u0432\u0430\u0442\u044c \u0442\u0430\u043c \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u0438 \u043f\u0440\u043e\u0447\u0435\u0435, \u043f\u0440\u043e\u0447\u0435\u0435, \u043f\u0440\u043e\u0447\u0435\u0435. \u041c\u044b \u0437\u043d\u0430\u0435\u043c, \u0441\u043f\u0430\u0441\u0438\u0431\u043e. \u041d\u043e \u0447\u0438\u0442\u0430\u0442\u044c \u044d\u0442\u043e \u0432 \u0440\u0430\u043c\u043a\u0430\u0445 \u0441\u0442\u0430\u0442\u044c\u0438 \u0431\u0443\u0434\u0435\u0442 \u043d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u043f\u043b\u0435\u0439\u0431\u0443\u043a\u0438. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u0440\u0430\u0437\u0431\u0438\u0442\u043e \u0442\u0430\u043a, \u043a\u0430\u043a \u0440\u0430\u0437\u0431\u0438\u0442\u043e.<\/em><\/p>\n<\/div>\n<\/details>\n<p>\u00a0\u0418\u0442\u0430\u043a, \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435:<\/p>\n<ol>\n<li>\n<p>\u0414\u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0438\u0435 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u044b, \u0438\u043c\u043f\u043e\u0440\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0438\u0445<\/p>\n<\/li>\n<li>\n<p>\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u044b\u0435 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0438<\/p>\n<\/li>\n<li>\n<p>\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u0432 \u0441\u0438\u0441\u0442\u0435\u043c\u0443 \u0432\u0435\u0441\u044c \u0442\u0440\u0435\u0431\u0443\u0435\u043c\u044b\u0439 \u0441\u043e\u0444\u0442, \u0437\u0430\u043a\u0438\u043d\u0443\u0442\u044c \u043a\u043e\u043d\u0444\u0438\u0433\u0438 \u0434\u043b\u044f \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043d\u043e\u0433\u043e \u0441\u043e\u0444\u0442\u0430, \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c skel, \u0447\u0442\u043e\u0431\u044b \u043f\u0440\u0438 \u043f\u0435\u0440\u0432\u043e\u043c \u0432\u0445\u043e\u0434\u0435 \u0432 \u0441\u0438\u0441\u0442\u0435\u043c\u0443, \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c \u043f\u043e\u043b\u0443\u0447\u0438\u043b \u043d\u0443\u0436\u043d\u044b\u0435 \u043b\u0438\u043d\u043a\u0438 \u0438 \u043a\u0430\u0442\u0430\u043b\u043e\u0433\u0438, \u043f\u0440\u0435\u0434\u0443\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u0434\u043b\u044f \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439 \u0441\u0435\u0442\u0435\u0432\u044b\u0445 \u0448\u0430\u0440, \u0436\u0438\u0432\u0443\u0449\u0438\u0445 \u043d\u0430 Windows-\u0441\u0435\u0440\u0432\u0435\u0440\u0435, \u043f\u0440\u0435\u0434\u0443\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f\u043c \u0441\u043f\u0438\u0441\u043a\u0430 \u0431\u0430\u0437 1\u0421, \u043a\u0430\u043a \u044d\u0442\u043e \u043e\u043f\u0438\u0441\u0430\u043d\u043e <a href=\"https:\/\/habr.com\/ru\/post\/250287\/\" rel=\"noopener noreferrer nofollow\">\u0437\u0434\u0435\u0441\u044c <\/a>(\u043d\u0443 \u044d\u0442\u043e \u043f\u0440\u043e\u0441\u0442\u043e \u0443\u0434\u043e\u0431\u043d\u043e)<\/p>\n<\/li>\n<li>\n<p>\u0421\u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043a\u043e\u043d\u0444\u0438\u0433\u0438 \u0434\u043b\u044f \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u041f\u041a \u043a \u0434\u043e\u043c\u0435\u043d\u0443, \u043f\u0440\u0435\u0434\u0443\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u0437\u0430\u043f\u0443\u0441\u043a \u043b\u043e\u0433\u043e\u043d-\u0441\u043a\u0440\u0438\u043f\u0442\u043e\u0432, \u043e\u0431\u043e\u0439\u0442\u0438 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0443 \u0430\u0432\u0442\u043e\u0440\u0438\u0437\u0430\u0446\u0438\u0438 \u043d\u0430 proxy-\u0441\u0435\u0440\u0432\u0435\u0440\u0435 (\u0432 \u043d\u0430\u0448\u0435\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u044d\u0442\u043e \u0441\u043a\u0440\u0438\u043f\u0442, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0441\u0442\u0443\u0447\u0438\u0442\u0441\u044f \u0432 proxy-\u0441\u0435\u0440\u0432\u0435\u0440 \u0441 Kerberos-\u0442\u0438\u043a\u0435\u0442\u043e\u043c, \u043f\u043e\u0441\u0440\u0435\u0434\u0441\u0442\u0432\u043e\u043c curl\u2019\u0430, \u0438 \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u0442 \u043d\u0430 \u043f\u0440\u043e\u043a\u0441\u0435 \u0442\u0438\u043a\u0435\u0442 \u043d\u0430 8 \u0447\u0430\u0441\u043e\u0432). \u0414\u0430, WSA \u2013 \u043e\u043d\u0430 \u0442\u0430\u043a\u0430\u044f..<\/p>\n<\/li>\n<li>\n<p>\u041d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c ssh \u0441\u043e\u0433\u043b\u0430\u0441\u043d\u043e \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f\u043c \u043e\u0442 \u0418\u0411, \u0432 \u0442\u043e\u043c \u0447\u0438\u0441\u043b\u0435 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0438\u0442\u044c \u0434\u043e\u0441\u0442\u0443\u043f \u0434\u043b\u044f \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u0445 \u0433\u0440\u0443\u043f\u043f AD<\/p>\n<\/li>\n<li>\n<p>\u041d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u0434\u043e\u0441\u0442\u0443\u043f \u043a sudo \u0434\u043b\u044f \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u043e\u0439 \u0433\u0440\u0443\u043f\u043f\u044b AD<\/p>\n<\/li>\n<li>\n<p>\u0421\u043e\u0431\u043b\u044e\u0441\u0442\u0438 \u043f\u0440\u043e\u0447\u0438\u0435 \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f \u0418\u0411 (\u043c\u043d\u0435 \u0437\u0430\u043f\u0440\u0435\u0442\u0438\u043b\u0438 \u044d\u0442\u043e \u043f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0442\u044c. \u0418\u0411 \u2013 \u0442\u0435 \u0435\u0449\u0435 \u043f\u0430\u0440\u0430\u043d\u043e\u0438\u043a\u0438)<\/p>\n<\/li>\n<li>\n<p>\u0412\u0432\u0435\u0441\u0442\u0438 \u041f\u041a \u0432 \u0434\u043e\u043c\u0435\u043d<\/p>\n<\/li>\n<li>\n<p>\u041f\u0440\u0435\u0434\u0443\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c \u00ab\u0431\u0440\u0435\u043d\u0434\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f\u00bb &#8212; \u043e\u0431\u043e\u0438 \u0440\u0430\u0431\u043e\u0447\u0435\u0433\u043e \u0441\u0442\u043e\u043b\u0430, \u0437\u0430\u0433\u0440\u0443\u0437\u0447\u0438\u043a\u0430 \u0438 \u043f\u0440\u043e\u0447\u0435\u0435 (\u044d\u0442\u043e \u043c\u043d\u0435 \u0442\u043e\u0436\u0435 \u0437\u0430\u043f\u0440\u0435\u0442\u0438\u043b\u0438 \u0432\u0430\u043c \u043f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0442\u044c)<\/p>\n<\/li>\n<li>\n<p>\u041f\u0440\u0435\u0434\u0443\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u043c\u0430\u0441\u0441\u043e\u0432\u043e\u0433\u043e \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u044f<\/p>\n<\/li>\n<\/ol>\n<p>\u0412 \u043f\u043b\u0435\u0439\u0431\u0443\u043a\u0430\u0445 \u0432\u0441\u0435 \u043f\u043e\u043d\u044f\u0442\u043d\u043e \u043f\u043e \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u044f\u043c \u0442\u0430\u0441\u043a\u043e\u0432. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u0432 \u043f\u0440\u043e\u0434\u0435 \u043c\u044b \u0432\u043e\u043e\u0431\u0449\u0435 \u043d\u0435 \u0434\u0435\u043b\u0430\u043b\u0438 \u043a\u043e\u043c\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u0435\u0432. \u0414\u043b\u044f \u0441\u0442\u0430\u0442\u044c\u0438 \u044f \u0434\u043e\u0431\u0430\u0432\u0438\u043b \u043d\u0435\u043c\u043d\u043e\u0433\u043e \u043a\u043e\u043c\u043c\u0435\u043d\u0442\u043e\u0432 \u0442\u0430\u043c, \u0433\u0434\u0435 \u043f\u043e\u0441\u0447\u0438\u0442\u0430\u043b \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u043c.<\/p>\n<p>\u00ab\u041a\u0442\u043e \u0432 \u0442\u0435\u043c\u0435 \u0438 \u0442\u0430\u043a \u043f\u043e\u0439\u043c\u0435\u0442, \u043a\u0442\u043e \u043d\u0435 \u0432 \u0442\u0435\u043c\u0435 \u2013 \u0442\u043e\u0442 \u0432\u0441\u0435 \u0440\u0430\u0432\u043d\u043e \u043b\u0438\u0441\u0442\u0438\u043d\u0433 \u0447\u0438\u0442\u0430\u0442\u044c \u043d\u0435 \u0431\u0443\u0434\u0435\u0442\u00bb.<\/p>\n<p>\u041e\u0433\u043e\u0432\u043e\u0440\u044e\u0441\u044c \u043b\u0438\u0448\u044c \u043e \u0442\u043e\u043c, \u0447\u0442\u043e \u0434\u043b\u044f \u0434\u043e\u0441\u0442\u0430\u0432\u043a\u0438 \u0444\u0430\u0439\u043b\u043e\u0432, \u043e\u0442\u043a\u0440\u044b\u0442\u044b\u0445 \u043a\u043b\u044e\u0447\u0435\u0439 \u0438 \u043f\u0440\u043e\u0447\u0435\u0433\u043e, \u043c\u044b \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043b\u0438 \u0438\u0445 \u0440\u044f\u0434\u043e\u043c \u0441 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u044f\u043c\u0438. \u0422\u0430\u043c \u0432\u0441\u0435 \u0440\u0430\u0432\u043d\u043e web-\u0441\u0435\u0440\u0432\u0435\u0440 \u043f\u043e\u0434\u043d\u044f\u0442, \u043f\u043e\u0447\u0435\u043c\u0443 \u0431\u044b \u0435\u0433\u043e \u043d\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c?<\/p>\n<h4>3.1. \u0414\u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0438\u0435 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u044b, \u0438\u043c\u043f\u043e\u0440\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0438\u0445<\/h4>\n<pre><code class=\"yaml\">- name: Install local CA certs   gather_facts: false   hosts: simply   tasks:     - name: Execute script       shell: |         mkdir \/tmp\/certs         cd \/tmp\/certs         wget --no-check-certificate https:\/\/local-repo-srv.lab.ru\/alt_custom-repo\/certs\/root.crt         wget --no-check-certificate https:\/\/local-repo-srv.lab.ru\/alt_custom-repo\/certs\/subca.crt         cp .\/rootca.crt \/etc\/pki\/ca-trust\/source\/anchors\/         cp .\/subca.crt \/etc\/pki\/ca-trust\/source\/anchors\/         chmod a-x \/etc\/pki\/ca-trust\/source\/anchors\/*         update-ca-trust extract<\/code><\/pre>\n<h4>3.2. \u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u044b\u0435 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0438<\/h4>\n<pre><code class=\"yaml\">- name: add repositories   gather_facts: false   hosts: simply   tasks:     - name: delete all \/etc\/apt\/sources.list.d\/       shell: rm -f \/etc\/apt\/sources.list.d\/*      - name: create lab.list       copy:         dest: \/etc\/apt\/sources.list.d\/lab.list         content: |           rpm [p10] http:\/\/ local-repo-srv.lab.ru \/alt_main-repo p10\/branch\/x86_64 classic           rpm [p10] http:\/\/ local-repo-srv.lab.ru \/alt_main-repo p10\/branch\/noarch classic           rpm [alt_custom_repo] http:\/\/ local-repo-srv.lab.ru \/alt_custom-repo x86_64 alt_custom_repo      - name: add custom gpg key       shell: curl http:\/\/ local-repo-srv.lab.ru \/alt_custom-repo\/x86_64\/base\/custom_repo.pgp >> \/etc\/apt\/custom_repo.pgp &amp;&amp; gpg --no-default-keyring --keyring \/usr\/lib\/alt-gpgkeys\/pubring.gpg --import \/etc\/apt\/custom_repo.pgp      - name: add \/etc\/apt\/vendors.list.d\/lab.list       copy:         dest: \/etc\/apt\/vendors.list.d\/lab.list         content: |           simple-key \"alt_custom_repo\" {           Fingerprint \"\u0431\u043b\u0430-\u0431\u043b\u0430-\u0431\u043b\u0430-\u0431\u0443\u043a\u0432\u044b-\u0438-\u0446\u042b\u0444\u0440\u044b\";           Name \"Vasily &lt;Vasya@lab.ru>\";           }      - name: apt-get update       shell: | apt-get update apt-get dist-upgrade -y<\/code><\/pre>\n<h4>3.3. \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u0432 \u0441\u0438\u0441\u0442\u0435\u043c\u0443 \u0432\u0435\u0441\u044c \u0442\u0440\u0435\u0431\u0443\u0435\u043c\u044b\u0439 \u0441\u043e\u0444\u0442, \u2026<\/h4>\n<pre><code class=\"yaml\">- name: soft installation   gather_facts: false   hosts: simply   tasks:      - name: update       shell: apt-get update -y      - name: install packages       apt_rpm:         name:           - sudo           - apt-scripts           - openssh           - task-auth-ad-sssd           - sssd-ad           - samba-client           - 1c-preinstall-full           - vmware-view-preinstall           - onlyoffice-desktopeditors           - nano           - firefox           - libinput           - libinput-devel           - xorg-drv-libinput           - xorg-drv-libinput-devel           - x11vnc           - x11vnc-service           - 1c-enterprise-8.3.18.1483-thin-client           - vlc           - google-chrome-stable           - autofs           - vmware-horizon-client           - system-config-printer           - kde5-spectacle           - evolution           - evolution-ews           - conky           - remmina           - remmina-plugins           - cups         state: present      - name: remove Libre, stop cups       shell: |             apt-get remove libreoffice5 -y &amp;&amp; apt-get clean -y &amp;&amp; apt-get autoremove -y             systemctl stop cups  #\u0434\u043b\u044f VNC \u0435\u0441\u0442\u044c \u0435\u0449\u0435 \u0442\u0430\u0441\u043a\u0430 \u0434\u043b\u044f \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u043f\u0430\u0440\u043e\u043b\u044f, \u043d\u043e \u044f \u0432\u0430\u043c \u0435\u0435 \u043d\u0435 \u043f\u043e\u043a\u0430\u0436\u0443. #\u0422\u0430\u043c \u0442\u0440\u0438\u0432\u0438\u0430\u043b\u044c\u043d\u043e     - name: x11vnc config       copy:         dest: \/usr\/sbin\/x11vnc-start-daemon         content: |           #!\/bin\/bash           AUTH=`ps aux | grep \"\\-auth \" | head -n 1`           AUTH=${AUTH\/*\\-auth \/}           AUTH=${AUTH\/ *\/}           \/usr\/bin\/x11vnc -auth $AUTH -dontdisconnect -usepw -shared -forever -rfbport 5900 -rfbauth \/etc\/vncpasswd -display :0 -repeat      - name: catalogs and files       file:         path: \"{{ item.path }}\"         state: \"{{ item.state }}\"       with_items:         - { path: \/etc\/skel\/\u0420\u0430\u0431\u043e\u0447\u0438\u0439 \u0441\u0442\u043e\u043b\/, state: directory } #\u043a\u0430\u0442\u0430\u043b\u043e\u0433 \u0434\u043b\u044f \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u044f\u0440\u043b\u044b\u043a\u043e\u0432         - { path: \/mnt\/share\/, state: directory } #\u043a\u0430\u0442\u0430\u043b\u043e\u0433 \u0434\u043b\u044f \u043c\u043e\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u00ab\u0441\u0435\u0442\u0435\u0432\u044b\u0445 \u0434\u0438\u0441\u043a\u043e\u0432\u00bb         - { path: \/var\/ChangeHostName.py, state: absent } #\u0443\u0434\u0430\u043b\u0435\u043d\u0438\u0435 \u0441\u043a\u0440\u0438\u043f\u0442\u0430 \u043f\u043e\u0434\u0431\u043e\u0440\u0430 hostname         - { path: \/opt\/1cv8\/x86_64\/8.3.18.1483\/libstdc++.so.6, state: absent } #\u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b 1\u0421 \u044d\u0442\u043e\u0442 \u0444\u0430\u0439\u043b \u043d\u0430\u0434\u043e \u0443\u0434\u0430\u043b\u0438\u0442\u044c. \u041d\u0435 \u0441\u043f\u0440\u0430\u0448\u0438\u0432\u0430\u0439\u0442\u0435, \u044d\u0442\u043e \u043d\u0435 \u0431\u0430\u0433, \u044d\u0442\u043e \u0444\u0438\u0447\u0430.         - { path: \/etc\/skel\/.1C\/1cestart\/, state: directory } #\u043a\u0430\u0442\u0430\u043b\u043e\u0433 \u0434\u043b\u044f \u043c\u043e\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0448\u0430\u0440\u044b \u0441\u043e \u0441\u043f\u0438\u0441\u043a\u043e\u043c \u0431\u0430\u0437 \u0434\u043b\u044f 1\u0421      - name: create links       file:         src: \"{{ item.src }}\"         dest: \"{{ item.dest }}\"         state: \"{{ item.state }}\"         mode: \"{{ item.mode }}\"         force: yes       with_items:         - { src: \/mnt\/share\/, dest: \/etc\/skel\/\u0420\u0430\u0431\u043e\u0447\u0438\u0439 \u0441\u0442\u043e\u043b\/\u0421\u0435\u0442\u0435\u0432\u044b\u0435_\u041f\u0430\u043f\u043a\u0438, state: link, mode: '755' }         - { src: \/usr\/share\/applications\/firefox.desktop, dest: \/etc\/skel\/\u0420\u0430\u0431\u043e\u0447\u0438\u0439 \u0441\u0442\u043e\u043b\/firefox.desktop, state: link, mode: '755' }         - { src: \/usr\/share\/applications\/google-chrome.desktop, dest: \/etc\/skel\/\u0420\u0430\u0431\u043e\u0447\u0438\u0439 \u0441\u0442\u043e\u043b\/google-chrome.desktop, state: link, mode: '755' }         - { src: \/usr\/share\/applications\/1cestart-8.3.18-1483.desktop, dest: \/etc\/skel\/\u0420\u0430\u0431\u043e\u0447\u0438\u0439 \u0441\u0442\u043e\u043b\/1C.desktop, state: link, mode: '755' }         - { src: \/usr\/share\/kf5\/applications\/kf5\/org.kde.dolphin.desktop, dest: \/etc\/skel\/\u0420\u0430\u0431\u043e\u0447\u0438\u0439 \u0441\u0442\u043e\u043b\/Dolphin.desktop, state: link, mode: '755' }         - { src: \/usr\/share\/applications\/onlyoffice-desktopeditors.desktop, dest: \/etc\/skel\/\u0420\u0430\u0431\u043e\u0447\u0438\u0439 \u0441\u0442\u043e\u043b\/onlyoffice-desktopeditors.desktop, state: link, mode: '755' }         - { src: \/usr\/share\/applications\/vmware-view.desktop, dest: \/etc\/skel\/\u0420\u0430\u0431\u043e\u0447\u0438\u0439 \u0441\u0442\u043e\u043b\/vmware-view.desktop, state: link, mode: '755' }         - { src: \/mnt\/.services\/1CBases\/1cestart_alt.cfg, dest: \/etc\/skel\/.1C\/1cestart\/1cestart.cfg, state: link, mode: '755' }      - name: copy files       copy:         src: \"{{ item.src }}\"         dest: \"{{ item.dest }}\"         owner: \"{{ item.owner }}\"         group: \"{{ item.group }}\"         mode: \"{{ item.mode }}\"       with_items: #\u0431\u043b\u043e\u043a \u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043a cups. \u041e\u043d\u0438 \u0434\u043b\u044f \u0432\u0441\u0435\u0445 \u043e\u0434\u0438\u043d\u0430\u043a\u043e\u0432\u044b, \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0430\u0435\u0442\u0441\u044f \u043e\u0447\u0435\u0440\u0435\u0434\u044c #\u043f\u0435\u0447\u0430\u0442\u0438 \u043d\u0430 \u043f\u0440\u0438\u043d\u0442\u0435\u0440 MyQ         - { src: \/etc\/ansible\/playbooks\/files\/cups\/cupsd.conf, dest: \/etc\/cups\/cupsd.conf, owner: root, group: lp, mode: '640' }         - { src: \/etc\/ansible\/playbooks\/files\/cups\/cups-files.conf, dest: \/etc\/cups\/cups-files.conf, owner: root, group: root, mode: '644' }         - { src: \/etc\/ansible\/playbooks\/files\/cups\/printers.conf, dest: \/etc\/cups\/printers.conf, owner: root, group: lp, mode: '600' }      - name: enable services       service:         name: \"{{ item }}\"         enabled: yes         state: restarted       with_items:         - x11vnc         - cups      - name: firefox set krb enable       copy:         dest: \/usr\/lib64\/firefox\/browser\/defaults\/preferences\/myprefs.js         content: |           pref(\"network.negotiate-auth.trusted-uris\",\".lab.ru\");           pref(\"network.automatic-ntlm-auth.trusted-uris\",\".lab.ru\");           pref(\"network.automatic-ntlm-auth.allow-non-fqdn\",\"true\");           pref(\"network.negotiate-auth.allow-non-fqdn\",\"true\");           pref(\"network.negotiate-auth.delegation-uris\",\".lab.ru\");      - name: chrome set krb enable       copy:         dest: \/etc\/opt\/chrome\/policies\/managed\/krb.json         content: |           {             \"AuthServerAllowlist\": \"*.lab.ru\",             \"AuthNegotiateDelegateAllowlist\": \"*.lab.ru\"           }      - name: apt dedup, enable cups       shell: |              apt-get dedup -y              systemctl start cups<\/code><\/pre>\n<h4>3.4. \u0421\u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u043a\u043e\u043d\u0444\u0438\u0433\u0438 \u0434\u043b\u044f \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u041f\u041a \u043a \u0434\u043e\u043c\u0435\u043d\u0443, ..<\/h4>\n<pre><code class=\"yaml\">- name:  pre-domain config   gather_facts: false   hosts: simply   tasks:           - name: krb config             copy:               dest: \/etc\/krb5.conf               content: |                 [logging]                 # default = FILE:\/var\/log\/krb5libs.log                  [libdefaults]                  default_realm = LAB.RU                  dns_lookup_realm = true                  dns_lookup_kdc = true                  ticket_lifetime = 24h                  renew_lifetime = 7d                  rdns = false                  forwardable = yes                  default_ccache_name = FILE:\/tmp\/krb5cc_%{uid}            - name: samba config             copy:               dest: \/etc\/samba\/smb.conf               content: |                 [global]                 security = ads                 realm = LAB.RU                 workgroup = LAB                 netbios name = {{inventory_hostname}}                 template shell = \/bin\/bash                 kerberos method = system keytab                 wins support = no                 idmap config * : range = 10000-20000000                 idmap config * : backend = tdb            - name: sssd config             copy:               dest: \/etc\/sssd\/sssd.conf               content: |                 [sssd]                 config_file_version = 2                 user = root                 domains = LAB.RU                 services = pam,nss,autofs                  [nss]                  [pam]                  [domain\/LAB.RU]                 id_provider = ad                 auth_provider = ad                 chpass_provider = ad                 default_shell = \/bin\/bash                 fallback_homedir = \/home\/%d\/%u                 ad_server = dc-1.lab.ru,dc-2.lab.ru                 ad_backup_server = _srv_                 cache_credentials = true                 debug_level = 2 #\u043c\u043e\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0441\u0435\u0442\u0435\u0432\u044b\u0445 \u0434\u0438\u0441\u043a\u043e\u0432. \u0427\u0435\u0440\u0435\u0437 pam mount \u043d\u0438\u0447\u0435\u0433\u043e \u043d\u0435 \u0432\u044b\u0448\u043b\u043e. \u041e\u043d \u043b\u0438\u0431\u043e \u0431\u0430\u0433\u043e\u0432\u0430\u043d\u044b\u0439, #\u043b\u0438\u0431\u043e \u0444\u0438\u0447\u0430 \u0443 \u043d\u0435\u0433\u043e \u0442\u0430\u043a\u0430\u044f, \u043d\u043e \u043c\u044b \u043f\u0435\u0440\u0435\u0448\u043b\u0438 \u043d\u0430 \u0441\u043c\u0431, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043c\u043e\u043d\u0442\u0438\u0440\u0443\u0435\u0442 \u0448\u0430\u0440\u044b \u043f\u0440\u0438 #\u043e\u0431\u0440\u0430\u0449\u0435\u043d\u0438\u0438 \u043a \u043d\u0438\u043c \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f            - name: autofs config             copy:               dest: \/etc\/auto.master               content: |                 \/mnt\/share        \/etc\/auto.samba --ghost                 \/mnt\/.services    \/etc\/auto2.samba --ghost --timeout 60             - name: autofs config 1             copy:               dest: \/etc\/auto.samba               content: |                 disk_1  -fstype=cifs,multiuser,cruid=$UID,sec=krb5,domain=LAB.RU      :\/\/dfs-server.lab.ru\/Share                 disk_2  -fstype=cifs,multiuser,cruid=$UID,sec=krb5,domain=LAB.RU      :\/\/file-server.lab.ru\/Share2                 disk_3  -fstype=cifs,multiuser,cruid=$UID,sec=krb5,domain=LAB.RU      :\/\/file-server.lab.ru\/Share3            - name: autofs config 2             copy:               dest: \/etc\/auto2.samba               content: |                 1CBases      -fstype=cifs,multiuser,cruid=$UID,sec=krb5,domain=LAB.RU      :\/\/file-server.lab.ru \/1CBases                 background   -fstype=cifs,multiuser,cruid=$UID,sec=krb5,domain=LAB.RU      :\/\/file-server.lab.ru\/background             - name: enable autofs             service:               name: autofs               enabled: yes               state: restarted            - name: configure nsswitch and cronyd             lineinfile:               path: \"{{ item.path }}\"               regexp: \"{{ item.regexp }}\"               line: \"{{ item.line }}\"             loop:               - { path: \/etc\/nsswitch.conf, regexp: '^passwd', line: 'passwd:     files sss' }               - { path: \/etc\/nsswitch.conf, regexp: '^shadow', line: 'shadow:     tcb files sss' }               - { path: \/etc\/nsswitch.conf, regexp: '^group', line: 'group:      files sss' }               - { path: \/etc\/chrony.conf, regexp: '^pool', line: 'pool dc-1.lab.ru iburst' }            - name: set control policy and system-auth             shell: |                   control sudo public                   control system-auth sss  #Cisco WSA \u2013 \u0434\u043e\u0432\u043e\u043b\u044c\u043d\u043e \u00ab\u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u044b\u0439\u00bb proxy-\u0441\u0435\u0440\u0432\u0435\u0440.. #\u0418 \u0442\u0430\u043a \u043a\u0430\u043a \u0434\u0430\u043b\u0435\u043a\u043e \u043d\u0435 \u0432\u0441\u0435 Linux\u2019\u043e\u0432\u044b\u0435 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0443\u043c\u0435\u044e\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c krb-\u0442\u0438\u043a\u0435\u0442\u044b #\u0434\u043b\u044f \u0430\u0432\u0442\u043e\u0440\u0438\u0437\u0430\u0446\u0438\u0438 \u043d\u0430 \u043f\u0440\u043e\u043a\u0441\u0438, \u043f\u0440\u0438\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043a\u043e\u0441\u0442\u044b\u043b\u044c. \u041d\u0435\u0442, \u043c\u043e\u0436\u043d\u043e \u0431\u044b\u043b\u043e #\u0437\u0430\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u0441\u043d\u0430\u0447\u0430\u043b\u0430 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u0431\u0440\u0430\u0443\u0437\u0435\u0440, \u0430\u0432\u0442\u043e\u0440\u0438\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u043d\u0430 \u043f\u0440\u043e\u043a\u0441\u0435, #\u0438 \u0442\u043e\u043b\u044c\u043a\u043e \u043f\u043e\u0441\u043b\u0435 \u044d\u0442\u043e\u0433\u043e \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0434\u043e\u0441\u0442\u0443\u043f \u0432 \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442, \u0441\u043a\u0430\u0436\u0435\u043c, \u0441 \u043c\u0435\u0441\u0441\u0435\u043d\u0434\u0436\u0435\u0440\u0430.. #\u043d\u043e \u043c\u044b \u043f\u043e\u0441\u0447\u0438\u0442\u0430\u043b\u0438 \u044d\u0442\u043e \u0438\u0437\u0434\u0435\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u0442\u0432\u043e\u043c.            - name: proxy auth script             copy:               dest: \/var\/proxy_auth.sh               content: |                 #!\/bin\/bash                 ip=$(echo `ifconfig eth0 2>\/dev\/null|awk '\/inet addr:\/ {print $2}'|sed 's\/addr:\/\/'`)                 echo \"curl -isL --negotiate -u : https:\/\/proxy-server.lab.ru\/same_text\/$ip\/http:\/\/lab.ru\/ > \/dev\/null\" > \/tmp\/proxy_auth.sh                 \/bin\/bash \/tmp\/proxy_auth.sh                 rm -f \/tmp\/proxy_auth.sh               mode: \"755\"            - name: create logon script fpr proxy auth             copy:               dest: \/etc\/profile.d\/proxy_auth.sh               content: |                 #!\/bin\/bash                 \/var\/proxy_auth.sh               mode: \"755\"<\/code><\/pre>\n<h4>3.5. \u041d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c ssh \u0441\u043e\u0433\u043b\u0430\u0441\u043d\u043e \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f\u043c \u043e\u0442 \u0418\u0411, \u0432 \u0442\u043e\u043c \u0447\u0438\u0441\u043b\u0435 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0438\u0442\u044c \u0434\u043e\u0441\u0442\u0443\u043f \u0434\u043b\u044f \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u0445 \u0433\u0440\u0443\u043f\u043f AD   <\/h4>\n<pre><code class=\"yaml\">- name: ssh   gather_facts: false   hosts: simply   tasks:           - name: edit sshd config             lineinfile:                     path: \/etc\/openssh\/sshd_config                     regex: \"^(#)?{{item.key}}\"                     line: \"{{item.key}} {{item.value}}\"                     state: present             loop:                             - { key: \"LogLevel\", value: \"VERBOSE\" }                             - { key: \"PermitRootLogin\", value: \"prohibit-password\" }                             - { key: \"MaxAuthTries\", value: \"3\" }                             - { key: \"MaxSessions\", value: \"2\" }                             - { key: \"PermitEmptyPasswords\", value: \"no\" }                             - { key: \"UsePAM\", value: \"yes\" }                             - { key: \"AllowGroups\", value: \"domain?users root wheel linux-sudoers\" } #\u0434\u0430, \u0434\u0430, \u0438\u043c\u0435\u043d\u043d\u043e \u0432 \u0442\u0430\u043a\u043e\u043c \u0444\u043e\u0440\u043c\u0430\u0442\u0435 \u0442\u0443\u0442 \u043d\u0443\u0436\u043d\u043e \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u0442\u044c \u0434\u043e\u043c\u0435\u043d\u043d\u044b\u0435 \u0433\u0440\u0443\u043f\u043f\u044b \u0441 \u043f\u0440\u043e\u0431\u0435\u043b\u0430\u043c\u0438 #\u0432 \u043d\u0430\u0437\u0432\u0430\u043d\u0438\u044f\u0445             notify:                     - restart sshd                     - enable sshd    handlers:           - name: restart sshd             service:                     name: sshd                     state: restarted            - name: enable sshd             service:                     name: sshd                     enabled: yes<\/code><\/pre>\n<h4>3.6. \u041d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u0434\u043e\u0441\u0442\u0443\u043f \u043a sudo \u0434\u043b\u044f \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u043e\u0439 \u0433\u0440\u0443\u043f\u043f\u044b AD   <\/h4>\n<pre><code class=\"yaml\">- name: sudoers   gather_facts: false   hosts: simply   tasks:           - name: edit sudoers file             blockinfile:                     path: \/etc\/sudoers                     backup: yes                     block: |                             %Linux-Sudoers ALL=(ALL) ALL                             %Linux-Users ALL=\/usr\/bin\/apt-cache                             %Linux-Users ALL=\/usr\/sbin\/poweroff                             %Linux-Users ALL=\/usr\/sbin\/NetworkManager                     validate: \/usr\/sbin\/visudo -cf %s            - name: replace line             lineinfile:                     path: \/etc\/sudoers                     regexp: '^@includedir \/etc\/sudoers.d'                     line: '#@includedir \/etc\/sudoers.d'                     validate: \/usr\/sbin\/visudo -cf %s<\/code><\/pre>\n<h4>3.8. \u0412\u0432\u0435\u0441\u0442\u0438 \u041f\u041a \u0432 \u0434\u043e\u043c\u0435\u043d   <\/h4>\n<pre><code class=\"yaml\">#\u041f\u0440\u0438 \u0437\u0430\u043f\u0443\u0441\u043a\u0435 \u0441\u043f\u0440\u0430\u0448\u0438\u0432\u0430\u0435\u0442 \u043b\u043e\u0433\u0438\u043d \u0438 \u043f\u0430\u0440\u043e\u043b\u044c (\u0432 \u00ab\u043f\u0440\u0438\u0432\u0430\u0442\u043d\u043e\u043c\u00bb \u0432\u0438\u0434\u0435). #\u041f\u043e\u0441\u043b\u0435 \u0447\u0435\u0433\u043e \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u0442 \u043a\u0435\u0440\u0431\u0435\u0440\u043e\u0441-\u0442\u0438\u043a\u0435\u0442 \u0438 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0430\u0435\u0442 \u041e\u0421 \u043a \u0434\u043e\u043c\u0435\u043d\u0443 - name: domain join   gather_facts: false   hosts: simply    vars_prompt:     - name: \"adlogin\"       prompt: \"Enter AD Login\"       private: no      - name: \"password\"       prompt: \"Enter password\"       private: yes    tasks:     - name: domain check       shell: timeout 6s net ads testjoin       register: domain_state       failed_when: domain_state.rc == 0      - name: Clear the sssd cache       shell: rm -f \/var\/lib\/sss\/db\/* \/var\/lib\/sss\/mc\/*      - name: get krb ticket       shell: echo '{{ password }}'| kinit \"{{ adlogin }}\"      - name: join domain       command: net ads join -U \"{{ adlogin }}\"%\"{{ password }}\" createcomputer=\"\/Computers\/Linux\"      - name: sssd enable       service:         name: sssd         enabled: yes         state: restarted      - name: reboot       reboot:         reboot_timeout: 120<\/code><\/pre>\n<h4>3.10. \u041f\u0440\u0435\u0434\u0443\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u043c\u0430\u0441\u0441\u043e\u0432\u043e\u0433\u043e \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u044f   <\/h4>\n<p>\u0422\u0443\u0442 \u043f\u0440\u0438\u0448\u043b\u043e\u0441\u044c \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0439 playbook \u0434\u043b\u044f \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u044f, \u0438 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0439 playbook \u0434\u043b\u044f \u0431\u0440\u0435\u043d\u0434\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f, \u0442\u0430\u043a \u043a\u0430\u043a \u043c\u044b \u043f\u043e\u0448\u043b\u0438 \u043f\u043e \u043f\u0440\u043e\u0441\u0442\u043e\u043c\u0443 \u043f\u0443\u0442\u0438 \u2013 \u043d\u0435 \u0441\u0442\u0430\u043b\u0438 \u043f\u0438\u043b\u0438\u0442\u044c \u0442\u0435\u043c\u0443 \u0434\u043b\u044f \u043a\u0435\u0434\u043e\u0432, \u0430 \u043f\u0440\u043e\u0441\u0442\u043e \u043f\u043e\u043c\u0435\u043d\u044f\u043b\u0438 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u0443\u044e\u0449\u0438\u0435 \u043d\u0430\u0441 \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0438. \u0418 \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u043f\u0440\u0438 \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0438 \u043f\u0430\u043a\u0435\u0442\u043e\u0432 \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0438 \u0437\u0430\u0442\u0438\u0440\u0430\u044e\u0442\u0441\u044f. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u0441\u0440\u0430\u0437\u0443 \u043f\u043e\u0441\u043b\u0435 \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u044f \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u0431\u0440\u0435\u043d\u0434\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435.<\/p>\n<p>Playbook \u0430\u043f\u0434\u0435\u0439\u0442\u0430:<\/p>\n<pre><code class=\"yaml\">- name: update and upgrade   hosts: simply   gather_facts: false   tasks:    - name: update &amp; upgrade     shell: |       apt-get update -y &amp;&amp; apt-get dist-upgrade -y       apt-get dedup -y<\/code><\/pre>\n<p>\u0411\u0440\u0435\u043d\u0434\u0438\u043d\u0433 \u0443 \u043d\u0430\u0441 \u0443\u0436\u0435 \u0431\u044b\u043b (\u043d\u043e \u044f \u0432\u0430\u043c \u0435\u0433\u043e \u043d\u0435 \u043f\u043e\u043a\u0430\u0436\u0443, \u043c\u043d\u0435 \u0437\u0430\u043f\u0440\u0435\u0442\u0438\u043b\u0438). \u0418 \u043f\u043e\u044d\u0442\u043e\u043c\u0443 playbook \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u044f \u0432\u044b\u0433\u043b\u044f\u0434\u044f\u0442 \u0442\u0430\u043a:<\/p>\n<pre><code class=\"yaml\">- import_playbook: update.yml - import_playbook: branding.yml<\/code><\/pre>\n<h2>4. Server-side<\/h2>\n<p>\u0421\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439 \u044d\u0442\u0430\u043f \u0438\u043c\u043f\u043e\u0440\u0442\u043e\u0437\u0430\u043c\u0435\u0449\u0435\u043d\u0438\u044f \u2013 \u043f\u0435\u0440\u0435\u043d\u043e\u0441 \u0438\u043d\u0444\u0440\u0430\u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u043d\u044b\u0445 \u0441\u0435\u0440\u0432\u0438\u0441\u043e\u0432 \u043d\u0430 \u00ab\u043e\u0442\u0435\u0447\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0435\u00bb \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u044b\u0435 \u043f\u0440\u043e\u0434\u0443\u043a\u0442\u044b. \u041e\u0431 \u044d\u0442\u043e\u043c \u043c\u044b \u0434\u043e\u043b\u0433\u043e \u0434\u0443\u043c\u0430\u043b\u0438, \u0440\u0430\u0441\u0441\u043c\u0430\u0442\u0440\u0438\u0432\u0430\u043b\u0438 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u044b, \u043f\u043e\u0434\u043d\u0438\u043c\u0430\u043b\u0438 \u0441\u0442\u0435\u043d\u0434\u044b (\u043d\u043e \u0441\u0442\u0435\u043d\u0434 \u0438 \u0431\u043e\u0435\u0432\u044b\u0435 \u0442\u0435\u0441\u0442\u044b \u2013 \u044d\u0442\u043e \u0441\u043e\u0432\u0441\u0435\u043c \u043d\u0435 \u043e\u0434\u043d\u043e \u0438 \u0442\u043e \u0436\u0435). \u0421\u043b\u043e\u0432\u043e\u043c, \u043f\u0435\u0440\u0435\u043a\u0438\u043d\u0443\u0442\u044c \u043d\u0430 \u0410\u043b\u044c\u0442 \u0438\u043b\u0438 \u0410\u0441\u0442\u0440\u0443, \u0438\u043b\u0438 \u043a\u0430\u043a\u0443\u044e-\u0442\u043e \u0435\u0449\u0435 \u041e\u0421, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, Zabbix, dhcp, dns, proxy-\u0441\u0435\u0440\u0432\u0435\u0440 \u2013 \u043d\u0435 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0430. \u042d\u0442\u043e \u0432\u0441\u0435 \u0435\u0441\u0442\u044c \u0438 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442. \u041d\u043e \u0437\u0430\u043c\u0435\u043d\u0438\u0442\u044c VMWare Hypervisor \u043f\u0440\u043e\u0441\u0442\u043e \u043d\u0435\u0447\u0435\u043c. OpenNebula? \u041d\u0443 \u0434\u0430, \u043d\u0443 \u0434\u0430. KVM? ProxMox? VDI \u2013 \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u0435\u0442. \u041f\u0440\u043e\u0431\u043b\u0435\u043c\u0430 \u00ab\u043e\u0442\u0435\u0447\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0433\u043e\u00bb \u0441\u043e\u0444\u0442\u0430 \u043e\u0441\u0442\u0430\u043b\u0430\u0441\u044c \u0442\u043e\u0439 \u0436\u0435 \u2013 \u044d\u0442\u043e \u043f\u0435\u0440\u0435\u0441\u043e\u0431\u0440\u0430\u043d\u043d\u043e\u0435 OpenSource \u041f\u041e, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u0441\u0442\u043e\u0438\u0442 \u0434\u0435\u043d\u0435\u0433. \u0418 \u043a\u0430\u043a \u0432\u0435\u0441\u044c OpenSource, \u0435\u0433\u043e \u0441\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c \u0437\u0430\u043a\u043b\u044e\u0447\u0430\u0435\u0442\u0441\u044f \u043d\u0435 \u0432 \u00ab\u043a\u043e\u0440\u043e\u0431\u043a\u0430 + 2 \u0438\u043d\u0436\u0435\u043d\u0435\u0440\u0430\u00bb, \u0430 \u0432 \u00ab\u0434\u0435\u0441\u044f\u0442\u043e\u043a \u0438\u043d\u0436\u0435\u043d\u0435\u0440\u043e\u0432 \u0441 \u0437\u0430\u0440\u043f\u043b\u0430\u0442\u0430\u043c\u0438 \u0441\u0438\u043b\u044c\u043d\u043e \u0432\u044b\u0448\u0435, \u0447\u0435\u043c \u0443 \u00ab\u043a\u043e\u0440\u043e\u0431\u043e\u0447\u043d\u043e\u0433\u043e\u00bb (\u0432 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043e\u0442 \u0440\u0430\u0437\u043c\u0435\u0440\u0430 \u0438\u043d\u0444\u0440\u0430\u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u044b).<\/p>\n<p>\u041f\u043e \u0438\u0442\u043e\u0433\u0443 \u043c\u044b \u043f\u0435\u0440\u0435\u043a\u0438\u043d\u0443\u043b\u0438 \u043d\u0430 Simply Linux \u043f\u0440\u043e\u0434\u0443\u043a\u0442\u043e\u0432\u044b\u0439 Zabbix, \u0438 \u043f\u043e\u0434\u043d\u044f\u043b\u0438 Ansible, jitsi \u0438 \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u044b\u0439 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0439. \u0414\u0430\u043b\u044c\u0448\u0435 \u043f\u043e \u043f\u043b\u0430\u043d\u0443 \u043f\u0435\u0440\u0435\u043d\u043e\u0441 Nextcloud, Kaspersky Security Center, Certification Authority. \u041d\u043e \u0432\u0441\u0435 \u044d\u0442\u043e.. \u0442\u0430\u043a\u043e\u0435.. \u0424\u0438\u043a\u0446\u0438\u044f \u0438 \u043f\u0440\u043e\u0444\u0430\u043d\u0430\u0446\u0438\u044f.<\/p>\n<h2>5. \u0412\u044b\u0432\u043e\u0434\u044b<\/h2>\n<p>\u0412 \u0446\u0435\u043b\u043e\u043c, \u0441\u043e \u0441\u043b\u043e\u0432 \u0442\u0435\u0441\u0442\u043e\u0432\u043e\u0439 \u0433\u0440\u0443\u043f\u043f\u044b, \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u043d\u0430 Linux \u00ab\u043c\u043e\u0436\u043d\u043e\u00bb. \u0414\u0430, \u043d\u0435\u0434\u043e\u0441\u0442\u0430\u0435\u0442 \u043f\u0440\u0438\u0432\u044b\u0447\u043d\u044b\u0445 \u0432\u0438\u043d\u0434\u043e\u0432\u044b\u0445 \u0443\u0434\u043e\u0431\u0441\u0442\u0432, \u0442\u0438\u043f\u0430 SSO \u0434\u043b\u044f Outlook, \u043f\u0440\u0435\u0434\u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u043e\u0432 \u0432 1\u0421 (\u043d\u0430\u0434 \u044d\u0442\u0438\u043c \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u043d\u0430\u0448 \u0446\u0435\u043d\u0442\u0440 \u043a\u043e\u043c\u043f\u0435\u0442\u0435\u043d\u0446\u0438\u0439 1\u0421), \u00ab\u0430\u0434\u043e\u043a \u0441 \u0431\u0430\u043d\u043a-\u043a\u043b\u0438\u0435\u043d\u0442\u0430\u043c\u0438 \u0438 \u043a\u0440\u0438\u043f\u0442\u043e\u043f\u0440\u043e\u0439\u00bb (\u0441) \u0442\u0435\u0445\u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0430.<\/p>\n<p>\u00ab\u0420\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u043c\u043e\u0436\u043d\u043e\u00bb. \u0411\u0430\u0437\u043e\u0432\u044b\u0439 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b \u0435\u0441\u0442\u044c. \u0414\u0430, \u043d\u0435 \u0438\u0441\u043a\u0430\u0440\u043e\u043f\u043a\u0435, \u0435\u0433\u043e \u043f\u0440\u0438\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u0434\u043e\u043f\u0438\u043b\u0438\u0432\u0430\u0442\u044c, \u0438\u0431\u043e \u043f\u0430\u0440\u0430\u0434\u0438\u0433\u043c\u0430 Linux \u0442\u0430\u043a\u043e\u0432\u0430, \u0447\u0442\u043e \u043a\u0430\u0436\u0434\u044b\u0439 \u043a\u0430\u0436\u0434\u044b\u0439 \u0434\u0435\u043b\u0430\u0435\u0442 \u00ab\u044d\u0442\u043e\u00bb \u0442\u0430\u043a, \u043a\u0430\u043a \u0445\u043e\u0447\u0435\u0442. \u0415\u0441\u043b\u0438 \u0432\u044b \u043f\u043e\u043d\u0438\u043c\u0430\u0435\u0442\u0435, \u043e \u0447\u0435\u043c \u044f. \u0410 \u0434\u043e\u043f\u0438\u043b\u0438\u0432\u0430\u0442\u044c \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b \u043f\u0440\u0438\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u0432 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u043c \u0441\u0438\u043b\u0430\u043c\u0438 \u0430\u0434\u043c\u0438\u043d\u043e\u0432 \u0438 \u0422\u041f.<\/p>\n<p>\u0412 \u0438\u0442\u043e\u0433\u0435: \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044f \u0434\u0430\u043d\u043d\u044b\u0439 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u0439, \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a \u0441\u043c\u043e\u0436\u0435\u0442 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0442\u044c \u0441\u0432\u043e\u0438 \u043e\u0431\u044f\u0437\u0430\u043d\u043d\u043e\u0441\u0442\u0438.<\/p>\n<p>\u041d\u043e. \u0428\u0430\u0433 \u0432\u043b\u0435\u0432\u043e\\\u0448\u0430\u0433 \u0432\u043f\u0440\u0430\u0432\u043e \u0432\u044b\u0437\u044b\u0432\u0430\u0435\u0442 \u0436\u0443\u0442\u043a\u0438\u0439 butthurt \u043a\u0430\u043a \u0443 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f, \u0442\u0430\u043a \u0443 \u0442\u0435\u0445\u043f\u043e\u0434\u0430, \u043f\u0440\u0438\u0432\u044b\u043a\u0448\u0435\u0433\u043e \u043a Windows. \u0423 \u043d\u0430\u0441 \u0436\u0435 \u043a\u0430\u043a \u0437\u0430\u0432\u0435\u0434\u0435\u043d\u043e? \u041b\u043e\u0433\u0438 \u043d\u0430\u0447\u0438\u043d\u0430\u044e\u0442 \u0447\u0438\u0442\u0430\u0442\u044c \u0442\u043e\u043b\u044c\u043a\u043e \u0442\u043e\u0433\u0434\u0430, \u043a\u043e\u0433\u0434\u0430 google \u043d\u0438\u0447\u0435\u0433\u043e \u043d\u0435 \u043f\u043e\u0434\u0441\u043a\u0430\u0437\u0430\u043b. \u0418 \u043f\u0435\u0440\u0435\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u043c\u044b\u0448\u043b\u0435\u043d\u0438\u0435 \u0434\u043e\u0432\u043e\u043b\u044c\u043d\u043e \u0442\u0440\u0443\u0434\u043d\u043e, \u043f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u00ab\u043d\u0443 \u0442\u0430\u043c \u0436\u0435 \u0442\u0430\u043a \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442! \u0418 \u044d\u0442\u043e \u0443\u0434\u043e\u0431\u043d\u043e! \u0422\u0430\u043a \u0437\u0430\u0447\u0435\u043c \u0443\u0445\u043e\u0434\u0438\u0442\u044c \u043e\u0442 \u0443\u0434\u043e\u0431\u043d\u043e\u0433\u043e \u0438 \u043f\u0440\u0438\u0432\u044b\u0447\u043d\u043e\u0433\u043e \u043a \u0441\u043b\u043e\u0436\u043d\u043e\u043c\u0443 \u0438 \u043d\u0435\u043f\u043e\u043d\u044f\u0442\u043d\u043e\u043c\u0443?\u00bb. \u041d\u043e \u044d\u0442\u043e \u0443\u0436\u0435 \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0430, \u044d\u0442\u043e \u043d\u0430 \u0434\u0440\u0443\u0433\u043e\u043c \u0440\u0435\u0441\u0443\u0440\u0441\u0435 \u043e\u0431\u0441\u0443\u0436\u0434\u0430\u0435\u0442\u0441\u044f.<\/p>\n<p>\u00ab\u041c\u044b\u0448\u0438 \u043f\u043b\u0430\u043a\u0430\u043b\u0438 \u0438 \u043a\u043e\u043b\u043e\u043b\u0438\u0441\u044c..\u00bb \u0410, \u0441\u0442\u043e\u043f, \u0433\u0434\u0435-\u0442\u043e \u044f \u044d\u0442\u043e <a href=\"https:\/\/habr.com\/ru\/post\/449828\/\" rel=\"noopener noreferrer nofollow\">\u0443\u0436\u0435 \u043f\u0438\u0441\u0430\u043b<\/a>..<\/p>\n<\/p>\n<\/div>\n<\/div>\n<\/div>\n<div class=\"v-portal\" style=\"display:none;\"><\/div>\n<\/div>\n<p> <!----> <\/p>\n<div class=\"tm-article-poll\">\n<div class=\"tm-notice tm-article-poll__notice tm-notice_positive\"><!----> <\/p>\n<div class=\"tm-notice__inner\"><!----> <\/p>\n<div data-test-id=\"notice-content\" class=\"tm-notice__content\"><span>\u0422\u043e\u043b\u044c\u043a\u043e \u0437\u0430\u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0435 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0438 \u043c\u043e\u0433\u0443\u0442 \u0443\u0447\u0430\u0441\u0442\u0432\u043e\u0432\u0430\u0442\u044c \u0432 \u043e\u043f\u0440\u043e\u0441\u0435. <a rel=\"nofollow\" href=\"\/kek\/v1\/auth\/habrahabr\/?back=\/ru\/post\/695284\/&#038;hl=ru\">\u0412\u043e\u0439\u0434\u0438\u0442\u0435<\/a>, \u043f\u043e\u0436\u0430\u043b\u0443\u0439\u0441\u0442\u0430.<\/span><\/div>\n<\/div>\n<\/div>\n<div class=\"tm-article-poll__header\">\u0410 \u0432\u044b \u0443\u0436\u0435 \u0438\u043c\u043f\u043e\u0440\u0442\u043e\u0437\u0430\u043c\u0435\u0449\u0430\u0435\u0442\u0435?<\/div>\n<div class=\"tm-article-poll__answers\">\n<div class=\"tm-article-poll__answer\">\n<div class=\"tm-article-poll__answer-data\"><span class=\"tm-article-poll__answer-percent tm-article-poll__answer-percent_winning\">             100%           <\/span> <span class=\"tm-article-poll__answer-label\">\u0418\u043c\u043f\u043e\u0440\u0442\u043e\u0437\u0430\u043c\u0435\u0449\u0430\u0435\u043c<\/span> <span class=\"tm-article-poll__answer-votes\">             1           <\/span><\/div>\n<div class=\"tm-article-poll__answer-bar\">\n<div class=\"tm-article-poll__answer-progress tm-article-poll__answer-progress_winning\" style=\"width:100%;\"><\/div>\n<\/div>\n<\/div>\n<div class=\"tm-article-poll__answer\">\n<div class=\"tm-article-poll__answer-data\"><span class=\"tm-article-poll__answer-percent\">             0%           <\/span> <span class=\"tm-article-poll__answer-label\">\u041d\u0435\u0442, \u043c\u044b \u0432 \u0434\u043e\u043c\u0438\u043a\u0435.<\/span> <span class=\"tm-article-poll__answer-votes\">             0           <\/span><\/div>\n<div class=\"tm-article-poll__answer-bar\">\n<div class=\"tm-article-poll__answer-progress\" style=\"width:0%;\"><\/div>\n<\/div>\n<\/div>\n<\/div>\n<div class=\"tm-article-poll__stats\">        \u041f\u0440\u043e\u0433\u043e\u043b\u043e\u0441\u043e\u0432\u0430\u043b 1 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c.          \u0412\u043e\u0437\u0434\u0435\u0440\u0436\u0430\u0432\u0448\u0438\u0445\u0441\u044f \u043d\u0435\u0442.      <\/div>\n<\/div>\n<p> \u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b \u0441\u0442\u0430\u0442\u044c\u0438 <a href=\"https:\/\/habr.com\/ru\/post\/695284\/\"> https:\/\/habr.com\/ru\/post\/695284\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<div><\/div>\n<div id=\"post-content-body\">\n<div>\n<div class=\"article-formatted-body article-formatted-body article-formatted-body_version-2\">\n<div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\">\n<figure class=\"full-width\"><figcaption><\/figcaption><\/figure>\n<p>\u042d\u0442\u0430 \u0441\u0442\u0430\u0442\u044c\u044f \u0434\u043e\u0432\u043e\u043b\u044c\u043d\u043e \u0434\u043e\u043b\u0433\u043e \u043d\u0435 \u043c\u043e\u0433\u043b\u0430 \u0443\u0432\u0438\u0434\u0435\u0442\u044c \u0441\u0432\u0435\u0442, \u043f\u043e \u0440\u044f\u0434\u0443 \u043f\u0440\u0438\u0447\u0438\u043d, \u043e\u0442 \u043f\u0440\u043e\u0431\u043b\u0435\u043c \u0441\u043e \u0437\u0434\u043e\u0440\u043e\u0432\u044c\u0435\u043c \u043f\u043e\u0441\u043b\u0435 COVID (\u044f \u043e\u0442\u0443\u043f\u0435\u043b), \u0434\u043e \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0438\u044f \u0432\u0440\u0435\u043c\u0435\u043d\u0438. \u0412\u0440\u0435\u043c\u044f \u0448\u043b\u043e, \u0438\u043c\u043f\u043e\u0440\u0442\u043e\u0437\u0430\u043c\u0435\u0449\u0435\u043d\u0438\u0435 \u043d\u0430\u0431\u0438\u0440\u0430\u043b\u043e \u043e\u0431\u043e\u0440\u043e\u0442\u044b, \u043f\u0438\u043b\u043e\u0442\u044b \u0441\u0442\u0430\u043d\u043e\u0432\u0438\u043b\u0438\u0441\u044c \u043f\u0440\u043e\u0434\u0430\u043a\u0448-\u0441\u0440\u0435\u0434\u0430\u043c\u0438, \u0438 \u0432\u0441\u0435 <s>\u043a\u0430\u0442\u0438\u043b\u043e\u0441\u044c \u043f\u043e\u0434 \u043e\u0442\u043a\u043e\u0441<\/s> \u0448\u043b\u043e \u043a \u0441\u0432\u0435\u0442\u043b\u043e\u043c\u0443 \u0431\u0443\u0434\u0443\u0449\u0435\u043c\u0443.<\/p>\n<p>\u041a\u0430\u043a\u043e\u0435-\u0442\u043e \u0432\u0440\u0435\u043c\u044f \u043d\u0430\u0437\u0430\u0434 \u043c\u044b \u0441 \u043a\u043e\u043c\u0430\u043d\u0434\u043e\u0439 \u0442\u043e\u0436\u0435 \u043f\u0440\u0438\u0441\u0442\u0443\u043f\u0438\u043b\u0438 \u043a \u043f\u0438\u043b\u043e\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044e \u043c\u0438\u0433\u0440\u0430\u0446\u0438\u0438 \u043d\u0430 \u00ab\u043e\u0442\u0435\u0447\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0435\u00bb \u041f\u041e. \u0418 \u0432\u043e\u0442, \u0447\u0442\u043e \u0438\u0437 \u044d\u0442\u043e\u0433\u043e \u0432\u044b\u0448\u043b\u043e.<\/p>\n<p>\u041d\u0430\u0447\u0430\u043b\u043e\u0441\u044c \u0432\u0441\u0435 \u0441 \u0440\u0430\u0437\u0433\u043e\u0432\u043e\u0440\u043e\u0432. \u0410 \u043a\u0443\u0434\u0430 \u0431\u0435\u0437 \u043d\u0438\u0445?<\/p>\n<p>\u0421 \u0447\u0435\u0433\u043e \u043d\u0430\u0447\u0438\u043d\u0430\u0435\u0442\u0441\u044f \u043c\u0438\u0433\u0440\u0430\u0446\u0438\u044f? \u0421 \u0432\u044b\u0431\u043e\u0440\u0430 \u041f\u041e? \u041d\u0435\u0442, \u0441 \u043f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0438 \u0430\u043d\u0430\u043b\u0438\u0437\u0430.<\/p>\n<p><em>    &#8212; \u0427\u0435\u0433\u043e \u043c\u044b \u0445\u043e\u0442\u0438\u043c \u0434\u043e\u0441\u0442\u0438\u0447\u044c?<\/em><\/p>\n<p><em>    &#8212; \u0417\u0430\u043c\u0435\u0441\u0442\u0438\u0442\u044c \u0438\u043c\u043f\u043e\u0440\u0442\u043d\u044b\u0435 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u044b\u0435 \u043f\u0440\u043e\u0434\u0443\u043a\u0442\u044b \u043e\u0442\u0435\u0447\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u043c\u0438 \u0430\u043d\u0430\u043b\u043e\u0433\u0430\u043c\u0438.<\/em><\/p>\n<p><em>    &#8212; \u041f\u043e\u043b\u043d\u043e\u0441\u0442\u044c\u044e?<\/em><\/p>\n<p><em>    &#8212; \u0414\u0430.<\/em><\/p>\n<p><em>    &#8212; \u0410 \u0435\u0441\u043b\u0438 \u0430\u043d\u0430\u043b\u043e\u0433\u043e\u0432 \u043d\u0435\u0442?<\/em><\/p>\n<p><em>    &#8212; \u0422\u043e\u0433\u0434\u0430 \u0432 \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u043c \u043e\u0431\u044a\u0435\u043c\u0435.<\/em><\/p>\n<p>\u0418 \u0442\u0443\u0442 \u0443 \u043d\u0430\u0441 \u0432\u0441\u0442\u0430\u043b\u0430 \u0434\u0438\u043b\u0435\u043c\u043c\u0430. \u041f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u0438 \u041a\u043e\u043c\u043f\u0430\u043d\u0438\u0438 \u0432 \u0440\u0430\u0431\u043e\u0442\u0435 \u043f\u043e\u043c\u0438\u043c\u043e \u043f\u0440\u043e\u0447\u0435\u0433\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u044e\u0442 CAD \u0438 PLM \u0441\u043e\u0444\u0442, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u0440\u043e\u0441\u0442\u043e \u043d\u0435 \u0443\u043c\u0435\u0435\u0442 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u043d\u0430 Linux. \u0412\u0435\u0440\u043d\u0435\u0435, \u0443\u043c\u0435\u0435\u0442, \u043d\u043e \u0447\u0435\u0440\u0435\u0437 \u043a\u043e\u0441\u0442\u044b\u043b\u0438 wine\u2019\u0430, \u0447\u0442\u043e \u0432\u044b\u0437\u044b\u0432\u0430\u0435\u0442 \u043d\u0435\u0434\u043e\u0432\u043e\u043b\u044c\u0441\u0442\u0432\u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439 \u0432 \u043f\u043b\u0430\u043d\u0435 \u0431\u044b\u0441\u0442\u0440\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f. \u0422\u0430\u043a \u0436\u0435 \u043c\u044b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c VDI Horizon, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0443\u043c\u0435\u0435\u0442 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0442\u043e\u043b\u044c\u043a\u043e \u0441 AD. \u0410 \u0430\u043d\u0430\u043b\u043e\u0433\u043e\u0432 \u0443 Horizon \u043d\u0435\u0442. \u0418 \u043d\u0435 \u0433\u043e\u0432\u043e\u0440\u0438\u0442\u0435 \u043f\u0440\u043e \u0432\u0441\u044f\u043a\u0438\u0435 \u0442\u0430\u043c \u043d\u0430\u0434\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0434\u043b\u044f ProxMox \u0438 \u0432\u043e\u0442 \u044d\u0442\u043e \u0432\u043e\u0442 \u0432\u0441\u0435. \u041d\u0438 \u043e\u0434\u043d\u0430 \u0438\u0437 \u0434\u0440\u0443\u0433\u0438\u0445 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0445 VDI-\u0441\u0438\u0441\u0442\u0435\u043c \u043d\u0435 \u0443\u043c\u0435\u0435\u0442 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0441 Instant Clones. \u041c\u0430\u043a\u0441\u0438\u043c\u0443\u043c, \u0447\u0442\u043e \u043f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u0435\u0442 OpenSource (\u0438 \u0438\u043c\u043f\u043e\u0440\u0442\u043e\u0437\u0430\u043c\u0435\u0449\u0435\u043d\u0438\u0435, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u043e \u043d\u0430 OpenSource) &#8212; \u044d\u0442\u043e Linked Clones. \u0410 \u0443 \u043d\u0430\u0441 \u043d\u0430 IC \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u044b \u043a\u0430\u043a Windows \u043f\u0443\u043b\u044b, \u0442\u0430\u043a \u0438 Linux. \u0418 \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0438\u0440\u043e\u0432\u0430\u0442\u044c VDI-\u0440\u0430\u0431\u043e\u0447\u0438\u0435 \u0441\u0442\u043e\u043b\u044b \u043a\u0430\u043a \u043f\u043e\u043b\u043d\u043e\u0446\u0435\u043d\u043d\u044b\u0435 \u043c\u0430\u0448\u0438\u043d\u044b \u2014 \u044d\u0442\u043e \u0441\u043c\u0435\u0440\u0442\u0438 \u043f\u043e\u0434\u043e\u0431\u043d\u043e, \u0438 \u0441\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c \u0432\u043b\u0430\u0434\u0435\u043d\u0438\u044f \u0432\u044b\u0440\u0430\u0441\u0442\u0430\u0435\u0442 \u0437\u0430 \u0441\u0447\u0435\u0442 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u0438 \u0434\u0435\u0440\u0436\u0430\u0442\u044c \u043e\u0433\u0440\u043e\u043c\u043d\u044b\u0439 \u0448\u0442\u0430\u0442 \u0442\u0435\u0445\u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u0438. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u043c\u044b \u043d\u0435 \u0441\u043c\u043e\u0436\u0435\u043c \u043f\u043e\u043b\u043d\u043e\u0441\u0442\u044c\u044e \u0443\u0439\u0442\u0438 \u043e\u0442 Windows, \u043a\u0430\u043a \u0431\u044b \u043d\u0430\u043c \u044d\u0442\u043e\u0433\u043e \u043d\u0438 \u0445\u043e\u0442\u0435\u043b\u043e\u0441\u044c. \u0418 \u0438\u0437 \u044d\u0442\u043e\u0433\u043e \u0432\u044b\u0442\u0435\u043a\u0430\u0435\u0442 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0435:<\/p>\n<ul>\n<li>\n<p><strong><u>\u041c\u044b \u043d\u0435 \u0441\u043c\u043e\u0436\u0435\u043c \u0443\u0439\u0442\u0438 \u043e\u0442 \u0434\u043e\u043c\u0435\u043d\u0430 \u043d\u0430 \u0431\u0430\u0437\u0435 Windows<\/u><\/strong><\/p>\n<\/li>\n<li>\n<p>\u0414\u043b\u044f \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0435\u043d\u0438\u044f \u0440\u0430\u0431\u043e\u0442\u043e\u0441\u043f\u043e\u0441\u043e\u0431\u043d\u043e\u0441\u0442\u0438 \u0438\u043d\u0444\u0440\u0430\u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u044b \u043d\u0443\u0436\u043d\u044b \u0442\u0430\u043a\u0436\u0435 \u0441\u0435\u0440\u0432\u0438\u0441\u044b DNS, DHCP, WSUS, CA and etc, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043d\u0435\u0442 \u0441\u043c\u044b\u0441\u043b\u0430 (\u0438\u043b\u0438 \u043d\u0435\u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e) \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0438\u0442\u044c \u043d\u0430 Linux.<\/p>\n<\/li>\n<\/ul>\n<p>\u0410 \u0440\u0430\u0437 \u043c\u044b \u043d\u0435 \u0441\u043c\u043e\u0436\u0435\u043c \u043f\u043e\u043b\u043d\u043e\u0441\u0442\u044c\u044e \u0438\u043c\u043f\u043e\u0440\u0442\u043e\u0437\u0430\u043c\u0435\u0441\u0442\u0438\u0442\u044c\u0441\u044f, \u0442\u043e \u0438 \u043f\u0440\u043e\u0435\u043a\u0442 \u043d\u0435 \u0438\u043c\u0435\u0435\u0442 \u043e\u0441\u043e\u0431\u043e\u0433\u043e \u0441\u043c\u044b\u0441\u043b\u0430. \u041d\u0430 \u044d\u0442\u043e\u043c \u043c\u043e\u0436\u043d\u043e \u0431\u044b\u043b\u043e \u0431\u044b \u0438 \u0437\u0430\u043a\u043e\u043d\u0447\u0438\u0442\u044c, \u043d\u043e \u043c\u044b \u0440\u0435\u0448\u0438\u043b\u0438, \u0447\u0442\u043e \u0440\u0430\u0437 \u0443\u0436 \u0438\u043d\u0444\u0440\u0430\u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0443 \u0438\u043c\u043f\u043e\u0440\u0442\u043e\u0437\u0430\u043c\u0435\u0441\u0442\u0438\u0442\u044c \u043d\u0435 \u0432\u044b\u0439\u0434\u0435\u0442 \u2014 \u0437\u0430\u0439\u043c\u0435\u043c\u0441\u044f \u0445\u043e\u0442\u044f \u0431\u044b \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u043e\u0439 \u0441\u0440\u0435\u0434\u043e\u0439. \u0410 \u0441\u043e \u0441\u0442\u043e\u0440\u043e\u043d\u044b \u0438\u043d\u0444\u0440\u044b \u0441\u0434\u0435\u043b\u0430\u0435\u043c \u0432\u0441\u0435, \u0447\u0442\u043e \u0441\u043c\u043e\u0436\u0435\u043c. Zabbix \u043f\u0435\u0440\u0435\u0432\u0435\u0437\u0435\u043c \u043d\u0430 \u043e\u0442\u0435\u0447\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u0443\u044e \u041e\u0421\u044c.. \u0435\u0449\u0435 \u0447\u0435\u0433\u043e-\u043d\u0438\u0431\u0443\u0434\u044c.. \u041f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0430, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043f\u043e\u0447\u0442\u043e\u0432\u043e\u0433\u043e \u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u0437\u0430\u043a\u043b\u044e\u0447\u0430\u0435\u0442\u0441\u044f \u0432 \u0442\u043e\u043c, \u0447\u0442\u043e Exchange \u0443 \u043d\u0430\u0441 \u0435\u0441\u0442\u044c, \u0438 \u043e\u043d \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442.. \u0410 \u0447\u0442\u043e\u0431\u044b \u0435\u0433\u043e \u0437\u0430\u043c\u0435\u043d\u0438\u0442\u044c \u043d\u0430 \u0443\u0441\u043b\u043e\u0432\u043d\u044b\u0439 Communigate Pro \u043d\u0430\u043c \u043d\u0443\u0436\u043d\u043e \u043f\u043e\u0442\u0440\u0430\u0442\u0438\u0442\u044c \u043a\u0443\u0447\u0443 \u0434\u0435\u043d\u0435\u0433. \u0410 \u043a\u0442\u043e \u0436\u0435 \u043b\u044e\u0431\u0438\u0442 \u0442\u0440\u0430\u0442\u0438\u0442\u044c \u0434\u0435\u043d\u044c\u0433\u0438, \u0435\u0441\u043b\u0438 \u0438 \u0442\u0430\u043a \u0432\u0441\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442?.. \u0418 \u0442\u0430\u043a \u0441 \u0431\u043e\u043b\u044c\u0448\u0438\u043d\u0441\u0442\u0432\u043e\u043c \u0440\u0430\u0437\u0432\u0435\u0440\u043d\u0443\u0442\u044b\u0445 \u0432 \u043f\u0440\u043e\u0434\u0435 \u0441\u0438\u0441\u0442\u0435\u043c.<\/p>\n<p>\u041d\u0430 \u0442\u043e\u043c \u0438 \u043f\u043e\u0440\u0435\u0448\u0430\u043b\u0438.<\/p>\n<h2>0. Ansible<\/h2>\n<p>\u041a\u0430\u043a \u043f\u043e\u0434\u043d\u044f\u0442\u044c Ansible \u044f \u043f\u0438\u0441\u0430\u0442\u044c \u043d\u0435 \u0431\u0443\u0434\u0443, \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0438 \u043e\u0431 \u044d\u0442\u043e\u043c \u0432 \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u0430\u0445 \u0431\u043e\u043b\u0435\u0435, \u0447\u0435\u043c \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e, \u043d\u0435 \u0432\u0438\u0436\u0443 \u0441\u043c\u044b\u0441\u043b\u0430 \u0437\u0430\u0433\u0440\u043e\u043c\u043e\u0436\u0434\u0430\u0442\u044c \u0441\u0442\u0430\u0442\u044c\u044e \u043b\u0438\u0448\u043d\u0435\u0439 \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u0435\u0439. \u0413\u043b\u0430\u0432\u043d\u043e\u0435, \u0447\u0442\u043e \u0442\u0430\u043c \u043d\u0443\u0436\u043d\u043e \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u2014 \u044d\u0442\u043e \u0441\u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u0442\u044c ssh-\u043a\u043b\u044e\u0447, \u0441 \u043a\u043e\u0442\u043e\u0440\u044b\u043c Ansible \u0431\u0443\u0434\u0435\u0442 \u0445\u043e\u0434\u0438\u0442\u044c \u043a \u043a\u043b\u0438\u0435\u043d\u0442\u0430\u043c, \u0438 \u043f\u0440\u043e\u0434\u0443\u043c\u0430\u0442\u044c \u0434\u043e\u0441\u0442\u0430\u0432\u043a\u0443 \u044d\u0442\u043e\u0433\u043e \u043a\u043b\u044e\u0447\u0430 \u043d\u0430 \u043a\u043b\u0438\u0435\u043d\u0442\u043e\u0432.<\/p>\n<p>\u0418 \u0435\u0449\u0435 \u043e\u0434\u0438\u043d \u043d\u044e\u0430\u043d\u0441 \u2013 \u0434\u0438\u043d\u0430\u043c\u0438\u0447\u0435\u0441\u043a\u043e\u0435 inventory. \u041a\u043b\u0438\u0435\u043d\u0442\u0441\u043a\u0438\u0435 \u041f\u041a \u2013 \u0434\u0435\u043b\u043e \u043d\u0435\u043f\u043e\u0441\u0442\u043e\u044f\u043d\u043d\u043e\u0435: \u043a\u0442\u043e-\u0442\u043e \u0443\u0432\u043e\u043b\u0438\u043b\u0441\u044f, \u043a\u0442\u043e-\u0442\u043e \u043f\u0440\u0438\u0448\u0435\u043b, \u043a\u0430\u043a\u0438\u0435-\u0442\u043e \u041f\u041a \u0432\u044b\u043a\u043b\u044e\u0447\u0435\u043d\u044b, \u043a\u0430\u043a\u0438\u0435-\u0442\u043e \u0431\u043e\u043b\u044c\u0448\u0435 \u043d\u0435 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0442. \u0418 \u043a\u0430\u043a \u044d\u0442\u043e \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0442\u044c \u0432 \u0430\u043a\u0442\u0443\u0430\u043b\u044c\u043d\u043e\u043c \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0438 \u2013 \u0446\u0435\u043b\u0430\u044f \u0437\u0430\u0434\u0430\u0447\u0430. \u041e\u0441\u043e\u0431\u0435\u043d\u043d\u043e, \u043a\u043e\u0433\u0434\u0430 \u0440\u0435\u0447\u044c \u0438\u0434\u0435\u0442 \u043d\u0435 \u043e \u0434\u0435\u0441\u044f\u0442\u043a\u0430\u0445, \u0438 \u0434\u0430\u0436\u0435 \u043d\u0435 \u043e \u0441\u043e\u0442\u043d\u044f\u0445, \u0430 \u043e \u0442\u044b\u0441\u044f\u0447\u0430\u0445 \u043c\u0430\u0448\u0438\u043d. \u041c\u044b \u043f\u043e\u0448\u043b\u0438 \u043f\u043e \u0431\u043e\u043b\u0435\u0435-\u043c\u0435\u043d\u0435\u0435 \u043f\u0440\u043e\u0441\u0442\u043e\u043c\u0443 \u043f\u0443\u0442\u0438 \u2013 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u043f\u043b\u0430\u0433\u0438\u043d\u0430 <a href=\"https:\/\/docs.ansible.com\/ansible\/latest\/collections\/community\/general\/nmap_inventory.html\" rel=\"noopener noreferrer nofollow\">nmap <\/a>\u0432 \u0441\u0432\u044f\u0437\u043a\u0435 \u0441 \u043f\u043b\u0430\u0433\u0438\u043d\u043e\u043c <a href=\"https:\/\/docs.ansible.com\/ansible\/latest\/collections\/ansible\/builtin\/constructed_inventory.html\" rel=\"noopener noreferrer nofollow\">constructed<\/a> \u0434\u043b\u044f Ansible. \u041f\u0440\u0438 \u0437\u0430\u043f\u0443\u0441\u043a\u0435 \u043e\u043d \u043e\u043f\u0440\u0430\u0448\u0438\u0432\u0430\u0435\u0442 \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u044b\u0435 \u043f\u043e\u0434\u0441\u0435\u0442\u0438 \u0438 \u0444\u043e\u0440\u043c\u0438\u0440\u0443\u0435\u0442 \u0441\u043f\u0438\u0441\u043e\u043a \u0445\u043e\u0441\u0442\u043e\u0432 \u0434\u043b\u044f \u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u043f\u043b\u0435\u0439\u0431\u0443\u043a\u043e\u0432 \u0438\u043b\u0438 \u0440\u043e\u043b\u0435\u0439, \u0430 \u043f\u043e\u0442\u043e\u043c \u0434\u0435\u043b\u0430\u0435\u0442 \u0441\u0432\u043e\u0438 \u0433\u0440\u044f\u0437\u043d\u044b\u0435 \u0434\u0435\u043b\u0438\u0448\u043a\u0438 \u043d\u0430 \u043e\u0442\u043e\u0431\u0440\u0430\u043d\u043d\u044b\u0435 \u043f\u043e \u043f\u0440\u0430\u0432\u0438\u043b\u0430\u043c \u0445\u043e\u0441\u0442\u044b.<\/p>\n<h3>0.1. \u041c\u0443\u043a\u0438 \u0432\u044b\u0431\u043e\u0440\u0430 \u0434\u0438\u0441\u0442\u0440\u0438\u0431\u0443\u0442\u0438\u0432\u0430<\/h3>\n<p>\u0418\u0437 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u043d\u044b\u0445 \u043d\u0430 \u0440\u044b\u043d\u043a\u0435 \u00ab\u043e\u0442\u0435\u0447\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0445\u00bb \u041e\u0421 \u043f\u043e \u0444\u0430\u043a\u0442\u0443 \u0432\u044b\u0431\u043e\u0440-\u0442\u043e \u0438 \u043d\u0435 \u0432\u0435\u043b\u0438\u043a, \u0431\u043b\u0430\u0433\u043e, 99% \u043d\u0430\u0448\u0438\u0445 \u0440\u0430\u0431\u043e\u0447\u0438\u0445 \u043c\u0435\u0441\u0442 \u043d\u0435 \u043d\u0443\u0436\u043d\u043e \u0437\u0430\u043a\u0440\u044b\u0432\u0430\u0442\u044c \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u0446\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u043c\u0438 \u041e\u0421\u044f\u043c\u0438. DEB \u0438\u043b\u0438 RPM, Gentoo-\u043f\u043e\u0434\u043e\u0431\u043d\u044b\u0435 \u043f\u043e\u0434\u0435\u043b\u043a\u0438 \u0434\u043b\u044f \u0446\u0435\u043d\u0442\u0440\u0430\u043b\u0438\u0437\u043e\u0432\u0430\u043d\u043d\u043e\u0433\u043e \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0434\u0430\u0436\u0435 \u043d\u0435 \u0440\u0430\u0441\u0441\u043c\u0430\u0442\u0440\u0438\u0432\u0430\u043b\u0438\u0441\u044c, \u0441\u043f\u0430\u0441\u0438\u0431\u043e. \u0410\u0441\u0442\u0440\u0430\\\u0410\u043b\u044c\u0442\\\u0420\u0435\u0434\u041e\u0421\\ROSA. \u041f\u0440\u043e\u0431\u043b\u0435\u043c\u0430 \u0432 \u0442\u043e\u043c, \u0447\u0442\u043e \u0432\u0441\u0435 \u043e\u043d\u0438 \u043f\u043b\u0430\u0442\u043d\u044b\u0435. \u041d\u043e. \u0423 \u0410\u043b\u044c\u0442\u0430 \u0435\u0441\u0442\u044c \u0444\u043e\u0440\u043a &#8212; <a href=\"https:\/\/www.basealt.ru\/simplylinux\" rel=\"noopener noreferrer nofollow\">Simply Linux<\/a>, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 <a href=\"https:\/\/www.basealt.ru\/about\/news\/archive\/view\/rossiiskaja-os-simply-linux-besplatno-vsem-postradavshim-ot-sankcii\" rel=\"noopener noreferrer nofollow\">\u0431\u0435\u0441\u043f\u043b\u0430\u0442\u0435\u043d \u0434\u043b\u044f \u043a\u043e\u043c\u043c\u0435\u0440\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f<\/a>. \u0414\u0443\u043c\u0430\u044e, \u0434\u0430\u043b\u044c\u0448\u0435 \u043d\u0435 \u0441\u0442\u043e\u0438\u0442 \u043e\u0431\u044a\u044f\u0441\u043d\u044f\u0442\u044c, \u043f\u043e\u0447\u0435\u043c\u0443 \u043c\u044b \u0432\u044b\u0431\u0440\u0430\u043b\u0438 Simply Linux.<\/p>\n<figure class=\"full-width\"><figcaption><\/figcaption><\/figure>\n<p>\u041d\u0438\u0436\u0435 \u0435\u0441\u0442\u044c \u0433\u043b\u0430\u0432\u0430 \u043f\u0440\u043e \u043f\u0440\u0435\u043e\u0431\u0440\u0430\u0437\u043e\u0432\u0430\u043d\u0438\u0435 ISO-\u043e\u0431\u0440\u0430\u0437\u0430.<\/p>\n<h2>1. \u041b\u043e\u043a\u0430\u043b\u044c\u043d\u044b\u0439 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0439<\/h2>\n<p>\u0412 \u043d\u0430\u0448\u0435\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u0432\u0441\u0435 \u0434\u0430\u0436\u0435 \u043f\u0440\u043e\u0449\u0435, \u0447\u0435\u043c \u043e\u0431\u044b\u0447\u043d\u043e. \u0411\u0430\u0437\u0410\u043b\u044c\u0442 \u0441\u0434\u0435\u043b\u0430\u043b \u0432\u0435\u0431-\u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0432 \u043f\u0430\u0440\u0443 \u043a\u043b\u0438\u043a\u043e\u0432 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u043d\u0430\u0441\u0442\u0440\u043e\u0438\u0442\u044c \u0440\u0435\u043f\u043b\u0438\u043a\u0430\u0446\u0438\u044e \u0438\u0445 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u044f (\u0432\u044b\u0431\u0440\u0430\u043d\u043d\u044b\u0445 \u0432\u0435\u0442\u043e\u043a).<\/p>\n<p>\u0412\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u0432\u043e\u0442 \u0442\u0430\u043a:<\/p>\n<figure class=\"full-width\"><figcaption><\/figcaption><\/figure>\n<p>\u0427\u0442\u043e\u0431\u044b \u043f\u043e\u043f\u0430\u0441\u0442\u044c \u043d\u0430 \u044d\u0442\u0443 \u0441\u0442\u0440\u0430\u043d\u0438\u0447\u043a\u0443, \u043d\u0443\u0436\u043d\u043e \u0434\u043e\u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u043f\u0430\u043a\u0435\u0442\u044b <a href=\"https:\/\/www.altlinux.org\/Alterator-ahttpd-server\" rel=\"noopener noreferrer nofollow\">ahttpd<\/a>, alterator-fbi \u0438 <a href=\"https:\/\/www.altlinux.org\/Alterator-mirror\" rel=\"noopener noreferrer nofollow\">alterator-mirror<\/a>, \u0438 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c-\u0430\u043a\u0442\u0438\u0432\u0438\u0440\u043e\u0432\u0430\u0442\u044c ahttpd:<\/p>\n<pre><code class=\"bash\">systemctl start ahttpd systemctl enable ahttpd<\/code><\/pre>\n<p>\u0412 \u0446\u0435\u043b\u043e\u043c \u0432 \u044d\u0442\u043e\u0439 \u0430\u0434\u043c\u0438\u043d\u043a\u0435 \u0434\u043e\u0432\u043e\u043b\u044c\u043d\u043e \u043c\u043d\u043e\u0433\u043e \u0444\u0443\u043d\u043a\u0446\u0438\u0439 \u043f\u043e\u043c\u0438\u043c\u043e \u0437\u0435\u0440\u043a\u0430\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u044f, \u0434\u043e\u0441\u0442\u0443\u043f \u043a \u043a\u043e\u0442\u043e\u0440\u044b\u043c \u043e\u0442\u043a\u0440\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u0441 \u0434\u043e\u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u043e\u0439 \u043d\u0443\u0436\u043d\u044b\u0445 \u043f\u0430\u043a\u0435\u0442\u043e\u0432 \u0430\u043b\u044c\u0442\u0435\u0440\u0430\u0442\u043e\u0440\u0430.<\/p>\n<p>\u0414\u0430\u043b\u044c\u0448\u0435 \u043c\u044b \u0441\u0442\u043e\u043b\u043a\u043d\u0443\u043b\u0438\u0441\u044c \u0441 \u0442\u0435\u043c, \u0447\u0442\u043e \u043d\u0435\u043b\u044c\u0437\u044f \u0432\u044b\u0431\u0440\u0430\u0442\u044c, \u043a\u0443\u0434\u0430 \u0431\u0443\u0434\u0443\u0442 \u0437\u0435\u0440\u043a\u0430\u043b\u0438\u0440\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u043f\u0430\u043a\u0435\u0442\u044b. \u0412 \u0412\u0438\u043a\u0435 \u0410\u043b\u044c\u0442\u0430 \u043f\u0438\u0448\u0443\u0442 \u043f\u0440\u043e \u0442\u043e, \u0447\u0442\u043e \u043d\u0430\u0434\u043e \u043b\u0435\u0437\u0442\u044c \u0432 <code>fstab<\/code>, \u0438 \u0442\u0430\u043c \u043c\u043e\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0436\u0435\u043b\u0430\u0435\u043c\u043e\u0435 \u0440\u0430\u0441\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u043a <code>\/srv\/public\/mirror<\/code>*. \u041d\u043e \u043d\u0430\u043c \u044d\u0442\u043e \u043f\u043e\u043a\u0430\u0437\u0430\u043b\u043e\u0441\u044c \u0441\u0442\u0440\u0430\u043d\u043d\u044b\u043c. \u0412 \u0438\u0442\u043e\u0433\u0435 \u043d\u0430\u0448\u043b\u0438 \u0444\u0430\u0439\u043b\u0438\u043a <code>\/usr\/lib\/alterator\/backend3\/mirror<\/code>, \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u0443\u043a\u0430\u0437\u0430\u043d\u044b \u043f\u0443\u0442\u0438 \u0434\u043b\u044f alterato-mirror. \u041f\u043e\u043c\u0435\u043d\u044f\u043b\u0438 <code>dest_dir=\/repos\/alt_main-repo<\/code> \u0438 \u0432\u0441\u0435 \u043f\u043e\u0435\u0445\u0430\u043b\u043e.<\/p>\n<p>*<sup>(\u0421\u0442\u0430\u0442\u044c\u044e \u0432 \u0412\u0438\u043a\u0435 \u0410\u043b\u044c\u0442\u0430 \u043f\u0440\u0430\u0432\u0438\u043b \u044f \u043f\u043e \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430\u043c \u043d\u0430\u0448\u0438\u0445 \u0438\u0437\u044b\u0441\u043a\u0430\u043d\u0438\u0439)<\/sup><\/p>\n<p>\u0414\u0430\u043b\u044c\u0448\u0435 \u043c\u044b \u043f\u043e\u0434\u0443\u043c\u0430\u043b\u0438 \u043e \u0442\u043e\u043c, \u0447\u0442\u043e \u043d\u0430\u043c \u043d\u0443\u0436\u0435\u043d \u0431\u0443\u0434\u0435\u0442 \u043a\u0430\u0441\u0442\u043e\u043c\u043d\u044b\u0439 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0439, \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043c\u044b \u0431\u0443\u0434\u0435\u043c \u0441\u0432\u0430\u043b\u0438\u0432\u0430\u0442\u044c \u043f\u0430\u043a\u0435\u0442\u044b \u0442\u043e\u0433\u043e \u0436\u0435 \u041a\u0430\u0441\u043f\u0435\u0440\u0430 \u0438 1\u0421.. \u0434\u0430 \u0438 \u043f\u0440\u043e\u0447\u0438\u0435, \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u043d\u0435\u0442 \u0432 \u0440\u0435\u043f\u043e\u0437\u0430\u0445 \u0410\u043b\u044c\u0442\u0430 (Simply). \u0421\u043f\u0438\u0441\u043e\u043a \u0434\u043e\u043f.\u0441\u043e\u0444\u0442\u0430 \u0443 \u043d\u0430\u0441 \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u0441\u044f \u043f\u0440\u0438\u043c\u0435\u0440\u043d\u043e \u0442\u0430\u043a\u043e\u0439:<\/p>\n<ul>\n<li>\n<p>1\u0421 \u0442\u043e\u043b\u0441\u0442\u044b\u0439 \u0438 \u0442\u043e\u043d\u043a\u0438\u0439 \u043a\u043b\u0438\u0435\u043d\u0442<\/p>\n<\/li>\n<li>\n<p>Google Chrome<\/p>\n<\/li>\n<li>\n<p>\u041a\u0430\u0441\u043f\u0435\u0440\u0441\u043a\u0438\u0439 \u0430\u0433\u0435\u043d\u0442 \u0438 \u043a\u043b\u0438\u0435\u043d\u0442<\/p>\n<\/li>\n<li>\n<p>OnlyOffice (\u043d\u0443 \u043d\u0435 Libre \u0436\u0435 \u043e\u0444\u0438\u0441\u043d\u044b\u043c \u0440\u0430\u0431\u043e\u0442\u043d\u0438\u043a\u0430\u043c \u043e\u0442\u0434\u0430\u0432\u0430\u0442\u044c..)<\/p>\n<\/li>\n<li>\n<p>VNC-Viewer<\/p>\n<\/li>\n<li>\n<p>VMWare Horizon Client (\u043f\u0440\u043e \u043d\u0435\u0433\u043e \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u0430\u044f \u0438\u0441\u0442\u043e\u0440\u0438\u044f, \u043a\u0430\u043a Windows-\u0430\u0434\u043c\u0438\u043d (\u044f) \u043f\u044b\u0442\u0430\u043b\u0441\u044f RPM \u0441\u043e\u0431\u0440\u0430\u0442\u044c)<\/p>\n<\/li>\n<\/ul>\n<p>\u0427\u0442\u043e\u0431\u044b \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u043a\u0430\u0441\u0442\u043e\u043c\u043d\u044b\u0439 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0439, \u043d\u0443\u0436\u043d\u043e \u043f\u0440\u043e\u0447\u0438\u0442\u0430\u0442\u044c <a href=\"https:\/\/www.altlinux.org\/APT_%D0%B2_ALT_Linux\/CreateRepository\" rel=\"noopener noreferrer nofollow\">\u044d\u0442\u043e <\/a>\u0438 <a href=\"https:\/\/www.altlinux.org\/APT_%D0%B2_ALT_Linux\/OwnRepo\" rel=\"noopener noreferrer nofollow\">\u044d\u0442\u043e<\/a>, \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u043d\u0443\u0436\u043d\u0443\u044e \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0443 \u043a\u0430\u0442\u0430\u043b\u043e\u0433\u043e\u0432, \u043d\u0430\u043f\u043e\u043b\u043d\u0438\u0442\u044c \u043d\u0443\u0436\u043d\u043e\u0435 \u043c\u0435\u0441\u0442\u043e RPM-\u043f\u0430\u043a\u0435\u0442\u0430\u043c\u0438, \u0441\u043e\u0437\u0434\u0430\u0442\u044c gpg-\u043a\u043b\u044e\u0447, \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u0438 \u043f\u043e\u0434\u043f\u0438\u0441\u0430\u0442\u044c \u0438\u043d\u0434\u0435\u043a\u0441\u044b, \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0439 \u043a\u043b\u0438\u0435\u043d\u0442\u0430\u043c, \u0438 \u043c\u043e\u0436\u043d\u043e \u0440\u0430\u0434\u043e\u0432\u0430\u0442\u044c\u0441\u044f.<\/p>\n<p>\u0412 \u0446\u0435\u043b\u043e\u043c \u2013 \u043d\u0438\u0447\u0435\u0433\u043e \u0441\u043b\u043e\u0436\u043d\u043e\u0433\u043e, \u0435\u0441\u043b\u0438 \u043d\u0435 \u043d\u0430\u043a\u043e\u0441\u044f\u0447\u0438\u0442\u044c \u0441 \u0434\u0435\u0440\u0435\u0432\u043e\u043c \u043a\u0430\u0442\u0430\u043b\u043e\u0433\u043e\u0432, \u043a\u0430\u043a \u044f \u043f\u043e \u043d\u0430\u0447\u0430\u043b\u0443.<\/p>\n<p>\u041f\u043e\u0441\u043b\u0435 \u0437\u0430\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u043a\u0430\u0442\u0430\u043b\u043e\u0433\u0430 \u0441 RPM-\u043f\u0430\u043a\u0435\u0442\u0430\u043c\u0438, \u0432 \u043c\u043e\u0435\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u044d\u0442\u043e <code>\/repos\/alt_custom-repo\/x86_64\/RPMS.alt_custom_repo\/<\/code>, \u043d\u0443\u0436\u043d\u043e \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u0438 \u043f\u043e\u0434\u043f\u0438\u0441\u0430\u0442\u044c \u0438\u043d\u0434\u0435\u043a\u0441\u044b:<\/p>\n<pre><code class=\"bash\">genbasedir --create --progress --sign --default-key=[gpg-key \u0431\u0435\u0437 \u0441\u043a\u043e\u0431\u043e\u043a] --topdir=\/repos\/alt_custom-repo x86_64 alt_custom_repo<\/code><\/pre>\n<p>*<code>genbasedir<\/code> \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043a\u043e\u043c\u0430\u043d\u0434\u043e\u0439 \u0438\u0437 \u043f\u0430\u043a\u0435\u0442\u0430 <code>apt-utils<\/code>.<\/p>\n<p>\u041e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 \u0441\u043b\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u0443 \u043c\u0435\u043d\u044f \u0432\u044b\u0437\u0432\u0430\u043b\u0438 2 \u043f\u0430\u043a\u0435\u0442\u0430 \u2013 OnlyOffice \u0438 VMWare Horizon Client. \u041f\u0435\u0440\u0432\u044b\u0439 \u043d\u0435 \u043c\u043e\u0436\u0435\u0442 \u0443\u0434\u043e\u0432\u043b\u0435\u0442\u0432\u043e\u0440\u0438\u0442\u044c \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438, \u0432\u0442\u043e\u0440\u043e\u0439 \u043f\u0440\u043e\u0441\u0442\u043e \u043d\u0435 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442.<\/p>\n<h3>1.3. \u041f\u0430\u043a\u0435\u0442\u044b<\/h3>\n<p>\u0422\u0443\u0442 \u044f \u0432\u044b\u043d\u0443\u0436\u0434\u0435\u043d \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u043b\u0438\u0440\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u043e\u0442\u0441\u0442\u0443\u043f\u043b\u0435\u043d\u0438\u0435 &#8212; \u044f \u0438 \u043c\u043e\u044f \u043a\u043e\u043c\u0430\u043d\u0434\u0430 &#8212; \u0447\u0438\u0441\u0442\u044b\u0439 SRE, \u043f\u0430\u0440\u043d\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043f\u0440\u043e \u044d\u0442\u0438 \u0432\u0430\u0448\u0438 CI\\CD \u0438 DevOps \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0438 \u0437\u043d\u0430\u044e\u0442 \u0442\u043e\u043b\u044c\u043a\u043e \u0438\u0437 \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u043e\u0432 \u0438 \u0440\u0430\u0437\u0433\u043e\u0432\u043e\u0440\u043e\u0432 \u0441 \u043a\u043e\u043b\u043b\u0435\u0433\u0430\u043c\u0438. \u042d\u0442\u043e \u044f \u043a \u0442\u043e\u043c\u0443, \u0447\u0442\u043e \u043f\u0435\u0440\u0435\u0441\u043e\u0431\u0440\u0430\u0442\u044c RPM-\u043f\u0430\u043a\u0435\u0442 \u0434\u043b\u044f \u0441\u0438\u0441\u0430\u0434\u043c\u0438\u043d\u0430 &#8212; \u044d\u0442\u043e \u0442\u0451\u043c\u043d\u044b\u0439 \u043b\u0435\u0441. \u041d\u043e \u043c\u044b \u043d\u0435 \u043e\u0442\u0441\u0442\u0443\u043f\u0430\u0435\u043c \u043f\u0435\u0440\u0435\u0434 \u0441\u043b\u043e\u0436\u043d\u043e\u0441\u0442\u044f\u043c\u0438. \u0421\u0430\u043c\u043e\u0435 \u0441\u043b\u043e\u0436\u043d\u043e\u0435 \u0431\u044b\u043b\u043e \u0440\u0430\u0437\u043e\u0431\u0440\u0430\u0442\u044c\u0441\u044f \u0432 \u0441\u043a\u0440\u0438\u043f\u043b\u0435\u0442\u0430\u0445 \u0438 \u043d\u0430\u0439\u0442\u0438 \u0438\u043d\u0444\u0443 \u043e \u0442\u043e\u043c, \u0432 \u043a\u0430\u043a\u043e\u0439 \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u043e\u043d\u0438 \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u044e\u0442\u0441\u044f \u043f\u0440\u0438 \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0438 \u043f\u0430\u043a\u0435\u0442\u0430. \u0418 \u0442\u0443\u0442 \u043c\u043d\u0435 \u043f\u043e\u043c\u043e\u0433\u043b\u0430 <a href=\"https:\/\/docs.fedoraproject.org\/en-US\/packaging-guidelines\/\" rel=\"noopener noreferrer nofollow\">\u0432\u043e\u0442 \u044d\u0442\u0430 \u0434\u043e\u043a\u0430<\/a>.<\/p>\n<h4>1.3.1. OnlyOffice<\/h4>\n<p>\u0422\u0443\u0442 \u0432\u0441\u0435 \u043f\u0440\u043e\u0441\u0442\u043e \u2013 \u043f\u0435\u0440\u0435\u0441\u043e\u0431\u0440\u0430\u0442\u044c RPM \u0431\u0435\u0437 \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0445 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0435\u0439. \u041d\u043e \u0441\u0442\u043e\u0438\u0442 \u0441\u0440\u0430\u0437\u0443 \u0443\u0442\u043e\u0447\u043d\u0438\u0442\u044c, \u0447\u0442\u043e \u0410\u043b\u044c\u0442 (Simply) \u043f\u043e \u0434\u0435\u0444\u043e\u043b\u0442\u0443 \u043d\u0435 \u0434\u0430\u0441\u0442 \u0440\u0443\u0442\u0443 \u0441\u043e\u0431\u0440\u0430\u0442\u044c RPM-\u043f\u0430\u043a\u0435\u0442, \u0434\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u043f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u0435\u0442\u0441\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043d\u0435\u043f\u0440\u0438\u0432\u0438\u043b\u0435\u0433\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0433\u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f. \u0414\u0435\u043b\u0430\u0435\u043c:<\/p>\n<pre><code class=\"bash\">cd \/tmp wget https:\/\/download.onlyoffice.com\/install\/desktop\/editors\/linux\/onlyoffice-desktopeditors.x86_64.rpm?_ga=2.238710784.1633530263.1666265796-724860256.1666265796 sudo apt-get install wget wget https:\/\/download.onlyoffice.com\/install\/desktop\/editors\/linux\/onlyoffice-desktopeditors.x86_64.rpm?_ga=2.238710784.1633530263.1666265796-724860256.1666265796 rpmrebuild -enp onlyoffice-desktopeditors.x86_64.rpm\\?_ga\\=2.238710784.1633530263.1666265796-724860256.1666265796 sudo apt-get install rpmrebuild rpmrebuild -enp onlyoffice-desktopeditors.x86_64.rpm\\?_ga\\=2.238710784.1633530263.1666265796-724860256.1666265796<\/code><\/pre>\n<p>=\u042a<\/p>\n<p>\u0418 \u0432 \u043e\u0442\u043a\u0440\u044b\u0432\u0448\u0435\u0439\u0441\u044f \u0441\u043f\u0435\u043a\u0435 \u043a\u043e\u043c\u043c\u0435\u043d\u0442\u0438\u0440\u0443\u0435\u043c \u043f\u0430\u043a\u0435\u0442\u044b, \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u043d\u0435\u0442 \u0432 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u044f\u0445 \u042010. \u041f\u0440\u0438\u0432\u043e\u0434\u0438\u043c \u043a \u0432\u0438\u0434\u0443:<\/p>\n<pre><code class=\"bash\">Requires:      \/bin\/sh Requires:      \/bin\/sh Requires:      \/bin\/sh Requires:      \/bin\/sh Requires:      \/bin\/sh Requires:      atk Requires:      boost-filesystem Requires:      curl #Requires:      dejavu-sans-fonts #Requires:      dejavu-sans-mono-fonts #Requires:      dejavu-serif-fonts Requires:      gtk3 Requires:      libX11 Requires:      libXScrnSaver Requires:      liberation-mono-fonts Requires:      liberation-narrow-fonts Requires:      liberation-sans-fonts Requires:      liberation-serif-fonts Requires:      libstdc++ >= 4.8.0 Requires:      libxcb #Requires:      rpmlib(CompressedFileNames) &lt;= 3.0.4-1 #Requires:      rpmlib(FileDigests) &lt;= 4.6.0-1 #Requires:      rpmlib(PayloadFilesHavePrefix) &lt;= 4.0-1 #Requires:      rpmlib(PayloadIsXz) &lt;= 5.2-1 #Requires:      xcb-util-image #Requires:      xcb-util-keysyms #Requires:      xcb-util-renderutil #Requires:      xcb-util-wm #Requires:      xdg-utils<\/code><\/pre>\n<p>\u0418 \u0441\u043e\u0445\u0440\u0430\u043d\u044f\u0435\u043c. \u041d\u0430 \u0432\u044b\u0445\u043e\u0434\u0435 \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u0442\u0441\u044f RPM-\u043f\u0430\u043a\u0435\u0442 \u0431\u0435\u0437 \u043d\u0435\u0443\u0434\u043e\u0432\u043b\u0435\u0442\u0432\u043e\u0440\u0435\u043d\u043d\u044b\u0445 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0435\u0439. \u0414\u0430, \u0442\u0430\u043a \u0434\u0435\u043b\u0430\u0442\u044c \u043d\u0435\u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e. \u041d\u043e, \u043d\u0430 \u0412\u0438\u043a\u0435 \u0410\u043b\u044c\u0442\u0430 \u0442\u0430\u043a \u0438 \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u043e \u2013 <a href=\"https:\/\/www.altlinux.org\/OnlyOffice\" rel=\"noopener noreferrer nofollow\">\u0438\u0433\u043d\u043e\u0440\u0438\u0440\u0443\u0439 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438<\/a>, \u0438 &#171;\u0441\u043f\u0438\u043d\u0430 \u0431\u043e\u043b\u0435\u0442\u044c \u043d\u0435 \u0431\u0443\u0434\u0435\u0442&#187;.<\/p>\n<p>\u0411\u043e\u043b\u0435\u0435 \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u044b\u043c \u0440\u0435\u0448\u0435\u043d\u0438\u0435\u043c, \u043a\u043e\u043d\u0435\u0447\u043d\u043e \u0436\u0435, \u0431\u044b\u043b\u043e \u0431\u044b \u0441\u043e\u0431\u0440\u0430\u0442\u044c \u043f\u0430\u043a\u0435\u0442 \u0438\u0437 \u0438\u0441\u0445\u043e\u0434\u043d\u0438\u043a\u043e\u0432. \u041d\u043e \u043c\u044b \u0436\u0435 SRE.. \u0418 \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u044d\u0442\u043e \u043c\u044b \u0437\u0430\u043f\u0438\u0441\u0430\u043b\u0438 \u0432 \u043f\u043b\u0430\u043d\u044b. \u041d\u0430 \u043f\u043e\u0442\u043e\u043c.<\/p>\n<h4>1.3.2. VMWare Horizon Client<\/h4>\n<p>\u0421\u043e\u0431\u0440\u0430\u0442\u044c \u0438\u0437 \u0438\u0441\u0445\u043e\u0434\u043d\u0438\u043a\u043e\u0432 \u043f\u0440\u043e\u043f\u0440\u0438\u0435\u0442\u0430\u0440\u043d\u043e\u0435 \u041f\u041e \u043d\u0435 \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u0441\u044f, \u0434\u0430\u0436\u0435 \u0435\u0441\u043b\u0438 \u0432\u044b &#8212; \u043d\u0435 \u044f. Horizon \u043c\u043e\u0436\u043d\u043e \u0441\u043a\u0430\u0447\u0430\u0442\u044c \u0432 \u0432\u0438\u0434\u0435 tarball-\u0430\u0440\u0445\u0438\u0432\u0430 \u0441 \u0431\u0438\u043d\u0430\u0440\u043d\u0438\u043a\u0430\u043c\u0438, \u0438 \u043f\u0438\u0441\u0430\u0442\u044c \u0441\u043f\u0435\u043a\u0443 \u043f\u043e\u0434 \u043d\u0438\u0445. \u041d\u043e \u044f \u043f\u043e\u0448\u0435\u043b \u043f\u043e \u0431\u043e\u043b\u0435\u0435 \u043f\u0440\u043e\u0441\u0442\u043e\u043c\u0443 \u043f\u0443\u0442\u0438. \u042f \u0441\u043a\u0430\u0447\u0430\u043b bundle, \u043d\u0430\u043f\u0438\u0441\u0430\u043b spec-\u0444\u0430\u0439\u043b \u0434\u043b\u044f \u0435\u0433\u043e \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438, \u0438 \u0437\u0430\u043f\u0430\u043a\u043e\u0432\u0430\u043b \u044d\u0442\u043e \u0432\u0441\u0435 \u0432 RPM-\u043f\u0430\u043a\u0435\u0442.<\/p>\n<p>\u0410 \u043f\u043e\u0442\u043e\u043c \u044f \u0440\u0435\u0448\u0438\u043b \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u044d\u0442\u043e \u0434\u0435\u043b\u043e. \u0418 \u043d\u0430\u043f\u0438\u0441\u0430\u043b \u0441\u043a\u0440\u0438\u043f\u0442\u0438\u043a, \u043a\u043e\u0442\u043e\u0440\u044b\u0439, \u043f\u043e\u043b\u0443\u0447\u0430\u044f \u043d\u0430 \u0432\u0445\u043e\u0434 \u0441\u0441\u044b\u043b\u043a\u0443 \u043d\u0430 \u0441\u043a\u0430\u0447\u0438\u0432\u0430\u043d\u0438\u0435 bundle&#8217;\u0430 Horizon Client&#8217;\u0430, \u0441\u043e\u0437\u0434\u0430\u0435\u0442 \u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0443 \u043a\u0430\u0442\u0430\u043b\u043e\u0433\u043e\u0432 \u0434\u043b\u044f \u0441\u0431\u043e\u0440\u043a\u0438, \u043c\u0435\u043d\u044f\u0435\u0442 \u0432 \u0441\u043f\u0435\u043a\u0435 &#171;\u0445\u0445\u0445\u0445\u0445\u0445&#187; \u043d\u0430 &#171;\u0432\u0435\u0440\u0441\u0438\u044e&#187;, \u0438 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u0442 \u0441\u0431\u043e\u0440\u043a\u0443.<\/p>\n<p>Spec-\u0444\u0430\u0439\u043b <a href=\"https:\/\/customerconnect.vmware.com\/en\/downloads\/info\/slug\/desktop_end_user_computing\/vmware_horizon_clients\/horizon_8\" rel=\"noopener noreferrer nofollow\">Horizon Agent <\/a>for Linux \u0432\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u0442\u0430\u043a:<\/p>\n<pre><code class=\"bash\">Name:           vmware-horizon-client Version:        xxxxxx Release:        1 Summary:        custom rpm package vmware-horizon-client  License:        GPL Source0:        %{name}-%{version}.tar.gz  Requires:       bash Requires:       python3-modules-sqlite3 Requires:       python3-modules-curses Requires:       python3-module-pexpect Requires:       python-modules-json Requires:       python-module-pygtk Requires:       python-module-jinja2 Requires:       python-module-yaml Requires:       python-module-distutils-extra  %description VMware Horizon Client for<\/code><\/pre>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-340355","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/340355","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=340355"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/340355\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=340355"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=340355"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=340355"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}