Re: wakealarm

2011-03-02 bef zés Mészáros Csaba
szerda 02 március 2011 18:59:18 dátummal Ferenc Wagner az alábbiakat írta:
> Mészáros Csaba  writes:
> > %kikapcs ALL=NOPASSWD: /home/csablak/bin/setwakeup.sh
> 
> %kikapcs ALL=NOPASSWD: /home/csablak/bin/setwakeup.sh *
> 
> > #!/bin/bash
> > 
> > printf "Jelenlegi idő: "
> > date +%F%t%T
> > printf "Add meg a dátumot (HH NN ÓÓ PP) "
> > read honap nap ora perc
> > SECS=$(date -u --date "${honap}/${nap} ${ora}:${perc}" +%s)
> > /home/csablak/bin/setwakeup.sh ${SECS}
> 
> sudo /home/csablak/bin/setwakeup.sh ${SECS}
Húúú vaze! Hiszen ezért is írtam bele a sudoersbe, és itt meg elfelejtettem.
Nahát több szem többet lát. Köszi.
 
> > cat /sys/class/rtc/rtc0/wakealarm
> > 
> > [...]
> > Próbálkoztam a /lib/udev/rules.d/udev,default.rules szabályt is átírni
> > erről: [...]
> 
> Ez a /dev/rtc0 eszköz csoportját változtatja, nem a
> /sys/class/rtc/rtc0/wakealarm fájlét.  
Ezt tudom, de úgy olvastam, hogy a wakealarm az rtc-t fogja majd felhasználni 
a működéséhez.

> Ha ioctl()-ekkel állítanád be az
> ébresztés idejét, akkor ez elég lenne, nem kellene sudo.
Ezt viszont kifejtenéd? Én csak tanulom ezeket a dolgokat, és kísérletezek.
Igazából a cél az hogy egy script írkálja majd be a megfelelő időpontokat.
Akkor is jó lesz amit ajánlasz? 

-- 
Üdvözlettel:
Mészáros Csaba
_
linux lista  -  linux@mlf.linux.rulez.org
http://mlf2.linux.rulez.org/mailman/listinfo/linux

Re: wakealarm

2011-03-02 bef zés Ferenc Wagner
Mészáros Csaba  writes:

> %kikapcs ALL=NOPASSWD: /home/csablak/bin/setwakeup.sh

%kikapcs ALL=NOPASSWD: /home/csablak/bin/setwakeup.sh *

> #!/bin/bash
>
> printf "Jelenlegi idő: "
> date +%F%t%T
> printf "Add meg a dátumot (HH NN ÓÓ PP) "
> read honap nap ora perc
> SECS=$(date -u --date "${honap}/${nap} ${ora}:${perc}" +%s)
> /home/csablak/bin/setwakeup.sh ${SECS}

sudo /home/csablak/bin/setwakeup.sh ${SECS}

> cat /sys/class/rtc/rtc0/wakealarm
>
> [...]
> Próbálkoztam a /lib/udev/rules.d/udev,default.rules szabályt is átírni erről:
> [...]

Ez a /dev/rtc0 eszköz csoportját változtatja, nem a
/sys/class/rtc/rtc0/wakealarm fájlét.  Ha ioctl()-ekkel állítanád be az
ébresztés idejét, akkor ez elég lenne, nem kellene sudo.
-- 
 Feri.
_
linux lista  -  linux@mlf.linux.rulez.org
http://mlf2.linux.rulez.org/mailman/listinfo/linux

Re: wakealarm

2011-03-02 bef zés Gabor HALASZ
On 2011.03.02. 14:38, Mészáros Csaba wrote:

> s azt sem értem hogy egy hivatkozásnak hogyan
> lehetnek más jogai, mint annak amire mutat?
>
> #ls -l /dev/rtc*
> lrwxrwxrwx 1 root root  4 2011-03-02 14:20 /dev/rtc ->  rtc0
> crw-rw 1 root kikapcs 254, 0 2011-03-02 14:20 /dev/rtc0
>

