Portál AbcLinuxu, 4. května 2024 03:54


Dotaz: Jak nastavit prava

3.6.2008 10:11 Honza
Jak nastavit prava
Přečteno: 370×
Odpovědět | Admin
Ahoj, mam scriptik na tahani priloh z mailu a jejich ukladani do adresare vc. prejmenovani..
#!/usr/bin/env bash

###############################################
#					      #
# skript na vytazeni prilohy fax.pdf za mailu #
#					      #
###############################################

# RIPMIME vytahne prilohu z mailu
/usr/local/bin/ripmime -i - --no-nameless -d /home/FAX
# end

# nastavi prava pouze pro cteni vlastnikem (nobody)
chmod 400 /home/FAX/fax.pdf
# end


# skript ji prejmenuje fax.pdf na fax_datum_poradi.pdf

function print_new_name () {
    # Input: file.pdf
    # Output: file_090308_01.pdf
    date=$(date +%d%m%y)
    i=1
    while :; do
	printf -v name "%s_%s_%02d.pdf" "${1%.pdf}" $date $i
	if [ ! -e "$name" ]; then break; fi
	let i=i+1
    done
    echo "$name"
}

for f in /home/FAX/fax.pdf; do
    # skip names with suffixes like _090308_01.pdf
    if [ "${f%_[0-9][0-9][0-9][0-9][0-9][0-9]_[0-9][0-9].pdf}" == "$f" ]; then
	name=$(print_new_name "$f")
	mv "$f" "$name"
    fi
done

# end


# odesle informacni e-mail na info

HEADER="MIME-Version: 1.0\n"
HEADER="${HEADER}Content-Type: text/plain; charset=UTF-8\n"
HEADER="${HEADER}Content-Transfer-Encoding: 8bit\n"
HEADER="${HEADER}From: FAX <fax@domena.cz>"

SUBJECT="Prijaty novy FAX"
TO="info@domena.cz"

mail -a "$(echo -e $HEADER)" -s "$SUBJECT" "$TO" << EOF


Dobrý den,

    máte novou faxovou zprávu ve složce /FAX na serveru.
    
					Hezký den přeje Váš FAX ;)
EOF

# end
potrebuju ale, aby se vytvorenemu souboru nastavila i prava pro uzivatele a skupinu. Ted tam mam nobody... dekuju za radu.
Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

3.6.2008 10:19 Tomáš | skóre: 31 | blog: Tomik
Rozbalit Rozbalit vše Re: Jak nastavit prava
Odpovědět | | Sbalit | Link | Blokovat | Admin
Viz man chown (change owner). Dá se tím změnit vlastník i skupina. Syntaxe se liší systém od systému, kvůli zatracené tečce, která dřív nemohla být v username, teď se povoluje. Buď to je chown looser.group soubor, nebo nověji chown looser:group soubor.
3.6.2008 18:44 Honza
Rozbalit Rozbalit vše Re: Jak nastavit prava
Nevim proc, ale v tom scriptu mi chown user:group vubec nefunguje...
Dalibor Smolík avatar 3.6.2008 19:17 Dalibor Smolík | skóre: 54 | blog: Postrehy_ze_zivota | 50°5'31.93"N,14°19'35.51"E
Rozbalit Rozbalit vše Re: Jak nastavit prava
Napadlo mě: používát přepínač -R pro podadresáře: chown -R uzivatel:skupina /home/neco/neco
Rozdíly v řeči a ve zvyklostech neznamenají vůbec nic, budeme-li mít stejné cíle a otevřená srdce.
3.6.2008 21:32 Honza
Rozbalit Rozbalit vše Re: Jak nastavit prava
to ne, protoze tak jak to mam v tom scriptu, tak to aplikuju primo na to fax.pdf .. coz ale jaksi nejde
3.6.2008 21:41 outsider
Rozbalit Rozbalit vše Re: Jak nastavit prava
chown muze pouzit jenom root (s vyjimkou pouziti chown misto chgrp)
3.6.2008 21:59 Honza
Rozbalit Rozbalit vše Re: Jak nastavit prava
tak co mi doporucite? Nejaka uprava scriptu nebo.... ? (diky)
3.6.2008 22:31 kuka
Rozbalit Rozbalit vše Re: Jak nastavit prava
z bezpecnostnich duvodu muze vlastnika souboru menit pouze root, tzn. pokud ma skript neco takoveho delat, musi bezet pod rootem, nebo musi byt rootovska prava zprostredkovana. zprostredkovat je lze tak, ze se pro chown nastavi SUID, coz je HODNE nebezpecne, nebo pomoci sudo, nebo wrapperem, ktery bude mit SUID root a sam zajisti omezeni napr. na konkretni adresar ve filesystemu, spoustejiciho uzivatele, hodinu spusteni apod.

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.