LINUX.ORG.RU

Избранные сообщения xaTa

Цикл статей «для дебилов»: в чём смысл борьбы X11 vs Wayland?

Форум — Talks

Бывает, программируешь на C++ серверные приложения под линукс, шаришь в алгоритмах и файловых системах, а про другие части линукса знаешь мало: как стартует ядро или в чём разница между убунтой и дебианом или как пиксели на экране рисуются. Вот для этого нужна серия статей для дебилов, поясняющая чо происходит в линуксе. Как работают видеодрайверы и как физически рисуются пиксели я может быть знал во времена DOS, но не теперь.

Первый вопрос в этом цикле: а нафига нужен Wayland и почему недостаточно X11? Почему разрабы Wayland просто не форкнули X11, например или не кикнули старых разрабов X11 с баркаса на мороз и не стали паханами в X11 и не сделали всё как надо? Короче нужен исторический экскурс в причины появления Wayland, смысл его существования, перспективы, проблемы и нерешаемые проблемы. В чём X11 всё ещё крут, в чём X11 уже никогда не будет крут.

Может кто-нибудь на пальцах раскидать положняк по этой теме так, чтобы любой алкаш понял?

Спасибо.

 ,

lesopilorama
()

Загрузка X11 на интегрированном GPU.

Форум — Linux-hardware

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

Section "ServerLayout"
    Identifier     "Layout0"
    Screen      0  "iGPU" 0 0
EndSection

Section "Device"
    Identifier     "iGPU"
    Driver         "modesetting"
    BusID          "PCI:0:2:0" #Проверьте BusID
EndSection

#Section "Device"
#    Identifier     "dGPU"
#    Driver         "nvidia"
#    BusID          "PCI:1:0:0" #Проверьте BusID
#EndSection

Section "Screen"
    Identifier     "iGPU"
    Device         "iGPU"
    DefaultDepth    24
    SubSection     "Display"
    Viewport        0 0
    EndSubSection
EndSection

Section "OutputClass"
    Identifier     "iGPU"
    MatchDriver    "i915"
    Driver         "modesetting"
EndSection

#Section "OutputClass"
#    Identifier     "dGPU"
#    MatchDriver    "nvidia-drm"
#    Driver         "nvidia"
#    Option         "AllowEmptyInitialConfiguration"
#    Option         "PrimaryGPU" "no"
#    ModulePath     "/usr/lib/nvidia/xorg"
#    ModulePath     "/usr/lib/xorg/modules"
#EndSection

nvidia-smi:

| Processes:                                                                            |
|  GPU   GI   CI        PID   Type   Process name                            GPU Memory |
|        ID   ID                                                             Usage      |
|=======================================================================================|
|  No running processes found                                                           |
+---------------------------------------------------------------------------------------+

Однако, отвязать nvidia я не могу, и команда sudo fuser -v /dev/nvidia0 мне показываеть что есть процесс:

/dev/nvidia0:        root        725 F.... Xorg

Вот этот процесс:

    PID TTY      STAT   TIME COMMAND
    725 tty7     Ssl+   0:54 /usr/lib/Xorg :0 -seat seat0 -auth /run/lightdm/root/:0 -n

Если смотреть логи иксов:

[     5.048] (**) OutputClass "nvidia" ModulePath extended to "/usr/lib/nvidia/xorg,/usr/lib/xorg/modules,/usr/lib/xorg/modules"
[     5.048] (--) PCI:*(0@0:2:0) 8086:a7a0:1043:304d rev 4, Mem @ 0x622e000000/16777216, 0x4000000000/268435456, I/O @ 0x00005000/64, BIOS @ 0x????????/131072
[     5.048] (--) PCI: (1@0:0:0) 10de:28a1:1043:304d rev 161, Mem @ 0x5f000000/16777216, 0x6000000000/8589934592, 0x6200000000/33554432, I/O @ 0x00004000/128, BIOS @ 0x????????/524288
[     5.048] (WW) Open ACPI failed (/var/run/acpid.socket) (No such file or directory)

Получается он загружает nvidia в любом случае? Есть вариант отвязывать/привязывать GPU без полной перезагрузки, а только перезапуском исков?

 ,

AndreyFrants
()

