{
    "version": "https:\/\/jsonfeed.org\/version\/1.1",
    "title": "M9K blog: заметки с тегом debian",
    "_rss_description": "Заметки обо всём: devops, lifestyle, культура.",
    "_rss_language": "ru",
    "_itunes_email": "",
    "_itunes_categories_xml": "",
    "_itunes_image": "",
    "_itunes_explicit": "",
    "home_page_url": "https:\/\/blog.m9k.space\/tags\/debian\/",
    "feed_url": "https:\/\/blog.m9k.space\/tags\/debian\/json\/",
    "icon": "https:\/\/blog.m9k.space\/pictures\/userpic\/userpic@2x.jpg?1769095194",
    "authors": [
        {
            "name": "M",
            "url": "https:\/\/blog.m9k.space\/",
            "avatar": "https:\/\/blog.m9k.space\/pictures\/userpic\/userpic@2x.jpg?1769095194"
        }
    ],
    "items": [
        {
            "id": "244",
            "url": "https:\/\/blog.m9k.space\/all\/sozdanie-polzovateley-v-debian-i-astra-linux\/",
            "title": "Создание пользователей в Debian и Astra Linux",
            "content_html": "<p>Cкрипт для создания локальных пользователей с настройкой passwordless sudo.<br \/>\nОпределяет дистрибутив через \/etc\/os-release. Для Astra Linux дополнительно выполняет pdpl-user -l 0:63 -i 63.<br \/>\nПроверяет наличие утилит, не пересоздаёт существующих пользователей и не изменяет их пароли. Конфигурация sudo проверяется через visudo. Поддерживает повторный запуск.<br \/>\nЗапуск:<\/p>\n<pre class=\"e2-text-code\"><code class=\"\">.\/create-users.sh user1 user2 user3<\/code><\/pre><p><a href=\"https:\/\/egit.m9k.space\/m9k\/blog_data\/src\/branch\/main\/scripts\/Base\/debian-astra-create-passwordless-user.sh\">скрипт<\/a><\/p>\n",
            "summary": "Cкрипт для создания локальных пользователей с настройкой passwordless sudo",
            "date_published": "2026-09-23T09:51:16+07:00",
            "date_modified": "2026-09-27T21:33:31+07:00",
            "tags": [
                "Astra",
                "debian",
                "linux",
                "системное администрирование"
            ],
            "_date_published_rfc2822": "Wed, 23 Sep 2026 09:51:16 +0700",
            "_rss_guid_is_permalink": "false",
            "_rss_guid": "244",
            "_e2_data": {
                "is_favourite": false,
                "links_required": [
                    "highlight\/highlight.js",
                    "highlight\/highlight.css"
                ],
                "og_images": []
            }
        },
        {
            "id": "210",
            "url": "https:\/\/blog.m9k.space\/all\/proxmox-7-debian-12-13-lxc-template\/",
            "title": "Proxmox 7 + Debian 12|13 LXC Template",
            "content_html": "<p>У Proxmox есть неплохая обратная совместимость с более свежими версиями LXC-контейнеров по сравнению с той версией Debian, на которой основан текущий релиз. В нашем случае используется Proxmox 7 (на базе Debian 11).<\/p>\n<p>При попытке создать контейнер получаем ошибку вида:<\/p>\n<pre class=\"e2-text-code\"><code class=\"\">TASK ERROR: unable to create CT 100 - unsupported debian version &#039;1X&#039;<\/code><\/pre><p>Для обхода проблемы правим файл<br \/>\n\/usr\/share\/perl5\/PVE\/LXC\/Setup\/Debian.pm в двух местах.<\/p>\n<p>Обновляем карту версий:<\/p>\n<pre class=\"e2-text-code\"><code class=\"\">my $version_map = { &#039;stretch\/sid&#039; =&gt; 9.1, &#039;buster\/sid&#039; =&gt; 10, &#039;bullseye\/sid&#039;=&gt; 11, &#039;bookworm\/sid&#039;=&gt; 12, &#039;trixie\/sid&#039; =&gt; 13, &#039;kali-rolling&#039;=&gt; 11, };<\/code><\/pre><p>Расширяем допустимый диапазон версий:<\/p>\n<pre class=\"e2-text-code\"><code class=\"\">if !($version &gt;= 4 &amp;&amp; $version &lt;= 14);<\/code><\/pre><p>После этого перезапускаем связанные демоны:<\/p>\n<pre class=\"e2-text-code\"><code class=\"\">systemctl restart pvedaemon \nsystemctl restart pveproxy<\/code><\/pre><p>Готово, контейнер успешно создаётся.<\/p>\n<p>Разумеется, это грязный хак: при обновлениях Proxmox изменения будут перезаписаны, так что решение подходит только как временное.<\/p>\n",
            "summary": "У Proxmox есть неплохая обратная совместимость с более свежими версиями LXC-контейнеров по сравнению с той версией Debian, на которой основан текущий релиз",
            "date_published": "2026-02-07T10:27:43+07:00",
            "date_modified": "2026-02-07T10:27:32+07:00",
            "tags": [
                "debian",
                "Proxmox",
                "системное администрирование"
            ],
            "_date_published_rfc2822": "Sat, 07 Feb 2026 10:27:43 +0700",
            "_rss_guid_is_permalink": "false",
            "_rss_guid": "210",
            "_e2_data": {
                "is_favourite": false,
                "links_required": [
                    "highlight\/highlight.js",
                    "highlight\/highlight.css"
                ],
                "og_images": []
            }
        },
        {
            "id": "201",
            "url": "https:\/\/blog.m9k.space\/all\/skreschivaem-uzha-i-ezha\/",
            "title": "CouchDB, Debian, AstraLinux, Docker и все-все-все",
            "content_html": "<p>Возникла необходимость запустить Couchdb в контейнере, где базовая ось (и базовые же пакеты) должны быть очень-очень свежими, в противной случай контейнер не проходит встроенную проверку на безопасность.<br \/>\nСтандартный официальный образ собран на базе Debian 12.<\/p>\n<pre class=\"e2-text-code\"><code class=\"\">FROM debian:bookworm-slim<\/code><\/pre><p>Простая замена базового образа на<\/p>\n<pre class=\"e2-text-code\"><code class=\"\">FROM debian:trixie-slim<\/code><\/pre><p>приводит к тому, что контейнер не собирается по зависимостям.<br \/>\nСмотрим официальную репу в части зависимостей и видим прекрасное — libmozjs-78-0 (>= 78.15.0). Пробуем ставить свежую версию, которая есть в репах — не помогает, пакет couchdb принципиально требует libmozjs-78-0.<\/p>\n<p>Ок, скрещиваем ежа и ужа.<\/p>\n<p>У debian есть механизм apt-pinning. Это механизм, позволяющий задать приоритеты для версий пакетов из разных источников (репозиториев, release-веток, PPA), чтобы фиксировать версию, запрещать обновление или предпочитать конкретный источник.<\/p>\n<p>Коротко приоритеты делятся на:<\/p>\n<ul>\n<li>< 0 — никогда не устанавливать.<\/li>\n<li>1..99 — ставить только при явном указании версии.<\/li>\n<li>100 — приоритет уже установленной версии.<\/li>\n<li>500 — дефолт для неприоритетных источников.<\/li>\n<li>990 — приоритет для целевого релиза (-t), либо если явно указан release.<\/li>\n<li>>1000 — разрешает понижение версии (downgrade) к закреплённой.<\/li>\n<\/ul>\n<p>Добавляет в наш Dockerfile:<\/p>\n<pre class=\"e2-text-code\"><code class=\"\">RUN echo &quot;deb http:\/\/deb.debian.org\/debian bookworm main&quot; &gt; \/etc\/apt\/sources.list.d\/bookworm.list &amp;&amp; \\\n    echo &quot;Package: *\\nPin: release n=bookworm\\nPin-Priority: 500&quot; &gt; \/etc\/apt\/preferences.d\/bookworm &amp;&amp; \\\n    echo &quot;Package: *\\nPin: release n=trixie\\nPin-Priority: 600&quot; &gt; \/etc\/apt\/preferences.d\/trixie &amp;&amp; \\\n    echo &quot;deb [signed-by=\/usr\/share\/keyrings\/couchdb-archive-keyring.gpg] https:\/\/apache.jfrog.io\/artifactory\/couchdb-deb\/ bookworm main&quot; \\\n            &gt; \/etc\/apt\/sources.list.d\/couchdb.list &amp;&amp; \\\n    apt-get update<\/code><\/pre><p>Основная часть пакетов ставится из свежей репы, часть, которых в ней нет — из старых.<\/p>\n",
            "summary": "Возникла необходимость запустить Couchdb в контейнере, где базовая ось (и базовые же пакеты) должны быть очень-очень свежими, в противной случай контейнер не проходит встроенную проверку на безопасность",
            "date_published": "2025-08-14T17:40:09+07:00",
            "date_modified": "2025-08-14T17:40:08+07:00",
            "tags": [
                "apt-pinning",
                "astralinux",
                "couchdb",
                "debian",
                "docker",
                "linux",
                "системное администрирование"
            ],
            "_date_published_rfc2822": "Thu, 14 Aug 2025 17:40:09 +0700",
            "_rss_guid_is_permalink": "false",
            "_rss_guid": "201",
            "_e2_data": {
                "is_favourite": false,
                "links_required": [
                    "highlight\/highlight.js",
                    "highlight\/highlight.css"
                ],
                "og_images": []
            }
        }
    ],
    "_e2_version": 4199,
    "_e2_ua_string": "Aegea 11.5 (v4199)"
}