Le 12/09/2012 09:10, Gerardo Exequiel Pozzi a écrit :
Signed-off-by: Gerardo Exequiel Pozzi <[email protected]>
---
.../releng/root-image/root/.automated_script.sh | 34 ++++++++++++++++++++++
configs/releng/root-image/root/.zlogin | 1 +
2 files changed, 35 insertions(+)
create mode 100755 configs/releng/root-image/root/.automated_script.sh
create mode 100644 configs/releng/root-image/root/.zlogin
diff --git a/configs/releng/root-image/root/.automated_script.sh
b/configs/releng/root-image/root/.automated_script.sh
new file mode 100755
index 0000000..859452f
--- /dev/null
+++ b/configs/releng/root-image/root/.automated_script.sh
@@ -0,0 +1,34 @@
+#!/bin/bash
+
+script_cmdline ()
+{
+ local param
+ for param in $(< /proc/cmdline); do
+ case "${param}" in
+ script=*) echo "${param##*=}" ; return 0 ;;
+ esac
+ done
+}
+
+automated_script ()
+{
+ local script rt
+ script="$(script_cmdline)"
+ if [[ -n "${script}" ]]; then
+ if [[ "${script}" =~ ^http:// || "${script}" =~ ^ftp:// ]]; then
+ wget "${script}" -q -O /tmp/startup_script >/dev/null
+ rt=$?
+ else
+ cp "${script}" /tmp/startup_script
+ rt=$?
+ fi
+ if [[ ${rt} -eq 0 ]]; then
+ chmod +x /tmp/startup_script
+ /tmp/startup_script
+ fi
+ fi
+}
+
+if [[ $(tty) == "/dev/tty1" ]]; then
+ automated_script
+fi
diff --git a/configs/releng/root-image/root/.zlogin
b/configs/releng/root-image/root/.zlogin
new file mode 100644
index 0000000..f598e43
--- /dev/null
+++ b/configs/releng/root-image/root/.zlogin
@@ -0,0 +1 @@
+~/.automated_script.sh
Hi,
Two problems:
- when the script is run, the network is not ready, making
automated_script to fail. Adding the parameter "--retry-connrefused" to
wget will fixed it.
- the hook /etc/rc.d/functions.d/automated_script has not been removed.
Thanks for trying to make this function work. Very useful to me !
Regards,
Charles