Не отключается дискретная Nvidia на ноутбуке

Форум — Linux-hardware

Приветствую! Есть ноут ASUS FX504GD, на нем встроенная и дискретная графика. Вывод lshw -c video:

 *-display                 
       description: 3D controller
       product: GP107M [GeForce GTX 1050 Mobile]
       vendor: NVIDIA Corporation
       physical id: 0
       bus info: pci@0000:01:00.0
       version: a1
       width: 64 bits
       clock: 33MHz
       capabilities: pm msi pciexpress bus_master cap_list rom
       configuration: driver=nvidia latency=0
       resources: irq:152 memory:a3000000-a3ffffff memory:90000000-9fffffff memory:a0000000-a1ffffff ioport:4000(size=128) memory:a4000000-a407ffff
  *-display
       description: VGA compatible controller
       product: UHD Graphics 630 (Mobile)
       vendor: Intel Corporation
       physical id: 2
       bus info: pci@0000:00:02.0
       version: 00
       width: 64 bits
       clock: 33MHz
       capabilities: pciexpress msi pm vga_controller bus_master cap_list rom
       configuration: driver=i915 latency=0
       resources: irq:127 memory:a2000000-a2ffffff memory:80000000-8fffffff ioport:5000(size=64) memory:c0000-dffff
По поводу драйверов: nouveau не завелись, отключил, поставил из репозиториев debian. nvidia-settings не запускается с ошибкой:
ERROR: Unable to find display on any available system

Пробовал компилировать с исходников(файл с официального сайта nvidia), результат тот же. Поставил bumblbee, работать отказался. Модуль грузится, но при вводе

tee /proc/acpi/bbswitch <<<OFF

вывод остается тем же:

 user@host:~$ cat /proc/acpi/bbswitch
0000:01:00.0 ON

Нужно снять питание с карты nvidia, ибо батарею кушает нещадно.

 , ,

andrianovgeorge
()

Выгрузить модуль и всё что мешает

Форум — Linux-hardware

Требуется выгрузить модуль:

sudo rmmod somemodule

rmmod: ERROR: Module somemodule is in use

Есть ли способ заставить выгрузить также то, что его юзает в lsmod, чтобы не делать этого вручную. Потому что загружаю лишь somemodule, а выгрузить только его уже никак - паровозом вешается еще много чего

Судя по темам на ЛОРе есть тревожное подозрение что если я вижу «rmmod: ERROR: ../libkmod/libkmod-module.c:793 kmod_module_remove_module() could not remove ‘somemodule’: Resource temporarily unavailable» то значит облом, устройство не позволит отпустить драйвер

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

 , , rmmod

I-Love-Microsoft
()

ARCH и кириллица в консоли

Форум — General

Кто сталкивался и поборол - после запуска иксов при возврате в tty русские символы перестают отображаться корректно. Иксовые дрова nvidia, до запуска иксов всё работает нормально...

Hokum
()

Ужасный тиринг на видеокарте Nvidia

Форум — Desktop

Привет Я два месяца готовился к переходу на Linux, изучал его на VirtualBox. И вот я установил его на комп, теперь столкнулся с сильным тирингом. Не могу нормально работать, даже видео в низком качестве смотреть невозможно. Тиринг везде. К счастью у меня две системы, но оставаться в Windows я не хочу. Помогите пожалуйста новичку

BackBox 4.5.1 (Ubuntu 12.04) Core i5 Nvidia GTX660 (установлен пропритетарный драйвер)

 , ,

Rovshik
()

Вопрос по nvidia-xrun

Форум — Games

Вечер в хату добрый. Есть ноут с дискретной графикой, она переключается, бамблби, примус работают. Прочитал про nvidia-xrun и решил попробовать. Попробовал - понравилось, прирост ощутимый. Сейчас в качестве DE стоит openbox, при запуске nvidia-xrun в отдельном tty и при последующем выклюение (разлогиниваюсь через меню openboxa) nvidia-xrun не может выгрузить подгруженные модули. Ставилось всё по арчевики. Как итог - модули подгружаются, всё работает, но обратно они не выгружаются. И видяха в состоянии «ON» всё время остаётся. Лог в консоли такой. Что я делаю не так?

