aix 超过一天的文件_在AIX下使用pax命令可归档大于8G的文件

在AIX下使用pax命令可归档大于8G的文件,在AIX5L下tar只能归档不大于8G的文件。

一、如果要使用『tar』指令备份(还原)超过2GB的档案;

必须符合下列条件:

1、档案系统必须支援『Large File Enabled』。 (Large File Enabled Journaled File

System) (或是Enhanced Journaled File System:JFS2)

2、使用者的系统资源权限:『fsize = -1』(/etc/security/limits)

二、『tar』指令并不支援超过8GB的档案备份。

可使用:dd、cpio、backup…………缺点一次只能备份一个目录。

三、超过8GB的档案可以用PAX指令

使用『pax』备份超过8GB的档案:

pax –wvf /dev/rmtx –x pax /PATH1 /PATH2

使用『pax』检视备份内容:

pax –vf /dev/rmtx –x pax

使用『pax』还原档案:

pax –rvf /dev/rmtx –x pax (PATH_file_name)

pax默认参数没有指定,生成格式为tar的文件,大小不能大于8G,需要指定格式为pax。

# du -sg abc.txt

8.76 abc.txt

#pax -x pax -wvf abc.pax abc.txt

#

网上搜索pax的参数:

Pax –r|-w|-rw –c –d –i –k –l –n –t –u –v –X –H|-L –p String –o

Options –s ReplacementString

-x Format File Directory

-a:添加文件到归档的末尾

-c:匹配所有归档成员或文件(pattern参数指定的除外)

-d:只考虑路径不考虑路径的内容

-f Archive:指定要使用的归档文件的路径

-i:重命名文件或归档

-k:防止该命令覆盖存在的文件

-r:从标准输入读一归档文件

-v:写进程的信息

-w:以指定的归档格式写文件到标准输出

-x Format:指定输出的归档格式(pax----可以大于2G,cpio,ustar)

注意:不指定-x参数,缺省为tar格式,指定-x不指定Format,缺省为pax格式

pax –vf /etc/temp.tar查看tar文件

pax –x pax –wvf temp.tar /home/user/soft.tar

/home/user/temp.tar建立一个pax格式文件

temp.tar,包含文件/home/user/soft.tar和/home/user/temp.tar,大于2G

pax –wvf /dev/rmt0 dump.out拷贝dump.out文件到磁带机

pax -awvf /dev/rmt0 xxx将文件拷贝归档文件末尾

pax –rvf /var/adm/link.tar解压缩tar文件/var/adm/link.tar到当前目录

pax –rw run.pax /tmp拷贝run.pax文件到/tmp目录

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是使用 libarchive 库将文件夹打包成 tar 文件的示例代码: ```c #include <stdio.h> #include <archive.h> #include <archive_entry.h> int main() { const char* folder_path = "/path/to/folder"; const char* tar_path = "/path/to/folder.tar"; // 创建输出 tar 文件文件流 struct archive* archive = archive_write_new(); archive_write_add_filter_gzip(archive); archive_write_set_format_pax_restricted(archive); archive_write_open_filename(archive, tar_path); // 遍历文件夹并将文件添加到 tar 文件中 struct archive_entry* entry = archive_entry_new(); struct archive* folder = archive_read_disk_new(); archive_read_disk_set_standard_lookup(folder); archive_read_disk_open(folder, folder_path); while (archive_read_next_header2(folder, entry) == ARCHIVE_OK) { archive_write_header(archive, entry); if (archive_entry_size(entry) > 0) { char buffer[16384]; ssize_t size = 0; int fd = open(archive_entry_sourcepath(entry), O_RDONLY); while ((size = read(fd, buffer, sizeof(buffer))) > 0) { archive_write_data(archive, buffer, size); } close(fd); } } archive_read_close(folder); archive_read_free(folder); // 关闭 tar 文件 archive_entry_free(entry); archive_write_close(archive); archive_write_free(archive); return 0; } ``` 以上代码使用 `archive_write_new()` 创建一个输出 tar 文件文件流,使用 `archive_read_disk_new()` 创建一个用于遍历文件夹的文件流,并将每个文件添加到 tar 文件中。最后,使用 `archive_write_close()` 关闭 tar 文件并释放内存。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值