O "echo 300" é executado usando sudo, que gera 300 para stdout da maneira normal. Então, como usuário normal, você está tentando obter essa saída e gravar em / sys /
Sudo não é um comando mágico que eleva privilégios para toda a sua linha de comando. Leva os argumentos que você passou para ele e os executa como um programa. Bash (que está sendo executado como um usuário normal) executa 'sudo echo 300', em seguida, pega essa saída e tenta gravá-la em um arquivo. Note que a gravação no arquivo é feita pelo bash que está sendo executado como usuário normal.
Isso deve funcionar:
sudo bash -c "echo 300 > / sys / bloco / md0 / md / stripe_cache_size"
sudo executará o bash com privilégios mais altos, e então o bash root executará o comando inteiro.