openwrt-owl/package/base-files/files/lib/preinit/10_essential_fs

26 lines
607 B
Bash

#!/bin/sh
# Copyright (C) 2006 OpenWrt.org
# Copyright (C) 2010 Vertical Communications
do_mount_procfs() {
mount -o noatime -t proc proc /proc
}
do_mount_sysfs() {
mount -o noatime -tsysfs sysfs /sys
}
calc_tmpfs_size() {
pi_size=$(awk '/MemTotal:/ {l=5242880;mt=($2*1024);print((s=mt/2)<l)&&(mt>l)?mt-l:s}' /proc/meminfo)
}
do_mount_tmpfs() {
calc_tmpfs_size
mount -o noatime -t tmpfs -o size=$pi_size,nosuid,nodev,mode=1777 tmpfs /tmp
}
boot_hook_add preinit_essential do_mount_procfs
boot_hook_add preinit_essential do_mount_sysfs
boot_hook_add preinit_essential do_mount_tmpfs