Mineos-node on FreeBSD - Can't create new server

Hello all,

I am running into an issue where I can’t create a new server using MineOS-node on FreeBSD (FreeNAS 9.3 jail). I have managed to install MineOS-node using the latest stable node v4 package (see my other post for that). I can log in, download jar files and go through the motions of creating a new server, and when I click the “Create New Server” button I am taken back to the dashboard as if everything worked fine. However, there is no entry in the “Currently Selected Server” dropdown. I can edit the newly “created” server because the “Server Settings” sidebar shows up, and I can change some of the values (I can choose a profile and change the memory settings). But I cannot select a runnable jar, and the “server.properties” page is blank. Looking on the filesystem, no folder is created for the new server. It ale appears that the server is crashing (silently, since I get no feedback in my web browser) when I click “Create new Server”. See log files below. Any help with this would be appreciated. I’m new to MineOS and would like to start by using the future looking release (node) rather than legacy (python).

Thanks!

mineos.log

{"level":"info","message":"Starting up server, using commit: 970cc7a all mojang profiles appear now\n","timestamp":"2015-11-04T20:49:48.875Z"}
{"level":"info","message":"[WEBUI] ianc connected from 172.16.100.240","timestamp":"2015-11-04T20:50:29.687Z"}
{"level":"info","message":"[WEBUI] Downloading official profiles.","timestamp":"2015-11-04T20:50:29.967Z"}
{"command":"create","server_name":"test001","properties":{"generate-structures":true,"level-seed":"dance","difficulty":"0","gamemode":"0"},"level":"info","message":"[WEBUI] Received emit command from 172.16.100.240:ianc","timestamp":"2015-11-04T20:51:20.843Z"}
{"date":"Wed Nov 04 2015 15:51:20 GMT-0500 (EST)","process":{"pid":67093,"uid":0,"gid":0,"cwd":"/usr/local/games/minecraft","execPath":"/usr/local/bin/node","version":"v4.2.1","argv":["/usr/local/bin/node","/usr/local/games/minecraft/webui.js"],"memoryUsage":{"rss":129163264,"heapTotal":76664576,"heapUsed":50375824}},"os":{"loadavg":[1.13916015625,0.89892578125,0.84130859375],"uptime":5272336},"trace":[{"column":null,"file":null,"function":"TypeError","line":null,"method":null,"native":true},{"column":18,"file":"fs.js","function":"Object.fs.readdirSync","line":813,"method":"fs.readdirSync","native":false},{"column":17,"file":"/usr/local/games/minecraft/mineos.js","function":"Object.mineos.server_pids_up","line":54,"method":"mineos.server_pids_up","native":false},{"column":27,"file":"/usr/local/games/minecraft/mineos.js","function":"self.property","line":1149,"method":"property","native":false},{"column":10,"file":"/usr/local/games/minecraft/mineos.js","function":"self.verify","line":1338,"method":"verify","native":false},{"column":23,"file":"/usr/local/games/minecraft/node_modules/async/lib/async.js","function":null,"line":731,"method":null,"native":false},{"column":37,"file":"/usr/local/games/minecraft/node_modules/async/lib/async.js","function":null,"line":172,"method":null,"native":false},{"column":13,"file":"/usr/local/games/minecraft/node_modules/async/lib/async.js","function":null,"line":689,"method":null,"native":false},{"column":13,"file":"/usr/local/games/minecraft/node_modules/async/lib/async.js","function":"iterate","line":265,"method":null,"native":false},{"column":29,"file":"/usr/local/games/minecraft/node_modules/async/lib/async.js","function":null,"line":277,"method":null,"native":false}],"stack":["TypeError: path must be a string","    at TypeError (native)","    at Object.fs.readdirSync (fs.js:813:18)","    at Object.mineos.server_pids_up (/usr/local/games/minecraft/mineos.js:54:17)","    at self.property (/usr/local/games/minecraft/mineos.js:1149:27)","    at self.verify (/usr/local/games/minecraft/mineos.js:1338:10)","    at /usr/local/games/minecraft/node_modules/async/lib/async.js:731:23","    at /usr/local/games/minecraft/node_modules/async/lib/async.js:172:37","    at /usr/local/games/minecraft/node_modules/async/lib/async.js:689:13","    at iterate (/usr/local/games/minecraft/node_modules/async/lib/async.js:265:13)","    at /usr/local/games/minecraft/node_modules/async/lib/async.js:277:29"],"level":"error","message":"uncaughtException: path must be a string","timestamp":"2015-11-04T20:51:20.849Z"}
{"level":"info","message":"Starting up server, using commit: 970cc7a all mojang profiles appear now\n","timestamp":"2015-11-04T20:51:25.260Z"}

supervisord.log

2015-11-04 15:49:47,068 CRIT Set uid to user 0
2015-11-04 15:49:47,096 INFO RPC interface 'supervisor' initialized
2015-11-04 15:49:47,097 CRIT Server 'unix_http_server' running without any HTTP authentication checking
2015-11-04 15:49:47,098 INFO daemonizing the supervisord process
2015-11-04 15:49:47,098 INFO supervisord started with pid 67077
2015-11-04 15:49:48,100 INFO spawned: 'mineos' with pid 67093
2015-11-04 15:49:49,888 INFO success: mineos entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)
2015-11-04 15:51:23,872 INFO exited: mineos (exit status 1; not expected)
2015-11-04 15:51:24,874 INFO spawned: 'mineos' with pid 69220
2015-11-04 15:51:26,273 INFO success: mineos entered RUNNING state, process has stayed up for > than 1 seconds (startsecs)

Did you install this manually (via instructions in the wiki) or through the plugin?

If you check /etc/mineos.conf or /usr/local/etc/mineos.conf, which exists, and what are the contents?

I used the instructions from the wiki here.

Here are the contents of /etc/mineos.conf (/usr/local/etc/mineos.com does not exist).

use_https = true
socket_host = '0.0.0.0'
socket_port = 8443
base_directory = '/var/games/minecraft'

ssl_private_key = '/etc/ssl/certs/mineos.key'
ssl_certificate = '/etc/ssl/certs/mineos.crt'
ssl_cert_chain = ''

Figured it out… The Wiki for MineOS-node says to mount the linprocfs in /usr/compat/linux (which is where it should go). For some reason I thought MineOS wanted it somewhere else (can’t remember where now…). Anyways, looks like MineOS-node is up and running. Sorry. And thanks! :smile: