Hindra program från att ändra/flytta fil. (FreeBSD)

Permalänk

Hindra program från att ändra/flytta fil. (FreeBSD)

Jag har ett program som ska användas från ett flashminne och då vill jag helst undvika att den skriver till disken.

Problemet är att det ej fungerar med:
chmod -w fil.config

Den flyttar bara filen till fil.config.bak och sedan skriver en ny.

Kan man stoppa detta på något sätt?

Edit: Löste problemet med chflags
chflags uchg fil.config

Sen går den inte att flytta eller ändra.

Sen tas det bort med:
chflags nouchg fil.config

Mera står i "man chflags".

Edit2: Istället hängde sig programmet... suck.

Permalänk
Hedersmedlem

Vad är det för program och vad använder det filen till?

Att det första inte funkade beror på att du fortfarande har skrivrätt till katalogen filen ligger i, vilket innebär att du kan radera eller byta namn på den. "chmod +t katalog/" förhindrar det beteendet, om du inte är ägare till katalogen.

Visa signatur

I have free will but I choose to oscillate

Permalänk

Programmet i fråga är Psybnc och det kommer köras från användarens hemkatalog. Problemet är att den uppdaterar config filen så fort man tillexempel går in i en kanal.

Går det inte att tillexempel skicka alla write kommandon till /dev/null på något sätt? Då tror ju programmet att den får skriva och lever lyckligt.

I värsta fall får jag ändra i källkoden.

Edit: Jag ändrade i källkoden.

För er som undrar hur:

i filen src/p_inifunc.c leta efter flushconfig()
kommentera ut allt förutom

return 0x0;

NOTERA Då sparar den inga inställningar alls.

Permalänk
Medlem

Random att de inte hade tänkt på att folk kanske vill inte köra flushconfig() och lagt till en flagga för det....

Visa signatur

Plan9 fan. In glenda we trust.

Permalänk

Mjo... det är lite mysko. Funderar på att skriva en lite vettigare lösning så man kan skriva typ ett /flushconfig kommando. Så man kan spara ändringar när man vill.

Edit: Då denna tråd är avklarad så skapade jag en ny tråd om PsyBNC versionen som jag fixade till (bättre än min fulfix tidigare i tråden ) http://www.sweclockers.com/forum/showthread.php?s=&threadid=6...