Tar Archives Creation

Orabuntu-LXC uses several tar archives to deploy required files during installation.  Most of the archives are located in the "archives" subdirectory, as shown below.  There are also *.lst files which are used when building the archives as a manifest of the files to be included in that archive.  There are two code trees that have this set of archives:
  • "orabuntu" (Debian family, including Ubuntu and Pop!_OS)
  • "uekulele"  (RedHat family, including Oracle Linux, RedHat, CentOS, and Fedora)
The tar and related files for the "orabuntu" code tree are shown below.

ubuntu@ubuntu1810B:~/Downloads/orabuntu-lxc-6.11.4-beta/orabuntu/archives$ pwd

/home/ubuntu/Downloads/orabuntu-lxc-6.11.4-beta/orabuntu/archives

ubuntu@ubuntu1810B:~/Downloads/orabuntu-lxc-6.11.4-beta/orabuntu/archives$ ls -lrt
total 736
-rwxr-xr-x 1 ubuntu ubuntu   2029 May 28  2018 nameserver_copy.sh
-rw-r--r-- 1 ubuntu ubuntu  35148 May 28  2018 COPYING
-rwxr-xr-x 1 ubuntu ubuntu    437 Apr  7 09:31 docker.sh
-rwxr-xr-x 1 ubuntu ubuntu   2896 Apr  7 09:33 docker_install_orabuntu.sh
-rw-r--r-- 1 ubuntu ubuntu   2213 Apr 12 09:22 file-exceptions.txt
-rw-r--r-- 1 ubuntu ubuntu   1711 Apr 12 09:51 GNU3

-rw-r--r-- 1 ubuntu ubuntu  81920 Apr 12 14:36 dns-dhcp-cont.tar
-rw-r--r-- 1 ubuntu ubuntu 112640 Apr 12 14:36 dns-dhcp-host.tar
-rw-r--r-- 1 ubuntu ubuntu  71680 Apr 12 14:36 lxc-oracle-files.tar
-rw-r--r-- 1 ubuntu ubuntu 235520 Apr 12 14:36 scst-files.tar
-rw-r--r-- 1 ubuntu ubuntu  81920 Apr 12 14:36 tgt-files.tar
-rw-r--r-- 1 ubuntu ubuntu  81920 Apr 12 14:36 ubuntu-host.tar

-rw-r--r-- 1 ubuntu ubuntu    963 Apr 12 14:36 dns-dhcp-cont.lst
-rw-r--r-- 1 ubuntu ubuntu    963 Apr 12 14:36 dns-dhcp-host.lst
-rw-r--r-- 1 ubuntu ubuntu    415 Apr 12 14:37 lxc-oracle-files.lst
-rw-r--r-- 1 ubuntu ubuntu    577 Apr 12 14:37 scst-files.lst
-rw-r--r-- 1 ubuntu ubuntu    308 Apr 12 14:37 tgt-files.lst
-rw-r--r-- 1 ubuntu ubuntu   1134 Apr 12 14:38 ubuntu-host.lst

ubuntu@ubuntu1810B:~/Downloads/orabuntu-lxc-6.11.4-beta/orabuntu/archives$

The tar and related files for the "uekulele" code tree are shown below.

ubuntu@ubuntu1810B:~/Downloads/orabuntu-lxc-6.11.4-beta/uekulele/archives$ pwd

/home/ubuntu/Downloads/orabuntu-lxc-6.11.4-beta/uekulele/archives

ubuntu@ubuntu1810B:~/Downloads/orabuntu-lxc-6.11.4-beta/uekulele/archives$ ls -lrt

total 764
-rw-r--r-- 1 ubuntu ubuntu   1711 May 28  2018 GNU3
-rw-r--r-- 1 ubuntu ubuntu  35148 May 28  2018 COPYING
drwxr-xr-x 3 root   root     4096 Apr 12 12:57 rootfs
-rwxr-xr-x 1 ubuntu ubuntu   4438 Apr 13 13:31 nameserver_copy.sh
-rwxr-xr-x 1 ubuntu ubuntu   4657 Apr 13 13:31 docker_install_uekulele.sh
-rw-r--r-- 1 ubuntu ubuntu   2182 Apr 13 13:31 file-exceptions.txt

