나는 tarball로 전송된 많은 대형 디렉토리를 처리해야 합니다. 그러나 실제로 작업을 수행하려면 이러한 타르볼을 디렉터리로 추출하여 수행해야 합니다. 대부분의 작업에는 파이프라인의 coreutils 또는 기본 Linux 명령이 포함됩니다. 이 디렉토리를 사용하여 압축할 수 있습니까?
답변1
크리스토퍼가 제안한 것처럼 archivemount
이는 달성될 수 있습니다. 파일 쓰기가 허용되며 제거 시 .tar.gz 파일이 자동으로 업데이트되어 변경 사항을 반영합니다.
# ls -lh download.tar.gz
-rw-rw-r--. 1 steve steve 3.1M Feb 16 2010 download.tar.gz
# archivemount download.tar.gz /mnt
# cd /mnt
# find . -ls|head
1 3127 drwxr-xr-x 0 root root 3201043 Dec 31 1969 .
2 0 drwxr-xr-x 0 steve steve 0 Aug 30 2006 ./kojoney
3 0 drwxr-xr-x 0 steve steve 0 Aug 30 2006 ./kojoney/reports
4 0 drwxr-xr-x 0 steve steve 0 Aug 30 2006 ./kojoney/reports/ip_country
5 9 -rwxr-xr-x 0 steve steve 9067 Dec 29 2006 ./kojoney/reports/ip_country/Geography-Countries-1.4.tar.gz
6 160 -rw-r--r-- 0 steve steve 162827 Apr 6 2006 ./kojoney/reports/ip_country/IP-Country-2.21.tar.gz
#
# rpm -qi archivemount
Name : archivemount
Version : 0.8.1
Release : 2.fc20
Architecture: x86_64
Install Date: Tue 21 Jul 2015 11:29:16 AM PDT
Group : System Environment/Libraries
Size : 75342
License : LGPLv2+
Signature : RSA/SHA256, Sun 13 Oct 2013 11:44:05 AM PDT, Key ID 2eb161fa246110c1
Source RPM : archivemount-0.8.1-2.fc20.src.rpm
Build Date : Sun 13 Oct 2013 10:34:48 AM PDT
Build Host : buildvm-10.phx2.fedoraproject.org
Relocations : (not relocatable)
Packager : Fedora Project
Vendor : Fedora Project
URL : http://www.cybernoia.de/software/archivemount/
Summary : FUSE based filesystem for mounting compressed archives
Description :
Archivemount is a piece of glue code between libarchive and FUSE. It can be
used to mount a (possibly compressed) archive (as in .tar.gz or .tar.bz2)
and use it like an ordinary filesystem.
#
답변2
응 고마워퓨즈, 사용자 모드 프로그램으로 파일 시스템을 구현할 수 있습니다. 기존 파일 시스템의 대체 보기, 원격 시스템의 파일, 아카이브의 파일 등을 포함하여 디스크의 섹터가 아닌 다른 것으로 파일 저장을 구현하는 FUSE 파일 시스템이 많이 있습니다.
당신은 그것을 사용할 수 있습니다아카이브 마운트특정 아카이브를 디렉터리에 설치합니다. 파일을 수정할 수 있습니다.
mkdir foo
archivemount foo.tar.gz foo
ls foo
echo hello >foo/new-file
fusermount -u foo
rmdir foo
tar tf foo.tar.gz
당신은 그것을 사용할 수 있습니다AVFS각 아카이브에 대해 특정 작업을 수행하지 않고도 모든 아카이브에 액세스할 수 있습니다. Avfs는 각 아카이브에 ~/.avfs
파일 내용이 포함된 것으로 보이는 동반 디렉터리가 있는 전체 디렉터리 트리 보기를 만듭니다 . ARCHIVE-FILE#
아카이브 콘텐츠는 읽기 전용입니다.
mountavfs
ls ~/.avfs$PWD/foo.tar.gz\#