chiark
/
gitweb
/
~ianmdlvl
/
elogind.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
systemctl: show a colored red dot in "status" output indicating the state of a unit
[elogind.git]
/
src
/
fstab-generator
/
fstab-generator.c
diff --git
a/src/fstab-generator/fstab-generator.c
b/src/fstab-generator/fstab-generator.c
index 34cd720517d7ea260d1330b0110534dc37fe0aea..a9a5c0203f2cb8276a1486b1d2b809cad0d87efb 100644
(file)
--- a/
src/fstab-generator/fstab-generator.c
+++ b/
src/fstab-generator/fstab-generator.c
@@
-35,6
+35,7
@@
#include "fileio.h"
#include "generator.h"
#include "strv.h"
#include "fileio.h"
#include "generator.h"
#include "strv.h"
+#include "virt.h"
static const char *arg_dest = "/tmp";
static bool arg_fstab_enabled = true;
static const char *arg_dest = "/tmp";
static bool arg_fstab_enabled = true;
@@
-77,6
+78,11
@@
static int add_swap(const char *what, struct mntent *me) {
assert(what);
assert(me);
assert(what);
assert(me);
+ if (detect_container(NULL) > 0) {
+ log_info("Running in a container, ignoring fstab swap entry for %s.", what);
+ return 0;
+ }
+
r = mount_find_pri(me, &pri);
if (r < 0) {
log_error("Failed to parse priority");
r = mount_find_pri(me, &pri);
if (r < 0) {
log_error("Failed to parse priority");
@@
-341,6
+347,11
@@
static int parse_fstab(bool initrd) {
if (!what)
return log_oom();
if (!what)
return log_oom();
+ if (detect_container(NULL) > 0 && is_device_path(what)) {
+ log_info("Running in a container, ignoring fstab device entry for %s.", what);
+ continue;
+ }
+
where = initrd ? strappend("/sysroot/", me->mnt_dir) : strdup(me->mnt_dir);
if (!where)
return log_oom();
where = initrd ? strappend("/sysroot/", me->mnt_dir) : strdup(me->mnt_dir);
if (!where)
return log_oom();