LINUX.ORG.RU

Сообщения Notevill

 

Запуск «Remote desktop» приложения до логина пользователя

Форум — Development

Значит предыстория. Пилим мы в нашей конторе, для своих внутренних конторских нужд замену тимвивер. Появилась задача запускать Замену из сервиса, так что чтобы достаточно было только включить комп и уже можно было бы подключаться. Компы на centos 7 или centos stream 8 (на этих хотим именно gnome c wayland), на обоих стоит gdm разных версий.

На centos 7 у меня прокатило просто DISPLAY=:0 /usr/local/bin/Замена.

На centos stream 8 так уже не канает. Wayland у нас хоть и поддерживается, но частично: в основном через Xwayland и немножко извращений через Dbus.

Так вот при старте системы мне вообще не понятно как оно там устроено. X сервер больше не запускается. XWayland, то есть, то его нету, хз от чего оно зависит. Если XWayland есть, то у него настроен display :1024, запустить Замену получается, но пока не удается научить Замену определять, что тут нужно юзать функции для wayland для скринкастинга. Однако после логина, все перезапускается и Замена падает так как X сервера на :1024 больше нету.

Вопрос, есть какие-то идеи куда тут можно копать? Может, то что я хочу вообще не возможно или не возможно именно с gdm или не возможно с любым dm и c wayland сессией?

Знаю что VNC сервер умеет поднимать свой X сервер, но хочется чтобы после подключения юзер видел экран логина для входа в систему. Знаю что x11vnc делает именно так как у меня получилось на centos 7, есть ли что-то что будет работать аналогично с wayland (чтобы подсмотреть реализацию)?

 , ,

Notevill
()

ipv6 neighbor descovery

Форум — Admin

Помогите разобраться как работает neighbor descovery в ipv6.

Есть две линукс машины (По факту это docker контейнер на линукс хосте) обозначим их docker и host.

На host есть такие интерфейсы:

# bridge подключаемый в контейнер
ip a show br-5f71de5b12d2
14: br-5f71de5b12d2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default 
    link/ether 02:42:9d:76:1d:2d brd ff:ff:ff:ff:ff:ff
    inet 10.10.0.1/24 brd 10.10.0.255 scope global br-5f71de5b12d2
       valid_lft forever preferred_lft forever
    inet6 fc01::1/112 scope global 
       valid_lft forever preferred_lft forever
    inet6 fe80::42:9dff:fe76:1d2d/64 scope link 
       valid_lft forever preferred_lft forever
    inet6 fe80::1/64 scope link 
       valid_lft forever preferred_lft forever

# это таргет до которого нужно допинговаться
ip a show dummy_host0
13: dummy_host0: <BROADCAST,NOARP,UP,LOWER_UP> mtu 1500 qdisc noqueue state UNKNOWN group default qlen 1000
    link/ether 5a:d6:65:1f:23:65 brd ff:ff:ff:ff:ff:ff
    inet 10.0.0.1/24 scope global dummy_host0
       valid_lft forever preferred_lft forever
    inet 10.5.0.1/24 scope global dummy_host0
       valid_lft forever preferred_lft forever
    inet6 fc00::5:1/112 scope global 
       valid_lft forever preferred_lft forever
    inet6 fc00::1/112 scope global 
       valid_lft forever preferred_lft forever
    inet6 fe80::58d6:65ff:fe1f:2365/64 scope link 
       valid_lft forever preferred_lft forever

На docker такой интерфейс:

# Это бридж с хоста
ip a show eth0
16: eth0@if17: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default 
    link/ether 02:42:0a:0a:00:02 brd ff:ff:ff:ff:ff:ff link-netnsid 0
    inet 10.10.0.2/24 brd 10.10.0.255 scope global eth0
       valid_lft forever preferred_lft forever
    inet6 fc01::2/112 scope global nodad 
       valid_lft forever preferred_lft forever
    inet6 fe80::42:aff:fe0a:2/64 scope link 
       valid_lft forever preferred_lft forever

На docker есть такие маршруты ipv6

ip -6 r
fc00::/112 via fc01::1 dev eth0 proto xorp metric 1  pref medium
fc00::5:0/112 dev eth0 proto xorp metric 1  pref medium
fc01::/112 dev eth0 proto kernel metric 256  pref medium
fe80::/64 dev eth0 proto kernel metric 256  pref medium
default via fc01::1 dev eth0 metric 1024  pref medium

Тут маршрут в подсеть fc00::5:0/112 задана сразу через интерфейс, а не via gateway.

Задача пропинговать с docker fc00::5:1.

