我编写了以下脚本来备份我的服务器:
#!/bin/sh
PATH=/opt/someApp/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
THESITE="sitename.ir"
THEDB="mydb"
THEDBPW="mypassword"
THEDATE=`date +%d%m%y%H%M`
mysqldump -u $THEDBUSER -p${THEDBPW} $THEDB | gzip > /media/bkfolder/dbbackup_${THEDB}_${THEDATE}.bak.gz
tar -cpzf /var/backups/sitebackup_${THESITE}_${THEDATE}.tar.gz /var/www
# Print end status message.
echo "Backup finished"
但我收到这个错误:
tar:从成员名称中删除前导/
我该如何解决这个问题?谢谢。
答案1
那不是错误,而是通知。tar 档案具有相对路径,因此这是正确的行为:当您“解压”文件时,您会为命令提供一个应解压的位置,如果是绝对路径,它会将其安装到根目录中,而不管您告诉它应该使用什么路径。使解压不合逻辑。
如果您想要绝对路径,请参阅man tar
P 选项(但请不要)。
-P, --absolute-names
don't strip leading '/'s from file names