-rw-r--r-- 1 ubuntu ubuntu 102400 Apr 13 13:32 ubuntu-host.tar
-rw-r--r-- 1 ubuntu ubuntu  81920 Apr 13 13:32 tgt-files.tar
-rw-r--r-- 1 ubuntu ubuntu 235520 Apr 13 13:32 scst-files.tar
-rw-r--r-- 1 ubuntu ubuntu  71680 Apr 13 13:32 lxc-oracle-files.tar
-rw-r--r-- 1 ubuntu ubuntu 112640 Apr 13 13:32 dns-dhcp-host.tar
-rw-r--r-- 1 ubuntu ubuntu  81920 Apr 13 13:32 dns-dhcp-cont.tar

-rw-r--r-- 1 ubuntu ubuntu   1150 Apr 13 13:32 ubuntu-host.lst
-rw-r--r-- 1 ubuntu ubuntu    308 Apr 13 13:32 tgt-files.lst
-rw-r--r-- 1 ubuntu ubuntu    577 Apr 13 13:32 scst-files.lst
-rw-r--r-- 1 ubuntu ubuntu    415 Apr 13 13:32 lxc-oracle-files.lst
-rw-r--r-- 1 ubuntu ubuntu   1066 Apr 13 13:32 dns-dhcp-host.lst
-rw-r--r-- 1 ubuntu ubuntu    963 Apr 13 13:32 dns-dhcp-cont.lst

ubuntu@ubuntu1810B:~/Downloads/orabuntu-lxc-6.11.4-beta/uekulele/archives$

Then there is a common archive that is used by both orabuntu and uekulele as shown below.  Each product directory contains a shell script, a tar archive manifest file (*.lst), and a tar archive (*.tar) for that product.

ubuntu@ubuntu1810B:~/Downloads/orabuntu-lxc-6.11.4-beta/products$ pwd

/home/ubuntu/Downloads/orabuntu-lxc-6.11.4-beta/products

ubuntu@ubuntu1810B:~/Downloads/orabuntu-lxc-6.11.4-beta/products$ ls -lR
.:
total 16
drwxrwxr-x 2 ubuntu ubuntu 4096 Apr 12 09:41 no-product
drwxrwxr-x 2 ubuntu ubuntu 4096 Apr 12 09:41 oracle-db
drwxrwxr-x 2 ubuntu ubuntu 4096 Apr 13 04:05 oracle-gi-18c
drwxrwxr-x 2 ubuntu ubuntu 4096 Apr 12 09:40 workspaces

./no-product:
total 52
-rwxr-xr-x 1 ubuntu ubuntu  7779 May 28  2018 no-product
-rw-r--r-- 1 ubuntu ubuntu    27 May 28  2018 no-product.lst
-rw-r--r-- 1 ubuntu ubuntu 40960 May 28  2018 no-product.tar

./oracle-db:
total 104
-rwxr-xr-x 1 ubuntu ubuntu 20384 May 28  2018 oracle-db
-rw-r--r-- 1 ubuntu ubuntu   600 May 28  2018 oracle-db.lst
-rw-r--r-- 1 ubuntu ubuntu 81920 Apr  7 09:53 oracle-db.tar

./oracle-gi-18c:
total 100
-rwxr-xr-x 1 ubuntu ubuntu 23199 Apr 12 14:25 oracle-gi-18c
-rw-r--r-- 1 ubuntu ubuntu   600 May 28  2018 oracle-gi-18c.lst
-rw-r--r-- 1 ubuntu ubuntu 71680 Apr 13 04:04 oracle-gi-18c.tar

./workspaces:
total 68
-rwxr-xr-x 1 ubuntu ubuntu 11051 May 28  2018 workspaces
-rw-r--r-- 1 ubuntu ubuntu    96 May 28  2018 workspaces.lst
-rw-r--r-- 1 ubuntu ubuntu 51200 May 28  2018 workspaces.tar