Unloading nvidia_drm module
rmmod: ERROR: Module nvidia_drm is in use
Unloading nvidia_modeset module
rmmod: ERROR: Module nvidia_modeset is in use by: nvidia_drm
Unloading nvidia module
rmmod: ERROR: Module nvidia is in use by: nvidia_modeset
Turning off nvidia GPU
OFF
Current state of nvidia GPU: 0000:01:00.0 ON

 , ,

Flexo
()

Дикая задержка

Форум — General

Здравствуйте, после запуска когда логинюсь в пользователя(я не использую дисплейный менеджер) не могу 2-2.5 минуты ничего ввести в консоль.

Вроде как это началось после записывания на флешку образа devuan командой dd(что я считаю полным бредом и до конца в этом не уверен) либо после установки и последующего снесения к чертям этого дистрибутива.

Еще грешил на пыль в компьютере, при первом запуске после тотального аннигилирования пыли я сразу смог ввести свой логин и пароль. Но после следующего включение всё стало как раньше, опять эти ожидания по 2-3 минуты!!

И ещё, в теории, каким то гипотетическим образом это может быть из-за того что я не отключал питание своего китайского удлинителя на протяжении 4 месяцев?(bruh, bread)

I use arch btw :)

Upd. Попробовал дисплейный менеджер в нём всё тоже самое, но в добавок не работает мышь Upd2. Ну и мой компьютер стал видимо дольше загружаться именно до момента появления имени моей материнки

 , ,

bbclbtq
()

Создание правила udev

Форум — Linux-hardware

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

# touch /etc/udev/rules.d/devices.rules

# xinput list-props 'Wacom ISDv4 E6 Pen Pen (0)'
Device Node (288):	"/dev/input/event14"

# udevadm info -a -n /dev/input/event14
...
KERNELS=="input21"
SUBSYSTEMS=="input"
DRIVERS==""
...
ATTRS{name}=="Wacom ISDv4 E6 Pen"

# nano Reading rules file: /etc/udev/rules.d/device.rules

SUBSYSTEMS=="input", ATTRS{name}=="Wacom ISDv4 E6 Pen", SYMLINK+="stilus"

# udevadm control --reload-rules
# udevadm test /dev/input/event14
Reading rules file: /etc/udev/rules.d/devices.rules
Failed to open device '/sys/dev/input/event14': No such device
Unload module index
Unloaded link configuration context.

Перемещено hobbit из general

 

Cl_Magenta
()

Как перенести ФС на диск бо́льшего размера?

Форум — General

Есть hdd на 1 ТБ. ФС btrfs. Купил ssd на 2 ТБ и хочу перенести файлы на новый диск с расширением ФС на весь диск и сохранением всех атрибутов, прав, дат и т.д.

Ещё использую докер и он понасоздавал btrfs subvolume, так что простое копирование скорее всего всё сломает.

Какие есть способы провернуть это?

 , , ,

ox55ff
()

Рекурсивный chmod только на каталоги

Форум — General

Есть дерево всякого добра с неизвестно какими правами. Нужно: 1. Отдельно рекурсивно chmod на все подкаталоги и корневой каталог. 2. Отдельно рекурсивно chmod на все файлы во всех подкаталогах.

Зачем? Потому что нужна возможность ходить по каталогам, при этом не нужен аттрибут выполняемости файлов.

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

anonymous
()

Swap на разделе VS swap в файле. SSD. BTRFS.

Форум — General

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

