Linux CNC + RDP + share

Общие вопросы по операционным системам семейства Linux.
Аватара пользователя
asher
Опытный
Сообщения: 108
Зарегистрирован: 02 июл 2019, 12:56
Репутация: 2
Контактная информация:

Linux CNC + RDP + share

Сообщение asher »

Народ помогите, я полный ноль в Linux, хочу получить Linux CNC, чтобы можно было управлять им по локальной сети с Windows, т.е. подключатся к Линукс как к удаленному рабочиму столу(RDP) ну и чтобы была общяя сетевая папка для обмена г-кодом.
Ставил уже две версии Линукса, на Debian 7 Wheezy никакие команды которые я нашел в интернете косаемо запуска служб РДП не работают, поставил
Debian 9 Stretch на нем команды работают работает интернет, но сетевое подключение настроить не удается, т.е. интернет есть создаю новое подключение прописываю статический ip, но он никуда не подключается ничего не происходит.
Может кто-то тыкнет что я делаю не так?
Аватара пользователя
MX_Master
Мастер
Сообщения: 6756
Зарегистрирован: 27 июн 2015, 19:45
Репутация: 2831
Настоящее имя: Миша
Контактная информация:

Re: Linux CNC + RDP + share

Сообщение MX_Master »

Настроить в Debian сетку со статическим IP адресом. Потом

Код: Выделить всё

sudo apt-get remove xrdp vnc4server tightvncserver

sudo apt-get install xrdp
sudo apt-get install xorgxrdp
sudo sed -i 's/allowed_users=console/allowed_users=anybody/' /etc/X11/Xwrapper.config

sudo service xrdp restart
sudo reboot
Затем открыть из винды "Удалённый рабочий стол" и подключиться к ПК с Debian.
Аватара пользователя
asher
Опытный
Сообщения: 108
Зарегистрирован: 02 июл 2019, 12:56
Репутация: 2
Контактная информация:

Re: Linux CNC + RDP + share

Сообщение asher »

MX_Master писал(а): 21 авг 2020, 20:21 Затем открыть из винды "Удалённый рабочий стол" и подключиться к ПК с Debian.
на Debian 7 Wheezy, после настройки репозитория, удалось поставить Samba, и настроить RDP таким способом:

Код: Выделить всё

sudo apt-get update
sudo apt-get install xrdp
sudo apt-get install xfce4
echo xfce4-session >~/.xsession
sudo service xrdp restart
sudo nano /etc/X11/Xwrapper.config #поменял значение allowed_users=console на allowed_users=anybody
всё подключается, но возникла новая проблема, не запускается LinuxCNC при удаленном подключении, выдает ошибку:
RTAPI: ERROR: failed to map shmem
RTAPI: Locked memory limit is 64KiB, recommended at least 20480KiB.
This can cause the error 'failed to map shmem'.
For more information, see
http://wiki.linuxcnc.org/cgi-bin/emcinf ... ckedMemory
HAL: ERROR: could not open shared memory
halcmd: hal_init() failed: -22
NOTE: 'rtapi' kernel module must be loaded
RTAPI: ERROR: failed to map shmem
RTAPI: Locked memory limit is 64KiB, recommended at least 20480KiB.
This can cause the error 'failed to map shmem'.
For more information, see
как рекомендуется прописать:
Edit /etc/security/limits.conf with your favorite text editor (e.g., sudo gedit /etc/security/limits.conf). Add the following line
* - memlock 20480
но в файле это уже было прописано
(для просмотра содержимого нажмите на ссылку)

Код: Выделить всё

