13

I'm running an Ubuntu 12.04 VM and trying to convert an rpm file to a deb file. When I run sudo alien --to-deb --scripts oracle-xe-11.2.0-1.0.x86_64.rpm I get this error

dpkg-deb: error: control directory has bad permissions 777 (must be
> >=0755 and <=0775)

I tried sudo chmod 0755 oracle-xe-11.2.0-1.0.x86_64.rpm and sudo chmod -R 0755 on the directory containing the file and still get the error. What is the control directory?

Update Sorry for not realizing this before I am getting this error before the control directory error.

dpkg-shlibdeps: warning: /usr/lib/x86_64-linux-gnu/libXm.so.3 has an unexpected SONAME (libXm.so.4) 

dpkg-shlibdeps: error: no dependency information found for /usr/lib/x86_64-linux-gnu/libXm.so.3

I ran sudo apt-file search libXm.so.3 and it returned libmotif4: /usr/lib/x86_64-linux-gnu/libXm.so.3 so I downloaded libmotif4 and still got the error and then downloaded libmotif3 as well and got the error.

I ran sudo alien -g my.rpm and that generated oracle-xe-11.2.0 and oracle-xe-11.2.0.orig directories. I ran sudo chmod -R 0755 oracle-xe-11.2.0 and then ran debian/rules binary to generate the errors described above.

gary69
  • 321
  • 1
  • 4
  • 10
  • you are better off compiling from source then converting with alien. – Panther Dec 29 '15 at 22:20
  • is the source contained within the rpm file? – gary69 Dec 29 '15 at 22:27
  • no, it would be in the source rpm . – Panther Dec 29 '15 at 22:40
  • I highly suggest you run this on a .rpm system such as RHEL or Centos. You can try this - https://wiki.debian.org/DataBase/Oracle – Panther Dec 29 '15 at 22:45
  • Ok thank you, i came across that link before but it only has a .deb for oracle 10 and not 11. I tried on Fedora and faced a lot of issues with that and read that oracle isn't supported on Fedora https://community.oracle.com/thread/2279145?tstart=0. I'll try Centos – gary69 Dec 29 '15 at 23:02
  • The control directory is a temporary directory created by alien and eventually archived into the deb file. It shouldn't be created with permissions 777. Is your umask broken? What does `umask` show? – Gilles 'SO- stop being evil' Dec 30 '15 at 00:29
  • umask shows 0002 – gary69 Dec 30 '15 at 16:24

2 Answers2

10

If your control directory is on NTFS file system, you will get this error. In fact, your file system should support file permissions.

So the first advice is to copy your files somewhere in your home directory that has Ex4 or other file system.

teymourlouie
  • 208
  • 2
  • 5
0

I had the same problem on WSL (windows Subsystem for Linux)

In that case you have to create /etc/wsl.conf

With this content:

[automount]
 enabled = true
 root = /mnt/
 options = "metadata,umask=22,fmask=11"
 mountFsTab = false

I don't know the specifics of your VM.. but there might be a simlar solution.

Zibri
  • 513
  • 4
  • 9