Для систем без machinectl shell
(, напр. systemd v219 в CentOS 7 Atomic )или в ситуациях, когда machinectl login
не работает по какой-либо причине, вы можете получить оболочку или запустить команды напрямую, используяnsenter
:
Пример:
$ nsenter \
--target=$(machinectl show --property Leader ipsec-libreswan | sed "s/^Leader=//") \
--mount --uts --ipc --net --pid
Нет, другого пути нет; overflow_stack
не объявлен и не определен ни в одном из заголовков, включенных в entry.S
. Но это не ошибка для ассемблера ; overflow_stack
не имеет локального префикса, поэтому он становится неопределенным символом в arch/arm64/kernel/entry.o
, который разрешается при линковке ядра.
Выполнить
make arch/arm64/kernel/entry.o
(или make CROSS_COMPILE=aarch64-linux-gnu- ARCH=arm64 arch/arm64/kernel/entry.o
на архитектуре, отличной отarm64
); тогда
objdump -t arch/arm64/kernel/entry.o
покажет (среди прочих)
0000000000000000 *UND* 0000000000000000 overflow_stack
Таблицы перемещений включают ряд записей дляoverflow_stack+0x0000000000001000
(overflow_stack + OVERFLOW_STACK_SIZE
); запустите objdump -r arch/arm64/kernel/entry.o
, чтобы увидеть их.