Menu

[r3847]: / trunk / build / freenas-create-rootfs.sh  Maximize  Restore  History

Download this file

133 lines (122 with data), 3.4 kB

  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
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
#!/bin/sh
#
# This script was written by David Courtney of Ultradesic
# http://www.ultradesic.com
# E-Mail Contact: minibsd@ultradesic.com
#
# Adapted for FreeNAS by Olivier Cochard-Labbe (http://www.freenas.org)
# Modified by Volker Theile (votdev@gmx.de)
MINIBSD_DIR=${FREENAS_ROOTFS};
# Initialize variables.
opt_f=0
# Parse the command-line options.
while getopts 'fh' option
do
case "$option" in
"f") opt_f=1;;
"h") echo "$(basename $0): Create directory structure";
echo "Common Options:";
echo " -f Force executing this script";
exit 1;;
?) echo "$0: Unknown option. Exiting...";
exit 1;;
esac
done
shift `expr $OPTIND - 1`
echo "Create directory structure..."
if [ ! -z "$1" ]; then
MINIBSD_DIR=$1;
echo "Using directory $1.";
fi
if [ 1 != $opt_f -a -d "$MINIBSD_DIR" ]; then
echo ;
echo "$MINIBSD_DIR directory does already exist. Remove it" ;
echo "before running this script." ;
echo ;
echo "Exiting..." ;
echo ;
exit 1 ;
fi ;
mkdir $MINIBSD_DIR ;
cd $MINIBSD_DIR ;
# Create directories
mkdir boot ;
mkdir boot/kernel ;
mkdir boot/defaults ;
mkdir boot/zfs ;
mkdir bin ;
mkdir cf ;
mkdir cf/conf ;
mkdir ftmp ;
mkdir conf.default ;
mkdir dev ;
mkdir etc ;
mkdir etc/mail ;
mkdir etc/defaults ;
mkdir etc/inc ;
mkdir etc/install ;
mkdir etc/inc/phpmailer ;
mkdir etc/pam.d ;
mkdir etc/ssh ;
mkdir etc/rc.d ;
mkdir etc/rc.d.php ;
mkdir etc/zfs ;
mkdir lib ;
mkdir lib/geom ;
mkdir libexec ;
mkdir -m 0777 mnt ;
mkdir -m 0700 root ;
mkdir sbin ;
mkdir usr ;
mkdir usr/bin ;
mkdir usr/lib ;
mkdir usr/lib/aout ;
mkdir usr/libexec ;
mkdir usr/local ;
mkdir usr/local/bin;
mkdir usr/local/lib ;
mkdir usr/local/sbin ;
mkdir usr/local/share ;
mkdir usr/local/share/locale ;
mkdir usr/local/etc ;
mkdir usr/local/www ;
mkdir usr/local/www/javascript ;
mkdir usr/local/www/niftycube ;
mkdir usr/local/www/sajax ;
mkdir usr/local/www/syntaxhighlighter ;
mkdir usr/sbin ;
mkdir usr/share ;
mkdir usr/share/misc ;
mkdir usr/share/locale ;
mkdir tmp ;
# /var will be populated by /etc/rc and /etc/rc.d/var
mkdir var ;
# Creating symbolic links. Most of the target files will be created at runtime.
# !!! For optional ports add the required links in the port Makefile. !!!
ln -s cf/conf conf
ln -s /var/run/.htpasswd usr/local/www/.htpasswd
ln -s /var/etc/resolv.conf etc/resolv.conf
ln -s /var/etc/master.passwd etc/master.passwd
ln -s /var/etc/passwd etc/passwd
ln -s /var/etc/exports etc/exports
ln -s /var/etc/group etc/group
ln -s /var/etc/hosts etc/hosts
ln -s /var/etc/pwd.db etc/pwd.db
ln -s /var/etc/spwd.db etc/spwd.db
ln -s /var/etc/crontab etc/crontab
ln -s /var/etc/syslog.conf etc/syslog.conf
ln -s /var/etc/ssh/sshd_config etc/ssh/sshd_config
ln -s /var/etc/ssh/ssh_host_dsa_key etc/ssh/ssh_host_dsa_key
ln -s /var/etc/pam.d/ftp etc/pam.d/ftp
ln -s /var/etc/pam.d/ftp etc/pam.d/pure-ftpd
ln -s /var/etc/pam.d/sshd etc/pam.d/sshd
ln -s /var/etc/pam.d/netatalk etc/pam.d/netatalk
ln -s /var/etc/pam.d/login etc/pam.d/login
ln -s /var/etc/pam.d/system etc/pam.d/system
ln -s /var/etc/ldap.conf usr/local/etc/ldap.conf
ln -s /var/etc/ldap.conf usr/local/etc/nss_ldap.conf
ln -s /var/etc/ldap.conf etc/ldap.conf
ln -s /var/etc/ldap.secret usr/local/etc/ldap.secret
ln -s /var/etc/nsswitch.conf etc/nsswitch.conf
#Patch needed when generating on FreeBSD with X11/xorg:
ln -s local usr/X11R6
Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.