>[оверквотинг удален]
> Скажите пытаюсь запустить mydlp в ubuntu1404 amd64 под управлением jail freebsd!
> Есть вопрос весь erlang ссылается на /dev/shm!
> Что нужно написать в linprocfs.c и linux_stat.c что бы был link /run/shm
> в папка /dev что то вроде /dev/shm -> /run/shm ! Сразу
> скажу создавать при каждом старте jail симлинк ln -s path/dlp/dev/shm /dev/shm
> и иметь в devfs.conf строку link /run/shm shm не есть гуд
> так как на основной хостовой системе не хочу иметь папку /run/shm!
> Прошу помочь с кодом в linprocfs.c и linux_stat.c !
> Еще раз вопрос что нужно написать там в исходнике что бы при
> старте jail в устройкстве появлялся /dev/shm -> /run/shm?sys/compat/linprocfs/linprocfs.c | 4 ++++
sys/compat/linux/linux_stats.c | 4 +++-
2 files changed, 7 insertions(+), 1 deletion(-)
diff --git a/sys/compat/linprocfs/linprocfs.c b/sys/compat/linprocfs/linprocfs.c
index 3adbe96..9a2f97e 100644
--- a/sys/compat/linprocfs/linprocfs.c
+++ b/sys/compat/linprocfs/linprocfs.c
@@ -390,6 +390,10 @@ linprocfs_domtab(PFS_FILL_ARGS)
/* a real Linux mtab will also show NFS options */
sbuf_printf(sb, " 0 0\n");
}
+
+ /* Add a mountpoint for shm inside jails */
+ sbuf_printf(sb, "tmpfs /tmp/shm tmpfs rw,nosuid,nodev,relatime 0 0\n");
+
mtx_unlock(&mountlist_mtx);
if (flep != NULL)
free(flep, M_TEMP);
diff --git a/sys/compat/linux/linux_stats.c b/sys/compat/linux/linux_stats.c
index 2e05c85..7411570 100644
--- a/sys/compat/linux/linux_stats.c
+++ b/sys/compat/linux/linux_stats.c
@@ -409,9 +409,11 @@ linux_statfs(struct thread *td, struct linux_statfs_args *args)
#endif
dev_shm = 0;
error = kern_statfs(td, path, UIO_SYSSPACE, &bsd_statfs);
- if (strncmp(path, "/dev/shm", sizeof("/dev/shm") - 1) == 0)
+ if (strncmp(path, "/dev/shm", sizeof("/dev/shm") - 1) == 0 ||
+ strncmp(path, "/tmp/shm", sizeof("/tmp/shm") - 1) == 0)
dev_shm = (path[8] == '\0'
|| (path[8] == '/' && path[9] == '\0'));
+
LFREEPATH(path);
if (error)
return (error);