El propietario de /etc y /boot es o debería ser root .
echo test > /etc/test
bash: /etc/test: Permission denied
Solo el propietario raíz tiene permiso para crear archivos o eliminarlos del directorio.
В Bash _
— это специальный параметр, который устанавливается равным значению последнего аргумента каждый раз при разборе команды. Он также имеет специальное свойство не экспортироваться, которое применяется каждый раз, когда выполняется команда (, см.bind_lastarg
в исходном коде Bash ).
Когда вы запускаете Bash с помощью bash --norc
, вы попадаете в подсказку, не выполнив ни одной команды; поэтому _
, если он присутствовал в среде, не был перезаписан. Когда вы запускаете Bash из Bash, родительский Bash устанавливает _
для команды, выполняемой в дочерней среде перед ее запуском; как и любая другая переменная, присутствующая в среде при запуске, _
становится экспортируемой переменной, и, поскольку никакая команда не была запущена, эта переменная не была «неэкспортирована». Это объясняет, почему ваш первый export
содержит его.
Как только вы запускаете команду (, ваша первая export
в этом случае ), _
перезаписывается и теряет флаг экспорта. Это объясняет, почему ваш второй export
не показывает его.
(Внутри _
такая же переменная, как и любая другая; так что его можно установить только для чтения -или пометить как целое, с забавными результатами.)