#ifdef HAVE_SYS_STAT_H
#include <sys/stat.h>
#endif
-#ifdef HAVE_SYS_MKDEV_H
-#include <sys/mkdev.h>
-#endif
#ifdef HAVE_ERRNO_H
#include <errno.h>
#endif
printf("device %s, type %s\n", dev->bid_name, dev->bid_type ?
dev->bid_type : "(null)"));
- fprintf(file,
- "<device DEVNO=\"0x%04lx\" TIME=\"%ld\"",
- (unsigned long) dev->bid_devno, (long) dev->bid_time);
+ fprintf(file, "<device DEVNO=\"0x%04lx\" TIME=\"%ld.%ld\"",
+ (unsigned long) dev->bid_devno,
+ (long) dev->bid_time,
+ (long) dev->bid_utime);
+
if (dev->bid_pri)
fprintf(file, " PRI=\"%d\"", dev->bid_pri);
list_for_each(p, &dev->bid_tags) {
list_for_each(p, &cache->bic_devs) {
blkid_dev dev = list_entry(p, struct blkid_struct_dev, bid_devs);
- if (!dev->bid_type)
+ if (!dev->bid_type || (dev->bid_flags & BLKID_BID_FL_REMOVABLE))
continue;
if ((ret = save_dev(dev, file)) < 0)
break;
if (backup) {
sprintf(backup, "%s.old", filename);
unlink(backup);
- link(filename, backup);
+ if (link(filename, backup)) {
+ DBG(DEBUG_SAVE,
+ printf("can't link %s to %s\n",
+ filename, backup));
+ }
free(backup);
}
rename(opened, filename);