Forum


Notice to all users

We are migrating towards a new forum system located at community.teamspeak.com, as such this forum will become read-only on January 29, 2020

Results 1 to 14 of 14
  1. #1
    Join Date
    March 2005
    Location
    California - Bay Area
    Posts
    34

    [solved] Change Server OS

    I tried search but it errors every time.

    Currently running windows server, been happy with ts3 no problems. However I'm probably going to be changing to linux in the near future because a web app we're considering is apache dependent.

    Anyway, just wondering how you go about migrating settings/etc from a windows server to Linux.

    The only things I can think of would be to copy

    ts3server.sqlitedb
    and files/virtualserver_*

    Is it that simple?
    Last edited by RobbieB; April 27th, 2012 at 09:35 PM.

  2. #2
    Join Date
    May 2010
    Posts
    6,310
    Hello

    Normaly yes.
    But warning to the server and channel file path (files/virtualserver_*)
    On linux is "\" not "/" like windows.

    You must change that in your database
    - server_properties table
    - channel_properties table

  3. #3
    Join Date
    May 2007
    Location
    Eastern NC
    Posts
    1,801
    I've moved my server from Linux to my backup server on Windows without a problem. But I copied the entire TS3 folder from Linux to the windows machine, extracted the build server into that folder and started on windows without a problem.

    Only other thing to consider going from windows to linux is file permissions. I've heard of one person that had to "777" the files in the TS3 folder so the server could access and update them.

  4. #4
    Join Date
    March 2005
    Location
    California - Bay Area
    Posts
    34
    Florian, how do I edit the db file? Text editor like notepad++ or what? Also are we talking about 2 records that I need to edit or a bunch?

  5. #5
    Join Date
    January 2010
    Location
    Catalunya
    Posts
    2,350

  6. #6
    Join Date
    March 2005
    Location
    California - Bay Area
    Posts
    34
    So I'm finally trying to make this jump but so far no luck.

    I'm trying 2 different scenarios
    1) unzip new server download and copy over ts3server.sqlitedb

    When I use ts3server_startscript.sh it appears to start, but I can't connect, and if you look at the log it says instance error

    Code:
    [email protected]:teamspeak3-server_linux-amd64# ./ts3server_startscript.sh start
    Starting the TeamSpeak 3 server
    TeamSpeak 3 server started, for details please view the log file
    Note, I am using the same client/identity I had been using to connect to old server )

    Here's what the log shows

    Code:
    2012-04-24 20:50:43.711335|INFO    |ServerLibPriv |   | TeamSpeak 3 Server 3.0.5 (2012-04-23 04:46:12)
    2012-04-24 20:50:43.711805|INFO    |DatabaseQuery |   | dbPlugin name:    SQLite3 plugin, Version 2, (c)TeamSpeak Systems GmbH
    2012-04-24 20:50:43.711855|INFO    |DatabaseQuery |   | dbPlugin version: 3.7.3
    2012-04-24 20:50:43.712263|INFO    |DatabaseQuery |   | checking database integrity (may take a while)
    2012-04-24 20:50:43.747070|INFO    |SQL           |   | database updated successfully to revision: 18
    2012-04-24 20:50:43.752673|INFO    |SQL           |   | database updated successfully to revision: 19
    2012-04-24 20:50:43.755341|INFO    |DatabaseQuery |   | database busy, waiting for finishing index tasks, may take some time!
    2012-04-24 20:51:23.794306|INFO    |SQL           |   | updated permissions to version 14
    2012-04-24 20:51:23.815463|WARNING |Accounting    |   | Unable to find valid license key, falling back to limited functionality
    2012-04-24 20:51:23.823459|ERROR   |Accounting    |   | failed to register local accounting service
    2012-04-24 20:51:23.823504|ERROR   |ServerLibPriv |   | Server() error while starting servermanager, error: instance check error
    Code:
    2012-04-24 20:52:09.561185|INFO    |ServerLibPriv |   | TeamSpeak 3 Server 3.0.5 (2012-04-23 04:46:12)
    2012-04-24 20:52:09.561550|INFO    |DatabaseQuery |   | dbPlugin name:    SQLite3 plugin, Version 2, (c)TeamSpeak Systems GmbH
    2012-04-24 20:52:09.561587|INFO    |DatabaseQuery |   | dbPlugin version: 3.7.3
    2012-04-24 20:52:09.561900|INFO    |DatabaseQuery |   | checking database integrity (may take a while)
    2012-04-24 20:52:09.597727|WARNING |Accounting    |   | Unable to find valid license key, falling back to limited functionality
    2012-04-24 20:52:09.598540|ERROR   |Accounting    |   | failed to register local accounting service
    2012-04-24 20:52:09.598570|ERROR   |ServerLibPriv |   | Server() error while starting servermanager, error: instance check error
    2) ftp over entire folder teamspeak3-server_win64 and then copy over files from freshly unzipped linux download
    ts3server_linux_amd64
    ts3server_minimal_runscript.sh
    ts3server_startscript.sh

    With this method I i tried
    ./ts3server_startscript.sh start
    "2012-04-24 21:03:07.403561|CRITICAL|DatabaseQuery | | unable to load database plugin library "libts3db_sqlite3.so", halting!"\

    I also tried
    ./ts3server_minimal_runscript.sh start and I get the same error

    The actual log says this
    Code:
    2012-04-24 21:08:56.658950|INFO    |ServerLibPriv |   | TeamSpeak 3 Server 3.0.5 (2012-04-23 04:46:12)
    2012-04-24 21:08:56.659451|INFO    |DatabaseQuery |   | Please make sure you use the supplied ts3server_minimal_runscript.sh to run the server, or set LD_LIBRARY_PATH yourself
    2012-04-24 21:08:56.659501|CRITICAL|DatabaseQuery |   | unable to load database plugin library "libts3db_sqlite3.so", halting!
    Note, I had checked the db tables before copying according to florian_fr40, but the values already used a back slash "\"


    Ideally the simplest path is preferable, which is why I was hoping I could just copy over the DB. But ultimately I'll do whatever will work.

  7. #7
    Join Date
    January 2010
    Location
    Germany
    Posts
    2,029
    Check the FAQ about the Instance Error

    Moving the Server from Windows to Linux requires you to manually edit the Database as florian already mentioned, because Linux uses a forward Slash (/) as Directory Separator whereas Windows uses a Backslash (\).

    The Reason it works without any editing the other way around (moving from Linux to Windows) is because - unlike Linux - Windows is smart and recognizes forward Slashes as Directory Separators aswell.

    You would need to run the following SQL Commands on the Database:
    Code:
    UPDATE `channel_properties` SET `value` = REPLACE(`value`, '\\', '/') WHERE `ident` = 'channel_filepath';
    UPDATE `server_properties` SET `value` = REPLACE(`value`, '\\', '/') WHERE `ident` = 'virtualserver_filebase';
    once these Commands completed successfully you can use the Database on your Linux Server and should not have any Problems (provided of course you copied the whole files Directory from the Windows to the Linux Server)

  8. #8
    Join Date
    March 2005
    Location
    California - Bay Area
    Posts
    34
    I'm using SQL lite browser, when I paste and execute those two lines, SilentStorm, it says no errors but if I save close and reopen db (or even before I close) I still see no changes to the fields that should be changed.

  9. #9
    Join Date
    May 2007
    Location
    Eastern NC
    Posts
    1,801
    If using sql lite browser see this post

  10. #10
    Join Date
    March 2005
    Location
    California - Bay Area
    Posts
    34
    I didn't read the whole post but did you have a typo when you had a double backslash in the script? '\\'
    I just tried with single backslash and I think it worked, going to move the db over and double check.

    So yes, using sql lite browser, I made the changes with a single slash but still having the same issue

    Code:
    2012-04-25 21:28:17.027987|INFO    |ServerLibPriv |   | TeamSpeak 3 Server 3.0.5 (2012-04-23 04:46:12)
    2012-04-25 21:28:17.028508|INFO    |DatabaseQuery |   | dbPlugin name:    SQLite3 plugin, Version 2, (c)TeamSpeak Systems GmbH
    2012-04-25 21:28:17.028559|INFO    |DatabaseQuery |   | dbPlugin version: 3.7.3
    2012-04-25 21:28:17.028997|INFO    |DatabaseQuery |   | checking database integrity (may take a while)
    2012-04-25 21:28:17.064067|INFO    |SQL           |   | database updated successfully to revision: 18
    2012-04-25 21:28:17.069635|INFO    |SQL           |   | database updated successfully to revision: 19
    2012-04-25 21:28:17.072356|INFO    |DatabaseQuery |   | database busy, waiting for finishing index tasks, may take some time!
    2012-04-25 21:28:57.124135|INFO    |SQL           |   | updated permissions to version 14
    2012-04-25 21:28:57.142957|WARNING |Accounting    |   | Unable to find valid license key, falling back to limited functionality
    2012-04-25 21:28:57.143830|ERROR   |Accounting    |   | failed to register local accounting service
    2012-04-25 21:28:57.143871|ERROR   |ServerLibPriv |   | Server() error while starting servermanager, error: instance check error
    Then if I try to use the same db in the directory where I had simply copied over the entire TS directory


    I get this
    Code:
    2012-04-25 21:35:59.701053|INFO    |ServerLibPriv |   | TeamSpeak 3 Server 3.0.5 (2012-04-23 04:46:12)
    2012-04-25 21:35:59.726964|INFO    |DatabaseQuery |   | Please make sure you use the supplied ts3server_minimal_runscript.sh to run the server, or set LD_LIBRARY_PATH yourself
    2012-04-25 21:35:59.727036|CRITICAL|DatabaseQuery |   | unable to load database plugin library "libts3db_sqlite3.so", halting!
    doesn't matter if I use the minimal or startscript.
    Last edited by RobbieB; April 25th, 2012 at 10:41 PM.

  11. #11
    Join Date
    January 2010
    Location
    Germany
    Posts
    2,029
    Apparently using SQLite Browser you do not need to escape the Backslash, but you do in regular MySQL, so no the \\ is not actually a typo, a backslash is usually an escape Character which makes the following character be ignored.
    In any case if it works with a single backslash use a single one.

    The Error in the first Code Box I already answered in my Previous Post... read it again.

    what exactly did you do when you got the first output?
    and what did you do afterwards to get the second output?

    Also post the output of ls -alh and ldd libts3db_sqlite3.so

  12. #12
    Join Date
    March 2005
    Location
    California - Bay Area
    Posts
    34
    In attempt to start fresh, I unzipped the linux server archive.

    FTP'd over files dir and sqlitedb (after having changed the slashes using sqlite browser)

    Code:
    [email protected]:/home/robbieb/teamspeak3-server_linux-amd64# ls -alh
    total 6.9M
    drwxr-xr-x  7 robbieb robbieb 4.0K Apr 25 15:12 .
    drwxr-xr-x 10 robbieb robbieb 4.0K Apr 25 15:08 ..
    -rw-r--r--  1 robbieb robbieb  37K Apr 22 21:48 CHANGELOG
    -rw-r--r--  1 robbieb robbieb  24K Apr 22 21:48 LICENSE
    drwxr-xr-x  2 robbieb robbieb 4.0K Apr 22 21:48 doc
    drwxr-xr-x  3 robbieb robbieb 4.0K Apr 25 15:09 files
    -rwxr-xr-x  1 robbieb robbieb 213K Apr 22 21:48 libts3db_mysql.so
    -rwxr-xr-x  1 robbieb robbieb 1.1M Apr 22 21:48 libts3db_sqlite3.so
    drwxr-xr-x  2 robbieb robbieb 4.0K Apr 22 21:48 serverquerydocs
    drwxr-xr-x  4 robbieb robbieb 4.0K Apr 22 21:48 sql
    -rw-r--r--  1 robbieb robbieb 372K Apr 25 15:09 ts3server.sqlitedb
    -rwxr-xr-x  1 robbieb robbieb 5.2M Apr 22 21:48 ts3server_linux_amd64
    -rwxr-xr-x  1 robbieb robbieb  432 Apr 22 21:48 ts3server_minimal_runscript.sh
    -rwxr-xr-x  1 robbieb robbieb 2.8K Apr 22 21:48 ts3server_startscript.sh
    drwxr-xr-x  2 robbieb robbieb 4.0K Apr 22 21:48 tsdns
    
    [email protected]:/home/robbieb/teamspeak3-server_linux-amd64# ldd libts3db_sqlite3.so
            linux-vdso.so.1 =>  (0x00007fffd8987000)
            libstdc++.so.6 => /usr/lib/libstdc++.so.6 (0x00002af47e4e5000)
            libm.so.6 => /lib/libm.so.6 (0x00002af47e7f9000)
            libgcc_s.so.1 => /lib/libgcc_s.so.1 (0x00002af47ea7d000)
            libc.so.6 => /lib/libc.so.6 (0x00002af47ec94000)
            /lib64/ld-linux-x86-64.so.2 (0x00002af47dff4000)
    [email protected]:/home/robbieb/teamspeak3-server_linux-amd64#
    So then now I attempt to start
    Code:
    [email protected]:/home/robbieb/teamspeak3-server_linux-amd64# ./ts3server_startscript.sh start
    Starting the TeamSpeak 3 server
    TeamSpeak 3 server started, for details please view the log file
    
    [email protected]:/home/robbieb/teamspeak3-server_linux-amd64# vi logs/ts3server_2012-04-25__22_14_18.630646_0.log
    
    
    2012-04-25 22:14:18.630876|INFO    |ServerLibPriv |   | TeamSpeak 3 Server 3.0.5 (2012-04-23 04:46:12)
    2012-04-25 22:14:18.631246|INFO    |DatabaseQuery |   | dbPlugin name:    SQLite3 plugin, Version 2, (c)TeamSpeak Systems GmbH
    2012-04-25 22:14:18.631293|INFO    |DatabaseQuery |   | dbPlugin version: 3.7.3
    2012-04-25 22:14:18.631622|INFO    |DatabaseQuery |   | checking database integrity (may take a while)
    2012-04-25 22:14:18.655804|INFO    |SQL           |   | database updated successfully to revision: 18
    2012-04-25 22:14:18.659689|INFO    |SQL           |   | database updated successfully to revision: 19
    2012-04-25 22:14:18.661560|INFO    |DatabaseQuery |   | database busy, waiting for finishing index tasks, may take some time!
    2012-04-25 22:14:58.700083|INFO    |SQL           |   | updated permissions to version 14
    2012-04-25 22:14:58.716643|WARNING |Accounting    |   | Unable to find valid license key, falling back to limited functionality
    2012-04-25 22:14:58.717398|ERROR   |Accounting    |   | failed to register local accounting service
    2012-04-25 22:14:58.717428|ERROR   |ServerLibPriv |   | Server() error while starting servermanager, error: instance check error
    If there's a command I can perform in shell to demonstrate that the paths are properly changed I could do that.

  13. #13
    Join Date
    January 2010
    Location
    Germany
    Posts
    2,029
    Looks good so far.
    This is when you already copied the sqlite.db and the files directory I assume.

    The only thing left to do is follow the instructions in the FAQ Article I linked in my first post in this thread and your server should be fine.

  14. #14
    Join Date
    March 2005
    Location
    California - Bay Area
    Posts
    34
    Thanks, I didn't notice the url, ironically the first thing in your post, I'll try these steps shortly.

    mount -t tmpfs tmpfs /dev/shm

    Now, to make sure this mount is done automatically upon reboot edit the file /etc/fstab and add the line:

    tmpfs /dev/shm tmpfs defaults 0 0

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Similar Threads

  1. Replies: 0
    Last Post: September 29th, 2013, 11:48 AM
  2. Replies: 10
    Last Post: April 9th, 2012, 07:55 AM
  3. [Resolved] Devs You forgot the Force nick Change and Avatar Change
    By MajorThorn in forum Suggestions and Feedback
    Replies: 2
    Last Post: October 15th, 2011, 12:31 PM

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •