<div dir="ltr">Hi Teemu,<div><br></div><div>does this tool have a name?</div><div><br></div><div>IMHO it is missing -r switch that is present in uidmapshift.c (info about existing uids, gids).</div><div><br></div><div>Additionally, uidmapshift can limit its scope of operation, and not just directory-wise, but also by id-range. For example, if you run uidmapshift on a directory with "-r 0 1000000 100000 /path/to/dir" arguments, and it dies in the middle of the process for whatever reason, you can just rerun the same command and the end result will be consistent, as it will not touch UIDs above 100.000.</div><div>On the other hand, using your tool with arguments "0 1000000 /path/to/dir", I will end up with some files in 1.000.000-1.100.000 and other files (that were affected by both runs) in 2.000.000-2.100.000 UID/GID range.</div><div><br></div><div>Do not get me wrong, I managed to scr*w permissions with uidmapshift too, but here the possibility of doing it is even greater.</div><div><br></div><div>My 2 cents,</div><div>b.</div><div><br></div><div>PS: Creating wrapper script that does one short repeated task for you might seem better approach instead of rewriting uidmapshift's functionality in python.</div><div><br></div></div><div class="gmail_extra"><br><div class="gmail_quote">On 7 October 2015 at 13:24,  <span dir="ltr"><<a href="mailto:teemu.gronqvist@net9.fi" target="_blank">teemu.gronqvist@net9.fi</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">




<div dir="ltr">
<div dir="ltr" style="font-family:'Calibri','Segoe UI','Meiryo','Microsoft YaHei UI','Microsoft JhengHei UI','Malgun Gothic','sans-serif';font-size:12pt"><div>Hello everyone,</div><div><br></div><div>Made this tool in the morning. It can be used to shift subuid and subgid maps of unprivleged containers easily to bigger or smaller range making migrations and things like that a whole lot easier. I’m not sure if LXD does this by default when migrating, but anyways yeah, it’s a good tool for plain LXC to say the least.</div><div><br></div><div>It is very useful for our company so I thought that someone else might find it useful as well.</div><div><br></div><div>Here’s the source for anyone interested: <a href="http://paste.ubuntu.com/12703540/" target="_blank">http://paste.ubuntu.com/12703540/</a></div><div><br></div><div>This is based on the C version found at <a href="https://github.com/fcicq/nsexec/blob/master/uidmapshift.c" target="_blank">https://github.com/fcicq/nsexec/blob/master/uidmapshift.c</a> but this one is instead programmed in Python needing no compiling etc.</div><div><br></div><div>I have tested it a few times on a few folders but it might have some bugs, so maybe someone more experienced in Python than me might want to give it a look.</div><div><br></div><div>Kind regards,</div><div>Teemu Grönqvist</div><div>Net9 Oy</div><div><br></div></div>
</div>

<br>_______________________________________________<br>
lxc-users mailing list<br>
<a href="mailto:lxc-users@lists.linuxcontainers.org">lxc-users@lists.linuxcontainers.org</a><br>
<a href="http://lists.linuxcontainers.org/listinfo/lxc-users" rel="noreferrer" target="_blank">http://lists.linuxcontainers.org/listinfo/lxc-users</a><br></blockquote></div><br></div>