System Check Error

alt=
@dancase
10 years ago
2 posts
I'm installing Jamroom 5 on a shared linux server where I do not have root privileges. The System Check throws an error finding the ImageMagick binary at /usr/bin/convert an another for /usr/bin/du, saying it is not executable.

I've checked both files. Both are marked executable (755) and both can be executed from within my space. Where's the problem?

D.
updated by @dancase: 10/25/15 10:17:59PM
douglas
@douglas
10 years ago
2,804 posts
Those are binary files and you'll want to contact your hosting provider to make sure you can run binary files on your server.


--

Douglas Hackney
Jamroom Team - Designer/Developer/Support
FAQ-Docs-Help Videos
alt=
@dancase
10 years ago
2 posts
douglas:
Those are binary files and you'll want to contact your hosting provider to make sure you can run binary files on your server.

I can run them without any problems--I host several sites on this space and run them regularly. I logged in via SSH with the username the site runs under and both files were executable in that session. I don't understand why Jamroom wouldn't be able to execute them.

D.
michael
@michael
10 years ago
7,794 posts
The function doing the checking is jrImage_check_imagick_install()

Its at:
/modules/jrImage/include.php

This is what the function contains:
function jrImage_check_imagick_install($notice = true){
    global $_conf;
    $magic = false;
    if (isset($_conf['jrImage_convert_binary']{1})) {
        $magic = $_conf['jrImage_convert_binary'];
    }
    else {
        if (is_file('/usr/bin/convert')) {
            $magic = '/usr/bin/convert';
        }
        elseif (is_file('/usr/local/bin/convert')) {
            $magic = '/usr/local/bin/convert';
        }
    }
    if (jrUser_is_master() && (!is_file($magic) || !is_executable($magic))) {
        if ($notice) {
            $show = jrCore_entity_string(str_replace(APP_DIR . '/', '', $magic));
            jrCore_set_form_notice('error', 'The imagemagick binary: ' . $show . ' is not executable!  Set permissions on the file to 755 or 555.');
        }
        return false;
    }
    return $magic;
}

so for some reason your server is not allowing that function to return TRUE which causes the error you're seeing.

If your imagemagic is at a different location, then you can define that location in
/data/config/config.php

by putting:

$_conf['jrImage_convert_binary'] = '/path/to/where/it/is';
if that suits your needs better.

Next step is to check with the server guys to know why that function is failing.

The function is just checking to see if the file exists and is executable and its finding the answer is 'no'

Tags