柏油或星是一个开源的命令行程序,可以压缩/归档多个文件组合成一个单一的磁带或磁盘归档。它也能够从产生的档案中恢复单个文件。
柏油包括一个FIFO速度,多卷支持,一个模式匹配,存档稀疏文件,自动字节顺序识别,自动归档格式检测,自动归档压缩和解压缩,远程归档,以及其它特殊的功能,其允许的能力要用于完全系统备份应用程序。
柏油还包括`RMT',一个真正的便携式版本,支持不同的操作系统和计算机的体系结构,以及一种便携式`公吨之间的远程操作的远程磁带服务器的“磁带驱动器的控制程序。
柏油是目前最快的实施焦油归档的,速度甚至超过的ufsdump在几乎所有情况下
什么是此版本中的新:
< ul>
什么在1.5.2版本新:
- 尝试做明星免疫对出现的信号时从网络文件系统打开文件。
- 在让明星FIFO更好地处理媒体更改操作在多卷磁带卷结束创建模式。
- 在允许星自动检测和QUOT; EOF&QUOT;在多卷书写时的原始磁盘条件创建模式。 ENXIO已添加的别名EFBIG和ENOSPC。
- 在该star.4手册页得到了加强。
- 在star_sym.c现在使用O_SEARCH打开目录。
- 在星/ longnames.c增加了更多的解决方法对不对缓冲区溢出中止从GCC。
- 在星/ extract.c现在使用的,而不是访问接入(姓名,F_OK)(姓名,0)
- 在星级现在只设置了信号处理现有信号,以支持MSC
- 在星定格在dumpdates.c一个错字是打在WIN-DOS,因为羊群()不存在
- 在星级现在检查HAVE_FSYNC支持MSC
- 在星:: findinfo.c现在检查stat.st_blksize是否存在
- 在星/ dumpdates.c工作围绕定义虽然羊群()调用不再存在与LOCK_EX / LOCK_EX / LOCK_UN问题。
- 在新的(以前失踪)手册页:BSH / pfbsh.1 SH / bosh.1 SH / jsh.1 SH / pfsh.1吨/ mt.1 scgskeleton / scgskeleton.1标签/ label.1星/ USTAR。 1 star_sym / star_sym.1 VED / VED-E.1 VED / VED-W.1
- 在星级现在支持自动识别XZ(1)压缩档案,并提供一个新的选择-xz
- 在星提供了新的行为:
- 在与&QUOT创建的tar归档;星-c转储-meta ...&QUOT;不包括用于普通文件的内容,但只有元数据。随着&QUOT;星级-c -xmeta&QUOT;这些文件可以通过的情况下大小的文件,这将不覆盖现有文件被提取为0。星现在支持&QUOT;星-x -xmeta -fore孔&QUOT;提取这些文件作为原始大小的文件,但作为稀疏文件里面没有任何数据。这是足以作为wget的-mirror参考。
- 在该手册页星/ spax.1固定一个错字。
- 在星/ header.c现在使用一种新的结构&QUOT; ndbuf&QUOT;定义为了能够访问在阵列中的第101元件,而无需访问一个阿雷出界的101,而不是100 namelength。
- 修正了星/ buffer.c中一个错字导致恒星核心转储在Linux上用-c -mulvivol因为在Linux上发现了不寻常的内存布局。
- 在星-multivol缓冲区管理,现在mallocs更少的内存。在此之前的malloc()D同样大小的FIFO大小,现在只有malloc()的第2 * BUFSIZE
- 在星级-c -find现在可中断了^ C
- 在星级-x -U -k现在工作以及星级-x -U -keep岁
- 在star.4手册页有错字修复
- 在星-sparse -force洞,现在所有的档案文件,以防稀疏文件,他们至少包含空值的512块对齐的字节。由于markk@clara.co.uk
- 在星级-find现在去除导致&QUOT; ./& QUOT;在文件名中的明星确实在其他情况下。
- 在星级-r / -u现在可以正确地依赖于旧存档格式类型。
- 在星增加了一个新的选择-lzip,并支持自动识别lzip压缩归档。由于markk@clara.co.uk
- 在星级现在接受命令,如:
- 在星级-c -onull -find。 -ls
- 因为没有归档输出到标准输出,可以混合使用-ls输出
- 修正了一个错误的libfind / walk.c(调用strcatl()与最后一个参数0,而不是(的char *)0)
- 在libfind被撞至1.5版
- 在新文件libfind / find_tok.h从实施的其余部分分开的标记名称。
- 从find.c感动令牌定义,find_tok.h
- 在主-perm现在实现了一个新功能:
- 在-perm +如有的模式设置位的权限位来回一个文件被设置模式,将评估为真。
- 在使用的vfork引入-exec的bug()()是固定的。字符串&QUOT的更换; {}&QUOT;现在可以正常工作再次,即使在内存中的路径的位置被改变了realloc的过程中()。
- 在新的主运营商:-amin弃用 - 仅适用于GNU发现-cmin兼容性弃用 - 仅适用于GNU找到兼容性-mmin弃用 - 仅适用于GNU找到兼容性-empty真正的零尺寸的普通文件或者空目录-execdir程序[参数。 ..] \; -fls文件列表文件类似于'LS -ilds'到'文件'(总是TRUE)-fprint文件打印文件名行分隔成'文件'(总是TRUE)-fprint0文件打印文件名NUL分为'文件'(永远TRUE)-fprintnnl文件打印文件名的空间分隔成'文件'(总是TRUE)-ilname水珠TRUE如果要是路径组件相匹配的外壳水珠-ipat图案符号链接的名称相匹配的外壳水珠-ilpat模式TRUE,如果符号链接的名称相匹配的模式-iname水珠TRUE如果路径组件相匹配TRUE -ipath水珠TRUE,如果完整的路径相匹配的外壳glob模式-ippat模式TRUE,如果完整的路径与模式匹配-okdir程序[参数...] \; -print0打印文件名NUL分离到标准输出(始终TRUE)-executable TRUE,如果文件是程序可读TRUE的实际用户ID的可执行文件,如果是工艺-writable TRUE的实际用户ID读,如果文件是可写的实际用户ID过程
- libfind不再退出的情况下,该路径字符串不能被分配的过程中树遍历()。
- 在libfind :: walkclose()现在可以自由()S中的内部数据结构的情况下,这并不树遍历调用用户的()(如星-x)
- 在功能defltcntl()在libdeflt现在工作,并允许选择不区分大小写的模式。
- 新功能defltsect()在libdeflt允许创建子节中的配置文件。这些小节需要被命名为:&QUOT;节名称] QUOT;和'['必须是在一行的开头。
- 支持&QUOT; PCC&QUOT;在Solaris x86上添加作为第一步。在C编译器&QUOT; PCC&QUOT; http://pcc.ludd.ltu.se/是从20世纪70年代末的基础上便携式C-Comppiler从AT&T。这是BSDL下,从而提供与编制一个真正自由的构建环境。
- 请注意,由于PCC错误,autoconf的结果大文件的支持是不正确的。除非你编辑文件INCS / I386-sunos5-PCC / xconfig.h和手动校正,以包含此文件:
- 的#define _FILE_OFFSET_BITS 64 / *#位的off_t如果设定* /
- 您将无法获得工作大文件支持与PCC。
- 在支持更多的操作系统,编译器的问题后,将按照已得到解决。
- 的conf / mkdep-aix.sh现在调用&QUOT; CC -M -qsyntaxonly&QUOT;而不是&QUOT; CC -M -E&QUOT;作为IBM C-预处理不喜欢的#pragma弱A = B虽然编译器支持它。
- 在增加了对FreeBSD的/ x86_64的支持
- 在新的autoconf测试在AIX纳秒时间戳。
- 的conf / mkdep-aix.sh改为避免的#pragma A = B作为IBM C编译器警告弱调用非&QUOT;的#pragma弱&QUOT;当CPP与-E名为
- 在包括/席利/ stat.h现在支持在结构统计nonosecond时间戳在AIX上。
- 在包括/席利/ stat.h现在支持结构stat.st_atime_n的AIX纳秒的支持。
- 在试图通过smake CCOM =添加支持32位编译较新的Mac OS X版本CC32这只能如果32位开发支持安装在Mac OS X。
- 在试图通过smake CCOM =增加对32位编译在新的Linux版本的支持CC32这只能如果32位开发支持安装在Linux上。
- 在新的autoconf测试检查是否的fnmatch()有一个工作FNM_IGNORECASE
- 在新的autoconf测试支持状态多字节语言环境mbsinit()mbrtowc()wcrtomb()
- 在新的autoconf测试wctype_t mbstate_t
- 在新的autoconf测试()目录名()strndup()wcsndup()
- 在包括/席利/ wchar.h增强,以支持mbrtowc()和wcrtomb()
- 在包括/席利/ regex.h添加
- 在包括/席利/ libgen.h添加
- 在新的autoconf测试strlcat提供()wcslcat()strnlen()wcsnlen()
- 在新的autoconf测试strndup()wcsndup()
- 在libschily的fnmatch()现在支持FNM_IGNORECASE
- 在libschily的fnmatch()现在支持多字节字符
- 在libschily:新文件strlcat.c wcslcat.c strnlen.c wcsnlen.c strndup.c wcsndup.c basename.c dirname.c
- 在一种新的算法libschily strncat.c strncmp.c strncpy.c strnlen.c wcsncat.c wcsncmp.c wcsncpy.c wcsnlen.c使得代码更快更小。
- 在CONF-文件在/ etc /默认已经安装0644
- 在页面的人现在都在默认情况下安装在$(INS_BASE)/ share / man中的基本目录&QUOT;分享&QUOT;可以通过caling改变
- 在smake DEFMANBASE =东西
- 在README.compile现在提到:
- 在INS_RBASE =设置不同的&QUOT;根&QUOT;安装路径DEFMANBASE =设置不同的人的基本目录STRIPFLAGS = -s地带的所有可执行文件与&QUOT;使安装和QUOT; RUNPATH =覆盖ELF RUNPATH DEFUMASK =创建目录DEFINSUMASK设置不同的默认权限=设置不同的默认权限在安装路径创建目录
- 在页面的人现在都在默认情况下安装在$(INS_BASE)/ share / man中的基本目录&QUOT;分享&QUOT;可以通过caling改变
- 在所有Makefile.dfl现在检测是否在/ etc /默认/ *已经存在
- 在宏XARCH_GEN&XARCH_OPT现在在规则/ CC-sunpro * .rul
- 在包含文件在include /席利/ ccomdefs.h现在允许禁用的printf()格式检查GCC与此-DNO_PRINTFLIKE是必要的,为了让明星在Solaris ON cosolidation作为GCC ID太愚蠢了编译printf()的扩展。
- 在libschily /?eterrno.c不再覆盖,以ON consoliation通过编译constrints在Solaris的_TS_ERRNO定义。
- 在映射文件的几个新的全局符号libschily / libschily-mapvers
- 在libschily / wcsndup.c已经frgotten代码,仍然没有internaly实施strndup()
- 在librmt.so现在包括libsocked在需要的ELF标记
- 在所有的包含文件(即使是那些由autoconf的创建)现在防止多包容。
- 在新的autoconf测试的pathconf()和执行fpathconf()
- 链接器映射文件现在通过&QUOT处理; (或$ CC -E),并输出被存储在$(ARCHDIR)。这允许有一个链接器映射文件源代码对所有平台。
- 在新的autoconf测试工作CPP。
- 在新的autoconf测试的/ dev /标准输入中,/ dev /标准输出中,/ dev /标准错误中,/ dev / FD / 0中,/ dev / FD / 1中,/ dev / FD2
- 在新的autoconf测试:qecvt()qfcvt()qgcvt()_ldecvt()_ldfcvt()_ldgcvt()_ldecvt_r()_ldfcvt_r()_ldgcvt_r()qeconvert()qfconvert()qgconvert()需要很长的双支持。
- 在所有链接映射文件已被修改,以允许平台相关的#ifdef
- 在libschily现在默认重命名函数getline(),fgetline()和fexec *()到js_getline(),js_fgetline()和js_fexec *()。这是必要的,因为POSIX标准commitee忽略POSIX基本规则没有定义的函数是与现有的出版功能的冲突。因为超过25年,从linschily的功能已经在公众和POSIX.1-2008定义的功能,即使违反POSIX命名规则。在POSIX fexec *()函数将如必须正确称为fdexec *()。
- 在现有的方案可以保持正式名称函数getline(),fgetline()和fexec *(),因为它们在默认情况下已经#define新的JS _ *()的名字。要禁用这种便利,地址:
- 的#define NO_SCHILY_GETLINE要禁用席利函数getline(),fgetline()的#define NO_SCHILY_FEXEC要禁用席利fexec *()的#define NO_SCHILY_FSPAWN要禁用席利fspawn *()
- 在Libschily现在有新英寸长的双&QUOT;支持功能:qftoes()和qftofs()
- 在Libschily现在支持的语言环境的依赖性小数点打印浮点数。
- 在Libschily现在支持打印使用格式()的便携式printf()的执行长双数。如果这个不适合你的平台,或者这是否正确针对您的平台不能正常工作,请报告。这是需要出新的&QUOT; OD&QUOT;实施
- 选项解析实现getargs()/的GetFiles()从libschily现在支持合并单个字符布尔标志即使在选项字符串提到调用回调函数,如果发现一个有效选项。这是需要出新的&QUOT; OD&QUOT;实施
- 从libschily filereopen()不再调用open()内,只要没有必要创建或截断该文件。
- 在包括/席利/ wchar.h现在包括一个用于workyround没有wcwidth()平台。
- 在libschily的findinpath()现在包括一个新的路径参数,允许使用来自BSH功能。
- 的fnmatch现在总是可以js_fnmatch()
- 在新的autoconf测试_qecvt()_qfcvt()_qgcvt()和_qecvt_r()_qfcvt_r()_qgcvt_r()在AIX
- 在libschily / getexecpath.c新
- 在包括/席利/ nlsdefs.h目前包括宏_(S)和__(S)支持的gettext()了xgettext和(1)
- 在禁用smake简单的后缀规则和Sufffix规则,加速比建立
- 添加在规则中评论/ rules.rdi这条规则不再需要。使用规则/ rules.dir于所有情况。
- 在席利makefilesystem新的配置文件:
- - * BSD对AMD64
- - MacOS X系统上的AMD64
- - kFreeBSD的(Debian的一个FreeBSD内核)
- - 安卓
- 在本席利makefilesystem现在支持CC_COM适用于所有平台,使覆盖的C编译器的低水平的命令。
- 在本席利makefilesystem现在支持CC ++ _ COM适用于所有平台,使覆盖在C ++中低级别的命令 - 编译
- 在称为Mingw现在对-lminwg32而不是-lmgw32默认链接
- 在Mac OS X上现在对-lgcc_s.1而不是-lgcc 默认链接
- 在加快相关性生成的cl.exe时汇集了一些sed命令在一个单一的SED电话
- 修正了相关性生成的HP-UX中的错误
- 在本席利makefilesystem restructuresd一些依赖,使运行并行make。
- 在Android是不是POSIX(通过不定义各种功能,如在libc中的功能所要求的POSIX),因为它试图定义是标准的一部分,作为内联宏只包含文件的许多功能。这打破了autoconf,所以我们需要重写一些测试(例如getpagesize的,tcgetpgrp,tcsetpgrp)
- 在本席利autoconf的系统已经增强,可以支持交叉编译。席利autoconf的是基于GNU autoconf和GNU autoconf的不支持交叉编译,因为它需要进行一些测试运行在目标系统上的脚本。
- 在该&QUOT;配置&QUOT;即交付与席利makefile文件系统的脚本运行718测试,其中68需要在目标系统上运行。
- 在本席利autoconf的系统现在支持到目标系统上本地运行这些测试65的方法。您可能需要一台具有远程登录功能,或者您需要一个仿真器的方法将文件复制到仿真系统和运行仿真系统例如在二进制Android模拟器。
- 我们目前提供三个脚本&QUOT;远程&QUOT;执行程序在目标系统上:
- 在runrmt_ssh运行命令通过ssh runrmt_rsh运行命令通过rsh runrmt_android删除删除运行命令通过调试桥删除
- 如果你需要的是不支持的有三个脚本一个系统上远程运行程序,则需要修改其中的一个,以满足您的需求。
- 要实现交叉编译使用下面的环境变量:
- 在CONFIG_RMTCALL =设置为指向,做远程执行脚本,例如:
- 在CONFIG_RMTCALL =`pwd` / conf目录/ runrmt_ssh
- 在CONFIG_RMTHOST =设置为指向你的远程主机,例如:
- 在CONFIG_RMTHOST =主机名或CONFIG_RMTHOST =用户@主机名
- 使用一个虚拟的,如果你想使用类似的Android模拟器。
- 在CONFIG_RMTDEBUG =设置的东西非空,为了让远程执行脚本标记远程命令对应。这会导致配置信息,如:
- 在次设备号校验位... REMOTE 8
- 请注意,smake包括automake的功能,自动检索系统ID信息。出于这个原因,你需要重写相关的宏命令行,如果你喜欢做一个交叉编译。
- 相关make宏:
- 在K_ARCH =#(SUN4V)内核ARCH由uname -m输出/拱充满-k M_ARCH =#(sun4)机从充满拱P_ARCH =#(SPARC)CPU ARCH从uname - 充满-p /马赫OSNAME =#SunOS中, linux的,.... OSREL =#5.11 OSVERSION =#snv_130 CCOM =#编译器的通用名称(例如&QUOT; GCC&QUOT;)CC_COM =#编译器的调用(姓名+基本参数)
- 在ARCH =覆盖M_ARCH和P_ARCH
- 在它通常suffucient设定ARCH和OSNAME。
- 在要使用本地编译器的交叉编译环境,而不是,设置使宏观CC_COM到的东西比&QUOT不同,CC&QUOT;
- 如果你是在Linux和喜欢编译为Android,请执行以下操作:
- 1)建立CC acording来说明从交叉编译工具链
- 2)设置环境变量CONFIG_RMTCALL / CONFIG_RMTHOST,例如:SETENV CONFIG_RMTCALL`pwd` / conf目录/ runrmt_android SETENV CONFIG_RMTHOST NONE
- 3)调用smake:
- 在smake ARCH =的ARMv5 OSNAME = linux的CCOM = GCC和QUOT; CC_COM = $ CC&QUOT;
- 在一些项目不再HAVE_DEV_测试*但是对于HAVE__DEV_ *,因为我们没有从手工笔试开关的/ dev / tty的,为/ dev / null,并且类似AC_CHECK_FILES(为/ dev / tty的为/ dev / null的的/ dev /零)
- 在支持火焰兵(音节克隆)加入。由于弗莱明H.索伦森
- 在为Win32插座更好的支持使用时cl.exe时
- 避免出现问题非标准原型链接()从cl.exe时 取消链接()阅读()和write()
- 在添加支持半静态(预配置),包括文件的Android版本:包括/席利/ armv5tejl-Linux的GCC / xconfig.h
- 在新的包含文件在include /席利/犯错_ *。h的用于封装#ERROR CPP声明,否则将永远阻止编制与K&R编译器。
- 在添加了一个解决方法是,在某些情况下,无限循环的代码创建一个LLVM编译器的bug。
- 在Libschily现在已链接对$(LIB_INTL)一个共享libschily创建时。
- 避免从cl.exe时警告libschily / gettimeofday.c
- 在对make程序特定的配置文件的席利Makefilesystem RULES / mk-.id(对于SunPro化妆),规则/ mk-smake.id RULES / mk-gmake.id目前包括宏定义:
- 在空间中的一个空格字符('')NUMBER_SIGN的ASCII数量唱('#')
- 请注意,POSIX标准另有规定make程序不能有'#'出现在Makefile中的非注释部分。
- 尝试,以解决从Cygwin的-1.7.17(秋季2012)与类型BOOL,使windefs.h从最近的Cygwin不再兼容微软的原始文件在文件WINDEF.H轻率改变。解决方法是在include /席利/ WINDOWS.H
- 在感谢阿兰晃,托马斯·普朗克等人的汇报,并与得到修复名为上述</ li>问题帮助
- 在libschily / comerr.c更好的意见,以帮助了解退出()代码折叠,以8位,怎么可能是可以避免的。
而不是叉
对于基本名
CPP&QUOT;
评论没有发现