./make_bootable_linux: Permission denied


Recommended Posts

Hello:

 

I downloaded the latest Unraid *.zip to test it on my box and see how it does.

Unfortunately, after following the pertinent instructions, I have not been able to do so.

 

The 2Gb SD card was formatted as FAT32 using `gparted` and a new UUID was written to it to make sure it had a unique one, just in case.

 

[root@devuan UNRAID]# ./make_bootable_linux
-bash: ./make_bootable_linux: Permission denied
[root@devuan UNRAID]#

 

To make sure it was not a Linux glitch, I tried to run `make_bootable.bat` as Administrator on a netbook running XPSP3.

 

Same result: even though I am logged into XP as Administrator, the system tells me that I can only run the bat file as Administrator.

 

I'd appreciate some insight into this problem as I am keen to try Unraid.

 

Best,

 

JHM

Link to comment
3 hours ago, jonathanm said:

You must use a USB memory stick, SD cards aren't supported.

Ahh ...

Had not seen that, must have missed it.

Where is that?

No matter.

 

16Gb USB2.0 Memory Stick - Label: UNRAID

Still no cigar ...

 

[root@devuan ~]# lsusb
Bus 006 Device 007: ID 0930:6544 Toshiba Corp. TransMemory-Mini / Kingston DataTraveler 2.0 Stick
--- snip ---
[root@devuan ~]# 

 

 

[root@devuan ~]# blkid
--- snip ---
/dev/sdf1: LABEL_FATBOOT="UNRAID" LABEL="UNRAID" UUID="580B-36F6" TYPE="vfat" PARTUUID="85dbbcb6-01"
[root@devuan ~]#

 

 

[root@devuan ~]# fdisk -l
--- snip ---
Disk /dev/sdf: 14.4 GiB, 15500574720 bytes, 30274560 sectors
Disk model: DataTraveler 2.0
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x85dbbcb6

Device     Boot Start      End  Sectors  Size Id Type
/dev/sdf1        2048 30273535 30271488 14.4G  b W95 FAT32
[root@devuan ~]#

 

 

[root@devuan ~]# dmesg
--- snip ---
[ 3854.692729] usb 6-5: new high-speed USB device number 7 using ehci-pci
[ 3854.851358] usb 6-5: New USB device found, idVendor=0930, idProduct=6544, bcdDevice= 1.00
[ 3854.851362] usb 6-5: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 3854.851365] usb 6-5: Product: DataTraveler 2.0
[ 3854.851368] usb 6-5: Manufacturer: Kingston
[ 3854.851370] usb 6-5: SerialNumber: 001BFC3653D2C161A905CFB9
[ 3854.851644] usb-storage 6-5:1.0: USB Mass Storage device detected
[ 3854.851747] scsi host8: usb-storage 6-5:1.0
[ 3855.873074] scsi 8:0:0:0: Direct-Access     Kingston DataTraveler 2.0 1.00 PQ: 0 ANSI: 4
[ 3855.873439] sd 8:0:0:0: Attached scsi generic sg6 type 0
[ 3855.873991] sd 8:0:0:0: [sdf] 30274560 512-byte logical blocks: (15.5 GB/14.4 GiB)
[ 3855.874614] sd 8:0:0:0: [sdf] Write Protect is off
[root@devuan ~]#

 

 

[root@devuan UNRAID]# ls
EFI-		   bzimage	   bzmodules.sha256  bzroot-gui.sha256	config		   make_bootable_linux	syslinux
bzfirmware	   bzimage.sha256  bzroot	     bzroot.sha256	license.txt	   make_bootable_mac
bzfirmware.sha256  bzmodules	   bzroot-gui	     changes.txt	make_bootable.bat  memtest
[root@devuan UNRAID]# 
[root@devuan UNRAID]# ./make_bootable_linux
-bash: ./make_bootable_linux: Permission denied
[root@devuan UNRAID]# 

 

I'd appreciate some insight into this problem as I am keen to try Unraid.

 

Thanks in advance,

 

JHM

 

 

 

Edited by Julius Henry Marx
Link to comment
2 hours ago, jonathanm said:

Did you try sudo ./make_bootable_linux

 

No.

