Compression
gunzip 是原子的嗎?
我有兩個監視目錄的腳本(postgres warm-standby)
一個腳本將壓縮文件複製到目錄中,然後解壓縮它們。
另一個腳本監視未壓縮的文件,然後將它們攝取到 postgres 中。
我想知道我是否可以讓攝取器腳本在編寫它時讀取gunzip的輸出?
簡而言之:gunzip
- 解壓然後改名字
- 解壓縮時復製到新名稱
- 別的東西
它是非原子的,如您在大壓縮期間是否執行 ls 所見:
dfranke@alatar:~$ dd if=/dev/zero of=bigfile bs=1M count=3072 3072+0 records in 3072+0 records out 3221225472 bytes (3.2 GB) copied, 39.1106 s, 82.4 MB/s dfranke@alatar:~$ gzip bigfile & [1] 19876 dfranke@alatar:~$ ls -l bigfile* -rw-r--r-- 1 dfranke staff 3221225472 2010-11-08 17:16 bigfile -rw------- 1 dfranke staff 114688 2010-11-08 17:18 bigfile.gz dfranke@alatar:~$ ls -l bigfile* -rw-r--r-- 1 dfranke staff 3221225472 2010-11-08 17:16 bigfile -rw------- 1 dfranke staff 212992 2010-11-08 17:18 bigfile.gz