Puncte:0

Cum să adăugați o linie la /etc/fstab prin ssh

drapel cn

Am un program de montare automată pentru hdd scris.

Software-ul folosește ssh pentru a emite cereri împotriva mașinii țintă. Ideea este că un HDD nou instalat este adăugat automat la fstab.

Am făcut totul să funcționeze până la punctul în care linia fstab este gata să fie atașată la fișier.

Încerc să atașez astfel în software-ul meu:

command.RunCommandSudo($"echo \"{mountstring}\" >> /etc/fstab");

rezultând o interogare ssh de următorul format:

sudo echo "UUID=X /mnt/test ext4 defaults 0 1" >> /etc/fstab 

=> Permisiune refuzată

cum ar fi un mod adecvat? Mă îndoiesc că modalitatea potrivită pentru un software automat ar fi să treci printr-un editor de text, cum ar fi nano?

Matt Murphy avatar
drapel ng
Cred că indirectarea liniei de comandă (>>) nu poate fi interpretată ca fiind legată de ecou, ​​ca să spunem așa. Bănuiesc că ajunge să ia rezultate din sudo.
Puncte:2
drapel cn

Ca aceasta

sudo su -c "echo 'UUID=X /mnt/test ext4 defaults 0 1' >> /etc/fstab"

Rețineți că un script ca acesta ar trebui să fie folosit de utilizatorul root și nu de administratorul dvs., astfel încât să anuleze utilizarea sudo.

Îmi place mai mult să o fac așa:

grep -q '/mnt/test' /etc/fstab || 
printf 'UUID=X /mnt/test ext4 implicite 0 1\n' >> /etc/fstab

folosind user root pentru a face acest lucru.

Puncte:2
drapel id

O altă modalitate este de a folosi tricou comanda.

NUME
       tee - citiți de la intrarea standard și scrieți în fișierele și ieșirile standard

REZUMAT
       tee [OPȚIUNE]... [FIȘIER]...

DESCRIERE
       Copiați intrarea standard în fiecare FILE și, de asemenea, în ieșirea standard.

       -a, --anexează
              adăugați la fișierele date, nu suprascrieți

Deci, pentru comanda dvs. ați putea face acest lucru:

echo „UUID=X /mnt/test ext4 implicite 0 1” | sudo tee -a /etc/fstab

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.