I am running the script as root:

[root@devuan UNRAID]# whoami
root
[root@devuan UNRAID]# ./make_bootable_linux
-bash: ./make_bootable_linux: Permission denied
[root@devuan UNRAID]# 

 

Quote

... try copying the make bootable script to your home folder and make sure the executable bit is set ...

 

OK

 

[root@devuan UNRAID]# cp make_bootable_linux /home/groucho
[root@devuan UNRAID]# cd /home/groucho
[root@devuan groucho]# ls
 --- snip ---
make_bootable_linux
--- snip ---
[root@devuan groucho]# chmod u+x make_bootable_linux
[root@devuan groucho]#

 

 

groucho@devuan:~$ sudo ./make_bootable_linux
INFO: make_bootable_linux v1.3

INFO: The following device appears to be the unRAID USB Flash drive: /dev/sdf
Permit UEFI boot mode [Y/N]: n
INFO: unRAID USB Flash drive currently mounted to /media/groucho/UNRAID, copying temporary installer files to /tmp/UNRAID
umount: /media/groucho/UNRAID: target is busy.

To continue you may need to enter your admin password
sudo: /tmp/UNRAID/syslinux/make_bootable_linux.sh: command not found
groucho@devuan:~$

 

Just in case, running it as root from the /home folder has the same result:


 

[root@devuan groucho]# ./make_bootable_linux
INFO: make_bootable_linux v1.3

INFO: The following device appears to be the unRAID USB Flash drive: /dev/sdf
Permit UEFI boot mode [Y/N]: n
INFO: unRAID USB Flash drive currently mounted to /media/groucho/UNRAID, copying temporary installer files to /tmp/UNRAID
umount: /media/groucho/UNRAID: target is busy.

To continue you may need to enter your admin password
sudo: /tmp/UNRAID/syslinux/make_bootable_linux.sh: command not found
[root@devuan groucho]#

 

I fail to understand why root lacks permissions to run the script from the flash drive.

Still, something seems to be amiss.

 

Quote

Wording might be improved ?

 

Could be.

In these days when you can run a full fledged distribution with persistence/portability from an SD card, the difference may not be immediately obvious or slip by, like with me.

 

If I may suggest:

 

Quote

 

Prerequisites

--- snip ---

You will also need a quality USB flash device that is 1GB or larger.

Note that SD cards are not supported. For full hardware requirements, visit our product page.

 

Thanks in advance,

 

JHM

Link to comment
On 3/26/2021 at 5:35 PM, jonathanm said:

FAT32 doesn't support linux permissions.

 

Ahh ...

Forgotten tidbit.

Thanks for the reminder.

 

But running the script from the USB drive from an XPSP3 instalation while logged in as Administrator also gives me a similar error:

 

Make Bootable v1.5
ERROR - script must be run as administrator.

Right click and select 'Run as administrator'
or execute from an elevated command prompt.

Press any key to continue ...

 

As expected, it goes the same way if I open a terminal and execute 'make_bootable'.

 

Please advise.

 

Thanks in advance,

 

JHM

Edited by Julius Henry Marx
Additional data - spelling
Link to comment

Hello:

 

That did it.

 

groucho@devuan:~$ sudo bash ./make_bootable_linux
INFO: make_bootable_linux v1.3

INFO: The following device appears to be the unRAID USB Flash drive: /dev/sdf
INFO: Temporarily mounting unRAID USB Flash drive to /tmp/UNRAID_TMP_MOUNT
Permit UEFI boot mode [Y/N]: n
INFO: unRAID USB Flash drive currently mounted to /tmp/UNRAID_TMP_MOUNT, copying temporary installer files to /tmp/UNRAID

To continue you may need to enter your admin password
INFO: Installing Syslinux bootloader on /dev/sdf1
INFO: Writing MBR on /dev/sdf
0+1 records in
0+1 records out
447 bytes copied, 0.00528995 s, 84.5 kB/s

INFO: the Unraid OS USB Flash drive is now bootable and may be ejected.
groucho@devuan:~$

 

Thank you very much.

Best,

 

JHM

 

PS: Have a Happy Easter.

Link to comment
2 hours ago, Julius Henry Marx said:

Hello:

 

That did it.

 


groucho@devuan:~$ sudo bash ./make_bootable_linux
INFO: make_bootable_linux v1.3

INFO: The following device appears to be the unRAID USB Flash drive: /dev/sdf
INFO: Temporarily mounting unRAID USB Flash drive to /tmp/UNRAID_TMP_MOUNT
Permit UEFI boot mode [Y/N]: n
INFO: unRAID USB Flash drive currently mounted to /tmp/UNRAID_TMP_MOUNT, copying temporary installer files to /tmp/UNRAID

To continue you may need to enter your admin password
INFO: Installing Syslinux bootloader on /dev/sdf1
INFO: Writing MBR on /dev/sdf
0+1 records in
0+1 records out
447 bytes copied, 0.00528995 s, 84.5 kB/s

INFO: the Unraid OS USB Flash drive is now bootable and may be ejected.
groucho@devuan:~$

 

Thank you very much.

Best,

 

JHM

 

PS: Have a Happy Easter.


In case anyone else encounters this issue I’ve updated the relevant part of the “Getting Started” section of the online documentation (accessible via the manual link at the bottom of the unRaid GUI) with these steps so hopefully in the future other Linux users will also be successful :) 

  • Like 1
Link to comment
15 minutes ago, itimpi said:


In case anyone else encounters this issue I’ve updated the relevant part of the “Getting Started” section of the online documentation (accessible via the manual link at the bottom of the unRaid GUI) with these steps so hopefully in the future other Linux users will also be successful :) 

The make bootable script could probably be rewritten to solve this, and I'm sure it works as is on some distro's. For now though, it's a perfectly acceptable work around, and I didn't feel like spending the time to troubleshoot the script properly.

 

I think, but not sure, that the issue involves the way some distro's automatically mount inserted media, and unmounting manually before running the script solves that.

Link to comment

Just to add to the discussion:

 

I was tinkering with this yesterday as well, and ran into issues. After finding this thread, I tried the sequence of steps that jonathanm posted above and itimpi added to the wiki, and those worked fine. 2 notes:

  1. I found that if I forget to unmount the USB, then just running the script a 2nd time also did the trick. Seems like the 1st attempt unmounts the drive but then fails, and the 2nd attempt succeeds on the unmounted drive.
  2. I got the same results whether running the script as "sudo bash ./make_bootable_linux" or leaving bash out and running "sudo ./make_bootable_linux". That may not be the case for other distros, not sure.

But before I found this thread, I stumbled upon a different solution: editing the script slightly. For me the key was in the error that I repeatedly got when running the script:

sudo: /tmp/UNRAID/syslinux/make_bootable_linux.sh: command not found

 

JHM got this error at least once, and there are other posts that mention this error.

 

The error seems to be indicating that the script is failing because sudo sees the path /tmp/UNRAID/syslinux/make_bootable_linux.sh without a command, and doesn't know what to do with it. Or at least I think that is what is happening.

 

To fix it, I found the line below, towards then end of the script:

sudo /tmp/UNRAID/syslinux/make_bootable_linux.sh $TARGET

 

and added bash before sudo, to make it look like this:

sudo bash /tmp/UNRAID/syslinux/make_bootable_linux.sh $TARGET

 

The edited script will now complete without unmounting the USB. When running from the PC either "sudo bash ./make_bootable_linux" or "sudo ./make_bootable_linux" can be used. The script will also now run when launched from the USB itself, but only when using "sudo bash ./make_bootable_linux".

 

Of course, inserting bash into that line in the script assumes that the shell being used is bash, but that is a pretty fair assumption these days. Maybe there is a way to call the shell in the script without specifying bash, but I don't know how to do that.

 

Anywho, hope that helps.

  • Thanks 1
Link to comment
  • 3 months later...

You also need to make sure 

/tmp/UNRAID/syslinux/syslinux_linux

is executable (

chmod +x

). I would

chmod -R =X /tmp/UNRAID/syslinux

the whole folder.

 

Regardless of using FAT32, this worked for me. There REALLY need to be a dedicated page for this if there is not one. a Linux based distro not having an easy Linux based install. That just sounds weird.

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.