# /etc/security/limits.conf
#
#Each line describes a limit for a user in the form:
#
#<domain>        <type>  <item>  <value>
#
#Where:
#<domain> can be:
#        - an user name
#        - a group name, with @group syntax
#        - the wildcard *, for default entry
#        - the wildcard %, can be also used with %group syntax,
#                 for maxlogin limit
#        - NOTE: group and wildcard limits are not applied to root.
#          To apply a limit to the root user, <domain> must be
#          the literal username root.
#
#<type> can have the two values:
#        - "soft" for enforcing the soft limits
#        - "hard" for enforcing hard limits
#
#<item> can be one of the following:
#        - core - limits the core file size (KB)
#        - data - max data size (KB)
#        - fsize - maximum filesize (KB)
#        - memlock - max locked-in-memory address space (KB)
#        - nofile - max number of open files
#        - rss - max resident set size (KB)
#        - stack - max stack size (KB)
#        - cpu - max CPU time (MIN)
#        - nproc - max number of processes
#        - as - address space limit (KB)
#        - maxlogins - max number of logins for this user
#        - maxsyslogins - max number of logins on the system
#        - priority - the priority to run user process with
#        - locks - max number of file locks the user can hold
#        - sigpending - max number of pending signals
#        - msgqueue - max memory used by POSIX message queues (bytes)
#        - nice - max nice priority allowed to raise to values: [-20, 19]
#        - rtprio - max realtime priority
#        - chroot - change root to directory (Debian-specific)
#
#<domain>      <type>  <item>         <value>
#

#*               soft    core            0
#root            hard    core            100000
#*               hard    rss             10000
#@student        hard    nproc           20
#@faculty        soft    nproc           20
#@faculty        hard    nproc           50
#ftp             hard    nproc           0
#ftp             -       chroot          /ftp
#@student        -       maxlogins       4

# End of file
* - memlock 20480 #EMC2
при одном пользователе, на виртуалке пишет:

Код: Выделить всё

operator1@debian:~$ ulimit -l
20480
на RDP подключении:

Код: Выделить всё

operator1@debian:~$ ulimit -l
64
operator1@debian:~$ ulimit -l 20480
bash: ulimit: max locked memory: cannot modify limit: Операция не позволяется
что можно сделать?
Последний раз редактировалось asher 24 авг 2020, 14:03, всего редактировалось 1 раз.
Аватара пользователя
asher
Опытный
Сообщения: 108
Зарегистрирован: 02 июл 2019, 12:56
Репутация: 2
Контактная информация:

Re: Linux CNC + RDP + share

Сообщение asher »

а на Debian 9 Stretch у меня почему то не запустилась расширенная папка Samba, и IP получается прописать только через терминал, в графическом режиме сетевые подключения вообще не работают пишет что активных нет(хотя сетка есть) и при создании подключения они никуда не подключаются, НО при этом по RDP LInuxCNC запускается, хотя

Код: Выделить всё

ulimit -l 
так же 64

:cheesy:
Аватара пользователя
MX_Master
Мастер
Сообщения: 6756
Зарегистрирован: 27 июн 2015, 19:45
Репутация: 2831
Настоящее имя: Миша
Контактная информация:

Re: Linux CNC + RDP + share

Сообщение MX_Master »

Я пробовал в Debian 10, там с XRDP порядок, правда, Latency не очень :) Вощем, на вкус и цвет каждый выбирает сам.
Аватара пользователя
asher
Опытный
Сообщения: 108
Зарегистрирован: 02 июл 2019, 12:56
Репутация: 2
Контактная информация:

Re: Linux CNC + RDP + share

Сообщение asher »

продолжаю ковырять :hehehe: информация к размышлению
заметил что латенси тест также не запускается из RDP, вообще не выдает никаких ошибок
через терминал выдает ту же ошибку "failed to map shmem"

НО под рут правами

Код: Выделить всё

 sudo latecny-test 
запускается

с конфигурацией такое не прокатило

Код: Выделить всё

operator1@debian:~$ sudo linuxcnc /home/operator1/linuxcnc/configs/st/st.ini
[sudo] password for operator1: 
LINUXCNC - 2.7.15
Machine configuration directory is '/home/operator1/linuxcnc/configs/st'
Machine configuration file is 'st.ini'
Starting LinuxCNC...
Found file(REL): ./st.hal
Found file(REL): ./custom.hal
waiting for s.axes
waiting for s.axes
waiting for s.axes
waiting for s.axes
waiting for s.axes
waiting for s.axes
Exception in Tkinter callback
Traceback (most recent call last):
  File "/usr/lib/python2.7/lib-tk/Tkinter.py", line 1437, in __call__
    return self.func(*args)
  File "/usr/bin/axis", line 1325, in jogspeed_listbox_change
    if isinstance(value, str): value = value.encode('utf-8', 'replace')
