X-Git-Url: http://git.pld-linux.org/gitweb.cgi?a=blobdiff_plain;f=binfmt-detector.init;h=8f5f7f4be9374c812a8c04af7c92c3ccc67c7662;hb=4d915dda9966566fda75abb155edf28e9ac93b69;hp=b1e8ed5df1d61bc3efad658808199bba2444dddf;hpb=5ec7582a5caf78da13834a40ebabfb0d246766ac;p=packages%2Fbinfmt-detector.git diff --git a/binfmt-detector.init b/binfmt-detector.init index b1e8ed5..8f5f7f4 100644 --- a/binfmt-detector.init +++ b/binfmt-detector.init @@ -17,17 +17,23 @@ BINFMT_DIR='/proc/sys/fs/binfmt_misc' +[ ! -d "$BINFMT_DIR" ] && exit 0 + start() { if [ ! -f /var/lock/subsys/binfmt-detector ]; then # check if binfmt_misc is not already mounted - if ! /bin/mount | grep -q "${BINFMT_DIR} type binfmt_misc"; then + if ! grep -q "${BINFMT_DIR}" /proc/mounts; then /bin/mount none -t binfmt_misc ${BINFMT_DIR} fi - msg_starting 'binfmt-detector'/proc/sys/fs/binfmt_misc - echo ':windows:M::MZ::/usr/bin/binfmt-detector.sh:' > ${BINFMT_DIR}/register - echo ':windowsPE:M::PE::/usr/bin/binfmt-detector.sh:' > ${BINFMT_DIR}/register - ok - touch /var/lock/subsys/binfmt-detector + msg_starting 'binfmt-detector' + if [ -e "$BINFMT_DIR/register" ]; then + echo ':windows:M::MZ::/usr/bin/binfmt-detector.sh:' > ${BINFMT_DIR}/register + echo ':windowsPE:M::PE::/usr/bin/binfmt-detector.sh:' > ${BINFMT_DIR}/register + ok + touch /var/lock/subsys/binfmt-detector + else + fail + fi else msg_already_running 'binfmt-detector' fi