{"id":1892,"date":"2025-12-12T13:30:45","date_gmt":"2025-12-12T13:30:45","guid":{"rendered":"https:\/\/alexisiumus.ru\/?p=1892"},"modified":"2025-12-12T13:32:20","modified_gmt":"2025-12-12T13:32:20","slug":"%d1%81%d0%bf%d0%b8%d1%81%d0%be%d0%ba-%d1%81%d0%be%d1%84%d1%82%d0%b0-%d0%b8-%d0%ba%d0%be%d0%bd%d1%82%d0%b5%d0%bd%d1%82%d0%b0-%d0%ba%d0%be%d1%82%d0%be%d1%80%d1%8b%d0%b9-%d1%81%d1%82%d0%be%d0%b8%d1%82","status":"publish","type":"post","link":"https:\/\/alexisiumus.ru\/?p=1892","title":{"rendered":"\u0421\u043f\u0438\u0441\u043e\u043a \u0441\u043e\u0444\u0442\u0430 \u0438 \u043a\u043e\u043d\u0442\u0435\u043d\u0442\u0430, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0441\u0442\u043e\u0438\u0442 \u0438\u043c\u0435\u0442\u044c \u0443 \u0441\u0435\u0431\u044f \u0432 \u0434\u043e\u043c\u0430\u0448\u043d\u0435\u043c \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">\u041f\u0440\u0438 30 \u0422\u0411 \u0434\u043e\u043c\u0430\u0448\u043d\u0435\u0433\u043e \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430 \u043c\u043e\u0436\u043d\u043e \u0441\u043e\u0431\u0440\u0430\u0442\u044c \u043f\u043e\u043b\u043d\u043e\u0446\u0435\u043d\u043d\u044b\u0439 \u00ab\u0430\u0432\u0442\u043e\u043d\u043e\u043c\u043d\u044b\u0439 \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u00bb \u0438 \u043c\u0435\u0434\u0438\u0430\u0442\u0435\u043a\u0443, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u043f\u043e\u0437\u0432\u043e\u043b\u0438\u0442 \u043a\u043e\u043c\u0444\u043e\u0440\u0442\u043d\u043e \u0436\u0438\u0442\u044c \u0438 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0434\u0430\u0436\u0435 \u043f\u0440\u0438 \u0434\u043b\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u0445 \u043e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f\u0445 \u0441\u0435\u0442\u0438. \u042f \u0441\u043e\u0441\u0442\u0430\u0432\u043b\u044e \u0441\u043f\u0438\u0441\u043e\u043a \u043f\u043e \u043a\u0430\u0442\u0435\u0433\u043e\u0440\u0438\u044f\u043c, \u0447\u0442\u043e\u0431\u044b \u0431\u044b\u043b\u043e \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u043e.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\ud83d\udda5\ufe0f \u0411\u0430\u0437\u043e\u0432\u044b\u0439 \u0441\u043e\u0444\u0442 (\u043e\u0444\u043b\u0430\u0439\u043d-\u0432\u0435\u0440\u0441\u0438\u0438)<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>\u041e\u0421 \u0438 \u0434\u0438\u0441\u0442\u0440\u0438\u0431\u0443\u0442\u0438\u0432\u044b<\/strong>: ISO-\u043e\u0431\u0440\u0430\u0437\u044b Linux (Debian, Ubuntu, Arch, FreeBSD), Windows, macOS (\u0434\u043b\u044f \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438).<\/li>\n\n\n\n<li><strong>\u0412\u0438\u0440\u0442\u0443\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f<\/strong>: Proxmox, VirtualBox, VMware Workstation, KVM\/QEMU.<\/li>\n\n\n\n<li><strong>\u0421\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0435 \u0443\u0442\u0438\u043b\u0438\u0442\u044b<\/strong>: \u043e\u0444\u043b\u0430\u0439\u043d-\u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0438 \u043f\u0430\u043a\u0435\u0442\u043e\u0432 (APT, RPM, ports), \u0434\u0440\u0430\u0439\u0432\u0435\u0440\u044b, \u043f\u0440\u043e\u0448\u0438\u0432\u043a\u0438.<\/li>\n\n\n\n<li><strong>\u0421\u0435\u0442\u0435\u0432\u044b\u0435 \u0441\u0435\u0440\u0432\u0438\u0441\u044b<\/strong>: Postfix\/Dovecot, Samba, OpenVPN\/WireGuard, Nginx\/Apache.<\/li>\n\n\n\n<li><strong>\u0410\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0430\u0446\u0438\u044f<\/strong>: Ansible, Puppet, SaltStack, \u043e\u0444\u043b\u0430\u0439\u043d-\u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044f.<\/li>\n\n\n\n<li><strong>\u0414\u0438\u0430\u0433\u043d\u043e\u0441\u0442\u0438\u043a\u0430<\/strong>: Memtest86, smartmontools, iperf, sysbench.<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\ud83d\udcda \u0414\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044f \u0438 \u0437\u043d\u0430\u043d\u0438\u044f<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>\u041e\u0444\u043b\u0430\u0439\u043d-\u044d\u043d\u0446\u0438\u043a\u043b\u043e\u043f\u0435\u0434\u0438\u0438<\/strong>: Kiwix (Wikipedia, Wikibooks, Wiktionary, StackExchange dumps).<\/li>\n\n\n\n<li><strong>\u0422\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u043a\u043d\u0438\u0433\u0438<\/strong>: Linux Bible, FreeBSD Handbook, RFC-\u0441\u0431\u043e\u0440\u043d\u0438\u043a\u0438, \u043a\u043d\u0438\u0433\u0438 \u043f\u043e \u0441\u0435\u0442\u044f\u043c, \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u0438, \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438.<\/li>\n\n\n\n<li><strong>\u0423\u0447\u0435\u0431\u043d\u0438\u043a\u0438 \u0438 \u043a\u0443\u0440\u0441\u044b<\/strong>: PDF\/EPUB \u043f\u043e \u043f\u0440\u043e\u0433\u0440\u0430\u043c\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044e, \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044e, DevOps, \u043a\u0440\u0438\u043f\u0442\u043e\u0433\u0440\u0430\u0444\u0438\u0438.<\/li>\n\n\n\n<li><strong>\u041e\u0444\u043b\u0430\u0439\u043d-\u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044f<\/strong>: man-\u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b, ArchWiki, Debian Wiki, MDN Web Docs.<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\ud83c\udfac \u041c\u0435\u0434\u0438\u0430-\u043a\u043e\u043d\u0442\u0435\u043d\u0442<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>\u0424\u0438\u043b\u044c\u043c\u044b \u0438 \u0441\u0435\u0440\u0438\u0430\u043b\u044b<\/strong>: \u043a\u043e\u043b\u043b\u0435\u043a\u0446\u0438\u044f \u0432 \u0445\u043e\u0440\u043e\u0448\u0435\u043c \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 (Blu-ray \u0440\u0438\u043f\u044b, 1080p\/4K).<\/li>\n\n\n\n<li><strong>\u041c\u0443\u0437\u044b\u043a\u0430<\/strong>: FLAC\/MP3 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0430, \u043e\u0444\u043b\u0430\u0439\u043d-\u0441\u0442\u0440\u0438\u043c\u0438\u043d\u0433 (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u044b\u0439 Jellyfin\/Plex).<\/li>\n\n\n\n<li><strong>\u0418\u0433\u0440\u044b<\/strong>: DRM-free (GOG, \u0441\u0442\u0430\u0440\u044b\u0435 ISO), \u044d\u043c\u0443\u043b\u044f\u0442\u043e\u0440\u044b (RetroArch, DOSBox).<\/li>\n\n\n\n<li><strong>\u0410\u0443\u0434\u0438\u043e\u043a\u043d\u0438\u0433\u0438 \u0438 \u043f\u043e\u0434\u043a\u0430\u0441\u0442\u044b<\/strong>: \u043e\u0444\u043b\u0430\u0439\u043d-\u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0430 \u0432 MP3\/OGG.<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\ud83c\udf0d \u041f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0430\u044f \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044f<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>\u041a\u0430\u0440\u0442\u044b \u0438 \u043d\u0430\u0432\u0438\u0433\u0430\u0446\u0438\u044f<\/strong>: \u043e\u0444\u043b\u0430\u0439\u043d-\u043a\u0430\u0440\u0442\u044b (OpenStreetMap, OsmAnd, Maps.me).<\/li>\n\n\n\n<li><strong>\u041c\u0435\u0434\u0438\u0446\u0438\u043d\u0430 \u0438 \u0432\u044b\u0436\u0438\u0432\u0430\u043d\u0438\u0435<\/strong>: \u0441\u043f\u0440\u0430\u0432\u043e\u0447\u043d\u0438\u043a\u0438 \u043f\u043e \u043f\u0435\u0440\u0432\u043e\u0439 \u043f\u043e\u043c\u043e\u0449\u0438, \u043a\u0443\u043b\u0438\u043d\u0430\u0440\u043d\u044b\u0435 \u043a\u043d\u0438\u0433\u0438, DIY-\u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u0430.<\/li>\n\n\n\n<li><strong>\u0421\u043b\u043e\u0432\u0430\u0440\u0438 \u0438 \u043f\u0435\u0440\u0435\u0432\u043e\u0434\u0447\u0438\u043a\u0438<\/strong>: \u043e\u0444\u043b\u0430\u0439\u043d-\u0431\u0430\u0437\u044b Lingvo, GoldenDict, \u0441\u043b\u043e\u0432\u0430\u0440\u0438 \u0434\u043b\u044f \u0440\u0430\u0437\u043d\u044b\u0445 \u044f\u0437\u044b\u043a\u043e\u0432.<\/li>\n\n\n\n<li><strong>\u042d\u043d\u0446\u0438\u043a\u043b\u043e\u043f\u0435\u0434\u0438\u0438 \u043f\u043e \u0440\u0430\u0441\u0442\u0435\u043d\u0438\u044f\u043c, \u0442\u0435\u0445\u043d\u0438\u043a\u0435, \u044d\u043b\u0435\u043a\u0442\u0440\u043e\u043d\u0438\u043a\u0435<\/strong>.<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\ud83d\udee0\ufe0f \u041b\u043e\u043a\u0430\u043b\u044c\u043d\u044b\u0435 \u0441\u0435\u0440\u0432\u0438\u0441\u044b<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>\u041c\u0435\u0434\u0438\u0430-\u0441\u0435\u0440\u0432\u0435\u0440<\/strong>: Jellyfin, Plex, Kodi.<\/li>\n\n\n\n<li><strong>\u0424\u0430\u0439\u043b\u043e\u0432\u044b\u0439 \u043c\u0435\u043d\u0435\u0434\u0436\u043c\u0435\u043d\u0442<\/strong>: Nextcloud, Syncthing (\u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e).<\/li>\n\n\n\n<li><strong>\u041f\u043e\u0438\u0441\u043a \u043f\u043e \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0435<\/strong>: Elasticsearch \u0438\u043b\u0438 Recoll \u0434\u043b\u044f \u0438\u043d\u0434\u0435\u043a\u0441\u0430\u0446\u0438\u0438 PDF\/EPUB.<\/li>\n\n\n\n<li><strong>\u0417\u0435\u0440\u043a\u0430\u043b\u0430 \u0441\u0430\u0439\u0442\u043e\u0432<\/strong>: \u043e\u0444\u043b\u0430\u0439\u043d-\u043a\u043e\u043f\u0438\u0438 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u0438, \u0444\u043e\u0440\u0443\u043c\u043e\u0432, \u0431\u043b\u043e\u0433\u043e\u0432 (wget\/HTTrack).<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\ud83d\udcca \u041e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u044f \u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u0441\u0442\u0432\u0430 (30 \u0422\u0411)<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>5 \u0422\u0411 \u2014 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0435 ISO, \u0441\u043e\u0444\u0442, \u043e\u0444\u043b\u0430\u0439\u043d-\u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0438.<\/li>\n\n\n\n<li>5 \u0422\u0411 \u2014 \u043a\u043d\u0438\u0433\u0438, \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u044f, \u044d\u043d\u0446\u0438\u043a\u043b\u043e\u043f\u0435\u0434\u0438\u0438.<\/li>\n\n\n\n<li>10 \u0422\u0411 \u2014 \u0444\u0438\u043b\u044c\u043c\u044b\/\u0441\u0435\u0440\u0438\u0430\u043b\u044b.<\/li>\n\n\n\n<li>5 \u0422\u0411 \u2014 \u043c\u0443\u0437\u044b\u043a\u0430, \u0430\u0443\u0434\u0438\u043e\u043a\u043d\u0438\u0433\u0438, \u043f\u043e\u0434\u043a\u0430\u0441\u0442\u044b.<\/li>\n\n\n\n<li>5 \u0422\u0411 \u2014 \u0438\u0433\u0440\u044b, \u044d\u043c\u0443\u043b\u044f\u0442\u043e\u0440\u044b, \u043a\u0430\u0440\u0442\u044b, \u043f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u043c\u0430\u0442\u0435\u0440\u0438\u0430\u043b\u044b.<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<p class=\"wp-block-paragraph\">\u0425\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 \u0442\u0430\u043a\u043e\u0433\u043e \u043c\u0430\u0441\u0448\u0442\u0430\u0431\u0430 \u043f\u0440\u0435\u0432\u0440\u0430\u0449\u0430\u0435\u0442\u0441\u044f \u0432 \u043f\u043e\u043b\u043d\u043e\u0446\u0435\u043d\u043d\u044b\u0439 \u00ab\u043b\u043e\u043a\u0430\u043b\u044c\u043d\u044b\u0439 \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u00bb. \u042f \u0431\u044b \u0435\u0449\u0451 \u0434\u043e\u0431\u0430\u0432\u0438\u043b <strong>\u0441\u043a\u0440\u0438\u043f\u0442\u044b \u0434\u043b\u044f \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u044f \u0437\u0435\u0440\u043a\u0430\u043b<\/strong>, \u0447\u0442\u043e\u0431\u044b \u043f\u0440\u0438 \u043d\u0430\u043b\u0438\u0447\u0438\u0438 \u0441\u0435\u0442\u0438 \u043e\u043d\u0438 \u043f\u043e\u0434\u0442\u044f\u0433\u0438\u0432\u0430\u043b\u0438 \u0441\u0432\u0435\u0436\u0438\u0435 \u0432\u0435\u0440\u0441\u0438\u0438, \u0430 \u043f\u0440\u0438 \u043e\u0442\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0438 \u0432\u0441\u0451 \u043e\u0441\u0442\u0430\u0432\u0430\u043b\u043e\u0441\u044c \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u044b\u043c.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\u041a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u044b\u0439 \u0441\u043f\u0438\u0441\u043e\u043a \u043f\u0430\u043a\u0435\u0442\u043e\u0432 \u0438 \u043e\u0444\u043b\u0430\u0439\u043d-\u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0435\u0432 Linux\/FreeBSD, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0441\u0442\u043e\u0438\u0442 \u0441\u043a\u0430\u0447\u0430\u0442\u044c \u0437\u0430\u0440\u0430\u043d\u0435\u0435, \u0447\u0442\u043e\u0431\u044b \u0442\u0432\u043e\u0439 NAS \u0431\u044b\u043b \u043f\u043e\u043b\u043d\u043e\u0441\u0442\u044c\u044e \u0430\u0432\u0442\u043e\u043d\u043e\u043c\u043d\u044b\u043c<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>\u041a\u0440\u0430\u0442\u043a\u0438\u0439 \u043e\u0442\u0432\u0435\u0442:<\/strong> \u0414\u043b\u044f \u0430\u0432\u0442\u043e\u043d\u043e\u043c\u043d\u043e\u0433\u043e NAS \u043d\u0430 30 \u0422\u0411 \u0441\u0442\u043e\u0438\u0442 \u0437\u0430\u0440\u0430\u043d\u0435\u0435 \u0441\u043a\u0430\u0447\u0430\u0442\u044c \u043e\u0444\u043b\u0430\u0439\u043d\u2011\u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0438 \u0431\u0430\u0437\u043e\u0432\u044b\u0445 \u0441\u0438\u0441\u0442\u0435\u043c\u043d\u044b\u0445 \u043f\u0430\u043a\u0435\u0442\u043e\u0432 (coreutils, ssh, vim, gcc, python, perl), \u0441\u0435\u0442\u0435\u0432\u044b\u0445 \u0441\u0435\u0440\u0432\u0438\u0441\u043e\u0432 (samba, postfix, dovecot, nginx, openvpn\/wireguard), \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u043e\u0432 \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u0438 (qemu, libvirt, docker\/podman), \u0430 \u0442\u0430\u043a\u0436\u0435 \u043e\u0444\u043b\u0430\u0439\u043d\u2011\u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0438 \u0434\u043b\u044f FreeBSD ports \u0438 Linux (APT, RPM, Arch pacman). \u042d\u0442\u043e \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0442 \u043f\u043e\u043b\u043d\u044b\u0439 \u0446\u0438\u043a\u043b \u0440\u0430\u0431\u043e\u0442\u044b \u0431\u0435\u0437 \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u0430 <a href=\"https:\/\/www.dbi-services.com\/blog\/using-offline-repositories-and-local-packages-for-installation\/\">dbi services<\/a> <a href=\"https:\/\/gist.github.com\/grahamperrin\/7a72a9c8eeedca80c266e279f057b47a\">GitHub Gist<\/a> <a href=\"https:\/\/forums.freebsd.org\/threads\/offline-installation-of-packages.87221\/\">The FreeBSD Forums<\/a>.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\ud83d\udda5\ufe0f Linux: \u043e\u0444\u043b\u0430\u0439\u043d\u2011\u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0438 \u0438 \u043f\u0430\u043a\u0435\u0442\u044b<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>\u0411\u0430\u0437\u043e\u0432\u044b\u0435 \u0443\u0442\u0438\u043b\u0438\u0442\u044b<\/strong>: <code>coreutils<\/code>, <code>bash<\/code>, <code>vim\/nano<\/code>, <code>htop<\/code>, <code>screen\/tmux<\/code>, <code>rsync<\/code>.<\/li>\n\n\n\n<li><strong>\u0421\u0435\u0442\u0435\u0432\u044b\u0435 \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u044b<\/strong>: <code>openssh-server<\/code>, <code>curl<\/code>, <code>wget<\/code>, <code>net-tools<\/code>, <code>iperf3<\/code>.<\/li>\n\n\n\n<li><strong>\u0424\u0430\u0439\u043b\u043e\u0432\u044b\u0435 \u0441\u0435\u0440\u0432\u0438\u0441\u044b<\/strong>: <code>samba<\/code>, <code>nfs-kernel-server<\/code>, <code>sshfs<\/code>.<\/li>\n\n\n\n<li><strong>\u041f\u043e\u0447\u0442\u043e\u0432\u044b\u0435 \u0441\u0435\u0440\u0432\u0438\u0441\u044b<\/strong>: <code>postfix<\/code>, <code>dovecot<\/code>, <code>mailutils<\/code>.<\/li>\n\n\n\n<li><strong>VPN \u0438 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u044c<\/strong>: <code>openvpn<\/code>, <code>wireguard-tools<\/code>, <code>iptables<\/code>, <code>fail2ban<\/code>.<\/li>\n\n\n\n<li><strong>\u0412\u0438\u0440\u0442\u0443\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u0438 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u044b<\/strong>: <code>qemu-kvm<\/code>, <code>libvirt<\/code>, <code>virt-manager<\/code>, <code>docker<\/code>, <code>podman<\/code>.<\/li>\n\n\n\n<li><strong>\u0425\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435 \u0438 RAID<\/strong>: <code>mdadm<\/code>, <code>lvm2<\/code>, <code>zfsutils-linux<\/code>, <code>btrfs-progs<\/code>.<\/li>\n\n\n\n<li><strong>\u041c\u043e\u043d\u0438\u0442\u043e\u0440\u0438\u043d\u0433<\/strong>: <code>nagios-plugins<\/code>, <code>prometheus-node-exporter<\/code>, <code>grafana<\/code>.<\/li>\n\n\n\n<li><strong>\u041e\u0444\u043b\u0430\u0439\u043d\u2011\u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0438<\/strong>:\n<ul class=\"wp-block-list\">\n<li>Debian\/Ubuntu: \u0437\u0435\u0440\u043a\u0430\u043b\u0430 <code>main<\/code>, <code>universe<\/code>, <code>multiverse<\/code> \u0447\u0435\u0440\u0435\u0437 <code>reposync<\/code> \u0438\u043b\u0438 <code>apt-mirror<\/code>.<\/li>\n\n\n\n<li>CentOS\/RHEL: <code>BaseOS<\/code>, <code>AppStream<\/code>, <code>EPEL<\/code> (\u0447\u0435\u0440\u0435\u0437 <code>reposync<\/code>).<\/li>\n\n\n\n<li>Arch Linux: \u043f\u043e\u043b\u043d\u044b\u0439 <code>pacman<\/code> \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0439 (<code>archlinux-repo<\/code>).<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">\ud83d\udc49 \u041f\u0440\u0430\u043a\u0442\u0438\u043a\u0430: \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u044b\u0439 <code>apt-mirror<\/code> \u0438\u043b\u0438 <code>reposync<\/code> \u043a\u0430\u0442\u0430\u043b\u043e\u0433 \u0438 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0435\u0433\u043e \u043a\u0430\u043a \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u044b\u0439 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0439 <a href=\"https:\/\/www.dbi-services.com\/blog\/using-offline-repositories-and-local-packages-for-installation\/\">dbi services<\/a>.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\ud83d\udc1a FreeBSD: \u043e\u0444\u043b\u0430\u0439\u043d\u2011\u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0438 \u0438 \u043f\u0430\u043a\u0435\u0442\u044b<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>\u0411\u0430\u0437\u043e\u0432\u044b\u0435 \u043f\u0430\u043a\u0435\u0442\u044b<\/strong>: <code>bash<\/code>, <code>vim<\/code>, <code>nano<\/code>, <code>tmux<\/code>, <code>htop<\/code>.<\/li>\n\n\n\n<li><strong>\u0421\u0435\u0442\u0435\u0432\u044b\u0435 \u0441\u0435\u0440\u0432\u0438\u0441\u044b<\/strong>: <code>openssh-portable<\/code>, <code>curl<\/code>, <code>wget<\/code>, <code>netcat<\/code>.<\/li>\n\n\n\n<li><strong>\u0424\u0430\u0439\u043b\u043e\u0432\u044b\u0435 \u0441\u0435\u0440\u0432\u0438\u0441\u044b<\/strong>: <code>samba413<\/code>, <code>nfs-server<\/code>, <code>sshfs<\/code>.<\/li>\n\n\n\n<li><strong>\u041f\u043e\u0447\u0442\u043e\u0432\u044b\u0435 \u0441\u0435\u0440\u0432\u0438\u0441\u044b<\/strong>: <code>postfix<\/code>, <code>dovecot<\/code>.<\/li>\n\n\n\n<li><strong>VPN \u0438 \u0431\u0435\u0437\u043e\u043f\u0430\u0441\u043d\u043e\u0441\u0442\u044c<\/strong>: <code>openvpn<\/code>, <code>wireguard-go<\/code>, <code>pfSense-\u043f\u0430\u043a\u0435\u0442\u044b<\/code>.<\/li>\n\n\n\n<li><strong>\u0412\u0438\u0440\u0442\u0443\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f \u0438 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u044b<\/strong>: <code>qemu<\/code>, <code>bhyve<\/code>, <code>iocage<\/code> (\u0434\u043b\u044f jails).<\/li>\n\n\n\n<li><strong>\u0424\u0421 \u0438 RAID<\/strong>: <code>zfs<\/code>, <code>geom<\/code>, <code>gmirror<\/code>.<\/li>\n\n\n\n<li><strong>\u041c\u043e\u043d\u0438\u0442\u043e\u0440\u0438\u043d\u0433<\/strong>: <code>nagios<\/code>, <code>prometheus<\/code>, <code>grafana<\/code>.<\/li>\n\n\n\n<li><strong>\u041e\u0444\u043b\u0430\u0439\u043d\u2011\u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0438<\/strong>:\n<ul class=\"wp-block-list\">\n<li>\u0418\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c DVD\u2011ISO \u0441 \u043f\u0430\u043a\u0435\u0442\u043e\u043c <code>\/usr\/freebsd-packages\/offline\/<\/code> <a href=\"https:\/\/gist.github.com\/grahamperrin\/7a72a9c8eeedca80c266e279f057b47a\">GitHub Gist<\/a>.<\/li>\n\n\n\n<li>\u0421\u043a\u043e\u043f\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0431\u0438\u043d\u0430\u0440\u043d\u044b\u0435 \u043f\u0430\u043a\u0435\u0442\u044b \u0441 \u043e\u0444\u0438\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u0433\u043e <code>pkg.freebsd.org<\/code> \u0438 \u0440\u0430\u0437\u0432\u0435\u0440\u043d\u0443\u0442\u044c \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u044b\u0439 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0439 <a href=\"https:\/\/forums.freebsd.org\/threads\/offline-installation-of-packages.87221\/\">The FreeBSD Forums<\/a>.<\/li>\n\n\n\n<li>FreeBSD Ports Tree (<code>portsnap fetch extract<\/code>) \u0441\u043e\u0445\u0440\u0430\u043d\u0438\u0442\u044c \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e <a href=\"https:\/\/github.com\/orgs\/freebsd\/repositories\">Github<\/a>.<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\ud83d\udce6 \u0420\u0435\u043a\u043e\u043c\u0435\u043d\u0434\u0430\u0446\u0438\u0438 \u043f\u043e \u043e\u0440\u0433\u0430\u043d\u0438\u0437\u0430\u0446\u0438\u0438<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Linux<\/strong>: \u0434\u0435\u0440\u0436\u0430\u0442\u044c \u043f\u043e\u043b\u043d\u044b\u0439 \u043e\u0444\u043b\u0430\u0439\u043d\u2011\u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0439 (APT\/RPM\/Arch) \u043d\u0430 NAS, \u0447\u0442\u043e\u0431\u044b \u043c\u043e\u0436\u043d\u043e \u0431\u044b\u043b\u043e \u0441\u0442\u0430\u0432\u0438\u0442\u044c \u043f\u0430\u043a\u0435\u0442\u044b \u0447\u0435\u0440\u0435\u0437 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u044b\u0439 \u043c\u0435\u043d\u0435\u0434\u0436\u0435\u0440.<\/li>\n\n\n\n<li><strong>FreeBSD<\/strong>: \u0441\u043e\u0445\u0440\u0430\u043d\u0438\u0442\u044c <code>pkg<\/code> \u0431\u0438\u043d\u0430\u0440\u043d\u044b\u0435 \u043f\u0430\u043a\u0435\u0442\u044b \u0438 Ports Tree, \u0447\u0442\u043e\u0431\u044b \u0441\u043e\u0431\u0438\u0440\u0430\u0442\u044c \u0438\u0437 \u0438\u0441\u0445\u043e\u0434\u043d\u0438\u043a\u043e\u0432.<\/li>\n\n\n\n<li><strong>\u0410\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0430\u0446\u0438\u044f<\/strong>: \u0441\u043a\u0440\u0438\u043f\u0442\u044b \u0434\u043b\u044f \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u044f \u0437\u0435\u0440\u043a\u0430\u043b \u043f\u0440\u0438 \u043d\u0430\u043b\u0438\u0447\u0438\u0438 \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u0430 (<code>reposync<\/code>, <code>apt-mirror<\/code>, <code>portsnap<\/code>).<\/li>\n\n\n\n<li><strong>\u0425\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0435<\/strong>: \u0432\u044b\u0434\u0435\u043b\u0438\u0442\u044c 2\u20133 \u0422\u0411 \u043f\u043e\u0434 \u043e\u0444\u043b\u0430\u0439\u043d\u2011\u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0438, \u043e\u0441\u0442\u0430\u043b\u044c\u043d\u043e\u0435 \u2014 \u043f\u043e\u0434 \u043c\u0435\u0434\u0438\u0430 \u0438 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u044b.<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<p class=\"wp-block-paragraph\">\ud83d\udd11 <strong>\u0418\u0442\u043e\u0433:<\/strong> \u0441\u043a\u0430\u0447\u0430\u0439 \u043e\u0444\u043b\u0430\u0439\u043d\u2011\u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0438 \u0434\u043b\u044f Linux (APT\/RPM\/Arch) \u0438 FreeBSD (pkg + Ports Tree), \u043f\u043b\u044e\u0441 \u043d\u0430\u0431\u043e\u0440 \u043a\u043b\u044e\u0447\u0435\u0432\u044b\u0445 \u043f\u0430\u043a\u0435\u0442\u043e\u0432: \u0443\u0442\u0438\u043b\u0438\u0442\u044b, \u0441\u0435\u0442\u0435\u0432\u044b\u0435 \u0441\u0435\u0440\u0432\u0438\u0441\u044b, VPN, \u0432\u0438\u0440\u0442\u0443\u0430\u043b\u0438\u0437\u0430\u0446\u0438\u044f, \u043c\u043e\u043d\u0438\u0442\u043e\u0440\u0438\u043d\u0433. \u042d\u0442\u043e \u0441\u0434\u0435\u043b\u0430\u0435\u0442 \u0442\u0432\u043e\u0439 NAS \u043f\u043e\u043b\u043d\u043e\u0441\u0442\u044c\u044e \u0430\u0432\u0442\u043e\u043d\u043e\u043c\u043d\u044b\u043c \u0438 \u0433\u043e\u0442\u043e\u0432\u044b\u043c \u043a \u0440\u0430\u0431\u043e\u0442\u0435 \u0431\u0435\u0437 \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u0430 <a href=\"https:\/\/www.dbi-services.com\/blog\/using-offline-repositories-and-local-packages-for-installation\/\">dbi services<\/a> <a href=\"https:\/\/gist.github.com\/grahamperrin\/7a72a9c8eeedca80c266e279f057b47a\">GitHub Gist<\/a> <a href=\"https:\/\/forums.freebsd.org\/threads\/offline-installation-of-packages.87221\/\">The FreeBSD Forums<\/a> <a href=\"https:\/\/github.com\/orgs\/freebsd\/repositories\">Github<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\u0413\u043e\u0442\u043e\u0432\u044b\u0435 \u043a\u043e\u043c\u0430\u043d\u0434\u044b reposync\/apt-mirror \u0438 pkg fetch, \u0447\u0442\u043e\u0431\u044b \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0441\u043a\u0430\u0447\u0438\u0432\u0430\u043d\u0438\u0435 \u044d\u0442\u0438\u0445 \u043e\u0444\u043b\u0430\u0439\u043d\u2011\u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0435\u0432<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u041e\u0442\u043b\u0438\u0447\u043d\u043e, \u0410\u043b\u0435\u043a\u0441 \ud83d\udc4c. \u0414\u0430\u0432\u0430\u0439 \u0441\u043e\u0431\u0435\u0440\u0451\u043c \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u044b\u0435 \u043a\u043e\u043c\u0430\u043d\u0434\u044b \u0434\u043b\u044f \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0430\u0446\u0438\u0438 \u0441\u043a\u0430\u0447\u0438\u0432\u0430\u043d\u0438\u044f \u043e\u0444\u043b\u0430\u0439\u043d\u2011\u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0435\u0432. \u042f \u0434\u0430\u043c \u043f\u0440\u0438\u043c\u0435\u0440\u044b \u0434\u043b\u044f <strong>Debian\/Ubuntu (apt\u2011mirror)<\/strong>, <strong>RHEL\/CentOS (reposync)<\/strong> \u0438 <strong>FreeBSD (pkg fetch + \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u044b\u0439 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0439)<\/strong>.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\ud83d\udc27 Debian\/Ubuntu \u2014 apt\u2011mirror<\/h2>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u0438 \u0443\u0442\u0438\u043b\u0438\u0442\u0443:<\/li>\n<\/ol>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo apt-get install apt-mirror<\/code><\/pre>\n\n\n\n<ol start=\"2\" class=\"wp-block-list\">\n<li>\u041d\u0430\u0441\u0442\u0440\u043e\u0439 \u043a\u043e\u043d\u0444\u0438\u0433 <code>\/etc\/apt\/mirror.list<\/code>:<\/li>\n<\/ol>\n\n\n\n<pre class=\"wp-block-code\"><code>set base_path    \/srv\/mirror\nset nthreads     20\nset _tilde 0\n\ndeb http:\/\/archive.ubuntu.com\/ubuntu focal main restricted universe multiverse\ndeb http:\/\/archive.ubuntu.com\/ubuntu focal-updates main restricted universe multiverse\ndeb http:\/\/archive.ubuntu.com\/ubuntu focal-security main restricted universe multiverse<\/code><\/pre>\n\n\n\n<ol start=\"3\" class=\"wp-block-list\">\n<li>\u0417\u0430\u043f\u0443\u0441\u043a \u0437\u0435\u0440\u043a\u0430\u043b\u0430:<\/li>\n<\/ol>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo apt-mirror<\/code><\/pre>\n\n\n\n<ol start=\"4\" class=\"wp-block-list\">\n<li>\u0414\u043b\u044f \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u044f \u043f\u043e \u0440\u0430\u0441\u043f\u0438\u0441\u0430\u043d\u0438\u044e \u0434\u043e\u0431\u0430\u0432\u044c \u0432 <code>cron<\/code>:<\/li>\n<\/ol>\n\n\n\n<pre class=\"wp-block-code\"><code>0 3 * * * \/usr\/bin\/apt-mirror &gt; \/var\/log\/apt-mirror.log<\/code><\/pre>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\ud83d\udc27 RHEL\/CentOS \u2014 reposync<\/h2>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u0423\u0441\u0442\u0430\u043d\u043e\u0432\u0438 <code>yum-utils<\/code>:<\/li>\n<\/ol>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo yum install yum-utils createrepo<\/code><\/pre>\n\n\n\n<ol start=\"2\" class=\"wp-block-list\">\n<li>\u0421\u043a\u0430\u0447\u0438\u0432\u0430\u043d\u0438\u0435 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u044f:<\/li>\n<\/ol>\n\n\n\n<pre class=\"wp-block-code\"><code>reposync -p \/srv\/mirror\/baseos --repoid=baseos --download-metadata\nreposync -p \/srv\/mirror\/appstream --repoid=appstream --download-metadata<\/code><\/pre>\n\n\n\n<ol start=\"3\" class=\"wp-block-list\">\n<li>\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u044f:<\/li>\n<\/ol>\n\n\n\n<pre class=\"wp-block-code\"><code>createrepo \/srv\/mirror\/baseos\ncreaterepo \/srv\/mirror\/appstream<\/code><\/pre>\n\n\n\n<ol start=\"4\" class=\"wp-block-list\">\n<li>\u0414\u043e\u0431\u0430\u0432\u044c \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u044b\u0439 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0439 \u0432 <code>\/etc\/yum.repos.d\/local.repo<\/code>:<\/li>\n<\/ol>\n\n\n\n<pre class=\"wp-block-code\"><code>&#91;local-baseos]\nname=Local BaseOS\nbaseurl=file:\/\/\/srv\/mirror\/baseos\nenabled=1\ngpgcheck=0\n\n&#91;local-appstream]\nname=Local AppStream\nbaseurl=file:\/\/\/srv\/mirror\/appstream\nenabled=1\ngpgcheck=0<\/code><\/pre>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\ud83d\udc1a FreeBSD \u2014 pkg fetch + \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u044b\u0439 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0439<\/h2>\n\n\n\n<ol class=\"wp-block-list\">\n<li>\u0421\u043a\u0430\u0447\u0430\u0439 \u0431\u0438\u043d\u0430\u0440\u043d\u044b\u0435 \u043f\u0430\u043a\u0435\u0442\u044b:<\/li>\n<\/ol>\n\n\n\n<pre class=\"wp-block-code\"><code>mkdir -p \/srv\/mirror\/freebsd-packages\npkg fetch -d -o \/srv\/mirror\/freebsd-packages -r FreeBSD bash vim nano tmux htop samba postfix dovecot openvpn wireguard qemu<\/code><\/pre>\n\n\n\n<ol start=\"2\" class=\"wp-block-list\">\n<li>\u0421\u043e\u0437\u0434\u0430\u0439 \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u044b\u0439 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0439:<\/li>\n<\/ol>\n\n\n\n<pre class=\"wp-block-code\"><code>pkg repo \/srv\/mirror\/freebsd-packages<\/code><\/pre>\n\n\n\n<ol start=\"3\" class=\"wp-block-list\">\n<li>\u041d\u0430\u0441\u0442\u0440\u043e\u0439 <code>\/usr\/local\/etc\/pkg\/repos\/local.conf<\/code>:<\/li>\n<\/ol>\n\n\n\n<pre class=\"wp-block-code\"><code>local: {\n  url: \"file:\/\/\/srv\/mirror\/freebsd-packages\",\n  enabled: yes\n}<\/code><\/pre>\n\n\n\n<ol start=\"4\" class=\"wp-block-list\">\n<li>\u0414\u043b\u044f Ports Tree:<\/li>\n<\/ol>\n\n\n\n<pre class=\"wp-block-code\"><code>portsnap fetch extract\nportsnap fetch update<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">(\u0441\u043e\u0445\u0440\u0430\u043d\u0438 <code>\/usr\/ports<\/code> \u043d\u0430 NAS).<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\ud83d\udd04 \u0410\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0430\u0446\u0438\u044f<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0412 Linux: \u0441\u043a\u0440\u0438\u043f\u0442 \u0441 <code>apt-mirror<\/code> \u0438\u043b\u0438 <code>reposync<\/code> + cron \u0434\u043b\u044f \u043d\u043e\u0447\u043d\u043e\u0433\u043e \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u044f.<\/li>\n\n\n\n<li>\u0412 FreeBSD: <code>pkg fetch<\/code> + <code>portsnap<\/code> \u0432 cron.<\/li>\n\n\n\n<li>\u0412\u0441\u0435 \u0437\u0435\u0440\u043a\u0430\u043b\u0430 \u0434\u0435\u0440\u0436\u0430\u0442\u044c \u043d\u0430 NAS \u0438 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0430\u0442\u044c \u043a\u0430\u043a \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u044b\u0435 \u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0438.<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<p class=\"wp-block-paragraph\">\u0422\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c \u0442\u0432\u043e\u0439 NAS \u0431\u0443\u0434\u0435\u0442 \u043f\u043e\u043b\u043d\u043e\u0441\u0442\u044c\u044e \u0430\u0432\u0442\u043e\u043d\u043e\u043c\u043d\u044b\u043c: \u043c\u043e\u0436\u043d\u043e \u0441\u0442\u0430\u0432\u0438\u0442\u044c \u043f\u0430\u043a\u0435\u0442\u044b \u0438 \u043e\u0431\u043d\u043e\u0432\u043b\u044f\u0442\u044c \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u0431\u0435\u0437 \u0432\u044b\u0445\u043e\u0434\u0430 \u0432 \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">\u0415\u0434\u0438\u043d\u044b\u0439 bash\u2011\u0441\u043a\u0440\u0438\u043f\u0442, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0431\u0443\u0434\u0435\u0442 \u0437\u0435\u0440\u043a\u0430\u043b\u0438\u0442\u044c \u0441\u0440\u0430\u0437\u0443 Debian, CentOS \u0438 FreeBSD \u0432 \u0440\u0430\u0437\u043d\u044b\u0435 \u043a\u0430\u0442\u0430\u043b\u043e\u0433\u0438 \u043d\u0430 NAS \u0438 \u043e\u0431\u043d\u043e\u0432\u043b\u044f\u0442\u044c \u0438\u0445 \u043f\u043e cron<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0412\u043e\u0442 \u043f\u0440\u0438\u043c\u0435\u0440 <strong>\u0435\u0434\u0438\u043d\u043e\u0433\u043e bash\u2011\u0441\u043a\u0440\u0438\u043f\u0442\u0430<\/strong>, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u0437\u0435\u0440\u043a\u0430\u043b\u0438\u0442 \u0441\u0440\u0430\u0437\u0443 \u0442\u0440\u0438 \u0441\u0438\u0441\u0442\u0435\u043c\u044b \u2014 Debian\/Ubuntu (apt\u2011mirror), CentOS\/RHEL (reposync), \u0438 FreeBSD (pkg fetch + portsnap). \u0421\u043a\u0440\u0438\u043f\u0442 \u0440\u0430\u0441\u0441\u0447\u0438\u0442\u0430\u043d \u043d\u0430 \u0437\u0430\u043f\u0443\u0441\u043a \u043f\u043e cron \u0438 \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435 \u0437\u0435\u0440\u043a\u0430\u043b \u0432 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0445 \u043a\u0430\u0442\u0430\u043b\u043e\u0433\u0430\u0445 \u043d\u0430 NAS.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>#!\/bin\/bash\n# Unified mirror script for Debian, CentOS, FreeBSD\n# Author: Alex setup\n\n# === \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u043a\u0430\u0442\u0430\u043b\u043e\u0433\u043e\u0432 NAS ===\nNAS_BASE=\"\/srv\/nas-mirror\"\nDEBIAN_DIR=\"$NAS_BASE\/debian\"\nCENTOS_DIR=\"$NAS_BASE\/centos\"\nFREEBSD_DIR=\"$NAS_BASE\/freebsd\"\n\n# === Debian\/Ubuntu mirror ===\nmirror_debian() {\n    echo \"&#91;*] Mirroring Debian\/Ubuntu...\"\n    mkdir -p \"$DEBIAN_DIR\"\n    cat &gt; \/etc\/apt\/mirror.list &lt;&lt;EOF\nset base_path    $DEBIAN_DIR\nset nthreads     20\nset _tilde 0\n\ndeb http:\/\/archive.ubuntu.com\/ubuntu focal main restricted universe multiverse\ndeb http:\/\/archive.ubuntu.com\/ubuntu focal-updates main restricted universe multiverse\ndeb http:\/\/archive.ubuntu.com\/ubuntu focal-security main restricted universe multiverse\nEOF\n    apt-mirror\n}\n\n# === CentOS\/RHEL mirror ===\nmirror_centos() {\n    echo \"&#91;*] Mirroring CentOS\/RHEL...\"\n    mkdir -p \"$CENTOS_DIR\"\n    reposync -p \"$CENTOS_DIR\/baseos\" --repoid=baseos --download-metadata\n    reposync -p \"$CENTOS_DIR\/appstream\" --repoid=appstream --download-metadata\n    createrepo \"$CENTOS_DIR\/baseos\"\n    createrepo \"$CENTOS_DIR\/appstream\"\n}\n\n# === FreeBSD mirror ===\nmirror_freebsd() {\n    echo \"&#91;*] Mirroring FreeBSD packages...\"\n    mkdir -p \"$FREEBSD_DIR\/packages\"\n    pkg fetch -d -o \"$FREEBSD_DIR\/packages\" -r FreeBSD bash vim nano tmux htop samba postfix dovecot openvpn wireguard qemu\n    pkg repo \"$FREEBSD_DIR\/packages\"\n\n    echo \"&#91;*] Updating FreeBSD Ports Tree...\"\n    mkdir -p \"$FREEBSD_DIR\/ports\"\n    portsnap -d \"$FREEBSD_DIR\/ports\" fetch update\n}\n\n# === \u0417\u0430\u043f\u0443\u0441\u043a \u0432\u0441\u0435\u0445 \u0437\u0435\u0440\u043a\u0430\u043b ===\nmirror_debian\nmirror_centos\nmirror_freebsd\n\necho \"&#91;*] Mirror update completed at $(date)\"<\/code><\/pre>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\ud83d\udccc \u041d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 cron<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">\u0414\u043e\u0431\u0430\u0432\u044c \u0437\u0430\u0434\u0430\u0447\u0443 \u0432 <code>crontab<\/code> (\u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0435 \u043a\u0430\u0436\u0434\u0443\u044e \u043d\u043e\u0447\u044c \u0432 3:00):<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>0 3 * * * \/usr\/local\/bin\/mirror_all.sh &gt;&gt; \/var\/log\/mirror.log 2&gt;&amp;1<\/code><\/pre>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">\ud83d\udd11 \u041f\u0440\u0438\u043c\u0435\u0447\u0430\u043d\u0438\u044f<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>\u0421\u043a\u0440\u0438\u043f\u0442 \u043f\u0440\u0435\u0434\u043f\u043e\u043b\u0430\u0433\u0430\u0435\u0442, \u0447\u0442\u043e \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u044b \u043f\u0430\u043a\u0435\u0442\u044b: <code>apt-mirror<\/code>, <code>yum-utils<\/code>, <code>createrepo<\/code>, <code>pkg<\/code>, <code>portsnap<\/code>.<\/li>\n\n\n\n<li>\u041a\u0430\u0442\u0430\u043b\u043e\u0433\u0438 NAS (<code>\/srv\/nas-mirror<\/code>) \u043c\u043e\u0436\u043d\u043e \u0437\u0430\u043c\u0435\u043d\u0438\u0442\u044c \u043d\u0430 \u0441\u0432\u043e\u0438 \u043f\u0443\u0442\u0438.<\/li>\n\n\n\n<li>\u0414\u043b\u044f FreeBSD \u043b\u0443\u0447\u0448\u0435 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0442\u044c \u0441\u043a\u0440\u0438\u043f\u0442 \u043d\u0435\u043f\u043e\u0441\u0440\u0435\u0434\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u043d\u0430 FreeBSD\u2011\u0445\u043e\u0441\u0442\u0435, \u0430 Debian\/CentOS \u2014 \u043d\u0430 Linux\u2011\u0445\u043e\u0441\u0442\u0435. \u0415\u0441\u043b\u0438 NAS \u043e\u0431\u0449\u0438\u0439, \u043c\u043e\u0436\u043d\u043e \u0441\u0438\u043d\u0445\u0440\u043e\u043d\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0447\u0435\u0440\u0435\u0437 <code>rsync<\/code>.<\/li>\n\n\n\n<li>\u041b\u043e\u0433\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0432\u0435\u0434\u0451\u0442\u0441\u044f \u0432 <code>\/var\/log\/mirror.log<\/code>.<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<p class=\"wp-block-paragraph\">\u041c\u043e\u0436\u043d\u043e, \u043e\u043f\u0442\u0438\u043c\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u044d\u0442\u043e\u0442 \u0441\u043a\u0440\u0438\u043f\u0442 \u0442\u0430\u043a, \u0447\u0442\u043e\u0431\u044b \u043e\u043d <strong>\u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u043b \u043d\u0430\u043b\u0438\u0447\u0438\u0435 \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u0430<\/strong> \u0438 \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u043b \u0437\u0435\u0440\u043a\u0430\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u043f\u0440\u0438 \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u043e\u0441\u0442\u0438 \u0441\u0435\u0442\u0438.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u041f\u043e\u043b\u043d\u043e\u0435 \u0440\u0443\u043a\u043e\u0432\u043e\u0434\u0441\u0442\u0432\u043e \u043f\u043e \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044e \u0430\u0432\u0442\u043e\u043d\u043e\u043c\u043d\u043e\u0433\u043e NAS \u043e\u0431\u044a\u0451\u043c\u043e\u043c 30 \u0422\u0411: \u043e\u0444\u043b\u0430\u0439\u043d-\u0440\u0435\u043f\u043e\u0437\u0438\u0442\u043e\u0440\u0438\u0438 Linux \u0438 FreeBSD, \u0437\u0435\u0440\u043a\u0430\u043b\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435 \u043f\u0430\u043a\u0435\u0442\u043e\u0432, \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430 \u0441\u0435\u0440\u0432\u0438\u0441\u043e\u0432 (Samba, Postfix, Dovecot, OpenVPN, WireGuard), \u0445\u0440\u0430\u043d\u0435\u043d\u0438\u0435 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u0438, \u044d\u043d\u0446\u0438\u043a\u043b\u043e\u043f\u0435\u0434\u0438\u0439, \u043c\u0443\u043b\u044c\u0442\u0438\u043c\u0435\u0434\u0438\u0430 \u0438 \u043a\u0430\u0440\u0442. \u041f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u0441\u043a\u0440\u0438\u043f\u0442\u044b \u0434\u043b\u044f \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0430\u0446\u0438\u0438 \u043e\u0431\u043d\u043e\u0432\u043b\u0435\u043d\u0438\u0439 \u0438 \u043f\u043e\u0434\u0434\u0435\u0440\u0436\u0430\u043d\u0438\u044f \u043b\u043e\u043a\u0430\u043b\u044c\u043d\u043e\u0433\u043e \u0445\u0440\u0430\u043d\u0438\u043b\u0438\u0449\u0430 \u0431\u0435\u0437 \u0434\u043e\u0441\u0442\u0443\u043f\u0430 \u043a \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u0443.<\/p>\n","protected":false},"author":1,"featured_media":1895,"comment_status":"open","ping_status":"","sticky":false,"template":"","format":"standard","meta":{"_bbp_topic_count":0,"_bbp_reply_count":0,"_bbp_total_topic_count":0,"_bbp_total_reply_count":0,"_bbp_voice_count":0,"_bbp_anonymous_reply_count":0,"_bbp_topic_count_hidden":0,"_bbp_reply_count_hidden":0,"_bbp_forum_subforum_count":0,"footnotes":""},"categories":[33],"tags":[266,248,261,262,213,254,163,256,260,13,244,71,255,249,258,247,253,70,246,252,263,257,250,77,264,251,265,259,245],"class_list":["post-1892","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-33","tag-30-","tag-apt-mirror","tag-archwiki","tag-centos","tag-debian","tag-dovecot","tag-freebsd","tag-jellyfin","tag-kiwix","tag-linux","tag-nas","tag-nextcloud","tag-openvpn","tag-pkg-fetch","tag-plex","tag-portsnap","tag-postfix","tag-proxmox","tag-reposync","tag-samba","tag-ubuntu","tag-wireguard","tag-250","tag-77","tag-264","tag-251","tag-265","tag-259","tag-245"],"_links":{"self":[{"href":"https:\/\/alexisiumus.ru\/index.php?rest_route=\/wp\/v2\/posts\/1892","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/alexisiumus.ru\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/alexisiumus.ru\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/alexisiumus.ru\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/alexisiumus.ru\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1892"}],"version-history":[{"count":4,"href":"https:\/\/alexisiumus.ru\/index.php?rest_route=\/wp\/v2\/posts\/1892\/revisions"}],"predecessor-version":[{"id":1897,"href":"https:\/\/alexisiumus.ru\/index.php?rest_route=\/wp\/v2\/posts\/1892\/revisions\/1897"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/alexisiumus.ru\/index.php?rest_route=\/wp\/v2\/media\/1895"}],"wp:attachment":[{"href":"https:\/\/alexisiumus.ru\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1892"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/alexisiumus.ru\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1892"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/alexisiumus.ru\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1892"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}