Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

"Permission Denied" #94

Closed
ghost opened this issue Apr 14, 2015 · 3 comments
Closed

"Permission Denied" #94

ghost opened this issue Apr 14, 2015 · 3 comments
Labels

Comments

@ghost
Copy link

ghost commented Apr 14, 2015

Ubuntu 14.04.1 i386 Customizer 4.1.0 ubuntu-14.04.1-desktop-i386.iso

sudo customizer-gui

After selecting an ISO in the GUI, it failed to finish the process.

user@PC:~$ sudo customizer-gui 
[sudo] password for user: 
  => Creating: /media/user/6D8FA25A5B63E7DA/customizer/FileSystem
  => Creating: /media/user/6D8FA25A5B63E7DA/customizer/ISO
  => Creating mount directory
  => Mounting ISO: /media/user/6D8FA25A5B63E7DA/ubuntu-14.04.1-desktop-i386.iso
  => Checking ISO
  => Unsquashing filesystem
Parallel unsquashfs: Using 1 processor

168941 inodes (177365 blocks) to write

[=========================================================-] 177365/177365 100%
created 107368 files
created 15347 directories
created 61462 symlinks
created 82 devices
created 0 fifos
  => Checking architecture
Traceback (most recent call last):
  File "/usr/sbin/customizer-gui", line 196, in worker_stopped
    setup_gui()
  File "/usr/sbin/customizer-gui", line 119, in setup_gui
    prepare=False, mount=False, output=True)
  File "/usr/share/customizer/lib/misc.py", line 179, in chroot_exec
    out = get_output(command)
  File "/usr/share/customizer/lib/misc.py", line 72, in get_output
    pipe = subprocess.Popen(command, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
  File "/usr/lib/python2.7/subprocess.py", line 710, in __init__
    errread, errwrite)
  File "/usr/lib/python2.7/subprocess.py", line 1327, in _execute_child
    raise child_exception
OSError: [Errno 13] Permission denied
Traceback (most recent call last):
  File "/usr/sbin/customizer-gui", line 196, in worker_stopped
    setup_gui()
  File "/usr/sbin/customizer-gui", line 119, in setup_gui
    prepare=False, mount=False, output=True)
  File "/usr/share/customizer/lib/misc.py", line 179, in chroot_exec
    out = get_output(command)
  File "/usr/share/customizer/lib/misc.py", line 72, in get_output
    pipe = subprocess.Popen(command, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
  File "/usr/lib/python2.7/subprocess.py", line 710, in __init__
    errread, errwrite)
  File "/usr/lib/python2.7/subprocess.py", line 1327, in _execute_child
    raise child_exception
OSError: [Errno 13] Permission denied
@ghost
Copy link
Author

ghost commented Apr 14, 2015

@LYF610400210
Hi, there! Can I confirm further? Looks like extracting ISO is successful, but copying isn't.

I think Customizer doesn't have permission to extract your ISO to your target directory i.e. external media or shared storage media. Where is your target directory?

P.S.: "target directory" means "working directory"

P.S.S: On second thought, it may not be working directory fault. But something is preventing Customizer from copying the extracted ISO to the working directory.

UPDATED 2015.04.15 I tried with various local working directories, including a non-existent ones, on the host machine but all could extract and copy ISO properly. So I estimate this issue has something to do with read/write permission on external storage media.

@ghost
Copy link
Author

ghost commented Apr 15, 2015

Yes, it is an external drive.

user@PC:~$ sudo cat /etc/customizer.conf
[preferences]
work_dir = /media/user/6D8FA25A5B63E7DA/customizer
locales = C
resolution = 1024x768
compression = gzip
vram = 512

[saved]
iso = /media/user/6D8FA25A5B63E7DA/ubuntu-14.04.1-desktop-i386.iso
deb = /media/user/6D8FA25A5B63E7DA/Lios_1.9.2_all.deb
hook = 
user@PC:~$ mount
/dev/sda1 on / type ext4 (rw,errors=remount-ro)
proc on /proc type proc (rw,noexec,nosuid,nodev)
sysfs on /sys type sysfs (rw,noexec,nosuid,nodev)
none on /sys/fs/cgroup type tmpfs (rw)
none on /sys/fs/fuse/connections type fusectl (rw)
none on /sys/kernel/debug type debugfs (rw)
none on /sys/kernel/security type securityfs (rw)
udev on /dev type devtmpfs (rw,mode=0755)
devpts on /dev/pts type devpts (rw,noexec,nosuid,gid=5,mode=0620)
tmpfs on /run type tmpfs (rw,noexec,nosuid,size=10%,mode=0755)
none on /run/lock type tmpfs (rw,noexec,nosuid,nodev,size=5242880)
none on /run/shm type tmpfs (rw,nosuid,nodev)
none on /run/user type tmpfs (rw,noexec,nosuid,nodev,size=104857600,mode=0755)
none on /sys/fs/pstore type pstore (rw)
binfmt_misc on /proc/sys/fs/binfmt_misc type binfmt_misc (rw,noexec,nosuid,nodev)
systemd on /sys/fs/cgroup/systemd type cgroup (rw,noexec,nosuid,nodev,none,name=systemd)
gvfsd-fuse on /run/user/1000/gvfs type fuse.gvfsd-fuse (rw,nosuid,nodev,user=user)

/dev/sdb1 on /media/user/6D8FA25A5B63E7DA type fuseblk (rw,nosuid,nodev,allow_other,default_permissions,blksize=4096)

gvfsd-fuse on /root/.gvfs type fuse.gvfsd-fuse (rw,nosuid,nodev)

@ghost
Copy link
Author

ghost commented Apr 15, 2015

@LYF610400210
Right, that explains most of the story. Your external storage media is using fuseblk type, which refers to NTFS filesystem. This is particularly used in the environment of Windows operating system.

In my case, I have an external hard disk using vfat type, which refers to FAT32 filesystem. I did manage to reproduce similar error OSError: [Errno 13] Permission denied and the extract had failed worse than NTFS filesystem (it hungs and never complete).

The workaround? Two suggestions:

  1. work on the local working directories, on the same storage media as host system, given that you still have sufficient free space i.e. at least twice as much as your ISO file size you want to remaster.
  2. still want to use your external storage media? You can, but the media must be formatted^ to at least ext3 filesystem and it will work fine (I have tested this myself)

^ WARNING Format would mean all data will be lost, so make sure to backup data first!

Above all, this issue arises because of using non-Linux/Unix compatible filesystem, to remaster a Linux/Unix system--which doesn't sound approriate at first place.

If there is no further issue, you can close this.

@ghost ghost added the Invalid label Apr 15, 2015
@ghost ghost closed this as completed Apr 16, 2015
This issue was closed.
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
Projects
None yet
Development

No branches or pull requests

0 participants