Справочник по консольным командам Toybox для Android 12


  Ver.0.8.4     Ver.0.8.9     Pending  

Путь: Toys/Other, команды версии: Ver.4     Ver.9


pivot_root

Комментарии в файле pivot_root.c :

usage: pivot_root OLD NEW

Поменять местами СТАРУЮ и НОВУЮ файловые системы (как при одновременном монтировании --move) и переместите все процессы с chdir или chroot из СТАРОГО в НОВЫЙ (включая потоки ядра), поэтому OLD может быть размонтирован. Каталог NEW должен существовать в OLD. Это не работает на initramfs, который нельзя переместить (примерно так же, как нельзя убить PID 1; см. вместо этого switch_root).


usage: pivot_root OLD NEW

Swap OLD and NEW filesystems (as if by simultaneous mount --move), and move all processes with chdir or chroot under OLD into NEW (including kernel threads) so OLD may be unmounted. The directory NEW must exist under OLD. This doesn't work on initramfs, which can't be moved (about the same way PID 1 can't be killed; see switch_root instead).


Исходный текст в файле pivot_root.c

#define FOR_pivot_root
#include "toys.h"

void pivot_root_main(void)
{
  if (syscall(__NR_pivot_root, toys.optargs[0], toys.optargs[1]))
    perror_exit("'%s' -> '%s'", toys.optargs[0], toys.optargs[1]);
}