ping -c 1 fc00::5:1
PING fc00::5:1(fc00::5:1) 56 data bytes
From fc01::2 icmp_seq=1 Destination unreachable: Address unreachable

--- fc00::5:1 ping statistics ---
1 packets transmitted, 0 received, +1 errors, 100% packet loss, time 0ms

При этом ping на fc00::1 работает, разница в том как заданы маршруты.

На хосте br-5f71de5b12d2 (это bridge для докера) через wireshark видно пакеты Neighbor Solicitation от docker (src=fc01::2) на адрес ff02::1:ff05:1, а ответа нет.

На хосте dummy_host0 ничего не приходит.

На docker ip neigh показывает:

ip neigh
10.10.0.1 dev eth0 lladdr 02:42:9d:76:1d:2d STALE
10.5.0.1 dev eth0 lladdr 02:42:9d:76:1d:2d STALE
fc00::5:1 dev eth0  FAILED
fc01::1 dev eth0 lladdr 02:42:9d:76:1d:2d router STALE
fe80::1 dev eth0 lladdr 02:42:9d:76:1d:2d router STALE

То есть отдельный neighboring с fc00::1 ему не нужен, а вот с fc00::5:1 нужен и он не работает.

 , ,

Notevill
()

Nvidia Prime не работает.

Форум — Desktop

ОС linux Manjaro с ядром 5.6, на ноутбуке со встроенной intel и дискретной nvidia графикой.

lspci | grep -E -e "VGA" -e "3D"
00:02.0 VGA compatible controller: Intel Corporation HD Graphics 530 (rev 06)
01:00.0 3D controller: NVIDIA Corporation GM107M [GeForce GTX 960M] (rev a2)

Установил проприентарные дравйера nvidia 440xx. Хотел запускать программы с prime-run. Не рабоет.

просто так:

glxinfo | grep vendor
server glx vendor string: SGI
client glx vendor string: Mesa Project and SGI
OpenGL vendor string: Intel

с prime-run:

prime-run glxinfo | grep vendor
X Error of failed request:  BadValue (integer parameter out of range for operation)
  Major opcode of failed request:  152 (GLX)
  Minor opcode of failed request:  24 (X_GLXCreateNewContext)
  Value in failed request:  0x0
  Serial number of failed request:  39
  Current serial number in output stream:  40

Вроде как есть проблема, что у меня чего-то не догружается, потому что xrandr выдает только одного провайдера:

xrandr --listproviders
Providers: number : 1
Provider 0: id: 0x47 cap: 0xf, Source Output, Sink Output, Source Offload, Sink Offload crtcs: 3 outputs: 5 associated providers: 0 name:modesetting

Пробовал делать по этой инструкции.

EDIT: добавил log Xorg

 , ,

Notevill
()

Копирование файла из консоли в GUI.

Форум — General

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

Код для скриншота:

file="/tmp/screenshot/screenshot.png"

maim -g $(slop) $file

xclip -i $file -selection clipboard -target $(file -b --mime-type $file)

Код для скринкаста:

file="/tmp/screencast/screencast.mp4"

ffmpeg -f x11grab $(slop -f "-video_size %wx%h -framerate 25 -i :0.0+%x,%y") $file

xclip -i $file -selection clipboard -target $(file -b --mime-type $file)

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

Думается что-то нужно правильно просписать что-то в опции -target, но что я не знаю.

К слову если копировать файлы из dolphin, то они вставляются без проблем везде. При этом xclip -o -selection clipboard выдает не сам файл, а ссылку на него. А вот если я сам засуну туда ссылку, то в dolphin она так же просит имя файла, но в файл вставляет ссылку как обычный текст.

 , , , ,

Notevill
()

IPsec, strongswan, клиент дублирует пакеты в обход туннеля.

Форум — Admin

Схема такая. Есть виртуалка есть хост, между ними виртуальный адаптер, адреса соответственно 192.168.57.2 -виртуалка, 192.168.57.1-хост.

Пытаюсь осовоить IPsec, ковыряюсь со strongswan.

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

Вот так это выглядит в wireshark

с виртуалки на хост

с хоста на виртуалку

ping с виртуалки на хост:

 ping -I enp0s9 192.168.57.1 -c 2
PING 192.168.57.1 (192.168.57.1) from 192.168.57.2 enp0s9: 56(84) bytes of data.
64 bytes from 192.168.57.1: icmp_seq=1 ttl=64 time=0.241 ms
64 bytes from 192.168.57.1: icmp_seq=2 ttl=64 time=0.294 ms

--- 192.168.57.1 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1013ms
rtt min/avg/max/mdev = 0.241/0.267/0.294/0.031 

