Архив метки: Proxmox

Proxmox | Меняем размер дисков KVM гостевых систем.

Сегодня покажу как можно изменить (увеличить) размер диска ВМ Linux на KVM в Proxmox.




Первым действием увеличь размер нашей ВМ в WEB-интерфейсе Proxmox. Выбираем нашу ВМ (у меня это ВМ-108 “Kodi” с Ubuntu 20.04 на борту) переходим во вкладку Оборудование и выбираем наш диск, а далее Disk ActionResize. Смотрим как у меня на изображении:




proxmox-resize




Я увеличил диск на 5 Гб. На изображение ниже размер Жесткого диска изменился на 20G




proxmox-resize




Размер то мы изменили, а вот система еще видит диск с размером в 15G. Если в гостевой системе набрать следующую команду, то можно увидеть что / (корень системы) имеет размер в 15G




df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda2 15G 13G 1,8G 88% /




Если же набрать вот эту команду:




dmesg | grep sda




То из вывода видно что диск имеет 20.0 GiB




[    1.759165] sd 2:0:0:0: [sda] 41943040 512-byte logical blocks: (21.5 GB/20.0 GiB)




Если размер не поменялся, то необходимо перезагрузить гостевую систему.




Выведем текущую таблицу разделов




fdisk -l /dev/sda | grep ^/dev




GPT PMBR size mismatch (31457279 != 41943039) will be corrected by write.
The backup GPT table is not on the end of the device.
/dev/sda1   2048     4095     2048   1M BIOS boot
/dev/sda2   4096 31455231 31451136  15G Linux filesystem




Изменим наш размер до 20 Гб, а также исправим запись PMBR




parted /dev/sda




GNU Parted 3.4
Using /dev/sda
Welcome to GNU Parted! Type 'help' to view a list of commands.




Выводи информацию о дисках и исправляем несоответствие:




(parted) print                                                            




Warning: Not all of the space available to /dev/sda appears to be used, you can fix the GPT to use all of the space
(an extra 10485760 blocks) or continue with the current setting? 
Fix/Ignore? F




Вот вывод всех разделов диска:




Model: QEMU QEMU HARDDISK (scsi)
Disk /dev/sda: 21,5GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags: 

Number  Start   End     Size    File system  Name  Flags
 1      1049kB  2097kB  1049kB                     bios_grub
 2      2097kB  16,1GB  16,1GB  ext4




Меняем наш размер раздела sda2 (корень системы) до максимума:




(parted) resizepart 2 100%  




Warning: Partition /dev/sda2 is being used. Are you sure you want to continue?
Yes/No? Y




Далее может разметить диск до максимально размера или выдать следующее:




End?  [16,1GB]? 21,5GB                                                        
Warning: Shrinking a partition can cause data loss, are you sure you want to continue?
Yes/No? Y




Размер 21,5 GB взял из команды dmesg | grep sda




Выводим еще раз информацию о разделах диска:




(parted) print




Model: QEMU QEMU HARDDISK (scsi)
Disk /dev/sda: 21,5GB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags: 

Number  Start   End     Size    File system  Name  Flags
 1      1049kB  2097kB  1049kB                     bios_grub
 2      2097kB  21,5GB  21,5GB  ext4




Видим что размер был изменён. Можно выйти:




(parted) quit




Еще раз можете набрать следующую команду:




fdisk -l /dev/vda | grep ^/dev




fdisk: cannot open /dev/vda: No such file or directory
root@kodi:~# fdisk -l /dev/sda | grep ^/dev
/dev/sda1   2048     4095     2048   1M BIOS boot
/dev/sda2   4096 41943006 41938911  20G Linux filesystem




Видим что теперь система видит 20 Гб диска.




Вводим команду для изменения файловой системы:




resize2fs /dev/sda2



[endtxt]




. . . .




2022-10-11T00:11:46
Proxmox

Сброс пароля в ВМ на KVM | Proxmox

Сегодня научимся сбрасывать пароль пользователя в виртуальной машине на KVM расположенной в панели управления Proxmox VE.




Меняем пароль пользователя в виртуальной машине с ОС Windows.




Для смены пароль пользователя в ОС Windows воспользуемся командной строкой Proxmox. Я подключаюсь через ssh. В терминале Proxmox набираем следующую команду:




qm guest passwd <vmid> <username>




