1

I use VirtualBox 6.0.6 on Windows 10 to work in Linux Mint. I use a USB drive with a programming environment on it (Portacle). It contains an executable file (portacle.desktop). I found myself unable to run the file. A window always popped up:

The application "portacle.desktop" has not been marked as trusted (executable).

Clicking "Launch Anyway" or "Mark as Trusted" achieved nothing. It turned out that the file option "Allow executing file as program" was turned off. However, when I turned it on, it immediately turned itself off. Owner was "mint", changing it resulted in "The group could not be changed. You do not have the permissions necessary to change the group of 'portacle.desktop'", even when running as root. Many people have had similar problems and asked here, and they were told to change attributes/permissions. Changing permissions didn't solve the problem. Changing the owner (even as root) gave the error:

chown: changing ownership of 'portacle.desktop': Operation not permitted

Trying to see (or change) the file attributes resulted in:

lsattr: Inappropriate ioctl for device while reading flags on portacle.desktop

Searching that, I found several people with the same problem, but their solutions were specific workarounds not applicable to my case. I also tried moving the files from the USB drive to the main drive. Besides bizarre problems like a folder suddenly being seen as 140 TB in size, the ioctl problem did not go away and everything went more or less along the same lines.

Full path of file: /media/mint/3424-9F51/real-lisp/portacle-linux/portacle.desktop

Output of mount | grep /dev:

root@mint:/media/mint/3424-9F51/real-lisp/portacle-linux# mount | grep /dev
udev on /dev type devtmpfs (rw,nosuid,relatime,size=1998648k,nr_inodes=499662,mode=755)
devpts on /dev/pts type devpts (rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000)
/dev/sr0 on /cdrom type iso9660 (ro,noatime,nojoliet,check=s,map=n,blocksize=2048)
/dev/loop0 on /rofs type squashfs (ro,noatime)
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev)
cgroup on /sys/fs/cgroup/devices type cgroup (rw,nosuid,nodev,noexec,relatime,devices)
mqueue on /dev/mqueue type mqueue (rw,relatime)
hugetlbfs on /dev/hugepages type hugetlbfs (rw,relatime,pagesize=2M)
/dev/sda1 on /media/mint/3424-9F51 type vfat (rw,nosuid,nodev,relatime,uid=999,gid=999,fmask=0022,dmask=0022,codepage=437,iocharset=iso8859-1,shortname=mixed,showexec,utf8,flush,errors=remount-ro,uhelper=udisks2)

Output of df:

Filesystem     1K-blocks    Used Available Use% Mounted on
udev             1998648       0   1998648   0% /dev
tmpfs             403956    1092    402864   1% /run
/dev/sr0         1927648 1927648         0 100% /cdrom
/dev/loop0       1845760 1845760         0 100% /rofs
/cow             2019772   49900   1969872   3% /
tmpfs            2019772       0   2019772   0% /dev/shm
tmpfs               5120       4      5116   1% /run/lock
tmpfs            2019772       0   2019772   0% /sys/fs/cgroup
tmpfs            2019772       4   2019768   1% /tmp
tmpfs             403952      28    403924   1% /run/user/999

Output of free:

              total        used        free      shared  buff/cache   available
Mem:        4039548     1201060     1581880      158384     1256608     2445112
Swap:             0           0           0

Output of du -ks /media/mint/3424-9F51/real-lisp/portacle-linux:

2496752 /media/mint/3424-9F51/real-lisp/portacle-linux

  • 1
    Is the portacle.desktop file still on the USB drive? Perhaps it is mounted with the "noexec" option to prevent execution of files. Please post the output of the command mount | grep /dev to let us see. Please also post the full path of that file. – Ned64 May 6 at 19:33
  • It's not just execution - basically any change except setting to read-only resets itself. I added what you recommended. – Kotlopou May 6 at 20:24
  • 1
    Thanks, I formatted the output you gave. The drive is a "vfat", i.e. FAT32 file system. It does not allow for ownership or other meta data useful and necessary on a Linux system. I suggest to copy the data and files over: cp -pr /media/mint/3424-9F51/real-lisp/portacle-linux /home/mint/ then try executing from there (assuming /home/mint exists here). – Ned64 May 6 at 21:22
  • The drive is not formatted with a filesystem which permits execution. The vfat filesystem has no Execute capability. – K7AAY May 6 at 23:59
  • @Ned64 Now it claims to have no space left on the drive. I allocated 16 GB for the VM, but there are only 2 GB of free space left when I log in. This doesn't depend on how much I allocated - it does the same at 8 or 12 GB. – Kotlopou May 7 at 5:38
0

The problem is that the executable on your USB drive cannot be executed with the current mount options (which are default options you did not set yourself). Also, your root/home file system within the virtual machine (VM) does not have enough space to copy over the files and execute them there.

Your options are therefore:

  1. Remount your USB drive to allow execution of files; and
  2. Increase your hard disk space to be able to copy over the program and its files

ad 1 - Your mount command shows that the USB drive is mounted at /media/mint/3424-9F51 and it includes the showexec option which prevents the execution. In this situation the command

mount -o remount,exec /media/mint/3424-9F51

(run as root, e.g. prepend sudo) should bring the desired result. Please note that the file system is still not a Linux file system and you may run into other problems like filename case sensitivity.

ad 2 - In order to resize the disk in the virtual machine you would need to

(a) resize the simulated hard disk (often a "qcow2" file) using the appropriate command from the host machine while the VM is shut down, e.g.

qemu-img resize /var/lib/libvirt/images/linux_mint.qcow2 +2GB

(again run as root, substitute your file name) which would add 2 GB virtual hard disk space. You need at least 2496752k-1969872k which is a little over 514 MB just to copy over the files but then the hard disk would be full; use at least 1 GB more, perhaps much more like 10 GB if you want to work with the program, save files and update the system in the future.

(b) resize the system partition of the simulated hard disk, again from outside the VM. Since I do not understand your unusual partitioning setup within the VM (with /cow as an overlay file system apparently on a simulated DVD) this would need more work to figure out.

(c) resize the file system on the partition we just resized - again this depends on your setup

(d) copy over the files to the newly increased root/home partition, e.g.

rsync -uav /media/mint/3424-9F51/real-lisp/portacle-linux /home/mint/

then find your files in /home/mint/portacle-linux and try working from there.

Alternatively to 2 (a) to (c) you could add an additional disk to your virtual machine and use this as a /home partition, thereby making space available to continue with (d). This would be easier to set up. Please let us know if you need instructions for that. (You would need to copy/move over all files from your previous /home unless it is OK to "start fresh".)

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.