diff options
author | Irina Gómez <irinagomez@us.es> | 2019-05-15 14:13:17 +0200 |
---|---|---|
committer | Irina Gómez <irinagomez@us.es> | 2019-05-15 14:13:17 +0200 |
commit | 97b8472e4a395a35ec0cc2d2dc1550fb9c378348 (patch) | |
tree | 64e8f2dc5105e556eca1efa3619c20b6cd4ffd37 /client | |
parent | fec3e4f55169609aa6a13b9f29272113fe9ffa0c (diff) |
#895 Fix initCache: if the size of the cache changes, it always formats the cache. ogCheckFs includes the CACHE file system type
Diffstat (limited to 'client')
-rwxr-xr-x | client/engine/FileSystem.lib | 36 | ||||
-rwxr-xr-x | client/shared/scripts/initCache | 6 |
2 files changed, 22 insertions, 20 deletions
diff --git a/client/engine/FileSystem.lib b/client/engine/FileSystem.lib index 0642a854..aa1778eb 100755 --- a/client/engine/FileSystem.lib +++ b/client/engine/FileSystem.lib @@ -55,24 +55,24 @@ PART="$(ogDiskToDev $1 $2)" || return $? TYPE=$(ogGetFsType $1 $2) case "$TYPE" in - EXT[234]) PROG="e2fsck"; PARAMS="-y"; CODES=(1 2) ;; - BTRFS) PROG="btrfsck"; CODES=(1) ;; - REISERFS) PROG="fsck.reiserfs"; PARAMS="<<<\"Yes\""; CODES=(1 2) ;; - REISER4) PROG="fsck.reiser4"; PARAMS="-ay" ;; - JFS) PROG="fsck.jfs"; CODES=(1 2) ;; - XFS) PROG="xfs_repair" ;; - F2FS) PROG="fsck.f2fs" ;; - NTFS) PROG="ntfsfix" ;; - EXFAT) PROG="fsck.exfat" ;; - FAT32) PROG="dosfsck"; PARAMS="-a"; CODES=(1) ;; - FAT16) PROG="dosfsck"; PARAMS="-a"; CODES=(1) ;; - FAT12) PROG="dosfsck"; PARAMS="-a"; CODES=(1) ;; - HFS) PROG="fsck.hfs"; PARAMS="-f" ;; - HFSPLUS) PROG="fsck.hfs"; PARAMS="-f" ;; - UFS) PROG="fsck.ufs" ;; - ZFS) PROG="fsck.zfs" ;; - *) ogRaiseError $OG_ERR_PARTITION "$1, $2, $TYPE" - return $? ;; + EXT[234]|CACHE) PROG="e2fsck"; PARAMS="-y"; CODES=(1 2) ;; + BTRFS) PROG="btrfsck"; CODES=(1) ;; + REISERFS) PROG="fsck.reiserfs"; PARAMS="<<<\"Yes\""; CODES=(1 2) ;; + REISER4) PROG="fsck.reiser4"; PARAMS="-ay" ;; + JFS) PROG="fsck.jfs"; CODES=(1 2) ;; + XFS) PROG="xfs_repair" ;; + F2FS) PROG="fsck.f2fs" ;; + NTFS) PROG="ntfsfix" ;; + EXFAT) PROG="fsck.exfat" ;; + FAT32) PROG="dosfsck"; PARAMS="-a"; CODES=(1) ;; + FAT16) PROG="dosfsck"; PARAMS="-a"; CODES=(1) ;; + FAT12) PROG="dosfsck"; PARAMS="-a"; CODES=(1) ;; + HFS) PROG="fsck.hfs"; PARAMS="-f" ;; + HFSPLUS) PROG="fsck.hfs"; PARAMS="-f" ;; + UFS) PROG="fsck.ufs" ;; + ZFS) PROG="fsck.zfs" ;; + *) ogRaiseError $OG_ERR_PARTITION "$1, $2, $TYPE" + return $? ;; esac # Error si el sistema de archivos esta montado o bloqueado. ogUnmount $1 $2 diff --git a/client/shared/scripts/initCache b/client/shared/scripts/initCache index 796ab84f..9caf0be0 100755 --- a/client/shared/scripts/initCache +++ b/client/shared/scripts/initCache @@ -69,6 +69,8 @@ else ogUnmountCache 2>/dev/null ogDeleteCache fi + # Tomamos el tamaño actual. Si no existe cache será 0. + OLDSIZE=$(ogGetCacheSize 2>/dev/null) || OLDSIZE=0 # Error si tamaño definido no es >0. if [ ! $SIZE -gt 0 ]; then @@ -83,9 +85,9 @@ else ogCreateCache $NDISK $NPART $SIZE ogUpdatePartitionTable $NDISK fi - # Si caché no montada y no formateada, formatear. + # Si caché no montada y no formateada o cambia el tamaño: formatear. CACHE=$(ogFindCache) || exit $? - if ! ogIsFormated $CACHE; then + if ! ogIsFormated $CACHE || [ $SIZE -ne $OLDSIZE ]; then echo "[50] Formatear caché local." ogFormatCache fi |