ping c хоста на виртуалку:

 ping 192.168.57.2 -c 2
PING 192.168.57.2 (192.168.57.2) 56(84) bytes of data.
64 bytes from 192.168.57.2: icmp_seq=1 ttl=64 time=0.451 ms
64 bytes from 192.168.57.2: icmp_seq=2 ttl=64 time=0.359 ms

--- 192.168.57.2 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1019ms
rtt min/avg/max/mdev = 0.359/0.405/0.451/0.046 ms

Конфигурация swanctl на хосте:

cat swanctl.conf 
#ike_v1_psk_connection_cld simple test configuration for ipsec client/server
# main configuration section
connections {
	ike-v1-psk-connection {
		version = 1
		remote_addrs = 192.168.57.2,0.0.0.0/0
		local-1 {
			auth = psk
			id = "server"
		}
		remote-1 {
			auth = psk
		}

		children {
			ike-server {
				local_ts = 192.168.57.0/24
				remote_ts = 192.168.57.0/24
				mode = tunnel
				# defalt start_action is none, that's more \
				# suitable for server
			}
		}
	}
}

# secrets section
secrets {
	ike_pks_mari {
		id-0 = "server"
		id-2 = "mari-el"
		secret = "super_pass"
	}
	ike_psk_server {
		id = "server1"
		secret = "secrete ingredient"
	}
}

Конфигурация swanctl на виртуалке:

 cat swanctl.conf 
# client ipsec configuration 
# main configuration section

connections {
	ike-v1-client-conf {
		version = 1
		remote_addrs = 192.168.57.1		# remote address for server
		
		local-1 {
			auth = psk
			id = "mari-el"
		}
		remote-1 {
			auth = psk
		}
		
		children {
			ike-1{
				remote_ts = 192.168.57.0/24	// all trafic for server side
				mode = tunnel
				start_action = start
			}
		}
	}

}

#secrets section
secrets {
	ike-1 {
		id-1 = "mari-el"
		secret = "super_pass"
	}
}

В обоих случаях используется strongswan 5.8.1 собранный из исходников по инструкции с гитхаба.

 ,

Notevill
()

Не работает syndaemon

Форум — General

Проблема такая. Для отключения тачпада во время печатания, используется syndaemon. Запускается в конфиге i3

exec --no-startup-id syndaemon -d -i 2 -K

При перезагрузке все работает нормально. Но при закрытии/ открытии крышки ноутбука, работать перестает. Если написать в терминале

syndaemon -i 2 -K -v

то при нажатии кнопок пишет Disable/Enable, но тачпад не отключается.

В чем может быть проблема? Что можно посмотреть?

 ,

Notevill
()

Не работает Usb type c

Форум — Linux-hardware

Ноутбук Aser aspire VN7-592G. Уже давно поставил Manjaro Но вот сейчас мне в руки попали Usb type c наушники, решил их затестить, а порт у меня оказывается не работает.

Если посмотреть lspci, то там только USB 3.0

lspci | grep USB
00:14.0 USB controller: Intel Corporation Sunrise Point-H USB 3.0 xHCI Controller (rev 31)

Выходит, что у меня драйвера нет под type c, или же за все usb должен один драйвер отвечать.

Перемещено shell-script из admin

 ,

Notevill
()

Отказано в доступе на выполнение файлов с правами 777 от рута

Форум — General

Недавно поставил Mnajaro linux. На отдельном хдд у меня были некоторые программы. Теперь они отказываются выполнятся даже с правами 777, даже из под рута.

kitaev@bugdruhman-pc bin]$ ls -la
итого 29812
drwxrwxrwx  2 kitaev kitaev     4096 фев 16 22:18 .
drwxrwxrwx 11 kitaev kitaev     4096 фев 16 22:18 ..
-rwxrwxrwx  1 kitaev kitaev 11304359 фев 16 22:13 go
-rwxrwxrwx  1 kitaev kitaev 15732709 фев 16 22:18 godoc
-rwxrwxrwx  1 kitaev kitaev  3477807 фев 16 22:13 gofmt

При попытке выполнить выдается ошибка: отказано в доступе

[kitaev@bugdruhman-pc bin]$ go
bash: /var/datafiles/documents/Programming/GO/golangroot/bin/go: Отказано в доступе
[kitaev@bugdruhman-pc bin]$ sudo go
[sudo] пароль для kitaev: 
sudo: unable to execute /var/datafiles/documents/Programming/GO/golangroot/bin/go: Отказано в доступе

 , ,

Notevill
()

RSS подписка на новые темы