sudo echo hostname

Fórumok

Szaisztok,

Ubuntuval próbálkozom éppen (2.6.24-19-server)

sudo echo myhost > /etc/hostname

Amire üzen, hogy:
-bash: /etc/hostname: Permission denied

Erre találtam ezt, ami meg is oldja:
sudo bash -c “echo myhost > /etc/hostname”

De magyarázatként csak annyi volt, hogy az első megoldás nem szerencsés.
De miért nem?? Szóval van erre valami különösebb magyarázat?

Hozzászólások

mert te nem tudsz irni a /etc/hostnamebe :D es ezen az se segit ha rootkent irod ki a kepernyore :D attol abba te meg nem tudsz irni... sudo csak az echora vonatkozik.

---
Apple iMac 20"
áéíóöőúüű

Gondolom, az echo a bash-ben is builtin, és sudo-val is a már meglévő (i.e. ahol a parancsot kiadod) user shell jogai maradnak érvényesek.
"no video codec le a win32vel", de "Gentoohoz lehet meg tul fiatal vagy"

iMac:~ endre$ sudo echo lol > /tmp/stuff
iMac:~ endre$ sudo /bin/echo lol2 > /tmp/stuff2
iMac:~ endre$ sudo bash -c "echo lol3 > /tmp/stuff3"
iMac:~ endre$ ls -l /tmp/stuff*
-rw-r--r-- 1 endre wheel 4 Oct 5 17:07 /tmp/stuff
-rw-r--r-- 1 endre wheel 5 Oct 5 17:07 /tmp/stuff2
-rw-r--r-- 1 root wheel 5 Oct 5 17:07 /tmp/stuff3

bar ez macos, de az eredmeny ugyanaz.. egid nem valtozik sima sudozassal.

a > parancsot a shell csinalja, az meg nem sudo-val lett inditva

man sh

--
"Computer science is no more about computers than astronomy is about telescopes."