мне надо по 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 кнопки, смонтировать и размонтировать, он ожидал нажатия кнопки размонтировать...
Если есть, то очень желательно поделится скриптом, который бы висел на даном порту и принимал поток команд что передается внешней програмой написаной на делфях...
1. юзать самопальную службу не стоит.
2. используйте например ssh(d)+sudo для выполнения системных команд удаленно.
3. может проще автомаунт настроить?ЗЫ указанный перл скрипт избыточен по самое немогу ибо мало того что требует перл так еще и шелл скорее всего тянет за собой. можно же просто вызвать команду mount /dev/sdb1 /mnt/fleshka без самого перла))
>[оверквотинг удален]
>делфях
>#!/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();
}