{"id":292893,"date":"2019-08-01T21:00:18","date_gmt":"2019-08-01T21:00:18","guid":{"rendered":"http:\/\/savepearlharbor.com\/?p=292893"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-29T21:00:00","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=292893","title":{"rendered":"KVM (\u043d\u0435\u0434\u043e)VDI \u0441 \u043e\u0434\u043d\u043e\u0440\u0430\u0437\u043e\u0432\u044b\u043c\u0438 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u043c\u0438 \u043c\u0430\u0448\u0438\u043d\u0430\u043c\u0438 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e bash"},"content":{"rendered":"\n<div class=\"post__text post__text-html js-mediator-article\">\n<h4>\u041a\u043e\u043c\u0443 \u043f\u0440\u0435\u0434\u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u0430 \u0434\u0430\u043d\u043d\u0430\u044f \u0441\u0442\u0430\u0442\u044c\u044f<\/h4>\n<p>  \u0414\u0430\u043d\u043d\u0430\u044f \u0441\u0442\u0430\u0442\u044c\u044f \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u0430 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u043c \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440\u0430\u043c, \u043f\u0435\u0440\u0435\u0434 \u043a\u043e\u0442\u043e\u0440\u044b\u043c\u0438 \u0432\u0441\u0442\u0430\u0432\u0430\u043b\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u0441\u0435\u0440\u0432\u0438\u0441 \u00ab\u043e\u0434\u043d\u043e\u0440\u0430\u0437\u043e\u0432\u044b\u0445\u00bb \u0440\u0430\u0431\u043e\u0447\u0438\u0445 \u043c\u0435\u0441\u0442. <\/p>\n<h4>\u041f\u0440\u043e\u043b\u043e\u0433<\/h4>\n<p>  \u0412 \u043e\u0442\u0434\u0435\u043b \u0418\u0422 \u0441\u043e\u043f\u0440\u043e\u0432\u043e\u0436\u0434\u0435\u043d\u0438\u044f \u043c\u043e\u043b\u043e\u0434\u043e\u0439 \u0434\u0438\u043d\u0430\u043c\u0438\u0447\u043d\u043e \u0440\u0430\u0437\u0432\u0438\u0432\u0430\u044e\u0449\u0435\u0439\u0441\u044f \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438 \u0441 \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u043e\u0439 \u0440\u0435\u0433\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e\u0439 \u0441\u0435\u0442\u044c\u044e, \u043e\u0431\u0440\u0430\u0442\u0438\u043b\u0438\u0441\u044c \u0441 \u043f\u0440\u043e\u0441\u044c\u0431\u043e\u0439 \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u00ab\u0441\u0442\u0430\u043d\u0446\u0438\u0438 \u0441\u0430\u043c\u043e\u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u044f\u00bb \u0434\u043b\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0438\u0445 \u0432\u043d\u0435\u0448\u043d\u0438\u043c\u0438 \u043a\u043b\u0438\u0435\u043d\u0442\u0430\u043c\u0438. \u0414\u0430\u043d\u043d\u044b\u0435 \u0441\u0442\u0430\u043d\u0446\u0438\u0438 \u043f\u0440\u0435\u0434\u043f\u043e\u043b\u0430\u0433\u0430\u043b\u043e\u0441\u044c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0434\u043b\u044f \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438 \u043d\u0430 \u0432\u043d\u0435\u0448\u043d\u0438\u0445 \u043f\u043e\u0440\u0442\u0430\u043b\u0430\u0445 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438, \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u0434\u0430\u043d\u043d\u044b\u0445 \u0441 \u0432\u043d\u0435\u0448\u043d\u0438\u0445 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432, \u0440\u0430\u0431\u043e\u0442\u044b \u0441 \u0433\u043e\u0441\u0443\u0434\u0430\u0440\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u043c\u0438 \u043f\u043e\u0440\u0442\u0430\u043b\u0430\u043c\u0438.<\/p>\n<p>  \u0412\u0430\u0436\u043d\u044b\u043c \u0430\u0441\u043f\u0435\u043a\u0442\u043e\u043c \u044f\u0432\u043b\u044f\u043b\u0441\u044f \u0442\u043e\u0442 \u0444\u0430\u043a\u0442, \u0447\u0442\u043e \u0431\u043e\u043b\u044c\u0448\u0430\u044f \u0447\u0430\u0441\u0442\u044c \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e\u0433\u043e \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0435\u043d\u0438\u044f \u00ab\u0437\u0430\u0442\u043e\u0447\u0435\u043d\u0430\u00bb \u043f\u043e\u0434 MS Windows (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u00ab\u0414\u0435\u043a\u043b\u0430\u0440\u0430\u0446\u0438\u044f\u00bb), \u0430 \u043d\u0435\u0441\u043c\u043e\u0442\u0440\u044f \u043d\u0430 \u0434\u0432\u0438\u0436\u0435\u043d\u0438\u0435 \u0432 \u0441\u0442\u043e\u0440\u043e\u043d\u0443 \u043e\u0442\u043a\u0440\u044b\u0442\u044b\u0445 \u0444\u043e\u0440\u043c\u0430\u0442\u043e\u0432, MS Office \u043e\u0441\u0442\u0430\u0435\u0442\u0441\u044f \u0434\u043e\u043c\u0438\u043d\u0438\u0440\u0443\u044e\u0449\u0438\u043c \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043e\u043c \u043f\u0440\u0438 \u043e\u0431\u043c\u0435\u043d\u0435 \u044d\u043b\u0435\u043a\u0442\u0440\u043e\u043d\u043d\u044b\u043c\u0438 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u043c\u0438. \u0422\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c, \u043e\u0442\u043a\u0430\u0437\u0430\u0442\u044c\u0441\u044f \u043e\u0442 MS Windows \u043f\u0440\u0438 \u0440\u0435\u0448\u0435\u043d\u0438\u0438 \u0434\u0430\u043d\u043d\u043e\u0439 \u0437\u0430\u0434\u0430\u0447\u0438 \u043c\u044b \u043d\u0435 \u043c\u043e\u0433\u043b\u0438.<br \/>  <a name=\"habracut\"><\/a><br \/>  \u041e\u0441\u043d\u043e\u0432\u043d\u043e\u0439 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u043e\u0439 \u0432\u0438\u0434\u0435\u043b\u043e\u0441\u044c \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u043d\u0430\u043a\u043e\u043f\u043b\u0435\u043d\u0438\u044f \u0440\u0430\u0437\u043b\u0438\u0447\u043d\u044b\u0445 \u0434\u0430\u043d\u043d\u044b\u0445 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u0438\u0445 \u0441\u0435\u0430\u043d\u0441\u043e\u0432, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043c\u043e\u0433\u043b\u0438 \u0431\u044b \u043f\u0440\u0438\u0432\u0435\u0441\u0442\u0438 \u043a \u0438\u0445 \u0443\u0442\u0435\u0447\u043a\u0435 \u0442\u0440\u0435\u0442\u044c\u0438\u043c \u043b\u0438\u0446\u0430\u043c. <a href=\"https:\/\/www.kommersant.ru\/doc\/3800268\">\u0422\u0430\u043a\u0430\u044f \u0441\u0438\u0442\u0443\u0430\u0446\u0438\u044f \u0443\u0436\u0435 \u043f\u043e\u0434\u0432\u0435\u043b\u0430 \u041c\u0424\u0426<\/a>. \u041d\u043e \u0432 \u043e\u0442\u043b\u0438\u0447\u0438\u0435 \u043e\u0442 \u043a\u0432\u0430\u0437\u0438\u0433\u043e\u0441\u0443\u0434\u0430\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0433\u043e (\u0433\u043e\u0441\u0443\u0434\u0430\u0440\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0435 \u0430\u0432\u0442\u043e\u043d\u043e\u043c\u043d\u043e\u0435 \u0443\u0447\u0440\u0435\u0436\u0434\u0435\u043d\u0438\u0435) \u041c\u0424\u0426, \u0437\u0430 \u043f\u043e\u0434\u043e\u0431\u043d\u044b\u0435 \u043d\u0435\u0434\u043e\u0447\u0435\u0442\u044b \u043d\u0435 \u0433\u043e\u0441\u0443\u0434\u0430\u0440\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0435 \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u0438 \u0431\u0443\u0434\u0443\u0442 \u043d\u0430\u043a\u0430\u0437\u0430\u043d\u044b \u0437\u043d\u0430\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0441\u0438\u043b\u044c\u043d\u0435\u0435. \u0421\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0439 \u043f\u043e \u043a\u0440\u0438\u0442\u0438\u0447\u043d\u043e\u0441\u0442\u0438 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u043e\u0439 \u0431\u044b\u043b\u043e \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u0435 \u0440\u0430\u0431\u043e\u0442\u044b \u0441 \u0432\u043d\u0435\u0448\u043d\u0438\u043c\u0438 \u043d\u043e\u0441\u0438\u0442\u0435\u043b\u044f\u043c\u0438 \u0434\u0430\u043d\u043d\u044b\u0445, \u043d\u0430 \u043a\u043e\u0442\u043e\u0440\u044b\u0445, \u043e\u0434\u043d\u043e\u0437\u043d\u0430\u0447\u043d\u043e, \u0431\u0443\u0434\u0435\u0442 \u043a\u0443\u0447\u0430 \u0437\u043b\u043e\u0432\u0440\u0435\u0434\u043d\u044b\u0445 \u0437\u043b\u043e\u0432\u0440\u0435\u0434\u043e\u0432. \u0412\u0435\u0440\u043e\u044f\u0442\u043d\u043e\u0441\u0442\u044c \u0437\u0430\u043d\u043e\u0441\u0430 \u0437\u043b\u043e\u0432\u0440\u0435\u0434\u043e\u0432 \u0438\u0437 \u0441\u0435\u0442\u0438 \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442, \u0440\u0430\u0441\u0441\u043c\u0430\u0442\u0440\u0438\u0432\u0430\u043b\u0430\u0441\u044c \u043a\u0430\u043a \u043c\u0435\u043d\u0435\u0435 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u0430\u044f, \u0432 \u0441\u0438\u043b\u0443 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u044f \u0432\u044b\u0445\u043e\u0434\u0430 \u0432 \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442 \u043f\u043e \u0431\u0435\u043b\u043e\u043c\u0443 \u0441\u043f\u0438\u0441\u043a\u0443 \u0430\u0434\u0440\u0435\u0441\u043e\u0432.\u041a \u043f\u0440\u043e\u0440\u0430\u0431\u043e\u0442\u043a\u0435 \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u0439 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0438\u043b\u0438\u0441\u044c \u0441\u043e\u0442\u0440\u0443\u0434\u043d\u0438\u043a\u0438 \u0434\u0440\u0443\u0433\u0438\u0445 \u043e\u0442\u0434\u0435\u043b\u043e\u0432, \u0432\u043d\u043e\u0441\u044f \u0441\u0432\u043e\u0438 \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f \u0438 \u043f\u043e\u0436\u0435\u043b\u0430\u043d\u0438\u044f, \u0438\u0442\u043e\u0433\u043e\u0432\u044b\u0435 \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f \u0432\u044b\u0433\u043b\u044f\u0434\u0435\u043b\u0438 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c:<\/p>\n<p>  <b>\u0422\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f \u0418\u0411<\/b><\/p>\n<ul>\n<li>\u041f\u043e\u0441\u043b\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0432\u0441\u0435 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u0438\u0435 \u0434\u0430\u043d\u043d\u044b\u0435 (\u0432\u043a\u043b\u044e\u0447\u0430\u044f \u0432\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435 \u0444\u0430\u0439\u043b\u044b \u0438 \u043a\u043b\u044e\u0447\u0438 \u0440\u0435\u0435\u0441\u0442\u0440\u0430) \u0434\u043e\u043b\u0436\u043d\u044b \u0443\u0434\u0430\u043b\u044f\u0442\u044c\u0441\u044f.<\/li>\n<li>\u0412\u0441\u0435 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u044b, \u0437\u0430\u043f\u0443\u0449\u0435\u043d\u043d\u044b\u0435 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u043c, \u043f\u043e \u043e\u043a\u043e\u043d\u0447\u0430\u043d\u0438\u044e \u0440\u0430\u0431\u043e\u0442\u044b \u0434\u043e\u043b\u0436\u043d\u044b \u0437\u0430\u0432\u0435\u0440\u0448\u0430\u0442\u044c\u0441\u044f.<\/li>\n<li>\u0412\u044b\u0445\u043e\u0434 \u0432 \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442 \u043f\u043e \u0431\u0435\u043b\u043e\u043c\u0443 \u0441\u043f\u0438\u0441\u043a\u0443 \u0430\u0434\u0440\u0435\u0441\u043e\u0432.<\/li>\n<li>\u041e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u044f \u043d\u0430 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u0441\u0442\u043e\u0440\u043e\u043d\u043d\u0435\u0433\u043e \u043a\u043e\u0434\u0430.<\/li>\n<li>\u0412 \u0441\u043b\u0443\u0447\u0430\u0435 \u043f\u0440\u043e\u0441\u0442\u043e\u044f \u0441\u0435\u0430\u043d\u0441\u0430 \u0431\u043e\u043b\u0435\u0435 5 \u043c\u0438\u043d\u0443\u0442, \u0441\u0435\u0430\u043d\u0441 \u0434\u043e\u043b\u0436\u0435\u043d \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0437\u0430\u0432\u0435\u0440\u0448\u0430\u0442\u044c\u0441\u044f, \u0441\u0442\u0430\u043d\u0446\u0438\u044f \u0434\u043e\u043b\u0436\u043d\u0430 \u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0441\u0442\u0438 \u043e\u0447\u0438\u0441\u0442\u043a\u0443.<\/li>\n<\/ul>\n<p>  <b>\u0422\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f \u0437\u0430\u043a\u0430\u0437\u0447\u0438\u043a\u0430<\/b><\/p>\n<ul>\n<li>\u041a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u043a\u043b\u0438\u0435\u043d\u0442\u0441\u043a\u0438\u0445 \u0441\u0442\u0430\u043d\u0446\u0438\u0439 \u043d\u0430 \u0444\u0438\u043b\u0438\u0430\u043b \u2013 \u043d\u0435 \u0431\u043e\u043b\u0435\u0435 4-\u0445.<\/li>\n<li>\u041c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u043e\u0435 \u0432\u0440\u0435\u043c\u044f \u043e\u0436\u0438\u0434\u0430\u043d\u0438\u044f \u0433\u043e\u0442\u043e\u0432\u043d\u043e\u0441\u0442\u0438 \u0441\u0438\u0441\u0442\u0435\u043c\u044b, \u043e\u0442 \u043c\u043e\u043c\u0435\u043d\u0442\u0430 \u00ab\u0441\u0435\u043b \u0437\u0430 \u0441\u0442\u0443\u043b\u00bb \u0434\u043e \u043d\u0430\u0447\u0430\u043b\u0430 \u0440\u0430\u0431\u043e\u0442\u044b \u0441 \u043a\u043b\u0438\u0435\u043d\u0442\u0441\u043a\u0438\u043c \u041f\u041e.<\/li>\n<li>\u0412\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f \u043f\u0435\u0440\u0438\u0444\u0435\u0440\u0438\u0439\u043d\u044b\u0445 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432 (\u0441\u043a\u0430\u043d\u0435\u0440\u044b, \u0444\u043b\u044d\u0448\u043a\u0438) \u043d\u0435\u043f\u043e\u0441\u0440\u0435\u0434\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u0441 \u043c\u0435\u0441\u0442\u0430 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u00ab\u0441\u0442\u0430\u043d\u0446\u0438\u0438 \u0441\u0430\u043c\u043e\u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u044f\u00bb.<\/li>\n<li>\u041f\u043e\u0436\u0435\u043b\u0430\u043d\u0438\u044f \u0437\u0430\u043a\u0430\u0437\u0447\u0438\u043a\u0430<\/li>\n<li>\u0414\u0435\u043c\u043e\u043d\u0441\u0442\u0440\u0430\u0446\u0438\u044f \u0440\u0435\u043a\u043b\u0430\u043c\u043d\u044b\u0445 \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\u043e\u0432 (\u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0438) \u0432 \u043c\u043e\u043c\u0435\u043d\u0442 \u043f\u0440\u043e\u0441\u0442\u043e\u044f \u043a\u043e\u043c\u043f\u043b\u0435\u043a\u0441\u0430.<\/li>\n<\/ul>\n<p><cut\/>  <\/p>\n<h4>\u041c\u0443\u043a\u0438 \u0442\u0432\u043e\u0440\u0447\u0435\u0441\u0442\u0432\u0430<\/h4>\n<p>  \u0412\u0434\u043e\u0432\u043e\u043b\u044c \u043d\u0430\u0438\u0433\u0440\u0430\u0432\u0448\u0438\u0441\u044c \u0441 \u0432\u0438\u043d\u0434\u043e\u0432\u044b\u043c\u0438 livecd, \u043c\u044b \u043f\u0440\u0438\u0448\u043b\u0438 \u043a \u0435\u0434\u0438\u043d\u043e\u0434\u0443\u0448\u043d\u043e\u043c\u0443 \u0432\u044b\u0432\u043e\u0434\u0443, \u0447\u0442\u043e \u043f\u043e\u043b\u0443\u0447\u0430\u044e\u0449\u0435\u0435\u0441\u044f \u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u043d\u0435 \u0443\u0434\u043e\u0432\u043b\u0435\u0442\u0432\u043e\u0440\u044f\u0435\u0442 \u043c\u0438\u043d\u0438\u043c\u0443\u043c 3 \u043a\u0440\u0438\u0442\u0438\u0447\u043d\u044b\u043c \u043f\u0443\u043d\u043a\u0442\u0430\u043c. \u041e\u043d\u0438 \u043b\u0438\u0431\u043e \u0434\u043e\u043b\u0433\u043e \u0433\u0440\u0443\u0437\u044f\u0442\u0441\u044f, \u043b\u0438\u0431\u043e \u043d\u0435 \u0441\u043e\u0432\u0441\u0435\u043c live, \u043b\u0438\u0431\u043e \u043a\u0430\u0441\u0442\u043e\u043c\u0438\u0437\u0430\u0446\u0438\u044f \u0438\u0445 \u0431\u044b\u043b\u0430 \u0441\u043e\u043f\u0440\u044f\u0436\u0435\u043d\u0430 \u0441 \u0434\u0438\u043a\u0438\u043c\u0438 \u0431\u043e\u043b\u044f\u043c\u0438. \u0412\u043e\u0437\u043c\u043e\u0436\u043d\u043e, \u043c\u044b \u043f\u043b\u043e\u0445\u043e \u0438\u0441\u043a\u0430\u043b\u0438, \u0438 \u0432\u044b \u0441\u043c\u043e\u0436\u0435\u0442\u0435 \u043f\u043e\u0441\u043e\u0432\u0435\u0442\u043e\u0432\u0430\u0442\u044c \u043d\u0430\u0431\u043e\u0440 \u043a\u0430\u043a\u043e\u0439-\u0442\u043e \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u043e\u0432, \u0431\u0443\u0434\u0443 \u0431\u043b\u0430\u0433\u043e\u0434\u0430\u0440\u0435\u043d.<\/p>\n<p>  \u0414\u0430\u043b\u044c\u0448\u0435 \u043c\u044b \u0441\u0442\u0430\u043b\u0438 \u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u0432 \u0441\u0442\u043e\u0440\u043e\u043d\u0443 VDI, \u043d\u043e \u0434\u043b\u044f \u044d\u0442\u043e\u0439 \u0437\u0430\u0434\u0430\u0447\u0438 \u0431\u043e\u043b\u044c\u0448\u0438\u043d\u0441\u0442\u0432\u043e \u0440\u0435\u0448\u0435\u043d\u0438\u0439 \u043b\u0438\u0431\u043e \u0441\u043b\u0438\u0448\u043a\u043e\u043c \u0434\u043e\u0440\u043e\u0433\u0438, \u043b\u0438\u0431\u043e \u0442\u0440\u0435\u0431\u0443\u044e\u0442 \u043f\u0440\u0438\u0441\u0442\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u044f. \u0410 \u0445\u043e\u0442\u0435\u043b\u043e\u0441\u044c \u043f\u0440\u043e\u0441\u0442\u043e\u0439 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442, \u0441 \u043c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u044b\u043c \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e\u043c \u043c\u0430\u0433\u0438\u0438, \u0431\u043e\u043b\u044c\u0448\u0438\u043d\u0441\u0442\u0432\u043e \u043f\u0440\u043e\u0431\u043b\u0435\u043c \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u043c\u043e\u0436\u043d\u043e \u0431\u044b\u043b\u043e \u0431\u044b \u0440\u0435\u0448\u0438\u0442\u044c \u043f\u0440\u043e\u0441\u0442\u043e\u0439 \u043f\u0435\u0440\u0435\u0437\u0430\u0433\u0440\u0443\u0437\u043a\u043e\u0439\/\u043f\u0435\u0440\u0435\u0437\u0430\u043f\u0443\u0441\u043a\u043e\u043c \u0441\u0435\u0440\u0432\u0438\u0441\u0430. \u041a \u0441\u0447\u0430\u0441\u0442\u044c\u044e, \u0443 \u043d\u0430\u0441 \u0431\u044b\u043b\u043e \u0441\u0435\u0440\u0432\u0435\u0440\u043d\u043e\u0435 \u043e\u0431\u043e\u0440\u0443\u0434\u043e\u0432\u0430\u043d\u0438\u0435, low end \u043a\u043b\u0430\u0441\u0441\u0430 \u0432 \u0444\u0438\u043b\u0438\u0430\u043b\u0430\u0445, \u043e\u0442 \u0432\u044b\u0432\u043e\u0434\u044f\u0449\u0435\u0433\u043e\u0441\u044f \u0438\u0437 \u044d\u043a\u0441\u043f\u043b\u0443\u0430\u0442\u0430\u0446\u0438\u0438 \u0441\u0435\u0440\u0432\u0438\u0441\u0430, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u043c\u044b \u043c\u043e\u0433\u043b\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0434\u043b\u044f \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u0431\u0430\u0437\u044b.<\/p>\n<p>  \u0427\u0442\u043e \u0432 \u0438\u0442\u043e\u0433\u0435 \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u043e\u0441\u044c? \u0410 \u0432\u043e\u0442, \u0447\u0442\u043e \u0432 \u0438\u0442\u043e\u0433\u0435 \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u043e\u0441\u044c, \u044f \u0432\u0430\u043c \u0440\u0430\u0441\u0441\u043a\u0430\u0437\u0430\u0442\u044c \u043d\u0435 \u0441\u043c\u043e\u0433\u0443, \u0438\u0431\u043e NDA, \u043d\u043e \u0432 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0435 \u043f\u043e\u0438\u0441\u043a\u043e\u0432 \u043c\u044b \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0430\u043b\u0438 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u0443\u044e \u0441\u0445\u0435\u043c\u0443, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0445\u043e\u0440\u043e\u0448\u043e \u0441\u0435\u0431\u044f \u043f\u043e\u043a\u0430\u0437\u0430\u043b\u0430 \u0432 \u043b\u0430\u0431\u043e\u0440\u0430\u0442\u043e\u0440\u043d\u044b\u0445 \u0438\u0441\u043f\u044b\u0442\u0430\u043d\u0438\u044f\u0445, \u0445\u043e\u0442\u044c \u0438 \u043d\u0435 \u043f\u043e\u0448\u043b\u0430 \u0432 \u0441\u0435\u0440\u0438\u044e. <\/p>\n<p>  \u041d\u0435\u043c\u043d\u043e\u0433\u043e \u0434\u0438\u0441\u043a\u043b\u0430\u0439\u043c\u0435\u0440\u043e\u0432: \u0430\u0432\u0442\u043e\u0440 \u043d\u0435 \u043f\u0440\u0435\u0442\u0435\u043d\u0434\u0443\u0435\u0442 \u043d\u0430 \u0442\u043e, \u0447\u0442\u043e \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d\u043d\u043e\u0435 \u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u043f\u043e\u043b\u043d\u043e\u0441\u0442\u044c\u044e \u0440\u0435\u0448\u0430\u0435\u0442 \u0432\u0441\u0435 \u043f\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u043d\u044b\u0435 \u0437\u0430\u0434\u0430\u0447\u0438 \u0438 \u0434\u0435\u043b\u0430\u0435\u0442 \u044d\u0442\u043e \u0434\u043e\u0431\u0440\u043e\u0432\u043e\u043b\u044c\u043d\u043e \u0438 \u0441 \u043f\u0435\u0441\u043d\u0435\u0439. \u0410\u0432\u0442\u043e\u0440 \u0437\u0430\u0440\u0430\u043d\u0435\u0435 \u0441\u043e\u0433\u043b\u0430\u0441\u0435\u043d \u0441 \u0443\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u0438\u0435\u043c, \u0447\u0442\u043e Sein Englishe sprache is zehr schlecht. \u0422\u0430\u043a \u043a\u0430\u043a \u0440\u0435\u0448\u0435\u043d\u0438\u0435 \u0431\u043e\u043b\u0435\u0435 \u043d\u0435 \u0440\u0430\u0437\u0432\u0438\u0432\u0430\u0435\u0442\u0441\u044f, \u043d\u0430 bug fix \u0438\u043b\u0438 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b\u0430 \u0440\u0430\u0441\u0441\u0447\u0438\u0442\u044b\u0432\u0430\u0442\u044c \u043d\u0435 \u043f\u0440\u0438\u0445\u043e\u0434\u0438\u0442\u0441\u044f, \u0432\u0441\u0451 \u0432 \u0432\u0430\u0448\u0438\u0445 \u0440\u0443\u043a\u0430\u0445. \u0410\u0432\u0442\u043e\u0440 \u043f\u0440\u0435\u0434\u043f\u043e\u043b\u0430\u0433\u0430\u0435\u0442, \u0447\u0442\u043e \u0432\u044b \u0445\u043e\u0442\u044c \u043d\u0435\u043c\u043d\u043e\u0433\u043e \u0437\u043d\u0430\u043a\u043e\u043c\u044b \u0441 KVM \u0438 \u0447\u0438\u0442\u0430\u043b\u0438 \u043e\u0431\u0437\u043e\u0440\u043d\u0443\u044e \u0441\u0442\u0430\u0442\u044c\u044e \u043f\u043e Spice \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b\u0443 \u043d\u0443 \u0438 \u043d\u0435\u043c\u043d\u043e\u0433\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u043b\u0438 \u0441 Centos \u0438\u043b\u0438 \u0438\u043d\u044b\u043c GNU Linux \u0434\u0438\u0441\u0442\u0440\u0438\u0431\u0443\u0442\u0438\u0432\u043e\u043c.<\/p>\n<p>  \u0412 \u044d\u0442\u043e\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u044f \u0445\u043e\u0442\u0435\u043b \u0431\u044b \u0440\u0430\u0437\u043e\u0431\u0440\u0430\u0442\u044c \u043a\u043e\u0441\u0442\u044f\u043a \u043f\u043e\u043b\u0443\u0447\u0438\u0432\u0448\u0435\u0433\u043e\u0441\u044f \u0440\u0435\u0448\u0435\u043d\u0438\u044f, \u0430 \u0438\u043c\u0435\u043d\u043d\u043e \u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435 \u043a\u043b\u0438\u0435\u043d\u0442\u0430 \u0438 \u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u0438 \u0441\u0443\u0442\u044c \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0432 \u043f\u043e \u0436\u0438\u0437\u043d\u0435\u043d\u043d\u043e\u043c\u0443 \u0446\u0438\u043a\u043b\u0443 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0445 \u043c\u0430\u0448\u0438\u043d \u0432 \u0440\u0430\u043c\u043a\u0430\u0445 \u0440\u0430\u0441\u0441\u043c\u0430\u0442\u0440\u0438\u0432\u0430\u0435\u043c\u043e\u0433\u043e \u0440\u0435\u0448\u0435\u043d\u0438\u044f. \u0415\u0441\u043b\u0438 \u0441\u0442\u0430\u0442\u044c\u044f \u043e\u043a\u0430\u0436\u0435\u0442\u0441\u044f \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u0430 \u043f\u0443\u0431\u043b\u0438\u043a\u0435, \u044f \u043e\u043f\u0438\u0448\u0443 \u0434\u0435\u0442\u0430\u043b\u0438 \u0440\u0435\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 live \u043e\u0431\u0440\u0430\u0437\u043e\u0432 \u0434\u043b\u044f \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u0442\u043e\u043d\u043a\u0438\u0445 \u043a\u043b\u0438\u0435\u043d\u0442\u043e\u0432 \u043d\u0430 \u0431\u0430\u0437\u0435 Fedora \u0438 \u0440\u0430\u0441\u0441\u043a\u0430\u0436\u0443 \u043e \u0434\u0435\u0442\u0430\u043b\u044f\u0445 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0445 \u043c\u0430\u0448\u0438\u043d \u0438 KVM \u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u0434\u043b\u044f \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0430\u0446\u0438\u0438 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u0438 \u0437\u0430\u0449\u0438\u0449\u0435\u043d\u043d\u043e\u0441\u0442\u0438.<\/p>\n<p>  \u0415\u0441\u043b\u0438 \u0432\u0437\u044f\u0442\u044c \u0446\u0432\u0435\u0442\u043d\u043e\u0439 \u0431\u0443\u043c\u0430\u0433\u0438,<br \/>  \u041a\u0440\u0430\u0441\u043a\u0438, \u043a\u0438\u0441\u0442\u043e\u0447\u043a\u0438 \u0438 \u043a\u043b\u0435\u0439,<br \/>  \u0418 \u0435\u0449\u0435 \u0447\u0443\u0442\u044c-\u0447\u0443\u0442\u044c \u0441\u043d\u043e\u0440\u043e\u0432\u043a\u0438\u2026<br \/>  \u041c\u043e\u0436\u043d\u043e \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0441\u0442\u043e \u0440\u0443\u0431\u043b\u0435\u0439!<\/p>\n<h4>\u0421\u0445\u0435\u043c\u0430 \u0438 \u043e\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u0442\u0435\u0441\u0442\u043e\u0432\u043e\u0433\u043e \u0441\u0442\u0435\u043d\u0434\u0430<\/h4>\n<p>  <img decoding=\"async\" src=\"https:\/\/habrastorage.org\/webt\/pu\/tu\/rk\/puturkaiwqcpbp4wld7ezdk_lcw.png\"\/><\/p>\n<p>  \u0412\u0441\u0435 \u043e\u0431\u043e\u0440\u0443\u0434\u043e\u0432\u0430\u043d\u0438\u0435 \u0440\u0430\u0441\u043f\u043e\u043b\u0430\u0433\u0430\u0435\u0442\u0441\u044f \u0432\u043d\u0443\u0442\u0440\u0438 \u0441\u0435\u0442\u0438 \u0444\u0438\u043b\u0438\u0430\u043b\u0430, \u043d\u0430\u0440\u0443\u0436\u0443 \u0432\u044b\u0445\u043e\u0434\u0438\u0442 \u0442\u043e\u043b\u044c\u043a\u043e \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442 \u043a\u0430\u043d\u0430\u043b. \u041f\u0440\u043e\u043a\u0441\u0438 \u0441\u0435\u0440\u0432\u0435\u0440 \u0438\u0441\u0442\u043e\u0440\u0438\u0447\u0435\u0441\u043a\u0438 \u0443\u0436\u0435 \u0431\u044b\u043b, \u043d\u0438\u0447\u0435\u0433\u043e \u044d\u043a\u0441\u0442\u0440\u0430\u043e\u0440\u0434\u0438\u043d\u0430\u0440\u043d\u043e\u0433\u043e \u043e\u043d \u0438\u0437 \u0441\u0435\u0431\u044f \u043d\u0435 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442. \u041d\u043e \u0438\u043c\u0435\u043d\u043d\u043e \u043d\u0430 \u043d\u0435\u043c, \u0432 \u0447\u0438\u0441\u043b\u0435 \u043f\u0440\u043e\u0447\u0435\u0433\u043e, \u0431\u0443\u0434\u0435\u0442 \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442\u044c \u0444\u0438\u043b\u044c\u0442\u0440\u0430\u0446\u0438\u044f \u0442\u0440\u0430\u0444\u0444\u0438\u043a\u0430 \u043e\u0442 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0445 \u043c\u0430\u0448\u0438\u043d (\u0441\u043e\u043a\u0440. \u0412\u041c \u0434\u0430\u043b\u0435\u0435 \u0432 \u0442\u0435\u043a\u0441\u0442\u0435). \u041d\u0438\u0447\u0435\u0433\u043e \u043d\u0435 \u043c\u0435\u0448\u0430\u0435\u0442 \u0440\u0430\u0437\u043c\u0435\u0441\u0442\u0438\u0442\u044c \u044d\u0442\u043e\u0442 \u0441\u0435\u0440\u0432\u0438\u0441 \u043d\u0430 KVM \u0441\u0435\u0440\u0432\u0435\u0440\u0435, \u0435\u0434\u0438\u043d\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0435, \u0447\u0442\u043e \u043d\u0430\u0434\u043e \u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u043a\u0430\u043a \u0438\u0437\u043c\u0435\u043d\u0438\u0442\u0441\u044f \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u043e\u0442 \u043d\u0435\u0433\u043e \u043d\u0430 \u0434\u0438\u0441\u043a\u043e\u0432\u0443\u044e \u043f\u043e\u0434\u0441\u0438\u0441\u0442\u0435\u043c\u0443. <\/p>\n<p>  Client Station \u2013 \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u043e, \u00ab\u0441\u0442\u0430\u043d\u0446\u0438\u0438 \u0441\u0430\u043c\u043e\u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u044f\u00bb, \u00ab\u0444\u0440\u043e\u043d\u0442\u0435\u043d\u0434\u00bb \u043d\u0430\u0448\u0435\u0433\u043e \u0441\u0435\u0440\u0432\u0438\u0441\u0430. \u041f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u044e\u0442 \u0438\u0437 \u0441\u0435\u0431\u044f \u043d\u0435\u0442\u0442\u043e\u043f\u044b Lenovo IdeaCentre. \u0427\u0435\u043c \u0445\u043e\u0440\u043e\u0448 \u044d\u0442\u043e\u0442 \u0430\u0433\u0440\u0435\u0433\u0430\u0442? \u0414\u0430 \u043f\u043e\u0447\u0442\u0438 \u0432\u0441\u0435\u043c, \u043e\u0441\u043e\u0431\u0435\u043d\u043d\u043e \u0440\u0430\u0434\u0443\u0435\u0442 \u0431\u043e\u043b\u044c\u0448\u043e\u0435 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e USB \u0440\u0430\u0437\u044a\u0435\u043c\u043e\u0432 \u0438 \u043a\u0430\u0440\u0434\u0440\u0438\u0434\u0435\u0440 \u043d\u0430 \u043b\u0438\u0446\u0435\u0432\u043e\u0439 \u043f\u0430\u043d\u0435\u043b\u0438. \u0412 \u043d\u0430\u0448\u0435\u0439 \u0441\u0445\u0435\u043c\u0435 \u0432 \u043a\u0430\u0440\u0434\u0440\u0438\u0434\u0435\u0440 \u0432\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0430 SD \u043a\u0430\u0440\u0442\u0430 \u0441 \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u043d\u043e\u0439 \u0430\u043f\u043f\u0430\u0440\u0430\u0442\u043d\u043e\u0439 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 \u0437\u0430\u043f\u0438\u0441\u0438, \u043d\u0430 \u043a\u043e\u0442\u043e\u0440\u043e\u044e \u0437\u0430\u043f\u0438\u0441\u0430\u043d \u043c\u043e\u0434\u0438\u0444\u0438\u0446\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0439 live \u043e\u0431\u0440\u0430\u0437 Fedora 28. \u0421\u0430\u043c\u043e \u0441\u043e\u0431\u043e\u0439, \u043a \u043d\u0435\u0442\u0442\u043e\u043f\u0443 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d \u043c\u043e\u043d\u0438\u0442\u043e\u0440, \u043a\u043b\u0430\u0432\u0438\u0430\u0442\u0443\u0440\u0430 \u0438 \u043c\u044b\u0448\u044c.<\/p>\n<p>  Switch \u2013 \u043d\u0438\u0447\u0435\u043c \u043d\u0435 \u043f\u0440\u0438\u043c\u0435\u0447\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u0430\u043f\u043f\u0430\u0440\u0430\u0442\u043d\u044b\u0439 switch \u0432\u0442\u043e\u0440\u043e\u0433\u043e \u0443\u0440\u043e\u0432\u043d\u044f, \u0441\u0442\u043e\u0438\u0442 \u0432 \u0441\u0435\u0440\u0432\u0435\u0440\u043d\u043e\u0439 \u0438 \u043c\u0438\u0433\u0430\u0435\u0442 \u043b\u0430\u043c\u043f\u043e\u0447\u043a\u0430\u043c\u0438. \u041d\u0438 \u043a \u043a\u0430\u043a\u0438\u043c \u0441\u0435\u0442\u044f\u043c, \u043a\u0440\u043e\u043c\u0435 \u0441\u0435\u0442\u0438 \u00ab\u0441\u0442\u0430\u043d\u0446\u0438\u0439 \u0441\u0430\u043c\u043e\u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u044f\u00bb \u043d\u0435 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d.<\/p>\n<p>  KVM_Server \u2013 \u044f\u0434\u0440\u043e \u0441\u0445\u0435\u043c\u044b, \u0432 \u0441\u0442\u0435\u043d\u0434\u043e\u0432\u044b\u0445 \u0438\u0441\u043f\u044b\u0442\u0430\u043d\u0438\u044f\u0445 Core 2 Quad Q9650 \u0441 8 \u0413\u0431 \u043e\u043f\u0435\u0440\u0430\u0442\u0438\u0432\u043d\u043e\u0439 \u043f\u0430\u043c\u044f\u0442\u0438 \u0443\u0432\u0435\u0440\u0435\u043d\u043d\u043e \u0442\u044f\u043d\u0443\u043b \u043d\u0430 \u0441\u0435\u0431\u0435 3 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0445 \u043c\u0430\u0448\u0438\u043d\u044b \u0441 Windows10. \u0414\u0438\u0441\u043a\u043e\u0432\u0430\u044f \u043f\u043e\u0434\u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u2013 adaptec 3405 2 \u0434\u0438\u0441\u043a\u0430 Raid 1 + SSD. \u0412 \u043f\u043e\u043b\u0435\u0432\u044b\u0445 \u0438\u0441\u043f\u044b\u0442\u0430\u043d\u0438\u044f\u0445 Xeon 1220 \u0431\u043e\u043b\u0435\u0435 \u0441\u0435\u0440\u044c\u0435\u0437\u043d\u044b\u0439 LSI 9260 + SSD \u043b\u0435\u0433\u043a\u043e \u0442\u044f\u043d\u0443\u043b\u0438 5-6 \u0412\u041c. \u0421\u0435\u0440\u0432\u0435\u0440\u0430 \u043d\u0430\u043c \u0434\u043e\u0441\u0442\u0430\u043b\u0438\u0441\u044c \u0431\u044b \u043e\u0442 \u0432\u044b\u0431\u044b\u0432\u0448\u0435\u0433\u043e \u0441\u0435\u0440\u0432\u0438\u0441\u0430, \u043a\u0430\u043f\u0438\u0442\u0430\u043b\u044c\u043d\u044b\u0445 \u0437\u0430\u0442\u0440\u0430\u0442 \u0431\u044b\u043b\u043e \u0431\u044b \u043d\u0435 \u043c\u043d\u043e\u0433\u043e. \u041d\u0430 \u044d\u0442\u043e\u043c \u0441\u0435\u0440\u0432\u0435\u0440\u0435(\u0430\u0445) \u0440\u0430\u0437\u0432\u0435\u0440\u043d\u0443\u0442\u0430 \u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 KVM \u0441 \u043f\u0443\u043b\u043e\u043c \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0445 \u043c\u0430\u0448\u0438\u043d pool_Vm.<\/p>\n<p>  Vm \u2014 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u0430\u044f \u043c\u0430\u0448\u0438\u043d\u0430, \u0431\u044d\u043a\u044d\u043d\u0434 \u043d\u0430\u0448\u0435\u0433\u043e \u0441\u0435\u0440\u0432\u0438\u0441\u0430. \u0412 \u043d\u0435\u0439 \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u0440\u0430\u0431\u043e\u0442\u0430 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f.<\/p>\n<p>  Enp5s0 \u2013 \u0441\u0435\u0442\u0435\u0432\u043e\u0439 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u0441\u043c\u043e\u0442\u0440\u044f\u0449\u0438\u0439 \u0432 \u0441\u0442\u043e\u0440\u043e\u043d\u0443 \u0441\u0435\u0442\u0438 \u00ab\u0441\u0442\u0430\u043d\u0446\u0438\u0439 \u0441\u0430\u043c\u043e\u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u044f\u00bb, \u043d\u0430 \u043d\u0435\u043c \u0436\u0438\u0432\u0443\u0442 dhcpd, ntpd, httpd, \u0438 xinetd \u0441\u043b\u0443\u0448\u0430\u0435\u0442 \u00absignal\u00bb \u043f\u043e\u0440\u0442.<\/p>\n<p>  Lo0 \u2013 \u043f\u0441\u0435\u0432\u0434\u043e\u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0439 \u043f\u0435\u0442\u043b\u0438. \u0421\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u044b\u0439.<\/p>\n<p>  Spice_console \u2013 \u041e\u0447\u0435\u043d\u044c \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u0430\u044f \u0432\u0435\u0449\u044c, \u0434\u0435\u043b\u043e \u0432 \u0442\u043e\u043c, \u0447\u0442\u043e \u0432 \u043e\u0442\u043b\u0438\u0447\u0438\u0435 \u043e\u0442 \u043a\u043b\u0430\u0441\u0441\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e RDP, \u043f\u0440\u0438 \u0440\u0430\u0437\u0432\u043e\u0440\u043e\u0442\u0435 \u0441\u0432\u044f\u0437\u043a\u0438 KVM+Spice protocol, \u043f\u043e\u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u0430\u044f \u0441\u0443\u0449\u043d\u043e\u0441\u0442\u044c \u2013 \u043f\u043e\u0440\u0442 \u043a\u043e\u043d\u0441\u043e\u043b\u0438 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u043e\u0439 \u043c\u0430\u0448\u0438\u043d\u044b. \u0424\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438, \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0430\u044f\u0441\u044c \u043d\u0430 \u044d\u0442\u043e\u0442 TCP \u043f\u043e\u0440\u0442, \u043c\u044b \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u043c \u043a\u043e\u043d\u0441\u043e\u043b\u044c Vm, \u0431\u0435\u0437 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u0438 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0430\u0442\u0441\u044f \u043a Vm \u0447\u0435\u0440\u0435\u0437 \u0435\u0451 \u0441\u0435\u0442\u0435\u0432\u043e\u0439 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441. \u0412\u0441\u0451 \u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435 \u0441 Vm \u043f\u043e \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0435 \u0441\u0438\u0433\u043d\u0430\u043b\u0430, \u0441\u0435\u0440\u0432\u0435\u0440 \u0431\u0435\u0440\u0435\u0442 \u043d\u0430 \u0441\u0435\u0431\u044f. \u0411\u043b\u0438\u0436\u0430\u0439\u0448\u0438\u0439 \u0430\u043d\u0430\u043b\u043e\u0433 \u043f\u043e \u0444\u0443\u043d\u043a\u0446\u0438\u0438 \u2013 IPKVM. \u0422.\u0435. \u043d\u0430 \u044d\u0442\u043e\u0442 \u043f\u043e\u0440\u0442 \u043f\u0435\u0440\u0435\u0434\u0430\u0435\u0442\u0441\u044f \u0438\u0437\u043e\u0431\u0440\u0430\u0436\u0435\u043d\u0438\u0435 \u043c\u043e\u043d\u0438\u0442\u043e\u0440\u0430 \u0412\u041c, \u043d\u0430 \u043d\u0435\u0433\u043e \u0436\u0435 \u043f\u0435\u0440\u0435\u0434\u0430\u044e\u0442\u0441\u044f \u0434\u0430\u043d\u043d\u044b\u0435 \u043e \u043f\u0435\u0440\u0435\u043c\u0435\u0449\u0435\u043d\u0438\u0438 \u043c\u044b\u0448\u0438, \u0438 (\u0447\u0442\u043e \u0441\u0430\u043c\u043e\u0435 \u0433\u043b\u0430\u0432\u043d\u043e\u0435) \u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0435 \u0447\u0435\u0440\u0435\u0437 Spice \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0431\u0435\u0441\u0448\u043e\u0432\u043d\u043e \u043f\u0435\u0440\u0435\u043d\u0430\u043f\u0440\u0430\u0432\u043b\u044f\u0442\u044c USB \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430 \u0432 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u0443\u044e \u043c\u0430\u0448\u0438\u043d\u0443, \u0441\u043b\u043e\u0432\u043d\u043e \u044d\u0442\u043e \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u043e \u043a \u0441\u0430\u043c\u043e\u0439 Vm. \u041f\u0440\u043e\u0432\u0435\u0440\u0435\u043d\u043e \u0434\u043b\u044f \u0444\u043b\u044d\u0448 \u043d\u0430\u043a\u043e\u043f\u0438\u0442\u0435\u043b\u0435\u0439, \u0441\u043a\u0430\u043d\u0435\u0440\u043e\u0432, \u0432\u044d\u0431-\u043a\u0430\u043c\u0435\u0440.<\/p>\n<p>  Vnet0, virbr0 \u0438 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0435 \u0441\u0435\u0442\u0435\u0432\u044b\u0435 \u043a\u0430\u0440\u0442\u044b Vm \u043e\u0431\u0440\u0430\u0437\u0443\u044e\u0442 \u0441\u0435\u0442\u044c \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0445 \u043c\u0430\u0448\u0438\u043d. <\/p>\n<h4>\u041a\u0430\u043a \u042d\u0422\u041e \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442<\/h4>\n<p>  \u0421\u043e \u0441\u0442\u043e\u0440\u043e\u043d\u044b Client Station<\/p>\n<p>  \u041a\u043b\u0438\u0435\u043d\u0442\u0441\u043a\u0430\u044f \u0441\u0442\u0430\u043d\u0446\u0438\u044f \u0437\u0430\u0433\u0440\u0443\u0436\u0430\u0435\u0442\u0441\u044f \u0432 \u0433\u0440\u0430\u0444\u0438\u0447\u0435\u0441\u043a\u043e\u043c \u0440\u0435\u0436\u0438\u043c\u0435 \u0441 \u043c\u043e\u0434\u0438\u0444\u0438\u0446\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u0433\u043e live \u043e\u0431\u0440\u0430\u0437\u0430 Fedora 28, \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u0442 ip \u0430\u0434\u0440\u0435\u0441 \u043f\u043e dhcp \u0438\u0437 \u0430\u0434\u0440\u0435\u0441\u043d\u043e\u0433\u043e \u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432\u0430 \u0441\u0435\u0442\u0438 169.254.24.0. \u0412 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0435 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u0441\u043e\u0437\u0434\u0430\u044e\u0442\u0441\u044f \u043f\u0440\u0430\u0432\u0438\u043b\u0430 \u0444\u0430\u0439\u0435\u0440\u0432\u043e\u043b\u0430, \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u044e\u0449\u0438\u0435 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u044c \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f \u043a \u00absignal\u00bb \u0438 \u00abspice\u00bb \u043f\u043e\u0440\u0442\u0430\u043c \u0441\u0435\u0440\u0432\u0435\u0440\u0430. \u041f\u043e\u0441\u043b\u0435 \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u044f \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u0441\u0442\u0430\u043d\u0446\u0438\u044f \u0436\u0434\u0435\u0442 \u0430\u0432\u0442\u043e\u0440\u0438\u0437\u0430\u0446\u0438\u0438 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u00abClient\u00bb. \u041f\u043e\u0441\u043b\u0435 \u0430\u0432\u0442\u043e\u0440\u0438\u0437\u0430\u0446\u0438\u0438 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u0437\u0430\u043f\u0443\u0441\u043a \u043c\u0435\u043d\u0435\u0434\u0436\u0435\u0440\u0430 \u0440\u0430\u0431\u043e\u0447\u0438\u0445 \u0441\u0442\u043e\u043b\u043e\u0432 \u00abopenbox\u00bb \u0438 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u0441\u043a\u0440\u0438\u043f\u0442\u0430 \u0430\u0432\u0442\u043e\u0437\u0430\u043f\u0443\u0441\u043a\u0430 autostart \u043e\u0442 \u0438\u043c\u0435\u043d\u0438 \u0430\u0432\u0442\u043e\u0440\u0438\u0437\u043e\u0432\u0430\u0432\u0448\u0435\u0433\u043e\u0441\u044f \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f. \u0421\u0440\u0435\u0434\u0438 \u043f\u0440\u043e\u0447\u0435\u0433\u043e, \u0441\u043a\u0440\u0438\u043f\u0442 \u0430\u0432\u0442\u043e\u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u0442 \u0441\u043a\u0440\u0438\u043f\u0442 remote.sh.<\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">$HOME\/.config\/openbox\/scripts\/remote.sh<\/b><\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"bash\">#!\/bin\/sh  server_ip=$(\/usr\/bin\/cat \/etc\/client.conf |\/usr\/bin\/grep &quot;server_ip&quot; \\ |\/usr\/bin\/cut -d &quot;=&quot; -f2) vdi_signal_port=$(\/usr\/bin\/cat \/etc\/client.conf |\/usr\/bin\/grep &quot;vdi_signal_port&quot; \\  |\/usr\/bin\/cut -d &quot;=&quot; -f2) vdi_spice_port=$(\/usr\/bin\/cat \/etc\/client.conf |\/usr\/bin\/grep &quot;vdi_spice_port&quot; \\ |\/usr\/bin\/cut -d &quot;=&quot; -f2) animation_folder=$(\/usr\/bin\/cat \/etc\/client.conf |\/usr\/bin\/grep &quot;animation_folder&quot; \\ |\/usr\/bin\/cut -d &quot;=&quot; -f2)  process=\/usr\/bin\/remote-viewer  while true do  if [ -z `\/usr\/bin\/pidof feh` ]  then  \/usr\/bin\/echo $animation_folder  \/usr\/bin\/feh -N -x -D1 $animation_folder &  else  \/usr\/bin\/echo  fi \/usr\/bin\/nc -i 1 $server_ip $vdi_signal_port |while read line  do   if \/usr\/bin\/echo &quot;$line&quot; |\/usr\/bin\/grep &quot;RULE ADDED, CONNECT NOW!&quot;   then    \/usr\/bin\/killall feh    pid_process=$($process &quot;spice:\/\/$server_ip:$vdi_spice_port&quot; \\     &quot;--spice-disable-audio&quot; &quot;--spice-disable-effects=animation&quot; \\     &quot;--spice-preferred-compression=auto-glz&quot; &quot;-k&quot; \\    &quot;--kiosk-quit=on-disconnect&quot; | \/bin\/echo $!)    \/usr\/bin\/wait $pid_process    \/usr\/bin\/killall -u $USER    exit   else    \/usr\/bin\/echo $line &gt;&gt; \/var\/log\/remote.log   fi  done done <\/code><\/pre>\n<p>  <\/div>\n<\/div>\n<p>  <\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\/etc\/client.conf<\/b><\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"bash\">server_ip=192.168.101.2 vdi_signal_port=5905 vdi_spice_port=5906 animation_folder=\/usr\/share\/backgrounds\/animation background_folder=\/usr\/share\/backgrounds2\/fedora-workstation <\/code><\/pre>\n<p>  <\/div>\n<\/div>\n<p>  \u0421\u043a\u0440\u0438\u043f\u0442 remote.sh \u0431\u0435\u0440\u0435\u0442 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0438\u0437 \u0444\u0430\u0439\u043b\u0430 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 \/etc\/client.conf \u0438 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442 \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e nc \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 \u043d\u0430 \u00absignal\u00bb \u043f\u043e\u0440\u0442 KVM \u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u0438 \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u0442 \u043f\u043e\u0442\u043e\u043a \u0434\u0430\u043d\u043d\u044b\u0445 \u043e\u0442 \u0441\u0435\u0440\u0432\u0435\u0440\u0430, \u0441\u0440\u0435\u0434\u0438 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u043e\u0436\u0438\u0434\u0430\u0435\u0442 \u0441\u0442\u0440\u043e\u043a\u0438 \u00abRULE ADDED, CONNECT NOW\u00bb. \u041f\u0440\u0438 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u0438\u0438 \u0438\u0441\u043a\u043e\u043c\u043e\u0439 \u0441\u0442\u0440\u043e\u043a\u0438 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u0442\u0441\u044f \u043f\u0440\u043e\u0446\u0435\u0441\u0441 remote-viewer \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 \u043a\u0438\u043e\u0441\u043a\u0430 \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u044f \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 \u043d\u0430 \u00abspice\u00bb \u043f\u043e\u0440\u0442 \u0441\u0435\u0440\u0432\u0435\u0440\u0430. \u0412\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 \u0441\u043a\u0440\u0438\u043f\u0442\u0430 \u043f\u0440\u0438\u043e\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u0434\u043e \u043c\u043e\u043c\u0435\u043d\u0442\u0430 \u043e\u043a\u043e\u043d\u0447\u0430\u043d\u0438\u044f \u0438\u0441\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f remote-viewer-\u0430.<\/p>\n<p>  Remote-viewer \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0430\u044f\u0441\u044c \u043d\u0430 \u00abspice\u00bb \u043f\u043e\u0440\u0442, \u0437\u0430 \u0441\u0447\u0435\u0442 \u0440\u0435\u0434\u0438\u0440\u0435\u043a\u0442\u0430 \u043d\u0430 \u0441\u0442\u043e\u0440\u043e\u043d\u0435 \u0441\u0435\u0440\u0432\u0435\u0440\u0430, \u043f\u043e\u043f\u0430\u0434\u0430\u0435\u0442 \u043d\u0430 \u043f\u043e\u0440\u0442 \u00abspice_console\u00bb \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430 lo0 \u0442.\u0435. \u043d\u0430 \u043a\u043e\u043d\u0441\u043e\u043b\u044c \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u043e\u0439 \u043c\u0430\u0448\u0438\u043d\u044b \u0438 \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442, \u043d\u0435\u043f\u043e\u0441\u0440\u0435\u0434\u0441\u0442\u0432\u0435\u043d\u043d\u043e, \u0440\u0430\u0431\u043e\u0442\u0430 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f. \u0412 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0435 \u043e\u0436\u0438\u0434\u0430\u043d\u0438\u044f \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f, \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044e \u0434\u0435\u043c\u043e\u043d\u0441\u0442\u0440\u0438\u0440\u0443\u0435\u0442\u0441\u044f bullshit animation, \u0432 \u0432\u0438\u0434\u0435 \u0441\u043b\u0430\u0439\u0434-\u0448\u043e\u0443 \u0438\u0437 jpeg \u0444\u0430\u0439\u043b\u043e\u0432, \u043f\u0443\u0442\u044c \u043a \u043a\u0430\u0442\u0430\u043b\u043e\u0433\u0443 \u0441 \u043a\u0430\u0440\u0442\u0438\u043d\u043a\u0430\u043c\u0438 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u0442\u0441\u044f \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435\u043c \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0439 animation_folder \u0438\u0437 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0433\u043e \u0444\u0430\u0439\u043b\u0430. <\/p>\n<p>  \u041f\u0440\u0438 \u043f\u043e\u0442\u0435\u0440\u0435 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f \u0441 \u00abspice_console\u00bb \u043f\u043e\u0440\u0442\u043e\u043c \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u043e\u0439 \u043c\u0430\u0448\u0438\u043d\u044b, \u0441\u0438\u0433\u043d\u0430\u043b\u0438\u0437\u0438\u0440\u0443\u044e\u0449\u0435\u0433\u043e \u043e\u0431 \u0432\u044b\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0438\/\u043f\u0435\u0440\u0435\u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0435 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u043e\u0439 \u043c\u0430\u0448\u0438\u043d\u044b (\u0442.\u0435. \u0444\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u043c \u043e\u043a\u043e\u043d\u0447\u0430\u043d\u0438\u0435\u043c \u0441\u0435\u0441\u0441\u0438\u0438 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f), \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u044f \u0432\u0441\u0435\u0445 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0432, \u0437\u0430\u043f\u0443\u0449\u0435\u043d\u043d\u044b\u0445 \u043e\u0442 \u0438\u043c\u0435\u043d\u0438 \u0430\u0432\u0442\u043e\u0440\u0438\u0437\u043e\u0432\u0430\u0432\u0448\u0435\u0433\u043e\u0441\u044f \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f, \u0447\u0442\u043e \u043f\u0440\u0438\u0432\u043e\u0434\u0438\u0442 \u043a \u043f\u0435\u0440\u0435\u0437\u0430\u043f\u0443\u0441\u043a\u0443 lightdm \u0438 \u0432\u043e\u0437\u0432\u0440\u0430\u0442\u0443 \u043d\u0430 \u044d\u043a\u0440\u0430\u043d \u0430\u0432\u0442\u043e\u0440\u0438\u0437\u0430\u0446\u0438\u0438. <\/p>\n<h4>\u0421\u043e \u0441\u0442\u043e\u0440\u043e\u043d\u044b KVM Server<\/h4>\n<p>  \u041d\u0430 \u00absignal\u00bb \u043f\u043e\u0440\u0442\u0443 \u0441\u0435\u0442\u0435\u0432\u043e\u0439 \u043a\u0430\u0440\u0442\u044b enp5s0 \u0436\u0434\u0435\u0442 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f xinetd. \u041f\u043e\u0441\u043b\u0435 \u043a\u043e\u043d\u043d\u0435\u043a\u0442\u0430 \u043d\u0430 \u00absignal\u00bb \u043f\u043e\u0440\u0442 xinetd \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u0442 \u0441\u043a\u0440\u0438\u043f\u0442 vm_manager.sh \u0431\u0435\u0437 \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0438 \u0435\u043c\u0443 \u043a\u0430\u043a\u0438\u0445-\u043b\u0438\u0431\u043e \u0432\u0432\u043e\u0434\u043d\u044b\u0445 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u043e\u0432 \u0438 \u043f\u0435\u0440\u0435\u043d\u0430\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u0442 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u0441\u043a\u0440\u0438\u043f\u0442\u0430 \u0432 nc \u0441\u0435\u0441\u0441\u0438\u044e Client Station.<\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\/etc\/xinetd.d\/test-server<\/b><\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"bash\">service vdi_signal  { port\t=\t5905 socket_type\t=\tstream protocol\t=\ttcp wait\t=\tno user\t=\troot server\t=\t\/home\/admin\/scripts_vdi_new\/vm_manager.sh } <\/code><\/pre>\n<p>  <\/div>\n<\/div>\n<p>  <\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\/home\/admin\/scripts_vdi_new\/vm_manager.sh<\/b><\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"bash\"> #!\/usr\/bin\/sh  #&lt;SET LOCAL VARIABLES FOR SCRIPT&gt;# SRV_SCRIPTS_DIR=$(\/usr\/bin\/cat \/etc\/vm_manager.conf \\  |\/usr\/bin\/grep &quot;srv_scripts_dir&quot; |\/usr\/bin\/cut -d &quot;=&quot; -f2) \/usr\/bin\/echo &quot;SRV_SCRIPTS_DIR=$SRV_SCRIPTS_DIR&quot; export SRV_SCRIPTS_DIR=$SRV_SCRIPTS_DIR SRV_POOL_SIZE=$(\/usr\/bin\/cat \/etc\/vm_manager.conf \\ |\/usr\/bin\/grep &quot;srv_pool_size&quot; |\/usr\/bin\/cut -d &quot;=&quot; -f2) \/usr\/bin\/echo &quot;SRV_POOL_SIZE=$SRV_POOL_SIZE&quot; export &quot;SRV_POOL_SIZE=$SRV_POOL_SIZE&quot; SRV_START_PORT_POOL=$(\/usr\/bin\/cat \/etc\/vm_manager.conf \\  |\/usr\/bin\/grep &quot;srv_start_port_pool&quot; |\/usr\/bin\/cut -d &quot;=&quot; -f2) \/usr\/bin\/echo SRV_START_PORT_POOL=$SRV_START_PORT_POOL export SRV_START_PORT_POOL=$SRV_START_PORT_POOL SRV_TMP_DIR=$(\/usr\/bin\/cat \/etc\/vm_manager.conf \\ |\/usr\/bin\/grep &quot;srv_tmp_dir&quot; |\/usr\/bin\/cut -d &quot;=&quot; -f2) \/usr\/bin\/echo &quot;SRV_TMP_DIR=$SRV_TMP_DIR&quot; export SRV_TMP_DIR=$SRV_TMP_DIR date=$(\/usr\/bin\/date) #&lt;\/SET LOCAL VARIABLES FOR SCRIPT&gt;#  \/usr\/bin\/echo &quot;# $date START EXECUTE VM_MANAGER.SH #&quot;  make_connect_to_vm() {  #&lt;READING CLEAR.LIST AND CHECK PORT FOR NETWORK STATE&gt;# \/usr\/bin\/echo &quot;READING CLEAN.LIST AND CHECK PORT STATE&quot; #&lt;CHECK FOR NO ONE PORT IN CLEAR.LIST&gt;#  if [ -z `\/usr\/bin\/cat $SRV_TMP_DIR\/clear.list` ] then  \/usr\/bin\/echo &quot;NO AVALIBLE PORTS IN CLEAN.LIST FOUND&quot;  \/usr\/bin\/echo &quot;Will try to make housekeeper, and create new vm&quot;  make_housekeeper else  #&lt;MINIMUN ONE PORT IN CLEAR.LIST FOUND&gt;#   \/usr\/bin\/cat $SRV_TMP_DIR\/clear.list |while read line    do     clear_vm_port=$(($line))     \/bin\/echo &quot;FOUND PORT $clear_vm_port IN CLEAN.LIST. TRY NETSTAT&quot; \\      &quot;CHECK FOR PORT=$clear_vm_port&quot;      #&lt;NETSTAT LISTEN CHECK FOR PORT FROM CLEAN.LIST&gt;#     if \/usr\/bin\/netstat -lnt |\/usr\/bin\/grep &quot;:$clear_vm_port&quot; &gt; \/dev\/null      then      \/bin\/echo &quot;$clear_vm_port IS LISTEN&quot;      #&lt;PORT IS LISTEN. CHECK FOR IS CONNECTED NOW&gt;#      if \/usr\/bin\/netstat -nt |\/usr\/bin\/grep &quot;:$clear_vm_port&quot; \\       |\/usr\/bin\/grep &quot;ESTABLISHED&quot; &gt; \/dev\/null        then #&lt;PORT LISTEN AND ALREADY CONNECTED! MOVE PORT FROM CLEAR.LIST  # TO WASTE.LIST&gt;#        \/bin\/echo &quot;$clear_vm_port IS ALREADY CONNECTED, MOVE PORT TO WASTE.LIST&quot;        \/usr\/bin\/sed -i &quot;\/$clear_vm_port\/d&quot; $SRV_TMP_DIR\/clear.list        \/usr\/bin\/echo $clear_vm_port &gt;&gt; $SRV_TMP_DIR\/waste.list        else #&lt;PORT LISTEN AND NO ONE CONNECT NOW. MOVE PORT FROM CLEAR.LIST TO  # CONN_WAIT.LIST AND CREATE IPTABLES RULES&gt;##        \/usr\/bin\/echo &quot;OK, $clear_vm_port IS NOT ALREADY CONNECTED&quot;        \/usr\/bin\/sed -i &quot;\/$clear_vm_port\/d&quot; $SRV_TMP_DIR\/clear.list        \/usr\/bin\/echo $clear_vm_port &gt;&gt; $SRV_TMP_DIR\/conn_wait.list        $SRV_SCRIPTS_DIR\/vm_connect.sh $clear_vm_port #&lt;TRY TO CLEAN VM IN WASTE.LIST AND CREATE NEW WM&gt;#        \/bin\/echo &quot;TRY TO CLEAN VM IN WASTE.LIST AND CREATE NEW VM&quot;        make_housekeeper        \/usr\/bin\/echo &quot;# $date STOP EXECUTE VM_MANAGER.SH#&quot;        exit        fi      else      #&lt;PORT IS NOT A LISTEN. MOVE PORT FROM CLEAR.LIST TO WASTE.LIST&gt;#      \/bin\/echo &quot; &quot;$clear_vm_port&quot; is NOT LISTEN. REMOVE PORT FROM CLEAR.LIST&quot;      \/usr\/bin\/sed -i &quot;\/$clear_vm_port\/d&quot; $SRV_TMP_DIR\/clear.list      \/usr\/bin\/echo $clear_vm_port &gt;&gt; $SRV_TMP_DIR\/waste.list     make_housekeeper      fi    done fi }  make_housekeeper() { \/usr\/bin\/echo &quot;=Execute housekeeper=&quot; \/usr\/bin\/cat $SRV_TMP_DIR\/waste.list |while read line  do  \/usr\/bin\/echo &quot;$line&quot;  if \/usr\/bin\/netstat -lnt |\/usr\/bin\/grep &quot;:$line&quot; &gt; \/dev\/null   then   \/bin\/echo &quot;port_alive, vm is running&quot;   if \/usr\/bin\/netstat -nt |\/usr\/bin\/grep &quot;:$line&quot; \\     |\/usr\/bin\/grep &quot;ESTABLISHED&quot; &gt; \/dev\/null     then     \/bin\/echo &quot;port_in_use can't delete vm!!!&quot;     else     \/bin\/echo &quot;port_not in use. Deleting vm&quot;     \/usr\/bin\/sed -i &quot;\/$line\/d&quot; $SRV_TMP_DIR\/waste.list     \/usr\/bin\/echo $line &gt;&gt; $SRV_TMP_DIR\/recycle.list     $SRV_SCRIPTS_DIR\/vm_delete.sh $line     fi   else   \/usr\/bin\/echo &quot;posible vm is already off. Deleting vm&quot;   \/usr\/bin\/echo &quot;MOVE VM IN OFF STATE $line FROM WASTE.LIST TO&quot; \\    &quot;RECYCLE.LIST AND DELETE VM&quot;   \/usr\/bin\/sed -i &quot;\/$line\/d&quot; $SRV_TMP_DIR\/waste.list   \/usr\/bin\/echo $line &gt;&gt; $SRV_TMP_DIR\/recycle.list   $SRV_SCRIPTS_DIR\/vm_delete.sh &quot;$line&quot;  fi done create_clear_vm }  create_clear_vm() { \/usr\/bin\/echo &quot;=Create new VM=&quot; while [ $SRV_POOL_SIZE -gt 0 ] do  new_vm_port=$(($SRV_START_PORT_POOL+$SRV_POOL_SIZE))  \/usr\/bin\/echo &quot;new_vm_port=$new_vm_port&quot;  if \/usr\/bin\/grep &quot;$new_vm_port&quot; $SRV_TMP_DIR\/clear.list &gt; \/dev\/null   then   \/usr\/bin\/echo &quot;$new_vm_port port is already defined in clear.list&quot;   else   if \/usr\/bin\/grep &quot;$new_vm_port&quot; $SRV_TMP_DIR\/waste.list &gt; \/dev\/null    then    \/usr\/bin\/echo &quot;$new_vm_port port is already defined in waste.list&quot;    else     if \/usr\/bin\/grep &quot;$new_vm_port&quot; $SRV_TMP_DIR\/recycle.list &gt; \/dev\/null     then     \/usr\/bin\/echo &quot;$new_vm_port PORT IS ALREADY DEFINED IN RECYCLE LIST&quot;     else     if  \/usr\/bin\/grep &quot;$new_vm_port&quot; $SRV_TMP_DIR\/conn_wait.list &gt; \/dev\/null      then      \/usr\/bin\/echo &quot;$new_vm_port PORT IS ALREADY DEFINED IN CONN_WAIT LIST&quot;      else      \/usr\/bin\/echo &quot;PORT IN NOT DEFINED IN NO ONE LIST WILL CREATE&quot; \\      &quot;VM ON PORT $new_vm_port&quot;      \/usr\/bin\/echo $new_vm_port &gt;&gt; $SRV_TMP_DIR\/recycle.list      $SRV_SCRIPTS_DIR\/vm_create.sh $new_vm_port      fi     fi    fi  fi  SRV_POOL_SIZE=$(($SRV_POOL_SIZE-1)) done \/usr\/bin\/echo &quot;# $date STOP EXECUTE VM_MANAGER.SH #&quot; } make_connect_to_vm |\/usr\/bin\/tee -a \/var\/log\/vm_manager.log  <\/code><\/pre>\n<p>  <\/div>\n<\/div>\n<p>  \u0421\u043a\u0440\u0438\u043f\u0442 vm_manager.sh \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442 \u0447\u0442\u0435\u043d\u0438\u0435 \u0444\u0430\u0439\u043b\u0430 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438, \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442 \u043e\u0446\u0435\u043d\u043a\u0443 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0445 \u043c\u0430\u0448\u0438\u043d \u0432 \u043f\u0443\u043b\u0435 \u043f\u043e \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u043c \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0430\u043c, \u0430 \u0438\u043c\u0435\u043d\u043d\u043e: \u0441\u043a\u043e\u043b\u044c\u043a\u043e VM \u0440\u0430\u0437\u0432\u0435\u0440\u043d\u0443\u0442\u043e, \u0435\u0441\u0442\u044c \u043b\u0438 \u0441\u0432\u043e\u0431\u043e\u0434\u043d\u044b\u0435 \u0447\u0438\u0441\u0442\u044b\u0435 VM. \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u043e\u043d \u0447\u0438\u0442\u0430\u0435\u0442 \u0444\u0430\u0439\u043b clear.list \u0432 \u043a\u043e\u0442\u043e\u0440\u043e\u043c \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0442\u0441\u044f \u043d\u043e\u043c\u0435\u0440\u0430 \u00abspice_console\u00bb \u043f\u043e\u0440\u0442\u043e\u0432 \u00ab\u0441\u0432\u0435\u0436\u0435\u0441\u043e\u0437\u0434\u0430\u043d\u043d\u044b\u0445\u00bb (\u0441\u043c. \u043d\u0438\u0436\u0435 \u0446\u0438\u043a\u043b \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u0412.\u041c.) \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0445 \u043c\u0430\u0448\u0438\u043d \u0438 \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0435\u0442 \u043d\u0430\u043b\u0438\u0447\u0438\u0435 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043d\u043e\u0433\u043e \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f \u0441 \u043d\u0438\u043c\u0438. \u041f\u0440\u0438 \u043e\u0431\u043d\u0430\u0440\u0443\u0436\u0435\u043d\u0438\u0438 \u043f\u043e\u0440\u0442\u0430 \u0441 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043d\u044b\u043c \u0441\u0435\u0442\u0435\u0432\u044b\u043c \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435\u043c, (\u0447\u0435\u0433\u043e \u0431\u044b\u0442\u044c \u043a\u0430\u0442\u0435\u0433\u043e\u0440\u0438\u0447\u0435\u0441\u043a\u0438 \u043d\u0435 \u0434\u043e\u043b\u0436\u043d\u043e) \u0432\u044b\u0432\u043e\u0434\u0438\u0442\u0441\u044f \u043f\u0440\u0435\u0434\u0443\u043f\u0440\u0435\u0436\u0434\u0435\u043d\u0438\u0435 \u0438 \u043f\u043e\u0440\u0442 \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0438\u0442\u0441\u044f \u0432 waste.list \u041f\u0440\u0438 \u043e\u0431\u043d\u0430\u0440\u0443\u0436\u0435\u043d\u0438\u0438 \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u043f\u043e\u0440\u0442\u0430 \u0438\u0437 \u0444\u0430\u0439\u043b\u0430 clear.list \u0441 \u043a\u043e\u0442\u043e\u0440\u044b\u043c \u0432 \u043d\u0430\u0441\u0442\u043e\u044f\u0449\u0438\u0439 \u043c\u043e\u043c\u0435\u043d\u0442 \u043d\u0435\u0442 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f vm_manager.sh \u0432\u044b\u0437\u044b\u0432\u0430\u0435\u0442 \u0441\u043a\u0440\u0438\u043f\u0442 vm_connect.sh \u0438 \u043f\u0435\u0440\u0435\u0434\u0430\u0435\u0442 \u0435\u043c\u0443 \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0430 \u043d\u043e\u043c\u0435\u0440 \u044d\u0442\u043e\u0433\u043e \u043f\u043e\u0440\u0442\u0430.<\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\/home\/admin\/scripts_vdi_new\/vm_connect.sh<\/b><\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"bash\">#!\/bin\/sh  date=$(\/usr\/bin\/date)  \/usr\/bin\/echo &quot;#&quot; &quot;$date&quot; &quot;START EXECUTE VM_CONNECT.SH#&quot;  #&lt;SET LOCAL VARIABLES FOR SCRIPT&gt;# free_port=&quot;$1&quot;  input_iface=$(\/usr\/bin\/cat \/etc\/vm_manager.conf |\/usr\/bin\/grep &quot;input_iface&quot; \\ |\/usr\/bin\/cut -d &quot;=&quot; -f2) \/usr\/bin\/echo &quot;input_iface=$input_iface&quot;  vdi_spice_port=$(\/usr\/bin\/cat \/etc\/vm_manager.conf  \\  |\/usr\/bin\/grep &quot;vdi_spice_port&quot; |\/usr\/bin\/cut -d &quot;=&quot; -f2) \/usr\/bin\/echo &quot;vdi_spice_port=$vdi_spice_port&quot;  count_conn_tryes=$(\/usr\/bin\/cat \/etc\/vm_manager.conf \\  |\/usr\/bin\/grep &quot;count_conn_tryes&quot; |\/usr\/bin\/cut -d &quot;=&quot; -f2) \/usr\/bin\/echo &quot;count_conn_tryes=$count_conn_tryes&quot; #&lt;\/SET LOCAL VARIABLES FOR SCRIPT&gt;#  #&lt;CREATE IPTABLES RULES AND SEND SIGNAL TO CONNECT&gt;# \/usr\/bin\/echo &quot;create rule for port&quot; $free_port \/usr\/sbin\/iptables -I INPUT -i $input_iface -p tcp -m tcp --dport \\  $free_port  -j ACCEPT \/usr\/sbin\/iptables -I OUTPUT -o $input_iface -p tcp -m tcp --sport \\ $free_port -j ACCEPT \/usr\/sbin\/iptables -t nat -I PREROUTING -p tcp -i $input_iface --dport \\  $vdi_spice_port -j DNAT --to-destination 127.0.0.1:$free_port \/usr\/bin\/echo &quot;RULE ADDED, CONNECT NOW!&quot; #&lt;\/CREATE IPTABLES RULES AND SEND SIGNAL TO CONNECT&gt;#  #&lt;WAIT CONNECT ESTABLISHED AND ACTIVATE CONNECT TIMER&gt;# while [ $count_conn_tryes -gt 0 ] do if \/usr\/bin\/netstat -nt |\/usr\/bin\/grep &quot;:$free_port&quot; \\  |\/usr\/bin\/grep &quot;ESTABLISHED&quot; &gt; \/dev\/null  then   \/bin\/echo &quot;$free_port NOW in use!!!&quot;   \/usr\/bin\/sleep 1s   \/usr\/sbin\/iptables -t nat -D PREROUTING -p tcp -i $input_iface --dport \\    $vdi_spice_port -j DNAT --to-destination 127.0.0.1:$free_port   \/usr\/sbin\/iptables -D INPUT -i $input_iface -p tcp -m tcp --dport \\    $free_port  -j ACCEPT   \/usr\/sbin\/iptables -D OUTPUT -o $input_iface -p tcp -m tcp --sport \\    $free_port -j ACCEPT   \/usr\/bin\/sed -i &quot;\/$free_port\/d&quot; $SRV_TMP_DIR\/conn_wait.list   \/usr\/bin\/echo $free_port &gt;&gt; $SRV_TMP_DIR\/waste.list   return  else    \/usr\/bin\/echo &quot;$free_port NOT IN USE&quot;    \/usr\/bin\/echo &quot;RULE ADDED, CONNECT NOW!&quot;    \/usr\/bin\/sleep 1s  fi count_conn_tryes=$((count_conn_tryes-1)) done #&lt;\/WAIT CONNECT ESTABLISED AND ACTIVATE CONNECT TIMER&gt;#  #&lt;IF COUNT HAS EXPIRED. REMOVE IPTABLES RULE AND REVERT \\ # VM TO CLEAR.LIST&gt;# \/usr\/bin\/echo &quot;REVERT IPTABLES RULE AND REVERT VM TO CLEAN \\ LIST $free_port&quot; \/usr\/sbin\/iptables -t nat -D PREROUTING -p tcp -i $input_iface --dport \\ $vdi_spice_port -j DNAT --to-destination 127.0.0.1:$free_port \/usr\/sbin\/iptables -D INPUT -i $input_iface -p tcp -m tcp --dport $free_port \\ -j ACCEPT \/usr\/sbin\/iptables -D OUTPUT -o $input_iface -p tcp -m tcp --sport \\  $free_port -j ACCEPT \/usr\/bin\/sed -i &quot;\/$free_port\/d&quot; $SRV_TMP_DIR\/conn_wait.list \/usr\/bin\/echo $free_port &gt;&gt; $SRV_TMP_DIR\/clear.list #&lt;\/COUNT HAS EXPIRED. REMOVE IPTABLES RULE AND REVERT VM \\ #TO CLEAR.LIST&gt;# \/usr\/bin\/echo &quot;#&quot; &quot;$date&quot; &quot;END EXECUTE VM_CONNECT.SH#&quot;  # Attention! Must Be!  sysctl net.ipv4.conf.all.route_localnet=1  <\/code><\/pre>\n<p>  <\/div>\n<\/div>\n<p>  \u0421\u043a\u0440\u0438\u043f\u0442 vm_connect.sh \u0432\u043d\u043e\u0441\u0438\u0442 \u043f\u0440\u0430\u0432\u0438\u043b\u0430 \u0444\u0430\u0439\u0435\u0440\u0432\u043e\u043b\u043b\u0430 \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u0441\u043e\u0437\u0434\u0430\u044e\u0442 \u0440\u0435\u0434\u0438\u0440\u0435\u043a\u0442 \u00abspice\u00bb \u043f\u043e\u0440\u0442\u0430 \u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430 enp5s0 \u043d\u0430 \u00abspice console port\u00bb VM, \u0440\u0430\u0441\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u043d\u043e\u043c \u043d\u0430 lo0 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0435 \u0441\u0435\u0440\u0432\u0435\u0440\u0430, \u043f\u0435\u0440\u0435\u0434\u0430\u043d\u043d\u044b\u0439 \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0430 \u0437\u0430\u043f\u0443\u0441\u043a\u0430. \u041f\u043e\u0440\u0442 \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0438\u0442\u0441\u044f \u0432 conn_wait.list, VM \u0441\u0447\u0438\u0442\u0430\u0435\u0442\u0441\u044f \u043e\u0436\u0438\u0434\u0430\u044e\u0449\u0435\u0439 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f. \u0412 \u0441\u0435\u0441\u0441\u0438\u044e Client Station \u043d\u0430 \u00absignal\u00bb \u043f\u043e\u0440\u0442\u0443 \u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u043f\u0435\u0440\u0435\u0434\u0430\u0435\u0442\u0441\u044f \u0441\u0442\u0440\u043e\u043a\u0430 \u00abRULE ADDED, CONNECT NOW\u00bb, \u043a\u043e\u0442\u043e\u0440\u0443\u044e \u043e\u0436\u0438\u0434\u0430\u0435\u0442 \u0437\u0430\u043f\u0443\u0449\u0435\u043d\u043d\u044b\u0439 \u043d\u0430 \u043d\u0435\u0439 \u0441\u043a\u0440\u0438\u043f\u0442 remote.sh. \u041d\u0430\u0447\u0438\u043d\u0430\u0435\u0442\u0441\u044f \u0446\u0438\u043a\u043b \u043e\u0436\u0438\u0434\u0430\u043d\u0438\u044f \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f \u0441 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e\u043c \u043f\u043e\u043f\u044b\u0442\u043e\u043a, \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u043c\u044b\u043c \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435\u043c \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0439 \u00abcount_conn_tryes\u00bb \u0438\u0437 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0433\u043e \u0444\u0430\u0439\u043b\u0430. \u041a\u0430\u0436\u0434\u0443\u044e \u0441\u0435\u043a\u0443\u043d\u0434\u0443 \u0432 nc \u0441\u0435\u0441\u0441\u0438\u044e \u0431\u0443\u0434\u0435\u0442 \u043e\u0442\u0434\u0430\u0432\u0430\u0442\u044c\u0441\u044f \u0441\u0442\u0440\u043e\u043a\u0430 \u00abRULE ADDED, CONNECT NOW\u00bb \u0438 \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0442\u044c\u0441\u044f \u043d\u0430\u043b\u0438\u0447\u0438\u0435 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043d\u043e\u0433\u043e \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f \u0434\u043e \u00abspice_console\u00bb \u043f\u043e\u0440\u0442\u0430.<\/p>\n<p>  \u0415\u0441\u043b\u0438 \u0437\u0430 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043d\u043e\u0435 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u043f\u043e\u043f\u044b\u0442\u043e\u043a, \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f \u043d\u0435 \u043f\u0440\u043e\u0438\u0437\u043e\u0448\u043b\u043e, \u00abspice_console\u00bb \u043f\u043e\u0440\u0442 \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0438\u0442\u0441\u044f \u043e\u0431\u0440\u0430\u0442\u043d\u043e \u0432 clear.list \u0418\u0441\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 vm_connect.sh \u0437\u0430\u0432\u0435\u0440\u0448\u0430\u0435\u0442\u0441\u044f, \u0432\u043e\u0437\u043e\u0431\u043d\u043e\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 vm_manager.sh, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u0442 \u0446\u0438\u043a\u043b \u043e\u0447\u0438\u0441\u0442\u043a\u0438.<\/p>\n<p>  \u0415\u0441\u043b\u0438 \u0444\u0438\u043a\u0441\u0438\u0440\u0443\u0435\u0442\u0441\u044f \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435 Client Station \u043a \u00abspice_console\u00bb \u043f\u043e\u0440\u0442\u0443 \u043d\u0430 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0435 lo0, \u043f\u0440\u0430\u0432\u0438\u043b\u0430 \u0444\u0430\u0439\u0435\u0440\u0432\u043e\u043b\u043b\u0430 \u0441\u043e\u0437\u0434\u0430\u044e\u0449\u0438\u0435 \u0440\u0435\u0434\u0438\u0440\u0435\u043a\u0442 \u043c\u0435\u0436\u0434\u0443 \u00abspice\u00bb \u043f\u043e\u0440\u0442\u043e\u043c \u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u0438 \u00abspice_console\u00bb \u043f\u043e\u0440\u0442\u043e\u043c \u0443\u0434\u0430\u043b\u044f\u044e\u0442\u0441\u044f \u0438 \u0434\u0430\u043b\u044c\u043d\u0435\u0439\u0448\u0435\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0430\u043d\u0438\u0435 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u0437\u0430 \u0441\u0447\u0435\u0442 \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c\u0430 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u044f \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f \u0444\u0430\u0439\u0435\u0440\u0432\u043e\u043b\u043b\u0430. \u0412 \u0441\u043b\u0443\u0447\u0430\u0435 \u0440\u0430\u0437\u0440\u044b\u0432\u0430 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f, \u043f\u043e\u0432\u0442\u043e\u0440\u043d\u043e \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u0441\u0432\u044f\u0437\u044c \u0441 \u00abspice_console\u00bb \u043f\u043e\u0440\u0442\u043e\u043c, \u043d\u0435 \u0443\u0434\u0430\u0441\u0442\u0441\u044f. \u041f\u043e\u0440\u0442 \u00abspice_console\u00bb \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0438\u0442\u0441\u044f \u0432 waste.list, VM \u0441\u0447\u0438\u0442\u0430\u0435\u0442\u0441\u044f \u00ab\u0433\u0440\u044f\u0437\u043d\u043e\u0439\u00bb \u0438 \u0432\u0435\u0440\u043d\u0443\u0442\u044c\u0441\u044f \u0432 \u043f\u0443\u043b \u00ab\u0447\u0438\u0441\u0442\u044b\u0445\u00bb \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0445 \u043c\u0430\u0448\u0438\u043d \u0431\u0435\u0437 \u043f\u0440\u043e\u0445\u043e\u0436\u0434\u0435\u043d\u0438\u044f \u043e\u0447\u0438\u0441\u0442\u043a\u0438 \u043e\u043d\u0430 \u043d\u0435 \u0441\u043c\u043e\u0436\u0435\u0442. \u0418\u0441\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 vm_connect.sh \u0437\u0430\u0432\u0435\u0440\u0448\u0430\u0435\u0442\u0441\u044f, \u0432\u043e\u0437\u043e\u0431\u043d\u043e\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 vm_manager.sh, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u0442 \u0446\u0438\u043a\u043b \u043e\u0447\u0438\u0441\u0442\u043a\u0438.<\/p>\n<p>  \u0426\u0438\u043a\u043b \u043e\u0447\u0438\u0441\u0442\u043a\u0438 \u043d\u0430\u0447\u0438\u043d\u0430\u0435\u0442\u0441\u044f \u0441 \u043f\u0440\u043e\u0441\u043c\u043e\u0442\u0440\u0430 \u0444\u0430\u0439\u043b\u0430 waste.list \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u044f\u0442\u0441\u044f \u043d\u043e\u043c\u0435\u0440\u0430 \u00abspice_console\u00bb \u043f\u043e\u0440\u0442\u043e\u0432 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0445 \u043c\u0430\u0448\u0438\u043d \u043a \u043a\u043e\u0442\u043e\u0440\u044b\u043c \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u043b\u043e\u0441\u044c \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435. \u041e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u0442\u0441\u044f \u043d\u0430\u043b\u0438\u0447\u0438\u0435 \u0430\u043a\u0442\u0438\u0432\u043d\u043e\u0433\u043e \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f \u043d\u0430 \u043a\u0430\u0436\u0434\u043e\u043c \u00abspice_console\u00bb \u043f\u043e\u0440\u0442\u0443 \u0438\u0437 \u0441\u043f\u0438\u0441\u043a\u0430. \u0415\u0441\u043b\u0438 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u0435\u0442, \u0441\u0447\u0438\u0442\u0430\u0435\u0442\u0441\u044f, \u0447\u0442\u043e \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u0430\u044f \u043c\u0430\u0448\u0438\u043d\u0430 \u0431\u043e\u043b\u0435\u0435 \u043d\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u0438 \u043f\u043e\u0440\u0442 \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0438\u0442\u0441\u044f \u0432 recycle.list \u0438 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u0442\u0441\u044f \u043f\u0440\u043e\u0446\u0435\u0441\u0441 \u0443\u0434\u0430\u043b\u0435\u043d\u0438\u044f \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u043e\u0439 \u043c\u0430\u0448\u0438\u043d\u044b(\u0441\u043c. \u043d\u0438\u0436\u0435), \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u043f\u0440\u0438\u043d\u0430\u0434\u043b\u0435\u0436\u0430\u043b \u044d\u0442\u043e\u0442 \u043f\u043e\u0440\u0442. \u0415\u0441\u043b\u0438 \u043e\u0431\u043d\u0430\u0440\u0443\u0436\u0435\u043d\u043e \u0430\u043a\u0442\u0438\u0432\u043d\u043e\u0435 \u0441\u0435\u0442\u0435\u0432\u043e\u0435 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 \u043d\u0430 \u043f\u043e\u0440\u0442\u0443, \u0441\u0447\u0438\u0442\u0430\u0435\u0442\u0441\u044f, \u0447\u0442\u043e \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u0430\u044f \u043c\u0430\u0448\u0438\u043d\u0430 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f, \u043d\u0438\u043a\u0430\u043a\u0438\u0445 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0439 \u0434\u043b\u044f \u043d\u0435\u0435 \u043d\u0435 \u043f\u0440\u0435\u0434\u043f\u0440\u0438\u043d\u0438\u043c\u0430\u0435\u0442\u0441\u044f. \u0415\u0441\u043b\u0438 \u043f\u043e\u0440\u0442 \u043d\u0435 \u043f\u0440\u043e\u0441\u043b\u0443\u0448\u0438\u0432\u0430\u0435\u0442\u0441\u044f, \u0441\u0447\u0438\u0442\u0430\u0435\u0442\u0441\u044f, \u0447\u0442\u043e VM \u0432\u044b\u043a\u043b\u044e\u0447\u0435\u043d\u0430 \u0438 \u0431\u043e\u043b\u0435\u0435 \u043d\u0435 \u043d\u0443\u0436\u043d\u0430. \u041f\u043e\u0440\u0442 \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0438\u0442\u0441\u044f \u0432 recycle.list \u0438 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u0442\u0441\u044f \u043f\u0440\u043e\u0446\u0435\u0441\u0441 \u0443\u0434\u0430\u043b\u0435\u043d\u0438\u044f \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u043e\u0439 \u043c\u0430\u0448\u0438\u043d\u044b. \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0432\u044b\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u0441\u043a\u0440\u0438\u043f\u0442 vm_delete.sh, \u043a\u043e\u0442\u043e\u0440\u043e\u043c\u0443 \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0430 \u043f\u0435\u0440\u0435\u0434\u0430\u0435\u0442\u0441\u044f \u043d\u043e\u043c\u0435\u0440 \u00abspice_console\u00bb \u043f\u043e\u0440\u0442\u0443 VM, \u043a\u043e\u0442\u043e\u0440\u0443\u044e \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0443\u0434\u0430\u043b\u0438\u0442\u044c.<\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\/home\/admin\/scripts_vdi_new\/vm_delete.sh<\/b><\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"bash\"> #!\/bin\/sh  #&lt;Set local VARIABLES&gt;# port_to_delete=&quot;$1&quot; date=$(\/usr\/bin\/date) #&lt;\/Set local VARIABLES&gt;#  \/usr\/bin\/echo &quot;# $date START EXECUTE VM_DELETE.SH#&quot; \/usr\/bin\/echo &quot;TRY DELETE VM ON PORT: $vm_port&quot;  #&lt;VM NAME SETUP&gt;# vm_name_part1=$(\/usr\/bin\/cat \/etc\/vm_manager.conf |\/usr\/bin\/grep 'base_host' \\ |\/usr\/bin\/cut -d'=' -f2) vm_name=$(\/usr\/bin\/echo &quot;$vm_name_part1&quot;&quot;-&quot;&quot;$port_to_delete&quot;) #&lt;\/VM NAME SETUP&gt;#  #&lt;SHUTDOWN AND DELETE VM&gt;# \/usr\/bin\/virsh destroy $vm_name \/usr\/bin\/virsh undefine $vm_name \/usr\/bin\/rm -f \/var\/lib\/libvirt\/images_write\/$vm_name.qcow2 \/usr\/bin\/sed -i &quot;\/$port_to_delete\/d&quot; $SRV_TMP_DIR\/recycle.list #&lt;\/SHUTDOWN AND DELETE VM&gt;#  \/usr\/bin\/echo &quot;VM ON PORT $vm_port HAS BEEN DELETE AND REMOVE&quot; \\  &quot;FROM RECYCLE.LIST. EXIT FROM VM_DELETE.SH&quot; \/usr\/bin\/echo &quot;# $date STOP EXECUTE VM_DELETE.SH#&quot; exit <\/code><\/pre>\n<p>  <\/div>\n<\/div>\n<p>  \u0423\u0434\u0430\u043b\u0435\u043d\u0438\u0435 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u043e\u0439 \u043c\u0430\u0448\u0438\u043d\u044b \u2013 \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0442\u0440\u0438\u0432\u0438\u0430\u043b\u044c\u043d\u0430\u044f \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u044f, \u0441\u043a\u0440\u0438\u043f\u0442 vm_delete.sh \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435 \u0438\u043c\u0435\u043d\u0438 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u043e\u0439 \u043c\u0430\u0448\u0438\u043d\u044b, \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u043f\u0440\u0438\u043d\u0430\u0434\u043b\u0435\u0436\u0438\u0442 \u043f\u043e\u0440\u0442, \u043f\u0435\u0440\u0435\u0434\u0430\u043d\u043d\u044b\u0439 \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0430 \u0437\u0430\u043f\u0443\u0441\u043a\u0430. \u041f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0441\u044f \u043f\u0440\u0438\u043d\u0443\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u043e\u0441\u0442\u0430\u043d\u043e\u0432 VM, \u0443\u0434\u0430\u043b\u0435\u043d\u0438\u0435 VM \u0438\u0437 \u0433\u0438\u043f\u0435\u0440\u0432\u0438\u0437\u043e\u0440\u0430, \u0443\u0434\u0430\u043b\u044f\u0435\u0442\u0441\u044f \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0439 \u0436\u0435\u0441\u0442\u043a\u0438\u0439 \u0434\u0438\u0441\u043a \u0434\u0430\u043d\u043d\u043e\u0439 VM. \u041f\u043e\u0440\u0442 \u00abspice_console\u00bb \u0443\u0434\u0430\u043b\u044f\u0435\u0442\u0441\u044f \u0438\u0437 recycle.list. \u0418\u0441\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 vm_delete.sh \u0437\u0430\u0432\u0435\u0440\u0448\u0430\u0435\u0442\u0441\u044f, \u0432\u043e\u0437\u043e\u0431\u043d\u043e\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0438\u0441\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 vm_manager.sh<\/p>\n<p>  \u0421\u043a\u0440\u0438\u043f\u0442 vm_manager.sh, \u043f\u043e \u043e\u043a\u043e\u043d\u0447\u0430\u043d\u0438\u044e \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0439 \u043f\u043e \u043e\u0447\u0438\u0441\u0442\u043a\u0435 \u043b\u0438\u0448\u043d\u0438\u0445 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0445 \u043c\u0430\u0448\u0438\u043d \u0438\u0437 \u0441\u043f\u0438\u0441\u043a\u0430 waste.list \u043d\u0430\u0447\u0438\u043d\u0430\u0435\u0442 \u0446\u0438\u043a\u043b \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0445 \u043c\u0430\u0448\u0438\u043d \u0432 \u043f\u0443\u043b. <\/p>\n<p>  \u041f\u0440\u043e\u0446\u0435\u0441\u0441 \u043d\u0430\u0447\u0438\u043d\u0430\u0435\u0442\u0441\u044f \u0441 \u0442\u043e\u0433\u043e, \u0447\u0442\u043e \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u0438\u0435 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0445 \u0434\u043b\u044f \u0440\u0430\u0437\u043c\u0435\u0449\u0435\u043d\u0438\u044f \u043f\u043e\u0440\u0442\u043e\u0432 \u00abspice_console\u00bb. \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0438\u0441\u0445\u043e\u0434\u044f \u0438\u0437 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0430 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0433\u043e \u0444\u0430\u0439\u043b\u0430 \u00absrv_start_port_pool\u00bb \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0437\u0430\u0434\u0430\u0435\u0442 \u043d\u0430\u0447\u0430\u043b\u044c\u043d\u044b\u0439 \u043f\u043e\u0440\u0442 \u0434\u043b\u044f \u043f\u0443\u043b\u0430 \u00abspice_console\u00bb \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0445 \u043c\u0430\u0448\u0438\u043d \u0438 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0430 \u00absrv_pool_size\u00bb, \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u044e\u0449\u0435\u0433\u043e \u043f\u0440\u0435\u0434\u0435\u043b\u044c\u043d\u043e\u0435 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0445 \u043c\u0430\u0448\u0438\u043d \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u043f\u0435\u0440\u0435\u0431\u043e\u0440 \u0432\u0441\u0435\u0445 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u044b\u0445 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u043e\u0432 \u043f\u043e\u0440\u0442\u043e\u0432. \u0414\u043b\u044f \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u043e\u0433\u043e \u043f\u043e\u0440\u0442\u0430 \u043f\u0440\u043e\u0438\u0441\u0445\u043e\u0434\u0438\u0442 \u043f\u043e\u0438\u0441\u043a \u0435\u0433\u043e \u0432 clear.list, waste.list, conn_wait.list, recycle.list. \u0415\u0441\u043b\u0438 \u043f\u043e\u0440\u0442 \u043e\u0431\u043d\u0430\u0440\u0443\u0436\u0435\u043d \u0432 \u043b\u044e\u0431\u043e\u043c \u0438\u0437 \u0434\u0430\u043d\u043d\u044b\u0445 \u0444\u0430\u0439\u043b\u043e\u0432, \u043f\u043e\u0440\u0442 \u0441\u0447\u0438\u0442\u0430\u0435\u0442\u0441\u044f \u0437\u0430\u043d\u044f\u0442\u044b\u043c \u0438 \u043f\u0440\u043e\u043f\u0443\u0441\u043a\u0430\u0435\u0442\u0441\u044f. \u0415\u0441\u043b\u0438 \u043f\u043e\u0440\u0442 \u0432 \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u044b\u0445 \u0444\u0430\u0439\u043b\u0430\u0445 \u043d\u0435 \u043e\u0431\u043d\u0430\u0440\u0443\u0436\u0435\u043d, \u043e\u043d \u0432\u043d\u043e\u0441\u0438\u0442\u0441\u044f \u0432 \u0444\u0430\u0439\u043b recycle.list \u0438 \u043d\u0430\u0447\u0438\u043d\u0430\u0435\u0442\u0441\u044f \u043f\u0440\u043e\u0446\u0435\u0441\u0441 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u043d\u043e\u0432\u043e\u0439 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u043e\u0439 \u043c\u0430\u0448\u0438\u043d\u044b. \u0414\u043b\u044f \u044d\u0442\u043e\u0433\u043e \u0432\u044b\u0437\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u0441\u043a\u0440\u0438\u043f\u0442 vm_create.sh \u043a\u043e\u0442\u043e\u0440\u043e\u043c\u0443 \u043f\u0435\u0440\u0435\u0434\u0430\u0435\u0442\u0441\u044f \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0430 \u043d\u043e\u043c\u0435\u0440 \u00abspice_console\u00bb \u043f\u043e\u0440\u0442\u0430 \u0434\u043b\u044f \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0441\u043e\u0437\u0434\u0430\u0442\u044c VM.<\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\/home\/admin\/scripts_vdi_new\/vm_create.sh<\/b><\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"bash\"> #!\/bin\/sh \/usr\/bin\/echo &quot;#&quot; &quot;$date&quot; &quot;START RUNNING VM_CREATE.SH#&quot;  new_vm_port=$1 date=$(\/usr\/bin\/date) a=0 \/usr\/bin\/echo SRV_TMP_DIR=$SRV_TMP_DIR  #&lt;SET LOCAL VARIABLES FOR SCRIPT&gt;# base_host=$(\/usr\/bin\/cat \/etc\/vm_manager.conf |\/usr\/bin\/grep &quot;base_host&quot; \\ |\/usr\/bin\/cut -d &quot;=&quot; -f2) \/usr\/bin\/echo &quot;base_host=$base_host&quot; #&lt;\/SET LOCAL VARIABLES FOR SCRIPT&gt;#  hdd_image_locate() {  \/bin\/echo &quot;Run STEP 1 - hdd_image_locate&quot;  hdd_base_image=$(\/usr\/bin\/virsh dumpxml $base_host \\  |\/usr\/bin\/grep &quot;source file&quot; |\/usr\/bin\/grep &quot;qcow2&quot; |\/usr\/bin\/head -n 1 \\ |\/usr\/bin\/cut -d &quot;'&quot; -f2) if [ -z &quot;$hdd_base_image&quot; ] then  \/bin\/echo &quot;base hdd image not found!&quot; else  \/usr\/bin\/echo &quot;hdd_base_image found is a $hdd_base_image. Run next step 2&quot;  #&lt; CHECK FOR SNAPSHOT ON BASE HDD &gt;#    if [ 0 -eq `\/usr\/bin\/qemu-img info &quot;$hdd_base_image&quot; | \/usr\/bin\/grep -c &quot;Snapshot&quot;` ]   then   \/usr\/bin\/echo &quot;base image haven't snapshot, run NEXT STEP 3&quot;   else   \/usr\/bin\/echo &quot;base hdd image have a snapshot, can't use this image&quot;   exit   fi #&lt;\/ CHECK FOR SNAPSHOT ON BASE HDD &gt;#  #&lt; CHECK FOR HDD IMAGE IS LINK CLONE &gt;#   if [ 0 -eq `\/usr\/bin\/qemu-img info &quot;$hdd_base_image&quot; |\/usr\/bin\/grep -c &quot;backing file&quot;   then   \/usr\/bin\/echo &quot;base image is not a linked clone, NEXT STEP 4&quot;   \/usr\/bin\/echo &quot;Base image check complete!&quot;   else   \/usr\/bin\/echo &quot;base hdd image is a linked clone, can't use this image&quot;   exit   fi fi #&lt;\/ CHECK FOR HDD IMAGE IS LINK CLONE &gt;# cloning     }  cloning() { # &lt;Step_1 turn the base VM off &gt;#  \/usr\/bin\/virsh shutdown $base_host &gt; \/dev\/null 2&gt;&1  # &lt;\/Step_1 turn the base VM off &gt;#  #&lt;Create_vm_config&gt;#  \/usr\/bin\/echo &quot;Free port for Spice VM is $new_vm_port&quot;   #&lt;Setup_name_for_new_VM&gt;# new_vm_name=$(\/bin\/echo $base_host&quot;-&quot;$new_vm_port) #&lt;\/Setup_name_for_new_VM&gt;#  #&lt;Make_base_config_as_clone_base_VM&gt;# \/usr\/bin\/virsh dumpxml $base_host &gt; $SRV_TMP_DIR\/$new_vm_name.xml #&lt;Make_base_config_as_clone_base_VM&gt;#  ##&lt;Setup_New_VM_Name_in_config&gt;## \/usr\/bin\/sed -i &quot;s%&lt;name&gt;$base_host&lt;\/name&gt;%&lt;name&gt;$new_vm_name&lt;\/name&gt;%g&quot; $SRV_TMP_DIR\/$new_vm_name.xml #&lt;\/Setup_New_VM_Name_in_config&gt;#  #&lt;UUID Changing&gt;# old_uuid=$(\/usr\/bin\/cat $SRV_TMP_DIR\/$new_vm_name.xml |\/usr\/bin\/grep &quot;&lt;uuid&gt;&quot;) \/usr\/bin\/echo old UUID $old_uuid new_uuid_part1=$(\/usr\/bin\/echo &quot;$old_uuid&quot; |\/usr\/bin\/cut -d &quot;-&quot; -f 1,2) new_uuid_part2=$(\/usr\/bin\/echo &quot;$old_uuid&quot; |\/usr\/bin\/cut -d &quot;-&quot; -f 4,5) new_uuid=$(\/bin\/echo $new_uuid_part1&quot;-&quot;$new_vm_port&quot;-&quot;$new_uuid_part2) \/usr\/bin\/echo $new_uuid \/usr\/bin\/sed -i &quot;s%$old_uuid%$new_uuid%g&quot; $SRV_TMP_DIR\/$new_vm_name.xml #&lt;\/UUID Changing&gt;#   #&lt;Spice port replace&gt;# old_spice_port=$(\/usr\/bin\/cat  $SRV_TMP_DIR\/$new_vm_name.xml \\  |\/usr\/bin\/grep &quot;graphics type='spice' port=&quot;) \/bin\/echo old spice port $old_spice_port new_spice_port=$(\/usr\/bin\/echo &quot;&lt;graphics type='spice' port='$new_vm_port' autoport='no' listen='127.0.0.1'&gt;&quot;) \/bin\/echo $new_spice_port \/usr\/bin\/sed -i &quot;s%$old_spice_port%$new_spice_port%g&quot; $SRV_TMP_DIR\/$new_vm_name.xml #&lt;\/Spice port replace&gt;#  #&lt;MAC_ADDR_GENERATE&gt;# mac_new=$(\/usr\/bin\/hexdump -n6 -e '\/1 &quot;:%02X&quot;' \/dev\/random|\/usr\/bin\/sed s\/^:\/\/g) \/usr\/bin\/echo New Mac is $mac_new #&lt;\/MAC_ADDR_GENERATE&gt;#  #&lt;GET OLD MAC AND REPLACE&gt;# mac_old=$(\/usr\/bin\/cat $SRV_TMP_DIR\/$new_vm_name.xml |\/usr\/bin\/grep &quot;mac address=&quot;) \/usr\/bin\/echo old mac is $mac_old \/usr\/bin\/sed -i &quot;s%$mac_old%$mac_new%g&quot; $SRV_TMP_DIR\/$new_vm_name.xml #&lt;GET OLD MAC AND REPLACE&gt;#  #&lt;new_disk_create&gt;# \/usr\/bin\/qemu-img create -f qcow2 -b $hdd_base_image \/var\/lib\/libvirt\/images_write\/$new_vm_name.qcow2 #&lt;\/new_disk_create&gt;#  #&lt;attach_new_disk_in_confiig&gt;# \/usr\/bin\/echo hdd base image is $hdd_base_image \/usr\/bin\/sed -i &quot;s%&lt;source file='$hdd_base_image'\/&gt;%&lt;source file='\/var\/lib\/libvirt\/images_write\/$new_vm_name.qcow2'\/&gt;%g&quot; $SRV_TMP_DIR\/$new_vm_name.xml #&lt;\/attach_new_disk_in_confiig&gt;#  starting_vm     #&lt;\/Create_vm config&gt;# }  starting_vm() {  \/usr\/bin\/virsh define $SRV_TMP_DIR\/$new_vm_name.xml \/usr\/bin\/virsh start $new_vm_name while [ $a -ne 1 ] do if \/usr\/bin\/virsh list --all |\/usr\/bin\/grep &quot;$new_vm_name&quot; |\/usr\/bin\/grep &quot;running&quot; &gt; \/dev\/null 2&gt;&1 then a=1 \/usr\/bin\/sed -i &quot;\/$new_vm_port\/d&quot; $SRV_TMP_DIR\/recycle.list \/usr\/bin\/echo $new_vm_port &gt;&gt; $SRV_TMP_DIR\/clear.list \/usr\/bin\/echo &quot;#&quot; &quot;$date&quot; &quot;VM $new_vm_name IS STARTED #&quot; else  \/usr\/bin\/echo &quot;#VM $new_vm_name is not ready#&quot; a=0 \/usr\/bin\/sleep 2s fi done \/usr\/bin\/echo &quot;#$date  EXIT FROM VM_CREATE.SH#&quot; exit }  hdd_image_locate  <\/code><\/pre>\n<p>  <\/div>\n<\/div>\n<p>  \u041f\u0440\u043e\u0446\u0435\u0441\u0441 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u043d\u043e\u0432\u043e\u0439 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u043e\u0439 \u043c\u0430\u0448\u0438\u043d\u044b <\/p>\n<p>  \u0421\u043a\u0440\u0438\u043f\u0442 vm_create.sh \u0441\u0447\u0438\u0442\u044b\u0432\u0430\u0435\u0442 \u0438\u0437 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0433\u043e \u0444\u0430\u0439\u043b\u0430 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0439 \u00abbase_host\u00bb \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u0442\u0441\u044f \u043e\u0431\u0440\u0430\u0437\u0435\u0446 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u043e\u0439 \u043c\u0430\u0448\u0438\u043d\u044b, \u043d\u0430 \u043e\u0441\u043d\u043e\u0432\u0435 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u0431\u0443\u0434\u0435\u0442 \u0434\u0435\u043b\u0430\u0442\u044c\u0441\u044f \u043a\u043b\u043e\u043d. \u041f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442 \u0432\u044b\u0433\u0440\u0443\u0437\u043a\u0443 xml \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 VM \u0438\u0437 \u0431\u0430\u0437\u044b \u0433\u0438\u043f\u0435\u0440\u0432\u0438\u0437\u043e\u0440\u0430, \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442 \u0440\u044f\u0434 \u043f\u0440\u043e\u0432\u0435\u0440\u043e\u043a qcow \u043e\u0431\u0440\u0430\u0437\u0430 \u0434\u0438\u0441\u043a\u0430 VM \u0438 \u043f\u0440\u0438 \u0443\u0441\u043f\u0435\u0448\u043d\u043e\u043c \u0438\u0445 \u0437\u0430\u0432\u0435\u0440\u0448\u0435\u043d\u0438\u0438 \u0441\u043e\u0437\u0434\u0430\u0435\u0442 xml \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u044b\u0439 \u0444\u0430\u0439\u043b \u0434\u043b\u044f \u043d\u043e\u0432\u043e\u0439 VM \u0438 \u00ablinked clone\u00bb \u043e\u0431\u0440\u0430\u0437 \u0434\u0438\u0441\u043a\u0430 \u043d\u043e\u0432\u043e\u0439 VM. \u041f\u043e\u0441\u043b\u0435 \u0447\u0435\u0433\u043e xml \u043a\u043e\u043d\u0444\u0438\u0433 \u043d\u043e\u0432\u043e\u0439 VM \u0437\u0430\u0433\u0440\u0443\u0436\u0430\u0435\u0442\u0441\u044f \u0432 \u0431\u0430\u0437\u0443 \u0433\u0438\u043f\u0435\u0440\u0432\u0438\u0437\u043e\u0440\u0430 \u0438 VM \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u0442\u0441\u044f. \u041f\u043e\u0440\u0442 \u00abspice_console\u00bb \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0438\u0442\u0441\u044f \u0438\u0437 recycle.list \u0432 clear.list. \u0417\u0430\u043a\u0430\u043d\u0447\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u0438\u0441\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 vm_create.sh \u0438 \u0437\u0430\u0432\u0435\u0440\u0448\u0430\u0435\u0442\u0441\u044f \u0438\u0441\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435 vm_manager.sh. <br \/>  \u041f\u0440\u0438 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u043c \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0438 \u0432\u0441\u0451 \u043d\u0430\u0447\u0438\u043d\u0430\u0435\u0442\u0441\u044f \u0441 \u043d\u0430\u0447\u0430\u043b\u0430.<\/p>\n<p>  \u0414\u043b\u044f \u0430\u0432\u0430\u0440\u0438\u0439\u043d\u044b\u0445 \u0441\u043b\u0443\u0447\u0430\u0435\u0432 \u0432 \u043a\u043e\u043c\u043f\u043b\u0435\u043a\u0442\u0435 \u0435\u0441\u0442\u044c \u0441\u043a\u0440\u0438\u043f\u0442 vm_clear.sh \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u043f\u0440\u0438\u043d\u0443\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u043f\u0440\u043e\u0431\u0435\u0433\u0430\u0435\u0442 \u043f\u043e \u0432\u0441\u0435\u043c VM \u0438\u0437 \u043f\u0443\u043b\u0430 \u0438 \u0443\u0434\u0430\u043b\u044f\u0435\u0442 \u0438\u0445 \u0441 \u043e\u0431\u043d\u0443\u043b\u0435\u043d\u0438\u0435\u043c \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0439 list-\u043e\u0432. \u0412\u044b\u0437\u043e\u0432 \u0435\u0433\u043e \u043d\u0430 \u044d\u0442\u0430\u043f\u0435 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u043d\u0430\u0447\u0430\u0442\u044c \u0440\u0430\u0431\u043e\u0442\u0443 (\u043d\u0435\u0434\u043e)VDI \u0441 \u0447\u0438\u0441\u0442\u043e\u0433\u043e \u043b\u0438\u0441\u0442\u0430.<\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">\/home\/admin\/scripts_vdi_new\/vm_clear.sh<\/b><\/p>\n<div class=\"spoiler_text\">\n<pre><code class=\"bash\">#!\/usr\/bin\/sh  #set VARIABLES# SRV_SCRIPTS_DIR=$(\/usr\/bin\/cat \/etc\/vm_manager.conf \\  |\/usr\/bin\/grep &quot;srv_scripts_dir&quot; |\/usr\/bin\/cut -d &quot;=&quot; -f2) \/usr\/bin\/echo &quot;SRV_SCRIPTS_DIR=$SRV_SCRIPTS_DIR&quot; export SRV_SCRIPTS_DIR=$SRV_SCRIPTS_DIR  SRV_TMP_DIR=$(\/usr\/bin\/cat \/etc\/vm_manager.conf \\  |\/usr\/bin\/grep &quot;srv_tmp_dir&quot; |\/usr\/bin\/cut -d &quot;=&quot; -f2) \/usr\/bin\/echo &quot;SRV_TMP_DIR=$SRV_TMP_DIR&quot; export SRV_TMP_DIR=$SRV_TMP_DIR  SRV_POOL_SIZE=$(\/usr\/bin\/cat \/etc\/vm_manager.conf \\  |\/usr\/bin\/grep &quot;srv_pool_size&quot; |\/usr\/bin\/cut -d &quot;=&quot; -f2) \/usr\/bin\/echo &quot;SRV_POOL_SIZE=$SRV_POOL_SIZE&quot;  SRV_START_PORT_POOL=$(\/usr\/bin\/cat \/etc\/vm_manager.conf \\  |\/usr\/bin\/grep &quot;srv_start_port_pool&quot; |\/usr\/bin\/cut -d &quot;=&quot; -f2) \/usr\/bin\/echo SRV_START_PORT_POOL=$SRV_START_PORT_POOL #Set VARIABLES#   \/usr\/bin\/echo &quot;= Cleanup ALL VM=&quot;  \/usr\/bin\/mkdir $SRV_TMP_DIR  \/usr\/sbin\/service iptables restart \/usr\/bin\/cat \/dev\/null &gt; $SRV_TMP_DIR\/clear.list \/usr\/bin\/cat \/dev\/null &gt; $SRV_TMP_DIR\/waste.list \/usr\/bin\/cat \/dev\/null &gt; $SRV_TMP_DIR\/recycle.list \/usr\/bin\/cat \/dev\/null &gt; $SRV_TMP_DIR\/conn_wait.list  port_to_delete=$(($SRV_START_PORT_POOL+$SRV_POOL_SIZE))          while [ &quot;$port_to_delete&quot; -gt &quot;$SRV_START_PORT_POOL&quot; ]           do \t\t$SRV_SCRIPTS_DIR\/vm_delete.sh $port_to_delete \t\tport_to_delete=$(($port_to_delete-1))         done  \/usr\/bin\/echo &quot;= EXIT FROM VM_CLEAR.SH=&quot; <\/code><\/pre>\n<p>  <\/div>\n<\/div>\n<p>  \u041d\u0430 \u044d\u0442\u043e\u043c \u044f \u0445\u043e\u0442\u0435\u043b \u0431\u044b \u0437\u0430\u043a\u043e\u043d\u0447\u0438\u0442\u044c \u043f\u0435\u0440\u0432\u0443\u044e \u0447\u0430\u0441\u0442\u044c \u0441\u0432\u043e\u0435\u0433\u043e \u0440\u0430\u0441\u0441\u043a\u0430\u0437\u0430. \u0418\u0437\u043b\u043e\u0436\u0435\u043d\u043d\u043e\u0433\u043e \u0434\u043e\u043b\u0436\u043d\u043e \u0431\u044b\u0442\u044c \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0434\u043b\u044f \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0445 \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440\u043e\u0432, \u0447\u0442\u043e\u0431\u044b \u043f\u043e\u043f\u0440\u043e\u0431\u043e\u0432\u0430\u0442\u044c \u043d\u0435\u0434\u043eVDI \u0432 \u0434\u0435\u043b\u0435. \u0415\u0441\u043b\u0438 \u0441\u043e\u043e\u0431\u0449\u0435\u0441\u0442\u0432\u043e \u043d\u0430\u0439\u0434\u0435\u0442 \u0434\u0430\u043d\u043d\u0443\u044e \u0442\u0435\u043c\u0443 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u043e\u0439, \u0432\u043e \u0432\u0442\u043e\u0440\u043e\u0439 \u0447\u0430\u0441\u0442\u0438 \u044f \u0440\u0430\u0441\u0441\u043a\u0430\u0436\u0443 \u043f\u0440\u043e \u043c\u043e\u0434\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u044e livecd Fedora \u0438 \u043f\u0440\u0435\u0432\u0440\u0430\u0449\u0435\u043d\u0438\u044f \u0435\u0435 \u0432 \u043a\u0438\u043e\u0441\u043a.<\/div>\n<p>               <script class=\"js-mediator-script\">!function(e){function t(t,n){if(!(n in e)){for(var r,a=e.document,i=a.scripts,o=i.length;o--;)if(-1!==i[o].src.indexOf(t)){r=i[o];break}if(!r){r=a.createElement(\"script\"),r.type=\"text\/javascript\",r.async=!0,r.defer=!0,r.src=t,r.charset=\"UTF-8\";var d=function(){var e=a.getElementsByTagName(\"script\")[0];e.parentNode.insertBefore(r,e)};\"[object Opera]\"==e.opera?a.addEventListener?a.addEventListener(\"DOMContentLoaded\",d,!1):e.attachEvent(\"onload\",d):d()}}}t(\"\/\/mediator.mail.ru\/script\/2820404\/\",\"_mediator\")}(window);<\/script>     <br \/> \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\/462203\/\"> https:\/\/habr.com\/ru\/post\/462203\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"\n<div class=\"post__text post__text-html js-mediator-article\">\n<h4>\u041a\u043e\u043c\u0443 \u043f\u0440\u0435\u0434\u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u0430 \u0434\u0430\u043d\u043d\u0430\u044f \u0441\u0442\u0430\u0442\u044c\u044f<\/h4>\n<p>  \u0414\u0430\u043d\u043d\u0430\u044f \u0441\u0442\u0430\u0442\u044c\u044f \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043d\u0430 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u043c \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440\u0430\u043c, \u043f\u0435\u0440\u0435\u0434 \u043a\u043e\u0442\u043e\u0440\u044b\u043c\u0438 \u0432\u0441\u0442\u0430\u0432\u0430\u043b\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u0441\u0435\u0440\u0432\u0438\u0441 \u00ab\u043e\u0434\u043d\u043e\u0440\u0430\u0437\u043e\u0432\u044b\u0445\u00bb \u0440\u0430\u0431\u043e\u0447\u0438\u0445 \u043c\u0435\u0441\u0442. <\/p>\n<h4>\u041f\u0440\u043e\u043b\u043e\u0433<\/h4>\n<p>  \u0412 \u043e\u0442\u0434\u0435\u043b \u0418\u0422 \u0441\u043e\u043f\u0440\u043e\u0432\u043e\u0436\u0434\u0435\u043d\u0438\u044f \u043c\u043e\u043b\u043e\u0434\u043e\u0439 \u0434\u0438\u043d\u0430\u043c\u0438\u0447\u043d\u043e \u0440\u0430\u0437\u0432\u0438\u0432\u0430\u044e\u0449\u0435\u0439\u0441\u044f \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438 \u0441 \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u043e\u0439 \u0440\u0435\u0433\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u043e\u0439 \u0441\u0435\u0442\u044c\u044e, \u043e\u0431\u0440\u0430\u0442\u0438\u043b\u0438\u0441\u044c \u0441 \u043f\u0440\u043e\u0441\u044c\u0431\u043e\u0439 \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u00ab\u0441\u0442\u0430\u043d\u0446\u0438\u0438 \u0441\u0430\u043c\u043e\u043e\u0431\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u043d\u0438\u044f\u00bb \u0434\u043b\u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0438\u0445 \u0432\u043d\u0435\u0448\u043d\u0438\u043c\u0438 \u043a\u043b\u0438\u0435\u043d\u0442\u0430\u043c\u0438. \u0414\u0430\u043d\u043d\u044b\u0435 \u0441\u0442\u0430\u043d\u0446\u0438\u0438 \u043f\u0440\u0435\u0434\u043f\u043e\u043b\u0430\u0433\u0430\u043b\u043e\u0441\u044c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0434\u043b\u044f \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438 \u043d\u0430 \u0432\u043d\u0435\u0448\u043d\u0438\u0445 \u043f\u043e\u0440\u0442\u0430\u043b\u0430\u0445 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438, \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u0434\u0430\u043d\u043d\u044b\u0445 \u0441 \u0432\u043d\u0435\u0448\u043d\u0438\u0445 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432, \u0440\u0430\u0431\u043e\u0442\u044b \u0441 \u0433\u043e\u0441\u0443\u0434\u0430\u0440\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u043c\u0438 \u043f\u043e\u0440\u0442\u0430\u043b\u0430\u043c\u0438.<\/p>\n<p>  \u0412\u0430\u0436\u043d\u044b\u043c \u0430\u0441\u043f\u0435\u043a\u0442\u043e\u043c \u044f\u0432\u043b\u044f\u043b\u0441\u044f \u0442\u043e\u0442 \u0444\u0430\u043a\u0442, \u0447\u0442\u043e \u0431\u043e\u043b\u044c\u0448\u0430\u044f \u0447\u0430\u0441\u0442\u044c \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e\u0433\u043e \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0435\u043d\u0438\u044f \u00ab\u0437\u0430\u0442\u043e\u0447\u0435\u043d\u0430\u00bb \u043f\u043e\u0434 MS Windows (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u00ab\u0414\u0435\u043a\u043b\u0430\u0440\u0430\u0446\u0438\u044f\u00bb), \u0430 \u043d\u0435\u0441\u043c\u043e\u0442\u0440\u044f \u043d\u0430 \u0434\u0432\u0438\u0436\u0435\u043d\u0438\u0435 \u0432 \u0441\u0442\u043e\u0440\u043e\u043d\u0443 \u043e\u0442\u043a\u0440\u044b\u0442\u044b\u0445 \u0444\u043e\u0440\u043c\u0430\u0442\u043e\u0432, MS Office \u043e\u0441\u0442\u0430\u0435\u0442\u0441\u044f \u0434\u043e\u043c\u0438\u043d\u0438\u0440\u0443\u044e\u0449\u0438\u043c \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043e\u043c \u043f\u0440\u0438 \u043e\u0431\u043c\u0435\u043d\u0435 \u044d\u043b\u0435\u043a\u0442\u0440\u043e\u043d\u043d\u044b\u043c\u0438 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u043c\u0438. \u0422\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c, \u043e\u0442\u043a\u0430\u0437\u0430\u0442\u044c\u0441\u044f \u043e\u0442 MS Windows \u043f\u0440\u0438 \u0440\u0435\u0448\u0435\u043d\u0438\u0438 \u0434\u0430\u043d\u043d\u043e\u0439 \u0437\u0430\u0434\u0430\u0447\u0438 \u043c\u044b \u043d\u0435 \u043c\u043e\u0433\u043b\u0438.  <\/p>\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-292893","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/292893","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=292893"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/292893\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=292893"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=292893"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=292893"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}