我们有beaglebone Black基本自定义板我们正在添加与root不同的用户运行的应用程序。
该应用程序拥有SQLITE数据库,并启用了日记帐。
但是Root用户需要备份该数据库,并保留其文件属性,例如用户,组和权限。
现在,我使用以下命令对SQLITE数据库进行备份,但是诸如用户和组之类的文件属性不维护文件权限相同,请在下面检查命令,
# ls -l
-rw-r--r-- 1 ankur ankur 12288 Dec 20 15:46 testdb.sqlite
#
#
#
# sqlite3 testdb.sqlite ".backup testdb_backup.sqlite"
# ls -l
-rw-r--r-- 1 ankur ankur 12288 Dec 20 15:46 testdb.sqlite
-rw-r--r-- 1 root root 12288 Dec 20 15:47 testdb_backup.sqlite
是否有不同的命令(或选项)来备份并维护文件属性?
选项之一是将备份并将源文件属性复制到目标(备份数据库)。但是BusyBox cp
不支持。
其他任何建议/指针?
使用su
或sudo
执行该操作,这些操作应该像用户执行它们一样行为。
在这种情况下,将是,例如
su -c 'sqlite3 testdb.sqlite ".backup testdb_backup.sqlite"' ankur
和
sudo -u ankur sqlite3 testdb.sqlite ".backup testdb_backup.sqlite"
su
可作为busybox命令提供,如果您的环境未启用了busybox,则可能需要启用它。