Но вот на мой любимый Neon 5.16 прилетело пятое ядро. Про него так сказано, будто внезапная возможность работать со swapfile на btrfs - это одно из двух лучших, которые в нем вообще есть (второе - это планировщики I/O.

Вот, интересно услышать мнения, чем так плох раздел swap по стравнению с файлом?

С HDD - еще понятно, есть несколько причин.

А с SSD? SSD же одинаково быстрый (ну, или одинаково медленный) во всех своих местах? И «проедание» свопом одних и тех же ячеек, о котором я где-то видел - это же фигня какая-то? Ячейки же перетасовываются не в пределах разделов?

P.S. Не мог сделать эту тему Файрфоксом. Хромиумом получилось. Итс мЭйджик.

 , ,

Dementy
()

Telegram API bot отправить форматированный текст через CURL в Bash

Форум — Development

Приветствую,

Подскажите, пожалуйста, как правильно отправить форматированный текст в Telegram через CURL?

TOKEN=601442078:AAQLaIt2IEpuXX3NNirIW-zH2oIifrl_Csc
CHAT_ID=-1000057279471
URL=https://api.telegram.org/bot$TOKEN/sendMessage

curl -s -X POST $URL -d chat_id=$CHAT_ID -d parse_mod=markdown -d text="*Bold*"

Отправляет сообщение в виде *Bold*. Пробовал подставлять parse_mod=HTML и использовать <b>Bold</b> и тоже самое, не выделяет жирным.

Проблему сам нашёл, ошибка в написании «parse_mode» забыл указать в конце «e». Всем спасибо за помощь )).

 , ,

dmitri22
()

Настройка OpenVPN только для определенных сайтов

Форум — Admin

В связи с блокировками соц сетей, решил попробовать настроить обход. На сервере крутится убунта, с установленным с помощью скрипта OpenVPN: https://github.com/Nyr/openvpn-install

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

server.conf

port 1194
proto tcp
dev tun
sndbuf 0
rcvbuf 0
ca ca.crt
cert server.crt
key server.key
dh dh.pem
tls-auth ta.key 0
topology subnet
server 10.8.0.0 255.255.255.0
ifconfig-pool-persist ipp.txt
push "redirect-gateway def1 bypass-dhcp"
push "dhcp-option DNS 8.8.8.8"
push "dhcp-option DNS 8.8.4.4"
keepalive 10 120
cipher AES-256-CBC
comp-lzo
user nobody
group nogroup
persist-key
persist-tun
status openvpn-status.log
verb 3
crl-verify crl.pem

client.ovpn

client
dev tun
proto tcp
sndbuf 0
rcvbuf 0
remote xxx.xxx.xxx.xxx 1194
resolv-retry infinite
nobind
persist-key
persist-tun
remote-cert-tls server
cipher AES-256-CBC
comp-lzo
setenv opt block-outside-dns
key-direction 1
verb 3

Погуглив, узнал что на стороне клиента можно задать следующее:

route-nopull
route 54.82.83.140 #Сервис проверки ip

Однако после этого все перестает загружаться, пингуется только сервер, остальное «Ping request could not find host ya.ru. Please check the name and try again.» Пробовал еще несколько вариантов из сети, но тщетно. Тестировал под двумя пк с виндой, у планшета под ios на удивление все заработало.

 , ,

Magi-max
()

MPV. При запуске загрузить файлы, открытые в прошлый раз

Форум — Desktop

Задача в том, чтобы выполняя запуск MPV без аргументов (не передавая плееру ссылку на файл), открывались файлы, которые были загружены в плейлист до закрытия плеера.

 

Dreamdrawer
()

Bumblebee или Nvidia Prime ?

Форум — Linux-hardware

Здравствуйте. Имею ноутбук с двумя видюхами: Intel HD 5500, и Nvidia Geforce 840M. Захотел настроить гибридную графику.

Поставил драва вот отсюда: ppa:xorg-edgers/ppa . А именно, след. пакеты: nvidia-352 nvidia-settings libcuda1-352 nvidia-libopencl1-352 nvidia-opencl-icd-352

Затем отключил сей реп и поставил из ppa:bumblebee/stable вот это: sudo apt-get install bumblebee bumblebee-nvidia primus primus-libs:i386

Немного пошаманил внастройках, чтобы через optirun <прога> программы таки начали запускать. Всё вроде бы и хорошо.

НО есть три НО, по поводу которых я сюда и пришел:

1. Вот тут написано про некий bbswitch: http://neoblogs.net/2013/04/14/nvidia-optimus-gibridnaya-grafika-nvidia-intel/ Как я понял, он установился в виде зависимости. Но я так и не понял, будет ли система сама определять когда необходимо включать дискретную графику? Или всегда придется делать это вручную?

2. Не лучше ли поставить Prime? Но с ним еще более непонятно всё в плане первого вопроса.

