{"id":493230,"date":"2026-09-02T11:50:20","date_gmt":"2026-09-02T11:50:20","guid":{"rendered":"https:\/\/savepearlharbor.com\/?p=493230"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-29T21:00:00","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=493230","title":{"rendered":"JupyterLab \u043d\u0430 GPU-\u0441\u0435\u0440\u0432\u0435\u0440\u0435: \u043f\u043e\u043b\u043d\u043e\u0435 \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u043e \u043f\u043e \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0435 \u0434\u043b\u044f \u043a\u043e\u043c\u0430\u043d\u0434\u044b \u0432 2026 \u0433\u043e\u0434\u0443"},"content":{"rendered":"<div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\">\n<p><em>\u0410\u0432\u0442\u043e\u0440: \u0418\u0432\u0430\u043d \u0411\u043e\u0433\u0434\u0430\u043d\u043e\u0432, \u0422\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u043f\u0438\u0441\u0430\u0442\u0435\u043b\u044c\u00a0<\/em><\/p>\n<p>\u041b\u044e\u0431\u043e\u0439, \u043a\u043e\u043c\u0443 \u0434\u043e\u0432\u043e\u0434\u0438\u043b\u043e\u0441\u044c \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0432 SPSS (\u043c\u043d\u0435, \u043a \u0441\u043e\u0436\u0430\u043b\u0435\u043d\u0438\u044e, \u043f\u0440\u0438\u0445\u043e\u0434\u0438\u043b\u043e\u0441\u044c), \u0437\u043d\u0430\u0435\u0442 \u0447\u0443\u0432\u0441\u0442\u0432\u043e \u0442\u043e\u0441\u043a\u0438, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u043e\u0445\u0432\u0430\u0442\u044b\u0432\u0430\u0435\u0442 \u043f\u0440\u0438 \u043f\u0435\u0440\u0432\u043e\u043c \u0437\u0430\u043f\u0443\u0441\u043a\u0435 \u044d\u0442\u043e\u0433\u043e \u043f\u0440\u043e\u0434\u0443\u043a\u0442\u0430, \u0430 \u0442\u0430\u043a \u043a\u0430\u043a \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u0442\u0441\u044f \u043e\u043d \u0434\u043e\u043b\u0433\u043e, \u0442\u043e \u0438 \u043e\u0449\u0443\u0449\u0435\u043d\u0438\u0435 \u0434\u043b\u0438\u0442\u0441\u044f \u0441\u0442\u043e\u043b\u044c\u043a\u043e \u0436\u0435. \u041e\u0442\u0434\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u044f \u0437\u0430\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u0435\u0442 \u0438 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u044d\u0442\u043e\u0433\u043e \u043f\u0440\u043e\u0434\u0443\u043a\u0442\u0430, \u0432\u0435\u0434\u044c \u0441\u043b\u043e\u0436\u043d\u043e \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0435\u0433\u043e \u043c\u0435\u043d\u0435\u0435 \u0438\u043d\u0442\u0443\u0438\u0442\u0438\u0432\u043d\u043e \u043f\u043e\u043d\u044f\u0442\u043d\u044b\u043c. \u041c\u0435\u043d\u044f \u0438\u0437 \u043f\u043b\u0435\u043d\u0430 \u044d\u0442\u043e\u0433\u043e \u041f\u041e \u043a\u043e\u0433\u0434\u0430-\u0442\u043e \u0432\u044b\u0432\u0435\u043b\u043e \u043e\u0442\u043a\u0440\u044b\u0442\u0438\u0435 pandas, \u0441 \u043a\u043e\u0442\u043e\u0440\u044b\u043c \u0430\u043d\u0430\u043b\u043e\u0433\u0438\u0447\u043d\u044b\u0439 \u0430\u043d\u0430\u043b\u0438\u0437 \u043c\u043e\u0436\u043d\u043e \u0431\u044b\u043b\u043e \u0441\u043e\u0431\u0438\u0440\u0430\u0442\u044c \u043d\u0430\u043c\u043d\u043e\u0433\u043e \u0431\u044b\u0441\u0442\u0440\u0435\u0435 \u0438 \u0441 \u0443\u0434\u043e\u0431\u043d\u044b\u043c \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435\u043c \u0441\u043a\u0440\u0438\u043f\u0442\u043e\u0432, \u0442\u043e \u0435\u0441\u0442\u044c \u0435\u0449\u0435 \u0438 \u0441 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c\u044e \u0431\u044b\u0441\u0442\u0440\u043e \u0432\u043e\u0441\u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0441\u0442\u0438 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b.<\/p>\n<p>\u041e\u0434\u043d\u043e\u043c\u0443 \u0447\u0435\u043b\u043e\u0432\u0435\u043a\u0443 \u0434\u043b\u044f \u0442\u043e\u0433\u043e \u0436\u0435 \u0441\u0442\u0430\u0442\u0430\u043d\u0430\u043b\u0438\u0437\u0430 \u0445\u0432\u0430\u0442\u0438\u0442 \u043e\u0431\u044b\u0447\u043d\u043e\u0433\u043e \u041f\u041a, \u043d\u043e \u0432\u043e\u0442 \u0435\u0441\u043b\u0438 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u043f\u0440\u043e\u0432\u043e\u0434\u0438\u0442\u044c \u0431\u043e\u043b\u0435\u0435 \u043c\u0430\u0441\u0448\u0442\u0430\u0431\u043d\u044b\u0435 \u0438\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043d\u0438\u044f \u0438\u043b\u0438 \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u043d\u0443\u044e \u0440\u0430\u0431\u043e\u0442\u0443 \u0433\u0440\u0443\u043f\u043f\u044b \u0438\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439, \u0442\u0443\u0442 \u0443\u0436\u0435 \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u043f\u0440\u0438\u0432\u043b\u0435\u0447\u0435\u043d\u0438\u0435 \u0431\u043e\u043b\u0435\u0435 \u043c\u043e\u0449\u043d\u043e\u0433\u043e \u0436\u0435\u043b\u0435\u0437\u0430 \u0438 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e\u0433\u043e \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0435\u043d\u0438\u044f, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, JupyterLab \u043d\u0430 GPU-\u0441\u0435\u0440\u0432\u0435\u0440\u0435. \u041e \u043d\u0435\u043c \u043c\u044b \u0441\u0435\u0433\u043e\u0434\u043d\u044f \u0438 \u0440\u0430\u0441\u0441\u043a\u0430\u0436\u0435\u043c.<\/p>\n<p>\u0420\u0430\u0431\u043e\u0442\u0430 \u0441 \u0434\u0430\u043d\u043d\u044b\u043c\u0438 \u0441\u043e\u0441\u0442\u043e\u0438\u0442 \u0438\u0437 \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u043e\u0432, \u0430 \u043d\u0435 \u0438\u0437 \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u0438\u044f \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c \u0432 \u043f\u0440\u0438\u0432\u044b\u0447\u043d\u043e\u043c \u0441\u043c\u044b\u0441\u043b\u0435. \u0422\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u043d\u0430 \u043f\u0440\u043e\u043c\u0435\u0436\u0443\u0442\u043e\u0447\u043d\u044b\u0439 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442, \u043f\u043e\u043c\u0435\u043d\u044f\u0442\u044c \u043e\u0434\u043d\u0443 \u0441\u0442\u0440\u043e\u0447\u043a\u0443 \u0438 \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u0441\u043d\u043e\u0432\u0430. \u041f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0430, \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u043c\u0430\u044f \u0446\u0435\u043b\u0438\u043a\u043e\u043c \u043e\u0442 \u043d\u0430\u0447\u0430\u043b\u0430 \u0434\u043e \u043a\u043e\u043d\u0446\u0430, \u0434\u043b\u044f \u0442\u0430\u043a\u043e\u0433\u043e \u043f\u043e\u0434\u0445\u043e\u0434\u0438\u0442 \u043f\u043b\u043e\u0445\u043e, \u0432\u0435\u0434\u044c \u043a\u0430\u0436\u0434\u044b\u0439 \u0437\u0430\u043f\u0443\u0441\u043a \u0441\u0442\u0430\u0440\u0442\u0443\u0435\u0442 \u0441 \u043f\u0443\u0441\u0442\u043e\u0439 \u043f\u0430\u043c\u044f\u0442\u0438, \u0430 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u043d\u0430\u0431\u043e\u0440\u0430 \u0434\u0430\u043d\u043d\u044b\u0445 \u0438\u043b\u0438 \u0432\u0435\u0441\u043e\u0432 \u043c\u043e\u0434\u0435\u043b\u0438 \u0437\u0430\u043d\u0438\u043c\u0430\u0435\u0442 \u043e\u0442 \u043c\u0438\u043d\u0443\u0442 \u0434\u043e \u0434\u0435\u0441\u044f\u0442\u043a\u043e\u0432 \u043c\u0438\u043d\u0443\u0442. \u042f\u0434\u0440\u043e JupyterLab \u0434\u0435\u0440\u0436\u0438\u0442 \u0437\u0430\u0433\u0440\u0443\u0436\u0435\u043d\u043d\u043e\u0435 \u043c\u0435\u0436\u0434\u0443 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435\u043c \u044f\u0447\u0435\u0435\u043a, \u0438 \u0446\u0438\u043a\u043b \u043f\u0440\u0430\u0432\u043a\u0438 \u0441\u043e\u043a\u0440\u0430\u0449\u0430\u0435\u0442\u0441\u044f \u0434\u043e \u0441\u0435\u043a\u0443\u043d\u0434. \u0412\u043e \u043c\u043d\u043e\u0433\u043e\u043c \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u043d\u043e\u0443\u0442\u0431\u0443\u043a\u0438 \u0432\u044b\u0442\u0435\u0441\u043d\u0438\u043b\u0438 \u0432\u0441\u0435 \u043e\u0441\u0442\u0430\u043b\u044c\u043d\u044b\u0435 \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u043d\u0430 \u0438\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u043e\u0439 \u0441\u0442\u0430\u0434\u0438\u0438.<\/p>\n<div>\n<div class=\"table\">\n<table>\n<tbody>\n<tr>\n<td>\n<p align=\"left\"><strong>\u041f\u0440\u0435\u0434\u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043d\u044b\u0439 JupyterLab<\/strong><br \/>\u0417\u0430\u043a\u0430\u0436\u0438\u0442\u0435 \u0441\u0435\u0440\u0432\u0435\u0440 \u0441 \u0433\u043e\u0442\u043e\u0432\u044b\u043c\u0438 \u0440\u0435\u0448\u0435\u043d\u0438\u044f\u043c\u0438 \u0434\u043b\u044f Data Science, \u043d\u0430\u0443\u0447\u043d\u044b\u0445 \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0439 \u0438 \u043c\u0430\u0448\u0438\u043d\u043d\u043e\u0433\u043e \u043e\u0431\u0443\u0447\u0435\u043d\u0438\u044f.<\/p>\n<p align=\"left\"><a href=\"https:\/\/hostkey.ru\/apps\/data-science\/jupyterlab\/\">\u041f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c<\/a><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<h3>\u0417\u0430\u0447\u0435\u043c JupyterLab \u043d\u0430 GPU-\u0441\u0435\u0440\u0432\u0435\u0440\u0435?\u00a0<\/h3>\n<p>\u041f\u043e\u043c\u0438\u043c\u043e \u0443\u0436\u0435 \u043f\u0435\u0440\u0435\u0447\u0438\u0441\u043b\u0435\u043d\u043d\u044b\u0445 \u043f\u0440\u0438\u0447\u0438\u043d, \u0442\u0430\u043a\u043e\u0439 \u0441\u0435\u0440\u0432\u0435\u0440 \u0431\u0443\u0434\u0435\u0442 \u043f\u043e\u043b\u0435\u0437\u0435\u043d \u0432 \u0441\u0438\u0442\u0443\u0430\u0446\u0438\u044f\u0445, \u043a\u043e\u0433\u0434\u0430 \u0434\u0430\u043d\u043d\u044b\u0435 \u043d\u0435\u043b\u044c\u0437\u044f \u0432\u044b\u043d\u043e\u0441\u0438\u0442\u044c \u0437\u0430 \u043f\u0435\u0440\u0438\u043c\u0435\u0442\u0440 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438, \u0442\u0430\u043a\u0436\u0435 \u043e\u043d \u0431\u0443\u0434\u0435\u0442 \u043d\u0435\u0437\u0430\u043c\u0435\u043d\u0438\u043c \u0434\u043b\u044f \u0438\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043d\u0438\u0439, \u0432 \u0440\u0430\u043c\u043a\u0430\u0445 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u043e\u0434\u0438\u043d\u0430\u043a\u043e\u0432\u043e\u0435 \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u0435 \u0434\u043b\u044f \u0432\u0441\u0435\u0445 \u0443\u0447\u0430\u0441\u0442\u043d\u0438\u043a\u043e\u0432. JupyterLab \u043d\u0430 GPU-\u0441\u0435\u0440\u0432\u0435\u0440\u0435 \u0431\u0443\u0434\u0435\u0442 \u0445\u043e\u0440\u043e\u0448\u0438\u043c \u0432\u044b\u0431\u043e\u0440\u043e\u043c \u0434\u043b\u044f \u0442\u0435\u0445, \u0443 \u043a\u043e\u0433\u043e \u0438\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043d\u0438\u044f \u043f\u0440\u0435\u0434\u043f\u043e\u043b\u0430\u0433\u0430\u044e\u0442 \u0434\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u0443\u044e \u043d\u0435\u043f\u0440\u0435\u0440\u044b\u0432\u043d\u0443\u044e \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0443 \u0434\u0430\u043d\u043d\u044b\u0445, \u0442\u0430\u043a \u043a\u0430\u043a. \u0441\u0435\u0440\u0432\u0435\u0440, \u0432 \u043e\u0442\u043b\u0438\u0447\u0438\u0435 \u043e\u0442 \u041f\u041a, \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0432\u0430\u0435\u0442 \u0434\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u0443\u044e \u0441\u0442\u0430\u0431\u0438\u043b\u044c\u043d\u0443\u044e \u0440\u0430\u0431\u043e\u0442\u0443. \u0418\u043d\u044b\u043c\u0438 \u0441\u043b\u043e\u0432\u0430\u043c\u0438, \u044d\u0442\u043e\u0442 \u0441\u0435\u0440\u0432\u0435\u0440 \u043f\u043e\u043b\u0435\u0437\u0435\u043d \u043f\u043e \u0431\u043e\u043b\u044c\u0448\u0435\u0439 \u0447\u0430\u0441\u0442\u0438 \u0434\u043b\u044f \u043a\u043e\u043c\u0430\u043d\u0434 \u0438 \u043e\u043d \u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0432\u0430\u0435\u0442 \u0435\u0434\u0438\u043d\u0443\u044e \u0441\u0440\u0435\u0434\u0443 \u0438\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043d\u0438\u044f.<\/p>\n<p>\u0412\u0438\u0434\u0435\u043e\u043a\u0430\u0440\u0442\u0430 \u043f\u043e\u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0432 \u044d\u0442\u043e\u0439 \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438 \u043d\u0435 \u0440\u0430\u0434\u0438 \u043a\u0440\u0430\u0441\u043e\u0442\u044b. \u041e\u0441\u043d\u043e\u0432\u043d\u0430\u044f \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u044f \u0432\u043d\u0443\u0442\u0440\u0438 \u043d\u0435\u0439\u0440\u043e\u043d\u043d\u043e\u0439 \u0441\u0435\u0442\u0438 \u2014 \u044d\u0442\u043e \u043f\u0435\u0440\u0435\u043c\u043d\u043e\u0436\u0435\u043d\u0438\u0435 \u043c\u0430\u0442\u0440\u0438\u0446, \u0442\u043e \u0435\u0441\u0442\u044c \u0442\u044b\u0441\u044f\u0447\u0438 \u043e\u0434\u0438\u043d\u0430\u043a\u043e\u0432\u044b\u0445 \u043d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u044b\u0445 \u0443\u043c\u043d\u043e\u0436\u0435\u043d\u0438\u0439 \u0438 \u0441\u043b\u043e\u0436\u0435\u043d\u0438\u0439. \u0426\u0435\u043d\u0442\u0440\u0430\u043b\u044c\u043d\u044b\u0439 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440 \u0443\u0441\u0442\u0440\u043e\u0435\u043d \u043f\u043e\u0434 \u0434\u0440\u0443\u0433\u043e\u0435, \u0443 \u043d\u0435\u0433\u043e \u0434\u0435\u0441\u044f\u0442\u043e\u043a-\u0434\u0440\u0443\u0433\u043e\u0439 \u0441\u043b\u043e\u0436\u043d\u044b\u0445 \u044f\u0434\u0435\u0440, \u0437\u0430\u0442\u043e\u0447\u0435\u043d\u043d\u044b\u0445 \u043f\u043e\u0434 \u0432\u0435\u0442\u0432\u044f\u0449\u0443\u044e\u0441\u044f \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u0443\u044e \u043b\u043e\u0433\u0438\u043a\u0443, \u0442\u043e\u0433\u0434\u0430 \u043a\u0430\u043a \u0432\u0438\u0434\u0435\u043e\u043a\u0430\u0440\u0442\u0430 \u0441\u043e\u0441\u0442\u043e\u0438\u0442 \u0438\u0437 \u0442\u044b\u0441\u044f\u0447 \u043f\u0440\u043e\u0441\u0442\u044b\u0445 \u0432\u044b\u0447\u0438\u0441\u043b\u0438\u0442\u0435\u043b\u0435\u0439, \u0434\u0435\u043b\u0430\u044e\u0449\u0438\u0445 \u043e\u0434\u043d\u043e \u0438 \u0442\u043e \u0436\u0435 \u043d\u0430\u0434 \u0440\u0430\u0437\u043d\u044b\u043c\u0438 \u0447\u0438\u0441\u043b\u0430\u043c\u0438. \u0420\u0430\u0437\u043d\u0438\u0446\u0430 \u043d\u0430 \u0442\u0430\u043a\u043e\u043c \u043a\u043b\u0430\u0441\u0441\u0435 \u0437\u0430\u0434\u0430\u0447 \u0438\u0437\u043c\u0435\u0440\u044f\u0435\u0442\u0441\u044f \u0434\u0435\u0441\u044f\u0442\u043a\u0430\u043c\u0438 \u0440\u0430\u0437. \u0414\u043e\u0431\u0430\u0432\u044c\u0442\u0435 \u0441\u044e\u0434\u0430 \u043f\u0440\u043e\u043f\u0443\u0441\u043a\u043d\u0443\u044e \u0441\u043f\u043e\u0441\u043e\u0431\u043d\u043e\u0441\u0442\u044c \u043f\u0430\u043c\u044f\u0442\u0438, \u0443 \u0432\u0438\u0434\u0435\u043e\u043a\u0430\u0440\u0442\u044b \u043e\u043d\u0430 \u0441\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0441\u043e\u0442\u043d\u0438 \u0433\u0438\u0433\u0430\u0431\u0430\u0439\u0442 \u0432 \u0441\u0435\u043a\u0443\u043d\u0434\u0443 \u043f\u0440\u043e\u0442\u0438\u0432 \u043f\u0440\u0438\u043c\u0435\u0440\u043d\u043e \u0441\u043e\u0442\u043d\u0438 \u0443 \u043e\u043f\u0435\u0440\u0430\u0442\u0438\u0432\u043d\u043e\u0439 \u043f\u0430\u043c\u044f\u0442\u0438 \u0441\u0435\u0440\u0432\u0435\u0440\u0430, \u0430 \u043e\u0431\u0443\u0447\u0435\u043d\u0438\u0435 \u0443\u043f\u0438\u0440\u0430\u0435\u0442\u0441\u044f \u0432 \u043f\u0435\u0440\u0435\u043a\u0430\u0447\u043a\u0443 \u0434\u0430\u043d\u043d\u044b\u0445 \u043d\u0435 \u043c\u0435\u043d\u044c\u0448\u0435, \u0447\u0435\u043c \u0432 \u0441\u0430\u043c\u0438 \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u044f.<\/p>\n<p>\u0415\u0441\u0442\u044c \u0438 \u043d\u0435\u0434\u043e\u0441\u0442\u0430\u0442\u043a\u0438, \u0438 \u0433\u043b\u0430\u0432\u043d\u044b\u0439 \u0438\u0437 \u043d\u0438\u0445 \u2014 \u0441\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c. \u0421\u0435\u0440\u0432\u0435\u0440 \u0441 \u0433\u0440\u0430\u0444\u0438\u0447\u0435\u0441\u043a\u0438\u043c \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u043e\u043c \u0441\u0442\u043e\u0438\u0442 \u0434\u043e\u0440\u043e\u0433\u043e, \u0438 \u0438\u043c\u0435\u0435\u0442 \u0441\u043c\u044b\u0441\u043b \u0431\u0440\u0430\u0442\u044c \u0435\u0433\u043e \u043e\u0441\u043e\u0437\u043d\u0430\u043d\u043d\u043e \u0438 \u043f\u043e\u0434 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u0439 \u043e\u0431\u044a\u0435\u043c \u0437\u0430\u0434\u0430\u0447. \u0415\u0441\u043b\u0438 \u0438\u0445 \u043d\u0435 \u0442\u0430\u043a \u043c\u043d\u043e\u0433\u043e, \u0442\u043e \u043c\u043e\u0436\u043d\u043e \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u043f\u043e\u0447\u0430\u0441\u043e\u0432\u0443\u044e \u0430\u0440\u0435\u043d\u0434\u0443. \u0412 \u0441\u0442\u0430\u0442\u044c\u0435 \u043c\u044b \u043f\u0440\u043e\u0439\u0434\u0435\u043c \u043f\u0443\u0442\u044c \u043e\u0442 \u0447\u0438\u0441\u0442\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0434\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0449\u0435\u0433\u043e \u043c\u043d\u043e\u0433\u043e\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u043e\u0433\u043e \u0441\u0442\u0435\u043d\u0434\u0430.\u00a0<\/p>\n<h3>\u0422\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f \u043a \u0441\u0435\u0440\u0432\u0435\u0440\u0443<\/h3>\n<p>\u041a\u043b\u044e\u0447\u0435\u0432\u044b\u0435 \u0442\u043e\u0447\u043a\u0438 \u043e\u0442\u0441\u0447\u0435\u0442\u0430 \u043f\u0440\u0438 \u0432\u044b\u0431\u043e\u0440\u0435 \u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u0434\u043b\u044f JupyterLab \u2014 \u044d\u0442\u043e \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u043e\u0434\u043d\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0449\u0438\u0445 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439, \u0440\u0430\u0437\u043c\u0435\u0440 \u043c\u043e\u0434\u0435\u043b\u0435\u0439 \u0438 \u043e\u0431\u044a\u0435\u043c \u0434\u0430\u043d\u043d\u044b\u0445. \u0414\u0430\u043b\u044c\u0448\u0435 \u043c\u044b \u0440\u0430\u0437\u0431\u0438\u0440\u0430\u0435\u043c \u0432\u044b\u0431\u043e\u0440 \u043d\u0430 \u043f\u0440\u0438\u043c\u0435\u0440\u0435 <a href=\"https:\/\/hostkey.ru\/gpu-dedicated-servers\/\">\u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0445 \u0442\u0430\u0440\u0438\u0444\u043e\u0432<\/a>, \u0443 \u0434\u0440\u0443\u0433\u0438\u0445 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0439 \u043e\u043d\u0438 \u043c\u043e\u0433\u0443\u0442 \u043e\u0442\u043b\u0438\u0447\u0430\u0442\u044c\u0441\u044f, \u043d\u043e \u043d\u0435 \u0441\u0438\u043b\u044c\u043d\u043e.<\/p>\n<h4>\u0412\u0438\u0434\u0435\u043e\u043a\u0430\u0440\u0442\u0430 \u0438 \u043e\u0431\u044a\u0435\u043c \u0435\u0435 \u043f\u0430\u043c\u044f\u0442\u0438<\/h4>\n<p>\u0412\u044b\u0431\u0438\u0440\u0430\u0442\u044c \u043a\u0430\u0440\u0442\u0443 \u0441\u0442\u043e\u0438\u0442 \u043f\u043e \u043e\u0431\u044a\u0451\u043c\u0443 \u0432\u0438\u0434\u0435\u043e\u043f\u0430\u043c\u044f\u0442\u0438, \u0430 \u043d\u0435 \u043f\u043e \u0437\u0430\u044f\u0432\u043b\u0435\u043d\u043d\u043e\u0439 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438, \u043f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e\u043c\u043e\u0434\u0435\u043b\u044c \u0432\u043c\u0435\u0441\u0442\u0435 \u0441 \u043e\u0431\u0443\u0447\u0430\u044e\u0449\u0438\u043c\u0438 \u0434\u0430\u043d\u043d\u044b\u043c\u0438 \u043b\u0438\u0431\u043e \u0446\u0435\u043b\u0438\u043a\u043e\u043c \u043f\u043e\u043c\u0435\u0449\u0430\u0435\u0442\u0441\u044f \u0432 \u043f\u0430\u043c\u044f\u0442\u044c \u043a\u0430\u0440\u0442\u044b, \u043b\u0438\u0431\u043e \u043d\u0435\u0442. \u0412\u0430\u0440\u0438\u0430\u043d\u0442\u044b \u0443\u0436\u0430\u0442\u044c \u043c\u043e\u0434\u0435\u043b\u044c \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0442 \u0432 \u0431\u043e\u043b\u044c\u0448\u043e\u043c \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u0435 (\u043a\u0432\u0430\u043d\u0442\u043e\u0432\u0430\u043d\u0438\u0435, LoRA \u0438 \u0442. \u0434.), \u043d\u043e \u043c\u044b \u044d\u0442\u0438 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u044b \u0440\u0430\u0441\u0441\u043c\u0430\u0442\u0440\u0438\u0432\u0430\u0442\u044c \u043d\u0435 \u0431\u0443\u0434\u0435\u043c, \u0432\u0435\u0434\u044c \u043e\u043d\u0438 \u0432\u044b\u0445\u043e\u0434\u044f\u0442 \u0437\u0430 \u0440\u0430\u043c\u043a\u0438 \u0442\u0435\u043c\u0430\u0442\u0438\u043a\u0438 \u0441\u0442\u0430\u0442\u044c\u0438, \u0430 \u043f\u0440\u043e\u0441\u0442\u043e \u0441\u0434\u0435\u043b\u0430\u0435\u043c \u0432\u0430\u0436\u043d\u0443\u044e \u043e\u0433\u043e\u0432\u043e\u0440\u043a\u0443: \u043e\u0431\u044a\u0435\u043c \u0432\u0438\u0434\u0435\u043e\u043f\u0430\u043c\u044f\u0442\u0438 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u0442, \u043d\u0430\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0441\u043b\u043e\u0436\u043d\u044b\u043c\u0438 \u043f\u0440\u0438\u0435\u043c\u0430\u043c\u0438 \u043f\u0440\u0438\u0434\u0451\u0442\u0441\u044f \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0438 \u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u0443\u0439\u0434\u0435\u0442 \u043d\u0430 \u043e\u0431\u0443\u0447\u0435\u043d\u0438\u0435.\u00a0<\/p>\n<p>\u0414\u0432\u0430\u0434\u0446\u0430\u0442\u0438 \u0447\u0435\u0442\u044b\u0440\u0451\u0445 \u0433\u0438\u0433\u0430\u0431\u0430\u0439\u0442 \u0445\u0432\u0430\u0442\u0430\u0435\u0442 \u0434\u043b\u044f \u0434\u043e\u043e\u0431\u0443\u0447\u0435\u043d\u0438\u044f \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u0438\u0445 \u043c\u043e\u0434\u0435\u043b\u0435\u0439, \u0434\u043b\u044f \u0437\u0430\u0434\u0430\u0447 \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u043d\u043e\u0433\u043e \u0437\u0440\u0435\u043d\u0438\u044f \u0438 \u0434\u043b\u044f \u043e\u0431\u044b\u0447\u043d\u043e\u0433\u043e \u0430\u043d\u0430\u043b\u0438\u0437\u0430 \u0434\u0430\u043d\u043d\u044b\u0445, \u043f\u0440\u0438\u0447\u0451\u043c \u0432 \u044d\u0442\u043e\u043c \u0441\u0435\u0433\u043c\u0435\u043d\u0442\u0435 \u0446\u0435\u043d\u044b \u0440\u0430\u0437\u043b\u0438\u0447\u0430\u044e\u0442\u0441\u044f \u0437\u0430\u043c\u0435\u0442\u043d\u043e, \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u0441\u0435\u0440\u0432\u0435\u0440 \u0441 RTX 3090 \u043e\u0431\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u0432 25 000 \u0440\u0443\u0431\u043b\u0435\u0439 \u0432 \u043c\u0435\u0441\u044f\u0446 \u0438\u043b\u0438 42 \u0440\u0443\u0431\u043b\u044f \u0432 \u0447\u0430\u0441, \u0442\u043e\u0433\u0434\u0430 \u043a\u0430\u043a \u0437\u0430 RTX 4090 \u0441 \u0442\u043e\u0439 \u0436\u0435 \u043f\u0430\u043c\u044f\u0442\u044c\u044e \u0441\u0442\u043e\u0438\u0442 \u043e\u0442 27 000 \u0440\u0443\u0431\u043b\u0435\u0439 \u0432 \u043c\u0435\u0441\u044f\u0446. \u0422\u0440\u0438\u0434\u0446\u0430\u0442\u044c \u0434\u0432\u0430 \u0433\u0438\u0433\u0430\u0431\u0430\u0439\u0442\u0430 \u0443 RTX 5090 \u0441\u0442\u043e\u044f\u0442 \u0443\u0436\u0435 \u043e\u043a\u043e\u043b\u043e 46 900 \u0440\u0443\u0431\u043b\u0435\u0439 \u0432 \u043c\u0435\u0441\u044f\u0446, \u0430 48 \u0433\u0438\u0433\u0430\u0431\u0430\u0439\u0442 \u0443 A6000 \u043e\u0431\u0445\u043e\u0434\u044f\u0442\u0441\u044f \u0432 58 000 \u0440\u0443\u0431\u043b\u0435\u0439.<\/p>\n<p>\u041f\u0440\u043e\u0444\u0435\u0441\u0441\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u044b\u0435 \u043a\u0430\u0440\u0442\u044b \u0441\u0442\u043e\u044f\u0442 \u0437\u0430\u043c\u0435\u0442\u043d\u043e \u0434\u043e\u0440\u043e\u0436\u0435 \u0438\u0433\u0440\u043e\u0432\u044b\u0445. \u041e\u0434\u0438\u043d\u0430\u043a\u043e\u0432\u044b\u0439 \u043e\u0431\u044a\u0435\u043c \u043f\u0430\u043c\u044f\u0442\u0438 \u0443 \u043d\u0438\u0445 \u0432\u0441\u0442\u0440\u0435\u0447\u0430\u0435\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u043d\u0430 \u043c\u043b\u0430\u0434\u0448\u0438\u0445 \u043c\u043e\u0434\u0435\u043b\u044f\u0445, \u0441\u043a\u0430\u0436\u0435\u043c, A5000 \u0438 RTX 3090 \u043d\u0435\u0441\u0443\u0442 \u043f\u043e \u0434\u0432\u0430\u0434\u0446\u0430\u0442\u044c \u0447\u0435\u0442\u044b\u0440\u0435 \u0433\u0438\u0433\u0430\u0431\u0430\u0439\u0442\u0430 \u043f\u0440\u0438 \u0431\u043b\u0438\u0437\u043a\u043e\u0439 \u0446\u0435\u043d\u0435, \u0438 \u0442\u0430\u043c \u0432\u044b\u0431\u043e\u0440 \u0434\u0435\u043b\u0430\u044e\u0442 \u0440\u0430\u0434\u0438 \u043a\u043e\u0440\u0440\u0435\u043a\u0446\u0438\u0438 \u043e\u0448\u0438\u0431\u043e\u043a \u043f\u0430\u043c\u044f\u0442\u0438, \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u0443 \u0438\u0433\u0440\u043e\u0432\u043e\u0439 \u043a\u0430\u0440\u0442\u044b \u043d\u0435\u0442. \u0414\u0430\u043b\u044c\u0448\u0435 \u0438\u0434\u0443\u0442 \u043e\u0431\u044a\u0435\u043c\u044b, \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0432 \u0438\u0433\u0440\u043e\u0432\u043e\u0439 \u043b\u0438\u043d\u0435\u0439\u043a\u0435 \u043d\u0435 \u043d\u0430\u0439\u0442\u0438, \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u0441\u043e\u0440\u043e\u043a \u0432\u043e\u0441\u0435\u043c\u044c \u0433\u0438\u0433\u0430\u0431\u0430\u0439\u0442 \u0443 A6000 \u043e\u0431\u0445\u043e\u0434\u044f\u0442\u0441\u044f \u0432 58 000 \u0440\u0443\u0431\u043b\u0435\u0439 \u0432 \u043c\u0435\u0441\u044f\u0446, \u0441\u0435\u043c\u044c\u0434\u0435\u0441\u044f\u0442 \u0434\u0432\u0430 \u0433\u0438\u0433\u0430\u0431\u0430\u0439\u0442\u0430 \u0443 RTX PRO 5000 \u0441\u0442\u043e\u044f\u0442 99 000 \u0440\u0443\u0431\u043b\u0435\u0439, \u0430 \u0434\u0435\u0432\u044f\u043d\u043e\u0441\u0442\u043e \u0448\u0435\u0441\u0442\u044c \u0433\u0438\u0433\u0430\u0431\u0430\u0439\u0442 \u0443 RTX PRO 6000 \u0438\u0434\u0443\u0442 \u043f\u043e 185 000 \u0440\u0443\u0431\u043b\u0435\u0439. \u041a\u0430\u0440\u0442\u044b \u0434\u0430\u0442\u0430-\u0446\u0435\u043d\u0442\u0440\u0430, \u0441\u043a\u0430\u0436\u0435\u043c, A100 \u0437\u0430 120 000 \u0440\u0443\u0431\u043b\u0435\u0439 \u0438\u043b\u0438 H100 \u0437\u0430 145 000, \u0431\u0435\u0440\u0443\u0442 \u043d\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u0437\u0430 \u043e\u0431\u044a\u0435\u043c, \u043d\u043e \u0438 \u0437\u0430 \u043f\u0430\u043c\u044f\u0442\u044c \u0441 \u0432\u044b\u0441\u043e\u043a\u043e\u0439 \u043f\u0440\u043e\u043f\u0443\u0441\u043a\u043d\u043e\u0439 \u0441\u043f\u043e\u0441\u043e\u0431\u043d\u043e\u0441\u0442\u044c\u044e, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0443 \u043d\u0438\u0445 \u0438\u0437\u043c\u0435\u0440\u044f\u0435\u0442\u0441\u044f \u0435\u0434\u0438\u043d\u0438\u0446\u0430\u043c\u0438 \u0442\u0435\u0440\u0430\u0431\u0430\u0439\u0442 \u0432 \u0441\u0435\u043a\u0443\u043d\u0434\u0443. \u0421\u0442\u043e\u0438\u0442 \u043f\u043e\u043c\u043d\u0438\u0442\u044c \u0438 \u043e \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u0440\u0430\u0437\u0434\u0435\u043b\u0438\u0442\u044c \u043e\u0434\u043d\u0443 \u043a\u0430\u0440\u0442\u0443 \u043d\u0430 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0438\u0437\u043e\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0445 \u0447\u0430\u0441\u0442\u0435\u0439, \u0438\u0433\u0440\u043e\u0432\u044b\u0435 \u043a\u0430\u0440\u0442\u044b \u0434\u043b\u044f \u0442\u0430\u043a\u0438\u0445 \u0446\u0435\u043b\u0435\u0439 \u043d\u0435 \u043f\u043e\u0434\u0445\u043e\u0434\u044f\u0442, \u0433\u043e\u0434\u044f\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u043f\u0440\u043e\u0444\u0435\u0441\u0441\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u044b\u0435 \u0441 \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u0435\u0439 \u0440\u0430\u0437\u0434\u0435\u043b\u0435\u043d\u0438\u044f \u043d\u0430 \u0438\u043d\u0441\u0442\u0430\u043d\u0441\u044b (MIG).<\/p>\n<p>\u041d\u0430 \u043d\u0430\u0448\u0435\u043c \u0441\u0442\u0435\u043d\u0434\u0435 \u0441\u0442\u043e\u0438\u0442 \u0438\u0433\u0440\u043e\u0432\u0430\u044f \u043a\u0430\u0440\u0442\u0430, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u0434\u0435\u043b\u0438\u0442\u044c \u0435\u0451 \u043c\u0435\u0436\u0434\u0443 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f\u043c\u0438 \u0441\u0440\u0435\u0434\u0441\u0442\u0432\u0430\u043c\u0438 \u0434\u0440\u0430\u0439\u0432\u0435\u0440\u0430 \u043d\u0435 \u0432\u044b\u0439\u0434\u0435\u0442. \u0414\u0430\u043b\u044c\u0448\u0435 \u043f\u043e \u0442\u0435\u043a\u0441\u0442\u0443 \u0432\u0441\u0442\u0440\u0435\u0447\u0430\u044e\u0442\u0441\u044f \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u044b\u0435 \u043a\u043e\u043c\u0430\u043d\u0434\u044b, \u0432\u0435\u0440\u0441\u0438\u0438 \u043f\u0430\u043a\u0435\u0442\u043e\u0432 \u0438 \u0437\u0430\u043c\u0435\u0440\u044b, \u0438 \u0432\u0441\u0435 \u043e\u043d\u0438 \u0441\u043d\u044f\u0442\u044b \u043d\u0430 \u044d\u0442\u043e\u0439 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438:<\/p>\n<div>\n<div class=\"table\">\n<table>\n<tbody>\n<tr>\n<td data-colwidth=\"180\" width=\"180\">\n<p align=\"left\">\u0422\u0438\u043f \u043e\u0431\u043e\u0440\u0443\u0434\u043e\u0432\u0430\u043d\u0438\u044f<\/p>\n<\/td>\n<td data-colwidth=\"194\" width=\"194\">\n<p align=\"left\">\u041c\u043e\u0434\u0435\u043b\u044c<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u041e\u0431\u043e\u0441\u043d\u043e\u0432\u0430\u043d\u0438\u0435 \u0432\u044b\u0431\u043e\u0440\u0430<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"180\" width=\"180\">\n<p align=\"left\">\u0412\u0438\u0434\u0435\u043e\u043a\u0430\u0440\u0442\u0430<\/p>\n<\/td>\n<td data-colwidth=\"194\" width=\"194\">\n<p align=\"left\">1x RTX 3090 \u043d\u0430 24 \u0433\u0438\u0433\u0430\u0431\u0430\u0439\u0442\u0430<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0421\u0430\u043c\u0430\u044f \u0434\u0435\u0448\u0435\u0432\u0430\u044f \u043f\u043e\u0437\u0438\u0446\u0438\u044f \u0441 \u0442\u0430\u043a\u0438\u043c \u043e\u0431\u044a\u0435\u043c\u043e\u043c \u043f\u0430\u043c\u044f\u0442\u0438, \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0430 Ampere \u043f\u0440\u043e\u0445\u043e\u0434\u0438\u0442 \u043f\u043e \u0442\u0435\u043a\u0443\u0449\u0435\u0439 \u0432\u0435\u0442\u043a\u0435 CUDA<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"180\" width=\"180\">\n<p align=\"left\">\u041f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440<\/p>\n<\/td>\n<td data-colwidth=\"194\" width=\"194\">\n<p align=\"left\">Ryzen 5900X, 12 \u044f\u0434\u0435\u0440 \u0438 24 \u043f\u043e\u0442\u043e\u043a\u0430<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u041e\u0442 \u0447\u0435\u0442\u044b\u0440\u0435\u0445 \u0434\u043e \u0432\u043e\u0441\u044c\u043c\u0438 \u044f\u0434\u0435\u0440 \u043d\u0430 \u043a\u0430\u0440\u0442\u0443, \u043f\u0440\u0438 \u043c\u0435\u043d\u044c\u0448\u0435\u043c \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u0435 \u0437\u0430\u0433\u0440\u0443\u0437\u0447\u0438\u043a \u0434\u0430\u043d\u043d\u044b\u0445 \u043d\u0435 \u0443\u0441\u043f\u0435\u0432\u0430\u0435\u0442 \u0435\u0435 \u043a\u043e\u0440\u043c\u0438\u0442\u044c<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"180\" width=\"180\">\n<p align=\"left\">\u041e\u043f\u0435\u0440\u0430\u0442\u0438\u0432\u043d\u0430\u044f \u043f\u0430\u043c\u044f\u0442\u044c<\/p>\n<\/td>\n<td data-colwidth=\"194\" width=\"194\">\n<p align=\"left\">64 \u0433\u0438\u0433\u0430\u0431\u0430\u0439\u0442f<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0423\u0434\u0432\u043e\u0435\u043d\u043d\u0430\u044f \u0432\u0438\u0434\u0435\u043e\u043f\u0430\u043c\u044f\u0442\u044c \u043f\u043b\u044e\u0441 \u0437\u0430\u043f\u0430\u0441 \u043d\u0430 \u0434\u0432\u0430-\u0442\u0440\u0438 \u043e\u0434\u043d\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0449\u0438\u0445 \u044f\u0434\u0440\u0430 JupyterLab<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"180\" width=\"180\">\n<p align=\"left\">\u0414\u0438\u0441\u043a<\/p>\n<\/td>\n<td data-colwidth=\"194\" width=\"194\">\n<p align=\"left\">1 \u0442\u0435\u0440\u0430\u0431\u0430\u0439\u0442 NVMe<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u041d\u0430\u0431\u043e\u0440\u044b \u0434\u0430\u043d\u043d\u044b\u0445, \u043a\u0435\u0448 \u0437\u0430\u0433\u0440\u0443\u0436\u0435\u043d\u043d\u044b\u0445 \u043c\u043e\u0434\u0435\u043b\u0435\u0439, \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u044f \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439 \u0438 \u043f\u0440\u043e\u043c\u0435\u0436\u0443\u0442\u043e\u0447\u043d\u044b\u0435 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"180\" width=\"180\">\n<p align=\"left\">\u041e\u043f\u0435\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u0430\u044f \u0441\u0438\u0441\u0442\u0435\u043c\u0430<\/p>\n<\/td>\n<td data-colwidth=\"194\" width=\"194\">\n<p align=\"left\">Ubuntu 26.04 LTS, \u044f\u0434\u0440\u043e 7.0.0-29<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0421\u0432\u0435\u0436\u0430\u044f \u0432\u0435\u0440\u0441\u0438\u044f \u0441 \u0434\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0439 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u043e\u0439<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td data-colwidth=\"180\" width=\"180\">\n<p align=\"left\">\u0422\u0430\u0440\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u044f<\/p>\n<\/td>\n<td data-colwidth=\"194\" width=\"194\">\n<p align=\"left\">\u041f\u043e\u0447\u0430\u0441\u043e\u0432\u0430\u044f<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0421\u0442\u0435\u043d\u0434 \u0431\u0440\u0430\u043b\u0441\u044f \u043f\u043e\u0434 \u0440\u0430\u0437\u043e\u0432\u0443\u044e \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0443, \u043f\u0440\u0438 \u043f\u043e\u0441\u0442\u043e\u044f\u043d\u043d\u043e\u0439 \u0440\u0430\u0431\u043e\u0442\u0435 \u0432\u044b\u0433\u043e\u0434\u043d\u0435\u0435 \u0434\u043e\u043b\u0433\u043e\u0441\u0440\u043e\u0447\u043d\u0430\u044f \u0430\u0440\u0435\u043d\u0434\u0430<\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<h3>\u041f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043a\u0430 \u0441\u0435\u0440\u0432\u0435\u0440\u0430<\/h3>\n<p>\u0417\u0430\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u043c \u0441\u0435\u0440\u0432\u0435\u0440 \u0438 \u0434\u043e\u0436\u0438\u0434\u0430\u0435\u043c\u0441\u044f \u0435\u0433\u043e \u0441\u0434\u0430\u0447\u0438. \u041f\u0435\u0440\u0432\u043e\u0435, \u0447\u0442\u043e \u043d\u0430\u043c \u043d\u0443\u0436\u043d\u043e, \u044d\u0442\u043e \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0442\u044c \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u044c \u043c\u0430\u0448\u0438\u043d\u044b \u0434\u043e \u0442\u043e\u0433\u043e \u043c\u043e\u043c\u0435\u043d\u0442\u0430, \u043a\u0430\u043a \u043d\u0430 \u043d\u0435\u0439 \u043f\u043e\u044f\u0432\u0438\u0442\u0441\u044f \u0432\u0435\u0431-\u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441. \u0421\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0435\u043d\u043d\u043e, \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u043c \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435 \u0441\u0438\u0441\u0442\u0435\u043c\u044b, \u043d\u0430\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0435\u043c \u0447\u0430\u0441\u043e\u0432\u043e\u0439 \u043f\u043e\u044f\u0441, \u0443\u0447\u0435\u0442\u043d\u044b\u0435 \u0437\u0430\u043f\u0438\u0441\u0438 \u0438 \u043c\u0435\u0436\u0441\u0435\u0442\u0435\u0432\u043e\u0439 \u044d\u043a\u0440\u0430\u043d:<\/p>\n<pre><code class=\"bash\">apt update &amp;&amp; apt full-upgrade -y # \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435 \u043f\u0430\u043a\u0435\u0442\u043e\u0432 \u0434\u043e \u0442\u0435\u043a\u0443\u0449\u0438\u0445 \u0432\u0435\u0440\u0441\u0438\u0439timedatectl set-timezone Europe\/Moscow # \u0437\u0430\u0434\u0430\u0451\u0442 \u0447\u0430\u0441\u043e\u0432\u043e\u0439 \u043f\u043e\u044f\u0441 \u0441\u0438\u0441\u0442\u0435\u043c\u044bapt install -y git curl htop tmux rsync ufw bc # \u0431\u0430\u0437\u043e\u0432\u044b\u0439 \u043d\u0430\u0431\u043e\u0440 \u0443\u0442\u0438\u043b\u0438\u0442<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:87px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u041e\u0431\u0440\u0430\u0437\u044b \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432 \u043f\u0440\u0438\u0435\u0437\u0436\u0430\u044e\u0442 \u043c\u0438\u043d\u0438\u043c\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u043c\u0438, \u043e \u0447\u0451\u043c \u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u0441\u043e\u043e\u0431\u0449\u0430\u0435\u0442 \u043f\u0440\u044f\u043c\u043e \u043f\u0440\u0438 \u0432\u0445\u043e\u0434\u0435 \u0441\u0442\u0440\u043e\u043a\u043e\u0439 \u043f\u0440\u043e \u0443\u0434\u0430\u043b\u0451\u043d\u043d\u044b\u0435 \u043f\u0430\u043a\u0435\u0442\u044b. \u041e\u0442\u0441\u044e\u0434\u0430 \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0438\u0435 <strong>rsync<\/strong> \u0438 <strong>ufw<\/strong>, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0432 \u043f\u0440\u043e\u0448\u043b\u044b\u0445 \u0432\u0435\u0440\u0441\u0438\u044f\u0445 \u0441\u0442\u043e\u044f\u043b\u0438 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e, \u0430 \u0431\u0435\u0437 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0447\u0430\u0441\u043e\u0432\u043e\u0433\u043e \u043f\u043e\u044f\u0441\u0430 \u0444\u0430\u0439\u043b\u043e\u0432\u044b\u0439 \u0431\u0440\u0430\u0443\u0437\u0435\u0440 JupyterLab \u0431\u0443\u0434\u0435\u0442 \u043f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0442\u044c \u0432\u0440\u0435\u043c\u044f \u043e\u0448\u0438\u0431\u043e\u0447\u043d\u043e, \u043c\u0435\u043b\u043e\u0447\u044c, \u043d\u043e \u043d\u0435\u043f\u0440\u0438\u044f\u0442\u043d\u043e.\u00a0<\/p>\n<p>\u0414\u0430\u043b\u0435\u0435 \u0434\u043e\u0431\u0430\u0432\u0438\u043c \u043e\u0431\u044b\u0447\u043d\u044b\u0435 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0435 \u0443\u0447\u0435\u0442\u043d\u044b\u0435 \u0437\u0430\u043f\u0438\u0441\u0438, \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u0432\u0445\u043e\u0434 \u0432 \u0432\u0435\u0431-\u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u043f\u043e\u0439\u0434\u0451\u0442 \u0447\u0435\u0440\u0435\u0437 \u0442\u043e\u0442 \u0436\u0435 \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c, \u0447\u0442\u043e \u0438 \u0432\u0445\u043e\u0434 \u043f\u043e SSH:<\/p>\n<pre><code class=\"bash\">useradd -m -s \/bin\/bash analyst1 # -m \u0441\u043e\u0437\u0434\u0430\u0435\u0442 \u0434\u043e\u043c\u0430\u0448\u043d\u0438\u0439 \u043a\u0430\u0442\u0430\u043b\u043e\u0433, -s \u0437\u0430\u0434\u0430\u0435\u0442 \u043e\u0431\u043e\u043b\u043e\u0447\u043a\u0443useradd -m -s \/bin\/bash analyst2echo 'analyst1:\u041f\u0430\u0440\u043e\u043b\u044c\u041f\u0435\u0440\u0432\u044b\u0439' | chpasswd # \u0437\u0430\u0434\u0430\u0435\u0442 \u043f\u0430\u0440\u043e\u043b\u044cecho 'analyst2:\u041f\u0430\u0440\u043e\u043b\u044c\u0412\u0442\u043e\u0440\u043e\u0439' | chpasswdpasswd -S analyst1 &amp;&amp; passwd -S analyst2 # \u043f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u043f\u0430\u0440\u043e\u043b\u044f<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u0411\u0435\u0437 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0430 <strong>-m<\/strong> \u0434\u043e\u043c\u0430\u0448\u043d\u0438\u0439 \u043a\u0430\u0442\u0430\u043b\u043e\u0433 \u043d\u0435 \u0441\u043e\u0437\u0434\u0430\u0441\u0442\u0441\u044f, \u0430 \u0431\u0435\u0437 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0430 <strong>-s<\/strong> \u043e\u0431\u043e\u043b\u043e\u0447\u043a\u0430 \u0432\u043e\u0437\u044c\u043c\u0451\u0442\u0441\u044f \u0438\u0437 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0445 \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043a \u0438 \u043d\u0435\u0440\u0435\u0434\u043a\u043e \u043e\u043a\u0430\u0436\u0435\u0442\u0441\u044f \u0443\u0440\u0435\u0437\u0430\u043d\u043d\u043e\u0439, \u0447\u0442\u043e \u0432\u044b\u043b\u0435\u0437\u0435\u0442 \u0432 \u0442\u0435\u0440\u043c\u0438\u043d\u0430\u043b\u0435 \u0432\u043d\u0443\u0442\u0440\u0438 JupyterLab. \u041f\u043e\u0441\u043b\u0435\u0434\u043d\u044f\u044f \u043a\u043e\u043c\u0430\u043d\u0434\u0430 \u043f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u043f\u0430\u0440\u043e\u043b\u044f, \u0433\u0434\u0435 \u0432\u043e \u0432\u0442\u043e\u0440\u043e\u043c \u043f\u043e\u043b\u0435 \u043e\u0431\u044f\u0437\u0430\u043d\u0430 \u0441\u0442\u043e\u044f\u0442\u044c \u0431\u0443\u043a\u0432\u0430 <strong>P<\/strong>, \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 <strong>L<\/strong> \u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442 \u0437\u0430\u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u0443\u044e \u0443\u0447\u0451\u0442\u043d\u0443\u044e \u0437\u0430\u043f\u0438\u0441\u044c, \u043f\u0440\u0438 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u0432\u0445\u043e\u0434 \u043d\u0435 \u043f\u0440\u043e\u0439\u0434\u0435\u0442.<\/p>\n<p>\u0417\u0430\u0434\u0430\u0432\u0430\u0442\u044c \u043f\u0430\u0440\u043e\u043b\u0438 \u0447\u0435\u0440\u0435\u0437 <strong>chpasswd<\/strong> \u0443\u0434\u043e\u0431\u043d\u043e \u0434\u043b\u044f \u0441\u0442\u0435\u043d\u0434\u0430, \u043d\u043e \u043d\u0430 \u0431\u043e\u0435\u0432\u043e\u0439 \u043c\u0430\u0448\u0438\u043d\u0435 \u043f\u0430\u0440\u043e\u043b\u044c \u043e\u0441\u0442\u0430\u0435\u0442\u0441\u044f \u0432 \u0438\u0441\u0442\u043e\u0440\u0438\u0438 \u043a\u043e\u043c\u0430\u043d\u0434 \u043e\u0431\u043e\u043b\u043e\u0447\u043a\u0438,\u00a0 \u0442\u0430\u043c \u0440\u0430\u0437\u0443\u043c\u043d\u0435\u0435 \u0438\u043d\u0442\u0435\u0440\u0430\u043a\u0442\u0438\u0432\u043d\u044b\u0439 \u0432\u044b\u0437\u043e\u0432 <strong>passwd<\/strong>.<\/p>\n<p>\u041c\u0435\u0436\u0441\u0435\u0442\u0435\u0432\u043e\u0439 \u044d\u043a\u0440\u0430\u043d \u043d\u0430\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0435\u043c \u0434\u043e \u0442\u043e\u0433\u043e, \u043a\u0430\u043a \u043f\u043e\u0434\u043d\u044f\u0442 \u0445\u0430\u0431:<\/p>\n<pre><code class=\"bash\">ufw default deny incoming # \u0432\u0445\u043e\u0434\u044f\u0449\u0438\u0435 \u0437\u0430\u043a\u0440\u044b\u0442\u044b \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044eufw default allow outgoing # \u0438\u0441\u0445\u043e\u0434\u044f\u0449\u0438\u0435 \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u044bufw allow 22\/tcp # \u0434\u043e\u0441\u0442\u0443\u043f \u043f\u043e SSHufw allow 80\/tcp # \u0432\u0435\u0431-\u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u0447\u0435\u0440\u0435\u0437 \u043f\u0440\u043e\u043a\u0441\u0438ufw allow 443\/tcp # \u043e\u043d \u0436\u0435 \u0441 \u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u0435\u043cufw --force enable # \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435, \u0442\u0435\u043a\u0443\u0449\u0435\u0435 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 \u043d\u0435 \u043e\u0431\u0440\u044b\u0432\u0430\u0435\u0442\u0441\u044f<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u0425\u0430\u0431 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u043d\u0430 8000 \u043f\u043e\u0440\u0442\u0443, \u0438 \u0435\u0433\u043e \u043d\u0435 \u043e\u0442\u043a\u0440\u044b\u0432\u0430\u0435\u043c. \u0421\u043d\u0430\u0440\u0443\u0436\u0438 \u043c\u0430\u0448\u0438\u043d\u0430 \u043f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442 \u043e\u0431\u044b\u0447\u043d\u044b\u0435 \u0432\u0435\u0431-\u043f\u043e\u0440\u0442\u044b, \u0430 \u043a \u0441\u0430\u043c\u043e\u043c\u0443 \u0445\u0430\u0431\u0443 \u043e\u0431\u0440\u0430\u0449\u0430\u0435\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u044b\u0439 \u043f\u0440\u043e\u043a\u0441\u0438.<\/p>\n<h3>\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u0434\u0440\u0430\u0439\u0432\u0435\u0440\u043e\u0432 NVIDIA \u0438 CUDA<\/h3>\n<p>\u0414\u043e \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u0434\u0440\u0430\u0439\u0432\u0435\u0440\u0430 \u043c\u043e\u0436\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c <a href=\"https:\/\/hostkey.ru\/documentation\/technical\/gpu\/nvidia_gpu_linux\/#%D1%81%D0%BA%D1%80%D0%B8%D0%BF%D1%82-%D0%B4%D0%BB%D1%8F-%D1%83%D1%81%D1%82%D0%B0%D0%BD%D0%BE%D0%B2%D0%BA%D0%B8\">\u043d\u0430\u0448 \u201c\u043c\u0430\u0433\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u0441\u043a\u0440\u0438\u043f\u0442\u201d<\/a>, \u043d\u043e \u043c\u044b \u043f\u043e\u043a\u0430\u0436\u0435\u043c, \u043a\u0430\u043a\u00a0 \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u044c \u0431\u0430\u0437\u043e\u0432\u044b\u0435 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 \u0438 \u043f\u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0435\u0433\u043e \u0432\u0440\u0443\u0447\u043d\u0443\u044e:<\/p>\n<p>\u0414\u043b\u044f \u043d\u0430\u0447\u0430\u043b\u0430 \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u043c, \u043a\u0430\u043a\u0430\u044f \u0443 \u043d\u0430\u0441 \u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u0438 \u0447\u0442\u043e \u0432\u043e\u043e\u0431\u0449\u0435 \u043d\u0430 \u043d\u0435\u0439 \u0442\u0432\u043e\u0440\u0438\u0442\u0441\u044f.<\/p>\n<pre><code class=\"bash\">lspci | grep -i nvidia # \u0432\u0438\u0434\u0438\u0442 \u043b\u0438 \u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u043a\u0430\u0440\u0442\u0443 \u043d\u0430 \u0448\u0438\u043d\u0435mokutil --sb-state # \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 Secure Bootuname -r # \u043f\u043e\u0434 \u044d\u0442\u043e \u044f\u0434\u0440\u043e \u0431\u0443\u0434\u0435\u0442 \u0441\u043e\u0431\u0440\u0430\u043d \u043c\u043e\u0434\u0443\u043b\u044c<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u0412\u044b\u0432\u043e\u0434 \u043d\u0430 \u043d\u0430\u0448\u0435\u043c \u0441\u0442\u0435\u043d\u0434\u0435:<\/p>\n<pre><code class=\"bash\">2b:00.0 VGA compatible controller: NVIDIA Corporation GA102\u00a0\u00a0\u00a0\u00a0[GeForce RTX 3090] (rev a1)2b:00.1 Audio device: NVIDIA Corporation GA102 High Definition\u00a0\u00a0\u00a0\u00a0Audio Controller (rev a1)SecureBoot disabledPlatform is in Setup Mode\u00a0\u00a0\u00a0\u00a07.0.0-29-generic<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u0414\u0440\u0430\u0439\u0432\u0435\u0440 \u0441\u043e\u0431\u0438\u0440\u0430\u0435\u0442 \u043c\u043e\u0434\u0443\u043b\u044c \u044f\u0434\u0440\u0430 \u043f\u0440\u044f\u043c\u043e \u043d\u0430 \u043c\u0430\u0448\u0438\u043d\u0435, \u0438 \u043f\u0440\u0438 \u0430\u043a\u0442\u0438\u0432\u043d\u043e\u0439 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0435 \u043f\u043e\u0434\u043f\u0438\u0441\u0438 \u043c\u043e\u0434\u0443\u043b\u044c \u043d\u0435 \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u0441\u044f, \u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0435\u0440\u0435\u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u043a\u0430\u0440\u0442\u0430 \u043f\u0440\u043e\u043f\u0430\u0434\u0451\u0442. \u041c\u043e\u0434\u0443\u043b\u044c \u0434\u0440\u0430\u0439\u0432\u0435\u0440\u0430 \u0431\u0443\u0434\u0435\u0442 \u0441\u043e\u0431\u0440\u0430\u043d \u043f\u043e\u0434 \u0432\u0435\u0440\u0441\u0438\u044e \u044f\u0434\u0440\u0430, \u0435\u0441\u043b\u0438 \u043e\u0431\u043d\u043e\u0432\u0438\u0442\u044c \u044f\u0434\u0440\u043e \u0431\u0435\u0437 \u043f\u0435\u0440\u0435\u0441\u0431\u043e\u0440\u043a\u0438 \u043c\u043e\u0434\u0443\u043b\u044f, \u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u043f\u0435\u0440\u0435\u0441\u0442\u0430\u043d\u0435\u0442 \u0432\u0438\u0434\u0435\u0442\u044c \u043f\u0440\u0438 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u043c \u0441\u0442\u0430\u0440\u0442\u0435.\u00a0<\/p>\n<p>\u0414\u043b\u044f \u0442\u043e\u0433\u043e \u0447\u0442\u043e\u0431\u044b \u0438\u0437\u0431\u0435\u0436\u0430\u0442\u044c \u043f\u043e\u0434\u043e\u0431\u043d\u044b\u0445 \u043f\u0440\u043e\u0431\u043b\u0435\u043c, \u043f\u043e\u0441\u0442\u0430\u0432\u0438\u043c \u0434\u0440\u0430\u0439\u0432\u0435\u0440 \u0438\u0437 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u044f NVIDIA, \u0430 \u043d\u0435 \u0447\u0435\u0440\u0435\u0437 \u0444\u0430\u0439\u043b-\u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0449\u0438\u043a, \u0442\u0430\u043a \u043e\u043d \u0431\u0443\u0434\u0435\u0442 \u0442\u043e\u0447\u043d\u043e \u043e\u0431\u043d\u043e\u0432\u043b\u044f\u0442\u044c\u0441\u044f \u0432\u043c\u0435\u0441\u0442\u0435 \u0441 \u0441\u0438\u0441\u0442\u0435\u043c\u043e\u0439:<\/p>\n<pre><code class=\"bash\">wget https:\/\/developer.download.nvidia.com\/compute\/cuda\/repos\/ubuntu2604\/x86_64\/cuda-keyring_1.1-1_all.debdpkg -i cuda-keyring_1.1-1_all.deb # \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0435\u0442 \u043a\u043b\u044e\u0447 \u0438 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0439apt update # \u043e\u0431\u043d\u043e\u0432\u043b\u044f\u0435\u0442 \u0441\u043f\u0438\u0441\u043e\u043a \u043f\u0430\u043a\u0435\u0442\u043e\u0432apt search nvidia-open | head # \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0435\u043c \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0435 \u0432\u0435\u0440\u0441\u0438\u0438<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u041d\u0430\u0445\u043e\u0434\u0438\u043c:<\/p>\n<pre><code class=\"bash\">nvidia-open\/unknown 610.57.04-1ubuntu1 amd64\u00a0\u00a0NVIDIA Driver meta-package, Open GPU kernel modules, latest version<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u041c\u0435\u0442\u043a\u0430 <strong>unknown<\/strong> \u0441\u043e\u043e\u0431\u0449\u0430\u0435\u0442 \u043e \u0442\u043e\u043c, \u0447\u0442\u043e \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0439 NVIDIA \u043d\u0435 \u043f\u0440\u0438\u0432\u044f\u0437\u0430\u043d \u043a \u043a\u043e\u0434\u043e\u0432\u043e\u043c\u0443 \u0438\u043c\u0435\u043d\u0438 \u0432\u044b\u043f\u0443\u0441\u043a\u0430 Ubuntu. \u0412 \u043f\u0430\u043a\u0435\u0442\u0435 <strong>nvidia-open<\/strong> \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442\u0441\u044f \u0434\u0440\u0430\u0439\u0432\u0435\u0440 \u0441 \u043e\u0442\u043a\u0440\u044b\u0442\u044b\u043c\u0438 \u043c\u043e\u0434\u0443\u043b\u044f\u043c\u0438 \u044f\u0434\u0440\u0430, \u0438 \u043e\u043d \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u043c \u0434\u043b\u044f \u043a\u0430\u0440\u0442 \u043f\u043e\u043a\u043e\u043b\u0435\u043d\u0438\u044f Ampere. \u0421\u0442\u0430\u0432\u0438\u043c \u0435\u0433\u043e \u0438 \u043f\u0435\u0440\u0435\u0437\u0430\u0433\u0440\u0443\u0436\u0430\u0435\u043c\u0441\u044f:<\/p>\n<pre><code class=\"bash\">apt install -y nvidia-open # \u0434\u0440\u0430\u0439\u0432\u0435\u0440 \u0441 \u043e\u0442\u043a\u0440\u044b\u0442\u044b\u043c\u0438 \u043c\u043e\u0434\u0443\u043b\u044f\u043c\u0438 \u044f\u0434\u0440\u0430reboot\u00a0 #\u043f\u0435\u0440\u0435\u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0430<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u041f\u043e\u0441\u043b\u0435 \u043f\u0435\u0440\u0435\u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0435\u043c:<\/p>\n<pre><code class=\"bash\">nvidia-smi<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442:<\/p>\n<figure class=\"full-width \"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/06c\/313\/8f9\/06c3138f94be133955c9cec1bbcb8276.png\" width=\"780\" height=\"260\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/getpro\/habr\/upload_files\/06c\/313\/8f9\/06c3138f94be133955c9cec1bbcb8276.png 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/06c\/313\/8f9\/06c3138f94be133955c9cec1bbcb8276.png 781w\" loading=\"lazy\" decode=\"async\"\/><\/figure>\n<p>\u041d\u043e\u0432\u0430\u044f \u0448\u0430\u043f\u043a\u0430 \u0432\u044b\u0432\u043e\u0434\u0430 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u0442 \u0442\u0440\u0438 \u043f\u043e\u043b\u044f, \u0432 \u043d\u0438\u0445 \u0443\u043a\u0430\u0437\u0430\u043d\u044b \u0432\u0435\u0440\u0441\u0438\u044f \u0443\u0442\u0438\u043b\u0438\u0442\u044b \u0438 \u043c\u043e\u0434\u0443\u043b\u044f \u044f\u0434\u0440\u0430, \u0430 \u0442\u0430\u043a\u0436\u0435 \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u0430\u044f \u0432\u0435\u0440\u0441\u0438\u044f CUDA, \u043a\u043e\u0442\u043e\u0440\u0443\u044e \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442 \u0434\u0440\u0430\u0439\u0432\u0435\u0440. \u041a\u043e\u0440\u0440\u0435\u043a\u0446\u0438\u044f \u043e\u0448\u0438\u0431\u043e\u043a \u043f\u0430\u043c\u044f\u0442\u0438 \u043d\u0435\u0434\u043e\u0441\u0442\u0443\u043f\u043d\u0430, \u0438 \u044d\u0442\u043e \u043d\u043e\u0440\u043c\u0430\u043b\u044c\u043d\u043e \u0434\u043b\u044f \u0438\u0433\u0440\u043e\u0432\u043e\u0433\u043e \u0433\u0440\u0430\u0444\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u0430, \u043a\u0430\u043a \u0438 \u043f\u0443\u0441\u0442\u043e\u0435 \u043f\u043e\u043b\u0435 <strong>MIG M<\/strong>.<\/p>\n<p>\u0418 \u043a\u0430\u043a \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0438\u0439 \u0448\u0442\u0440\u0438\u0445 \u043f\u043e\u0441\u0442\u0430\u0432\u0438\u043c \u043f\u043e\u0441\u0442\u0430\u0432\u0438\u043c \u0441\u043b\u0443\u0436\u0431\u0443 \u0434\u043b\u044f \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u044f \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u044f \u0434\u0440\u0430\u0439\u0432\u0435\u0440\u0430:<\/p>\n<pre><code class=\"bash\">systemctl enable --now nvidia-persistenced<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u0411\u0435\u0437 \u044d\u0442\u043e\u0439 \u0441\u043b\u0443\u0436\u0431\u044b \u0434\u0440\u0430\u0439\u0432\u0435\u0440 \u0431\u0443\u0434\u0435\u0442 \u0432\u044b\u0433\u0440\u0443\u0436\u0430\u0442\u044c\u0441\u044f \u0432\u043e \u0432\u0440\u0435\u043c\u044f \u043f\u0440\u043e\u0441\u0442\u043e\u044f \u043a\u0430\u0440\u0442\u044b, \u0447\u0442\u043e \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u0442 \u043a \u0437\u0430\u0434\u0435\u0440\u0436\u043a\u0435 \u043d\u0430 \u0438\u043d\u0438\u0446\u0438\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044e \u043f\u0440\u0438 \u043f\u043e\u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u043c \u0437\u0430\u043f\u0443\u0441\u043a\u0435.<\/p>\n<h3>\u041d\u0443\u0436\u0435\u043d \u043b\u0438 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0439 \u043d\u0430\u0431\u043e\u0440 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u043e\u0432 CUDA<\/h3>\n<p>\u0412\u043e\u043f\u0440\u043e\u0441 \u043d\u0435 \u0441\u0430\u043c\u044b\u0439 \u043f\u0440\u043e\u0441\u0442\u043e\u0439. \u0414\u0430\u0432\u0430\u0439\u0442\u0435 \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u043c, \u043d\u0443\u0436\u0435\u043d \u043b\u0438 \u043d\u0430\u043c CUDA Toolkit \u0434\u043b\u044f \u043d\u0430\u0448\u0435\u0439 \u0437\u0430\u0434\u0430\u0447\u0438:<\/p>\n<pre><code class=\"bash\">nvcc --version<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442:<\/p>\n<pre><code class=\"bash\">-bash: nvcc: command not found<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u041a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440\u0430 \u0432 \u0441\u0438\u0441\u0442\u0435\u043c\u0435 \u043d\u0435\u0442, \u043d\u043e \u043d\u0430\u0448\u0430 \u043a\u0430\u0440\u0442\u0430 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442, \u0432 \u0447\u0451\u043c \u043c\u044b \u0443\u0431\u0435\u0434\u0438\u043c\u0441\u044f \u0434\u0430\u043b\u044c\u0448\u0435. \u0413\u043e\u0442\u043e\u0432\u044b\u0435 \u0441\u0431\u043e\u0440\u043a\u0438 PyTorch \u043f\u0440\u0438\u043d\u043e\u0441\u044f\u0442 \u043a\u043e\u043f\u0438\u0438 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a CUDA (\u043f\u0430\u043a\u0435\u0442\u044b \u0441 \u043f\u0440\u0438\u0441\u0442\u0430\u0432\u043a\u043e\u0439 <strong>nvidia<\/strong>), \u0438 \u043e\u0442 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0438\u043c \u043d\u0443\u0436\u0435\u043d \u0442\u043e\u043b\u044c\u043a\u043e \u0434\u0440\u0430\u0439\u0432\u0435\u0440. \u0415\u0441\u043b\u0438 \u0443\u043f\u0440\u043e\u0441\u0442\u0438\u0442\u044c, \u0442\u043e \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0439 \u043d\u0430\u0431\u043e\u0440 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u043e\u0432 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c \u0432 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u043c \u0434\u043b\u044f \u0441\u0431\u043e\u0440\u043a\u0438 \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0445 \u0432\u044b\u0447\u0438\u0441\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u044f\u0434\u0435\u0440 \u0438 \u043f\u0440\u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0435 \u0441\u0442\u043e\u0440\u043e\u043d\u043d\u0438\u0445 \u043f\u0430\u043a\u0435\u0442\u043e\u0432 \u0438\u0437 \u0438\u0441\u0445\u043e\u0434\u043d\u0438\u043a\u043e\u0432, \u0430 \u0432\u043e\u0442 \u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0441 \u0433\u043e\u0442\u043e\u0432\u044b\u043c\u0438 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0430\u043c\u0438 \u043e\u043d \u043d\u0435 \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f. \u0411\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0430 cuDNN \u0442\u043e\u0436\u0435 \u043d\u0435 \u0442\u0440\u0435\u0431\u0443\u0435\u0442 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e\u0439 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u0438 \u0434\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0432\u043c\u0435\u0441\u0442\u0435 \u0441 PyTorch \u043f\u0430\u043a\u0435\u0442\u043e\u043c <strong>nvidia-cudnn-cu13<\/strong>.<\/p>\n<h3>\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 Python \u0438 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0445 \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u0439<\/h3>\n<p>Ubuntu 26.04 \u043f\u0440\u0438\u0435\u0437\u0436\u0430\u0435\u0442 \u0441 Python 3.14.<\/p>\n<pre><code class=\"bash\">python3 -V # \u0432\u0435\u0440\u0441\u0438\u044f \u0438\u043d\u0442\u0435\u0440\u043f\u0440\u0435\u0442\u0430\u0442\u043e\u0440\u0430 \u0432 \u0441\u0438\u0441\u0442\u0435\u043c\u0435Python 3.14.4<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u041a\u043e\u043c\u0430\u043d\u0434\u0430 <strong>apt policy python3<\/strong> \u043f\u043e\u043a\u0430\u0436\u0435\u0442 \u0432\u0435\u0440\u0441\u0438\u044e 3.14.3, \u0438 \u0440\u0430\u0441\u0445\u043e\u0436\u0434\u0435\u043d\u0438\u0435 \u0442\u0443\u0442 \u043d\u043e\u0440\u043c\u0430\u043b\u044c\u043d\u043e\u0435, \u0432\u0435\u0434\u044c <strong>python3<\/strong> \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043c\u0435\u0442\u0430\u043f\u0430\u043a\u0435\u0442\u043e\u043c \u0441\u043e \u0441\u0432\u043e\u0435\u0439 \u043d\u0443\u043c\u0435\u0440\u0430\u0446\u0438\u0435\u0439, \u0430 \u0441\u0430\u043c \u0438\u043d\u0442\u0435\u0440\u043f\u0440\u0435\u0442\u0430\u0442\u043e\u0440 \u043f\u0440\u0438\u0445\u043e\u0434\u0438\u0442 \u043f\u0430\u043a\u0435\u0442\u043e\u043c <strong>python3.14<\/strong> \u0438 \u043e\u0431\u043d\u043e\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e.<\/p>\n<p>\u041f\u043e\u043f\u044b\u0442\u043a\u0430 \u043f\u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0447\u0442\u043e-\u043d\u0438\u0431\u0443\u0434\u044c \u043d\u0430\u043f\u0440\u044f\u043c\u0443\u044e \u0437\u0430\u043a\u0430\u043d\u0447\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u043e\u0442\u043a\u0430\u0437\u043e\u043c:<\/p>\n<pre><code class=\"bash\">\u00a0\u00a0\u00a0\u00a0error: externally-managed-environment\u00a0\u00a0\u00a0\u00a0\u00d7 This environment is externally managed\u00a0\u00a0\u00a0\u00a0\u2570\u2500&gt; To install Python packages system-wide, try apt install\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0python3-xyz, where xyz is the package you are trying to\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0install.\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0If you wish to install a non-Debian-packaged Python package,\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0create a virtual environment using python3 -m venv path\/to\/venv.<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u041f\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u043e\u043f\u0438\u0441\u0430\u043d\u043e \u0432 \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d\u0438\u0438 PEP 668. \u0421\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0439 \u0438\u043d\u0442\u0435\u0440\u043f\u0440\u0435\u0442\u0430\u0442\u043e\u0440 \u043f\u0440\u0438\u043d\u0430\u0434\u043b\u0435\u0436\u0438\u0442 \u043c\u0435\u043d\u0435\u0434\u0436\u0435\u0440\u0443 \u043f\u0430\u043a\u0435\u0442\u043e\u0432, \u043d\u0430 \u043d\u0451\u043c \u0436\u0435 \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u0430 \u0447\u0430\u0441\u0442\u044c \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0445 \u0443\u0442\u0438\u043b\u0438\u0442, \u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u0441\u0442\u043e\u0440\u043e\u043d\u043d\u0438\u0445 \u043f\u0430\u043a\u0435\u0442\u043e\u0432 \u043f\u043e\u0432\u0435\u0440\u0445 \u043d\u0438\u0445 \u043f\u0440\u0438\u0432\u043e\u0434\u0438\u0442 \u043a \u0441\u0431\u043e\u044f\u043c \u0432 \u0440\u0430\u0431\u043e\u0442\u0435 \u0441\u0430\u043c\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u044b. \u0421\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u0443\u043f\u043e\u043c\u0438\u043d\u0430\u0435\u0442 \u0444\u043b\u0430\u0433 <strong>&#8212;break-system-packages<\/strong>, \u0441\u043d\u0438\u043c\u0430\u044e\u0449\u0438\u0439 \u0437\u0430\u043f\u0440\u0435\u0442 \u0432\u043c\u0435\u0441\u0442\u0435 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439. \u0421\u0442\u0430\u0432\u0438\u043c \u043f\u0430\u043a\u0435\u0442\u044b, \u043a\u043e\u0442\u043e\u0440\u044b\u043c\u0438 \u0441\u043e\u0437\u0434\u0430\u044e\u0442\u0441\u044f \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u044b\u0435 \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u044f:<\/p>\n<pre><code class=\"bash\">apt install -y python3-venv python3-pip python3-dev \u00a0 # \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u044f, \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430, \u0441\u0431\u043e\u0440\u043a\u0430 \u043f\u0430\u043a\u0435\u0442\u043e\u0432<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u0412 \u043d\u0430\u0448\u0435\u0439 \u0441\u0445\u0435\u043c\u0435 \u0431\u0443\u0434\u0443\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0434\u0432\u0430 \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u044f. \u0425\u0430\u0431 \u0440\u0430\u0441\u043f\u043e\u043b\u043e\u0436\u0435\u043d \u043f\u043e \u043f\u0443\u0442\u0438 <strong>\/opt\/jupyterhub<\/strong>, \u0430 \u0443 \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u0438\u0437 \u0434\u0432\u0443\u0445 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439 (\u0432 \u0434\u0430\u043b\u044c\u043d\u0435\u0439\u0448\u0435\u043c \u0431\u0443\u0434\u0435\u043c \u043d\u0430\u0437\u044b\u0432\u0430\u0442\u044c \u0438\u0445 \u0430\u043d\u0430\u043b\u0438\u0442\u0438\u043a\u0430\u043c\u0438, \u0442\u0430\u043a \u043f\u0440\u043e\u0441\u0442\u043e \u043e\u043d\u0438 \u0443 \u043d\u0430\u0441 \u043d\u0430\u0437\u0432\u0430\u043d\u044b \u0432 \u0441\u0438\u0441\u0442\u0435\u043c\u0435 \u0438 \u0442\u0430\u043a \u0431\u0443\u0434\u0435\u0442 \u043f\u0440\u043e\u0449\u0435) \u0441\u0432\u043e\u0435 \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u0435 \u0432 \u0434\u043e\u043c\u0430\u0448\u043d\u0435\u043c \u043a\u0430\u0442\u0430\u043b\u043e\u0433\u0435. \u0422\u0430\u043a\u043e\u0439 \u043f\u043e\u0434\u0445\u043e\u0434 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0438\u0437\u0431\u0435\u0436\u0430\u0442\u044c \u043f\u0440\u043e\u0431\u043b\u0435\u043c, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043a\u043e\u0433\u0434\u0430 \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 \u0443 \u043e\u0434\u043d\u043e\u0433\u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u0437\u0430\u043a\u0440\u044b\u0432\u0430\u0435\u0442 \u0432\u0445\u043e\u0434 \u0434\u043b\u044f \u0434\u0440\u0443\u0433\u0438\u0445. \u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u044f \u0434\u043b\u044f \u0430\u043d\u0430\u043b\u0438\u0442\u0438\u043a\u0430:<\/p>\n<pre><code class=\"bash\">sudo -u analyst1 bash -c 'python3 -m venv ~\/venvs\/ml'<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u041a\u043e\u043c\u0430\u043d\u0434\u0443 \u0441\u043b\u0435\u0434\u0443\u0435\u0442 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0442\u044c \u043e\u0442 \u0438\u043c\u0435\u043d\u0438 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f, \u0432 \u044d\u0442\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u043f\u0440\u0430\u0432\u0430 \u043d\u0430 \u0444\u0430\u0439\u043b\u044b \u0431\u0443\u0434\u0443\u0442 \u043f\u0440\u0438\u043d\u0430\u0434\u043b\u0435\u0436\u0430\u0442\u044c \u0435\u043c\u0443.\u00a0<\/p>\n<p>\u0414\u043b\u044f \u043d\u0430\u0448\u0435\u0439 \u0437\u0430\u0434\u0430\u0447\u0438 \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0448\u0442\u0430\u0442\u043d\u043e\u0433\u043e \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c\u0430 <strong>venv<\/strong>, \u043d\u043e \u0435\u0441\u043b\u0438 \u043f\u043b\u0430\u043d\u0438\u0440\u0443\u0435\u0442\u0435 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043d\u0435\u0440\u043e\u0434\u043d\u044b\u0435 \u0434\u043b\u044f Python \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438, \u0442\u043e \u0432\u0430\u043c \u043f\u043e\u043d\u0430\u0434\u043e\u0431\u0438\u0442\u0441\u044f <strong>Conda<\/strong>.<\/p>\n<h3>\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 JupyterLab<\/h3>\n<p>\u041d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043b\u0435\u0442 \u043d\u0430\u0437\u0430\u0434 \u043d\u0430 \u044d\u0442\u043e\u043c \u044d\u0442\u0430\u043f\u0435 \u0431\u044b\u043b\u043e \u0431\u044b \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044e \u043a\u043e\u043c\u0430\u043d\u0434\u043e\u0439 <strong>jupyter lab &#8212;generate-config<\/strong> \u0438 \u043d\u0430\u0437\u043d\u0430\u0447\u0438\u0442\u044c \u043f\u0430\u0440\u043e\u043b\u044c \u0447\u0435\u0440\u0435\u0437 <strong>jupyter server password<\/strong>, \u043d\u043e \u043f\u0440\u0438 \u0440\u0430\u0431\u043e\u0442\u0435 \u0447\u0435\u0440\u0435\u0437 \u0445\u0430\u0431 \u044d\u0442\u0438 \u0448\u0430\u0433\u0438 \u043d\u0435 \u043d\u0443\u0436\u043d\u044b. JupyterLab \u0438 \u0442\u0430\u043a \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u0434\u0432\u0430\u0436\u0434\u044b, \u0432 \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u0435 \u0445\u0430\u0431\u0430 \u0438 \u0432 \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u0435 \u043a\u0430\u0436\u0434\u043e\u0433\u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f.<\/p>\n<h3>\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a \u0434\u043b\u044f \u043c\u0430\u0448\u0438\u043d\u043d\u043e\u0433\u043e \u043e\u0431\u0443\u0447\u0435\u043d\u0438\u044f<\/h3>\n<p>\u0421\u0442\u0430\u0432\u0438\u043c \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 \u0432 \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u0435 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f:<\/p>\n<pre><code class=\"bash\">sudo -u analyst1 bash -c '~\/venvs\/ml\/bin\/pip install --upgrade pip'sudo -u analyst1 bash -c '~\/venvs\/ml\/bin\/pip install torch'<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u041f\u043e\u043b\u0443\u0447\u0430\u0435\u043c \u043e\u043a\u043e\u043b\u043e 2 \u0433\u0438\u0433\u0430\u0431\u0430\u0439\u0442:<\/p>\n<pre><code class=\"bash\">nvidia-cublas-13.1.1.3\u00a0 \u00a0 \u00a0 nvidia-cudnn-cu13-9.20.0.48nvidia-cufft-12.0.0.61\u00a0 \u00a0 \u00a0 nvidia-curand-10.4.0.35nvidia-cusolver-12.0.4.66 \u00a0 nvidia-cusparse-12.6.3.3nvidia-nccl-cu13-2.29.7 \u00a0 \u00a0 nvidia-nvjitlink-13.3.33triton-3.7.1\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 torch-2.13.0<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u041a\u0430\u043a \u0440\u0430\u0437 \u043d\u0430 \u044d\u0442\u043e\u043c \u044d\u0442\u0430\u043f\u0435 \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u043c CUDA, \u043e\u0442 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e\u0439 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u043c\u044b \u043e\u0442\u043a\u0430\u0437\u0430\u043b\u0438\u0441\u044c \u0440\u0430\u043d\u0435\u0435.<\/p>\n<h3>\u041f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u043a \u0433\u0440\u0430\u0444\u0438\u0447\u0435\u0441\u043a\u043e\u043c\u0443 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u0443 (GPU) \u0432 PyTorch<\/h3>\n<p>\u0414\u043b\u044f \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043a \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u043c \u043a\u043e\u043c\u0430\u043d\u0434\u0443:<\/p>\n<pre><code class=\"bash\">sudo -u analyst1 ~analyst1\/venvs\/ml\/bin\/python -c \\\u00a0\u00a0\"import torch; print(torch.__version__, torch.cuda.is_available(), \\\u00a0\u00a0\u00a0torch.cuda.get_device_name(0))\"<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u0418 \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u043c \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442:<\/p>\n<pre><code class=\"bash\">UserWarning: Failed to initialize NumPy: No module named 'numpy' 2.13.0+cu130 True NVIDIA GeForce RTX 3090<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u041c\u0435\u0442\u043a\u0430 <strong>cu130<\/strong> \u0441\u0432\u0438\u0434\u0435\u0442\u0435\u043b\u044c\u0441\u0442\u0432\u0443\u0435\u0442 \u043e \u0442\u043e\u043c, \u0447\u0442\u043e \u0441\u0431\u043e\u0440\u043a\u0430 \u0441\u0434\u0435\u043b\u0430\u043d\u0430 \u043f\u043e\u0434 \u0432\u0435\u0442\u043a\u0443 CUDA 13. \u0417\u043d\u0430\u0447\u0435\u043d\u0438\u0435 <strong>True<\/strong> \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0430\u0435\u0442 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u043e\u0441\u0442\u044c \u043a\u0430\u0440\u0442\u044b. \u041a\u043e\u043c\u043f\u0438\u043b\u044f\u0442\u043e\u0440\u0430 <strong>nvcc<\/strong> \u0432 \u0441\u0438\u0441\u0442\u0435\u043c\u0435 \u043d\u0435\u0442. \u041f\u0440\u0435\u0434\u0443\u043f\u0440\u0435\u0436\u0434\u0435\u043d\u0438\u0435 \u043e NumPy \u2014 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0442\u043e\u0433\u043e, \u0447\u0442\u043e \u0441\u0432\u0435\u0436\u0438\u0439 PyTorch \u043d\u0435 \u0442\u044f\u043d\u0435\u0442 \u0435\u0433\u043e \u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0439 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u044c\u044e. \u0421\u0442\u0430\u0432\u0438\u043c NumPy \u0438 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0438\u0440\u0443\u0435\u043c \u044f\u0434\u0440\u043e, \u0447\u0442\u043e\u0431\u044b \u043e\u043d\u043e \u043f\u043e\u044f\u0432\u0438\u043b\u043e\u0441\u044c \u0432 \u0441\u043f\u0438\u0441\u043a\u0435 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u043e\u0432 \u043f\u0440\u0438 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0438 \u043d\u043e\u0443\u0442\u0431\u0443\u043a\u0430:<\/p>\n<pre><code class=\"bash\">sudo -u analyst1 bash -c '~\/venvs\/ml\/bin\/pip install numpy pandas matplotlib scikit-learn ipykernel jupyterlab-git nbdime'sudo -u analyst1 bash -c '~\/venvs\/ml\/bin\/python -m ipykernel install --user --name ml --display-name \"Python (ml)\"'<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u0412 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0435 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u0432\u0442\u043e\u0440\u043e\u0439 \u043a\u043e\u043c\u0430\u043d\u0434\u044b \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u043c:<\/p>\n<pre><code class=\"bash\">Installed kernelspec ml in \/home\/analyst1\/.local\/share\/jupyter\/kernels\/ml<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u041d\u0430 \u0441\u0442\u0435\u043d\u0434\u0435 \u0432\u0441\u0442\u0430\u043b\u0438:<\/p>\n<ul>\n<li>\n<p>numpy 2.5.2;<\/p>\n<\/li>\n<li>\n<p>pandas 3.0.5;<\/p>\n<\/li>\n<li>\n<p>scikit-learn 1.9.0;<\/p>\n<\/li>\n<li>\n<p>ipykernel 7.3.0;<\/p>\n<\/li>\n<li>\n<p>jupyterlab-git 0.54.1;<\/p>\n<\/li>\n<li>\n<p>nbdime 4.0.4.<\/p>\n<\/li>\n<\/ul>\n<p>\u0422\u0440\u0435\u0442\u044c\u044f \u0432\u0435\u0440\u0441\u0438\u044f pandas \u043e\u0431\u043b\u0430\u0434\u0430\u0435\u0442 \u0441\u0432\u043e\u0438\u043c\u0438 \u043e\u0441\u043e\u0431\u0435\u043d\u043d\u043e\u0441\u0442\u044f\u043c\u0438, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043f\u0440\u0438 \u0437\u0430\u043f\u0438\u0441\u0438 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e, \u043f\u0440\u043e\u043f\u0430\u043b\u043e \u043f\u0440\u0435\u0434\u0443\u043f\u0440\u0435\u0436\u0434\u0435\u043d\u0438\u0435 \u043e \u043a\u043e\u043f\u0438\u044f\u0445 \u0438 \u0442\u0430\u043a \u0434\u0430\u043b\u0435\u0435. \u041a\u043e\u0434, \u0441\u043e\u0437\u0434\u0430\u043d\u043d\u044b\u0439 \u0434\u043b\u044f \u0432\u0442\u043e\u0440\u043e\u0439 \u0432\u0435\u0440\u0441\u0438\u0438 pandas, \u043c\u043e\u0436\u0435\u0442 \u043d\u0443\u0436\u0434\u0430\u0442\u044c\u0441\u044f \u0432 \u0434\u043e\u0440\u0430\u0431\u043e\u0442\u043a\u0430\u0445.<\/p>\n<h3>TensorFlow<\/h3>\n<p>\u041f\u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c TensorFlow \u043d\u0430 Ubuntu 26.04 \u043c\u044b \u043f\u0440\u043e\u0431\u043e\u0432\u0430\u043b\u0438 \u0447\u0435\u0442\u044b\u0440\u044c\u043c\u044f \u0441\u043f\u043e\u0441\u043e\u0431\u0430\u043c\u0438, \u0438 \u043d\u0438 \u043e\u0434\u0438\u043d \u043d\u0435 \u0441\u0440\u0430\u0431\u043e\u0442\u0430\u043b. \u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u0432 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u044c\u043d\u043e\u0435 \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u0435 \u0441\u0440\u0430\u0437\u0443 \u043f\u0440\u0435\u0440\u0432\u0430\u043b\u0430\u0441\u044c. \u0421\u0438\u0441\u0442\u0435\u043c\u0430 \u043f\u0440\u0438\u0435\u0437\u0436\u0430\u0435\u0442 \u0441 Python 3.14, \u0430 \u0433\u043e\u0442\u043e\u0432\u044b\u0445 \u0441\u0431\u043e\u0440\u043e\u043a \u043f\u043e\u0434 \u044d\u0442\u043e\u0442 \u0438\u043d\u0442\u0435\u0440\u043f\u0440\u0435\u0442\u0430\u0442\u043e\u0440 \u0443 TensorFlow \u043d\u0435\u0442:<\/p>\n<pre><code class=\"bash\">ERROR: Could not find a version that satisfies the requirement\u00a0\u00a0\u00a0\u00a0tensorflow[and-cuda] (from versions: none)ERROR: No matching distribution found for tensorflow[and-cuda]<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u0414\u0430\u043b\u0435\u0435 \u043c\u044b \u043f\u043e\u043f\u0440\u043e\u0431\u043e\u0432\u0430\u043b\u0438 \u0441\u0442\u043e\u0440\u043e\u043d\u043d\u0438\u0439 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0439 <strong>deadsnakes<\/strong>, \u0445\u043e\u0442\u044f \u044d\u0442\u043e \u043d\u0435 \u0441\u0430\u043c\u044b\u0439 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u044b\u0439 \u0441\u043f\u043e\u0441\u043e\u0431, \u0442\u0430\u043a \u043a\u0430\u043a \u0430\u0432\u0442\u043e\u0440\u044b \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u044f \u043f\u0440\u0435\u0434\u0443\u043f\u0440\u0435\u0436\u0434\u0430\u044e\u0442, \u0447\u0442\u043e \u0441\u0432\u043e\u0435\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435 \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u044f \u043f\u0440\u0438 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0430\u0445 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438 \u043d\u0435 \u0433\u0430\u0440\u0430\u043d\u0442\u0438\u0440\u0443\u044e\u0442\u0441\u044f, \u043d\u0430 \u0431\u043e\u0435\u0432\u043e\u043c \u0441\u0435\u0440\u0432\u0435\u0440\u0435 \u043f\u043e\u0434\u043e\u0431\u043d\u044b\u0439 \u0432\u0430\u0440\u0438\u0430\u043d\u0442 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d \u043d\u0430 \u0441\u0432\u043e\u0439 \u0441\u0442\u0440\u0430\u0445 \u0438 \u0440\u0438\u0441\u043a.<\/p>\n<pre><code class=\"bash\">add-apt-repository -y ppa:deadsnakes\/ppaapt install -y python3.13 python3.13-venvsudo -u analyst1 bash -c 'python3.13 -m venv ~\/venvs\/tf13'sudo -u analyst1 bash -c '~\/venvs\/tf13\/bin\/pip install \"tensorflow[and-cuda]\"'<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u043f\u0440\u043e\u0448\u043b\u0430, TensorFlow 2.21.0 \u0440\u0430\u0437\u0432\u0435\u0440\u043d\u0443\u0442, \u043d\u043e \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e \u043d\u0435 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0438\u0440\u0443\u0435\u0442\u0441\u044f.<\/p>\n<pre><code class=\"bash\">Cannot dlopen some GPU libraries.Skipping registering GPU devices...2.21.0 []<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u041e\u0431\u0445\u043e\u0434\u043d\u043e\u0439 \u043f\u0443\u0442\u044c \u0447\u0435\u0440\u0435\u0437 \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u0435 \u043d\u0430 \u043f\u0440\u0435\u0434\u044b\u0434\u0443\u0449\u0435\u0439 \u0432\u0435\u0440\u0441\u0438\u0438 \u0438\u043d\u0442\u0435\u0440\u043f\u0440\u0435\u0442\u0430\u0442\u043e\u0440\u0430 \u0442\u043e\u0436\u0435 \u043d\u0435 \u0434\u0430\u043b \u043f\u043e\u043b\u043e\u0436\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430. \u0428\u0442\u0430\u0442\u043d\u044b\u0439 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0439 Ubuntu 26.04 \u043d\u0435 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0438\u0432\u0430\u0435\u0442 \u0441\u0442\u0430\u0440\u044b\u0435 \u0432\u0435\u0440\u0441\u0438\u0438 Python:<\/p>\n<pre><code class=\"bash\">apt install -y python3.13Error: Unable to locate package python3.13<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u041e\u0444\u0438\u0446\u0438\u0430\u043b\u044c\u043d\u044b\u0439 \u043e\u0431\u0440\u0430\u0437 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u0430 \u0434\u0430\u0435\u0442 \u0442\u043e\u0442 \u0436\u0435 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u043d\u0430 \u0434\u0432\u0443\u0445 \u043c\u0435\u0442\u043a\u0430\u0445: <strong>latest-gpu<\/strong> \u0438 <strong>2.21.0-gpu<\/strong>, \u0445\u043e\u0442\u044f \u043a\u0430\u0440\u0442\u0430 \u0432 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440 \u043f\u0440\u043e\u0431\u0440\u0430\u0441\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u0448\u0442\u0430\u0442\u043d\u044b\u043c \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u0435\u043c NVIDIA.\u00a0<\/p>\n<p>\u0415\u0441\u043b\u0438 \u0432\u0430\u043c \u043d\u0443\u0436\u0435\u043d \u0438\u043c\u0435\u043d\u043d\u043e TensorFlow, \u0442\u043e \u0438\u043c\u0435\u0435\u0442 \u0441\u043c\u044b\u0441\u043b \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u0441\u0438\u0441\u0442\u0435\u043c\u0443 \u043f\u043e\u0441\u0442\u0430\u0440\u0448\u0435 \u0438 \u0434\u0440\u0430\u0439\u0432\u0435\u0440 \u0438\u0437 \u0434\u0432\u0435\u043d\u0430\u0434\u0446\u0430\u0442\u043e\u0439 \u0432\u0435\u0442\u043a\u0438. PyTorch \u043a \u0441\u0432\u0435\u0436\u0435\u043c\u0443 \u0436\u0435\u043b\u0435\u0437\u0443 \u0438 \u0441\u0432\u0435\u0436\u0435\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u0435 \u0430\u0434\u0430\u043f\u0442\u0438\u0440\u043e\u0432\u0430\u043d, TensorFlow \u043f\u043e\u043a\u0430 \u043d\u0435\u0442.<\/p>\n<h3>\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 JupyterHub<\/h3>\n<p>\u0425\u0430\u0431\u0443 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c \u0432\u0441\u043f\u043e\u043c\u043e\u0433\u0430\u0442\u0435\u043b\u044c\u043d\u044b\u0439 \u043f\u0440\u043e\u043a\u0441\u0438, \u0442\u0430\u043a \u043a\u0430\u043a \u043c\u0430\u0440\u0448\u0440\u0443\u0442\u044b \u043a \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u0438\u043c \u0441\u0435\u0440\u0432\u0435\u0440\u0430\u043c \u043c\u0435\u043d\u044f\u044e\u0442\u0441\u044f \u043d\u0430 \u0445\u043e\u0434\u0443 \u043f\u0440\u0438 \u043a\u0430\u0436\u0434\u043e\u043c \u0432\u0445\u043e\u0434\u0435 \u0438 \u043e\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0435:<\/p>\n<pre><code class=\"bash\">apt install -y nodejs npm nginx # nodejs \u0438 npm \u043d\u0443\u0436\u043d\u044b \u043f\u0440\u043e\u043a\u0441\u0438, nginx \u0441\u043c\u043e\u0442\u0440\u0438\u0442 \u043d\u0430\u0440\u0443\u0436\u0443npm install -g configurable-http-proxy # \u0447\u0435\u0440\u0435\u0437 \u043d\u0435\u0433\u043e \u0445\u0430\u0431 \u0440\u0430\u0437\u0434\u0430\u0435\u0442 \u043c\u0430\u0440\u0448\u0440\u0443\u0442\u044b \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 npm \u0438\u0437 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u044f Ubuntu \u0432\u043a\u043b\u044e\u0447\u0430\u0435\u0442 538 \u043f\u0430\u043a\u0435\u0442\u043e\u0432 \u0438 \u0437\u0430\u043d\u0438\u043c\u0430\u0435\u0442 494 \u043c\u0435\u0433\u0430\u0431\u0430\u0439\u0442\u0430 \u043d\u0430 \u0434\u0438\u0441\u043a\u0435. \u0421\u0440\u0435\u0434\u0438 \u043f\u0430\u043a\u0435\u0442\u043e\u0432 \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u0442\u0441\u044f \u0434\u0440\u0430\u0439\u0432\u0435\u0440\u044b Vulkan, \u0448\u0440\u0438\u0444\u0442\u044b, \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 X11 \u0438 \u0433\u0440\u0430\u0444\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u044d\u043c\u0443\u043b\u044f\u0442\u043e\u0440 \u0442\u0435\u0440\u043c\u0438\u043d\u0430\u043b\u0430 \u043d\u0430 \u0441\u0435\u0440\u0432\u0435\u0440, \u0443 \u043a\u043e\u0442\u043e\u0440\u043e\u0433\u043e \u043d\u0435\u0442 \u044d\u043a\u0440\u0430\u043d\u0430. \u041f\u0430\u043a\u0435\u0442 \u0442\u044f\u043d\u0435\u0442 \u0432\u0435\u0441\u044c \u043d\u0430\u0431\u043e\u0440 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u043e\u0432 \u0434\u043b\u044f \u0440\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u043a\u0438 \u043d\u0430 JavaScript. \u0421\u043c\u044f\u0433\u0447\u0430\u0435\u0442\u0441\u044f \u044d\u0442\u043e \u043b\u0438\u0431\u043e \u0444\u043b\u0430\u0433\u043e\u043c <strong>&#8212;no-install-recommends<\/strong> (\u043e\u0442\u043a\u0430\u0437 \u043e\u0442 \u0440\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0430\u0446\u0438\u0439), \u043b\u0438\u0431\u043e \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u043e\u0439 Node \u0438\u0437 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u044f NodeSource.<\/p>\n<pre><code class=\"bash\">python3 -m venv \/opt\/jupyterhub # \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u044f \u0434\u043b\u044f \u0445\u0430\u0431\u0430\/opt\/jupyterhub\/bin\/pip install --upgrade pip # \u043e\u0431\u043d\u043e\u0432\u043b\u044f\u0435\u0442 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0449\u0438\u043a \u043f\u0430\u043a\u0435\u0442\u043e\u0432\/opt\/jupyterhub\/bin\/pip install jupyterhub jupyterlab # \u0441\u0430\u043c \u0445\u0430\u0431 \u0438 \u0440\u0430\u0431\u043e\u0447\u0430\u044f \u0441\u0440\u0435\u0434\u0430\/opt\/jupyterhub\/bin\/pip install jupyterhub-systemdspawner # \u0437\u0430\u043f\u0443\u0441\u043a \u0441\u0435\u0441\u0441\u0438\u0439 \u0441 \u043b\u0438\u043c\u0438\u0442\u0430\u043c\u0438\/opt\/jupyterhub\/bin\/pip install jupyterhub-idle-culler # \u043e\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u043f\u0440\u043e\u0441\u0442\u0430\u0438\u0432\u0430\u044e\u0449\u0438\u0445 \u0441\u0435\u0441\u0441\u0438\u0439<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u0412 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0435 \u043c\u044b \u043f\u043e\u043b\u0443\u0447\u0438\u043b\u0438 \u0442\u0430\u043a\u0438\u0435 \u0432\u0435\u0440\u0441\u0438\u0438 \u041f\u041e:<\/p>\n<ul>\n<li>\n<p>JupyterHub 5.5.1;<\/p>\n<\/li>\n<li>\n<p>JupyterLab 4.6.3;<\/p>\n<\/li>\n<li>\n<p>jupyter-server 2.20.0;<\/p>\n<\/li>\n<li>\n<p>ipykernel 7.3.0;<\/p>\n<\/li>\n<li>\n<p>systemdspawner 1.0.2;<\/p>\n<\/li>\n<li>\n<p>idle-culler 2.0.0;<\/p>\n<\/li>\n<li>\n<p>pamela 1.2.0.<\/p>\n<\/li>\n<\/ul>\n<p>\u041e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u0435 \u0437\u0430\u043d\u0438\u043c\u0430\u0435\u0442 347 \u043c\u0435\u0433\u0430\u0431\u0430\u0439\u0442, \u043d\u0438 \u043e\u0434\u0438\u043d \u043f\u0430\u043a\u0435\u0442 \u043d\u0435 \u0441\u043e\u0431\u0438\u0440\u0430\u043b\u0441\u044f \u0438\u0437 \u0438\u0441\u0445\u043e\u0434\u043d\u0438\u043a\u043e\u0432.<\/p>\n<h3>\u041c\u043d\u043e\u0433\u043e\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u0438\u0439 \u0434\u043e\u0441\u0442\u0443\u043f<\/h3>\n<p>\u041d\u0430\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0435\u043c \u043c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u0443\u044e \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044e:<\/p>\n<pre><code class=\"yaml\">c.JupyterHub.bind_url = 'http:\/\/127.0.0.1:8000' # \u0441\u043b\u0443\u0448\u0430\u0435\u0442 \u0442\u043e\u043b\u044c\u043a\u043e \u043f\u0435\u0442\u043b\u044ec.Spawner.default_url = '\/lab' # \u043e\u0442\u043a\u0440\u044b\u0432\u0430\u0442\u044c JupyterLab, \u0430 \u043d\u0435 \u0441\u0442\u0430\u0440\u044b\u0439 \u0432\u0438\u0434c.Spawner.cmd = ['\/opt\/jupyterhub\/bin\/jupyterhub-singleuser'] # \u0447\u0435\u043c \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0442\u044c \u0441\u0435\u0440\u0432\u0435\u0440<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u0418 \u0441\u0440\u0430\u0437\u0443 \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u043c \u043e\u0448\u0438\u0431\u043a\u0443: \u0437\u0430\u043f\u0443\u0441\u043a \u043f\u0440\u043e\u0445\u043e\u0434\u0438\u0442, \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u043e\u0442\u043a\u0440\u044b\u0432\u0430\u0435\u0442\u0441\u044f, \u0430\u0443\u0442\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u044f \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442, \u043d\u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0438 \u043d\u0435 \u043c\u043e\u0433\u0443\u0442 \u0432\u043e\u0439\u0442\u0438 \u0432 \u0432\u0435\u0431-\u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u0438 \u043f\u043e\u043b\u0443\u0447\u0430\u044e\u0442 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435:<\/p>\n<figure class=\"\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/16e\/a94\/327\/16ea9432729265998857fa69924fb724.png\" width=\"511\" height=\"412\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/getpro\/habr\/upload_files\/16e\/a94\/327\/16ea9432729265998857fa69924fb724.png 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/16e\/a94\/327\/16ea9432729265998857fa69924fb724.png 781w\" loading=\"lazy\" decode=\"async\"\/><\/figure>\n<p>\u0421\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0435 \u043d\u0430 \u0441\u043a\u0440\u0438\u043d\u0448\u043e\u0442\u0435 \u043d\u0435 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u0435\u0442 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438, \u0438 \u0443\u0447\u0435\u0442\u043d\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435 \u0432\u0432\u0435\u0434\u0435\u043d\u044b \u0432\u0435\u0440\u043d\u043e, \u043e\u0448\u0438\u0431\u043a\u0443 \u0443\u0434\u0430\u0435\u0442\u0441\u044f \u043c\u043e\u0436\u043d\u043e \u043e\u0442\u0441\u043b\u0435\u0434\u0438\u0442\u044c \u0432 \u043b\u043e\u0433\u0430\u0445:<\/p>\n<pre><code class=\"bash\">[W JupyterHub auth:758] User 'analyst1' not allowed.[W JupyterHub base:998] Failed login for 'analyst1'[W JupyterHub log:192] 403 POST \/hub\/login<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u041f\u0440\u0438\u0447\u0438\u043d\u0430 \u0442\u0430\u043a\u043e\u0439 \u043e\u0448\u0438\u0431\u043a\u0438 \u043a\u0440\u043e\u0435\u0442\u0441\u044f \u0432 <a href=\"https:\/\/jupyterhub.readthedocs.io\/en\/latest\/howto\/upgrading-v5.html\">\u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0438 \u043f\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u044f \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e<\/a> \u043f\u044f\u0442\u043e\u0439 \u0432\u0435\u0440\u0441\u0438\u0438 JupyterHub. \u0412 \u043d\u0435\u0439 \u043f\u0443\u0441\u0442\u043e\u0439 \u0441\u043f\u0438\u0441\u043e\u043a \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u043d\u044b\u0445 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439 \u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442 \u0437\u0430\u043f\u0440\u0435\u0442 \u043d\u0430 \u0432\u0445\u043e\u0434 \u0434\u043b\u044f \u0432\u0441\u0435\u0445. \u0420\u0430\u043d\u0435\u0435 \u0445\u0430\u0431 \u043f\u0443\u0441\u043a\u0430\u043b \u043b\u044e\u0431\u043e\u0433\u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f, \u043f\u0440\u043e\u0448\u0435\u0434\u0448\u0435\u0433\u043e \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0443 \u043f\u0430\u0440\u043e\u043b\u044f.<\/p>\n<p>\u0418\u0441\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u043c \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0443:<\/p>\n<pre><code class=\"yaml\">c.Authenticator.allowed_users = {'analyst1', 'analyst2'} # \u043a\u043e\u043c\u0443 \u0440\u0430\u0437\u0440\u0435\u0448\u0451\u043d \u0432\u0445\u043e\u0434c.Authenticator.admin_users = {'analyst1'} # \u0432\u0438\u0434\u0438\u0442 \u0438 \u043e\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u0442 \u0447\u0443\u0436\u0438\u0435 \u0441\u0435\u0441\u0441\u0438\u0438<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u0410\u043b\u044c\u0442\u0435\u0440\u043d\u0430\u0442\u0438\u0432\u043d\u044b\u0439 \u0432\u0430\u0440\u0438\u0430\u043d\u0442 \u043f\u0440\u0435\u0434\u043f\u043e\u043b\u0430\u0433\u0430\u0435\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0430 <strong>allow_all<\/strong>, \u043e\u043d \u043e\u0442\u043a\u0440\u044b\u0432\u0430\u0435\u0442 \u0434\u043e\u0441\u0442\u0443\u043f \u043b\u044e\u0431\u043e\u043c\u0443 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044e, \u0432\u043e\u0448\u0435\u0434\u0448\u0435\u043c\u0443 \u0432 \u0441\u0438\u0441\u0442\u0435\u043c\u0443 \u043f\u043e SSH. \u042d\u0442\u043e\u0442 \u0432\u0430\u0440\u0438\u0430\u043d\u0442 \u043c\u043e\u0436\u0435\u0442 \u043f\u043e\u0434\u043e\u0439\u0442\u0438 \u0434\u043b\u044f \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u0438\u0445 \u043a\u043e\u043c\u0430\u043d\u0434, \u043d\u043e \u043a\u0440\u0430\u0439\u043d\u0435 \u043e\u043f\u0430\u0441\u0435\u043d \u0434\u043b\u044f \u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u0441 \u0432\u043d\u0435\u0448\u043d\u0438\u043c \u0430\u0434\u0440\u0435\u0441\u043e\u043c.<\/p>\n<p>\u041f\u0440\u0438 \u0443\u0441\u043f\u0435\u0448\u043d\u043e\u0439 \u0430\u0432\u0442\u043e\u0440\u0438\u0437\u0430\u0446\u0438\u0438 \u0432 \u0436\u0443\u0440\u043d\u0430\u043b\u0435 \u043e\u0442\u0440\u0430\u0437\u0438\u0442\u0441\u044f \u0432\u0441\u044f \u0446\u0435\u043f\u043e\u0447\u043a\u0430 \u0441\u043e\u0431\u044b\u0442\u0438\u0439:<\/p>\n<pre><code class=\"bash\">[I JupyterHub base:988] User logged in: analyst1[I JupyterHub spawner:2068] Spawning \/opt\/jupyterhub\/bin\/jupyterhub-singleuser[I JupyterHub base:1143] User analyst1 took 4.715 seconds to start[I JupyterHub proxy:331] Adding user analyst1 to proxy \/user\/analyst1\/ =&gt; http:\/\/127.0.0.1:40833<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u041f\u0440\u043e\u0446\u0435\u0441\u0441 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u043e\u0442 \u0438\u043c\u0435\u043d\u0438 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f, \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0435\u0442\u0441\u044f \u043a\u043e\u043c\u0430\u043d\u0434\u043e\u0439 <strong>ps<\/strong>:<\/p>\n<pre><code class=\"bash\">analyst1 \/opt\/jupyterhub\/bin\/python3\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\/opt\/jupyterhub\/bin\/jupyterhub-singleuser<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u041d\u0430 \u043d\u0430\u0448\u0435\u043c \u0447\u0438\u0441\u0442\u043e\u043c \u0441\u0442\u0435\u043d\u0434\u0435 \u043f\u0440\u043e\u0446\u0435\u0441\u0441 \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u0437\u0430\u043d\u044f\u043b 4.7 \u0441\u0435\u043a\u0443\u043d\u0434\u044b, \u043d\u0430 \u0443\u0436\u0435 \u043d\u0430\u0433\u0440\u0443\u0436\u0435\u043d\u043d\u043e\u043c \u0441\u0435\u0440\u0432\u0435\u0440\u0435 \u044d\u0442\u043e \u0432\u0440\u0435\u043c\u044f \u043c\u043e\u0436\u0435\u0442 \u0437\u043d\u0430\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0443\u0432\u0435\u043b\u0438\u0447\u0438\u0442\u044c\u0441\u044f.<\/p>\n<h3>\u0421\u043b\u0443\u0436\u0431\u0430 systemd<\/h3>\n<p>\u041f\u043e\u0441\u043b\u0435 \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u0445\u0430\u0431\u0430 \u0431\u0443\u0434\u0435\u0442 \u043f\u043e\u043b\u0435\u0437\u0435\u043d \u044e\u043d\u0438\u0442, \u0441\u043f\u043e\u0441\u043e\u0431\u043d\u044b\u0439 \u043f\u0435\u0440\u0435\u0436\u0438\u0442\u044c \u043a\u0430\u043a \u0440\u0430\u0437\u0440\u044b\u0432 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f, \u0442\u0430\u043a \u0438 \u043f\u0435\u0440\u0435\u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0443:<\/p>\n<pre><code class=\"bash\">[Unit]Description=JupyterHubAfter=network-online.target # \u0441\u0442\u0430\u0440\u0442 \u043f\u043e\u0441\u043b\u0435 \u0442\u043e\u0433\u043e, \u043a\u0430\u043a \u043f\u043e\u0434\u043d\u044f\u043b\u0430\u0441\u044c \u0441\u0435\u0442\u044cWants=network-online.target[Service]User=root\u00a0 # \u043f\u0440\u0430\u0432\u0430 \u043d\u0443\u0436\u043d\u044b \u0434\u043b\u044f \u043f\u0430\u0440\u043e\u043b\u0435\u0439 \u0438 \u043b\u0438\u043c\u0438\u0442\u043e\u0432WorkingDirectory=\/etc\/jupyterhub # \u0440\u044f\u0434\u043e\u043c \u043b\u044f\u0433\u0443\u0442 \u0444\u0430\u0439\u043b \u0441 \u043a\u043b\u044e\u0447\u043e\u043c \u0438 \u0431\u0430\u0437\u0430 \u0434\u0430\u043d\u043d\u044b\u0445Environment=\"PATH=\/opt\/jupyterhub\/bin:\/usr\/local\/sbin:\/usr\/local\/bin:\/usr\/sbin:\/usr\/bin:\/sbin:\/bin\"ExecStart=\/opt\/jupyterhub\/bin\/jupyterhub -f \/etc\/jupyterhub\/jupyterhub_config.pyRestart=always # \u043f\u0435\u0440\u0435\u0437\u0430\u043f\u0443\u0441\u043a \u043f\u0440\u0438 \u043f\u0430\u0434\u0435\u043d\u0438\u0438RestartSec=5 # \u043f\u0430\u0443\u0437\u0430, \u0447\u0442\u043e\u0431\u044b \u0446\u0438\u043a\u043b \u043d\u0435 \u0437\u0430\u0431\u0438\u0432\u0430\u043b \u0436\u0443\u0440\u043d\u0430\u043b[Install]WantedBy=multi-user.target<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u0420\u0430\u0431\u043e\u0447\u0438\u0439 \u043a\u0430\u0442\u0430\u043b\u043e\u0433 \u0443\u043a\u0430\u0437\u0430\u043d \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u043e, \u0442\u0430\u043a \u043a\u0430\u043a \u0445\u0430\u0431 \u0441\u043e\u0437\u0434\u0430\u0435\u0442 \u0444\u0430\u0439\u043b \u0441 \u043a\u043b\u044e\u0447\u043e\u043c \u0434\u043b\u044f \u043f\u043e\u0434\u043f\u0438\u0441\u0438 cookie \u0438 \u0431\u0430\u0437\u0443 \u0434\u0430\u043d\u043d\u044b\u0445 SQLite, \u043e \u0447\u0435\u043c \u043f\u0440\u0435\u0434\u0443\u043f\u0440\u0435\u0436\u0434\u0430\u0435\u0442 \u043f\u0440\u0438 \u043f\u0435\u0440\u0432\u043e\u043c \u0437\u0430\u043f\u0443\u0441\u043a\u0435:<\/p>\n<pre><code class=\"bash\">[I JupyterHub app:1885] Writing cookie_secret to \/etc\/jupyterhub\/jupyterhub_cookie_secret<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u0418 \u0435\u0449\u0435 \u043e\u0434\u043d\u043e \u0432\u0430\u0436\u043d\u043e\u0435 \u043f\u0440\u0435\u0434\u0443\u043f\u0440\u0435\u0436\u0434\u0435\u043d\u0438\u0435 \u043f\u0440\u0438 \u0441\u0442\u0430\u0440\u0442\u0435 \u043e\u0431\u044a\u044f\u0441\u043d\u044f\u0435\u0442, \u0437\u0430\u0447\u0435\u043c \u0432 \u0434\u0430\u043b\u044c\u043d\u0435\u0439\u0448\u0435\u043c \u043e\u0431\u0440\u0430\u0442\u043d\u044b\u0439 \u043f\u0440\u043e\u043a\u0441\u0438.<\/p>\n<pre><code class=\"bash\">[W JupyterHub proxy:748] Running JupyterHub without SSL. I hope there is SSL termination happening somewhere else\u2026<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<h3>\u0410\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0430\u044f \u043e\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u043f\u0440\u043e\u0441\u0442\u0430\u0438\u0432\u0430\u044e\u0449\u0438\u0445 \u0441\u0435\u0441\u0441\u0438\u0439<\/h3>\n<p>\u042f\u0434\u0440\u043e JupyterLab \u0434\u0435\u0440\u0436\u0438\u0442 \u0437\u0430\u0433\u0440\u0443\u0436\u0435\u043d\u043d\u044b\u0435 \u0434\u0430\u043d\u043d\u044b\u0435 \u0432 \u043f\u0430\u043c\u044f\u0442\u0438 \u0434\u043e \u0442\u0435\u0445 \u043f\u043e\u0440, \u043f\u043e\u043a\u0430 \u043d\u0435 \u0431\u0443\u0434\u0435\u0442 \u043e\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043e. \u0418 \u044d\u0442\u043e \u043c\u043e\u0436\u0435\u0442 \u043f\u0440\u0438\u0432\u043e\u0434\u0438\u0442\u044c \u043a \u043f\u0443\u0441\u0442\u043e\u0439 \u0442\u0440\u0430\u0442\u0435 \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0435\u0441\u043b\u0438 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c \u043d\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u043d\u0430 \u043c\u0430\u0448\u0438\u043d\u0435, \u043d\u043e \u043d\u0435 \u0437\u0430\u043a\u043e\u043d\u0447\u0438\u043b \u0441\u0435\u0441\u0441\u0438\u044e. \u0418 \u0442\u0430\u043a\u0438\u0435 \u0441\u0438\u0442\u0443\u0430\u0446\u0438\u0438 \u043c\u043e\u0436\u043d\u043e \u043f\u0440\u0435\u0434\u0443\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c:<\/p>\n<pre><code class=\"json\">\u00a0\u00a0\u00a0\u00a0c.JupyterHub.services = [\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0{\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'name': 'idle-culler',\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'command': [\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'\/opt\/jupyterhub\/bin\/python3',\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'-m', 'jupyterhub_idle_culler',\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'--timeout=3600',\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0],\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0}\u00a0\u00a0\u00a0\u00a0]\u00a0\u00a0\u00a0\u00a0c.JupyterHub.load_roles = [\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0{\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'name': 'list-and-cull',\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'scopes': [\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'list:users',\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'read:users:activity',\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'read:servers',\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'delete:servers',\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0],\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0'services': ['idle-culler'],\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0}\u00a0\u00a0\u00a0\u00a0]<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u042f\u0432\u043d\u044b\u0439 \u043f\u0443\u0442\u044c \u043a \u0438\u043d\u0442\u0435\u0440\u043f\u0440\u0435\u0442\u0430\u0442\u043e\u0440\u0443 \u043f\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d \u0438\u0437 \u043e\u0441\u0442\u043e\u0440\u043e\u0436\u043d\u043e\u0441\u0442\u0438. <a href=\"https:\/\/jupyterhub.readthedocs.io\/en\/stable\/tutorial\/getting-started\/services-basics.html\">\u0414\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044f<\/a> \u043f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u0435\u0442 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u0443\u044e <strong>sys.executable<\/strong>, \u043e\u043d\u0430 \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442 \u043d\u0430 \u0442\u043e\u0442 \u0438\u043d\u0442\u0435\u0440\u043f\u0440\u0435\u0442\u0430\u0442\u043e\u0440, \u043a\u043e\u0442\u043e\u0440\u044b\u043c \u0437\u0430\u043f\u0443\u0449\u0435\u043d \u0445\u0430\u0431, \u0442\u043e \u0435\u0441\u0442\u044c \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u043f\u0440\u0430\u0432\u0438\u043b\u044c\u043d\u043e. \u0422\u0440\u0435\u0431\u0443\u0435\u0442 \u044d\u0442\u0430 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u0430\u044f \u0441\u0442\u0440\u043e\u043a\u0438 <strong>import sys<\/strong> \u0432 \u043d\u0430\u0447\u0430\u043b\u0435 \u0444\u0430\u0439\u043b\u0430 \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043a, \u0438 \u0431\u0435\u0437 \u043d\u0435\u0435 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044f \u043d\u0435 \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u0441\u044f.<\/p>\n<h3>\u041e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u0435 \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432<\/h3>\n<p>\u0428\u0442\u0430\u0442\u043d\u044b\u0439 \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u0438\u0445 \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432 \u043d\u0435 \u043f\u0440\u0435\u0434\u043f\u043e\u043b\u0430\u0433\u0430\u0435\u0442 \u043d\u0430\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u0439 \u043d\u0430 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u043c\u044b\u0435 \u0440\u0435\u0441\u0443\u0440\u0441\u044b. \u0421 \u043e\u0434\u043d\u043e\u0439 \u0441\u0442\u043e\u0440\u043e\u043d\u044b, \u044d\u0442\u043e \u0443\u0434\u043e\u0431\u043d\u043e \u0434\u043b\u044f \u043e\u0434\u043d\u043e\u0433\u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f, \u043d\u043e \u0441 \u0434\u0440\u0443\u0433\u043e\u0439 \u043c\u043e\u0436\u0435\u0442 \u043f\u0440\u0438\u0432\u0435\u0441\u0442\u0438 \u043a \u0431\u044b\u0441\u0442\u0440\u043e\u043c\u0443 \u0438\u0441\u0447\u0435\u0440\u043f\u0430\u043d\u0438\u044e \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432 \u0441\u0435\u0440\u0432\u0435\u0440\u0430. \u0417\u0430\u043c\u0435\u043d\u0430 \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c\u0430, \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0449\u0435\u0433\u043e \u0447\u0435\u0440\u0435\u0437 systemd, \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u044f \u0447\u0435\u0440\u0435\u0437 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044c\u043d\u044b\u0435 \u0433\u0440\u0443\u043f\u043f\u044b \u044f\u0434\u0440\u0430:<\/p>\n<pre><code class=\"bash\">c.JupyterHub.spawner_class = 'systemdspawner.SystemdSpawner' # \u0442\u043e\u043b\u044c\u043a\u043e \u043e\u043d \u0443\u043c\u0435\u0435\u0442 \u043b\u0438\u043c\u0438\u0442\u044bc.SystemdSpawner.mem_limit = '8G' # \u043f\u043e\u0442\u043e\u043b\u043e\u043a \u043f\u0430\u043c\u044f\u0442\u0438 \u043d\u0430 \u0447\u0435\u043b\u043e\u0432\u0435\u043a\u0430c.SystemdSpawner.cpu_limit = 4.0 # \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u043d\u043e\u0435 \u0432\u0440\u0435\u043c\u044f \u0432 \u043f\u0435\u0440\u0435\u0441\u0447\u0435\u0442\u0435 \u043d\u0430 \u044f\u0434\u0440\u0430c.SystemdSpawner.isolate_tmp = True # \u0441\u0432\u043e\u0439 \u0432\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0439 \u043a\u0430\u0442\u0430\u043b\u043e\u0433, \u0447\u0443\u0436\u0438\u0435 \u0444\u0430\u0439\u043b\u044b \u043d\u0435 \u0432\u0438\u0434\u043d\u044b<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u041f\u043e\u0441\u043b\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0441\u0442\u043e\u0438\u0442 \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c, \u0434\u043e\u0448\u043b\u0438 \u043b\u0438 \u043b\u0438\u043c\u0438\u0442\u044b \u0434\u043e \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0438\u043b\u0438 \u043e\u0441\u0442\u0430\u043b\u0438\u0441\u044c \u0432 \u0444\u0430\u0439\u043b\u0435 \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043a:<\/p>\n<pre><code class=\"bash\">systemctl show jupyter-analyst1-singleuser --property=MemoryMax,CPUQuotaPerSecUSec,MemoryCurrent,TasksCurrent # \u043f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442 \u0434\u0435\u0439\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0435 \u043b\u0438\u043c\u0438\u0442\u044bMemoryCurrent=136945664TasksCurrent=4CPUQuotaPerSecUSec=4sMemoryMax=8589934592<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u0412 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0435 \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u043c \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u0435 \u043f\u0430\u043c\u044f\u0442\u0438 \u043d\u0430 8 \u0433\u0438\u0433\u0430\u0431\u0430\u0439\u0442 \u0438 \u043a\u0432\u043e\u0442\u0443 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u0430 \u0432 \u0447\u0435\u0442\u044b\u0440\u0435 \u044f\u0434\u0440\u0430. \u041f\u0443\u0441\u0442\u0430\u044f \u0441\u0440\u0435\u0434\u0430 \u0432\u0435\u0441\u0438\u0442 136,9 \u043c\u0435\u0433\u0430\u0431\u0430\u0439\u0442. \u042e\u043d\u0438\u0442 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u0435\u0442 \u0442\u043e\u043b\u044c\u043a\u043e \u043f\u043e\u043a\u0430 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442, \u0438 \u043f\u0440\u0438 \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0435\u0439 \u0441\u0435\u0441\u0441\u0438\u0438 \u043a\u043e\u043c\u0430\u043d\u0434\u0430 \u043f\u043e\u043a\u0430\u0436\u0435\u0442 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 <strong>infinity<\/strong>.<\/p>\n<p>\u0421\u043e \u0441\u0442\u043e\u0440\u043e\u043d\u044b \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u044f \u0432\u044b\u0433\u043b\u044f\u0434\u044f\u0442 \u0438\u043d\u0430\u0447\u0435. \u042f\u0447\u0435\u0439\u043a\u0430, \u043d\u0430\u0431\u0438\u0440\u0430\u044e\u0449\u0430\u044f \u043f\u0430\u043c\u044f\u0442\u044c \u043f\u043e 500 \u043c\u0435\u0433\u0430\u0431\u0430\u0439\u0442 \u0437\u0430 \u0448\u0430\u0433, \u0434\u043e\u0439\u0434\u0435\u0442 \u0434\u043e 8 \u0433\u0438\u0433\u0430\u0431\u0430\u0439\u0442 \u0438 \u043e\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u0441\u044f, \u0431\u0440\u0430\u0443\u0437\u0435\u0440 \u0441\u043e\u043e\u0431\u0449\u0438\u0442 \u043e \u0441\u043c\u0435\u0440\u0442\u0438 \u044f\u0434\u0440\u0430, \u043d\u043e \u043f\u0440\u0438\u0447\u0438\u043d \u043d\u0435 \u043d\u0430\u0437\u043e\u0432\u0435\u0442, \u0447\u0442\u043e \u043c\u043e\u0436\u0435\u0442 \u0437\u0430\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u043f\u0440\u0435\u0434\u043f\u043e\u043b\u043e\u0436\u0438\u0442\u044c, \u0447\u0442\u043e \u0441\u043b\u043e\u043c\u0430\u043d \u0435\u0433\u043e \u043a\u043e\u0434.<\/p>\n<pre><code class=\"bash\">Memory cgroup out of memory: Killed process 8697 (python)total-vm:13635980kB, anon-rss:8342092kB, UID:1000oom-kill:constraint=CONSTRAINT_MEMCG,oom_memcg=\/system.slice\/jupyter-analyst1-singleuser.service<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u0421\u0442\u0440\u043e\u043a\u0430 <strong>CONSTRAINT_MEMCG<\/strong> \u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442, \u0447\u0442\u043e \u0441\u0440\u0430\u0431\u043e\u0442\u0430\u043b \u043d\u0430\u0448 \u043b\u0438\u043c\u0438\u0442, \u0430 \u043d\u0435 \u043e\u0431\u0449\u0430\u044f \u043d\u0435\u0445\u0432\u0430\u0442\u043a\u0430 \u043f\u0430\u043c\u044f\u0442\u0438, \u0441\u0432\u043e\u0431\u043e\u0434\u043d\u044b\u043c\u0438 \u043d\u0430 \u043c\u0430\u0448\u0438\u043d\u0435 \u043e\u0441\u0442\u0430\u0432\u0430\u043b\u0438\u0441\u044c \u0431\u043e\u043b\u044c\u0448\u0435 \u043f\u044f\u0442\u0438\u0434\u0435\u0441\u044f\u0442\u0438 \u0433\u0438\u0433\u0430\u0431\u0430\u0439\u0442. \u041a\u0432\u043e\u0442\u0430 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u0430 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u043f\u043e-\u0434\u0440\u0443\u0433\u043e\u043c\u0443. \u0417\u043d\u0430\u0447\u0435\u043d\u0438\u0435 <strong>cpu_limit<\/strong> \u043f\u0440\u0435\u0432\u0440\u0430\u0449\u0430\u0435\u0442\u0441\u044f \u0432 \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u043d\u043e\u0435 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u043d\u043e\u0435 \u0432\u0440\u0435\u043c\u044f \u0437\u0430 \u0441\u0435\u043a\u0443\u043d\u0434\u0443 \u0440\u0435\u0430\u043b\u044c\u043d\u043e\u0433\u043e, \u0438 \u043b\u0438\u043c\u0438\u0442 \u0432 \u0447\u0435\u0442\u044b\u0440\u0435 \u044f\u0434\u0440\u0430 \u043d\u0435 \u043f\u0440\u0438\u0432\u044f\u0437\u044b\u0432\u0430\u0435\u0442 \u0440\u0430\u0431\u043e\u0442\u0443 \u043a \u0447\u0435\u0442\u044b\u0440\u0435\u043c \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u044b\u043c. \u041f\u043b\u0430\u043d\u0438\u0440\u043e\u0432\u0449\u0438\u043a \u0440\u0430\u0441\u043a\u0438\u0434\u044b\u0432\u0430\u0435\u0442 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u044b \u043f\u043e \u0432\u0441\u0435\u043c \u0434\u0432\u0430\u0434\u0446\u0430\u0442\u0438 \u0447\u0435\u0442\u044b\u0440\u0435\u043c \u043f\u043e\u0442\u043e\u043a\u0430\u043c, \u0438 \u0432 \u043c\u043e\u043d\u0438\u0442\u043e\u0440\u0438\u043d\u0433\u0435 \u044d\u0442\u043e \u0432\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u043a\u0430\u043a \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u043c\u0430\u0448\u0438\u043d\u044b \u043d\u0430 \u0448\u0435\u0441\u0442\u0443\u044e \u0447\u0430\u0441\u0442\u044c.<\/p>\n<p>\u041f\u0440\u043e\u0432\u0435\u0440\u0438\u043c. \u0417\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u043c \u0432 \u043d\u043e\u0443\u0442\u0431\u0443\u043a\u0435 \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0443 \u0432 \u0434\u0432\u0430\u0434\u0446\u0430\u0442\u044c \u0447\u0435\u0442\u044b\u0440\u0435 \u043f\u043e\u0442\u043e\u043a\u0430 \u0438 \u0441\u043c\u043e\u0442\u0440\u0438\u043c \u043f\u043e\u0442\u0440\u0430\u0447\u0435\u043d\u043d\u043e\u0435 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u043d\u043e\u0435 \u0432\u0440\u0435\u043c\u044f \u0437\u0430 \u0442\u0440\u0438\u0434\u0446\u0430\u0442\u044c \u0441\u0435\u043a\u0443\u043d\u0434:<\/p>\n<pre><code class=\"bash\">A=$(systemctl show jupyter-analyst1-singleuser -p CPUUsageNSec --value); sleep 30; B=$(systemctl show jupyter-analyst1-singleuser -p CPUUsageNSec --value); echo \"cores used: $(echo \"scale=2; ($B - $A) \/ 30000000000\" | bc)\"cores used: 3.99<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u0410 \u0442\u0430\u043a \u043d\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u0432\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u0441\u043e \u0441\u0442\u043e\u0440\u043e\u043d\u044b \u0441\u0438\u0441\u0442\u0435\u043c\u044b:<\/p>\n<pre><code class=\"bash\">top -bn1 | head -3top - 16:55:59 up 1 day,\u00a0 1:16,\u00a0 1 user,\u00a0 load average: 0.03, 0.03, 0.01Tasks: 414 total,\u00a0 25 running, 389 sleeping, \u00a0 0 stopped, \u00a0 0 zombie%Cpu(s): 15.8 us,\u00a0 0.4 sy,\u00a0 0.0 ni, 83.8 id<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u041f\u044f\u0442\u043d\u0430\u0434\u0446\u0430\u0442\u044c \u043f\u0440\u043e\u0446\u0435\u043d\u0442\u043e\u0432 \u043f\u0440\u0438 \u0434\u0432\u0430\u0434\u0446\u0430\u0442\u0438 \u0447\u0435\u0442\u044b\u0440\u0435\u0445 \u043f\u043e\u0442\u043e\u043a\u0430\u0445 \u0438 \u0435\u0441\u0442\u044c \u0437\u0430\u044f\u0432\u043b\u0435\u043d\u043d\u044b\u0435 \u0447\u0435\u0442\u044b\u0440\u0435 \u044f\u0434\u0440\u0430.<\/p>\n<h3>\u041b\u0438\u043c\u0438\u0442\u044b \u0433\u0440\u0430\u0444\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u0430<\/h3>\n<p>\u041f\u0440\u0438 \u0437\u0430\u043f\u0443\u0441\u043a\u0435 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u043e\u0433\u043e \u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u0445\u0430\u0431 \u043f\u043e\u0434\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u0443\u044e, \u0440\u0430\u0437\u0434\u0430\u044e\u0449\u0443\u044e \u043a\u0430\u0440\u0442\u044b:<\/p>\n<pre><code class=\"python\">GPU_MAP = {'analyst1': '0', 'analyst2': ''}def assign_gpu(spawner):\u00a0\u00a0\u00a0\u00a0spawner.environment['CUDA_VISIBLE_DEVICES'] = GPU_MAP.get(spawner.user.name, '')c.Spawner.pre_spawn_hook = assign_gpu<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u041f\u0440\u0438 \u0434\u0432\u0443\u0445 \u043a\u0430\u0440\u0442\u0430\u0445 \u0432 <strong>GPU_MAP<\/strong> \u0441\u0442\u043e\u044f\u043b\u0438 \u0431\u044b \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u043d\u043e\u043b\u044c \u0438 \u043e\u0434\u0438\u043d, \u0438 \u043a\u0430\u0436\u0434\u044b\u0439 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c \u0432\u0438\u0434\u0435\u043b \u0431\u044b \u0441\u0432\u043e\u044e. \u0423 \u043d\u0430\u0441 \u043a\u0430\u0440\u0442\u0430 \u043e\u0434\u043d\u0430, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u0432\u0442\u043e\u0440\u043e\u043c\u0443 \u0430\u043d\u0430\u043b\u0438\u0442\u0438\u043a\u0443 \u0434\u043e\u0441\u0442\u0430\u043b\u043e\u0441\u044c \u043f\u0443\u0441\u0442\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u0438 \u0440\u0430\u0431\u043e\u0442\u0430 \u043d\u0430 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u0435.<\/p>\n<p>\u041f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u043f\u043e\u0434 \u043f\u0435\u0440\u0432\u044b\u043c \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u043c \u0432\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u0442\u0430\u043a:<\/p>\n<pre><code class=\"python\">import torchprint(torch.cuda.is_available(), torch.cuda.get_device_name(0))# True NVIDIA GeForce RTX 3090<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u0412\u0442\u043e\u0440\u043e\u0439 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c \u043f\u0440\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0438 \u044d\u0442\u043e\u0439 \u0436\u0435 \u043a\u043e\u043c\u0430\u043d\u0434\u044b \u043f\u043e\u043b\u0443\u0447\u0438\u0442 \u043e\u0448\u0438\u0431\u043a\u0443 \u0438\u043c\u043f\u043e\u0440\u0442\u0430. \u041f\u0440\u0438\u0447\u0438\u043d\u0430 \u043e\u0448\u0438\u0431\u043a\u0438 \u0432 \u0442\u043e\u043c, \u0447\u0442\u043e \u0443 \u043d\u0435\u0433\u043e \u043d\u0435\u0442 \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u044f PyTorch, \u043d\u043e \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u0443\u044e \u043e\u043d \u0443\u0432\u0438\u0434\u0438\u0442:<\/p>\n<pre><code class=\"python\">import osprint(os.environ.get('CUDA_VISIBLE_DEVICES'))# \u043f\u0443\u0441\u0442\u0430\u044f \u0441\u0442\u0440\u043e\u043a\u0430<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u042d\u0442\u043e\u0442 \u0441\u043f\u043e\u0441\u043e\u0431 \u0438\u043c\u0435\u0435\u0442 \u0433\u0440\u0430\u043d\u0438\u0446\u044b \u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u044f. \u041f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c \u043c\u043e\u0436\u0435\u0442 \u043f\u0435\u0440\u0435\u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u0442\u044c \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u0443\u044e \u043f\u0440\u044f\u043c\u043e \u0438\u0437 \u0441\u0432\u043e\u0435\u0433\u043e \u043d\u043e\u0443\u0442\u0431\u0443\u043a\u0430:<\/p>\n<pre><code class=\"python\">import osos.environ['CUDA_VISIBLE_DEVICES'] = ''import torchprint(torch.cuda.is_available())# False<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<figure class=\"full-width \"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/487\/730\/5b2\/4877305b247e6a6963281bf81f5f393c.png\" width=\"1920\" height=\"1078\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/getpro\/habr\/upload_files\/487\/730\/5b2\/4877305b247e6a6963281bf81f5f393c.png 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/487\/730\/5b2\/4877305b247e6a6963281bf81f5f393c.png 781w\" loading=\"lazy\" decode=\"async\"\/><\/figure>\n<p>\u0420\u0430\u0437 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c \u043c\u043e\u0436\u0435\u0442 \u0441\u0442\u0435\u0440\u0435\u0442\u044c \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0439, \u043e\u043d \u043c\u043e\u0436\u0435\u0442 \u0438 \u0432\u043f\u0438\u0441\u0430\u0442\u044c \u0442\u0443\u0434\u0430 \u0447\u0443\u0436\u0443\u044e \u043a\u0430\u0440\u0442\u0443. \u0425\u0430\u0431 \u043d\u0435 \u0437\u0430\u043f\u0440\u0435\u0449\u0430\u0435\u0442 \u0434\u043e\u0441\u0442\u0443\u043f \u043a \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430\u043c, \u0430 \u043b\u0438\u0448\u044c \u043f\u043e\u0434\u0441\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0435, \u043a\u0430\u043a\u0438\u0435 \u0438\u0437 \u043d\u0438\u0445 \u0431\u0440\u0430\u0442\u044c.<\/p>\n<h3>\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438<\/h3>\n<h4>\u041e\u0431\u0440\u0430\u0442\u043d\u044b\u0439 \u043f\u0440\u043e\u043a\u0441\u0438<\/h4>\n<p>\u0414\u043e \u044d\u0442\u043e\u0433\u043e \u043c\u043e\u043c\u0435\u043d\u0442\u0430 \u043c\u044b \u0440\u0430\u0431\u043e\u0442\u0430\u043b\u0438 \u0441 \u0434\u043e\u0441\u0442\u0443\u043f\u043e\u043c \u0447\u0435\u0440\u0435\u0437 \u0442\u0443\u043d\u043d\u0435\u043b\u044c, \u0438 \u044d\u0442\u043e \u044f\u0432\u043d\u043e \u043d\u0435\u0443\u0434\u043e\u0431\u043d\u043e, \u0442\u0430\u043a\u043e\u0439 \u043f\u043e\u0434\u0445\u043e\u0434 \u0433\u043e\u0434\u0438\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u0434\u043b\u044f \u0442\u0435\u0441\u0442\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0438\u043b\u0438 \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u0438\u0445 \u043a\u043e\u043b\u043b\u0435\u043a\u0442\u0438\u0432\u043e\u0432. \u0414\u043b\u044f \u043f\u0440\u043e\u0434\u0443\u043a\u0442\u043e\u0432\u043e\u0439 \u0441\u0440\u0435\u0434\u044b \u043d\u0443\u0436\u0435\u043d \u043e\u0431\u044b\u0447\u043d\u044b\u0439 \u0430\u0434\u0440\u0435\u0441. \u0421\u0442\u0430\u0432\u0438\u043c nginx \u043f\u0435\u0440\u0435\u0434 \u0445\u0430\u0431\u043e\u043c:<\/p>\n<pre><code class=\"nginx\">server {\u00a0\u00a0\u00a0\u00a0listen 80;\u00a0\u00a0\u00a0\u00a0server_name jupyter.example.com;\u00a0\u00a0\u00a0\u00a0location \/ {\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0proxy_pass http:\/\/127.0.0.1:8000;\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0proxy_http_version 1.1;\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0proxy_set_header Upgrade $http_upgrade;\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0proxy_set_header Connection \"upgrade\";\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0proxy_set_header X-Real-IP $remote_addr;\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0proxy_set_header Host $host;\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0client_max_body_size 2G;\u00a0\u00a0\u00a0\u00a0}}<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u0421\u0442\u0440\u043e\u043a\u0438 <strong>proxy_http_version<\/strong>, <strong>Upgrade<\/strong> \u0438 <strong>Connection<\/strong> \u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u044b. \u0425\u043e\u0442\u044c \u0431\u0435\u0437 \u043d\u0438\u0445 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u0441\u044f \u0438 \u0444\u0430\u0439\u043b\u044b \u0431\u0443\u0434\u0443\u0442 \u0432\u0438\u0434\u043d\u044b, \u043d\u043e \u044f\u0434\u0440\u043e \u043d\u0435 \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u0441\u044f, \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u0441\u0432\u044f\u0437\u044c \u0441 \u043d\u0438\u043c \u0438\u0434\u0435\u0442 \u043f\u043e \u043f\u043e\u0441\u0442\u043e\u044f\u043d\u043d\u043e\u043c\u0443 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044e. \u041f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 <strong>client_max_body_size<\/strong> \u043d\u0443\u0436\u0435\u043d \u0434\u043b\u044f \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u043d\u0430\u0431\u043e\u0440\u043e\u0432 \u0434\u0430\u043d\u043d\u044b\u0445 \u0447\u0435\u0440\u0435\u0437 \u0444\u0430\u0439\u043b\u043e\u0432\u044b\u0439 \u0431\u0440\u0430\u0443\u0437\u0435\u0440.<\/p>\n<p>\u0417\u0430\u0442\u0435\u043c \u0432\u043a\u043b\u044e\u0447\u0430\u0435\u043c \u043d\u0430\u0448\u0443 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044e, \u043e\u0442\u043a\u043b\u044e\u0447\u0430\u0435\u043c \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044e <strong>default<\/strong> \u0438 \u043f\u0435\u0440\u0435\u0437\u0430\u0433\u0440\u0443\u0436\u0430\u0435\u043c nginx:<\/p>\n<pre><code class=\"bash\">ln -sf \/etc\/nginx\/sites-available\/jupyterhub \/etc\/nginx\/sites-enabled\/rm -f \/etc\/nginx\/sites-enabled\/defaultnginx -t &amp;&amp; systemctl reload nginx<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u0422\u0435\u043f\u0435\u0440\u044c \u0445\u0430\u0431 \u043f\u0440\u0435\u0434\u0443\u043f\u0440\u0435\u0436\u0434\u0430\u0435\u0442, \u0447\u0442\u043e \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 \u043d\u0435 \u0437\u0430\u0449\u0438\u0449\u0435\u043d\u043e:<\/p>\n<figure class=\"full-width \"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/30c\/772\/ea1\/30c772ea1ba435a00d905d0ee1e50121.png\" width=\"1920\" height=\"1078\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/getpro\/habr\/upload_files\/30c\/772\/ea1\/30c772ea1ba435a00d905d0ee1e50121.png 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/30c\/772\/ea1\/30c772ea1ba435a00d905d0ee1e50121.png 781w\" loading=\"lazy\" decode=\"async\"\/><\/figure>\n<h4>\u0421\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442 Let&#8217;s Encrypt<\/h4>\n<p>\u0414\u043b\u044f \u0432\u044b\u043f\u0443\u0441\u043a\u0430 \u043d\u0443\u0436\u043d\u0430 \u0410 \u0437\u0430\u043f\u0438\u0441\u044c \u0432 \u0437\u043e\u043d\u0435 \u0434\u043e\u043c\u0435\u043d\u0430, \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u044e\u0449\u0430\u044f \u043d\u0430 \u0430\u0434\u0440\u0435\u0441 \u0441\u0435\u0440\u0432\u0435\u0440\u0430. \u041f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c \u043c\u043e\u0436\u043d\u043e \u043a\u043e\u043c\u0430\u043d\u0434\u043e\u0439:<\/p>\n<pre><code class=\"bash\">dig +short jupyter.example.com \u00a0 \u00a0 # \u0434\u043e\u043b\u0436\u0435\u043d \u043e\u0442\u0432\u0435\u0442\u0438\u0442\u044c \u0430\u0434\u0440\u0435\u0441\u043e\u043c \u0441\u0435\u0440\u0432\u0435\u0440\u0430<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u041f\u0435\u0440\u0435\u0434 \u0432\u044b\u043f\u0443\u0441\u043a\u043e\u043c \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u0430 \u043c\u043e\u0436\u043d\u043e \u043f\u0440\u043e\u0432\u0435\u0441\u0442\u0438 \u0440\u0435\u043f\u0435\u0442\u0438\u0446\u0438\u044e, \u043f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u043e\u0434\u0438\u043d\u0430\u043a\u043e\u0432\u044b\u0445 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0432 \u0432\u044b\u0434\u0430\u044e\u0442 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u043d\u043e\u0435 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u0432 \u043d\u0435\u0434\u0435\u043b\u044e:<\/p>\n<pre><code class=\"bash\">apt install -y certbot python3-certbot-nginxcertbot certonly --nginx -d jupyter.example.com --dry-run<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u0420\u0435\u043f\u0435\u0442\u0438\u0446\u0438\u044f \u0443\u043c\u0435\u0435\u0442 \u0442\u043e\u043b\u044c\u043a\u043e \u043f\u043e\u043b\u0443\u0447\u0430\u0442\u044c \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442, \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0432\u0435\u0431-\u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u043e\u043d\u0430 \u043d\u0435 \u043f\u0440\u0435\u0434\u043f\u043e\u043b\u0430\u0433\u0430\u0435\u0442:<\/p>\n<pre><code class=\"bash\">--dry-run currently only works with the 'certonly' or 'renew' subcommands ('run')<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u041f\u043e\u0441\u043b\u0435 \u0443\u0441\u043f\u0435\u0448\u043d\u043e\u0439 \u0440\u0435\u043f\u0435\u0442\u0438\u0446\u0438\u0438 \u0432\u044b\u043f\u0443\u0441\u043a\u0430\u0435\u043c \u0443\u0436\u0435 \u0434\u0435\u0439\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0439 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442:<\/p>\n<pre><code class=\"bash\">certbot --nginx -d jupyter.example.com<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u0421\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442 \u0432\u044b\u043f\u0443\u0449\u0435\u043d, \u043d\u043e \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c \u0435\u0433\u043e \u0432 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044e \u0441\u0440\u0430\u0437\u0443 \u0443 \u043d\u0430\u0441 \u043d\u0435 \u0432\u044b\u0448\u043b\u043e:<\/p>\n<pre><code class=\"bash\">Successfully received certificate.Could not install certificateCould not automatically find a matching server block for jupyter.example.com.Set the server_name directive to use the Nginx installer.<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u0412 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438 \u0443 \u043d\u0430\u0441 \u0441\u0442\u043e\u044f\u043b\u043e \u043f\u043e\u0434\u0441\u0442\u0430\u043d\u043e\u0432\u043e\u0447\u043d\u043e\u0435 \u0438\u043c\u044f <strong>server_name _<\/strong>, \u0430 certbot \u0438\u0449\u0435\u0442 \u0431\u043b\u043e\u043a \u0441 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u044b\u043c \u0438\u043c\u0435\u043d\u0435\u043c \u0434\u043e\u043c\u0435\u043d\u0430. \u0421\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442 \u043f\u0440\u0438 \u044d\u0442\u043e\u043c \u0443\u0436\u0435 \u0432\u044b\u043f\u0443\u0449\u0435\u043d \u0438 \u043b\u0438\u043c\u0438\u0442 \u043f\u043e\u0442\u0440\u0430\u0447\u0435\u043d, \u043f\u043e\u0432\u0442\u043e\u0440\u044f\u0442\u044c \u0432\u044b\u043f\u0443\u0441\u043a \u043d\u0435 \u043d\u0443\u0436\u043d\u043e, \u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e \u0432\u043f\u0438\u0441\u0430\u0442\u044c \u0438\u043c\u044f \u0434\u043e\u043c\u0435\u043d\u0430 \u0432 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044e, \u043f\u0435\u0440\u0435\u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u044c nginx \u0438 \u043f\u043e\u0432\u0442\u043e\u0440\u0438\u0442\u044c \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0443 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u0430 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e\u0439 \u043a\u043e\u043c\u0430\u043d\u0434\u043e\u0439:<\/p>\n<pre><code class=\"bash\">sed -i 's\/server_name ;\/servername jupyter.example.com;\/' \/etc\/nginx\/sites-available\/jupyterhubnginx -t &amp;&amp; systemctl reload nginxcertbot install --cert-name jupyter.example.com<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u041f\u0440\u043e\u0432\u0435\u0440\u044f\u0435\u043c:<\/p>\n<pre><code class=\"bash\">certbot certificatesCertificate Name: jupyter.example.comKey Type: ECDSAExpiry Date: 2026-11-09 (VALID: 89 days)<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u0438<\/p>\n<pre><code class=\"bash\">curl -sI http:\/\/jupyter.example.com | head -2HTTP\/1.1 301 Moved PermanentlyServer: nginx\/1.28.3 (Ubuntu)<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u0423\u043a\u0430\u0437\u0430\u043d\u043e \u0438 \u0432\u0440\u0435\u043c\u044f \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u0430 \u0432 90 \u0434\u043d\u0435\u0439, \u0438 301 \u043a\u043e\u0434 \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0430\u0435\u0442, \u0447\u0442\u043e \u043f\u0440\u0438 \u043f\u0435\u0440\u0435\u0445\u043e\u0434\u0435 \u043f\u043e \u0430\u0434\u0440\u0435\u0441\u0443 \u0431\u0435\u0437 \u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0431\u0443\u0434\u0435\u0442 \u043d\u0443\u0436\u043d\u043e\u0435 \u043f\u0435\u0440\u0435\u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435.<\/p>\n<figure class=\"full-width \"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/f3f\/b4a\/446\/f3fb4a4464141ba460e46e01b32aca11.png\" width=\"1920\" height=\"1078\" sizes=\"auto, (max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/getpro\/habr\/upload_files\/f3f\/b4a\/446\/f3fb4a4464141ba460e46e01b32aca11.png 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/getpro\/habr\/upload_files\/f3f\/b4a\/446\/f3fb4a4464141ba460e46e01b32aca11.png 781w\" loading=\"lazy\" decode=\"async\"\/><\/figure>\n<h3>\u041c\u043e\u043d\u0438\u0442\u043e\u0440\u0438\u043d\u0433 \u0438 \u043b\u043e\u0433\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435<\/h3>\n<p>\u041f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u0438\u0435 \u0441\u0435\u0440\u0432\u0435\u0440\u044b \u044f\u0432\u043b\u044f\u044e\u0442\u0441\u044f \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u043c\u0438 \u044e\u043d\u0438\u0442\u0430\u043c\u0438, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u043d\u0430\u0438\u0431\u043e\u043b\u0435\u0435 \u0443\u0434\u043e\u0431\u043d\u044b\u043c \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u043e\u043c \u043d\u0430\u043c \u043f\u043e\u043a\u0430\u0437\u0430\u043b\u0441\u044f systemd:<\/p>\n<pre><code class=\"bash\">systemctl list-units 'jupyter-*' \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 # \u0430\u043a\u0442\u0438\u0432\u043d\u044b\u0435 \u0441\u0435\u0441\u0441\u0438\u0438systemd-cgls -u jupyter-analyst1-singleuser.service \u00a0 # \u0434\u0435\u0440\u0435\u0432\u043e \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0432<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p><strong>systemd-cgtop <\/strong>\u043f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442 \u043e\u0431\u0449\u0443\u044e \u043a\u0430\u0440\u0442\u0438\u043d\u0443, \u0438 \u0432\u043c\u0435\u0441\u0442\u0435 \u0441 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u0438\u043c\u0438 \u0441\u0435\u0440\u0432\u0435\u0440\u0430\u043c\u0438 \u0432\u0438\u0434\u043d\u044b \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0435 \u0441\u043b\u0443\u0436\u0431\u044b. \u041f\u0435\u0440\u0432\u044b\u0439 \u043f\u0440\u043e\u0445\u043e\u0434 \u044d\u0442\u043e\u0439 \u043a\u043e\u043c\u0430\u043d\u0434\u044b \u043f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442 \u043d\u0443\u043b\u0438, \u0430 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0441\u0447\u0438\u0442\u0430\u044e\u0442\u0441\u044f \u043a\u0430\u043a \u0440\u0430\u0437\u043d\u0438\u0446\u0430 \u043c\u0435\u0436\u0434\u0443 \u0434\u0432\u0443\u043c\u044f \u0437\u0430\u043c\u0435\u0440\u0430\u043c\u0438. \u0421\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u043a\u0430\u0440\u0442\u044b \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0435\u0442\u0441\u044f \u0448\u0442\u0430\u0442\u043d\u043e\u0439 \u0443\u0442\u0438\u043b\u0438\u0442\u043e\u0439:<\/p>\n<pre><code class=\"bash\">nvidia-smi\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 # \u0440\u0430\u0437\u043e\u0432\u044b\u0439 \u0441\u043d\u0438\u043c\u043e\u043awatch -n1 nvidia-smi\u00a0 \u00a0 # \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435 \u0440\u0430\u0437 \u0432 \u0441\u0435\u043a\u0443\u043d\u0434\u0443<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u0416\u0443\u0440\u043d\u0430\u043b\u044b \u0440\u0430\u0437\u043d\u0435\u0441\u0435\u043d\u044b:<\/p>\n<pre><code class=\"bash\">journalctl -u jupyterhub -f # \u0441\u0430\u043c \u0445\u0430\u0431journalctl -u jupyter-analyst1-singleuser # \u0441\u0435\u0441\u0441\u0438\u044f \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044fdmesg -T | grep -iE \"oom-kill|killed process\" # \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u044f \u044f\u0434\u0440\u0430<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u041f\u043e\u0434\u043e\u0431\u043d\u043e\u0435 \u0440\u0430\u0437\u043d\u0435\u0441\u0435\u043d\u0438\u0435 \u043c\u0435\u0442\u0440\u0438\u043a \u043f\u043e\u043b\u0435\u0437\u043d\u043e \u043f\u0440\u0438 \u0440\u0430\u0437\u0431\u043e\u0440\u0435 \u043e\u0448\u0438\u0431\u043e\u043a \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440\u043e\u043c.<\/p>\n<p>\u041f\u043e\u043b\u043d\u043e\u0446\u0435\u043d\u043d\u044b\u0439 \u0441\u0431\u043e\u0440 \u043c\u0435\u0442\u0440\u0438\u043a \u043c\u044b \u0437\u0434\u0435\u0441\u044c \u043d\u0435 \u0440\u0430\u0437\u0431\u0438\u0440\u0430\u0435\u043c, \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u044d\u0442\u043e \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u0430\u044f \u0437\u0430\u0434\u0430\u0447\u0430 \u0441\u043e \u0441\u0432\u043e\u0435\u0439 \u0438\u043d\u0444\u0440\u0430\u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u043e\u0439. \u0425\u0430\u0431 \u043e\u0442\u0434\u0430\u0451\u0442 \u043c\u0435\u0442\u0440\u0438\u043a\u0438 \u0432 \u0444\u043e\u0440\u043c\u0430\u0442\u0435 Prometheus \u043f\u043e \u0430\u0434\u0440\u0435\u0441\u0443 <strong>\/hub\/metrics<\/strong>, \u043f\u0440\u0438\u0447\u0451\u043c<a href=\"https:\/\/jupyterhub.readthedocs.io\/en\/stable\/reference\/monitoring.html\"> \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044f<\/a> \u0443\u043f\u043e\u043c\u0438\u043d\u0430\u0435\u0442 <strong>\/metrics<\/strong>, \u0430 \u043d\u0430 \u0434\u0435\u043b\u0435 \u043e\u0431\u0440\u0430\u0449\u0435\u043d\u0438\u0435 \u043a \u043d\u0435\u043c\u0443 \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u0435\u0442 \u043f\u0435\u0440\u0435\u043d\u0430\u043f\u0440\u0430\u0432\u043b\u0435\u043d\u0438\u0435. \u0414\u043e\u0441\u0442\u0443\u043f \u0437\u0430\u043a\u0440\u044b\u0442, \u0438 \u043a\u043b\u044e\u0447\u0430 \u043e\u0431\u044b\u0447\u043d\u043e\u0433\u043e \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u043c\u0430\u043b\u043e, \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e \u0432\u044b\u0434\u0430\u043d\u043d\u043e\u0435 \u043f\u0440\u0430\u0432\u043e <strong>read:metrics<\/strong>. \u0421\u0440\u0435\u0434\u0438 <a href=\"https:\/\/jupyterhub.readthedocs.io\/en\/stable\/reference\/metrics.html\">\u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0445 \u043c\u0435\u0442\u0440\u0438\u043a<\/a> \u0435\u0441\u0442\u044c <strong>jupyterhub_running_servers<\/strong> \u0441 \u0447\u0438\u0441\u043b\u043e\u043c \u0437\u0430\u043f\u0443\u0449\u0435\u043d\u043d\u044b\u0445 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u0438\u0445 \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432 \u0438 <strong>jupyterhub_server_spawn_duration_seconds<\/strong> \u0441\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u0435\u043c \u0438\u0445 \u0437\u0430\u043f\u0443\u0441\u043a\u0430.<\/p>\n<h3>\u0420\u0435\u0437\u0435\u0440\u0432\u043d\u043e\u0435 \u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435<\/h3>\n<p>\u0414\u043e\u043c\u0430\u0448\u043d\u0438\u0435 \u043a\u0430\u0442\u0430\u043b\u043e\u0433\u0438 \u043c\u043e\u0433\u0443\u0442 \u0437\u0430\u043d\u0438\u043c\u0430\u0442\u044c \u043c\u043d\u043e\u0433\u043e \u043c\u0435\u0441\u0442\u0430, \u0438 \u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0438\u0445 \u0446\u0435\u043b\u0438\u043a\u043e\u043c \u2014 \u044d\u0442\u043e \u0432\u0435\u0441\u044c\u043c\u0430 \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0437\u0430\u0442\u0440\u0430\u0442\u043d\u044b\u0439 \u043f\u043e\u0434\u0445\u043e\u0434. \u041f\u043e\u043b\u043d\u044b\u0439 \u043e\u0431\u044a\u0435\u043c \/home \u043d\u0430 \u043d\u0430\u0448\u0435\u043c \u0441\u0442\u0435\u043d\u0434\u0435 \u0437\u0430\u043d\u0438\u043c\u0430\u043b 7.9 \u0433\u0438\u0433\u0430\u0431\u0430\u0439\u0442\u0430, \u0430 \u043a\u043e\u043f\u0438\u044f \u0441 \u0438\u0441\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f\u043c\u0438 \u2014 \u0432\u0441\u0435\u0433\u043e 348 \u043a\u0438\u043b\u043e\u0431\u0430\u0439\u0442. \u0420\u0430\u0437\u043d\u0438\u0446\u0430 \u043f\u0440\u0438\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u043d\u0430 \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u044f \u0438 \u043a\u0435\u0448\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043b\u0435\u0433\u043a\u043e \u043f\u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0437\u0430\u043d\u043e\u0432\u043e \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043e\u0434\u043d\u043e\u0439 \u043a\u043e\u043c\u0430\u043d\u0434\u044b \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438, \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0435\u043d\u043d\u043e, \u0438 \u0432 \u0430\u0440\u0445\u0438\u0432 \u043e\u043d\u0438 \u043d\u0435 \u043f\u043e\u043f\u0430\u0434\u0430\u044e\u0442.<\/p>\n<pre><code class=\"bash\">#!\/bin\/bashset -euo pipefail # \u043e\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u043f\u0440\u0438 \u043f\u0435\u0440\u0432\u043e\u0439 \u043e\u0448\u0438\u0431\u043a\u0435# \u0438\u0441\u043a\u043b\u044e\u0447\u0430\u0435\u043c \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u044f, \u043a\u0435\u0448\u0438, \u0441\u043b\u0443\u0436\u0435\u0431\u043d\u044b\u0435 \u043a\u043e\u043f\u0438\u0438 \u043d\u043e\u0443\u0442\u0431\u0443\u043a\u043e\u0432,# \u0444\u0430\u0439\u043b\u044b \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0449\u0438\u0445 \u044f\u0434\u0435\u0440 \u0438 \u0441\u043a\u043e\u043c\u043f\u0438\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0435 \u043c\u043e\u0434\u0443\u043b\u0438rsync -a --delete \\\u00a0\u00a0--exclude 'venvs\/' \\\u00a0\u00a0--exclude '.cache\/' \\\u00a0\u00a0--exclude '.ipynb_checkpoints\/' \\\u00a0\u00a0--exclude '.local\/share\/jupyter\/runtime\/' \\\u00a0\u00a0--exclude '__pycache__\/' \\\u00a0\u00a0\/home\/ \/backup\/home\/<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u0420\u0430\u0441\u043f\u0438\u0441\u0430\u043d\u0438\u0435 \u0443\u0434\u043e\u0431\u043d\u0435\u0435 \u0432\u0435\u0441\u0442\u0438 \u0442\u0430\u0439\u043c\u0435\u0440\u043e\u043c systemd, \u0430 \u043d\u0435 \u0447\u0435\u0440\u0435\u0437 cron, \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u0443 \u0442\u0430\u0439\u043c\u0435\u0440\u0430 \u0435\u0441\u0442\u044c \u0436\u0443\u0440\u043d\u0430\u043b, \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u0438 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a \u043f\u0440\u0438 \u0441\u0431\u043e\u0435. \u042e\u043d\u0438\u0442\u043e\u0432 \u043d\u0443\u0436\u043d\u043e \u0434\u0432\u0430: \u0441\u043b\u0443\u0436\u0431\u0430 \u0441 \u0441\u0430\u043c\u0438\u043c \u0441\u043a\u0440\u0438\u043f\u0442\u043e\u043c \u0438 \u0442\u0430\u0439\u043c\u0435\u0440 \u0441 \u0440\u0430\u0441\u043f\u0438\u0441\u0430\u043d\u0438\u0435\u043c.<\/p>\n<p>\u041f\u0435\u0440\u0432\u044b\u0439:<\/p>\n<pre><code class=\"bash\"># \/etc\/systemd\/system\/backup-notebooks.service[Unit]Description=Backup notebooks[Service]Type=oneshotExecStart=\/usr\/local\/bin\/backup-notebooks.sh<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u0412\u0442\u043e\u0440\u043e\u0439:<\/p>\n<pre><code class=\"bash\">\/etc\/systemd\/system\/backup-notebooks.timer[Unit]Description=Backup notebooks daily[Timer]OnCalendar=dailyPersistent=true[Install]WantedBy=timers.target<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u0412\u043a\u043b\u044e\u0447\u0430\u0435\u043c \u0442\u0430\u0439\u043c\u0435\u0440 \u0438 \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0435\u043c \u0432\u0440\u0435\u043c\u044f \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0433\u043e \u0437\u0430\u043f\u0443\u0441\u043a\u0430:<\/p>\n<pre><code class=\"bash\">systemctl daemon-reloadsystemctl enable --now backup-notebooks.timer\u00a0 \u00a0 \u00a0 # \u0432\u043a\u043b\u044e\u0447\u0430\u0435\u0442 \u0435\u0436\u0435\u0434\u043d\u0435\u0432\u043d\u043e\u0435 \u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435systemctl list-timers backup-notebooks --no-pager\u00a0 # \u0432\u0440\u0435\u043c\u044f \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0433\u043e \u0437\u0430\u043f\u0443\u0441\u043a\u0430NEXT \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 LEFT LAST PASSED UNIT \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 ACTIVATESWed 2026-08-12 00:00:00 CEST \u00a0 6h - \u00a0 \u00a0 \u00a0 \u00a0 - backup-notebooks.timer backup-notebooks.service<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u041f\u0430\u0440\u0430\u043c\u0435\u0442\u0440 <strong>Persistent<\/strong> \u0434\u043e\u0433\u043e\u043d\u044f\u0435\u0442 \u043f\u0440\u043e\u043f\u0443\u0449\u0435\u043d\u043d\u044b\u0439 \u0437\u0430\u043f\u0443\u0441\u043a, \u0435\u0441\u043b\u0438 \u043c\u0430\u0448\u0438\u043d\u0430 \u0431\u044b\u043b\u0430 \u0432\u044b\u043a\u043b\u044e\u0447\u0435\u043d\u0430 \u0432 \u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u043d\u043e\u0435 \u0432\u0440\u0435\u043c\u044f. \u041a\u043e\u043f\u0438\u044f \u043d\u0430 \u0442\u043e\u043c \u0436\u0435 \u0441\u0435\u0440\u0432\u0435\u0440\u0435 \u0441\u043f\u0430\u0441\u0430\u0435\u0442 \u043e\u0442 \u043e\u0448\u0438\u0431\u043e\u0447\u043d\u043e\u0433\u043e \u0443\u0434\u0430\u043b\u0435\u043d\u0438\u044f \u0444\u0430\u0439\u043b\u0430. \u041d\u0430 \u0441\u043b\u0443\u0447\u0430\u0439 \u043f\u043e\u0442\u0435\u0440\u0438 \u0432\u0441\u0435\u0433\u043e \u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e\u0435 \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435. \u0418\u0441\u0442\u043e\u0440\u0438\u044e \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0439 \u043d\u043e\u0443\u0442\u0431\u0443\u043a\u043e\u0432 \u0432\u0435\u0434\u0451\u0442 \u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044f \u0432\u0435\u0440\u0441\u0438\u0439.<\/p>\n<h3>\u0422\u0440\u0430\u0431\u043b\u0448\u0443\u0442\u0438\u043d\u0433<\/h3>\n<p>\u0412\u0441\u0435 \u0441\u043b\u0443\u0447\u0430\u0438, \u043f\u0435\u0440\u0435\u0447\u0438\u0441\u043b\u0435\u043d\u043d\u044b\u0435 \u043d\u0438\u0436\u0435, \u0432\u0441\u0442\u0440\u0435\u0447\u0430\u043b\u0438\u0441\u044c \u043d\u0430\u043c \u043d\u0430 \u043f\u0440\u0430\u043a\u0442\u0438\u043a\u0435.<\/p>\n<h4>\u041e\u0448\u0438\u0431\u043a\u0430 \u0438\u043c\u043f\u043e\u0440\u0442\u0430 \u043f\u0440\u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043d\u043e\u0439 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0435<\/h4>\n<pre><code class=\"bash\">ModuleNotFoundError: No module named 'torch'<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u041a\u0430\u0436\u0434\u043e\u0435 \u044f\u0434\u0440\u043e \u0441\u043c\u043e\u0442\u0440\u0438\u0442 \u0432 \u0441\u0432\u043e\u0451 \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u0435. \u042f\u0434\u0440\u043e <strong>Python 3 (ipykernel)<\/strong> \u043f\u0440\u0438\u0445\u043e\u0434\u0438\u0442 \u0438\u0437 \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u044f \u0445\u0430\u0431\u0430, \u0433\u0434\u0435 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a \u0434\u043b\u044f \u0440\u0430\u0441\u0447\u0451\u0442\u043e\u0432 \u043d\u0435\u0442. \u0420\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0432 \u044f\u0434\u0440\u0435 <strong>Python (ml)<\/strong>, \u0437\u0430\u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u043e\u043c \u0438\u0437 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u043e\u0433\u043e \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u044f.<\/p>\n<h4>\u041f\u0430\u0440\u043e\u043b\u044c \u0432\u0435\u0440\u043d\u044b\u0439, \u043d\u043e \u043d\u0435 \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u0442\u0441\u044f \u0432\u043e\u0439\u0442\u0438 \u0432 \u0432\u0435\u0431-\u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0435<\/h4>\n<p>\u041e\u0448\u0438\u0431\u043a\u0430 \u0432\u0441\u0442\u0440\u0435\u0447\u0430\u0435\u0442\u0441\u044f \u043f\u0440\u0438 \u043f\u043e\u043f\u044b\u0442\u043a\u0435 \u0432\u0432\u0435\u0441\u0442\u0438 \u0434\u0430\u043d\u043d\u044b\u0435 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u0432 \u0432\u0435\u0431-\u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0435. \u0411\u0440\u0430\u0443\u0437\u0435\u0440 \u0441\u043e\u043e\u0431\u0449\u0430\u0435\u0442 \u043e \u043d\u0435\u0432\u0435\u0440\u043d\u044b\u0445 \u0434\u0430\u043d\u043d\u044b\u0445, \u0432 \u0436\u0443\u0440\u043d\u0430\u043b\u0435 \u0441\u0442\u043e\u0438\u0442 <strong>User &#8230; not allowed<\/strong>. \u042d\u0442\u043e\u0442 \u043a\u0435\u0439\u0441 \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u043e \u0440\u0430\u0437\u043e\u0431\u0440\u0430\u043d \u0432 \u0440\u0430\u0437\u0434\u0435\u043b\u0435 \u043f\u0440\u043e \u043c\u043d\u043e\u0433\u043e\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u0438\u0439 \u0434\u043e\u0441\u0442\u0443\u043f.<\/p>\n<h4>\u0423\u0447\u0435\u0442\u043d\u0430\u044f \u0437\u0430\u043f\u0438\u0441\u044c \u0437\u0430\u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u0430\u043d\u0430<\/h4>\n<p>\u0421\u0438\u043c\u043f\u0442\u043e\u043c\u044b \u0443 \u044d\u0442\u043e\u0439 \u043e\u0448\u0438\u0431\u043a\u0438 \u0430\u043d\u0430\u043b\u043e\u0433\u0438\u0447\u043d\u044b\u0435, \u043d\u043e \u043f\u0440\u0438\u0447\u0438\u043d\u0430 \u0432 \u0442\u043e\u043c, \u0447\u0442\u043e \u043f\u0430\u0440\u043e\u043b\u044c \u043d\u0435 \u0437\u0430\u0434\u0430\u043d.\u00a0<\/p>\n<pre><code class=\"bash\">passwd -S \u0438\u043c\u044f_\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f\u0438\u043c\u044f_\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f P 2026-08-11 0 99999 7 -1<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u0411\u0443\u043a\u0432\u0430 <strong>P<\/strong> \u0432 \u0432\u044b\u0432\u043e\u0434\u0435 \u0441\u0432\u0438\u0434\u0435\u0442\u0435\u043b\u044c\u0441\u0442\u0432\u0443\u0435\u0442 \u043e\u0431 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043d\u043e\u043c \u043f\u0430\u0440\u043e\u043b\u0435, <strong>L<\/strong> \u2014 \u0441\u043e\u043e\u0431\u0449\u0430\u0435\u0442 \u043e \u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u043a\u0435. \u0424\u043b\u0430\u0433 <strong>&#8212;disabled-password<\/strong> \u043f\u0440\u0438 \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u0438 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u043a\u0430\u043a \u0440\u0430\u0437 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 <strong>L<\/strong>.<\/p>\n<h4>\u0421\u043b\u0443\u0436\u0431\u0430 \u0430\u043a\u0442\u0438\u0432\u043d\u0430, \u043d\u043e \u043d\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442<\/h4>\n<p>\u0421\u0442\u0430\u0442\u0443\u0441 \u043f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442 <strong>active (running)<\/strong>, \u043d\u043e \u0445\u0430\u0431 \u043d\u0435\u0434\u043e\u0441\u0442\u0443\u043f\u0435\u043d.<\/p>\n<pre><code class=\"bash\">Active: activating (auto-restart) (Result: exit-code)Process: 8928 ExecStart=... (code=exited, status=1\/FAILURE)<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u041f\u0430\u0440\u0430\u043c\u0435\u0442\u0440<strong> Restart=always<\/strong> \u043f\u043e\u0434\u043d\u0438\u043c\u0430\u0435\u0442 \u0443\u043f\u0430\u0432\u0448\u0443\u044e \u0441\u043b\u0443\u0436\u0431\u0443 \u0437\u0430\u043d\u043e\u0432\u043e, \u0438\u0437-\u0437\u0430 \u0447\u0435\u0433\u043e \u0441\u043d\u0430\u0440\u0443\u0436\u0438 \u0432\u0441\u0451 \u0432\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u043d\u043e\u0440\u043c\u0430\u043b\u044c\u043d\u043e, \u043d\u043e \u043d\u043e\u043c\u0435\u0440 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0430 \u0432 \u0436\u0443\u0440\u043d\u0430\u043b\u0435 \u0438\u0437\u043c\u0435\u043d\u044f\u0435\u0442\u0441\u044f \u043a\u0430\u0436\u0434\u044b\u0435 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0441\u0435\u043a\u0443\u043d\u0434.\u00a0<\/p>\n<p>\u041f\u0440\u0438\u0447\u0438\u043d\u0430 \u0432\u0438\u0434\u043d\u0430 \u0432 \u043b\u043e\u0433\u0430\u0445:<\/p>\n<pre><code class=\"bash\">[ConfigProxy] error: listen EADDRINUSE: address already in use 127.0.0.1:8000tornado.httpclient.HTTPClientError: HTTP 403: Forbidden<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u041e\u0442 \u043f\u0440\u0435\u0436\u043d\u0435\u0433\u043e \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u043e\u0441\u0442\u0430\u043b\u0441\u044f \u0436\u0438\u0432\u043e\u0439 \u043f\u0440\u043e\u043a\u0441\u0438, \u0438 \u043d\u043e\u0432\u044b\u0439 \u0441\u0442\u0430\u0440\u0442 \u0441\u043f\u043e\u0442\u044b\u043a\u0430\u0435\u0442\u0441\u044f \u043e\u0431 \u0437\u0430\u043d\u044f\u0442\u044b\u0435 \u043f\u043e\u0440\u0442\u044b. \u0412\u0434\u043e\u0431\u0430\u0432\u043e\u043a \u0445\u0430\u0431 \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u0442 \u043e\u0442\u043a\u0430\u0437 \u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u043a \u0447\u0443\u0436\u043e\u043c\u0443 \u043f\u0440\u043e\u043a\u0441\u0438, \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u043a\u043b\u044e\u0447 \u0443 \u043f\u0440\u0435\u0436\u043d\u0435\u0433\u043e \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u0431\u044b\u043b \u0434\u0440\u0443\u0433\u043e\u0439.<\/p>\n<p>\u041d\u0430\u0439\u0442\u0438 \u0432\u0438\u043d\u043e\u0432\u043d\u0438\u043a\u0430 \u043f\u043e \u0438\u043c\u0435\u043d\u0438 \u043d\u0435 \u0432\u044b\u0439\u0434\u0435\u0442, \u0432 \u0441\u043f\u0438\u0441\u043a\u0435 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0432 \u043f\u0440\u043e\u043a\u0441\u0438 \u0437\u043d\u0430\u0447\u0438\u0442\u0441\u044f \u043a\u0430\u043a <strong>node<\/strong>.<\/p>\n<pre><code class=\"bash\">ss -tlnp | grep -E ':8000|:8001'LISTEN 127.0.0.1:8000\u00a0 users:((\"node\",pid=9340,fd=24))<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u041f\u0440\u043e\u0449\u0435 \u0438 \u043d\u0430\u0434\u0435\u0436\u043d\u0435\u0435 \u0447\u0438\u0441\u0442\u0438\u0442\u044c \u043f\u043e \u043f\u043e\u0440\u0442\u0430\u043c:<\/p>\n<pre><code class=\"bash\">systemctl stop jupyterhubfuser -k 8000\/tcp 8001\/tcp \u00a0 \u00a0 # \u0443\u0431\u0438\u0432\u0430\u0435\u0442 \u0442\u043e, \u0447\u0442\u043e \u0434\u0435\u0440\u0436\u0438\u0442 \u043f\u043e\u0440\u0442\u044b \u0445\u0430\u0431\u0430systemctl start jupyterhub<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><img style=\"width:14px;height:14px;object-fit:cover;object-position:left;\"\/><\/a><\/div><\/pre>\n<p>\u0417\u0434\u043e\u0440\u043e\u0432\u0430\u044f \u0441\u043b\u0443\u0436\u0431\u0430 \u043f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442 \u043e\u0434\u0438\u043d \u043d\u043e\u043c\u0435\u0440 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u0430, \u0434\u0435\u0432\u044f\u0442\u044c \u0437\u0430\u0434\u0430\u0447 \u0438 \u0437\u0430\u043d\u0438\u043c\u0430\u0435\u0442 \u043e\u043a\u043e\u043b\u043e 128 \u043c\u0435\u0433\u0430\u0431\u0430\u0439\u0442.<\/p>\n<h4>\u041d\u0435\u0445\u0432\u0430\u0442\u043a\u0430 \u043f\u0430\u043c\u044f\u0442\u0438<\/h4>\n<p>\u0411\u0440\u0430\u0443\u0437\u0435\u0440 \u0441\u043e\u043e\u0431\u0449\u0430\u0435\u0442 \u043e \u0441\u043c\u0435\u0440\u0442\u0438 \u044f\u0434\u0440\u0430, \u043d\u0435 \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u044f \u043f\u0440\u0438\u0447\u0438\u043d\u0443 \u043e\u0448\u0438\u0431\u043a\u0438, \u0430 \u043e\u043d\u0430 \u043b\u0435\u0436\u0438\u0442 \u0432 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u044f\u0445 \u044f\u0434\u0440\u0430 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u044b. \u042d\u0442\u0430 \u043e\u0448\u0438\u0431\u043a\u0430 \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u043e \u0440\u0430\u0437\u043e\u0431\u0440\u0430\u043d\u0430 \u0432 \u0440\u0430\u0437\u0434\u0435\u043b\u0435 \u043f\u0440\u043e \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u0435 \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432.<\/p>\n<h3>\u0410\u043b\u044c\u0442\u0435\u0440\u043d\u0430\u0442\u0438\u0432\u044b \u0438 \u0434\u043e\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f<\/h3>\n<p>\u0421\u043e\u0432\u043c\u0435\u0441\u0442\u043d\u0430\u044f \u0438\u043d\u0442\u0435\u0440\u0430\u043a\u0442\u0438\u0432\u043d\u0430\u044f \u0440\u0430\u0431\u043e\u0442\u0430 \u0441 \u0434\u0430\u043d\u043d\u044b\u043c\u0438 \u0434\u0430\u043b\u0435\u043a\u043e \u043d\u0435 \u0432\u0441\u0435\u0433\u0434\u0430 \u0442\u0440\u0435\u0431\u0443\u0435\u0442 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u0441 \u0433\u0440\u0430\u0444\u0438\u0447\u0435\u0441\u043a\u0438\u043c \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u043e\u043c. \u0415\u0441\u0442\u044c \u0438 \u0438\u043d\u044b\u0435 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u044b.<\/p>\n<h4>Google Colab \u043f\u0440\u043e\u0442\u0438\u0432 \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0433\u043e \u0441\u0435\u0440\u0432\u0435\u0440\u0430<\/h4>\n<p>\u0411\u0435\u0441\u043f\u043b\u0430\u0442\u043d\u044b\u0439 \u0443\u0440\u043e\u0432\u0435\u043d\u044c <a href=\"https:\/\/colab.research.google.com\/\">Google Colab<\/a> \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0437\u0430\u043a\u0440\u044b\u0442\u044c \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u044b\u0435 \u0443\u0447\u0435\u0431\u043d\u044b\u0435 \u0437\u0430\u0434\u0430\u0447\u0438, \u043f\u0440\u043e\u0432\u0435\u0441\u0442\u0438 \u0440\u0430\u0437\u043e\u0432\u044b\u0435 \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u044b \u0438 \u0434\u0435\u043c\u043e\u043d\u0441\u0442\u0440\u0430\u0446\u0438\u0438 \u0438 \u043d\u0435 \u0442\u0440\u0435\u0431\u0443\u0435\u0442 \u0442\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u043e\u0439 \u043f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043a\u0438 \u0434\u043b\u044f \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0436\u0435\u043b\u0435\u0437\u0430. \u0418\u0437 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0433\u043e \u043f\u0440\u0435\u0438\u043c\u0443\u0449\u0435\u0441\u0442\u0432\u0430 \u0432\u044b\u0442\u0435\u043a\u0430\u0435\u0442 \u0438 \u0433\u043b\u0430\u0432\u043d\u044b\u0439 \u043d\u0435\u0434\u043e\u0441\u0442\u0430\u0442\u043e\u043a: \u0441\u0435\u0441\u0441\u0438\u0438 \u0436\u0438\u0432\u0443\u0442 \u043d\u0430 \u043f\u0440\u043e\u0442\u044f\u0436\u0435\u043d\u0438\u0438 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u043d\u043e\u0433\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u0438, \u043a\u0430\u0440\u0442\u0430 \u0432\u044b\u0434\u0430\u0435\u0442\u0441\u044f \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044e \u043f\u043e \u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e\u043c\u0443 \u043f\u0440\u0438\u043d\u0446\u0438\u043f\u0443 \u0438\u043b\u0438 \u043c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u0432\u043e\u043e\u0431\u0449\u0435 \u043d\u0435 \u043f\u0440\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0430. \u0414\u0440\u0443\u0433\u0438\u043c \u043d\u0435\u0434\u043e\u0441\u0442\u0430\u0442\u043a\u043e\u043c \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0441\u0442\u044c \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0430\u0442\u044c \u0434\u0430\u043d\u043d\u044b\u0435 \u0447\u0435\u0440\u0435\u0437 Google \u0414\u0438\u0441\u043a.<\/p>\n<p>\u041f\u043b\u0430\u0442\u043d\u044b\u0435 \u0443\u0440\u043e\u0432\u043d\u0438 \u0441\u043d\u0438\u043c\u0430\u044e\u0442 \u0447\u0430\u0441\u0442\u044c \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u0439, \u043d\u043e \u0438 \u043f\u0440\u0438 \u043d\u0438\u0445 \u043e\u0441\u0442\u0430\u0435\u0442\u0441\u044f \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0430 \u043a\u043e\u043d\u0444\u0438\u0434\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u0434\u0430\u043d\u043d\u044b\u0445, \u0435\u0441\u043b\u0438 \u043e\u043d\u0430 \u0441\u0442\u0440\u043e\u0433\u043e \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u0430, \u043b\u0443\u0447\u0448\u0435 \u0432\u044b\u0431\u0438\u0440\u0430\u0442\u044c \u0441\u0432\u043e\u0439 \u0441\u0435\u0440\u0432\u0435\u0440, \u0441 \u043d\u0438\u043c \u0432\u044b \u0441\u0430\u043c\u0438 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u0438\u0440\u0443\u0435\u0442\u0435 \u0434\u0430\u043d\u043d\u044b\u0435, \u043d\u043e \u0438 \u043e\u0442\u0432\u0435\u0447\u0430\u0435\u0442\u0435 \u0437\u0430 \u0435\u0433\u043e \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u044c.<\/p>\n<h4>VS Code Server<\/h4>\n<p>\u0415\u0441\u043b\u0438 \u0432\u044b \u043f\u0438\u0448\u0435\u0442\u0435 \u043a\u043e\u0434 \u043c\u043e\u0434\u0443\u043b\u044f\u043c\u0438, \u0430 \u043d\u0435 \u044f\u0447\u0435\u0439\u043a\u0430\u043c\u0438, \u0442\u043e \u043c\u043e\u0433\u0443\u0442 \u043f\u043e\u0434\u043e\u0439\u0442\u0438 \u0434\u0432\u0430 \u0440\u0430\u0437\u043d\u044b\u0445 \u0440\u0435\u0448\u0435\u043d\u0438\u044f. <a href=\"https:\/\/github.com\/coder\/code-server\">Code-server<\/a> \u0441\u0442\u0430\u0432\u0438\u0442\u0441\u044f \u043d\u0430 \u0441\u0435\u0440\u0432\u0435\u0440 \u0441 \u0433\u0440\u0430\u0444\u0438\u0447\u0435\u0441\u043a\u0438\u043c \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u043e\u043c \u0438 \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u043e\u0442\u043a\u0440\u044b\u0432\u0430\u0442\u044c \u0440\u0435\u0434\u0430\u043a\u0442\u043e\u0440 \u0432 \u0431\u0440\u0430\u0443\u0437\u0435\u0440\u0435. <a href=\"https:\/\/code.visualstudio.com\/docs\/remote\/tunnels\">\u041c\u0435\u0445\u0430\u043d\u0438\u0437\u043c \u0443\u0434\u0430\u043b\u0451\u043d\u043d\u044b\u0445 \u0442\u0443\u043d\u043d\u0435\u043b\u0435\u0439<\/a> \u043e\u0442 Microsoft \u0441\u043e\u0435\u0434\u0438\u043d\u044f\u0435\u0442 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043d\u044b\u0439 \u0443 \u0441\u0435\u0431\u044f \u0440\u0435\u0434\u0430\u043a\u0442\u043e\u0440 \u0441 \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u043c \u0447\u0435\u0440\u0435\u0437 \u043f\u043e\u0441\u0440\u0435\u0434\u043d\u0438\u043a\u0430 \u0438 \u0442\u0440\u0435\u0431\u0443\u0435\u0442 \u0443\u0447\u0435\u0442\u043d\u043e\u0439 \u0437\u0430\u043f\u0438\u0441\u0438 GitHub \u0438\u043b\u0438 Microsoft, \u0447\u0442\u043e \u043e\u043f\u044f\u0442\u044c-\u0442\u0430\u043a\u0438 \u043c\u043e\u0436\u0435\u0442 \u043f\u043e\u043c\u0435\u0448\u0430\u0442\u044c \u0432\u044b\u0431\u0440\u0430\u0442\u044c \u044d\u0442\u043e\u0442 \u0432\u0430\u0440\u0438\u0430\u043d\u0442 \u0434\u043b\u044f \u043a\u043e\u0440\u043f\u043e\u0440\u0430\u0442\u0438\u0432\u043d\u044b\u0445 \u043d\u0443\u0436\u0434.<\/p>\n<p>\u0414\u043b\u044f \u0442\u0435\u0445, \u043a\u0442\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u043d\u0430 R, \u0435\u0441\u0442\u044c <a href=\"https:\/\/posit.co\/products\/open-source\/rstudio-server\">RStudio Server<\/a> \u0441 \u0431\u0435\u0441\u043f\u043b\u0430\u0442\u043d\u043e\u0439 \u0438 \u043f\u043b\u0430\u0442\u043d\u043e\u0439 \u0432\u0435\u0440\u0441\u0438\u044f\u043c\u0438. \u0423\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u0442\u0441\u044f \u043e\u043d \u043d\u0430 \u0441\u0435\u0440\u0432\u0435\u0440 \u0441 \u0432\u0438\u0434\u0435\u043e\u043a\u0430\u0440\u0442\u043e\u0439 \u0438 \u043e\u0442\u043a\u0440\u044b\u0432\u0430\u0435\u0442\u0441\u044f \u0447\u0435\u0440\u0435\u0437 \u0431\u0440\u0430\u0443\u0437\u0435\u0440.<\/p>\n<h3>\u0427\u0442\u043e \u0432 \u0438\u0442\u043e\u0433\u0435?<\/h3>\n<p>\u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0437\u0430\u043d\u0438\u043c\u0430\u0435\u0442 \u043f\u0440\u0438\u043c\u0435\u0440\u043d\u043e \u043e\u0434\u0438\u043d \u0440\u0430\u0431\u043e\u0447\u0438\u0439 \u0434\u0435\u043d\u044c \u0441 \u043c\u043e\u043c\u0435\u043d\u0442\u0430 \u0441\u0434\u0430\u0447\u0438 \u0441\u0435\u0440\u0432\u0435\u0440\u0430, \u0435\u0441\u043b\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043d\u0435 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u044e\u044e \u0432\u0435\u0440\u0441\u0438\u044e \u041e\u0421, \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u043f\u043e\u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u043c\u0435\u043d\u044c\u0448\u0435.<\/p>\n<p>\u041f\u0440\u043e\u0446\u0435\u0441\u0441 \u0431\u0443\u0434\u0435\u0442 \u043f\u0440\u043e\u0449\u0435, \u0435\u0441\u043b\u0438 \u043f\u043e\u043c\u043d\u0438\u0442\u044c \u043e \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u0445 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0445 \u043c\u043e\u043c\u0435\u043d\u0442\u0430\u0445. \u0421\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0439 \u043d\u0430\u0431\u043e\u0440 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u043e\u0432 CUDA \u043f\u043e\u0447\u0442\u0438 \u043d\u0438\u043a\u043e\u0433\u0434\u0430 \u043d\u0435 \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f, \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 \u0434\u043b\u044f \u0440\u0430\u0441\u0447\u0435\u0442\u043e\u0432 \u043f\u0440\u0438\u043d\u043e\u0441\u044f\u0442 \u0441\u0432\u043e\u0438 \u043a\u043e\u043f\u0438\u0438 \u0441\u0430\u043c\u0438. \u041f\u044f\u0442\u0430\u044f \u0432\u0435\u0440\u0441\u0438\u044f JupyterHub \u043d\u0438\u043a\u043e\u0433\u043e \u043d\u0435 \u043f\u0443\u0441\u043a\u0430\u0435\u0442, \u043f\u043e\u043a\u0430 \u043d\u0435 \u0437\u0430\u0434\u0430\u043d \u0441\u043f\u0438\u0441\u043e\u043a \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u043d\u044b\u0445 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439. \u0421\u043b\u0443\u0436\u0431\u0430 \u0432 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0438 <strong>running<\/strong> \u0438\u043d\u043e\u0433\u0434\u0430 \u043d\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0432\u043e\u0432\u0441\u0435, \u043f\u0430\u0434\u0430\u0435\u0442 \u0438 \u043f\u0435\u0440\u0435\u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u0442\u0441\u044f \u043f\u043e \u043a\u0440\u0443\u0433\u0443. \u041e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u0435 \u043f\u0430\u043c\u044f\u0442\u0438 \u0432\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u0434\u043b\u044f \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u0441\u043c\u0435\u0440\u0442\u044c\u044e \u044f\u0434\u0440\u0430 \u0431\u0435\u0437 \u043e\u0431\u044a\u044f\u0441\u043d\u0435\u043d\u0438\u044f \u043f\u0440\u0438\u0447\u0438\u043d. \u0420\u0430\u0437\u0434\u0430\u0447\u0430 \u043a\u0430\u0440\u0442 \u043f\u0435\u0440\u0435\u043c\u0435\u043d\u043d\u043e\u0439 \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u044f \u0440\u0430\u0441\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u0442 \u0434\u043e\u0441\u0442\u0443\u043f, \u0430 \u043d\u0435 \u0437\u0430\u0449\u0438\u0449\u0430\u0435\u0442 \u0435\u0433\u043e.<\/p>\n<div>\n<div class=\"table\">\n<table>\n<tbody>\n<tr>\n<td>\n<p align=\"left\"><strong>\u041f\u0440\u0435\u0434\u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043d\u044b\u0439 JupyterLab<\/strong><br \/>\u0417\u0430\u043a\u0430\u0436\u0438\u0442\u0435 \u0441\u0435\u0440\u0432\u0435\u0440 \u0441 \u0433\u043e\u0442\u043e\u0432\u044b\u043c\u0438 \u0440\u0435\u0448\u0435\u043d\u0438\u044f\u043c\u0438 \u0434\u043b\u044f Data Science, \u043d\u0430\u0443\u0447\u043d\u044b\u0445 \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0439 \u0438 \u043c\u0430\u0448\u0438\u043d\u043d\u043e\u0433\u043e \u043e\u0431\u0443\u0447\u0435\u043d\u0438\u044f.<\/p>\n<p align=\"left\"><a href=\"https:\/\/hostkey.ru\/apps\/data-science\/jupyterlab\/\">\u041f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c<\/a><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<\/div>\n<p>\u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b \u0441\u0442\u0430\u0442\u044c\u0438 <a href=\"https:\/\/habr.com\/ru\/articles\/1077686\/\">https:\/\/habr.com\/ru\/articles\/1077686\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u0410\u0432\u0442\u043e\u0440: \u0418\u0432\u0430\u043d \u0411\u043e\u0433\u0434\u0430\u043d\u043e\u0432, \u0422\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u043f\u0438\u0441\u0430\u0442\u0435\u043b\u044c\u00a0\u041b\u044e\u0431\u043e\u0439, \u043a\u043e\u043c\u0443 \u0434\u043e\u0432\u043e\u0434\u0438\u043b\u043e\u0441\u044c \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0432 SPSS (\u043c\u043d\u0435, \u043a \u0441\u043e\u0436\u0430\u043b\u0435\u043d\u0438\u044e, \u043f\u0440\u0438\u0445\u043e\u0434\u0438\u043b\u043e\u0441\u044c), \u0437\u043d\u0430\u0435\u0442 \u0447\u0443\u0432\u0441\u0442\u0432\u043e \u0442\u043e\u0441\u043a\u0438, \u043a\u043e\u0442\u043e\u0440\u043e\u0435 \u043e\u0445\u0432\u0430\u0442\u044b\u0432\u0430\u0435\u0442 \u043f\u0440\u0438 \u043f\u0435\u0440\u0432\u043e\u043c \u0437\u0430\u043f\u0443\u0441\u043a\u0435 \u044d\u0442\u043e\u0433\u043e \u043f\u0440\u043e\u0434\u0443\u043a\u0442\u0430, \u0430 \u0442\u0430\u043a \u043a\u0430\u043a \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u0442\u0441\u044f \u043e\u043d \u0434\u043e\u043b\u0433\u043e, \u0442\u043e \u0438 \u043e\u0449\u0443\u0449\u0435\u043d\u0438\u0435 \u0434\u043b\u0438\u0442\u0441\u044f \u0441\u0442\u043e\u043b\u044c\u043a\u043e \u0436\u0435. \u041e\u0442\u0434\u0435\u043b\u044c\u043d\u043e\u0433\u043e \u0432\u043d\u0438\u043c\u0430\u043d\u0438\u044f \u0437\u0430\u0441\u043b\u0443\u0436\u0438\u0432\u0430\u0435\u0442 \u0438 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u044d\u0442\u043e\u0433\u043e \u043f\u0440\u043e\u0434\u0443\u043a\u0442\u0430, \u0432\u0435\u0434\u044c \u0441\u043b\u043e\u0436\u043d\u043e \u0441\u0434\u0435\u043b\u0430\u0442\u044c \u0435\u0433\u043e \u043c\u0435\u043d\u0435\u0435 \u0438\u043d\u0442\u0443\u0438\u0442\u0438\u0432\u043d\u043e \u043f\u043e\u043d\u044f\u0442\u043d\u044b\u043c. \u041c\u0435\u043d\u044f \u0438\u0437 \u043f\u043b\u0435\u043d\u0430 \u044d\u0442\u043e\u0433\u043e \u041f\u041e \u043a\u043e\u0433\u0434\u0430-\u0442\u043e \u0432\u044b\u0432\u0435\u043b\u043e \u043e\u0442\u043a\u0440\u044b\u0442\u0438\u0435 pandas, \u0441 \u043a\u043e\u0442\u043e\u0440\u044b\u043c \u0430\u043d\u0430\u043b\u043e\u0433\u0438\u0447\u043d\u044b\u0439 \u0430\u043d\u0430\u043b\u0438\u0437 \u043c\u043e\u0436\u043d\u043e \u0431\u044b\u043b\u043e \u0441\u043e\u0431\u0438\u0440\u0430\u0442\u044c \u043d\u0430\u043c\u043d\u043e\u0433\u043e \u0431\u044b\u0441\u0442\u0440\u0435\u0435 \u0438 \u0441 \u0443\u0434\u043e\u0431\u043d\u044b\u043c \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435\u043c \u0441\u043a\u0440\u0438\u043f\u0442\u043e\u0432, \u0442\u043e \u0435\u0441\u0442\u044c \u0435\u0449\u0435 \u0438 \u0441 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c\u044e \u0431\u044b\u0441\u0442\u0440\u043e \u0432\u043e\u0441\u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0441\u0442\u0438 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b.\u041e\u0434\u043d\u043e\u043c\u0443 \u0447\u0435\u043b\u043e\u0432\u0435\u043a\u0443 \u0434\u043b\u044f \u0442\u043e\u0433\u043e \u0436\u0435 \u0441\u0442\u0430\u0442\u0430\u043d\u0430\u043b\u0438\u0437\u0430 \u0445\u0432\u0430\u0442\u0438\u0442 \u043e\u0431\u044b\u0447\u043d\u043e\u0433\u043e \u041f\u041a, \u043d\u043e \u0432\u043e\u0442 \u0435\u0441\u043b\u0438 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u043f\u0440\u043e\u0432\u043e\u0434\u0438\u0442\u044c \u0431\u043e\u043b\u0435\u0435 \u043c\u0430\u0441\u0448\u0442\u0430\u0431\u043d\u044b\u0435 \u0438\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043d\u0438\u044f \u0438\u043b\u0438 \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u043e\u0432\u0430\u0442\u044c \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u043d\u0443\u044e \u0440\u0430\u0431\u043e\u0442\u0443 \u0433\u0440\u0443\u043f\u043f\u044b \u0438\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439, \u0442\u0443\u0442 \u0443\u0436\u0435 \u0442\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u043f\u0440\u0438\u0432\u043b\u0435\u0447\u0435\u043d\u0438\u0435 \u0431\u043e\u043b\u0435\u0435 \u043c\u043e\u0449\u043d\u043e\u0433\u043e \u0436\u0435\u043b\u0435\u0437\u0430 \u0438 \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u043d\u043e\u0433\u043e \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0435\u043d\u0438\u044f, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, JupyterLab \u043d\u0430 GPU-\u0441\u0435\u0440\u0432\u0435\u0440\u0435. \u041e \u043d\u0435\u043c \u043c\u044b \u0441\u0435\u0433\u043e\u0434\u043d\u044f \u0438 \u0440\u0430\u0441\u0441\u043a\u0430\u0436\u0435\u043c.\u0420\u0430\u0431\u043e\u0442\u0430 \u0441 \u0434\u0430\u043d\u043d\u044b\u043c\u0438 \u0441\u043e\u0441\u0442\u043e\u0438\u0442 \u0438\u0437 \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u043e\u0432, \u0430 \u043d\u0435 \u0438\u0437 \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u0438\u044f \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c \u0432 \u043f\u0440\u0438\u0432\u044b\u0447\u043d\u043e\u043c \u0441\u043c\u044b\u0441\u043b\u0435. \u0422\u0440\u0435\u0431\u0443\u0435\u0442\u0441\u044f \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u043d\u0430 \u043f\u0440\u043e\u043c\u0435\u0436\u0443\u0442\u043e\u0447\u043d\u044b\u0439 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442, \u043f\u043e\u043c\u0435\u043d\u044f\u0442\u044c \u043e\u0434\u043d\u0443 \u0441\u0442\u0440\u043e\u0447\u043a\u0443 \u0438 \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u0441\u043d\u043e\u0432\u0430. \u041f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0430, \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u043c\u0430\u044f \u0446\u0435\u043b\u0438\u043a\u043e\u043c \u043e\u0442 \u043d\u0430\u0447\u0430\u043b\u0430 \u0434\u043e \u043a\u043e\u043d\u0446\u0430, \u0434\u043b\u044f \u0442\u0430\u043a\u043e\u0433\u043e \u043f\u043e\u0434\u0445\u043e\u0434\u0438\u0442 \u043f\u043b\u043e\u0445\u043e, \u0432\u0435\u0434\u044c \u043a\u0430\u0436\u0434\u044b\u0439 \u0437\u0430\u043f\u0443\u0441\u043a \u0441\u0442\u0430\u0440\u0442\u0443\u0435\u0442 \u0441 \u043f\u0443\u0441\u0442\u043e\u0439 \u043f\u0430\u043c\u044f\u0442\u0438, \u0430 \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u043d\u0430\u0431\u043e\u0440\u0430 \u0434\u0430\u043d\u043d\u044b\u0445 \u0438\u043b\u0438 \u0432\u0435\u0441\u043e\u0432 \u043c\u043e\u0434\u0435\u043b\u0438 \u0437\u0430\u043d\u0438\u043c\u0430\u0435\u0442 \u043e\u0442 \u043c\u0438\u043d\u0443\u0442 \u0434\u043e \u0434\u0435\u0441\u044f\u0442\u043a\u043e\u0432 \u043c\u0438\u043d\u0443\u0442. \u042f\u0434\u0440\u043e JupyterLab \u0434\u0435\u0440\u0436\u0438\u0442 \u0437\u0430\u0433\u0440\u0443\u0436\u0435\u043d\u043d\u043e\u0435 \u043c\u0435\u0436\u0434\u0443 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u0435\u043c \u044f\u0447\u0435\u0435\u043a, \u0438 \u0446\u0438\u043a\u043b \u043f\u0440\u0430\u0432\u043a\u0438 \u0441\u043e\u043a\u0440\u0430\u0449\u0430\u0435\u0442\u0441\u044f \u0434\u043e \u0441\u0435\u043a\u0443\u043d\u0434. \u0412\u043e \u043c\u043d\u043e\u0433\u043e\u043c \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u043d\u043e\u0443\u0442\u0431\u0443\u043a\u0438 \u0432\u044b\u0442\u0435\u0441\u043d\u0438\u043b\u0438 \u0432\u0441\u0435 \u043e\u0441\u0442\u0430\u043b\u044c\u043d\u044b\u0435 \u0440\u0435\u0448\u0435\u043d\u0438\u044f \u043d\u0430 \u0438\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u043e\u0439 \u0441\u0442\u0430\u0434\u0438\u0438.\u041f\u0440\u0435\u0434\u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043d\u044b\u0439 JupyterLab\u0417\u0430\u043a\u0430\u0436\u0438\u0442\u0435 \u0441\u0435\u0440\u0432\u0435\u0440 \u0441 \u0433\u043e\u0442\u043e\u0432\u044b\u043c\u0438 \u0440\u0435\u0448\u0435\u043d\u0438\u044f\u043c\u0438 \u0434\u043b\u044f Data Science, \u043d\u0430\u0443\u0447\u043d\u044b\u0445 \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u0439 \u0438 \u043c\u0430\u0448\u0438\u043d\u043d\u043e\u0433\u043e \u043e\u0431\u0443\u0447\u0435\u043d\u0438\u044f.\u041f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c\u0417\u0430\u0447\u0435\u043c JupyterLab \u043d\u0430 GPU-\u0441\u0435\u0440\u0432\u0435\u0440\u0435?\u00a0\u041f\u043e\u043c\u0438\u043c\u043e \u0443\u0436\u0435 \u043f\u0435\u0440\u0435\u0447\u0438\u0441\u043b\u0435\u043d\u043d\u044b\u0445 \u043f\u0440\u0438\u0447\u0438\u043d, \u0442\u0430\u043a\u043e\u0439 \u0441\u0435\u0440\u0432\u0435\u0440 \u0431\u0443\u0434\u0435\u0442 \u043f\u043e\u043b\u0435\u0437\u0435\u043d \u0432 \u0441\u0438\u0442\u0443\u0430\u0446\u0438\u044f\u0445, \u043a\u043e\u0433\u0434\u0430 \u0434\u0430\u043d\u043d\u044b\u0435 \u043d\u0435\u043b\u044c\u0437\u044f \u0432\u044b\u043d\u043e\u0441\u0438\u0442\u044c \u0437\u0430 \u043f\u0435\u0440\u0438\u043c\u0435\u0442\u0440 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438, \u0442\u0430\u043a\u0436\u0435 \u043e\u043d \u0431\u0443\u0434\u0435\u0442 \u043d\u0435\u0437\u0430\u043c\u0435\u043d\u0438\u043c \u0434\u043b\u044f \u0438\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043d\u0438\u0439, \u0432 \u0440\u0430\u043c\u043a\u0430\u0445 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u043e\u0434\u0438\u043d\u0430\u043a\u043e\u0432\u043e\u0435 \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u0435 \u0434\u043b\u044f \u0432\u0441\u0435\u0445 \u0443\u0447\u0430\u0441\u0442\u043d\u0438\u043a\u043e\u0432. JupyterLab \u043d\u0430 GPU-\u0441\u0435\u0440\u0432\u0435\u0440\u0435 \u0431\u0443\u0434\u0435\u0442 \u0445\u043e\u0440\u043e\u0448\u0438\u043c \u0432\u044b\u0431\u043e\u0440\u043e\u043c \u0434\u043b\u044f \u0442\u0435\u0445, \u0443 \u043a\u043e\u0433\u043e \u0438\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043d\u0438\u044f \u043f\u0440\u0435\u0434\u043f\u043e\u043b\u0430\u0433\u0430\u044e\u0442 \u0434\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u0443\u044e \u043d\u0435\u043f\u0440\u0435\u0440\u044b\u0432\u043d\u0443\u044e \u043e\u0431\u0440\u0430\u0431\u043e\u0442\u043a\u0443 \u0434\u0430\u043d\u043d\u044b\u0445, \u0442\u0430\u043a \u043a\u0430\u043a. \u0441\u0435\u0440\u0432\u0435\u0440, \u0432 \u043e\u0442\u043b\u0438\u0447\u0438\u0435 \u043e\u0442 \u041f\u041a, \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0432\u0430\u0435\u0442 \u0434\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u0443\u044e \u0441\u0442\u0430\u0431\u0438\u043b\u044c\u043d\u0443\u044e \u0440\u0430\u0431\u043e\u0442\u0443. \u0418\u043d\u044b\u043c\u0438 \u0441\u043b\u043e\u0432\u0430\u043c\u0438, \u044d\u0442\u043e\u0442 \u0441\u0435\u0440\u0432\u0435\u0440 \u043f\u043e\u043b\u0435\u0437\u0435\u043d \u043f\u043e \u0431\u043e\u043b\u044c\u0448\u0435\u0439 \u0447\u0430\u0441\u0442\u0438 \u0434\u043b\u044f \u043a\u043e\u043c\u0430\u043d\u0434 \u0438 \u043e\u043d \u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0432\u0430\u0435\u0442 \u0435\u0434\u0438\u043d\u0443\u044e \u0441\u0440\u0435\u0434\u0443 \u0438\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u043d\u0438\u044f.\u0412\u0438\u0434\u0435\u043e\u043a\u0430\u0440\u0442\u0430 \u043f\u043e\u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f \u0432 \u044d\u0442\u043e\u0439 \u043a\u043e\u043d\u0441\u0442\u0440\u0443\u043a\u0446\u0438\u0438 \u043d\u0435 \u0440\u0430\u0434\u0438 \u043a\u0440\u0430\u0441\u043e\u0442\u044b. \u041e\u0441\u043d\u043e\u0432\u043d\u0430\u044f \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u044f \u0432\u043d\u0443\u0442\u0440\u0438 \u043d\u0435\u0439\u0440\u043e\u043d\u043d\u043e\u0439 \u0441\u0435\u0442\u0438 \u2014 \u044d\u0442\u043e \u043f\u0435\u0440\u0435\u043c\u043d\u043e\u0436\u0435\u043d\u0438\u0435 \u043c\u0430\u0442\u0440\u0438\u0446, \u0442\u043e \u0435\u0441\u0442\u044c \u0442\u044b\u0441\u044f\u0447\u0438 \u043e\u0434\u0438\u043d\u0430\u043a\u043e\u0432\u044b\u0445 \u043d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u044b\u0445 \u0443\u043c\u043d\u043e\u0436\u0435\u043d\u0438\u0439 \u0438 \u0441\u043b\u043e\u0436\u0435\u043d\u0438\u0439. \u0426\u0435\u043d\u0442\u0440\u0430\u043b\u044c\u043d\u044b\u0439 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440 \u0443\u0441\u0442\u0440\u043e\u0435\u043d \u043f\u043e\u0434 \u0434\u0440\u0443\u0433\u043e\u0435, \u0443 \u043d\u0435\u0433\u043e \u0434\u0435\u0441\u044f\u0442\u043e\u043a-\u0434\u0440\u0443\u0433\u043e\u0439 \u0441\u043b\u043e\u0436\u043d\u044b\u0445 \u044f\u0434\u0435\u0440, \u0437\u0430\u0442\u043e\u0447\u0435\u043d\u043d\u044b\u0445 \u043f\u043e\u0434 \u0432\u0435\u0442\u0432\u044f\u0449\u0443\u044e\u0441\u044f \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u0443\u044e \u043b\u043e\u0433\u0438\u043a\u0443, \u0442\u043e\u0433\u0434\u0430 \u043a\u0430\u043a \u0432\u0438\u0434\u0435\u043e\u043a\u0430\u0440\u0442\u0430 \u0441\u043e\u0441\u0442\u043e\u0438\u0442 \u0438\u0437 \u0442\u044b\u0441\u044f\u0447 \u043f\u0440\u043e\u0441\u0442\u044b\u0445 \u0432\u044b\u0447\u0438\u0441\u043b\u0438\u0442\u0435\u043b\u0435\u0439, \u0434\u0435\u043b\u0430\u044e\u0449\u0438\u0445 \u043e\u0434\u043d\u043e \u0438 \u0442\u043e \u0436\u0435 \u043d\u0430\u0434 \u0440\u0430\u0437\u043d\u044b\u043c\u0438 \u0447\u0438\u0441\u043b\u0430\u043c\u0438. \u0420\u0430\u0437\u043d\u0438\u0446\u0430 \u043d\u0430 \u0442\u0430\u043a\u043e\u043c \u043a\u043b\u0430\u0441\u0441\u0435 \u0437\u0430\u0434\u0430\u0447 \u0438\u0437\u043c\u0435\u0440\u044f\u0435\u0442\u0441\u044f \u0434\u0435\u0441\u044f\u0442\u043a\u0430\u043c\u0438 \u0440\u0430\u0437. \u0414\u043e\u0431\u0430\u0432\u044c\u0442\u0435 \u0441\u044e\u0434\u0430 \u043f\u0440\u043e\u043f\u0443\u0441\u043a\u043d\u0443\u044e \u0441\u043f\u043e\u0441\u043e\u0431\u043d\u043e\u0441\u0442\u044c \u043f\u0430\u043c\u044f\u0442\u0438, \u0443 \u0432\u0438\u0434\u0435\u043e\u043a\u0430\u0440\u0442\u044b \u043e\u043d\u0430 \u0441\u043e\u0441\u0442\u0430\u0432\u043b\u044f\u0435\u0442 \u0441\u043e\u0442\u043d\u0438 \u0433\u0438\u0433\u0430\u0431\u0430\u0439\u0442 \u0432 \u0441\u0435\u043a\u0443\u043d\u0434\u0443 \u043f\u0440\u043e\u0442\u0438\u0432 \u043f\u0440\u0438\u043c\u0435\u0440\u043d\u043e \u0441\u043e\u0442\u043d\u0438 \u0443 \u043e\u043f\u0435\u0440\u0430\u0442\u0438\u0432\u043d\u043e\u0439 \u043f\u0430\u043c\u044f\u0442\u0438 \u0441\u0435\u0440\u0432\u0435\u0440\u0430, \u0430 \u043e\u0431\u0443\u0447\u0435\u043d\u0438\u0435 \u0443\u043f\u0438\u0440\u0430\u0435\u0442\u0441\u044f \u0432 \u043f\u0435\u0440\u0435\u043a\u0430\u0447\u043a\u0443 \u0434\u0430\u043d\u043d\u044b\u0445 \u043d\u0435 \u043c\u0435\u043d\u044c\u0448\u0435, \u0447\u0435\u043c \u0432 \u0441\u0430\u043c\u0438 \u0432\u044b\u0447\u0438\u0441\u043b\u0435\u043d\u0438\u044f.\u0415\u0441\u0442\u044c \u0438 \u043d\u0435\u0434\u043e\u0441\u0442\u0430\u0442\u043a\u0438, \u0438 \u0433\u043b\u0430\u0432\u043d\u044b\u0439 \u0438\u0437 \u043d\u0438\u0445 \u2014 \u0441\u0442\u043e\u0438\u043c\u043e\u0441\u0442\u044c. \u0421\u0435\u0440\u0432\u0435\u0440 \u0441 \u0433\u0440\u0430\u0444\u0438\u0447\u0435\u0441\u043a\u0438\u043c \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u043e\u043c \u0441\u0442\u043e\u0438\u0442 \u0434\u043e\u0440\u043e\u0433\u043e, \u0438 \u0438\u043c\u0435\u0435\u0442 \u0441\u043c\u044b\u0441\u043b \u0431\u0440\u0430\u0442\u044c \u0435\u0433\u043e \u043e\u0441\u043e\u0437\u043d\u0430\u043d\u043d\u043e \u0438 \u043f\u043e\u0434 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u044b\u0439 \u043e\u0431\u044a\u0435\u043c \u0437\u0430\u0434\u0430\u0447. \u0415\u0441\u043b\u0438 \u0438\u0445 \u043d\u0435 \u0442\u0430\u043a \u043c\u043d\u043e\u0433\u043e, \u0442\u043e \u043c\u043e\u0436\u043d\u043e \u0440\u0430\u0441\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u043f\u043e\u0447\u0430\u0441\u043e\u0432\u0443\u044e \u0430\u0440\u0435\u043d\u0434\u0443. \u0412 \u0441\u0442\u0430\u0442\u044c\u0435 \u043c\u044b \u043f\u0440\u043e\u0439\u0434\u0435\u043c \u043f\u0443\u0442\u044c \u043e\u0442 \u0447\u0438\u0441\u0442\u043e\u0439 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0434\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0449\u0435\u0433\u043e \u043c\u043d\u043e\u0433\u043e\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u043e\u0433\u043e \u0441\u0442\u0435\u043d\u0434\u0430.\u00a0\u0422\u0440\u0435\u0431\u043e\u0432\u0430\u043d\u0438\u044f \u043a \u0441\u0435\u0440\u0432\u0435\u0440\u0443\u041a\u043b\u044e\u0447\u0435\u0432\u044b\u0435 \u0442\u043e\u0447\u043a\u0438 \u043e\u0442\u0441\u0447\u0435\u0442\u0430 \u043f\u0440\u0438 \u0432\u044b\u0431\u043e\u0440\u0435 \u0441\u0435\u0440\u0432\u0435\u0440\u0430 \u0434\u043b\u044f JupyterLab \u2014 \u044d\u0442\u043e \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u043e\u0434\u043d\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0449\u0438\u0445 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439, \u0440\u0430\u0437\u043c\u0435\u0440 \u043c\u043e\u0434\u0435\u043b\u0435\u0439 \u0438 \u043e\u0431\u044a\u0435\u043c \u0434\u0430\u043d\u043d\u044b\u0445. \u0414\u0430\u043b\u044c\u0448\u0435 \u043c\u044b \u0440\u0430\u0437\u0431\u0438\u0440\u0430\u0435\u043c \u0432\u044b\u0431\u043e\u0440 \u043d\u0430 \u043f\u0440\u0438\u043c\u0435\u0440\u0435 \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u0445 \u0442\u0430\u0440\u0438\u0444\u043e\u0432, \u0443 \u0434\u0440\u0443\u0433\u0438\u0445 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0439 \u043e\u043d\u0438 \u043c\u043e\u0433\u0443\u0442 \u043e\u0442\u043b\u0438\u0447\u0430\u0442\u044c\u0441\u044f, \u043d\u043e \u043d\u0435 \u0441\u0438\u043b\u044c\u043d\u043e.\u0412\u0438\u0434\u0435\u043e\u043a\u0430\u0440\u0442\u0430 \u0438 \u043e\u0431\u044a\u0435\u043c \u0435\u0435 \u043f\u0430\u043c\u044f\u0442\u0438\u0412\u044b\u0431\u0438\u0440\u0430\u0442\u044c \u043a\u0430\u0440\u0442\u0443 \u0441\u0442\u043e\u0438\u0442 \u043f\u043e \u043e\u0431\u044a\u0451\u043c\u0443 \u0432\u0438\u0434\u0435\u043e\u043f\u0430\u043c\u044f\u0442\u0438, \u0430 \u043d\u0435 \u043f\u043e \u0437\u0430\u044f\u0432\u043b\u0435\u043d\u043d\u043e\u0439 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438, \u043f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e\u043c\u043e\u0434\u0435\u043b\u044c \u0432\u043c\u0435\u0441\u0442\u0435 \u0441 \u043e\u0431\u0443\u0447\u0430\u044e\u0449\u0438\u043c\u0438 \u0434\u0430\u043d\u043d\u044b\u043c\u0438 \u043b\u0438\u0431\u043e \u0446\u0435\u043b\u0438\u043a\u043e\u043c \u043f\u043e\u043c\u0435\u0449\u0430\u0435\u0442\u0441\u044f \u0432 \u043f\u0430\u043c\u044f\u0442\u044c \u043a\u0430\u0440\u0442\u044b, \u043b\u0438\u0431\u043e \u043d\u0435\u0442. \u0412\u0430\u0440\u0438\u0430\u043d\u0442\u044b \u0443\u0436\u0430\u0442\u044c \u043c\u043e\u0434\u0435\u043b\u044c \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0442 \u0432 \u0431\u043e\u043b\u044c\u0448\u043e\u043c \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u0435 (\u043a\u0432\u0430\u043d\u0442\u043e\u0432\u0430\u043d\u0438\u0435, LoRA \u0438 \u0442. \u0434.), \u043d\u043e \u043c\u044b \u044d\u0442\u0438 \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u044b \u0440\u0430\u0441\u0441\u043c\u0430\u0442\u0440\u0438\u0432\u0430\u0442\u044c \u043d\u0435 \u0431\u0443\u0434\u0435\u043c, \u0432\u0435\u0434\u044c \u043e\u043d\u0438 \u0432\u044b\u0445\u043e\u0434\u044f\u0442 \u0437\u0430 \u0440\u0430\u043c\u043a\u0438 \u0442\u0435\u043c\u0430\u0442\u0438\u043a\u0438 \u0441\u0442\u0430\u0442\u044c\u0438, \u0430 \u043f\u0440\u043e\u0441\u0442\u043e \u0441\u0434\u0435\u043b\u0430\u0435\u043c \u0432\u0430\u0436\u043d\u0443\u044e \u043e\u0433\u043e\u0432\u043e\u0440\u043a\u0443: \u043e\u0431\u044a\u0435\u043c \u0432\u0438\u0434\u0435\u043e\u043f\u0430\u043c\u044f\u0442\u0438 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u0442, \u043d\u0430\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0441\u043b\u043e\u0436\u043d\u044b\u043c\u0438 \u043f\u0440\u0438\u0435\u043c\u0430\u043c\u0438 \u043f\u0440\u0438\u0434\u0451\u0442\u0441\u044f \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0438 \u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u0443\u0439\u0434\u0435\u0442 \u043d\u0430 \u043e\u0431\u0443\u0447\u0435\u043d\u0438\u0435.\u00a0\u0414\u0432\u0430\u0434\u0446\u0430\u0442\u0438 \u0447\u0435\u0442\u044b\u0440\u0451\u0445 \u0433\u0438\u0433\u0430\u0431\u0430\u0439\u0442 \u0445\u0432\u0430\u0442\u0430\u0435\u0442 \u0434\u043b\u044f \u0434\u043e\u043e\u0431\u0443\u0447\u0435\u043d\u0438\u044f \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u0438\u0445 \u043c\u043e\u0434\u0435\u043b\u0435\u0439, \u0434\u043b\u044f \u0437\u0430\u0434\u0430\u0447 \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u043d\u043e\u0433\u043e \u0437\u0440\u0435\u043d\u0438\u044f \u0438 \u0434\u043b\u044f \u043e\u0431\u044b\u0447\u043d\u043e\u0433\u043e \u0430\u043d\u0430\u043b\u0438\u0437\u0430 \u0434\u0430\u043d\u043d\u044b\u0445, \u043f\u0440\u0438\u0447\u0451\u043c \u0432 \u044d\u0442\u043e\u043c \u0441\u0435\u0433\u043c\u0435\u043d\u0442\u0435 \u0446\u0435\u043d\u044b \u0440\u0430\u0437\u043b\u0438\u0447\u0430\u044e\u0442\u0441\u044f \u0437\u0430\u043c\u0435\u0442\u043d\u043e, \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u0441\u0435\u0440\u0432\u0435\u0440 \u0441 RTX 3090 \u043e\u0431\u0445\u043e\u0434\u0438\u0442\u0441\u044f \u0432 25 000 \u0440\u0443\u0431\u043b\u0435\u0439 \u0432 \u043c\u0435\u0441\u044f\u0446 \u0438\u043b\u0438 42 \u0440\u0443\u0431\u043b\u044f \u0432 \u0447\u0430\u0441, \u0442\u043e\u0433\u0434\u0430 \u043a\u0430\u043a \u0437\u0430 RTX 4090 \u0441 \u0442\u043e\u0439 \u0436\u0435 \u043f\u0430\u043c\u044f\u0442\u044c\u044e \u0441\u0442\u043e\u0438\u0442 \u043e\u0442 27 000 \u0440\u0443\u0431\u043b\u0435\u0439 \u0432 \u043c\u0435\u0441\u044f\u0446. \u0422\u0440\u0438\u0434\u0446\u0430\u0442\u044c \u0434\u0432\u0430 \u0433\u0438\u0433\u0430\u0431\u0430\u0439\u0442\u0430 \u0443 RTX 5090 \u0441\u0442\u043e\u044f\u0442 \u0443\u0436\u0435 \u043e\u043a\u043e\u043b\u043e 46 900 \u0440\u0443\u0431\u043b\u0435\u0439 \u0432 \u043c\u0435\u0441\u044f\u0446, \u0430 48 \u0433\u0438\u0433\u0430\u0431\u0430\u0439\u0442 \u0443 A6000 \u043e\u0431\u0445\u043e\u0434\u044f\u0442\u0441\u044f \u0432 58 000 \u0440\u0443\u0431\u043b\u0435\u0439.\u041f\u0440\u043e\u0444\u0435\u0441\u0441\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u044b\u0435 \u043a\u0430\u0440\u0442\u044b \u0441\u0442\u043e\u044f\u0442 \u0437\u0430\u043c\u0435\u0442\u043d\u043e \u0434\u043e\u0440\u043e\u0436\u0435 \u0438\u0433\u0440\u043e\u0432\u044b\u0445. \u041e\u0434\u0438\u043d\u0430\u043a\u043e\u0432\u044b\u0439 \u043e\u0431\u044a\u0435\u043c \u043f\u0430\u043c\u044f\u0442\u0438 \u0443 \u043d\u0438\u0445 \u0432\u0441\u0442\u0440\u0435\u0447\u0430\u0435\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u043d\u0430 \u043c\u043b\u0430\u0434\u0448\u0438\u0445 \u043c\u043e\u0434\u0435\u043b\u044f\u0445, \u0441\u043a\u0430\u0436\u0435\u043c, A5000 \u0438 RTX 3090 \u043d\u0435\u0441\u0443\u0442 \u043f\u043e \u0434\u0432\u0430\u0434\u0446\u0430\u0442\u044c \u0447\u0435\u0442\u044b\u0440\u0435 \u0433\u0438\u0433\u0430\u0431\u0430\u0439\u0442\u0430 \u043f\u0440\u0438 \u0431\u043b\u0438\u0437\u043a\u043e\u0439 \u0446\u0435\u043d\u0435, \u0438 \u0442\u0430\u043c \u0432\u044b\u0431\u043e\u0440 \u0434\u0435\u043b\u0430\u044e\u0442 \u0440\u0430\u0434\u0438 \u043a\u043e\u0440\u0440\u0435\u043a\u0446\u0438\u0438 \u043e\u0448\u0438\u0431\u043e\u043a \u043f\u0430\u043c\u044f\u0442\u0438, \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u0443 \u0438\u0433\u0440\u043e\u0432\u043e\u0439 \u043a\u0430\u0440\u0442\u044b \u043d\u0435\u0442. \u0414\u0430\u043b\u044c\u0448\u0435 \u0438\u0434\u0443\u0442 \u043e\u0431\u044a\u0435\u043c\u044b, \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0432 \u0438\u0433\u0440\u043e\u0432\u043e\u0439 \u043b\u0438\u043d\u0435\u0439\u043a\u0435 \u043d\u0435 \u043d\u0430\u0439\u0442\u0438, \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u0441\u043e\u0440\u043e\u043a \u0432\u043e\u0441\u0435\u043c\u044c \u0433\u0438\u0433\u0430\u0431\u0430\u0439\u0442 \u0443 A6000 \u043e\u0431\u0445\u043e\u0434\u044f\u0442\u0441\u044f \u0432 58 000 \u0440\u0443\u0431\u043b\u0435\u0439 \u0432 \u043c\u0435\u0441\u044f\u0446, \u0441\u0435\u043c\u044c\u0434\u0435\u0441\u044f\u0442 \u0434\u0432\u0430 \u0433\u0438\u0433\u0430\u0431\u0430\u0439\u0442\u0430 \u0443 RTX PRO 5000 \u0441\u0442\u043e\u044f\u0442 99 000 \u0440\u0443\u0431\u043b\u0435\u0439, \u0430 \u0434\u0435\u0432\u044f\u043d\u043e\u0441\u0442\u043e \u0448\u0435\u0441\u0442\u044c \u0433\u0438\u0433\u0430\u0431\u0430\u0439\u0442 \u0443 RTX PRO 6000 \u0438\u0434\u0443\u0442 \u043f\u043e 185 000 \u0440\u0443\u0431\u043b\u0435\u0439. \u041a\u0430\u0440\u0442\u044b \u0434\u0430\u0442\u0430-\u0446\u0435\u043d\u0442\u0440\u0430, \u0441\u043a\u0430\u0436\u0435\u043c, A100 \u0437\u0430 120 000 \u0440\u0443\u0431\u043b\u0435\u0439 \u0438\u043b\u0438 H100 \u0437\u0430 145 000, \u0431\u0435\u0440\u0443\u0442 \u043d\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u0437\u0430 \u043e\u0431\u044a\u0435\u043c, \u043d\u043e \u0438 \u0437\u0430 \u043f\u0430\u043c\u044f\u0442\u044c \u0441 \u0432\u044b\u0441\u043e\u043a\u043e\u0439 \u043f\u0440\u043e\u043f\u0443\u0441\u043a\u043d\u043e\u0439 \u0441\u043f\u043e\u0441\u043e\u0431\u043d\u043e\u0441\u0442\u044c\u044e, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0443 \u043d\u0438\u0445 \u0438\u0437\u043c\u0435\u0440\u044f\u0435\u0442\u0441\u044f \u0435\u0434\u0438\u043d\u0438\u0446\u0430\u043c\u0438 \u0442\u0435\u0440\u0430\u0431\u0430\u0439\u0442 \u0432 \u0441\u0435\u043a\u0443\u043d\u0434\u0443. \u0421\u0442\u043e\u0438\u0442 \u043f\u043e\u043c\u043d\u0438\u0442\u044c \u0438 \u043e \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438 \u0440\u0430\u0437\u0434\u0435\u043b\u0438\u0442\u044c \u043e\u0434\u043d\u0443 \u043a\u0430\u0440\u0442\u0443 \u043d\u0430 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0438\u0437\u043e\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0445 \u0447\u0430\u0441\u0442\u0435\u0439, \u0438\u0433\u0440\u043e\u0432\u044b\u0435 \u043a\u0430\u0440\u0442\u044b \u0434\u043b\u044f \u0442\u0430\u043a\u0438\u0445 \u0446\u0435\u043b\u0435\u0439 \u043d\u0435 \u043f\u043e\u0434\u0445\u043e\u0434\u044f\u0442, \u0433\u043e\u0434\u044f\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u043f\u0440\u043e\u0444\u0435\u0441\u0441\u0438\u043e\u043d\u0430\u043b\u044c\u043d\u044b\u0435 \u0441 \u0442\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u0435\u0439 \u0440\u0430\u0437\u0434\u0435\u043b\u0435\u043d\u0438\u044f \u043d\u0430 \u0438\u043d\u0441\u0442\u0430\u043d\u0441\u044b (MIG).\u041d\u0430 \u043d\u0430\u0448\u0435\u043c \u0441\u0442\u0435\u043d\u0434\u0435 \u0441\u0442\u043e\u0438\u0442 \u0438\u0433\u0440\u043e\u0432\u0430\u044f \u043a\u0430\u0440\u0442\u0430, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u0434\u0435\u043b\u0438\u0442\u044c \u0435\u0451 \u043c\u0435\u0436\u0434\u0443 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f\u043c\u0438 \u0441\u0440\u0435\u0434\u0441\u0442\u0432\u0430\u043c\u0438 \u0434\u0440\u0430\u0439\u0432\u0435\u0440\u0430 \u043d\u0435 \u0432\u044b\u0439\u0434\u0435\u0442. \u0414\u0430\u043b\u044c\u0448\u0435 \u043f\u043e \u0442\u0435\u043a\u0441\u0442\u0443 \u0432\u0441\u0442\u0440\u0435\u0447\u0430\u044e\u0442\u0441\u044f \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u044b\u0435 \u043a\u043e\u043c\u0430\u043d\u0434\u044b, \u0432\u0435\u0440\u0441\u0438\u0438 \u043f\u0430\u043a\u0435\u0442\u043e\u0432 \u0438 \u0437\u0430\u043c\u0435\u0440\u044b, \u0438 \u0432\u0441\u0435 \u043e\u043d\u0438 \u0441\u043d\u044f\u0442\u044b \u043d\u0430 \u044d\u0442\u043e\u0439 \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u0438:\u0422\u0438\u043f \u043e\u0431\u043e\u0440\u0443\u0434\u043e\u0432\u0430\u043d\u0438\u044f\u041c\u043e\u0434\u0435\u043b\u044c\u041e\u0431\u043e\u0441\u043d\u043e\u0432\u0430\u043d\u0438\u0435 \u0432\u044b\u0431\u043e\u0440\u0430\u0412\u0438\u0434\u0435\u043e\u043a\u0430\u0440\u0442\u04301x RTX 3090 \u043d\u0430 24 \u0433\u0438\u0433\u0430\u0431\u0430\u0439\u0442\u0430\u0421\u0430\u043c\u0430\u044f \u0434\u0435\u0448\u0435\u0432\u0430\u044f \u043f\u043e\u0437\u0438\u0446\u0438\u044f \u0441 \u0442\u0430\u043a\u0438\u043c \u043e\u0431\u044a\u0435\u043c\u043e\u043c \u043f\u0430\u043c\u044f\u0442\u0438, \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u0430 Ampere \u043f\u0440\u043e\u0445\u043e\u0434\u0438\u0442 \u043f\u043e \u0442\u0435\u043a\u0443\u0449\u0435\u0439 \u0432\u0435\u0442\u043a\u0435 CUDA\u041f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440Ryzen 5900X, 12 \u044f\u0434\u0435\u0440 \u0438 24 \u043f\u043e\u0442\u043e\u043a\u0430\u041e\u0442 \u0447\u0435\u0442\u044b\u0440\u0435\u0445 \u0434\u043e \u0432\u043e\u0441\u044c\u043c\u0438 \u044f\u0434\u0435\u0440 \u043d\u0430 \u043a\u0430\u0440\u0442\u0443, \u043f\u0440\u0438 \u043c\u0435\u043d\u044c\u0448\u0435\u043c \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u0435 \u0437\u0430\u0433\u0440\u0443\u0437\u0447\u0438\u043a \u0434\u0430\u043d\u043d\u044b\u0445 \u043d\u0435 \u0443\u0441\u043f\u0435\u0432\u0430\u0435\u0442 \u0435\u0435 \u043a\u043e\u0440\u043c\u0438\u0442\u044c\u041e\u043f\u0435\u0440\u0430\u0442\u0438\u0432\u043d\u0430\u044f \u043f\u0430\u043c\u044f\u0442\u044c64 \u0433\u0438\u0433\u0430\u0431\u0430\u0439\u0442f\u0423\u0434\u0432\u043e\u0435\u043d\u043d\u0430\u044f \u0432\u0438\u0434\u0435\u043e\u043f\u0430\u043c\u044f\u0442\u044c \u043f\u043b\u044e\u0441 \u0437\u0430\u043f\u0430\u0441 \u043d\u0430 \u0434\u0432\u0430-\u0442\u0440\u0438 \u043e\u0434\u043d\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e \u0440\u0430\u0431\u043e\u0442\u0430\u044e\u0449\u0438\u0445 \u044f\u0434\u0440\u0430 JupyterLab\u0414\u0438\u0441\u043a1 \u0442\u0435\u0440\u0430\u0431\u0430\u0439\u0442 NVMe\u041d\u0430\u0431\u043e\u0440\u044b \u0434\u0430\u043d\u043d\u044b\u0445, \u043a\u0435\u0448 \u0437\u0430\u0433\u0440\u0443\u0436\u0435\u043d\u043d\u044b\u0445 \u043c\u043e\u0434\u0435\u043b\u0435\u0439, \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u044f \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0435\u0439 \u0438 \u043f\u0440\u043e\u043c\u0435\u0436\u0443\u0442\u043e\u0447\u043d\u044b\u0435 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b\u041e\u043f\u0435\u0440\u0430\u0446\u0438\u043e\u043d\u043d\u0430\u044f \u0441\u0438\u0441\u0442\u0435\u043c\u0430Ubuntu 26.04 LTS, \u044f\u0434\u0440\u043e 7.0.0-29\u0421\u0432\u0435\u0436\u0430\u044f \u0432\u0435\u0440\u0441\u0438\u044f \u0441 \u0434\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0439 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u043a\u043e\u0439\u0422\u0430\u0440\u0438\u0444\u0438\u043a\u0430\u0446\u0438\u044f\u041f\u043e\u0447\u0430\u0441\u043e\u0432\u0430\u044f\u0421\u0442\u0435\u043d\u0434 \u0431\u0440\u0430\u043b\u0441\u044f \u043f\u043e\u0434 \u0440\u0430\u0437\u043e\u0432\u0443\u044e \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0443, \u043f\u0440\u0438 \u043f\u043e\u0441\u0442\u043e\u044f\u043d\u043d\u043e\u0439 \u0440\u0430\u0431\u043e\u0442\u0435 \u0432\u044b\u0433\u043e\u0434\u043d\u0435\u0435 \u0434\u043e\u043b\u0433\u043e\u0441\u0440\u043e\u0447\u043d\u0430\u044f \u0430\u0440\u0435\u043d\u0434\u0430\u041f\u043e\u0434\u0433\u043e\u0442\u043e\u0432\u043a\u0430 \u0441\u0435\u0440\u0432\u0435\u0440\u0430\u0417\u0430\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u043c \u0441\u0435\u0440\u0432\u0435\u0440 \u0438 \u0434\u043e\u0436\u0438\u0434\u0430\u0435\u043c\u0441\u044f \u0435\u0433\u043e \u0441\u0434\u0430\u0447\u0438. \u041f\u0435\u0440\u0432\u043e\u0435, \u0447\u0442\u043e \u043d\u0430\u043c \u043d\u0443\u0436\u043d\u043e, \u044d\u0442\u043e \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0442\u044c \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u044c \u043c\u0430\u0448\u0438\u043d\u044b \u0434\u043e \u0442\u043e\u0433\u043e \u043c\u043e\u043c\u0435\u043d\u0442\u0430, \u043a\u0430\u043a \u043d\u0430 \u043d\u0435\u0439 \u043f\u043e\u044f\u0432\u0438\u0442\u0441\u044f \u0432\u0435\u0431-\u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441. \u0421\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0435\u043d\u043d\u043e, \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0435\u043c \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435 \u0441\u0438\u0441\u0442\u0435\u043c\u044b, \u043d\u0430\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0435\u043c \u0447\u0430\u0441\u043e\u0432\u043e\u0439 \u043f\u043e\u044f\u0441, \u0443\u0447\u0435\u0442\u043d\u044b\u0435 \u0437\u0430\u043f\u0438\u0441\u0438 \u0438 \u043c\u0435\u0436\u0441\u0435\u0442\u0435\u0432\u043e\u0439 \u044d\u043a\u0440\u0430\u043d:apt update &amp;&amp; apt full-upgrade -y # \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435 \u043f\u0430\u043a\u0435\u0442\u043e\u0432 \u0434\u043e \u0442\u0435\u043a\u0443\u0449\u0438\u0445 \u0432\u0435\u0440\u0441\u0438\u0439timedatectl set-timezone Europe\/Moscow # \u0437\u0430\u0434\u0430\u0451\u0442 \u0447\u0430\u0441\u043e\u0432\u043e\u0439 \u043f\u043e\u044f\u0441 \u0441\u0438\u0441\u0442\u0435\u043c\u044bapt install -y git curl htop tmux rsync ufw bc # \u0431\u0430\u0437\u043e\u0432\u044b\u0439 \u043d\u0430\u0431\u043e\u0440 \u0443\u0442\u0438\u043b\u0438\u0442\u041e\u0431\u0440\u0430\u0437\u044b \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432 \u043f\u0440\u0438\u0435\u0437\u0436\u0430\u044e\u0442 \u043c\u0438\u043d\u0438\u043c\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u043c\u0438, \u043e \u0447\u0451\u043c \u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u0441\u043e\u043e\u0431\u0449\u0430\u0435\u0442 \u043f\u0440\u044f\u043c\u043e \u043f\u0440\u0438 \u0432\u0445\u043e\u0434\u0435 \u0441\u0442\u0440\u043e\u043a\u043e\u0439 \u043f\u0440\u043e \u0443\u0434\u0430\u043b\u0451\u043d\u043d\u044b\u0435 \u043f\u0430\u043a\u0435\u0442\u044b. \u041e\u0442\u0441\u044e\u0434\u0430 \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0438\u0435 rsync \u0438 ufw, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0432 \u043f\u0440\u043e\u0448\u043b\u044b\u0445 \u0432\u0435\u0440\u0441\u0438\u044f\u0445 \u0441\u0442\u043e\u044f\u043b\u0438 \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044e, \u0430 \u0431\u0435\u0437 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u0447\u0430\u0441\u043e\u0432\u043e\u0433\u043e \u043f\u043e\u044f\u0441\u0430 \u0444\u0430\u0439\u043b\u043e\u0432\u044b\u0439 \u0431\u0440\u0430\u0443\u0437\u0435\u0440 JupyterLab \u0431\u0443\u0434\u0435\u0442 \u043f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0442\u044c \u0432\u0440\u0435\u043c\u044f \u043e\u0448\u0438\u0431\u043e\u0447\u043d\u043e, \u043c\u0435\u043b\u043e\u0447\u044c, \u043d\u043e \u043d\u0435\u043f\u0440\u0438\u044f\u0442\u043d\u043e.\u00a0\u0414\u0430\u043b\u0435\u0435 \u0434\u043e\u0431\u0430\u0432\u0438\u043c \u043e\u0431\u044b\u0447\u043d\u044b\u0435 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0435 \u0443\u0447\u0435\u0442\u043d\u044b\u0435 \u0437\u0430\u043f\u0438\u0441\u0438, \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u0432\u0445\u043e\u0434 \u0432 \u0432\u0435\u0431-\u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u043f\u043e\u0439\u0434\u0451\u0442 \u0447\u0435\u0440\u0435\u0437 \u0442\u043e\u0442 \u0436\u0435 \u043c\u0435\u0445\u0430\u043d\u0438\u0437\u043c, \u0447\u0442\u043e \u0438 \u0432\u0445\u043e\u0434 \u043f\u043e SSH:useradd -m -s \/bin\/bash analyst1 # -m \u0441\u043e\u0437\u0434\u0430\u0435\u0442 \u0434\u043e\u043c\u0430\u0448\u043d\u0438\u0439 \u043a\u0430\u0442\u0430\u043b\u043e\u0433, -s \u0437\u0430\u0434\u0430\u0435\u0442 \u043e\u0431\u043e\u043b\u043e\u0447\u043a\u0443useradd -m -s \/bin\/bash analyst2echo &#8216;analyst1:\u041f\u0430\u0440\u043e\u043b\u044c\u041f\u0435\u0440\u0432\u044b\u0439&#8217; | chpasswd # \u0437\u0430\u0434\u0430\u0435\u0442 \u043f\u0430\u0440\u043e\u043b\u044cecho &#8216;analyst2:\u041f\u0430\u0440\u043e\u043b\u044c\u0412\u0442\u043e\u0440\u043e\u0439&#8217; | chpasswdpasswd -S analyst1 &amp;&amp; passwd -S analyst2 # \u043f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u043f\u0430\u0440\u043e\u043b\u044f\u0411\u0435\u0437 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0430 -m \u0434\u043e\u043c\u0430\u0448\u043d\u0438\u0439 \u043a\u0430\u0442\u0430\u043b\u043e\u0433 \u043d\u0435 \u0441\u043e\u0437\u0434\u0430\u0441\u0442\u0441\u044f, \u0430 \u0431\u0435\u0437 \u043f\u0430\u0440\u0430\u043c\u0435\u0442\u0440\u0430 -s \u043e\u0431\u043e\u043b\u043e\u0447\u043a\u0430 \u0432\u043e\u0437\u044c\u043c\u0451\u0442\u0441\u044f \u0438\u0437 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0445 \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043a \u0438 \u043d\u0435\u0440\u0435\u0434\u043a\u043e \u043e\u043a\u0430\u0436\u0435\u0442\u0441\u044f \u0443\u0440\u0435\u0437\u0430\u043d\u043d\u043e\u0439, \u0447\u0442\u043e \u0432\u044b\u043b\u0435\u0437\u0435\u0442 \u0432 \u0442\u0435\u0440\u043c\u0438\u043d\u0430\u043b\u0435 \u0432\u043d\u0443\u0442\u0440\u0438 JupyterLab. \u041f\u043e\u0441\u043b\u0435\u0434\u043d\u044f\u044f \u043a\u043e\u043c\u0430\u043d\u0434\u0430 \u043f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442 \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 \u043f\u0430\u0440\u043e\u043b\u044f, \u0433\u0434\u0435 \u0432\u043e \u0432\u0442\u043e\u0440\u043e\u043c \u043f\u043e\u043b\u0435 \u043e\u0431\u044f\u0437\u0430\u043d\u0430 \u0441\u0442\u043e\u044f\u0442\u044c \u0431\u0443\u043a\u0432\u0430 P, \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 L \u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442 \u0437\u0430\u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u0443\u044e \u0443\u0447\u0451\u0442\u043d\u0443\u044e \u0437\u0430\u043f\u0438\u0441\u044c, \u043f\u0440\u0438 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u0432\u0445\u043e\u0434 \u043d\u0435 \u043f\u0440\u043e\u0439\u0434\u0435\u0442.\u0417\u0430\u0434\u0430\u0432\u0430\u0442\u044c \u043f\u0430\u0440\u043e\u043b\u0438 \u0447\u0435\u0440\u0435\u0437 chpasswd \u0443\u0434\u043e\u0431\u043d\u043e \u0434\u043b\u044f \u0441\u0442\u0435\u043d\u0434\u0430, \u043d\u043e \u043d\u0430 \u0431\u043e\u0435\u0432\u043e\u0439 \u043c\u0430\u0448\u0438\u043d\u0435 \u043f\u0430\u0440\u043e\u043b\u044c \u043e\u0441\u0442\u0430\u0435\u0442\u0441\u044f \u0432 \u0438\u0441\u0442\u043e\u0440\u0438\u0438 \u043a\u043e\u043c\u0430\u043d\u0434 \u043e\u0431\u043e\u043b\u043e\u0447\u043a\u0438,\u00a0 \u0442\u0430\u043c \u0440\u0430\u0437\u0443\u043c\u043d\u0435\u0435 \u0438\u043d\u0442\u0435\u0440\u0430\u043a\u0442\u0438\u0432\u043d\u044b\u0439 \u0432\u044b\u0437\u043e\u0432 passwd.\u041c\u0435\u0436\u0441\u0435\u0442\u0435\u0432\u043e\u0439 \u044d\u043a\u0440\u0430\u043d \u043d\u0430\u0441\u0442\u0440\u0430\u0438\u0432\u0430\u0435\u043c \u0434\u043e \u0442\u043e\u0433\u043e, \u043a\u0430\u043a \u043f\u043e\u0434\u043d\u044f\u0442 \u0445\u0430\u0431:ufw default deny incoming # \u0432\u0445\u043e\u0434\u044f\u0449\u0438\u0435 \u0437\u0430\u043a\u0440\u044b\u0442\u044b \u043f\u043e \u0443\u043c\u043e\u043b\u0447\u0430\u043d\u0438\u044eufw default allow outgoing # \u0438\u0441\u0445\u043e\u0434\u044f\u0449\u0438\u0435 \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u044bufw allow 22\/tcp # \u0434\u043e\u0441\u0442\u0443\u043f \u043f\u043e SSHufw allow 80\/tcp # \u0432\u0435\u0431-\u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441 \u0447\u0435\u0440\u0435\u0437 \u043f\u0440\u043e\u043a\u0441\u0438ufw allow 443\/tcp # \u043e\u043d \u0436\u0435 \u0441 \u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u0435\u043cufw &#8212;force enable # \u0432\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435, \u0442\u0435\u043a\u0443\u0449\u0435\u0435 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 \u043d\u0435 \u043e\u0431\u0440\u044b\u0432\u0430\u0435\u0442\u0441\u044f\u0425\u0430\u0431 \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u043d\u0430 8000 \u043f\u043e\u0440\u0442\u0443, \u0438 \u0435\u0433\u043e \u043d\u0435 \u043e\u0442\u043a\u0440\u044b\u0432\u0430\u0435\u043c. \u0421\u043d\u0430\u0440\u0443\u0436\u0438 \u043c\u0430\u0448\u0438\u043d\u0430 \u043f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442 \u043e\u0431\u044b\u0447\u043d\u044b\u0435 \u0432\u0435\u0431-\u043f\u043e\u0440\u0442\u044b, \u0430 \u043a \u0441\u0430\u043c\u043e\u043c\u0443 \u0445\u0430\u0431\u0443 \u043e\u0431\u0440\u0430\u0449\u0430\u0435\u0442\u0441\u044f \u0442\u043e\u043b\u044c\u043a\u043e \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u044b\u0439 \u043f\u0440\u043e\u043a\u0441\u0438.\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u0434\u0440\u0430\u0439\u0432\u0435\u0440\u043e\u0432 NVIDIA \u0438 CUDA\u0414\u043e \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u0434\u0440\u0430\u0439\u0432\u0435\u0440\u0430 \u043c\u043e\u0436\u043d\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043d\u0430\u0448 \u201c\u043c\u0430\u0433\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u0441\u043a\u0440\u0438\u043f\u0442\u201d, \u043d\u043e \u043c\u044b \u043f\u043e\u043a\u0430\u0436\u0435\u043c, \u043a\u0430\u043a\u00a0 \u0432\u044b\u043f\u043e\u043b\u043d\u0438\u0442\u044c \u0431\u0430\u0437\u043e\u0432\u044b\u0435 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 \u0438 \u043f\u043e\u0441\u0442\u0430\u0432\u0438\u0442\u044c \u0435\u0433\u043e \u0432\u0440\u0443\u0447\u043d\u0443\u044e:\u0414\u043b\u044f \u043d\u0430\u0447\u0430\u043b\u0430 \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u043c, \u043a\u0430\u043a\u0430\u044f \u0443 \u043d\u0430\u0441 \u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u0438 \u0447\u0442\u043e \u0432\u043e\u043e\u0431\u0449\u0435 \u043d\u0430 \u043d\u0435\u0439 \u0442\u0432\u043e\u0440\u0438\u0442\u0441\u044f.lspci | grep -i nvidia # \u0432\u0438\u0434\u0438\u0442 \u043b\u0438 \u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u043a\u0430\u0440\u0442\u0443 \u043d\u0430 \u0448\u0438\u043d\u0435mokutil &#8212;sb-state # \u0441\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 Secure Bootuname -r # \u043f\u043e\u0434 \u044d\u0442\u043e \u044f\u0434\u0440\u043e \u0431\u0443\u0434\u0435\u0442 \u0441\u043e\u0431\u0440\u0430\u043d \u043c\u043e\u0434\u0443\u043b\u044c\u0412\u044b\u0432\u043e\u0434 \u043d\u0430 \u043d\u0430\u0448\u0435\u043c \u0441\u0442\u0435\u043d\u0434\u0435:2b:00.0 VGA compatible controller: NVIDIA Corporation GA102\u00a0\u00a0\u00a0\u00a0[GeForce RTX 3090] (rev a1)2b:00.1 Audio device: NVIDIA Corporation GA102 High Definition\u00a0\u00a0\u00a0\u00a0Audio Controller (rev a1)SecureBoot disabledPlatform is in Setup Mode\u00a0\u00a0\u00a0\u00a07.0.0-29-generic\u0414\u0440\u0430\u0439\u0432\u0435\u0440 \u0441\u043e\u0431\u0438\u0440\u0430\u0435\u0442 \u043c\u043e\u0434\u0443\u043b\u044c \u044f\u0434\u0440\u0430 \u043f\u0440\u044f\u043c\u043e \u043d\u0430 \u043c\u0430\u0448\u0438\u043d\u0435, \u0438 \u043f\u0440\u0438 \u0430\u043a\u0442\u0438\u0432\u043d\u043e\u0439 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0435 \u043f\u043e\u0434\u043f\u0438\u0441\u0438 \u043c\u043e\u0434\u0443\u043b\u044c \u043d\u0435 \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u0442\u0441\u044f, \u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0435\u0440\u0435\u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0438 \u043a\u0430\u0440\u0442\u0430 \u043f\u0440\u043e\u043f\u0430\u0434\u0451\u0442. \u041c\u043e\u0434\u0443\u043b\u044c \u0434\u0440\u0430\u0439\u0432\u0435\u0440\u0430 \u0431\u0443\u0434\u0435\u0442 \u0441\u043e\u0431\u0440\u0430\u043d \u043f\u043e\u0434 \u0432\u0435\u0440\u0441\u0438\u044e \u044f\u0434\u0440\u0430, \u0435\u0441\u043b\u0438 \u043e\u0431\u043d\u043e\u0432\u0438\u0442\u044c \u044f\u0434\u0440\u043e \u0431\u0435\u0437 \u043f\u0435\u0440\u0435\u0441\u0431\u043e\u0440\u043a\u0438 \u043c\u043e\u0434\u0443\u043b\u044f, \u0441\u0438\u0441\u0442\u0435\u043c\u0430 \u043f\u0435\u0440\u0435\u0441\u0442\u0430\u043d\u0435\u0442 \u0432\u0438\u0434\u0435\u0442\u044c \u043f\u0440\u0438 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u043c \u0441\u0442\u0430\u0440\u0442\u0435.\u00a0\u0414\u043b\u044f \u0442\u043e\u0433\u043e \u0447\u0442\u043e\u0431\u044b \u0438\u0437\u0431\u0435\u0436\u0430\u0442\u044c \u043f\u043e\u0434\u043e\u0431\u043d\u044b\u0445 \u043f\u0440\u043e\u0431\u043b\u0435\u043c, \u043f\u043e\u0441\u0442\u0430\u0432\u0438\u043c \u0434\u0440\u0430\u0439\u0432\u0435\u0440 \u0438\u0437 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u044f NVIDIA, \u0430 \u043d\u0435 \u0447\u0435\u0440\u0435\u0437 \u0444\u0430\u0439\u043b-\u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0449\u0438\u043a, \u0442\u0430\u043a \u043e\u043d \u0431\u0443\u0434\u0435\u0442 \u0442\u043e\u0447\u043d\u043e \u043e\u0431\u043d\u043e\u0432\u043b\u044f\u0442\u044c\u0441\u044f \u0432\u043c\u0435\u0441\u0442\u0435 \u0441 \u0441\u0438\u0441\u0442\u0435\u043c\u043e\u0439:wget https:\/\/developer.download.nvidia.com\/compute\/cuda\/repos\/ubuntu2604\/x86_64\/cuda-keyring_1.1-1_all.debdpkg -i cuda-keyring_1.1-1_all.deb # \u0434\u043e\u0431\u0430\u0432\u043b\u044f\u0435\u0442 \u043a\u043b\u044e\u0447 \u0438 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0439apt update # \u043e\u0431\u043d\u043e\u0432\u043b\u044f\u0435\u0442 \u0441\u043f\u0438\u0441\u043e\u043a \u043f\u0430\u043a\u0435\u0442\u043e\u0432apt search nvidia-open | head # \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0435\u043c \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u0435 \u0432\u0435\u0440\u0441\u0438\u0438\u041d\u0430\u0445\u043e\u0434\u0438\u043c:nvidia-open\/unknown 610.57.04-1ubuntu1 amd64\u00a0\u00a0NVIDIA Driver meta-package, Open GPU kernel&#8230;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-493230","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/493230","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=493230"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/493230\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=493230"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=493230"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=493230"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}