O'Reilly logo

Bash. Receptury by Cameron Newham, JP Vossen, Carl Albing

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

14.11. Bezpieczne pliki tymczasowe

Problem

Chcemy utworzyć plik tymczasowy, wiedząc, jakie konsekwencje ma dla systemu zabezpieczeń zastosowanie łatwej do przewidzenia nazwy.

Rozwiązanie

Zazwyczaj łatwym i dostatecznie bezpiecznym rozwiązaniem jest wykorzystanie zmiennej $RANDOM. Oto przykład:

# Zmienna $TMP musi być zdefiniowana [ -n "$TMP" ] || TMP='/tmp' # Wykorzystanie wartości losowych do wyznaczenia nazwy katalogu tymczasowego until [ -n "$temp_dir" -a ! -d "$temp_dir" ]; do temp_dir="/tmp/opisowy_prefiks.${RANDOM}${RANDOM}${RANDOM}" done mkdir -p -m 0700 $temp_dir \ || { echo "BŁĄD: Nie można utworzyć katalogu tymczasowego '$temp_dir': $?"; exit 100; } # Wykorzystanie wartości losowych do wyznaczenia nazwy pliku tymczasowego until [ -n "$temp_file" ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required