echo 1 comando sudo / sys / block / sdX / device / delete [duplicado]

0

Estou tentando excluir um disco scsi usando o comando abaixo echo 1 > sudo /sys/block/sdb/device/delete . Quando tento lsscsi após o comando, ainda consigo ver o disco.

Isso seria ótimo se alguém pudesse apontar onde estou errado.

    
por vishnubvrit 16.01.2018 / 11:39

1 resposta

4

Onde você está errado, você entende como o redirecionamento de saída funciona.

O comentário de Kusalananda explica o que acontece - a saída de echo é direcionada para um arquivo chamado sudo no diretório local. 1 e /sys/block/sdb/device/delete são argumentos para echo , você os encontrará no arquivo de saída.

Da mesma forma, sudo echo 1 > /sys/block/sdb/device/delete não funcionará, porque o sudo ainda não foi iniciado quando o shell configurar o redirecionamento de saída.

Se você realmente quiser fazer isso em vez de su para root por um momento, você vai querer:

echo 1 | sudo tee /sys/block/sdb/device/delete

ou

sudo sh -c 'echo 1 > /sys/block/sdb/device/delete'

tee recebe a entrada de stdin e a grava no arquivo especificado, bem como stdout , e pode ser executado como raiz por meio de sudo . No último comando, todo o processo do shell é executado em sudo .

    
por 16.01.2018 / 12:12