UnicodeDecodeError: 'ascii' codec can't decode byte 0xd0 in position 0: ordinal not in range(128)
Traceback (most recent call last):
  File "/usr/bin/axis", line 3147, in <module>
    o = MyOpengl(widgets.preview_frame, width=400, height=300, double=1, depth=1)
  File "/usr/bin/axis", line 354, in __init__
    Opengl.__init__(self, *args, **kw)
  File "/usr/lib/pymodules/python2.7/rs274/OpenGLTk.py", line 164, in __init__
    apply(RawOpengl.__init__, (self, master, cnf), kw)
  File "/usr/lib/pymodules/python2.7/rs274/OpenGLTk.py", line 112, in __init__
    Togl.__init__(self, master, cnf, **kw)
  File "/usr/lib/pymodules/python2.7/rs274/OpenGLTk.py", line 38, in __init__
    Widget.__init__(self, master, 'togl', cnf, kw)
  File "/usr/lib/python2.7/lib-tk/Tkinter.py", line 2001, in __init__
    (widgetName, self._w) + extra + self._options(cnf))
_tkinter.TclError: Togl: couldn't get visual
Shutting down and cleaning up LinuxCNC...
task: 42 cycles, min=0.000004, max=0.054717, avg=0.015268, 0 latency excursions (> 10x expected cycle time of 0.010000s)
LinuxCNC terminated with an error.  You can find more information in the log:
    /root/linuxcnc_debug.txt
and
    /root/linuxcnc_print.txt
as well as in the output of the shell command 'dmesg' and in the terminal
operator1@debian:~$ sudo /root/linuxcnc_print.txt
sudo: /root/linuxcnc_print.txt: command not found
operator1@debian:~$ sudo nano /root/linuxcnc_print.txt
operator1@debian:~$ sudo nano /root/linuxcnc_debug.txt
operator1@debian:~$ sudo nano /root/linuxcnc_print.txt
operator1@debian:~$ sudo linuxcnc /home/operator1/linuxcnc/configs/st/st.ini
LINUXCNC - 2.7.15
Machine configuration directory is '/home/operator1/linuxcnc/configs/st'
Machine configuration file is 'st.ini'
Starting LinuxCNC...
Found file(REL): ./st.hal
Found file(REL): ./custom.hal
waiting for s.axes
waiting for s.axes
waiting for s.axes
RTAPI: ERROR: Unexpected realtime delay on task 1
This Message will only display once per session.
Run the Latency Test and resolve before continuing.

waiting for s.axes
Exception in Tkinter callback
Traceback (most recent call last):
  File "/usr/lib/python2.7/lib-tk/Tkinter.py", line 1437, in __call__
    return self.func(*args)
  File "/usr/bin/axis", line 1325, in jogspeed_listbox_change
    if isinstance(value, str): value = value.encode('utf-8', 'replace')
UnicodeDecodeError: 'ascii' codec can't decode byte 0xd0 in position 0: ordinal not in range(128)
Traceback (most recent call last):
  File "/usr/bin/axis", line 3147, in <module>
    o = MyOpengl(widgets.preview_frame, width=400, height=300, double=1, depth=1)
  File "/usr/bin/axis", line 354, in __init__
    Opengl.__init__(self, *args, **kw)
  File "/usr/lib/pymodules/python2.7/rs274/OpenGLTk.py", line 164, in __init__
    apply(RawOpengl.__init__, (self, master, cnf), kw)
  File "/usr/lib/pymodules/python2.7/rs274/OpenGLTk.py", line 112, in __init__
    Togl.__init__(self, master, cnf, **kw)
  File "/usr/lib/pymodules/python2.7/rs274/OpenGLTk.py", line 38, in __init__
    Widget.__init__(self, master, 'togl', cnf, kw)
  File "/usr/lib/python2.7/lib-tk/Tkinter.py", line 2001, in __init__
    (widgetName, self._w) + extra + self._options(cnf))
_tkinter.TclError: Togl: couldn't get visual
Shutting down and cleaning up LinuxCNC...
task: 34 cycles, min=0.000004, max=0.053641, avg=0.011433, 0 latency excursions (> 10x expected cycle time of 0.010000s)
LinuxCNC terminated with an error.  You can find more information in the log:
    /root/linuxcnc_debug.txt
and
    /root/linuxcnc_print.txt
