nextcloud-desktop/doc/troubleshooting.rst
2014-05-15 11:11:13 +02:00

6.4 KiB

Appendix C: Troubleshooting

If the client fails to start syncing it basically can have two basic reasons: Either the server setup has a problem or the client has a bug. When reporting bugs, it is crucial to find out what part of the system causes the problem.

Identifying basic functionality problems

Perform a general ownCloud Server test

A very first check is to verify that you can log on to ownClouds web application. Assuming your ownCloud instance is installed at http://yourserver.com/owncloud, type http://yourserver.com/owncloud/ into your browsers address bar.

If you are not prompted to enter your user name and password, or if you see a red warning box on the page, your server setup is not correct or needs fixes. Please verify that your server installation is working correctly.

Ensure the WebDAV API is working

If all desktop clients fail to connect to ownCloud, but the access via the web interface works, the problem often is a mis-configuration of the WebDAV API.

The ownCloud client uses the built-in WebDAV access of the server content. Verify that you can log on to ownClouds WebDAV server. Assuming your ownCloud instance is installed at http://yourserver.com/owncloud, type http://yourserver.com/owncloud/remote.php/webdav into your browsers address bar.

If you are prompted, but the authentication fails even though the credentials your provided are correct, please ensure that your authentication backend is configured properly.

Use a WebDAV command line tool to test

A more sophisticated test is to use a WebDAV command line client and log into the ownCloud WebDAV server, such as a little app called cadaver, available on Linux. It can be used to further verify that the WebDAV server is running properly, for example by performing PROPFIND calls:

propget . called within cadaver will return some properties of the current directory and thus be a successful WebDAV connect.

Isolating other issues

If the sync result is unreliable, please ensure that the folder synced with ownCloud is not shared with other syncing apps.

Note

Syncing the same directory with ownCloud and other sync software such as Unison, rsync, Microsoft Windows Offline Folders or cloud services such as DropBox or Microsoft SkyDrive is not supported and should not be attempted. In the worst case, doing so can result in data loss.

If some files do not get take a look at the sync protocol. Some files are automatically automatically being ignored because they are system files, others get ignored because their file name contains characters that cannot be represented on certain file systems. See _ignored-files-label for details.

If you are operating your own server and use the local storage backend (the default), make sure that ownCloud has exclusive access to the directory.

Note

The data directory on the server is exclusive to ownCloud and must not be modified manually.

If you are using a different backend, you can try to exclude a bug in the backend by reverting to the local backend.

Logfiles

Doing effective debugging requires to provide as much as relevant logs as possible. The log output can help you with tracking down problem, and if you report a bug, you're advised to include the output.

Client Logfile

Start the client with --logwindow. That opens a window providing a view on the current log. It provides a Save button to let you save the log to a file.

You can also open a log window for an already running session, by simply starting the client again with this parameter. Syntax:

  • Windows: C:\Program Files (x86)\ownCloud\owncloud.exe --logwindow
  • Mac OS X: /Applications/owncloud.app/Contents/MacOS/owncloud --logwindow
  • Linux: owncloud --logwindow

It is also possible to directly log to a directory, which is an useful option in case the problem only happens ocassionally. In that case it is better to create a huge amount of data, as the log window has a limited buffer.

To write logs to disk, start the client with --logfile <file>, where <file is the file you want to log to, or --logdir <dir>, where <dir> is an existing directory. In case of --logdir, each sync run will create a new file. To limit the amount of data that accumulates over time, there is another useful parameter: --logexpire <hours>. If that is combined with --logdir` the client automatically erases log data in that directory that is older than the given expiry period.

For example, for a long running test where you intend to keep the log data of the last two days, this would be the command line:

` owncloud --logdir /tmp/owncloud_logs --logexpire 48`

ownCloud server Logfile

The ownCloud server maintains an ownCloud specific logfile as well. It can and must be enabled through the ownCloud Administration page. There you can adjust the loglevel. It is advisable to set it to a verbose level like Debug or Info.

The logfile can be viewed either in the web interface or can be found in the filesystem in the ownCloud server data dir.

Webserver Logfiles

Also, please take a look at your webservers error log file to check if there are problems. For Apache on Linux, the error logs usually can be found at /var/log/apache2. A file called error_log shows errors like PHP code problems. A file called access_log usually records all requests handled by the server. Especially the access_log is a very good debugging tool as the log line contains a lot of information of every request and it's result.

More information about the apache logging can be found at http://httpd.apache.org/docs/current/logs.html.

Core Dumps

In case of crashes of the client software, having a core dump helps to debug the issue tremendously.

The client is able to write a core dump in case of crashing on Linux and MacOSX. To enable that, the environment variable OWNCLOUD_CORE_DUMP has to be defined.

For example

` OWNCLOUD_CORE_DUMP=1 owncloud`

starts the client with core dumping enabled. Core dumps appear in the current working directory, and since they can be fairly large, it is important to have plenty of disk space when running with dumps enabled.

If a core dump file should be transfered back to the developers it should be compressed properly before.