RSS RSS

IBM AIX 安装GNU tar

By Erickson, April 13, 2011 1:11 am

  明娜,伊萨西布利~好像又是几个月没见了啊喂=v=

  其实这段时间还算闲,基本准点下班(这可是用两周每天加班23:00换回来的喂= =|||),配置管理是个很重要的岗位,尽管真的很无聊说实话~现在一些流程性的东西被渐渐用apache ant串烧起来了,加之对一些东西渐渐深入了解,所以还算有时间研究些有意义的事情,比如前段时间装的IHS(这个IBM版的Apache Http Server,对一些底层的东西进行了优化罢了,其他无异)碰到些问题并解决(具体怎么解决没记忘了=v=),今天碰到的问题我觉得激活纪念堂的时机来了>.<

  平时需要管理十几套环境,基本都是IBM AIX 5.3(ICBC不差钱,不够用了直接购刀片机,激活CPU,基本无视软件层面的优化,霸气外露=c=),也有suse系统。应用程序向服务器部署需要用到tar命令,这整个差量程序的提取、编译和部署都是自动完成,人工干预成分比较少,也一直运行良好,但是最近对一个月度版本进行了整改后,集成测试反映环境有异常,查看部署日志发现有@Longlink的异常,文件绝对路径过长,到长度了就被cut(具体长度是100,ant友情提示的=v=),文件名都残了,有些少后缀,有些甚至就半个文件名。

  原因分析:用suse试验了一下,完全正常。

  结论:AIX 5.3老掉牙,tar命令不给力!

  解决方法:下载安装第三方GNU tar(ftp://ftp.gnu.org/gnu/tar/)!找个随便下,我弄了个tar-1.26.tar.gz

  这货需要下载了自己上环境编译,生命在于折腾,搞起。。。

  1、解压两次把tar-1.26文件夹一并用ftp方式上传环境(当然也可以上环境解压)。

  2、请童鞋们用chown、chgrp和chmod自行解决好用户、组和权限问题。

  3、root用户telnet上环境,cd进上传的tar-1.26目录,跑起”./configure”。

  4、Makefile出来了,有木有??!!OK~跑起”make”。

  5、跑起”make install”,安装完毕,一般来说会被安装到以下路径”/usr/local/bin”,有个tar文件,有木有=v=?!

  花絮:

  A、如果执行上述命令过程中报 XXX is up to date,那么就说明文件够新,不用重新make。非要纠结,那么”make”之前”make clean”一下吧。

  B、第3步跑起”./configure”,如果报error:you should not run configure as root(set FORCE_UNSAFE_CONFIGURE=1 in environment to bypass this check),蛋定,跑起”./configure FORCE_UNSAFE_CONFIGURE=1″,顾名思义大概就是强制执行,忽略非安全的check吧 。

  C、第3步跑起”./configure”,跑着跑着又停了,报没有C Compiler这货。”lslpp -L |grep C”,发现有自带(不自带没道理),OK,环境变量问题。”echo PATH=$PATH”发现果然没有,C编译器一般都安装在”/usr/vac/bin”目录,执行”export PATH=$PATH:/usr/vac/bin”,会把路径追加到$PATH最后。

  D、终于可以用GNU tar了,但是每次”/user/local/bin/tar”的敲命令,伤不起~所以设置环境变量,执行”export PATH=$PATH:/usr/local/bin”。系统自带本身就有tar,所以我把”/user/local/bin/tar”重命名为”/user/local/bin/gnutar”了~

  E、第二天发现日志报错,环境变量$PATH回老样子了。打开”/etc/environment”,把里面的PATH改一下就OK了(这段通过G7的WordPress for Android发布~)

  F、ant打包命令,如果绝对路径长度超过100,会友情提示请用GNU tar(上面提到了=。=)

  欧了,用”gnutar -xvf app.tar”试验,尾巴没被cut,一切正常~~!!修改了自动部署shell脚本,关机,下班回家!~

  严格意义上,这是入职后post的第一篇技术文,因为毕竟有些涉密的东西不能乱写,so,还是得悠着点…

  怎么又是深夜…好困 T^T

5 Responses to “IBM AIX 安装GNU tar”

  1. Mac says:

    无视软件层面的优化压根不是什么霸气外露,一是资源浪费;二是决策层怕是永远不知道该怎么利用有限资源来更有效的解决问题,离开了这地方怕是他们什么也干不了;三,估计这代码渣的一塌糊涂,bug和漏洞潜伏

  2. NC一番 says:

    大家都在折腾./configure make make install么 Orz

  3. Erickson says:

    这种问题,不要指望别人会帮你做,我靠,懂么?我靠我!

  4. Simon says:

    Erickson同学,我在安装GNU tar的时候碰到一个问题,跑起make的时候,只跑了5-6行就出现”../build-aux/ylwrap[108]: yacc: not found”然后就”*** Error exit code 1

    Stop.

    退出了。。。我在网上搜索后,发现你的文章最受用,列举的情况最详细。
    只是也没有提到我遇到的这个情况,不知道你有没有时间给我个回复,寻求你的帮助。谢谢!

  5. Erickson says:

    Hi~
    ylwrap是个小程序,你看看build-aux路径下是否有这玩意儿…
    然后再看看环境变量是否设置正确…

Leave a Reply

Persephone Theme by Themocracy