as well as in the output of the shell command 'dmesg' and in the terminal
Последний раз редактировалось asher 24 авг 2020, 23:59, всего редактировалось 1 раз.
alex_sar
Мастер
Сообщения: 734
Зарегистрирован: 28 авг 2018, 17:13
Репутация: 101
Настоящее имя: Алексей
Контактная информация:

Re: Linux CNC + RDP + share

Сообщение alex_sar »

очень странно, вообще для линукса нет разницы где шелл запущен - в rdp или нет
попробуйте из rdp запустить команды
id
cat /etc/security/limits.conf
ulimit -a
что показывает?
Аватара пользователя
asher
Опытный
Сообщения: 108
Зарегистрирован: 02 июл 2019, 12:56
Репутация: 2
Контактная информация:

Re: Linux CNC + RDP + share

Сообщение asher »

alex_sar писал(а): 24 авг 2020, 23:52 что показывает?

Код: Выделить всё

operator1@debian:~$ id
uid=1000(operator1) gid=1000(operator1) группы=1000(operator1),20(dialout),24(cdrom),25(floppy),27(sudo),29(audio),30(dip),44(video),46(plugdev),50(staff),103(fuse),105(scanner),110(bluetooth),111(netdev)
operator1@debian:~$ cat /etc/security/limits.conf
# /etc/security/limits.conf
#
#Each line describes a limit for a user in the form:
#
#<domain>        <type>  <item>  <value>
#
#Where:
#<domain> can be:
#        - an user name
#        - a group name, with @group syntax
#        - the wildcard *, for default entry
#        - the wildcard %, can be also used with %group syntax,
#                 for maxlogin limit
#        - NOTE: group and wildcard limits are not applied to root.
#          To apply a limit to the root user, <domain> must be
#          the literal username root.
#
#<type> can have the two values:
#        - "soft" for enforcing the soft limits
#        - "hard" for enforcing hard limits
#
#<item> can be one of the following:
#        - core - limits the core file size (KB)
#        - data - max data size (KB)
#        - fsize - maximum filesize (KB)
#        - memlock - max locked-in-memory address space (KB)
#        - nofile - max number of open files
#        - rss - max resident set size (KB)
#        - stack - max stack size (KB)
#        - cpu - max CPU time (MIN)
#        - nproc - max number of processes
#        - as - address space limit (KB)
#        - maxlogins - max number of logins for this user
#        - maxsyslogins - max number of logins on the system
#        - priority - the priority to run user process with
#        - locks - max number of file locks the user can hold
#        - sigpending - max number of pending signals
#        - msgqueue - max memory used by POSIX message queues (bytes)
#        - nice - max nice priority allowed to raise to values: [-20, 19]
#        - rtprio - max realtime priority
#        - chroot - change root to directory (Debian-specific)
#
#<domain>      <type>  <item>         <value>
#

#*               soft    core            0
#root            hard    core            100000
#*               hard    rss             10000
#@student        hard    nproc           20
#@faculty        soft    nproc           20
#@faculty        hard    nproc           50
#ftp             hard    nproc           0
#ftp             -       chroot          /ftp
#@student        -       maxlogins       4

# End of file
* - memlock 20480
operator1@debian:~$ ulimit -a
core file size          (blocks, -c) 0
data seg size           (kbytes, -d) unlimited
scheduling priority             (-e) 0
file size               (blocks, -f) unlimited
pending signals                 (-i) 16055
max locked memory       (kbytes, -l) 64
max memory size         (kbytes, -m) unlimited
open files                      (-n) 1024
pipe size            (512 bytes, -p) 8
POSIX message queues     (bytes, -q) 819200
real-time priority              (-r) 0
stack size              (kbytes, -s) 8192
cpu time               (seconds, -t) unlimited
max user processes              (-u) 16055
virtual memory          (kbytes, -v) unlimited
file locks                      (-x) unlimited
alex_sar
Мастер
Сообщения: 734
Зарегистрирован: 28 авг 2018, 17:13
Репутация: 101
Настоящее имя: Алексей
Контактная информация:

Re: Linux CNC + RDP + share

Сообщение alex_sar »

а как именно заходите? su не используете, случайно?

можно ещё проверить
grep -R pam_limits /etc/pam.d /etc/pam.conf
этот модуль (pam_limits) как раз отвечает за загрузку лимитов при логине и т.д.

как вариант, раскомментарить строчку с pam_limits в файле /etc/pam.d/su и после перезагрузки попробовать
Аватара пользователя
asher
Опытный
Сообщения: 108
Зарегистрирован: 02 июл 2019, 12:56
Репутация: 2
Контактная информация:

Re: Linux CNC + RDP + share

Сообщение asher »

alex_sar писал(а): а как именно заходите? su не используете, случайно?
не знаю
alex_sar
Мастер
Сообщения: 734
Зарегистрирован: 28 авг 2018, 17:13
Репутация: 101
Настоящее имя: Алексей
Контактная информация:

Re: Linux CNC + RDP + share

Сообщение alex_sar »

попробуйте, возможно XRDP сервер использует
как вариант, раскомментарить строчку с pam_limits в файле /etc/pam.d/su и после перезагрузки попробовать
еще вариант.
You might have noticed for xrdp on Debian (but quite possibly with a lot of other Linux tools and other Linux distributions) the user limits (described in /etc/security/limits.conf) are not enforced. Which meant in my case that any session open with xrdp was opened with a max number of open files (nofile) set to 1024.

To fix this, edit the file /etc/pam.d/common-session and add the following line:

session required pam_limits.so
Аватара пользователя
asher
Опытный
Сообщения: 108
Зарегистрирован: 02 июл 2019, 12:56
Репутация: 2
Контактная информация:

Re: Linux CNC + RDP + share

Сообщение asher »

