Portál AbcLinuxu, 14. července 2025 06:16


Dotaz: Script pri startu i pri vypnuti ?

16.11.2007 19:57 Huhaf | skóre: 4
Script pri startu i pri vypnuti ?
Přečteno: 577×
Odpovědět | Admin
Chtel bych se zeptat na to jestli muzu script automaticky pustit i pri vypnuti systemu. Jedna se mi o to, ze pri startu systemu by se win boot soubory zmenili na skryte (tzn. pridala se pred ne tecka) a potom pri vypnuti systemu se vratilo vse zpet. Jde to udelat ? Diky
Nástroje: Začni sledovat (1) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

Max avatar 16.11.2007 20:21 Max | skóre: 72 | blog: Max_Devaine
Rozbalit Rozbalit vše Re: Script pri startu i pri vypnuti ?
Odpovědět | | Sbalit | Link | Blokovat | Admin
Dej to do init scriptu, ne? ;-). Co máš za distribuci? V některých se to píše do
/etc/init.d
a dělá se symlink do
/etc/rcX.d
kde X = 1;2;3;4;5 ... atd.
v některých se to dává do
/etc/rc.d
a zápis pro spuštění do
/etc/rc.conf
atd.
Příkladem scriptu z debianu budiž třeba :
#!/bin/sh
#
# Start/stops the wifi-sdileni script
#

# Defaults
RUN_MODE="daemons"

case "$1" in
        start)
                echo -n "Starting wifi-sdileni script:"

echo 1 > /proc/sys/net/ipv4/ip_forward

IPTABLES='/usr/local/sbin/iptables'


$IPTABLES -t nat -A POSTROUTING -o eth1 -j MASQUERADE

        echo -n "spusteno "

                echo "."
                ;;
        stop)
                echo -n "Stopping wifi-sdileni script:"
echo 0 > /proc/sys/net/ipv4/ip_forward
$IPTABLES -t nat -D POSTROUTING -o eth1 -j MASQUERADE
               
                echo -n "zastaveno "

        echo -n "down"

                echo "."
                ;;
        reload)
                echo -n "Reloading wifi-sdileni script:"

                 echo -n "Nejni potreba"

                echo "."
                ;;
        restart|force-reload)
                echo -n "Restarting wifi-sdileni script:"


                echo -n "Nejni potreba"


                echo "."
                ;;
        *)
                echo "Usage: /etc/init.d/wifi-sdileni {start|stop|reload|restart|force-reload}"
                exit 1
                ;;
esac

exit 0
Zdar Max
Měl jsem sen ... :(
16.11.2007 21:59 Michal Marek (twofish) | skóre: 55 | blog: { display: blog; } | Praha
Rozbalit Rozbalit vše Re: Script pri startu i pri vypnuti ?
Odpovědět | | Sbalit | Link | Blokovat | Admin
K čemu to má být? Aby po výpadku proudu nešlo spustit Windows? ;-)
Max avatar 16.11.2007 22:30 Max | skóre: 72 | blog: Max_Devaine
Rozbalit Rozbalit vše Re: Script pri startu i pri vypnuti ?
Chlapec chce asi mapovat win partition do linuxu. chce jí asi spřístupnit všem a nechce, aby byly vidět systémový složky. Zřejmě, aby uživatelé nemohli wodpálit win na oné partition. Toto řešení je samozřejmě úplně na nic :).
Pokud by chtěl něco na oné partition sdílet s ostatními a nechtěl by, aby mu něco provedli s win, tak bych tu partition připojil někam jinam a jim namapoval pomocí mount -o bind jen jednotlivé adresáře. Je to rozhodně bezpečnější řešení.
Zdar Max
Měl jsem sen ... :(
16.11.2007 23:33 Huhaf | skóre: 4
Rozbalit Rozbalit vše Re: Script pri startu i pri vypnuti ?
To co chci je daleko prostejsi :) Ohledne sdileni - jedna se o desktop (Debian 4.0 etch) a jde mi jen o to, aby mi na discich s ntfs v linuxu neprekazely soubory z win
17.11.2007 08:55 Ash | skóre: 53
Rozbalit Rozbalit vše Re: Script pri startu i pri vypnuti ?
Tak to už bych skoro řešil anitwinfile modulem do jádra :)
Max avatar 17.11.2007 09:16 Max | skóre: 72 | blog: Max_Devaine
Rozbalit Rozbalit vše Re: Script pri startu i pri vypnuti ?
Teď si děláš prdel, nebo něco takového opravdu je? :)
Zdar Max
Měl jsem sen ... :(
17.11.2007 19:20 Ash | skóre: 53
Rozbalit Rozbalit vše Re: Script pri startu i pri vypnuti ?
No... možná že je; negoogloval jsem :D
Max avatar 17.11.2007 09:14 Max | skóre: 72 | blog: Max_Devaine
Rozbalit Rozbalit vše Re: Script pri startu i pri vypnuti ?
nano -w /etc/init.d/ntfspermission
#!/bin/sh
#
# Start/stops the ntfspermission script
#

# Defaults
RUN_MODE="daemons"

case "$1" in
        start)
                echo -n "Starting ntfspermission script:"
            cd /mnt/winxp
            mv boot.ini .boot.ini
            mv ntldr .ntldr
            mv autoexec.bat .autoexec.bat
            ....
            cd /
                echo -n "started "

                echo "."
                ;;
        
        stop)
                echo -n "Stopping ntfspermission script:"
            cd /mnt/winxp
            mv .boot.ini boot.ini
            mv .ntldr ntldr
            mv .autoexec.bat autoexec.bat
            ... 
            cd /   
                echo -n "stoped "

                echo "."
                ;;
      
       restart)
                echo -n "Restarting ntfspermission script:"


                echo -n "Nejni potreba"


                echo "."
                ;;
        *)
                echo "Usage: /etc/init.d/ntfspermission{start|stop|restart}"
                exit 1
                ;;
esac

exit 0

cat /etc/inittab | grep initdefault
Dle toho čísla za ID zvolíme příslušný rcX.d (v mém případě 3) :
ln -s /etc/init.d/ntfspermission /etc/rc3.d/S99ntfspermission
To je vše :)
Zdar Max
Měl jsem sen ... :(
17.11.2007 21:05 cronin | skóre: 49
Rozbalit Rozbalit vše Re: Script pri startu i pri vypnuti ?
Trochu refaktoringu: zoznam suborov na jedinom mieste, odstranena zbytocna zmena adresara. :-)
#!/bin/sh
#
# Start/stops the ntfspermission script
#

# Defaults
RUN_MODE="daemons"

location="/mnt/winxp"
win_files="boot.ini ntldr boot.ini autoexec.bat ..."

case "$1" in
        start)
                echo -n "Starting ntfspermission script:"
                for win_file in ${win_files} ; do
                      mv "${location}/${win_file}" "${location}/.${win_file}"
                done
                echo -n "started "

                echo "."
                ;;
        
        stop)
                echo -n "Stopping ntfspermission script:"
                for win_file in ${win_files} ; do
                      mv "${location}/.${win_file}" "${location}/${win_file}"
                done

                echo -n "stoped "

                echo "."
                ;;
      
       restart)
                echo -n "Restarting ntfspermission script:"


                echo -n "Nejni potreba"


                echo "."
                ;;
        *)
                echo "Usage: /etc/init.d/ntfspermission{start|stop|restart}"
                exit 1
                ;;
esac

exit 0

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.