Вот как это выглядит с ВМ под номером 105 и пользователем myuser:




qm guest passwd 105 myuser

Enter new password: *****
Retype new password: *****




  • На запрос Enter new password вводим новый пароль.
  • на запрос Retype new password подтверждаем пароль еще раз.




Теперь переходим в ВМ c Windows и логинимся с новым паролем.




Меняем пароль пользователя в виртуальной машине с ОС Linux.




Для смены пароль пользователя в ВМ с Linux воспользуемся всё тем же ssh. В терминале Proxmox набираем следующую команду:




qm guest passwd 114 root

Enter new password: ******
Retype new password: ******




Для API на PHP




Для смены пароля через API на PHP необходимо передать следующий параметр.




$data = [
«username»=>’MyUser’,
«password»=>’1234567890′,
«crypted»=>false
];




Ошибка при смене пароля.




Также данные команды могут выдать следующую ошибку:




No QEMU guest agent configured




Для исправления необходимо установить quemu-guest-agent в вашу виртуальную машину. Конечно же это нужно делать до того, как вы забыли пароль от вашего пользователя.




Исправляем для Linux систем.




Перейдите в гостевую систему и в терминале наберите следующую команду:




В системах на Debian/Ubuntu выполняем следующие команды:




sudo apt install qemu-guest-agent




На системах на базе Redhat:




yum install qemu-guest-agent




Исправляем для Windows систем.




Сначала вы должны скачать драйвер virtio-win iso (см. Windows VirtIO Drivers).




Затем установите драйвер virtio-serial:




  1. Прикрепите ISO к виртуальной машине Windows (virtio-*.iso)
  2. Перейдите в Диспетчер устройств Windows
  3. Найдите «PCI Simple Communications Controller«
  4. Щелкните правой кнопкой мыши -> Обновить драйвер и выберите на смонтированном iso DRIVE:vioserial<OSVERSION> where <OSVERSION> is your Windows Version — ваша версия Windows (например, W7 для Windows 7)




