пятница, 16 августа 2024 г.

TeamViewer 15 и Ubuntu 20.04

После установки:
sudo dpkg --force-all -i teamviewer_15.55.3_amd64.deb
потребовалось ещё выполнить команду:
sudo apt --fix-broken install

среда, 17 июля 2024 г.

VirtualBox 6.1.50 + Ubuntu 22.04LTS заглючил

Сегодня при попытке запуска виртуальной машины стало выпадать окно Guru Meditation, и, соответственно, ничего не запускается. При просмотре логов обнаружилось загадочное:

00:00:00.845699 Changing the VM state from 'RUNNING' to 'GURU_MEDITATION'
00:00:00.845708 Console: Machine state changed to 'GuruMeditation'
00:00:00.847333 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
00:00:00.847334 !!
00:00:00.847334 !!         VCPU0: Guru Meditation -2708 (VERR_VMM_SET_JMP_ABORTED_RESUME)
00:00:00.847344 !!
00:00:00.847351 !! ACTIVE TRAP=0e ERRCD=10 CR2=00000000000fe05b PC=000000000000e05b Type=0 cbInstr=ff fIcebp=false (Guest!)
00:00:00.847355 !!
00:00:00.847356 !! CallRing3JmpBuf:
00:00:00.847356 !!
00:00:00.847356 SavedEsp=ffffb411040935a0 SavedEbp=ffffb411040935a8 SpResume=ffffb41104093578 SpCheck=ffffb41104093968
00:00:00.847359 pvSavedStack=ffffb41104825000 cbSavedStack=0x3f0  fInRing3Call=true 
00:00:00.847360 cbUsedMax=0x0 cbUsedAvg=0x0 cbUsedTotal=0x0 cUsedTotal=0x0
00:00:00.847361 pfn=ffffb411040f1a50 pvUser1=ffffb411045f4000 pvUser2=ffffb41104605000
00:00:00.847363 rax=volatile         rbx=ffffb41104605000 rcx=volatile         rdx=volatile
00:00:00.847363 rsi=volatile         rdi=volatile          r8=volatile          r9=volatile        
00:00:00.847363 r10=volatile         r11=volatile         r12=0000000000000000 r13=ffffb41104633c60
00:00:00.847364 r14=0000000000000000 r15=0000000000141000
00:00:00.847364 rip=ffffb411041198d1 rsp=ffffb41104093598 rbp=ffffb411040935c8 rflags=00000246
00:00:00.849350 ERROR [COM]: aRC=NS_ERROR_INVALID_ARG (0x80070057) aIID={4680b2de-8690-11e9-b83d-5719e53cf1de} aComponent={DisplayWrap} aText={Argument aWidth is invalid (must be aWidth != 0 && aWidth <= 32767)}, preserve=false aResultDetail=0

Оказалось, не я один такой "счастливчик":
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/2073267
Говорят, надо загрузиться на старом ядре:

After trying to go back to previous kernel version 5.15.0-113, all my VM worked again. So, it seems the last kernel version for 5.15 causes that.
Но как это сделать?

Помогло следующее: в начале загрузки нажать Esc, тогда высветится меню загрузчика Grub, там надо выбрать Advanced options for Ubuntu, найти ядро 5.15.0-113 и загрузиться с ним.

Правда, после этого, VirtualBox будет предлагать выполнить команду sudo modprobe vboxdrv, которая у меня выдала ошибку modprobe: FATAL: Module vboxdrv not found in directory /lib/modules/5.15.0-113-generic, но это решается переустановкой одного пакета:

sudo apt install --reinstall virtualbox-dkms

После этого виртуалка у меня, наконец, запустилась.

среда, 27 декабря 2023 г.

Ноутбук ASUS Vivobook 17X M3704YA - установка Windows 11.

Вводная такая: есть ноутбук, который продаётся без предустановленной ОС, требуется эту самую ОС на него установить.

Первая возникающая проблема непосредственно к ноутбуку отношения не имеет. Она такова: получить инсталляционную USB-флэшку с Windows 11. Можно воспользоваться MediaCreationTool.exe с официального сайта Microsoft (пункт "Создание установочного носителя Windows 11"), но запустить эту утилиту, когда вокруг линуксы - отдельный квест. Поэтому мне показалось проще взять установочный iso-образ и на его основе создать нужную флэшку.

Есть некоторое количество утилит, которое помогает в этом вопросе: Rufus (тоже виндовская, так что не подходит), UNetbootin, YUMI Multiboot USB Creator, но я самонадеянно решил, что мне хватит и обычной dd. Однако, результат выполнения команды:

dd if=Windows11.iso of=/dev/sda bs=10M status=progress oflag=sync
не порадовал: ноутбук с флэшки загрузился, но windows с неё устанавливаться отказалась с ошибкой: "Не найден необходимый драйвер носителя. Это может быть драйвер DVD-дисковода, USB-накопителя или жесткого диска. Если у вас есть компакт-диск, DVD-диск или USB-устройство флэш-памяти с этим драйвером, вставьте его". В интернете проблему предлагают решить, взяв другую флэшку, но дело оказалось не в этом.

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

