Solaris では pax コマンドを使うと、絶対パスでとってしまった tar アーカイブを相対パスに解凍できる。
書式)
pax -rvs ',^/,./,' -f hoge.tar
試してみる。
ディレクトリを作成して、
% mkdir -p tmp/{a,b,c} % find tmp tmp tmp/a tmp/b tmp/c
% tar cvf tmp.tar /export/home/oracle/tmp a /export/home/oracle/tmp/ 0K a /export/home/oracle/tmp/a/ 0K a /export/home/oracle/tmp/b/ 0K a /export/home/oracle/tmp/c/ 0K
pax コマンドで相対パスに展開して
% pax -rvs ',^/,./,' -f tmp.tar USTAR format archive /export/home/oracle/tmp /export/home/oracle/tmp/a /export/home/oracle/tmp/b /export/home/oracle/tmp/c
確認してみると、
% find export
export
export/home
export/home/oracle
export/home/oracle/tmp
export/home/oracle/tmp/a
export/home/oracle/tmp/b
export/home/oracle/tmp/c
相対パスに解凍できてる。
[参考]
バックアップファイルからの/usr復元について -SUNのNetraT1において、- UNIX・Linux | 教えて!goo
http://docs.sun.com/app/docs/doc/806-0624/6j9vek5ci?l=ja&a=view