3. В Nvidia-settings у меня всего две строки - с профилями и с настройками самой программы. Вот тут на скринах: http://compizomania.blogspot.com/2013/10/nvidia-33113-ubuntulinux-mint.html видно, что настроек должно быть куда больше, откуда их взять? (пробовал ставить соответствующие дрова и пакеты из оф.репов - снова те же две строчки).

Linux Mint 17.1 x64 KDE

 , ,

Leonius
()

как установить обои в i3-gaps

Форум — Desktop

Как установить обои в i3.я совсем новичек в i3 и не разбираюсь совсем

 ,

lemoname
()

Btrfs: гибернация в файл подкачки не робит

Форум — General
$ cd /tmp
$ wget https://raw.githubusercontent.com/osandov/osandov-linux/master/scripts/btrfs_map_physical.c
$ gcc -O2 -o btrfs_map_physical btrfs_map_physical.c  
# переместим исполняемый файл
$ sudo mv btrfs_map_physical /usr/local/bin
$ sudo chmod +x /usr/local/bin/btrfs_map_physical

$ sudo btrfs_map_physical /swap/swapfile
FILE OFFSET	FILE SIZE	EXTENT OFFSET	EXTENT TYPE	LOGICAL SIZE	LOGICAL OFFSET	PHYSICAL SIZE	DEVID	PHYSICAL OFFSET
0	4096	0	regular	268435456	91029504	268435456	191029504
...

# Смещение поделил на размер блока 4096
# For some reason the output of the script is misaligned, but it's not that difficult to find the proper value: it's the first number in the rightmost column shifted slightly to the left. For me it's 44418101248. Divide this value by 4096 and that's your resume_offset. Mine is 44418101248 / 4096 = 10844263
$ echo $((`sudo btrfs_map_physical /swap/swapfile | head -n 2 | tail -n 1 | cut -f9` / 4096))
22224

В /etc/default/grub прописал:

GRUB_CMDLINE_LINUX_DEFAULT="loglevel=3 quiet resume=UUID=06572f2c-bd18-494f-a2b6-904704d5222e resume_offset=22224"

В хуки /etc/mkinitcpio.conf добавил resume после filesystems.

Выполнил:

sudo mkinitcpio -p linux
sudo grub-mkconfig -o /boot/grub/grub.cfg
$ systemctl hibernate                      
Failed to hibernate system via logind: Not enough swap space for hibernation

$ cat /sys/power/resume_offset
22224

$ cat /proc/swaps                                               
Filename				Type		Size	Used	Priority
/swap/swapfile                          file		8388604	0	-2


$ free -h                     
              total        used        free      shared  buff/cache   available
Mem:           15Gi       1.7Gi        12Gi       115Mi       1.2Gi        13Gi
Swap:         8.0Gi          0B       8.0Gi

$ journalctl | grep offset
Feb 12 02:26:59 sergey-pc systemd-logind[605]: /sys/power/resume and /sys/power/resume_offset has no matching entry in /proc/swaps; Hibernation will fail: resume=259:2, resume_offset=22224

У кого-нибудь есть решение?

UPD:

$ sudo systemctl edit systemd-logind.service
# Создал такой файл c таким содержимым
[Service]
Environment=SYSTEMD_BYPASS_HIBERNATION_MEMORY_CHECK=1

# Попробовал выполнить и комп просто перегрузился. В журнале та же самая ошибка
$ systemctl hibernate

 , ,

tz4678
()

Где спецификация на template пакетов у VoidLinux?

Форум — General

На их сайте в docs не нашел, гугл выдает странное. Хотелось бы увидеть список и описание всех переменных этого template файла для сборки пакетов.

 , ,

bhfq
()

Хочется странного, уменьшаемый raid0.

Форум — Admin

На текущий момент возможно ли, сделать уменьшаемый raid0 без потери данных ?
Например есть 5 дисков по 2TB, объединив в raid0 получится 10TB полезной емкости, и будет использоваться 7TB.
И вот хочу убрать из raid0 один диск, места свободного достаточно чтобы перебалансировать/мигрировать данные с удаляемого диска, с помощью чего это возможно сделать: btrfs, zfs, bcachefs или может хитро-выдуманная конфигурация lvm ?

 , , ,

Samamy
()