1) Создаём на флэшке таблицу разделов MBR.

2) Создаём раздел размером 1Гб, форматируем его в FAT32, присваиваем метку BOOT

3) Создаём раздел размером не менее 7Гб, форматируем его в NTFS, присваиваем метку INSTALL

Я воспользовался для этих двух пунктов утилитой GParted, а потом через fdisk изменил тип первого раздела на uefi.

4) Примонтируем куда-нибудь iso-образ Windows 11, чтобы получить доступ к его содержимому:

mount Windows11.iso ~/my_iso_mountpoint
Примонтируем куда-нибудь два созданных на флэшке раздела, чтобы получить возможность на них записать нужные файлы:
mount /dev/sda1 ~/my_1_mountpoint
mount /dev/sda2 ~/my_2_mountpoint

5) Перекидываем на первый раздел флэшки всё из образа, за исключением содержимого каталога sources. В sources флэшки потребуется положить единственный файл: boot.wim.

6) Перекидываем на второй раздел флэшки всё из образа. Туда же прямо в корень кидаем папку со скачанными с сайта ASUS и распакованными драйверами на чипсет AMD.

7) Отмонтируем всё:

umount ~/my_1_mountpoint
umount ~/my_2_mountpoint
umount ~/my_iso_mountpoint
При этом приходится ждать довольно приличное время - видимо, линукс кэширует запись на флэшку, и нужно дождаться, пока он завершит операции записи.

8) Отключаем флэшку:

udisksctl power-off -b /dev/sda

В результате получается корректная установочная флэшка.

Дальше всё просто. В комментариях к этому ролику советуют в настройках ноутбука отключить Secure Boot и пользоваться разъёмом USB 2.0 - он единственный, находится слева - я так и поступил, и установка Windows прошла без нареканий.

воскресенье, 9 апреля 2023 г.

Проблема с подключением по ssh к Slackware 12.0

Проблема выглядит так:

$ ssh  huhmuh@192.168.0.13
Unable to negotiate with 192.168.0.13 port 22: no matching host key type found. Their offer: ssh-rsa,ssh-dss

Решение:

ssh  -oHostKeyAlgorithms=+ssh-dss  huhmuh@192.168.0.13

Литература:

Unable to negotiate with port 22: no matching host key type found. Their offer: ssh-dss

пятница, 1 июля 2022 г.

Debian 11 + VirtualBox 6.1.34 + Windows 10 - частые перезагрузки.

С некоторых пор стала глючить виртуальная машина с Windows 10 на моём дебиане.
Симптомы такие: в какой-то момент система начинает притормаживать, иногда появляются на ровном месте в приложениях ошибки выделения памяти, затем система зависает на пару секунд и уходит на перезагрузку.
В системном журнале windows появляются примерно такие сообщения:
Компьютер был перезагружен после критической ошибки. Код ошибки: 0x0000003b (0x00000000c0000005, 0xfffff8050ec1348a, 0xffffbf0efe7f6b10, 0x0000000000000000). Дамп памяти сохранен в: C:\Windows\MEMORY.DMP. Код отчета: 05a343cc-46a1-4a5c-b0a6-4dc93983176d.
с разными кодами ошибок. Или такие:
Система перезагрузилась, завершив работу с ошибками. Возможные причины ошибки: система перестала отвечать на запросы, произошел критический сбой или неожиданно отключилось питание.

Помогло (надеюсь, что помогло) следующее: В свойствах виртуальной машины (Machine -> Settings -> System -> Acceleration) поставить Paravirtualization Interface = None.
UPD: не помогло...

понедельник, 16 мая 2022 г.

ODBC+MSSQL ошибка "certificate verify failed:self signed certificate"

Проблема: pyodbc при подключении к SQL Server-у выдает ошибку

[08001] [Microsoft][ODBC Driver 18 for SQL Server]SSL Provider: [error:1416F086:SSL routines:tls_process_server_certificate:certificate verify failed:self signed certificate] (-1) (SQLDriverConnect)

Решение: прописать в настройках подключения (строке подключения или свойствах соответствующего подключения в файле ~/.odbc.ini) параметр:

TrustServerCertificate=yes

вторник, 29 марта 2022 г.

Debian 11 и добавление пути в $PATH

Вообще, этот $PATH кто только не модифицирует. Насколько я понял, настройка переменных среды выглядит так:

  1. выполняются скрипты /etc/environment и /etc/profile
  2. выполняются скрипты *.sh из папки /etc/profile.d/
  3. если в домашнем каталоге пользователя есть скрипты ~/.bash_profile или ~/.bash_login, выполняются они
  4. если вышеуказанных скриптов нет, выполняется ~/.profile

Но вся эта кухня бесполезна в эмуляторе терминала, если не поставить галочку "Edit -> Preferences -> Run command as login shell".