Q: Is there any use for Oracle database port installation under Linux compat root ?

Chagin Dmitry chagin.dmitry at gmail.com
Sun Jul 27 17:43:02 UTC 2008

On Sun, 27 Jul 2008, Adrian Penisoara wrote:

> Hi,
> On Sun, Jul 27, 2008 at 1:15 PM, Alexander Leidinger <
> Alexander at leidinger.net> wrote:
>> Quoting "Adrian Penisoara" <ady at freebsd.ady.ro> (Sun, 27 Jul 2008 11:22:20
>> +0300):
>>> Hi,
>>>   I am working on a FreeBSD port for Oracle's XE database package[1]
>> (Linux
>>> binaries) and I stumbled upon some issues related to USE_LINUX_PREFIX.
>>> Before going any further trying to support (as an option) installing the
>>> Oracle XE directly under the /compat/linux hierarchy (like the
>>> database/linux-oracle-instantclient-* ports are doing), I have to ask ask
>>> around the following:
>>> (1) Is there any real need/benefit to have an Oracle DB installation
>> rooted
>>> under /compat/linux (e.g. /compat/linux/usr/lib/oracle/xe/...) ? Side
>> note:
>>> in this case all shell scripts will need to be ran under
>>> /compat/linux/bin/bash.
>>> (2) How does one deal with installing manual pages and shared files with
>>> USE_LINUX_PREFIX -- do they also have to go under /compat/linux ? Using
>>> ${MANPREFIX} as a template gives wrong results in this case...
>> A port has to install into LINUXPREFIX, if it is an infrastructure
>> port (no part has to go outside this location). It has to install into
>> the default location (PREFIX/LOCALBASE), if it is an enduser port.
>> That's the easy part.
> Good pointer, I was missing this bit. Thanks.
>> Now the classification, what is what, is the hard part. The linux
>> png/jpeg or whatever lib is for sure infrastructure. If this would land
>> in the default FreeBSD lib path, rest assured it would hurt. A linux
>> acroread port is an enduser application, a user will call it directly
>> to work with it. It also does not come with libs in the default FreeBSD
>> locations, so everything will be fine if it is installed in the default
>> location.
>> For the Oracle stuff I can imagine that it is a hard question. If it
>> doesn't put libs into a FreeBSD lib directory (a subdirectory of a lib
>> directory is ok, as it will not cause immediate problems), there are no
>> immediate objections to putting it into the default FreeBSD location
>> (and as the DBA as an enduser would use it, this would fit into the
>> description above). But we also have the rule that nothing is allowed
>> to be put into the basesystem (/usr/Y instead of /usr/local/Y). Think
>> about jails where the base is mounted read-only and only additional
>> programs are in a RW part.
>  In the default configuration the binaries (and I mean all of them!) would
> be placed under /usr/lib/oracle, since this is a hardcoded path in all
> places.
>  I will also offer a "WITH_BSDHIER" option which will root the installation
> into /usr/local/oracle and just make a symlink under /usr/lib. Should I
> rather make this the default ? ;)
>  There are no libraries (or other binaries for that fact) installed outside
> the Oracle hierarchy (this is the general strategy for Oracle RDBMS products
> at least). So I guess it very nicely fits into the "enduser" picture you
> describe above. I'm just wandering whether a /compat/linux rooted
> installation would make sense.
>  I am still interested to hear opinions from Oracle DBAs/users on this
> subject -- would you need this option ?


I think that ora DBAs will tell that the best place it 
and this user should have shell /compat/linux/bin/bash


>> In the end it comes down to what you are able to do and how hard the
>> software is to port. Maybe it is easy to install everything into
>> LINUXBASE and install a wrapper into LOCALBASE (/usr/local/bin/Y would
>> be a script with #!/compat/linux/bin/bash and start whatever is needed
>> to start /compat/linux/bin/Y). Maybe the installation of the software
>> allows to install into /usr/local/softwarename and you can make links
>> from /usr/local/bin/ to it.
>> The rules for this are strong suggestions. If it is possible to do,
>> do everything you can to follow the rules, if you don't know how to
>> make something follow the rules, ask specific questions on ports if
>> someone has in idea. If there's no idea, forget the rule and try to do
>> something as close as possible to the goal of the rule (and document
>> what/why).
>> Bye,
>> Alexander.
> Thank you for your time.
> Adrian.
> _______________________________________________
> freebsd-emulation at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-emulation
> To unsubscribe, send any mail to "freebsd-emulation-unsubscribe at freebsd.org"

Have fun!

More information about the freebsd-ports mailing list