Debian stretch: Debian — Debian “stretch” Release Information

Установка Proxmox VE на Debian Stretch используя Ansible / Хабр

Являясь большим фанатом данной системы виртуализации, решил поделиться несколько иным способом установки.

Если кратко, то Proxmox это система виртуализации на KVM, которая ещё умеет управляться с контейнерами LXC. Также имеется возможность кластеризации(для некоммерческой версии ограничение около 8 нод). Умеет работать с Ceph, ZFS. Если подробно, то советую почитать вики или посмотреть ютуб.

Варианты установки


Дело в том, что ProxmoxVE можно установить при помощи образа, который предоставляется на скачивание, но тогда вам вряд ли будут доступны варинты разбивки с использованием soft-raid для Linux и прочие извращения(если что-то некритичное по производительности — почему нет?). Отдельное спасибо товарищу @merlin_vrn за знакомство с Proxmox, и Alex Filimonov за помощь с Ansible.

Существует вариант, когда вы сами ставите Debian актуальной версии именно так как вы хотите, а уже дальше устанавливаете ProxmoxVE как некую надстройку, которая вам заменяет ядро, linux-firmware, lvm, устанавливает свой репозиторий и уже отчасти перестаёт быть Debian. В этом случае у вас гораздо больше пространства для свободы(к примеру, недавно я ставил по сети Debian через liveusb Archlinux используя debootstrap).


Процедура установки Proxmox описана в вики.

Ещё один плюс Proxmox в том, что после установки вы получите отличную, а главное актульную документацию на том же веб-сервере, что и сама управлялка. Доступна документация по ссылке

https://ip_or_domain/pve-docs/pve-admin-guide.html


Сначала я думал написать статью с использованием Preseed, который бы использовался для изначальной установки Debian, но поразмыслив я понял, что вариантов установки может быть огромная масса и установить Debian уж всем по силам. Итак, полагаем, что сам Debian Stretch(stable на данный момент) у вас уже установлен, сеть настроена статикой, работает sshd и вы уже прокинули ключ через ssh-copy-id. Так же, представим, что у вас уже есть некий опыт работы с Ansible.

Использование Ansible


В Ansible имеется ansible-galaxy, в котором достаточно просто найти уже готовые роли под ваши нужны, или же просто почитать как и что пишут другие люди. В Ansible-galaxy можно выполнять вход через github-аккаунт и далее уже шарить определённые репозитории. Подробнее о том, как это делать написано тут.

Я создал роль и пошарил её в ansible-galaxy. Теперь мы её можем легко установить, используя команду:

ansible-galaxy install tenhishadow.pve_on_debian


Соответственно теперь мы можем пользоваться этой ролью:

# ls -l /etc/ansible/roles/tenhishadow.pve_on_debian/
итого 68
drwxr-xr-x. 2 root root  4096 ноя 16 22:46 defaults
drwxr-xr-x. 2 root root  4096 ноя 16 22:46 handlers
-rw-rw-r--. 1 root root 35147 ноя 16 22:45 LICENSE
drwxr-xr-x. 2 root root  4096 ноя 16 22:46 meta
-rw-rw-r--. 1 root root  1916 ноя 16 22:45 README.md
drwxr-xr-x. 2 root root  4096 ноя 16 22:46 tasks
drwxr-xr-x. 2 root root  4096 ноя 16 22:46 templates
drwxr-xr-x. 2 root root  4096 ноя 16 22:46 tests
drwxr-xr-x. 2 root root  4096 ноя 16 22:46 vars


Создадим файл hosts для Ansible, который будет нашим Inventory:

[proxmox_target]
192. 168.102.51


Теперь можем запускать:

# ansible-playbook -i hosts testplaybook.yml 


Результат:

PLAY [proxmox_target] *
TASK [Gathering Facts] *
ok: [192.168.102.51]
TASK [tenhishadow.pve_on_debian : set hostname for the system] *
changed: [192.168.102.51]
TASK [tenhishadow.pve_on_debian : modify /etc/hosts] *
changed: [192.168.102.51]
TASK [tenhishadow.pve_on_debian : check standart repos] *
changed: [192.168.102.51] => (item=deb http://security.debian.org/ stretch/updates main contrib non-free)
changed: [192.168.102.51] => (item=deb-src http://security.debian.org/ stretch/updates main contrib non-free)
changed: [192.168.102.51] => (item=deb http://mirror.yandex.ru/debian/ stretch main contrib non-free)
changed: [192.168.102.51] => (item=deb-src http://mirror.yandex.ru/debian/ stretch main contrib non-free)
changed: [192.168.102.51] => (item=deb http://mirror.yandex.ru/debian/ stretch-updates main contrib non-free)
changed: [192. 168.102.51] => (item=deb-src http://mirror.yandex.ru/debian/ stretch-updates main contrib non-free)
TASK [tenhishadow.pve_on_debian : add pve repository key] *
changed: [192.168.102.51]
TASK [tenhishadow.pve_on_debian : add pve-no-subscription repo] *
changed: [192.168.102.51]
TASK [tenhishadow.pve_on_debian : update system] *
changed: [192.168.102.51]
TASK [tenhishadow.pve_on_debian : install proxmox packages] *
changed: [192.168.102.51] => (item=[u'proxmox-ve', u'postfix', u'bridge-utils'])
TASK [tenhishadow.pve_on_debian : remove os prober to prevent injuring VMs] *
changed: [192.168.102.51] => (item=[u'os-prober'])
TASK [tenhishadow.pve_on_debian : search for standard kernels] *
changed: [192.168.102.51]
TASK [tenhishadow.pve_on_debian : remove standart kernels] *
changed: [192.168.102.51] => (item=[u'linux-image-4.9.0-4-amd64', u'linux-image-amd64'])
TASK [tenhishadow.pve_on_debian : configure network from template] *
changed: [192.168.102.51]
TASK [tenhishadow.pve_on_debian : rebooting the server] *
changed: [192. 168.102.51]
TASK [tenhishadow.pve_on_debian : waiting for server to come back] *
k: [192.168.102.51 -> localhost]
TASK [tenhishadow.pve_on_debian : remove enterprise repo] *
changed: [192.168.102.51]
TASK [tenhishadow.pve_on_debian : install several packages] *
changed: [192.168.102.51] => (item=chrony)
changed: [192.168.102.51] => (item=htop)
ok: [192.168.102.51] => (item=telnet)
changed: [192.168.102.51] => (item=nmap)
changed: [192.168.102.51] => (item=screen)
changed: [192.168.102.51] => (item=tcpdump)
changed: [192.168.102.51] => (item=iptraf)
changed: [192.168.102.51] => (item=sudo)
ok: [192.168.102.51] => (item=bridge-utils)
TASK [tenhishadow.pve_on_debian : set timezone] *
changed: [192.168.102.51]
TASK [tenhishadow.pve_on_debian : generate locales] *
ok: [192.168.102.51] => (item=en_US.UTF-8)
changed: [192.168.102.51] => (item=ru_RU.UTF-8)
TASK [tenhishadow.pve_on_debian : configure chrony] *
changed: [192.168.102.51]
TASK [tenhishadow.pve_on_debian : start and enable chrony] *
ok: [192. 168.102.51]
TASK [tenhishadow.pve_on_debian : configure journald] *
changed: [192.168.102.51]
RUNNING HANDLER [tenhishadow.pve_on_debian : restart networking] *
changed: [192.168.102.51]
RUNNING HANDLER [tenhishadow.pve_on_debian : restart chrony] *
changed: [192.168.102.51]
RUNNING HANDLER [tenhishadow.pve_on_debian : restart journald] *
changed: [192.168.102.51]
PLAY RECAP *
192.168.102.51             : ok=24   changed=21   unreachable=0    failed=0


Если кратенько, то плейбук делает всё тоже самое, что описано в вики, но не ставит openiscsi(он много ошибок пишет, если не настроен). + конфигурирует сеть, используя bridge-utils(для старта хватит, вы можете легко переопределить на openvswitch, если надо). Так же удаляются стандартные ядра и ребутается сервер.

Из интересного меня немного застопорило то, как удалить старые ядра и перезагрузить сервер, но покопавшись в документации dpkg и Ansible я нашёл выход:

- name: search for standard kernels
  shell: "$( which dpkg ) --get-selections linux-image* | $( which grep ) -i install | $(which awk) '{print $1}'"
  args:
    executable: /bin/bash
  register: standart_kernels_installed
- name: remove standart kernels
  apt:
    name: "{{ item }}"
    state: absent
  with_items: "{{ standart_kernels_installed. stdout_lines|default([]) }}"
- name: rebooting the server
  shell: nohup bash -c "sleep 2s && reboot" &
  async: 0
  poll: 0
  ignore_errors: yes
  register: reboot
  tags: reboot
- name: waiting for server to come back
  local_action: wait_for host={{ proxmox_ip }} state=started
  when: reboot.changed
  async: 2400
  poll: 10
  tags: reboot


В удалении текущего ядра нет ничего криминального (хотя будет выдано предупреждение, если вы делаете это локально), так как Proxmox предоставляет своё ядро и заменяет достаточно много стандартных программ на программы из своего репозитория.

Где-то в середине плейбука target-хост будет перезагружен, Ansible дождётся (будет ждать 2400 секунд, проверяя каждые 10 доступность) когда нода опять будет жива, и потом сконфигурирует journald и chrony. Далее установит пару утилит и на этом всё, вас будет ждать готовый Proxmox.

Работа с пакетами [Мозаика системного администрирования]

Содержание

  • Debian: Работа с пакетами

  • Репозитории

    • Debian Backports

    • deb-multimedia

      • Установка

  • Добавление поддержки архитектуры i386

  • Управление пакетами из консоли

  • Графический интерфейс

  • Настройка apt

  • Ссылки на источники обновлений

    • wheezy

    • jessie

    • stretch

    • buster

    • Список URL

  • Обновление списка пакетов

  • Обновление ключей

  • Обновление пакетов

  • Список пакетов, которые могут быть обновлены

  • Обновление всех установленных пакетов

  • Обновление списка пакетов и самих пакетов

  • Установка пакета

  • Установка пакета из определённого репозитория

  • Удаление пакета

  • Удаление не используемых старых пакетов

  • Удаление кеша всех пакетов

  • Версия пакета

  • Перенастроить заново уже установленный пакет

  • Список всех установленных пакетов

  • Поиск пакета

  • Добавление репозитория

  • Создание локального репозитория

  • Проблемы

    • Проблема с обновлением jessie 2019-03

  • Работа через dpkg

    • Установка пакета

    • Удаление пакета

  • Установка пакетов из unstable

  • Удаление старых ядер

  • APT Preferences

  • Ссылки

https://wiki. debian.org/ru/UnofficialRepositories

Debian Backports

https://wiki.debian.org/ru/Backports

deb-multimedia

Нужно использовать с осторожностью, т.к. зависимости многих пакетов конфликтуют по версиям с пакетами из основного репозитория.

https://deb-multimedia.org/

https://wiki.debian.org/DebianMultimedia

Установка

1. Нужно добавить репозиторий в /etc/apt/sources.list, подробности: deb-multimedia

etc/apt/sources.list.d/deb-multimedia.list
#
deb http://www.deb-multimedia.org stable main non-free
deb http://www.deb-multimedia.org stable-backports main

2. Обновить список пакетов:

apt-get -u update
apt-get install deb-multimedia-keyring
dpkg --add-architecture i386 && apt update

aptitude

Управление репозиториямиpython-software-properties
Управление пакетамиSynaptic
Установки пакетов из файловGDebi

Файл: /etc/apt/apt. conf

APT::Get::Show-Upgraded "true";
Для того, чтобы всегда перечислять обновляемые пакеты и запрашивать подтверждение у пользователя
Acquire::http::Proxy "http://proxy:3128";
Работа через прокси

Локальная документация: /usr/share/doc/Debian/apt-howto

Основной файл: /etc/apt/sourcs.list

Области:

wheezy

wheezy

wheezy

sourcs.list
# 
deb http://mirror.mephi.ru/debian wheezy-backports main contrib non-free
deb-src http://mirror.mephi.ru/debian wheezy-backports main contrib non-free
 
deb http://ftp.ru.debian.org/debian/ wheezy main contrib non-free
deb-src http://ftp.ru.debian.org/debian/ wheezy main contrib non-free
 
deb http://security.debian.org/ wheezy/updates main contrib non-free
deb-src http://security.debian.org/ wheezy/updates main contrib non-free
 
deb http://ftp.ru.debian.org/debian/ wheezy-updates main contrib non-free
deb-src http://ftp. ru.debian.org/debian/ wheezy-updates main contrib non-free

31 мая 2018 перекрещена поддержка Debian Wheezy, поэтому необходимо изменить адреса серверов обновлений:

sourcs.list
deb http://archive.debian.org/debian/ wheezy main
deb-src http://archive.debian.org/debian/ wheezy main
#deb http://security.debian.org/ wheezy/updates main contrib
#deb-src http://security.debian.org/ wheezy/updates main contrib

и выполнить обновление списка пакетов командой:

apt-get -u update

Debian прекратили поддержку Debian 7 Wheezy | Web hosting software

jessie

jessie

jessie

sources.list
# 
deb http://ftp.ru.debian.org/debian/ jessie main contrib non-free
deb-src http://ftp.ru.debian.org/debian/ jessie main contrib non-free
 
deb http://security.debian.org/ jessie/updates main contrib non-free
deb-src http://security.debian.org/ jessie/updates main contrib non-free
 
deb http://ftp. ru.debian.org/debian/ jessie-proposed-updates main contrib non-free
deb-src http://ftp.ru.debian.org/debian/ jessie-proposed-updates main contrib non-free
 
deb http://ftp.ru.debian.org/debian/ jessie-backports main contrib non-free
deb-src http://ftp.ru.debian.org/debian/ jessie-backports main contrib non-free

Вариант работы с архивом:

sources.list
#
deb http://archive.debian.org/debian/ jessie main
deb-src http://archive.debian.org/debian/ jessie main
deb http://security.debian.org/ jessie/updates main contrib
deb-src http://security.debian.org/ jessie/updates main contrib

stretch

stretch

stretch

sources.list
# 
deb http://ftp.ru.debian.org/debian/ stretch main contrib non-free
deb-src http://ftp.ru.debian.org/debian/ stretch main contrib non-free
 
deb http://security.debian.org/ stretch/updates main contrib non-free
deb-src http://security.debian.org/ stretch/updates main contrib non-free
 
deb http://ftp. ru.debian.org/debian/ stretch-proposed-updates main contrib non-free
deb-src http://ftp.ru.debian.org/debian/ stretch-proposed-updates main contrib non-free
 
deb http://ftp.ru.debian.org/debian/ stretch-backports main contrib non-free
deb-src http://ftp.ru.debian.org/debian/ stretch-backports main contrib non-free
 
deb http://ftp.ru.debian.org/debian/ stretch-backports-sloppy main contrib non-free
deb-src http://ftp.ru.debian.org/debian/ stretch-backports-sloppy main contrib non-free

buster

buster

buster

sources.list
# 
deb http://mirror.yandex.ru/debian buster main
deb-src http://mirror.yandex.ru/debian buster main
 
deb http://mirror.yandex.ru/debian buster-updates main
deb-src http://mirror.yandex.ru/debian buster-updates main
 
deb http://security.debian.org/ buster/updates main
deb-src http://security.debian.org/ buster/updates main
 
deb http://deb.debian.org/debian/ buster-backports main contrib non-free
deb-src http://deb. debian.org/debian/ buster-backports main contrib non-free

Список URL

Список URL, например для работы через Squid

/usr/local/etc/squid/Debian.urls
security.debian.org
security-cdn.debian.org
ftp.ru.debian.org
http.us.debian.org
us.debian.org
keys.gnupg.net
mirror.mephi.ru
cdn.debian.net
debian.nsu.ru
mirror.yandex.ru
 
downloads.sourceforge.net
downloads.sourceforge.net/corefonts
switch.dl.sourceforge.net/sourceforge/corefonts/
mesh.dl.sourceforge.net/sourceforge/corefonts/
dfn.dl.sourceforge.net/sourceforge/corefonts/
heanet.dl.sourceforge.net/sourceforge/corefonts/
jaist.dl.sourceforge.net/sourceforge/corefonts/
nchc.dl.sourceforge.net/sourceforge/corefonts/
ufpr.dl.sourceforge.net/sourceforge/corefonts/
internode.dl.sourceforge.net/sourceforge/corefonts/
voxel.dl.sourceforge.net/sourceforge/corefonts/
kent.dl.sourceforge.net/sourceforge/corefonts/
internap.dl.sourceforge.net/sourceforge/corefonts/
downloads. sourceforge.net/corefonts
dl.sourceforge.net
deb.debian.org
apt-get update
apt-get install debian-keyring debian-archive-keyring
apt-key update
apt-get -u upgrade

Команда обновляет все установленные пакеты, но не удаляет пакеты для разрешения зависимостей

apt list --upgradable
apt-get -u dist-upgrade

Обновление всех установленных пакетов с удалением или установкой пакетов по мере необходимости для разрешения всех зависимостей

apt-get update
apt-get -u upgrade
apt-get install ИМЯ_ПАКЕТА

Установка только самого пакета, без рекомендованных других пакетов:

apt-get install ИМЯ_ПАКЕТА --no-install-recommends
apt-get -t ИМЯ_РЕПОЗИТОРИЯ install ИМЯ_ПАКЕТА
apt-get remove ИМЯ_ПАКЕТА
apt-get autoclean
apt-get autoremove

Удаление всех пакетов из папки /var/cache/apt/archives

apt-get clean
apt-cache show ИМЯ_ПАКЕТА|grep Version
dpkg-reconfigure ИМЯ_ПАКЕТА

С версиями и описанием:

dpkg -l

Список только названий:

dpkg --get-selections
apt-cache search ИМЯ_ПАКЕТА

https://wiki. debian.org/ru/CreateLocalRepo

https://github.com/apt-mirror

В случае возникновения ошибки:

E: Пакет <имя пакета> нуждается в переустановке, но найти архив для
него не удалось

Нужно удалить информацию от этом пакете в файле /var/lib/dpkg/status

Проблема с обновлением jessie 2019-03

echo "Acquire::Check-Valid-Until false;" | sudo tee -a /etc/apt/apt.conf.d/10-nocheckvalid

Failed to fetch http://ftp.debian.org/debian/dists/jessie-updates/main/ 404 Not Found — Jesús Amieiro

Установка пакета

dpkg -i ИМЯ_ПАКЕТА.deb

Если в процессе установки появится ошибка, что нет необходимых пакетов, то запускаем команду:

apt-get install -f

или

apt-get --fix-broken install

или

aptitude -f install

после этого нужно выполнить установку пакета повторно.

Удаление пакета

dpkg -r ИМЯ_ПАКЕТА. deb

При установке пакетов из unstable легко сломать зависимости и вернутся обратно будет невозможно!

  1. Нужно создать файл:

    /etc/apt/sources.list.d/unstable.list
    deb http://ftp.ru.debian.org/debian unstable main contrib non-free
    deb-src http://ftp.ru.debian.org/debian unstable main contrib non-free
  2. Чтобы система не обновляла все пакеты из unstable, надо указать основную версию в файле:

    /etc/apt/apt.conf.d/99defaultrelease
    APT::Default-Release "stretch";
  3. Выполнить обновление списка пакетов и самих пакетов

Чтобы поставить пакет нужно выполнить установку с указанием репозитория unstable

Пример:

apt-get -t unstable install ИМЯ_ПАКЕТА

Debian APT Часть 2: Установка не-релизов ПО

Выборочная установка пакетов из нестабильной ветки в Debian

Удаление старых ядер в Debian и Ubuntu — Записки сисадмина

Файл /etc/apt/preferences изначально отсутствует с системе.

https://wiki.debian.org/ru/AptPreferences

linux.org.ru: Проблема после обновления на Debian9

Debian Package Tracker

Полезные репозитории для Debian

Debian Sources List Generator

Механизм «предложенных обновлений»

apt-key через прокси

Установка deb пакета со всеми зависимостями

Debian Policy Manual

Настройка репозиториев в Debian | serveradmin.ru

Debian,
Работа с пакетами Debian

debianstretch — Debian Wiki

Эта страница еще не существует. Вы можете создать новую пустую страницу или использовать один из шаблонов страниц.

Создать новую пустую страницу

Или выберите шаблон страницы для создания уже отформатированной страницы:

Перед созданием страницы проверьте, не существует ли уже подобная страница. Вот несколько существующих страниц с похожими именами:

  • BSP/Template
  • CategoryTemplate
  • DebateTemplate
  • DebianDay/Template
  • DebianDesktop/ThemeTemplate
  • DebianEeePC/Model/Template
  • DebianEvents/Template
  • DebianInstaller/ReleaseAnnounce/Template
  • DebianSecurity/MeetingTemplate
  • DebianWomen/ProfileTemplate
  • DebianWomen/Projects/MiniDebconf-Women/2014/CallForProposalsTemplate
  • DebianWomen/Template
  • DefaultTemplate
  • Derivatives/CensusTemplate
  • Derivatives/MeetingTemplate
  • DiscussionTemplate
  • FreedomBox/Manual/ApplicationTemplate
  • Games/MeetingTemplate
  • Hardware/WantedTemplate
  • HelpTemplate
  • HomepageGroupsTemplate
  • HomepagePrivatePageTemplate
  • HomepageReadPageTemplate
  • HomepageReadWritePageTemplate
  • HomepageTemplate
  • Установка DebianOn/ComputerTemplate
  • InstallingDebianOn/GenericComputerTemplate
  • Javascript/Nodejs/Tasks/Template
  • KansaiDebianMeeting/EventTemplate
  • KansaiDebianMeetingEvent/Template
  • Lintian/Tags/Template
  • LocalGroupsTemplate
  • MycomputerbrandTemplate
  • OSPP/2021/ProjectTemplate
  • OpenNebula/PreparingDebianVmTemplate
  • OutreachProgramForWomen/ApplicationTemplate
  • Outreachy/ProjectTemplate
  • Outreachy/Round10/ApplicationTemplate
  • Outreachy/Round13/ProjectTemplate
  • PagePersonnelleTemplate
  • PortTemplate
  • PortalTemplate
  • ProjectGroupsTemplate
  • ProjectTemplate
  • PublicationTemplate
  • ReleaseGoalTemplate
  • ReleasePartySuiteTemplate
  • ReleasePartyTemplate
  • ReleaseRecertificationTemplate
  • SeasonOfDocs2019/ProjectTemplate
  • ServicesCensusTemplate
  • SlideShowHandOutTemplate
  • SlideShowTemplate
  • SlideTemplate
  • SpecTemplate
  • SprintTemplate
  • Sprints/SprintTemplate
  • SummerOfCode/StudentApplicationTemplate
  • SummerOfCode2012/StudentApplicationTemplate
  • SummerOfCode2013/StudentApplicationTemplate
  • SummerOfCode2014/ProjectTemplate
  • SummerOfCode2014/StudentApplicationTemplate
  • SummerOfCode2015/ProjectTemplate
  • SummerOfCode2015 /StudentApplicationTemplate
  • SummerOfCode2016/ProjectTemplate
  • SummerOfCode2016/StudentApplicationTemplate
  • SummerOfCode2017/ProjectTemplate
  • SummerOfCode2017/StudentApplicationTemplate
  • SummerOfCode2020/ProjectTemplate
  • SummerOfCode2021/ProjectTemplate
  • SummerOfCode2022/ProjectTemplate
  • SyncJobTemplate
  • TeamTemplate
  • Teams/DebianCD/ReleaseTesting/TestMatrixTemplate
  • Teams/Publicity/MeetingTemplate
  • Ubuntucontributortemplate
  • Worksessextremaduratemplate
  • ES/DefaultTemplate
  • FR/defaultTemplate
  • FR/stallingDebianon/Compuertemplate
  • QA.
    Imacros | Все права защищены © 2021