diff options
Diffstat (limited to 'tar')
-rw-r--r-- | tar/.footprint | 11 | ||||
-rw-r--r-- | tar/.md5sum | 4 | ||||
-rw-r--r-- | tar/Pkgfile | 21 | ||||
-rw-r--r-- | tar/Pkgfile.old | 23 | ||||
-rw-r--r-- | tar/rmt.8 | 223 | ||||
-rw-r--r-- | tar/tar-rootp.patch | 12 | ||||
-rw-r--r-- | tar/tar.1 | 325 |
7 files changed, 619 insertions, 0 deletions
diff --git a/tar/.footprint b/tar/.footprint new file mode 100644 index 0000000..d08b802 --- /dev/null +++ b/tar/.footprint @@ -0,0 +1,11 @@ +drwxr-xr-x root/root bin/ +-rwxr-xr-x root/root bin/tar +drwxr-xr-x root/root usr/ +drwxr-xr-x root/root usr/lib/ +drwxr-xr-x root/root usr/lib/tar/ +-rwxr-xr-x root/root usr/lib/tar/rmt +drwxr-xr-x root/root usr/man/ +drwxr-xr-x root/root usr/man/man1/ +-rw-r--r-- root/root usr/man/man1/tar.1.gz +drwxr-xr-x root/root usr/man/man8/ +-rw-r--r-- root/root usr/man/man8/rmt.8.gz diff --git a/tar/.md5sum b/tar/.md5sum new file mode 100644 index 0000000..a4f6d26 --- /dev/null +++ b/tar/.md5sum @@ -0,0 +1,4 @@ +6a56bc4bb64fc9bb48d28e66a30ad937 rmt.8 +1b3b391087f4baf70ccad8bd92e4db11 tar-1.25.tar.xz +e4038247fa36a51d2784e163f58f6e38 tar-rootp.patch +7c2293e8c051ade56db42daf2279e5eb tar.1 diff --git a/tar/Pkgfile b/tar/Pkgfile new file mode 100644 index 0000000..708857c --- /dev/null +++ b/tar/Pkgfile @@ -0,0 +1,21 @@ +description="GNU tar" +packager="" +maintainer="CRUX System Team, core-ports at crux dot nu" +url="http://www.gnu.org/software/tar/tar.html" +depends=() + +name=tar +version=1.25 +release=1 +source=(http://ftp.gnu.org/gnu/tar/tar-1.25.tar.xz tar-rootp.patch tar.1 rmt.8) +build () +{ + cd $name-$version; + patch -p1 -i $SRC/$name-rootp.patch; + ./configure --prefix= --libexec=/usr/lib/tar --disable-nls FORCE_UNSAFE_CONFIGURE=1; + make; + make DESTDIR=$PKG install; + rm -rf $PKG/{sbin,share}; + install -D -m 644 $SRC/tar.1 $PKG/usr/man/man1/tar.1; + install -D -m 644 $SRC/rmt.8 $PKG/usr/man/man8/rmt.8 +} diff --git a/tar/Pkgfile.old b/tar/Pkgfile.old new file mode 100644 index 0000000..7f3653f --- /dev/null +++ b/tar/Pkgfile.old @@ -0,0 +1,23 @@ +# Description: GNU tar +# URL: http://www.gnu.org/software/tar/tar.html +# Maintainer: CRUX System Team, core-ports at crux dot nu + +name=tar +version=1.25 +release=1 +source=(http://ftp.gnu.org/gnu/$name/$name-$version.tar.xz \ + $name-rootp.patch tar.1 rmt.8) + +build() { + cd $name-$version + patch -p1 -i $SRC/$name-rootp.patch + ./configure --prefix= \ + --libexec=/usr/lib/tar \ + --disable-nls \ + FORCE_UNSAFE_CONFIGURE=1 + make + make DESTDIR=$PKG install + rm -rf $PKG/{sbin,share} + install -D -m 644 $SRC/tar.1 $PKG/usr/man/man1/tar.1 + install -D -m 644 $SRC/rmt.8 $PKG/usr/man/man8/rmt.8 +} diff --git a/tar/rmt.8 b/tar/rmt.8 new file mode 100644 index 0000000..ba709c9 --- /dev/null +++ b/tar/rmt.8 @@ -0,0 +1,223 @@ +.\" Copyright (c) 1983, 1991, 1993 +.\" The Regents of the University of California. All rights reserved. +.\" +.\" Redistribution and use in source and binary forms, with or without +.\" modification, are permitted provided that the following conditions +.\" are met: +.\" 1. Redistributions of source code must retain the above copyright +.\" notice, this list of conditions and the following disclaimer. +.\" 2. Redistributions in binary form must reproduce the above copyright +.\" notice, this list of conditions and the following disclaimer in the +.\" documentation and/or other materials provided with the distribution. +.\" 3. All advertising materials mentioning features or use of this software +.\" must display the following acknowledgement: +.\" This product includes software developed by the University of +.\" California, Berkeley and its contributors. +.\" 4. Neither the name of the University nor the names of its contributors +.\" may be used to endorse or promote products derived from this software +.\" without specific prior written permission. +.\" +.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND +.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE +.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE +.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE +.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL +.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS +.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) +.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT +.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +.\" SUCH DAMAGE. +.\" +.\" @(#)rmt.8 8.2 (Berkeley) 12/11/93 +.\" +.Dd December 11, 1993 +.Dt RMT 8 +.Os BSD 4.2 +.Sh NAME +.Nm rmt +.Nd remote magtape protocol module +.Sh SYNOPSIS +.Nm rmt +.Sh DESCRIPTION +.Nm Rmt +is a program used by tar, cpio, mt, and the remote dump and restore +programs in manipulating a magnetic tape drive through an interprocess +communication connection. +.Nm Rmt +is normally started up with an +.Xr rexec 3 +or +.Xr rcmd 3 +call or the +.Xr rsh 1 +command. +.Pp +The +.Nm rmt +program accepts requests specific to the manipulation of +magnetic tapes, performs the commands, then responds with +a status indication. All responses are in +.Tn ASCII +and in +one of two forms. +Successful commands have responses of: +.Bd -filled -offset indent +.Sm off +.Sy A Ar number No \en +.Sm on +.Ed +.Pp +.Ar Number +is an +.Tn ASCII +representation of a decimal number. +Unsuccessful commands are responded to with: +.Bd -filled -offset indent +.Sm off +.Xo Sy E Ar error-number +.No \en Ar error-message +.No \en +.Xc +.Sm on +.Ed +.Pp +.Ar Error-number +is one of the possible error +numbers described in +.Xr intro 2 +and +.Ar error-message +is the corresponding error string as printed +from a call to +.Xr perror 3 . +The protocol is comprised of the +following commands, which are sent as indicated - no spaces are supplied +between the command and its arguments, or between its arguments, and +.Ql \en +indicates that a newline should be supplied: +.Bl -tag -width Ds +.Sm off +.It Xo Sy \&O Ar device +.No \en Ar mode No \en +.Xc +Open the specified +.Ar device +using the indicated +.Ar mode . +.Ar Device +is a full pathname and +.Ar mode +is an +.Tn ASCII +representation of a decimal +number suitable for passing to +.Xr open 2 . +If a device had already been opened, it is +closed before a new open is performed. +.It Xo Sy C Ar device No \en +.Xc +Close the currently open device. The +.Ar device +specified is ignored. +.It Xo Sy L +.Ar offset No \en +.Ar whence No \en +.Xc +.Sm on +Perform an +.Xr lseek 2 +operation using the specified parameters. +The response value is that returned from the +.Xr lseek +call. +.Sm off +.It Sy W Ar count No \en +.Sm on +Write data onto the open device. +.Nm Rmt +reads +.Ar count +bytes from the connection, aborting if +a premature end-of-file is encountered. +The response value is that returned from +the +.Xr write 2 +call. +.Sm off +.It Sy R Ar count No \en +.Sm on +Read +.Ar count +bytes of data from the open device. +If +.Ar count +exceeds the size of the data buffer (10 kilobytes), it is +truncated to the data buffer size. +.Nm rmt +then performs the requested +.Xr read 2 +and responds with +.Sm off +.Sy A Ar count-read No \en +.Sm on +if the read was +successful; otherwise an error in the +standard format is returned. If the read +was successful, the data read is then sent. +.Sm off +.It Xo Sy I Ar operation +.No \en Ar count No \en +.Xc +.Sm on +Perform a +.Dv MTIOCOP +.Xr ioctl 2 +command using the specified parameters. +The parameters are interpreted as the +.Tn ASCII +representations of the decimal values +to place in the +.Ar mt_op +and +.Ar mt_count +fields of the structure used in the +.Xr ioctl +call. The return value is the +.Ar count +parameter when the operation is successful. +.It Sy S +Return the status of the open device, as +obtained with a +.Dv MTIOCGET +.Xr ioctl +call. If the operation was successful, +an ``ack'' is sent with the size of the +status buffer, then the status buffer is +sent (in binary). +.El +.Sm on +.Pp +Any other command causes +.Nm rmt +to exit. +.Sh DIAGNOSTICS +All responses are of the form described above. +.Sh SEE ALSO +.Xr tar 1 , +.Xr cpio 1 , +.Xr mt 1 , +.Xr rsh 1 , +.Xr rcmd 3 , +.Xr rexec 3 , +.Xr mtio 4 , +.Xr rdump 8 , +.Xr rrestore 8 +.Sh BUGS +People should be discouraged from using this for a remote +file access protocol. +.Sh HISTORY +The +.Nm +command appeared in +.Bx 4.2 . diff --git a/tar/tar-rootp.patch b/tar/tar-rootp.patch new file mode 100644 index 0000000..1b34c74 --- /dev/null +++ b/tar/tar-rootp.patch @@ -0,0 +1,12 @@ +diff -Nru tar-1.18.orig/src/extract.c tar-1.18/src/extract.c +--- tar-1.18.orig/src/extract.c 2007-07-05 08:19:23.000000000 +0200 ++++ tar-1.18/src/extract.c 2007-07-05 08:19:37.000000000 +0200 +@@ -113,8 +113,6 @@ + extr_init (void) + { + we_are_root = geteuid () == 0; +- same_permissions_option += we_are_root; +- same_owner_option += we_are_root; + + /* Option -p clears the kernel umask, so it does not affect proper + restoration of file permissions. New intermediate directories will diff --git a/tar/tar.1 b/tar/tar.1 new file mode 100644 index 0000000..ad32bbb --- /dev/null +++ b/tar/tar.1 @@ -0,0 +1,325 @@ +.\" @(#)tar.1 1.11.1 93/19/22 PJV; +.TH TAR 1 "15 May 2006" +.SH NAME +tar \- The GNU version of the tar archiving utility +.SH SYNOPSIS +.B tar +[ +.B \- +] +.B A \-\-catenate \-\-concatenate \||\| c \-\-create \||\| d \-\-diff \-\-compare \||\| \-\-delete \||\| r \-\-append \||\| t \-\-list \||\| u \-\-update \||\| x \-\-extract \-\-get +.I [ options ] +.I pathname [ pathname ... ] +.SH DESCRIPTION +.LP +This manual page documents the GNU version of +.B tar +, an archiving program designed to store and extract files from +an archive file known as a +.IR tarfile. +A +.IR tarfile +may be made on a tape drive, however, it is also common +to write a +.IR tarfile +to a normal file. +The first argument to +.B tar +must be one of the options: +.BR Acdrtux , +followed by any optional functions. +The final arguments to +.B tar +are the names of the files or directories which should be archived. The use +of a directory name always implies that the subdirectories below should be +included in the archive. +.SH EXAMPLES +.TP +.B tar \-xvvf foo.tar +extract foo.tar +.TP +.B tar \-xvvzf foo.tar.gz +extract gzipped foo.tar.gz +.TP +.B tar \-cvvf foo.tar foo/ +tar contents of folder foo in foo.tar +.SH "FUNCTION LETTERS" +.TP +.B One of the following options must be used: +.TP +.B \-A, \-\-catenate, \-\-concatenate +append tar files to an archive +.TP +.B \-c, \-\-create +create a new archive +.TP +.B \-d, \-\-diff, \-\-compare +find differences between archive and file system +.TP +.B \-\-delete +delete from the archive (not for use on mag tapes!) +.TP +.B \-r, \-\-append +append files to the end of an archive +.TP +.B \-t, \-\-list +list the contents of an archive +.TP +.B \-u, \-\-update +only append files that are newer than copy in archive +.TP +.B \-x, \-\-extract, \-\-get +extract files from an archive +.SH "OTHER OPTIONS" +.TP +.B \-\-allow\-name\-mangling +re-enable handling of GNUTYPE_NAMES which is now disabled by default +.TP +.B \-\-anchored +force exclusion patterns to match initial subsequences +.TP +.B \-\-atime\-preserve +don't change access times on dumped files +.TP +.B \-b, \-\-blocking\-factor N +use record size of Nx512 bytes (default N=20) +.TP +.B \-B, \-\-read\-full\-records +reblock as we read (for reading 4.2BSD pipes) +.TP +.B \-\-backup[\=TYPE] +back up files instead of overwriting (TYPE=numbered, existing, simple) +.TP +.B \-C, \-\-directory DIR +change to directory DIR +.TP +.B \-\-checkpoint +print periodic checkpoints +.TP +.B \-\-exclude=PATTERN +exclude files matching PATTERN +.TP +.B \-f, \-\-file [HOSTNAME:]F +use archive file or device F (default "\-", meaning stdin/stdout) +.TP +.B \-F, \-\-info\-script F, \-\-new\-volume\-script F +run script at end of each tape (implies \-M) +.TP +.B \-\-force\-local +archive file is local even if it has a colon +.TP +.B \-G, \-\-incremental +create/list/extract old GNU-format incremental backup +.TP +.B \-g, \-\-listed\-incremental F +create/list/extract new GNU-format incremental backup +.TP +.B \-\-group G +set group to G while adding files +.TP +.B \-h, \-\-dereference +don't dump symlinks; dump the files they point to +.TP +.B \-\-help +print help message +.TP +.B \-i, \-\-ignore\-zeros +ignore blocks of zeros in archive (normally mean EOF) +.TP +.B \-\-ignore\-case +ignore case when excluding files +.TP +.B \-\-ignore\-failed\-read +don't exit with non-zero status on unreadable files +.TP +.B \-j, \-\-bzip2 +filter archive through bzip2, use to decompress .bz2 files. +WARNING: some previous versions of tar used option \-I to +filter through bzip2. When writing scripts, use \-\-bzip2 +instead of \-j so that both older and newer tar versions +will work. +.TP +.B \-k, \-\-keep\-old\-files +keep existing files; don't overwrite them from archive +.TP +.B \-K, \-\-starting\-file F +begin at file F in the archive +.TP +.B \-l, \-\-check\-links +print a message if not all links are dumped +.TP +.B \-L, \-\-tape\-length N +change tapes after writing N*1024 bytes +.TP +.B \-m, \-\-touch +don't extract file modified time +.TP +.B \-M, \-\-multi\-volume +create/list/extract multi-volume archive +.TP +.B \-\-mode M +set permissions to M while adding files +.TP +.B \-N, \-\-after\-date DATE, \-\-newer DATE +only store files newer than DATE +.TP +.B \-\-newer\-mtime DATE +only store files whose contents have changed after DATE +.TP +.B \-\-no\-anchored +allow exclusion patterns to match any substring (the default) +.TP +.B \-\-no\-ignore\-case +match patterns case sensitively (the default) +.TP +.B \-\-no\-recursion +do not recurse into subdirectories +.TP +.B \-o, \-\-no\-same\-owner +extract files with owner set to current user (the default for non-root +users) +.TP +.B \-\-no\-same\-permissions +apply umask to extracted files (the default for non-root users) +.TP +.B \-\-no\-wildcards +do not use wildcards when excluding files +.TP +.B \-\-no\-wildcards\-match\-slash +don't let wildcards match "/" when excluding files +.TP +.B \-\-null +for \-T, use "NUL" instead of newline as filename terminator +.TP +.B \-\-numeric\-owner +always use numbers for user/group names +.TP +.B \-\-old\-archive, \-\-portability +write a V7 format archive, rather than ANSI format. These options are +deprecated, please use +.B \-\-format\=v7 +instead. +.TP +.B \-\-one\-file\-system +stay in local file system when creating an archive +.TP +.B \-\-owner O +set owner to O while adding files +.TP +.B \-O, \-\-to\-stdout +extract files to standard output +.TP +.B \-p, \-\-same\-permissions, \-\-preserve\-permissions +ignore umask when extracting files (the default for root) +.TP +.B \-P, \-\-absolute\-names +don't strip leading `/'s from file names +.TP +.B \-\-posix +create POSIX compliant archive. This option is deprecated, +please use +.B \-\-format\=posix +instead. +.TP +.B \-\-preserve +like \-p \-s +.TP +.B \-R, \-\-block\-number +show block number within archive with each message +.TP +.B \-\-record\-size SIZE +use SIZE bytes per record +.TP +.B \-\-recursion +recurse into directories (the default) +.TP +.B \-\-recursive\-unlink +remove existing directories before extracting directories of the same +name +.TP +.B \-\-remove\-files +remove files after adding them to the archive +.TP +.B \-\-rsh\-command=CMD +Use remote COMMAND instead of `rsh'. This option exists so that +people who use something other than the standard `rsh' (e.g., a +Kerberized `rsh') can access a remote device. +.TP +.B \-S, \-\-sparse +handle sparse files efficiently +.TP +.B \-s, \-\-same\-order, \-\-preserve\-order +list of names to extract is sorted to match archive +.TP +.B \-\-same\-owner +extract files with owner as specified in archive (the default for +root) +.TP +.B \-\-show\-omitted\-dirs +mention directories that are being skipped over +.TP +.B \-\-suffix SUFFIX +append SUFFIX to make backup files (default ~) +.TP +.B \-T, \-\-files\-from F +get names to extract or archive from file F +.TP +.B \-\-totals +display total bytes written after creating an archive +.TP +.B \-U, \-\-unlink\-first +unlink & recreate files instead of overwriting +.TP +.B \-\-use\-compress\-program PROG +filter the archive through PROG (which must accept \-d) +.TP +.B \-v, \-\-verbose +verbosely list files processed +.TP +.B \-V, \-\-label NAME +create archive with volume name NAME +.TP +.B \-\-version +print tar program version number +.TP +.B \-\-volno\-file F +keep track of current volume (of a multi-volume archive) in F +.TP +.B \-w, \-\-interactive, \-\-confirmation +ask for confirmation for every action +.TP +.B \-W, \-\-verify +attempt to verify the archive after writing it +.TP +.B \-\-wildcards +use wildcards when excluding files (the default) +.TP +.B \-\-wildcards\-match\-slash +allow wildcards to match "/" (the default) +.TP +.B \-X, \-\-exclude\-from=FILE +exclude files matching patterns listed in FILE +.TP +.B \-Z, \-\-compress, \-\-uncompress +filter the archive through compress +.TP +.B \-z, \-\-gzip, \-\-gunzip, \-\-ungzip +filter the archive through gzip +.TP +.B \-[0\-7][lmh] +specify drive and density +.SH BUGS +.LP +The GNU folks, in general, abhor man pages, and create info documents instead. +Unfortunately, the info document describing tar is licensed under the GFDL with +invariant cover texts, which violates the Debian Free Software Guidelines. As +a result, the info documentation for tar is not included in the Debian package. + +If you want to read the complete documentation for GNU tar, please refer to +the online version at <http://www.gnu.org/software/tar/manual/index.html>. + +This man page was created for the Debian distribution. It does not describe +all of the functionality of tar, and it is often out of date. Patches to +improve the coverage and/or accuracy of this man page are appreciated, and +should be filed as wishlist severity bugs against the Debian tar package, +not submitted to the GNU tar maintainers. |