# 15.6 Application of Jails & /usr/ports/distfiles



## paulfrottawa (Dec 12, 2008)

I have to add this tar into my distfiles inside a jail. When I do it on the base OS I have no problems and the port builds.

When I put the file where I think it should go the port build is broken. I get this message 





> Found saved configuration for diablo-jdk-1.6.0.07.02_3


 just before it tells me to down load the file and put it in /usr/ports/distfiles. 

I cannot put it in disfiles from my jail and from outside the jail I can not seem to find the right place.

My jails are setup with this example in the Handbook.
______________________________________


----------



## SirDice (Dec 12, 2008)

It should go into /home/j/mroot/usr/ports/distfiles if you have a ports tree there too.


----------



## paulfrottawa (Dec 12, 2008)

In that dir I have these files 
Makefile        distinfo        files           pkg-descr       pkg-plist

I put the file in there again and tried to install it from my jail. The same stop happened. I then went back to my Base and looked into that directory again and I got this.


> i386# cd /home/j/mroot/usr/ports/distfiles
> /home/j/mroot/usr/ports/distfiles: Not a directory.


Thats weird because I had no problems copying the file into it or entering the directory before I tried installing it from my jail.

PS
I'm rebooting and trying again.


----------



## Ole (Dec 12, 2008)

When you extracted jails by handbook, the /usr/ports/distfiles must be empty (or not exist) 
You may populate new /usr/ports tree for each jail:


> jexec <jid> csh
> portsnap fetch extract


where is jid - Jail ID in "jls" output strings
and then mount through nullfs /usr/ports/distfiles to jail:



> mkdir -p /home/j/mroot/usr/ports/distfiles
> mount_nullfs /usr/ports/distfiles /home/j/mroot/usr/ports/distfiles



PS: for compile java inside jail, devfs must be present and accessible in jail


----------



## paulfrottawa (Dec 12, 2008)

Thanks it now installs fine.

However I have another problem because I wanted this for a jail. I can not find the right combination to put these file a /usr/ports/disfiles and get my jails to know its there.

Here another thread:
http://forums.freebsd.org/showthread.php?t=962

I tried what DocSlice suggested but those commands didn't work. I'm looking into more before I report there. I didn't want to swamp you with the jail too.


----------



## paulfrottawa (Dec 12, 2008)

No problems doing this:





> jexec 5 csh
> portsnap fetch extract



i386# jexec 5  csh
forum# portsnap fetch extract

However 

i386# mkdir -p /home/j/mroot/usr/ports/distfiles
mkdir: /home/j/mroot/usr/ports/distfiles: File exists


i386# mount_nullfs /usr/ports/distfiles /home/j/mroot/usr/ports/distfiles
mount_nullfs: /usr/home/j/mroot/usr/ports/distfiles: not a directory

can I remove this /home/j/mroot/usr/ports/distfiles  and remake the dir.


----------



## SirDice (Dec 12, 2008)

paulfrottawa said:
			
		

> Can I remove this /home/j/mroot/usr/ports/distfiles  and remake the dir.


Yes, it's currently a file when it should be a directory. Just remove that distfiles file and mkdir distfiles.


----------



## paulfrottawa (Dec 12, 2008)

That started the build. 
However:


> ===>    Verifying install for /usr/local/libdata/pkgconfig/xi.pc in /usr/ports/x11/libXi
> ===>  Vulnerability check disabled, database not found
> mkdir: /usr/ports/distfiles/xorg: Read-only file system
> *** Error code 1



I'll see if I can still build ports in the other jails.

No I can not.


> ===>  Vulnerability check disabled, database not found
> => nano-2.0.9.tar.gz doesn't seem to exist in /usr/ports/distfiles/.
> => /usr/ports/distfiles is not writable by you; cannot fetch.
> *** Error code 1



It work before.

No big deal however Im just playing with it.

______________________________________
I'm going to remove that dir. again use your previous


> mkdir -p /home/j/mroot/usr/ports/distfiles
> mount_nullfs /usr/ports/distfiles /home/j/mroot/usr/ports/distfiles


 example.

________________________________________
Na same problem


> mkdir: /usr/ports/distfiles/xorg: Read-only file system
> *** Error code 1


----------



## paulfrottawa (Dec 12, 2008)

To make things easier I'm going to rebuild my jails and we'll try again if you like. Its better to get these jail applications down.


----------



## paulfrottawa (Dec 13, 2008)

Turn out to be no problem. Inside the jail i could place the source into.

/usr/ports/distfiles
 cd /usr/ports/java/diablo-jdk16 && make install clean

_____________________________

This is a new install maybe I couldn't do this before. It seems like a no brainier.
My doing I suppose but there it is SOLVED.


----------

