1. When making a thread, please tag your thread accordingly using the menu to the left of the textfield where you name your thread where applicable. Server Advertisements and Mod Releases should be contained to their respective subforums.

Server Help Server won't start on Debian

Discussion in 'Multiplayer' started by Rakoonial, Jun 29, 2018.

  1. Rakoonial

    Rakoonial Space Hobo

    The server files were pulled off of steam.
    This is the error :

    [Error] Fatal Exception caught: (StarException) Could not lock file ../storage/universe/universe.lock, Bad file descriptor ./starbound_server(_ZN4Star13StarExceptionC1EPKcNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE+0x66) [0x9e6f66] ./starbound_server(_ZN4Star13StarExceptionC2ENSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE+0x4b) [0x9e729b] ./starbound_server(_ZN4Star8LockFile4lockEl+0x438) [0x9ee2f8] ./starbound_server(_ZN4Star8LockFile11acquireLockERKNS_6StringEl+0x34) [0x9ee594] ./starbound_server(_ZN4Star14UniverseServerC2ERKNS_6StringE+0x8e7) [0x10142f7] ./starbound_server(main+0x1fc) [0x8bd30c] /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xf5) [0x7fa9b8ba0b45] ./starbound_server() [0x8c7cec] Caught at: ./starbound_server(_ZN4Star14fatalExceptionERKSt9exceptionb+0x42) [0x9e9262] ./starbound_server(main+0x7ef) [0x8bd8ff] /lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xf5) [0x7fa9b8ba0b45] ./starbound_server() [0x8c7cec]
     
  2. sagenth

    sagenth Pangalactic Porcupine

    Sorry for the necro.
    I've just gotten this same error though I'm running the server off archlinux.

    My setup involves putting the server files onto an NFS share that's mounted. That share is on a NAS that manages various other shares, but the idea is to avoid manually configuring samba (for my boss to use) and NFS (for me to use). Due to the files being accessible now only over the network (on this NAS) I've gotten this file lock error. NFS does support file locking, but presumably not the kind the devs are using (update please?).

    I have solved this problem though, for myself. Of course I already had to setup a custom unit file (service) for systemd to utilize.. it was just launching `/srv/starbound/linux/starbound_server` but I now need to run some shell script stuff to hack this thing to life. Here are both files for anybody else running into the same problem on a similar setup to mine.

    `/etc/systemd/system/starbound-server.service`
    Code:
    [Unit]
    Description=StarboundServer
    After=local-fs.target network.target multi-user.target
    
    [Service]
    WorkingDirectory=/srv/starbound/linux
    User=starbound
    Group=starbound
    Type=simple
    ExecStart=/srv/starbound/launch-server.sh
    RestartSec=15
    Restart=always
    KillSignal=SIGINT
    
    [Install]
    WantedBy=multi-user.target
    Don't forget to set execution permissions.
    `/srv/starbound/launch-server.sh`
    Code:
    #!/bin/bash
    
    cd /srv/starbound/storage/universe
    rm universe.lock
    ln -s /srv/do-not-delete-me universe.lock
    cd /srv/starbound/linux
    chown starbound:starbound * -R
    chmod g+rw * -R
    ./starbound_server
    You'll see I link `/srv/do-not-delete-me` (a file on a local device) to where the lock file goes. This linkage breaks upon a restart of the game server, so the shell script is a necessary evil to put the lock file back onto a local device to support whatever file locking is going on here. Just be sure to create that do-not-delete-me file, and set owner/group permissions.

    Cheers
     

Share This Page