URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID9
Нить номер: 6892
[ Назад ]

Исходное сообщение
"Удаленное управление"

Отправлено Adramelech , 30-Окт-07 13:16 
мне надо по xinetd выполнять несколько команд через виндовый интерфейс написаный на делфях
если кратко то знаю как создать службу в xinet.d например какой нибудь mounter следующего содержания
service usbmount
{
    socket_type     = stream
    wait            = no
    user            = root
    server          = /usr/sinhron/mounter
    disable         = no
    port            = xxxx
}

в этом каталоге /usr/sinhron/mounter хранится скрипт на перле, но я не очень хорошо знаю перл   в этом скрипте написано


#!/usr/bin/perl
system "mount /dev/sdb1 /mnt/fleshka";
exit 0;

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


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


Содержание

Сообщения в этом обсуждении
"Удаленное управление"
Отправлено vic , 30-Окт-07 14:26 
1. юзать самопальную службу не стоит.
2. используйте например ssh(d)+sudo для выполнения системных команд удаленно.
3. может проще автомаунт настроить?

ЗЫ указанный перл скрипт избыточен по самое немогу ибо мало того что требует перл так еще и шелл скорее всего тянет за собой. можно же просто вызвать команду mount /dev/sdb1 /mnt/fleshka без самого перла))


"Удаленное управление"
Отправлено NuINu , 30-Окт-07 14:29 
>[оверквотинг удален]
>делфях
>#!/usr/bin/perl
>system "mount /dev/sdb1 /mnt/fleshka";
>exit 0;
>
>но это только 1 команда, оно срабатывает сразу после подключения на заданый
>порт
>как организовать так что бы этот скрипт не сразу весь отрабатывался а
>на пример в програме есть 2 кнопки, смонтировать и размонтировать, он
>ожидал нажатия кнопки размонтировать...

а ненадо нифига ожидать, это можно так целый месяц прождать.


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

так дайте этот "поток команд" :)

my $cmd = <>;
chomp $cmd;
if($cmd eq "mount_usb") {
do_mount_usb();
} esif($cmd eq "umount_usb") {
  do_umount_usb();
}