ubuntu@ubuntu1810B:~/Downloads/orabuntu-lxc-6.11.4-beta/products$

A typical command to create one of these archives is shown below.  Different options are used depending on whether the archive is a full-path or relative-path archive.  Some Orabuntu-LXC archives are full-path archives as shown below.

ubuntu@ubuntu1810B:~/Downloads/orabuntu-lxc-6.11.4-beta/orabuntu/archives$ pwd

/home/ubuntu/Downloads/orabuntu-lxc-6.11.4-beta/orabuntu/archives

ubuntu@ubuntu1810B:~/Downloads/orabuntu-lxc-6.11.4-beta/orabuntu/archives$ tar -tvPf scst-files.tar

-rw-r--r-- orabuntu/orabuntu 11739 2018-04-24 12:33 /opt/olxc/home/scst-files/README
-rwxr-xr-x orabuntu/orabuntu 14196 2018-04-24 12:33 /opt/olxc/home/scst-files/create-scst-dkms.sh
-rwxr-xr-x orabuntu/orabuntu 11259 2018-04-24 14:07 /opt/olxc/home/scst-files/create-scst-dpkg.sh
-rwxr-xr-x orabuntu/orabuntu 25081 2018-04-24 13:14 /opt/olxc/home/scst-files/create-scst-install.sh
-rwxr-xr-x orabuntu/orabuntu 28860 2018-04-24 12:33 /opt/olxc/home/scst-files/create-scst-multipath.sh
-rwxr-xr-x orabuntu/orabuntu 15325 2018-04-24 12:33 /opt/olxc/home/scst-files/create-scst.sh
-rwxr-xr-x orabuntu/orabuntu 11554 2018-04-24 12:33 /opt/olxc/home/scst-files/create-scst-uninstall-dkms.sh
-rwxr-xr-x orabuntu/orabuntu  9191 2018-04-24 12:33 /opt/olxc/home/scst-files/create-scst-uninstall.sh
-rwxr-xr-x orabuntu/orabuntu   554 2018-04-24 12:33 /opt/olxc/home/scst-files/99-StorageOwner.rules.template
-rwxr-xr-x orabuntu/orabuntu  2900 2018-04-24 12:33 /opt/olxc/home/scst-files/vercomp
-rwxr-xr-x 1000/1000         49706 2019-04-11 01:01 /opt/olxc/home/scst-files/create-scst-target.sh
-rw-r--r-- 1000/1000          1711 2019-04-12 09:51 /opt/olxc/home/scst-files/GNU3
-rw-r--r-- 1000/1000         35148 2018-05-28 10:22 /opt/olxc/home/scst-files/COPYING

ubuntu@ubuntu1810B:~/Downloads/orabuntu-lxc-6.11.4-beta/orabuntu/archives$ cat scst-files.lst

/opt/olxc/home/scst-files/README
/opt/olxc/home/scst-files/create-scst-dkms.sh
/opt/olxc/home/scst-files/create-scst-dpkg.sh
/opt/olxc/home/scst-files/create-scst-install.sh
/opt/olxc/home/scst-files/create-scst-multipath.sh
/opt/olxc/home/scst-files/create-scst.sh
/opt/olxc/home/scst-files/create-scst-uninstall-dkms.sh
/opt/olxc/home/scst-files/create-scst-uninstall.sh
/opt/olxc/home/scst-files/99-StorageOwner.rules.template
/opt/olxc/home/scst-files/vercomp
/opt/olxc/home/scst-files/create-scst-target.sh
/opt/olxc/home/scst-files/GNU3
/opt/olxc/home/scst-files/COPYING

ubuntu@ubuntu1810B:~/Downloads/orabuntu-lxc-6.11.4-beta/orabuntu/archives$

In this example, the scst-files.tar archive is created with the following command as shown below.

tar -cvPf scst-files.tar -T scst-files.lst --numeric-owner





Comments