A posix a symlink-nel nem koveteli meg az osszes status info 
implementalasat, amit mutat az ls, az rendszerfuggo, viszont 
lenyegtelen, mert a muveleteket ugyis a azon a bejegyzesen vegzi, ahova 
mutat a link.

-- 
Gabor HALASZ 
_
linux lista  -  linux@mlf.linux.rulez.org
http://mlf2.linux.rulez.org/mailman/listinfo/linux

wakealarm

2011-03-02 bef zés Mészáros Csaba
Hello lista!

Odáig jutottam el, hogy a sudoers fájlba beírtam hogy egy script ne kérjen 
jelszót, mivel root jogokkal kapcsolatos dolgai vannak.
Ennek ellenlére mégis kell neki jelszó. Hogyan lehetne ezt megoldani?

A gép tévéfelvételek után önállóan ki tud kapcsolni.
Létrehoztam egy új csoportot, 
groupadd kikapcs
melynek tagja vagyok, továbbá az alábbi csoportoknak is tagja vagyok:
usermod -G audio,video,kikapcs csablak

beítam a visudoval a sudoers fájlba az alábbi sort:
%kikapcs ALL=NOPASSWD: /sbin/shutdown

Idáig tökéletesen működik. Senki nincs bejelentkezve, a gép bekapcsol, 
felveszi a műsort, majd kikapcsol.

Ugyanakkor létrehoztam ezt is, bízva abban hogy sima mezei felhasználóként 
megtudom írni a wakealarm fájlt.

%kikapcs ALL=NOPASSWD: /home/csablak/bin/setwakeup.sh

A setwakeup.sh tartalma meg ez:
#!/bin/bash

# itt törlöm az előzőleg esetleg bentragadt időt.
echo 0 >/sys/class/rtc/rtc0/wakealarm
# itt adom meg hogy mit írjon be
echo $1 > /sys/class/rtc/rtc0/wakealarm

Amivel meg beszeretném álítani az időt az meg ez:
#!/bin/bash

printf "Jelenlegi idő: "
date +%F%t%T
printf "Add meg a dátumot (HH NN ÓÓ PP) "
read honap nap ora perc
SECS=$(date -u --date "${honap}/${nap} ${ora}:${perc}" +%s)
/home/csablak/bin/setwakeup.sh ${SECS}
cat /sys/class/rtc/rtc0/wakealarm

Igazából szvsz egy script is elég lenne. 

Mit rontottam el?

Tehát amit szeretnék, hogy sima userként írhassam a 
/sys/class/rtc/rtc0/wakealarm állományt.

Próbálkoztam a /lib/udev/rules.d/udev,default.rules szabályt is átírni erről:
# miscellaneous
KERNEL=="fuse", MODE="0666"
SUBSYSTEM=="rtc", DRIVERS=="rtc_cmos", SYMLINK+="rtc"
KERNEL=="mmtimer",  MODE="0644"
KERNEL=="rflash[0-9]*", MODE="0400"
KERNEL=="rrom[0-9]*",   MODE="0400"

erre, ha már van egy "kikapcs" csoportom, melynek tagja vagyok.:
# miscellaneous
KERNEL=="fuse", MODE="0666"
SUBSYSTEM=="rtc", DRIVERS=="rtc_cmos", SYMLINK+="rtc", GROUP="kikapcs"
KERNEL=="mmtimer",  MODE="0644"
KERNEL=="rflash[0-9]*", MODE="0400"
KERNEL=="rrom[0-9]*",   MODE="0400"

Ennek ellenére nem megy, s azt sem értem hogy egy hivatkozásnak hogyan 
lehetnek más jogai, mint annak amire mutat?

#ls -l /dev/rtc*
lrwxrwxrwx 1 root root  4 2011-03-02 14:20 /dev/rtc -> rtc0
crw-rw 1 root kikapcs 254, 0 2011-03-02 14:20 /dev/rtc0


-- 
Üdvözlettel:
Mészáros Csaba
_
linux lista  -  linux@mlf.linux.rulez.org
http://mlf2.linux.rulez.org/mailman/listinfo/linux