PDA

View Full Version : 1: eval: ./displaylink-installer.sh: Permission denied


Jim2220
11-18-2015, 03:17 AM
Attempting to install DisplayLink driver for Xenarc 700TSU on Linux Mint 17.2. Here's what I get including a dump of the kernel version:

fred@fred-desktop ~/JimDisplaylink $ sudo ./displaylink-driver-1.0.138.run
[sudo] password for fred:
Verifying archive integrity... All good.
Uncompressing DisplayLink Linux Driver 1.0.138 100%
./displaylink-driver-1.0.138.run: 1: eval: ./displaylink-installer.sh: Permission denied
fred@fred-desktop ~/JimDisplaylink $ su
Password:
fred-desktop JimDisplaylink # ./displaylink-driver01.0.138.run
bash: ./displaylink-driver01.0.138.run: No such file or directory
fred-desktop JimDisplaylink # ./displaylink-driver-1.0.138.run
Verifying archive integrity... All good.
Uncompressing DisplayLink Linux Driver 1.0.138 100%
./displaylink-driver-1.0.138.run: 1: eval: ./displaylink-installer.sh: Permission denied
fred-desktop JimDisplaylink # ls -l
total 5892
-rwxr-xr-x 1 fred fred 6029830 Aug 20 11:12 displaylink-driver-1.0.138.run
fred-desktop JimDisplaylink # uname -r
3.16.0-38-generic
fred-desktop JimDisplaylink # cat /proc/sys/kernel/osrelease
3.16.0-38-generic
fred-desktop JimDisplaylink # lsb_release
No LSB modules are available.
fred-desktop JimDisplaylink #

It looks like the .run file starts but when it tries to invoke displaylink-installer.sh it some how does not have sufficient permissions. I don't know enough about Linux to understand why.

New additional output using bash -x to invoke the .run file

+ MS_Printf ' 100%% '
+ printf ' 100%% '
100% + test xy = xy
+ PATH=/usr/xpg4/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games
+ cd /tmp/selfgz1274024900
++ id -u
+ chown -R 1000 .
++ id -g
+ chgrp -R 1000 .
++ expr 12083 + 6017747
+ offset=6029830
+ test n = n
+ echo

+ cd /tmp/selfgz1274024900
+ res=0
+ test x./displaylink-installer.sh '!=' x
+ test xn = xy
+ eval ./displaylink-installer.sh install
++ ./displaylink-installer.sh install
./displaylink-driver-1.0.138.run: line 489: ./displaylink-installer.sh: Permission denied
+ res=126
+ test 126 -ne 0
+ test xn = xy
+ test n = n
+ cd /tmp
+ /bin/rm -rf /tmp/selfgz1274024900
+ eval true
++ true
+ exit 126

Jim2220
11-30-2015, 01:49 AM
This is additional output using bash -x to obtain more info:

+ MS_Printf ' 100%% '
+ printf ' 100%% '
100% + test xy = xy
+ PATH=/usr/xpg4/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games
+ cd /tmp/selfgz1274024900
++ id -u
+ chown -R 1000 .
++ id -g
+ chgrp -R 1000 .
++ expr 12083 + 6017747
+ offset=6029830
+ test n = n
+ echo

+ cd /tmp/selfgz1274024900
+ res=0
+ test x./displaylink-installer.sh '!=' x
+ test xn = xy
+ eval ./displaylink-installer.sh install
++ ./displaylink-installer.sh install
./displaylink-driver-1.0.138.run: line 489: ./displaylink-installer.sh: Permission denied
+ res=126
+ test 126 -ne 0
+ test xn = xy
+ test n = n
+ cd /tmp
+ /bin/rm -rf /tmp/selfgz1274024900
+ eval true
++ true
+ exit 126

It appears as though the .run file is using a script to do some preliminary work before it unsuccessfully attempts to invoke displaylink-installer.sh. How can it be that the .run file has insufficient permissions to invoke something contained within itself?

Jim2220
11-30-2015, 05:42 PM
Another clue. displaylink-driver-1.0.138.run is a collection of files which includes a canned script that (in my case unsuccessfully) invokes displaylink-installer.sh.
The .run file is created using a utility named makeself which is documented at

https://github.com/megastep/makeself

The makeself web page talks about an "embedded command" or "embedded script" which I think is displaylink-installer.sh.

Of possible interest, the web page contains a section beginning "Archives generated with Makeself 2.1 can be passed the following arguments:" for example --noexec --keep But note that the web page describes an option --verbose which is apparently not implemented by makeself (--confirm might be the equivalent of --verbose ? )

Corey O.
12-28-2016, 04:01 PM
I had the same problem. I think there's definitely a bug in the script. If you take a look at the script, you'll notice a number of options. Try executing the script with the '--keep' option. This will prevent it from deleting the directory with the uncompressed files when the script terminates.

This option fixed everything for me. If it does not for you, you can still attempt to go into the newly created directory and run ./displaylink-installer.sh manually.

rboerner
12-28-2016, 04:49 PM
The version of the driver you are trying to install seems to be the initial release and not the latest available here -> http://www.displaylink.com/downloads/ubuntu