Al editar el archivo de configuración /etc/sudoers
, puede configurar sudo
para permitir que un usuario ejecute comandos como otro usuario. En particular, puede usar sudo
para permitir que un usuario inicie un shell como otro usuario. Por ejemplo, la siguiente línea permite user
ejecutar bash
comolowp0
:
user ALL=(lowp0) /bin/bash
Entonces debería poder hacer algo como lo siguiente:
user@host:~$ sudo -u lowp0 bash
lowp0@host:~$
También puede usar el comando su
en lugar debash
:
user ALL=(lowp0) /usr/bin/su -l
Para permitir el acceso a ambos usuarios a través de ambos comandos, puede agregar las siguientes líneas:
user ALL=(lowp0,lowp1) /bin/bash, /usr/bin/su -l
Si está ejecutando un servidor SSH, también puede agregar la clave pública de user
a los archivos ~/.authorized_keys
de lowp0
y lowp1
. Esto debería permitir user
a ssh
en localhost como cualquiera de estos usuarios, p.:
user@host:~$ ssh lowp0@localhost
lowp0@host:~$
Рядом с небольшими задачами следует провести черту:
if [ -z $batas ] | [ $batas -lt 0 ]; then
быть
if [ -z $batas ] || [ $batas -lt 0 ]; then
А вместо этого:
if [ `expr $i % 2` -eq 0 ]; then
вы можете использовать
if (( $i % 2 == 0 )); then
Недостаток информации в этом посте сделал этот вызов странно привлекательным для меня. Во-первых, обратился к роботу-переводчику, который сказал мне, что язык малайский, и догадался, что «батас» означает «предел» или «граница», генап означает «четный», ганжил означает «нечетный», а предупреждающее сообщение примерно гласит: «Опс»., не может быть пустым или цикл Limit должен быть >= 0".
Таким образом, код запрашивает входное значение, проверяет, не является ли значение пустым и равно нулю или больше, а затем, когда вы запускаете его --, он выполняет бесконечный цикл и выдает нули на терминал. Поскольку я не уверен, каковы конечные цели кодера, я не могу быть уверен, что «исправил» это правильно, но переместив строку «let i=i+1;» из оператора "else" вместо бесконечного цикла он считает от нуля до введенного предела цикла и выводит счет. Он также подсчитывает количество четных и нечетных чисел, встречающихся на пути. Код, как есть, ничего не делает с этими подсчетами. Возможно, это фрагмент более крупного кода. Может быть, это игрушечная программа, написанная кем-то, кто экспериментирует ради удовольствия. Во всяком случае, вот «переведенная» версия, в которой добавлены строки, выводящие четные и нечетные значения:
i=0;
even_num=0;
odd_num=0;
echo -n "Limit of loop : ";
read loop_lim;
if [ -z $loop_lim ] | [ $loop_lim -lt 0 ]; then
echo "Ops, Limit of loop cannot be empty and must be >= 0";
exit 0;
fi
while [ $i -le $loop_lim ]; do
echo -n "$i,";
if [ `expr $i % 2` -eq 0 ]; then
let even_num=$even_num+1;
else
let odd_num=$odd_num+1;
fi
let i=$i+1;
done
echo
echo $even_num
echo $odd_num