alex_sar писал(а): попробуйте
не помогло(
alex_sar
Мастер
Сообщения: 734
Зарегистрирован: 28 авг 2018, 17:13
Репутация: 101
Настоящее имя: Алексей
Контактная информация:

Re: Linux CNC + RDP + share

Сообщение alex_sar »

ну тогда вот такой кривой workaround

sudo /bin/bash
# рут может увеличивать лимиты
ulimit -l 20480
#проверяем
ulimit -l # должно быть 20480
# сбрасываем пермиссии обратно до юзера
su operator1
# проверяем
ulimit -l # должно быть по прежнему 20480

теперь прямо из этой консоли запускайте линуксцнц и всякие latency-testы

если правильного решения не найдёте, можно будет это в стартовый файл юзера добавить
Аватара пользователя
asher
Опытный
Сообщения: 108
Зарегистрирован: 02 июл 2019, 12:56
Репутация: 2
Контактная информация:

Re: Linux CNC + RDP + share

Сообщение asher »

alex_sar писал(а): теперь прямо из этой консоли запускайте линуксцнц и всякие latency-testы
попробовал, и все равно не запускается :wik:

Код: Выделить всё

operator1@debian:~$ ulimit -l
64

operator1@debian:~$ sudo /bin/bash
[sudo] password for operator1: 

root@debian:/home/operator1# su operator1

operator1@debian:~$ ulimit -l
20480

operator1@debian:~$ linuxcnc /home/operator1/linuxcnc/configs/st/st.ini

LINUXCNC - 2.7.15
Machine configuration directory is '/home/operator1/linuxcnc/configs/st'
Machine configuration file is 'st.ini'
Starting LinuxCNC...
.
Found file(REL): ./st.hal
Found file(REL): ./custom.hal
waiting for s.axes
waiting for s.axes
waiting for s.axes
waiting for s.axes
RTAPI: ERROR: Unexpected realtime delay on task 1
This Message will only display once per session.
Run the Latency Test and resolve before continuing.

waiting for s.axes
Exception in Tkinter callback
Traceback (most recent call last):
  File "/usr/lib/python2.7/lib-tk/Tkinter.py", line 1437, in __call__
    return self.func(*args)
  File "/usr/bin/axis", line 1325, in jogspeed_listbox_change
    if isinstance(value, str): value = value.encode('utf-8', 'replace')
UnicodeDecodeError: 'ascii' codec can't decode byte 0xd0 in position 0: ordinal not in range(128)
X Error of failed request:  BadWindow (invalid Window parameter)
  Major opcode of failed request:  3 (X_GetWindowAttributes)
  Resource id in failed request:  0xffffffff
  Serial number of failed request:  653
  Current serial number in output stream:  654
Shutting down and cleaning up LinuxCNC...
task: 32 cycles, min=0.000004, max=0.066255, avg=0.013887, 0 latency excursions (> 10x expected cycle time of 0.010000s)
LinuxCNC terminated with an error.  You can find more information in the log:
    /home/operator1/linuxcnc_debug.txt
and
    /home/operator1/linuxcnc_print.txt
as well as in the output of the shell command 'dmesg' and in the terminal
operator1@debian:~$ 
Аватара пользователя
asher
Опытный
Сообщения: 108
Зарегистрирован: 02 июл 2019, 12:56
Репутация: 2
Контактная информация:

Re: Linux CNC + RDP + share

Сообщение asher »

могу попробовать на реальном железе, может это на виртуалке так чудит
alex_sar
Мастер
Сообщения: 734
Зарегистрирован: 28 авг 2018, 17:13
Репутация: 101
Настоящее имя: Алексей
Контактная информация:

Re: Linux CNC + RDP + share

Сообщение alex_sar »

это уже другая история.

на виртуалке конечно будет тупить и про латенси тест ругаться.

во вторых у вас что - русский в конфигах? вот так сделайте перед запуском:

export LANG=ru_RU.UTF-8
Аватара пользователя
asher
Опытный
Сообщения: 108
Зарегистрирован: 02 июл 2019, 12:56
Репутация: 2
Контактная информация:

Re: Linux CNC + RDP + share

Сообщение asher »

alex_sar писал(а): на виртуалке конечно будет тупить и про латенси тест ругаться
на Debian 9 Stretch запускается
Аватара пользователя
asher
Опытный
Сообщения: 108
Зарегистрирован: 02 июл 2019, 12:56
Репутация: 2
Контактная информация:

Re: Linux CNC + RDP + share

Сообщение asher »

Код: Выделить всё

Error of failed request:  BadWindow (invalid Window parameter)
может этом как-то связанно, попробовал открыть настройки дисплея
Снимок.JPG (608 просмотров) <a class='original' href='./download/file.php?id=185284&sid=29d52d7cd6d25b6ca8a36e330977a35a&mode=view' target=_blank>Загрузить оригинал (25.72 КБ)</a>
на на Debian 9 Stretch такого нет
Последний раз редактировалось asher 25 авг 2020, 01:09, всего редактировалось 1 раз.
Аватара пользователя
Serg
Мастер
Сообщения: 21923
Зарегистрирован: 17 апр 2012, 14:58
Репутация: 5150
Заслуга: c781c134843e0c1a3de9
Настоящее имя: Сергей
Откуда: Москва
Контактная информация:

Re: Linux CNC + RDP + share

Сообщение Serg »

Дело не в этом. Ключевой текст ошибки вот:
X Error of failed request: BadWindow (invalid Window parameter)
Major opcode of failed request: 3 (X_GetWindowAttributes)
Resource id in failed request: 0xffffffff
Serial number of failed request: 653
Current serial number in output stream: 654
В системе используется libGL с поддержкой аппаратного "функций" видеокарты, соотв. программе требуется прямой доступ к "железу" видеокарты. При работе через RDP такого доступа у программы нет.
Чтобы заработало нужно эту библиотеку заменить аналогичной, но с полностью софтверным "рендерингом". Как называется соотв. пакет в дебианах/убунтах ищите сами, они его каждый раз меняют.
Я не Христос, рыбу не раздаю, но могу научить, как сделать удочку...
Аватара пользователя
asher
Опытный
Сообщения: 108
Зарегистрирован: 02 июл 2019, 12:56
Репутация: 2
Контактная информация:

Re: Linux CNC + RDP + share

Сообщение asher »

да похоже дело и правда в графике

Код: Выделить всё

operator1@debian:~$ glxgears
Error: couldn't get an RGB, Double-buffered visual

operator1@debian:~$ glxinfo
name of display: :10.0
Error: couldn't find RGB GLX visual or fbconfig
UAVpilot писал(а): ак называется соотв. пакет в дебианах/убунтах ищите сами, они его каждый раз меняют.
где искать и как искать? я даже не представляю
Ответить

Вернуться в «Прочие вопросы Linux»