Odmietnutý prístup na súbor

Sekcia: Ostatné 24.02.2009 | 23:02
tchimo   Návštevník
Prosím o vysvetlenie prečo systém nedovolí programu "echo" pristúpiť na súbor. Jedná sa o napr: xy@PC3:~$ ls -la /var/log/upgrade.today
-rw------- 1 root root 8 2009-02-24 21:34 /var/log/upgrade.today
Ak súbor otvorím pomocou nano (alebo iným programom), potom ho môžem bežne zeditovať: xy@PC3:~$ sudo nano /var/log/upgrade.today
[sudo] password for tato:
Ale cez echo ma nepustí: xy@PC3:~$ sudo echo "rrr" >> /var/log/upgrade.today
bash: /var/log/upgrade.today: Prístup odmietnutý
Je to v Debiane.
Ďakujem.
    • Re: Odmietnutý prístup na súbor 25.02.2009 | 08:08
      Avatar igor   Používateľ
      povedal by som a mozno sa mylim, ze je to preto, lebo cez sudo urobis ako root len prikaz echo. presmerovanie a dopisanie vystupu echo urobis ako user pod ktorym si prihlaseny.
      • Re: Odmietnutý prístup na súbor 25.02.2009 | 09:04
        igor   Návštevník
        pozrel som na nete a nasiel som to aj v manualovej stranke sudo. skus prikaz:

        sudo sh -c "echo rrr >> /var/log/upgrade.today"
        • Re: Odmietnutý prístup na súbor 25.02.2009 | 09:37
          Avatar Dare_devil Debian, OpenSuse  Používateľ
          root[Desktop]# ls -laF
          -rw-r--r--  1 root   root           2 2009-02-25 08:31 upgrade.today
          
          root[Desktop]# exit
          exit
          
          viktor[~]$ su -c 'echo rrr >> upgrade.today'
          Password: 
          
          viktor[~]$ cat upgrade.today 
          rrr
          
          viktor[~]$ 
          
          skus miesto sudo pouzit su -c a miesto " pouzit ' , tento problem som riesil minule. Aky je rozdiel medzi uvodzovkami:
          viktor[~]$ su -c "echo $HOME"
          Password: 
          /home/viktor
          
          viktor[~]$ su -c 'echo $HOME'
          Password: 
          /root
          
          There is no flag large enough to cover the shame of killing innocent people
          • Re: Odmietnutý prístup na súbor 25.02.2009 | 21:12
            tchimo   Návštevník
            Ďakujem za vysvetlenie a každú radu. Urobil som skript, ktorý spúšťam: sudo skript
            Rozdiel medzi jednoduchými a dvojitými zátvorkami je ten, že pri " si znaky $ ' \ nechávajú ich špeciálny význam.

            xxx@PC3:~$ echo '$HOME'
            $HOME
            xxx@PC3:~$ echo "$HOME"
            /home/tato
        • Re: Odmietnutý prístup na súbor 27.02.2009 | 22:44
          Avatar nardew debian  Používateľ
          > sudo sh -c "echo rrr >> /var/log/upgrade.today"
          podla mna to tuna pusta len jeden prikaz, a to je sh, takze to nie je ekvivalentne s tym co porovnavas.

          teda podla mna...
          • Re: Odmietnutý prístup na súbor 28.02.2009 | 09:10
            igor   Návštevník
            aj podla mna, ale ked zadas :

            xy@PC3:~$ sudo echo "rrr" >> /var/log/upgrade.today

            tak to uz su podla mna 2 prikazy a preto to neide.