Я предполагаю, что вы говорите о концепции Bash о входе в систему и не -входе в систему и интерактивных оболочках Bash против не -интерактивных оболочек, как описано в разделе Invocation страницы руководства. (Это отличается от интерпретации в ответе Джеймса Янгмана любой произвольной команды, используемой в качестве «оболочки» (или интерпретатора команд пользователя )в файле passwd(5)
, и независимо от того, программа принимает пользовательский ввод; некоторые, такие как /usr/sbin/nologin
, очевидно, нет.)
Вы правы в том, что /bin/bash --login some-script.sh
вызовет не -интерактивный вызов Bash для входа в систему, и это, возможно, патологический пример. Есть один случай, возможно, необычный, но не совсем странный, который создает не -интерактивную оболочку входа в систему:ssh somehost < some-file
. Здесь sshd
запустит Bash с argv[0]
, установленным на -bash
, потому что ему не была дана команда для запуска, в результате чего Bash считает себя оболочкой входа в систему, но, поскольку стандартный ввод не подключен к терминалу, Bash не установит сам в интерактивный режим($-
не будет содержатьi
).
(Лично мне этот случай кажется гораздо более разумным, чем обратный, ssh somehost somecommand
, который не считается «оболочкой входа», даже если это новый вход в somehost
, как и выше.)
Недавно я сделал то, что должен был сделать давным-давно, и составил таблицу режимов Bash и запускаемых файлов инициализации . Если вы находите это запутанным, примите мужество, по крайней мере, я тоже. Это озадачивает меня, какова была их первоначальная цель с правилами о том, когда .bashrc
выполняется.
will it be able to access data from Ubuntu and steal it
Да, может, т.е. если вы используете что-то вроде ext2fsd и ваши разделы Linux смонтированы в Windows.
Даже если вы ничего не монтируете, передовые вредоносные программы могут напрямую читать ваши диски, искать определенные шаблоны в образах дисков и извлекать необходимые файлы, но я сомневаюсь, что такие вредоносные программы вообще существуют.
Усовершенствованное вредоносное ПО также может изменять саму прошивку UEFI и системный (загрузочный )раздел UEFI и оставаться резидентными даже после загрузки Linux.
Суть в том, что :вредоносное ПО под Windows может делать все то же, что и вы. Если вы беспокоитесь о безопасности своих данных в Linux, убедитесь, что ваш раздел Windows также защищен. Если вы достаточно параноик, полностью удалите Windows.
Вы ничего не можете защитить. ОС Windows MS -может делать все, что захочет. Даже шифрования данных недостаточно. Как MS -ОС Windows могла модифицировать загрузчик, чтобы вставить код, который крадет ключ.
Единственным безопасным решением является выделение MS -Windows на отдельной машине. Или запустить на виртуальной машине (, но для игр не годится ).