summaryrefslogtreecommitdiffstats
path: root/package/base-files/files/lib/preinit/10_essential_fs
blob: fc04eb7ff3e6640149aee08f06b1a37f1752ac8d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#!/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