После этого необходимо установить qemu-guest-agent:




  1. Перейти к смонтированному ISO в проводнике
  2. Установщик гостевого агента находится в каталоге гостевой агент
  3. Запустите установщик двойным щелчком (либо qemu-ga-x86_64.msi (64-разрядная версия), либо qemu-ga-i386.msi (32-разрядная версия)




Более подробно писал ТУТ



[endtxt]




RSS




2022-08-25T19:31:53
Proxmox

Как установить готовый образ системы в Proxmox

Сегодня в статье разберём, как можно установить готовый образ системы в Proxmox, на примере образа OpenWRT.






Так как у меня файл расширением IMG, а Proxmox VE принимает только файл ISO. То будем использовать командную строку и импортировать файл IMG в виртуальную машину из терминала Proxmox .




Шаг 1. Подготовка




Proxmox VE: вы можете скачать здесь.




Так же у вас должен быть готовый образ или можете скачать его. Вот например OpenWRT здесь (ниже будет пример, как скачать при помощи утилиты wget)




Шаг 2. Создание виртуальной машины




Войдите в свой веб-интерфейс PVE, затем нажмите “Создать VM” в правом верхнем углу.




Создать VM




Указываем вашей виртуальной машине идентификатор и имя. Если поставить галочку в “Дополнительно”, то откроется расширенное меню где мы можем указать “Запуск при загрузке”.




Идентификатор виртуальной машины, имя и запуск при загрузке




Нажимаем Далее и переходим к следующему пункту меню, где необходимо установить “Нет носителя”. Нажимаем “Далее“.




Настройки для носителя при загрузке




В следующем пункте используйте настройки по умолчанию и просто нажмите кнопку “Далее“.




Системные настройки VM




Для настроек жесткого диска укажите его какой-либо размер или просто оставляем как есть, потому что мы удалим этот виртуальный диск чуть позже. Нажимаем Далее.




Настройка диска VM




Для ядер процессора установите его в зависимости от вашего использования, обычно достаточно 2 ядра. Не забудьте изменить тип процессора на Host для лучшей производительности!




Настройки процессора VM




Что касается памяти ОЗУ, то 1024 МБ должно быть достаточно.




Настройка ОЗУ VM




В данном пункте указываем нашу сеть, либо можно оставить все по умолчанию. Нажимаем кнопку “Далее“.




Нет необходимости изменять настройки сети




В последнем пункте просто нажмите “Готово”, чтобы завершить конфигурирование вашей виртуальной машины.







Шаг 3. Импортируйте файл IMG и отредактируйте оборудование виртуальной машины




Находим нашу только что созданную ВМ. Выделяем ее и в открывшемся списке настроек нажмите “Оборудование”.




Настройка оборудования VM




Выберите “Жесткий диск”, затем нажмите “Отключить”, затем нажмите “Да” в окне подтверждения.




Отключаем жесткий диск от VM




Выберите “Неиспользуемый диск 0” и нажмите “Удалить”, чтобы удалить этот диск.




Теперь перейдем к оболочке Proxmox (можно подключиться к Proxmox через SSH) и выполним следующую команду, чтобы загрузить нашу прошивку для OpenWRT.




wget https://downloads.openwrt.org/releases/19.07.0-rc2/targets/x86/64/openwrt-19.07.0-rc2-x86-64-combined-squashfs.img.gz




После завершения загрузки используйте следующую команду, чтобы распаковать его в файл IMG.




gunzip openwrt-19.07.0-rc2-x86-64-combined-squashfs.img.gz




Затем переименуйте его в более короткое имя, чтобы в дальнейшем было проще.




mv openwrt-19.07.0-rc2-x86-64-combined-squashfs.img openwrt.img




Вы также можете загрузить файл OpenWRT локально, затем распаковать его в файл IMG, переименовать и загрузить на сервер Proxmox с помощью всё того же SSH (SCP)




Вот самый важный шаг, который заключается в импорте файла IMG в виртуальную машину. Введите следующую команду для командной оболочки: 




qm importdisk 111 openwrt.img local-lvm --format qcow2




  • 111 – это идентификатор виртуальной машины



  • openwrt.img – это файл, который мы только что загрузили.



  • local-lvm – ваше хранилище для ВМ



  • –format – устанавливаем расширение (по умолчанию raw)




Если есть необходимость, то можно следующим шагом расширим диск виртуальной машины, например на 5Gb (для корректного расширения диска у виртуальной машины не должно быть снапшотов!).




qemu-img resize /путь_до_диска +5G




Далее вернитесь на страницу аппаратного обеспечения OpenWRT виртуальной машины, вы увидите “Неиспользуемый диск 0”, проверьте его и нажмите “Изменить”




Настройка импортированного диска OpenWRT




Измените шину/устройство на SCSI, затем нажмите “Добавить”




Добавляем hdd в VM




Также поменяйте порядок загрузки и установите флажок на загрузку с нашего диска




Порядок загрузки




Меняем порядок загрузки VM




Теперь вы готовы запустить свою виртуальную машину OpenWRT!




Теперь переключитесь на консоль и получите доступ к консоли OpenWRT.




Поздравляю! Вы успешно создали виртуальную машину OpenWRT в Proxmox VE. У данной машины по умолчанию IP-адрес должен быть 192.168.1.1, если вы хотите изменить IP-адрес локальной сети, используйте следующую команду. x.x.x.x-это IP-адрес, по которому вы хотите получить доступ к веб-интерфейсу.




uci set network.lan.ipaddr='x.x.x.x'
uci commit network
/etc/init.d/network restart




Сегодня я описал, как можно импортировать образ OpenWRT.img. Таким же методом можно импортировать и любой образ, который у вас есть, в ваш Proxmox.



[endtxt]




RSS




2022-08-25T12:47:59
Proxmox

Проксирование Web-GUI интерфейса Proxmox

В этой статье рассмотрим пример проброса Web-GUI интерфейса Proxmox в интернет.




Но сперва предисловие:




Дома имеется локальная сеть из нескольких ПК. На одном из них был установлен Proxmox с IP адресом 10.5.5.10 (серый IP-адрес). Управление через Web-интерфейс происходит по порту 8006. Это стандартный порт Proxmox.




Появилось желание пробросить данный порт в интернет. Но для этого нужен “белый IP-адрес”.




В сети имеется еще ПК с двумя интерфейсами: Один смотрит в интернет – 80.80.10.10 (белый IP-адрес), второй смотрит в локальную сеть – 10.5.5.1 (серый IP-адрес). На нем же крутиться web-сервер Nginx.




Было принято решение: настроить на основном Web-сервере проксирование средствами Nginx. Доступ к Web-GUI можно выполнять, набирая в адресной строке браузера имя своего поддомена, например pve.obu4alka.ru.




Настройка конфигурационного файла для Nginx




Создаем конфигурационный файл для Nginx. Приведу пример для ОС UbuntuDebian




sudo nano /etc/nginx/site-enable/pve.conf




Заполняем его:




server {
 listen 80.80.10.10:80;
 listen 10.5.5.1:80;
 server_name pve.obu4alka.ru;
 index index.php index.html *.html;
 return 301 https://pve.obu4alka.ru;
}

server {
 listen 80.80.10.10:443;
 listen 10.5.5.1:443 ssl http2;
 server_name pve.obu4alka.ru;
 access_log /var/log/nginx/pve-access.log;
 error_log /var/log/nginx/pve-error.log;
 index index.php index.html *.html;
 ssl_certificate /etc/ssl/certs/ssl-cert-snakeoil.pem;
 ssl_certificate_key /etc/ssl/private/ssl-cert-snakeoil.key;
 location / {
     proxy_pass https://10.5.5.10:8006;
     proxy_set_header Host $host;
     proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
     proxy_set_header X-Real-IP $remote_addr;
     proxy_buffering off;
     proxy_set_header Upgrade $http_upgrade;
     proxy_set_header Connection "upgrade";
     client_max_body_size 0;
     proxy_connect_timeout  3600s;
     proxy_read_timeout  3600s;
     proxy_send_timeout  3600s;
     send_timeout  3600s;
 }
}




  • Все что выделено красным меняем на свои значения.




Сохраняем наш файл и набираем команду для nginx:




nginx -t




Должно выдать следующее:




nginx -t:/etc/nginx/sites-available# 
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful




Перезагружаем веб-сервер:




sudo /etc/init.d/nginx restart




Как настроить веб-сервер рассказывал тут.




Если сделали все правильно, то наблюдаем веб-интерфейс Proxmox по адресуpve.obu4alka.ru.



[endtxt]




RSS



Добавление RSS-ленты на главную страницу этого сайта не поддерживается, так как это может привести к зацикливанию, замедляющему работу вашего сайта. Попробуйте использовать другой блок, например блок Последние записи, для отображения записей сайта.


2022-04-12T23:25:01
Proxmox

Как пробросить диск в VM на Proxmox

В этой статье расcкажу как можно пробросить физически диск в виртуальную машину на Proxmox (Passthrough HDD/SSD).






Иногда возникает ситуация когда необходимо виртуальной машине передать весь физический накопитель. Если с USB флешками это организуется через Web-интерфейс Proxmox, то проброс таких вещей как HDD или SSD еще пока отсутствует в WebGUI. Но данную манипуляцию можно произвести через терминал.




Поиск диска в терминале Proxmox




Рассматривать установку виртуальной машины я не буду. Предположим, что у вас уже есть готовая виртуальная машина и нужный диск для проброса в данную ВМ.




Для начало нам необходимо определить какой диск мы будем пробрасывать. Для этого в терминале Proxmox набираем следующее:




lsblk




У меня вывод следующей, у вас будет немного другим, но суть от этого не поменяется.




NAME                         MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda                            8:0    0 223,5G  0 disk 
├─sda1                         8:1    0  1007K  0 part 
├─sda2                         8:2    0   512M  0 part 
└─sda3                         8:3    0   223G  0 part 
  ├─pve-swap                 253:0    0     8G  0 lvm  [SWAP]
  ├─pve-root                 253:1    0  55,8G  0 lvm  /
  ├─pve-data_tmeta           253:2    0   1,4G  0 lvm  
  │ └─pve-data-tpool         253:5    0 140,4G  0 lvm  
  └─pve-data_tdata           253:3    0 140,4G  0 lvm  
    └─pve-data-tpool         253:5    0 140,4G  0 lvm  
      ├─pve-data             253:6    0 140,4G  1 lvm  
sdb                            8:16   0 931,5G  0 disk 
└─sdb1                         8:17   0 931,5G  0 part 
  └─data-lv0                 253:4    0 931,5G  0 lvm  /mnt/lv0
sdc                            8:32   0   1,4T  0 disk 
└─sdc1                         8:33   0   1,4T  0 part 
zram0                        252:0    0  19,6G  0 disk [SWAP]




Из всего вывода выбираем тот диск который хотите пробросить. У меня это следующий диск:




sdc                            8:32   0   1,4T  0 disk 
└─sdc1                         8:33   0   1,4T  0 part 




Если диск не отображается, то его необходимо разбить и отформатировать в нужную файловую систему. Тут писал про то как это сделать.




Для проброса желательно использовать UUID диска, хотя вы можете использовать и /dev/sdX, но помните, что путь до диска может измениться при добавлении, удалении или перестановке дисков. Для определения UUID набираем:




blkid




Находим нужный диск, в моем случае это /dev/sdc1




/dev/sdc1: UUID="349b3951-2513-41c2-8d28-5700097e922c" UUID_SUB="dfdf8cad-f123-4324-af86-afd1ff49b096" BLOCK_SIZE="4096" TYPE="btrfs" PARTUUID="5330e542-01"




Далее смотрим есть ли диск в директории /by-id:




ls /dev/disk/by-id/




Если в выводе не будет нужного вам UUID, то будем использовать путь до диска. Если же нужный UUID присутствует, то обязательно используйте его.




После того как вы определили интересующий вас диск, остается ввести только одну комманду. Но сначала давайте определим идентификатор виртуальной машины, к которой вы хотите прикрепить этот диск. Откройте Proxmox WebGUI и посмотрите на список виртуальных машин. Я в примере буду использовать идентификатор 100.




Проброс HDD/SSD диска в гостевую ОС на Proxmox




Если вы используете UUID, то команда примет вид:




qm set VM-ID -virtio2 /dev/disk/by-id/DISK-ID




  • VM-ID – идентификатор ВМ.
  • DISK-ID – UUID диска.




qm set 100 -virtio2 /dev/disk/by-id/349b3951-2513-41c2-8d28-5700097e922c




Если же вы используете путь вместо UUID, то команда будет следующей:




qm set 100 -virtio2 /dev/sdc




Перейдя в Web-интерфейс Proxmox во вкладке оборудование данной ВМ должно появится новое HDD устройство:







Теперь, если ваша ОС уже знает о драйвере VirtIO, то все готово! Если нет продолжайте читать… Я объясню, как установить драйвер.




Драйвер VirtIO для Windows ВМ




Установка драйвера VirtIO довольно проста.




  1. Вам нужно будет перейти по этой ссылке и загрузить VirtIO ISO. Прокрутите вниз до прямой загрузки и выберите Stable virtio-win iso.
  2. Загрузите этот ISO-файл в хранилище Proxmox ISO и смонтируйте его на компакт-диске виртуальной машины Windows.
  3. Загрузите виртуальную машину и откройте диспетчер устройств.
  4. Щелкните правой кнопкой мыши новый жесткий диск и выберите Обновить программное обеспечение драйвера.
  5. Выберите Просмотреть мой компьютер для получения программного обеспечения драйвера.
  6. Нажмите кнопку обзор, а затем перейдите в папку viostor внутри компакт-диска.
  7. Выберите свою ОС и 64/32-битную папку, а затем перейдите к следующему шагу. Он должен установить драйвер, и ваш диск должен подключиться.



[endtxt]




. . . .




2022-04-05T08:31:28
Proxmox

Сброс пароля root в контейнерах LXC | Proxmox

В этой статье представлены команды для сброса пароля root в контейнерах LXC на Proxmox.




Бывает такое, что вы забрали пароль от учётной записи root в контейнерах на Proxmox. Как же быть в этой ситуации. Если в виртуальной машине на KVM можно загрузить в single режиме и сбросить пароль от root пользователя через web морду. То с LXC контейнерами этот номер не пройдет. Также я уже писал как при помощи терминала Proxmox можно сбросить пароль администратора или root пользователя в KVM контейнерах.




Для сброса пароля от root пользователя необходимо подключиться к proxmox, например через ssh, и в командной строке ввести следующее:




pct enter <VEID>
passwd <new password>
exit




Приведу пример с виртуальной машиной под номером 105




pct enter 105




после подключения к виртуальной машине вводим:




passwd new_pass
exit




  • new_pass – ваш новый пароль




После данной манипуляции пароль от контейнера в Proxmox будет изменён на новый.




Если же Вы забыли пароль от root пользователя в самом Proxmox, то для его сброса необходимо проделать немного другие мероприятия. Вот тут я уже писал как сбросить пароль от root пользователя в системе Linux.



[endtxt]




RSS




2021-08-30T17:39:44
Proxmox