소스 검색

Merge a642369f71 into 5cd873123c

pull/236/merge
HoTschir 1 개월 전
committed by GitHub
부모
커밋
a9240e53dd
No known key found for this signature in database GPG 키 ID: B5690EEEBB952194
1개의 변경된 파일30개의 추가작업 그리고 13개의 파일을 삭제
  1. +30
    -13
      log2ram

+ 30
- 13
log2ram 파일 보기

@@ -1,5 +1,9 @@
#!/usr/bin/env bash

# HTs 2024-09-25: - repeated start) (without stop) does not cause additional "mount --bind" anymore
# - LOG2RAM_LOG, extended by sync_to_disk, is rescued to hdd.path
# - cleanup at stop)

. /etc/log2ram.conf

if [ -z "$PATH_DISK" ]; then
@@ -51,6 +55,10 @@ sync_to_disk() {
else
cp -rfup --sparse=always "$RAM_LOG"/ -T "$HDD_LOG"/ 2>&1 | tee -a "$LOG2RAM_LOG"
fi

# ++HTs 2024-09-25: LOG2RAM_LOG, extended by sync_to_disk, needs to be rescued separately
cp "$LOG2RAM_LOG" "$HDD_LOG"/

}

## @fn sync_from_disk()
@@ -127,20 +135,25 @@ start)
HDD_LOG="${PATH_FIRST_PART}/hdd.${PATH_LAST_PART}"
LOG2RAM_LOG="${RAM_LOG}/${LOG_NAME}"

[ -d "$HDD_LOG" ] || mkdir "$HDD_LOG"

mount --bind "$RAM_LOG"/ "$HDD_LOG"/
mount --make-private "$HDD_LOG"/
wait_for "$HDD_LOG"

if [ "$ZL2R" = true ]; then
create_zram_log_drive
mount -t ext4 -o nosuid,noexec,noatime,nodev,user=log2ram "/dev/zram${RAM_DEV}" "$RAM_LOG"/
else
mount -t tmpfs -o "nosuid,noexec,noatime,nodev,mode=0755,size=${SIZE}" log2ram "$RAM_LOG"/
# ++HTs 2024-09-25: if HDD_LOG is already mounted, log2ram was started. mounting a second time is counterproductive
mount | grep "$HDD_LOG" 2>&1 > /dev/null
if [ $? != 0 ]; then
# not found, it seems log2ram (for this path) is not started yet
[ -d "$HDD_LOG" ] || mkdir "$HDD_LOG"

mount --bind "$RAM_LOG"/ "$HDD_LOG"/
mount --make-private "$HDD_LOG"/
wait_for "$HDD_LOG"

if [ "$ZL2R" = true ]; then
create_zram_log_drive
mount -t ext4 -o nosuid,noexec,noatime,nodev,user=log2ram "/dev/zram${RAM_DEV}" "$RAM_LOG"/
else
mount -t tmpfs -o "nosuid,noexec,noatime,nodev,mode=0755,size=${SIZE}" log2ram "$RAM_LOG"/
fi
wait_for "$RAM_LOG"
sync_from_disk
fi
wait_for "$RAM_LOG"
sync_from_disk
done
exit 0
;;
@@ -161,6 +174,10 @@ stop)
umount -l "$HDD_LOG"/
# Unsure as even with Root permision denied
#echo ${ZRAM_LOG} > /sys/class/zram-control/hot_remove

# ++HTs 2024-09-25: cleanup
rm -rf "$HDD_LOG"

done
exit 0
;;


불러오는 중...
취소
저장