Dude for Linux

when we gonna get this beautyful piece of software port for linux? and also KISS .. I am using it with wine , but.. C`mon!!

use wine

M.

thanks maxi , I am using wine .

I used server on wine on linux machine. It sucked :frowning: Now i am using dude under ROS.
And Dude client under wine. “Tools → Web” doesn’t work :frowning:

Using wine absolutely sucks for a service. Has anyone posted a definitive guide to running dude as a service on Linux?

I really need a way of starting and stopping the dude server automatically like any other Linux daemon, without a login.

Same here, and think everywhere. Dude is not a typical interactive soft,
rather a data collecting manager and logger. Try to imagin the syslogd,
not running as root process and fire it up manually after each reboot
or failure…

Maybe about 90% of those who use mikrotik firmware and dude, don’t know how to use linux, so mikrotik is just ignoring them?

Hey. Whats up?
I'm not a linux/unix admin, but I founded a solution for Dude "As a Service" on FreeBSD.

Hope Linux guru will make it work on Linux.

  1. Install sofware (from port to be more clear to understand)
    cd /usr/ports/x11/xorg
    make; make install clean
    cd /usr/ports/emulators/wine/
    make; make install clean
    cd /usr/ports/x11-servers/xorg-vfbserver/
    make; make install clean
    /usr/ports/sysutils/monit/
    make; make install clean
    cd /usr/ports/ftp/wget/
    make; make install clean
  2. Get The Dude
    wget http://www.mikrotik.com/download/dude/3.5/dude-install-3.5.exe
  3. Install The Dude after starting xorg
    wine ~/dude-install-3.5.exe &
  4. Start it ones for first startup configuration.
    wine ~/.wine/drive_c/Program\ Files/Dude/dude.exe
    make sure you selected
  5. Enable Monit daemon in /etc/rc.conf
    monit_enable="YES"
  6. Make Xvfb startup script
    /usr/local/etc/rc.d/startXvfb.sh

#!/bin/sh
/usr/local/bin/Xvfb -shmem -screen 0 800x600x16 &

  1. Make script to start dude
    /root/dudestart.sh

#!/bin/sh
DISPLAY=:0 /usr/local/bin/wine /root/.wine/drive_c/Program\ Files/Dude/dude.exe &

:sunglasses: Make monit configuration /usr/local/etc/monitrc

Check if Virtual X-windows process started

check process Xvfb with pidfile /tmp/.X0-lock
start program = "/usr/local/etc/rc.d/startXvfb.sh"

Check If Dude started do not start if Xvfb is not runnig

check host dude with address 192.168.0.250
start program = "/root/dudestart.sh start"
if failed port 2210 then start
depends on Xvfb

  1. Correct file permitions
    chmod 600 /usr/local/etc/monitrc
    chmod 700 /root/dudestart.sh
    chmod 700 /usr/local/etc/rc.d/startXvfb.sh

  2. Test it
    /usr/local/etc/rc.d/monit start

try to connect to dude server from remote host

reboot and check The Dude is running

That is all.

:slight_smile:
Please tell us if it works under Linux.

Please read carefully the text:
1.
Manoloon: when we gonna get this beautyful piece of software port for linux?
and also KISS .. I am using it with wine …
The answer: use wine
2.
Tony (and me): Using wine absolutely sucks for a service. Has anyone posted
a definitive guide to running dude as a service on Linux?
The answer: Copy & paste a FreeBSD solution, again with wine…

Dear copypasters:
This is something same like we are exactly use (on Debian). But this is
not a pure solution, it is just a terrible and near unuseable workaround.

  • Dude workz on wine seriously only as root process (any pathwordless su’s,
    sudo’s, kdesu’s and more su’s are sucks).
  • There is a security problem to launch X as root with autologin of coarse.
    Due to this limitations and furthermore the poor long term stability of dude
    running on wine is the reason, why we are dream about “The dude server daemon”
    called by init.d on system startup.

Dude is a very nice piece of client-server software. What a pity that it can’t
be used in linux environment seriously…

Please make Dude for Linux. We want it.
RouterOS is based on linux and winbox and Dude is only for windows. It’s not good fact.
I hope in future Dude will be available for linux.
Sorry for my pure English.

more people use windows than linux, it’s a fact. we have very few requests like this, less than one per month. use Wine, it works perfect.

Normis,

The Dude server runs on RouterOS (in my case x86), and it runs good. How is it running (wine emulation, native linux port, etc…)?

Since Mikrotik RouterOS doesn’t use X11, and is 100% command-line, I’m curious as to how the Dude server is running “in the background”.

Thanks again for the software.

Yeah most people using windows for desktop, but most people using linux for servers. I have linux server and want to set up Dude. But wine sucks :frowning:
The Dude already works on linux native (on routerOS) and lets make Dude for linux and windows users can emulate it with wine analog on windows :smiley: Yes its possible http://www.andlinux.org/ and it works perfectly!

Hi,
we are running Dude server on Linux for some time and it works nice, but we are not able to get Web access working. Has anyone managed to do that?

We’ve tried that in Dude 3.6 and now with 4.0beta3 under Debian Etch with Wine 1.0.1 and Kubuntu 11.04 with Wine 1.2.2 but the result is the same. I’m getting this error in the log when enabling Web access: “UserApp: can not connect to dude server”. According to netstat the server doesn’t even open the listening port. It works under Windows of course. This should be easy to fix, so it would be very nice to see it working in Dude 4.0beta4.

Thank You very much.

Web-access under wine is also discussed here:
http://forum.mikrotik.com/t/dude-4-0beta2-web-access-under-wine/39781/1

Under Wine 1.2 on Centos 5 async ReadFileEx/WriteFileEx on named pipes used between Dude server and web-interface instances can return an error that Dude does not expect - ERROR_BROKEN_PIPE. In addition when ERROR_IO_PENDING is returned, Wine considers async read/write operation failed (returning FALSE), whereas Windows considers is completed successfully (returning TRUE)…

Anyway, long story short, it IS an easy fix. The following snippet can be used to handle ReadFileEx/WriteFileEx result for better Wine compatibility:

b = ReadFileEx(hFile, lpBuffer, nNumberOfBytesToRead, lpOverlapped, lpCompletionRoutine);
e = GetLastError();
if ((e == ERROR_BROKEN_PIPE) || (e == ERROR_IO_PENDING))
{
	b = TRUE;
	e = ERROR_IO_PENDING;
}

I’ve made a dll which hooks ReadFileEx and WriteFileEx once injected to dude.exe process and performs the above. This way web-instance handles named pipes correctly under Wine, opens the ports and accepts connections:

# netstat -nap | grep :22
tcp        0      0 0.0.0.0:2280                0.0.0.0:*                   LISTEN      11925/wineserver
tcp        0      0 0.0.0.0:2210                0.0.0.0:*                   LISTEN      11925/wineserver
tcp        0      0 0.0.0.0:2243                0.0.0.0:*                   LISTEN      11925/wineserver
tcp        0      0 0.0.0.0:2211                0.0.0.0:*                   LISTEN      11925/wineserver

There’s a caveat, Dude server and web-interface instances need to be started in sequence with sufficient delay, both with this injected dll for this to work, e.g.

wine loader.exe “dude.exe --server” fixpipe.dll
sleep 30
wine loader.exe “dude.exe --web” fixpipe.dll

This is cumbersome, I also hope they fix it in v.4b4.

PS For those who run dude as a service, for stopping the service

wine “dude.exe” --stop-server

command line can be used, which will gracefully shut down all running server instances.

+1 for Linux Dude !

it ROS not a port of linux? I’m not seeing why it would be that
difficult

I’m sick of my Dude server getting hacked and would love to
run it on Linux not virus feeding windows

  1. routeros has nothing to do with dude, they are not related
  2. why is your dude getting hacked and how exactly?

Answer 1: Normis, yes it does, as Dude “runs on top of” RouterOS, and RouterOS runs “on top of” linux. And so 900mhzdude’s (and mine above) question was about why Dude can’t run on ‘regular’ linux, as it runs on RouterOS, which is, underneith it, linux.

I guess we just want to know ‘why’ Dude doesn’t run on linux native. I know you guys are busy, but I’m not liking your non-relevant responses to some of these questions. Do you remember GRE debate for a few years? That only made people more angry because we weren’t getting ‘real’ responses from support, but rather getting answers making us users feel like it’s our fault, or that we shouldn’t be using such a standard protocol in networking equipment.

Just some thoughts.

Just wait until someone else makes something like Dude and people will flock over to that. Not getting support for obvious things such as what’s being discussed (understandably for a free product, but why make it at all?), not being back to back up one version or restore another. Frankly I’m still wondering why the pings always come back <1 or a multiple of 10. I see <1ms or 10ms on almost every ping. I know most of the network is reachable in 2-6ms with 32 byte pings.

remember GRE debate for a few years? That only made people more angry because we weren’t getting ‘real’ responses from support, but rather getting answers making us users feel like it’s our fault, or that we shouldn’t be using such a standard protocol in networking equipment.

GRE is natively supported in RouterOS, by the way.

What is a “real” response? At the time we didn’t know if we will support it or not.