Dinit - an alternative base/udev hook for mkinitcpio

Note: dinit has been removed from the AUR is now part of geninit. It still exists on github as a separate project if you want to play with it.
This is something fun that I've been fooling around with for the past week, and I'm pretty happy with it, so I figured I'd give it a little publicity. I've rewritten mkinitcpio's PID 1 in C, and it works as almost a drop-in replacement.
Why? Most of init can be taken care of with native C and some parts are more easily and thoroughly covered than with shell script. I'm currently booting off an image weighing in at under 1mb (it does not have busybox). You can do this too assuming, of course, that you aren't using any runtime hooks.
You can tell if you're using any runtime hooks by checking your current boot image:
$ bsdtar tf /boot/kernel26.img | grep '^/hooks'
If that returns anything more than /hooks/udev, you're using runtime hooks to prepare your root device for mounting. This mainly applies to people using encrypted root, lvm2, sometimes mdadm, and there's some other fancy business like plymouth or keymap. This doesn't disqualify you, it just means you need to read this to the end.
I've created two new base layouts to go with it:
ubase: Very similar to the current base layout, and includes udev. If you're using any runtime hooks, see below for how to modify them for use with dinit.
uubase: Masochistic. No udev. No busybox. No runtime hooks allowed. You must supply all modules in the MODULES= define in /etc/mkinitcpio.conf, and your root cannot be specified as a /dev/disk/by-{uuid,label} symlink. Use /dev/sdxy, or specify the device major/minor (e.g. 8:2 or 802). I currently boot off of this with great success -- my root setup isn't complicated.
I mentioned that this isn't quite a drop-in replacement. What needs to be modified? Since hooks are being run as a fork/exec, you'll need to remove the function wrapper on each runtime hook, and dress them up a bit. Simply done:
Remove the 'run_hook() {' function header and the closing '}'.
Make sure line 1 is a shebang: #!/bin/busybox ash
Mark the hook executable: chmod +x /lib/initcpio/hook/$hookname.
You're no longer inherting from init_functions, so calls such as 'msg' need to go away. This isn't mandatory, but you may see a few 'command not found' errors if you skip this step. They're harmless.
Don't regenerate the image just yet.
Now, modify /etc/mkinitcpio.conf. Remove base and udev from HOOKS, and add in your drug of choice: ubase or uubase.
This next step is important, because I don't wish anybody any particular harm. As much as I've tested this, I really don't want anyone to be in a situation where they need to chroot from a liveCD to get back to a booting system. So, make an image with a different name than whatever it is you're currently booting with, e.g.
# mkinitcpio -g /boot/dinit.img
Add a new boot entry to your bootloader of choice or just edit at boot time.
Other notes:
This should still support 99% of what mkinitcpio supports in terms of command line parameters such as: skiphooks, earlymodules, disablemodules, rootdelay, break (ubase only, of course), and init.
Intentionally discluded: /lib/udev/load-modules.sh is a symlink to /sbin/modprobe. I'll only say that blacklisting for disablemodules is done the way upstream recommends it done. You won't notice the difference.
No support for a '/message' file. I didn't think it was a big deal.
The most important part: where to find it?
On Github: https://github.com/falconindy/dinit
In the AUR: https://aur.archlinux.org/packages.php?ID=48454
I'd love to know what setups people are able to use with this, and I'm almost more interested in what setups don't work, so I can fix them. If you'd like to tell me my code sucks, please provide as much information as possible. Posting the contents of a working initcpio (bsdtar -tf /boot/kernel-26.img) and /etc/mkinitcpio.conf would be most helpful (remember to use code tags!). If you're using a non-stock kernel I'd like to know that too.
Last edited by falconindy (2011-04-30 16:26:21)

Works here with
/hooks
/hooks/udev/
/hooks/resume
using kernel26-pf-core2
/lib
/lib/modules
/lib/modules/2.6.38-pf
/lib/modules/2.6.38-pf/kernel
/lib/modules/2.6.38-pf/kernel/drivers
/lib/modules/2.6.38-pf/kernel/drivers/char
/lib/modules/2.6.38-pf/kernel/drivers/char/agp
/lib/modules/2.6.38-pf/kernel/drivers/char/agp/intel-gtt.ko.gz
/lib/modules/2.6.38-pf/kernel/drivers/char/agp/intel-agp.ko.gz
/lib/modules/2.6.38-pf/kernel/drivers/i2c
/lib/modules/2.6.38-pf/kernel/drivers/i2c/i2c-core.ko.gz
/lib/modules/2.6.38-pf/kernel/drivers/gpu
/lib/modules/2.6.38-pf/kernel/drivers/gpu/drm
/lib/modules/2.6.38-pf/kernel/drivers/gpu/drm/drm.ko.gz
/lib/modules/2.6.38-pf/kernel/drivers/gpu/drm/drm_kms_helper.ko.gz
/lib/modules/2.6.38-pf/kernel/drivers/acpi
/lib/modules/2.6.38-pf/kernel/drivers/acpi/video.ko.gz
/lib/modules/2.6.38-pf/kernel/drivers/acpi/button.ko.gz
/lib/modules/2.6.38-pf/kernel/drivers/i2c/algos
/lib/modules/2.6.38-pf/kernel/drivers/i2c/algos/i2c-algo-bit.ko.gz
/lib/modules/2.6.38-pf/kernel/drivers/gpu/drm/i915
/lib/modules/2.6.38-pf/kernel/drivers/gpu/drm/i915/i915.ko.gz
/proc
/sys
/dev
/bin
/sbin
/usr
/usr/bin
/usr/lib
/usr/sbin
/run
/new_root
/etc
/etc/udev
/etc/udev/udev.conf
/etc/modprobe.d
/etc/modprobe.d/usb-load-ehci-first.conf
/lib/udev
/lib/udev/rules.d
/lib/udev/rules.d/50-firmware.rules
/lib/udev/rules.d/50-udev-default.rules
/lib/udev/rules.d/60-persistent-storage.rules
/lib/udev/rules.d/80-drivers.rules
/lib/udev/firmware
/lib/udev/ata_id
/lib/udev/path_id
/lib/udev/scsi_id
/lib/udev/usb_id
/init
/lib/libblkid.so.1
/lib/libblkid.so.1.1.0
/lib/libc.so.6
/lib/libc-2.13.so
/lib/libuuid.so.1
/lib/libuuid.so.1.3.0
/lib/ld-linux-x86-64.so.2
/lib/ld-2.13.so
/bin/busybox
/sbin/modprobe
/sbin/blkid
/sbin/udevd
/lib/librt.so.1
/lib/librt-2.13.so
/lib/libpthread.so.0
/lib/libpthread-2.13.so
/sbin/udevadm
/lib/udev/load-modules.sh
/config
/lib/modules/2.6.38-pf/kernel/drivers/scsi
/lib/modules/2.6.38-pf/kernel/drivers/scsi/scsi_mod.ko.gz
/lib/modules/2.6.38-pf/kernel/drivers/ata
/lib/modules/2.6.38-pf/kernel/drivers/ata/libata.ko.gz
/lib/modules/2.6.38-pf/kernel/drivers/ata/libahci.ko.gz
/lib/modules/2.6.38-pf/kernel/drivers/ata/ahci.ko.gz
/lib/modules/2.6.38-pf/kernel/drivers/scsi/sd_mod.ko.gz
/hooks
/hooks/resume
/lib/modules/2.6.38-pf/kernel/fs
/lib/modules/2.6.38-pf/kernel/fs/mbcache.ko.gz
/lib/modules/2.6.38-pf/kernel/fs/jbd2
/lib/modules/2.6.38-pf/kernel/fs/jbd2/jbd2.ko.gz
/lib/modules/2.6.38-pf/kernel/lib
/lib/modules/2.6.38-pf/kernel/lib/crc16.ko.gz
/lib/modules/2.6.38-pf/kernel/fs/ext4
/lib/modules/2.6.38-pf/kernel/fs/ext4/ext4.ko.gz
/lib/modules/2.6.38-pf/modules.dep
/lib/modules/2.6.38-pf/modules.alias
/lib/modules/2.6.38-pf/modules.symbols
Last edited by el mariachi (2011-04-24 14:14:23)

Similar Messages

  • Mkinitcpio-nfs-utils hook for net without wireless

    Is there a way to make a net hook for diskless clients without including wireless?  Make one called net-nowireless or something like that.  If my diskless client has a wireless card, I'd have to go into emergency shell to connect the wireless network device to a wireless network if it would even let me do that.  Otherwise, I have to blacklist any perceivable wireless module and include it in my mkinitcpio.conf.  Some wireless devices can be canned just by not including the firmware.  Anyways, my diskless client hangs on the wireless deadlock when initializing network interfaces.  It would also probably remove firmware messages and make the initramfs-linux.img smaller.  The PXE clients can only boot from the hardwired ethernet clients for now.
    Doing a mkinitcpio -L doesn't even list the net hook, but mkinitcpio -H net shows the details.
    Last edited by nomorewindows (2013-10-05 12:22:32)

    Lone_Wolf wrote:
    It does look like the hook tries to connect using all autodetected network devices, regardless of number and type of devices.
    While it may be possible to differentiate between wired and wireless devices, that will still give issues if there are multiple wired/wireless devices.
    Maybe a configuration file could be added that specifies which devices nfs should use.
    If there's no config file present in the initramfs, it should just default to all detected devices as it does now.
    Although I haven't tried it this way, it makes sense because that's what it does with the wireless, which just has the unresolvable problem, whereas dual ethernet or more, as long as it satisfies getting an address via dhcp, can probably still boot.  Maybe this is the reason why OpenBSD is still anal about using stateful routines through rarpd and bootparamd.  I've tried to boot OpenBSD under Arch, using rarp, but I guess it doesn't answer satisfactory to OpenBSD's diskless request.  The purpose of stateless is to boot anybody.  Various options can be set in pxelinux.cfg based on MAC address, but maybe these aren't known ahead of time to boot a customized initramfs-linux.img. 
    The real boon was to turn on a dumb-terminal and as soon as it came on, the login prompt was present.  This was probably a function of getty.

  • Can't mkinitcpio with "nouveau" hook for early start of KMS

    Hello Everyone,
    My first message on this board! But I'm using Arch for two years now.
    I have a problem with KMS:
    I try to start early KMS with the nouveau driver in order to have a nice plymouth-ed boot.
    I followed the wiki : https://wiki.archlinux.org/index.php/No … arly_start
    But mkinitcpio says that there is no hook for "nouveau" in /lib/initcpio/hook...
    I have the last version of xf86-video-nouveau and nouveau-dri.
    Have someone had the same problem?
    How can I manage to make an initframfs with nouveau module?
    Thank you!
    David

    Read the wiki page again. Nouveau is a module, not a hook, and belongs in the MODULES array.
    edit: Note to self: reload before posting.
    Last edited by Stebalien (2011-04-13 13:33:22)

  • Requirement type, alternative calculation type and alternative base value?

    Hi guys pls can any body experts in pricing
    Can u pls explain requirement type, alternative calculation type and alternative base value?
    Not theory Any of Ur real time experience………

    <b>Requirement:</b>
    It is a routine that is written by an ABAP consultant according to the business requirement.
    By defining Requirement in condition technique we can restrict the access of condition type.
    To understand the concept, we will take the example of the Rebates. Rebates are to be included during the billing document processing and not in the sales document processing. As rebates are given on the delivered quantity and not on the ordered quantity (in case of cut-off period for rebates).
    For rebates we use the condition types BO01 to BO05, and in the Requirement column we give the value 24 which is "Only in Billing Document".
    This Requirement will ensure that these condition types will appear only during the billing document processing.
    If new Requirements are to be defined we follow the procedure given below.
    Go to T.Code: VOFM. - Maintain Requirements & Formulas
    Click on the "Requirements" in the top menu and then click on "pricing".
    We have a list of requirements, we can ask ABAP consultant to create new requirement based on the client requests.
    And we assign the application type like V - Sales/Distribution etc.
    <b>AltCty - Condition formula for alternative calculation type:</b>
    It is again a Routine that is written by ABAP Consultant.
    It is an alternative formula for the condition type that can be used instead of standard formulas.
    For example, let us take the Profit Margin which can be both + / - , so here this routine will help us in generating the value which can be either + or -. Profit margin is not a condition type so it cannot be classified as +ve or -ve in the V/06.
    Ex.: 950 0 Profit Margin 11.
    So we assign 11 - Profit Margin.
    If new routines are to be defined we follow the procedure given below.
    Go to T.Code: VOFM. - Maintain Requirements & Formulas
    Click on the "Formulas" and then on the "Condition Values".
    We have a list of routines, we can ask ABAP consultant to create new routines based on the client requests.
    And we assign the application type.
    <b>AltCBV - Alternative formula for condition base value:</b>
    Formula for determining the condition basis as an alternative to the standard.
    It is again a Routine that is written by ABAP Consultant.
    It is used as a basis to calculate value of the condition type instead of using it from the "FROM" column.
    Ex.: Freight - KF00.
    Freight is calculated based on weight, volume etc. and not on the base price. In pricing there is no entry of weight from which the value can be referred like we do for discounts using base price. We have to get the value from the Material master.
    In this column we can mention the value as 12 - Gross Weight or 13 - Net Weight.
    During pricing, the system will consider the value that is mentioned in this column and determine the freight based on this value.
    Suppose we have Net weight: 100 kgs and Gross Weight: 150 kgs. And if we mention 13 in this column then the Freight condition KF00 will be calculated using the weight as 100 kgs.
    Regards
    AK

  • OpenSSL bf-cbc encrypted Keyfile HOOK for LUKS

    I modified the this HOOK that maxim_ posted here. That dose not work.
    https://bbs.archlinux.org/viewtopic.php … 05#p947805
    This one uses Blowfish in CBC mode instead of AES-256.
    The password is hashed 1000 times with Whirlpool.
    gen-cryptkey adds a a Salt to the encrypted keyfile
    https://github.com/tdwyer/bfkeyfile
    /lib/initcpio/hooks
    #!/usr/bin/ash
    run_hook ()
    local encfile decfile iteration attempts prompt badpassword dev arg1 arg2 retcode password passwordHash
    if [ "x${bfkf}" != "x" ]; then
    encfile="/enc_keyfile.bin"
    decfile="/crypto_keyfile.bin"
    iteration=1000
    attempts=5
    prompt="Enter password: "
    badpassword="Password incorrect"
    dev="$(echo "${bfkf}" | cut -d: -f1)"
    arg1="$(echo "${bfkf}" | cut -d: -f2)"
    arg2="$(echo "${bfkf}" | cut -d: -f3)"
    if poll_device "${dev}" "${rootdelay}"; then
    case "${arg1}" in
    *[!0-9]*)
    mkdir /mntkey
    mount -r -t "${arg1}" "${dev}" /mntkey
    dd if="/mntkey/${arg2}" of="${encfile}" >/dev/null 2>&1
    umount /mntkey
    rm -rf /mntkey
    dd if="${dev}" of="${encfile}" bs=1 skip="${arg1}" count="${arg2}" >/dev/null 2>&1
    esac
    fi
    if [ -f "${encfile}" ]; then
    while true; do
    read -rsp "${prompt}" password
    i=0
    while [ ${i} -lt ${iteration} ]; do
    password=`echo -n "${password}" | openssl dgst -whirlpool -hex 2> /dev/null | cut -d ' ' -f 2`
    i=$(( ${i} + 1 ))
    done
    openssl bf-cbc -pass pass:"${password}" -d -in "${encfile}" -out "${decfile}" >/dev/null 2>&1
    retcode="$?"
    if [ "${retcode}" != "0" ]; then
    echo -e "\n${badpassword}\n"
    attempts=$(( ${attempts} - 1 ))
    [ "${attempts}" == "0" ] && echo "Keyfile could not be decrypted" && break
    else
    break
    fi
    done
    rm -f "${encfile}"
    else
    echo "Encrypted keyfile could not be opened. Reverting to 'encrypt' hook."
    fi
    fi
    /lib/initcpio/install
    #!/bin/bash
    build() {
    add_binary /usr/bin/openssl
    add_runscript
    help ()
    cat<<HELPEOF
    This hook allows for an openssl (bf-cbc) encrypted keyfile for LUKS.
    It relies on standard 'encrypt' hook providing decrypted '/crypto_keyfile.bin' for it.
    You must use gen-cryptkey create the encrypted enc_keyfile.bin
    The password is hashed with Whirlpool 1000 times
    Then your password Hash is used to encrypt the keyfile
    mkinitcpio.conf:
    MODULES: add ext4 vfat or whatever the type of filesystem the keyfile is on
    HOOKS=" ... bfkf encrypt ... filesystems ..."
    Kernel Parameters:
    There is no need for cryptkey=
    Two options are supported:
    1) Using a file on the device:
    bfkf=<device>:<fs-type>:<path>
    2) Reading raw data from the block device:
    bfkf=<device>:<offset>:<size>
    Example: /etc/default/grub
    GRUB_CMDLINE_LINUX="bfkf=/dev/sdb1:ext4:/keyfile.bin cryptdevice=/dev/sda2:root"
    HELPEOF
    # vim: set ft=sh ts=4 sw=4 et:
    /usr/bin/gen-cryptkey
    #!/bin/bash
    # GPLv3
    # Thomas Dwyer
    # tomd.tel
    iteration=1000
    create_msg='Create: gen-cryptkey create'
    decrypt_msg='Decrypt: gen-cryptkey decrypt PATH_TO_KEYFILE'
    main () {
    action=$1
    if [ -z $action ]; then
    echo -e "Usage:\n$create_msg\n$decrypt_msg"
    elif [ $action == "create" ]; then
    crypt
    elif [ $action == "decrypt" ]; then
    if [ -z $2 ]; then
    echo -e "Usage:\n$create_msg\n$decrypt_msg"
    else
    decrypt $2
    fi
    else
    echo -e "Usage:\n$create_msg\n$decrypt_msg"
    fi
    exit 0
    crypt () {
    encfile="enc_keyfile.bin"
    echo "$encfile encrypted keyfile will be created"
    echo ''
    read -rsp "Enter password: " password
    password1=`echo -n "$password" | openssl dgst -whirlpool -hex | cut -d ' ' -f 2`
    echo ''
    read -rsp "Enter password Again: " verify
    password2=`echo -n "$verify" | openssl dgst -whirlpool -hex | cut -d ' ' -f 2`
    if [[ "$password1" == "$password2" ]]; then
    for (( i=1; i<=$iteration; i++ )); do
    password=`echo -n "$password" | openssl dgst -whirlpool -hex | cut -d ' ' -f 2`
    done
    dd if=/dev/urandom bs=1k count=256 | openssl bf-cbc -pass pass:"${password}" -salt -out "${encfile}"
    else
    echo "Passwords did not match"
    fi
    decrypt () {
    encfile=$1
    decfile="crypto_keyfile.bin"
    echo "$encfile Will be decrypted to crypto_keyfile.bin"
    echo ''
    read -rsp "Enter password: " password
    for (( i=1; i<=$iteration; i++ )); do
    password=`echo -n "$password" | openssl dgst -whirlpool -hex | cut -d ' ' -f 2`
    done
    openssl bf-cbc -pass pass:"${password}" -d -in "${encfile}" -out "${decfile}"
    main $@
    Last edited by hunterthomson (2013-01-01 00:01:20)

    Well, it is working now, so feel free to use it.
    If you do use it, make darn sure to keep "at least" 3 backups of the keyfile on 3 different devices.
    You will also want to leave your passphrase enabled until you are sure the keyfile is working as it should.
    However, I am not going to use this anymore and will no longer be working on it. I will subscribe to this thread and answer any questions. I don't really see a whole lot of added security in this, and it would be kind of a pain to use a keyfile in a Live CD/USB. I think it is good enough to make use of the --iter-time flag when using luksFormat or luksAddKey.  It was a fun ride learning how to write this hook for initcpio
    Note: Anyone who wants to write a hook should install busybox and symlink /usr/local/bin/ash to it for testing the HOOK script. The HOOKS use busybox ash not 'sh' nor 'bash', and ash is strange. If your HOOK script has an error you will get a kernel panic.
    Last edited by hunterthomson (2012-12-31 23:57:24)

  • Replacement ear hooks for HS-700 Bluetooth Headset

    Bothe ear hooks for my HS-700 headset have broken. I could find no info on how to get replacements. I like the headset & do not think I have to buy anotherone to get the hooks.
    What say you?

    Yea, it is a good headset.
    Check with ShopBlackBerry.com and see/beg to order a set.
    1. If any post helps you please click the below the post(s) that helped you.
    2. Please resolve your thread by marking the post "Solution?" which solved it for you!
    3. Install free BlackBerry Protect today for backups of contacts and data.
    4. Guide to Unlocking your BlackBerry & Unlock Codes
    Join our BBM Channels (Beta)
    BlackBerry Support Forums Channel
    PIN: C0001B7B4   Display/Scan Bar Code
    Knowledge Base Updates
    PIN: C0005A9AA   Display/Scan Bar Code

  • What is this message: Base Line Date for rule 11 not set ?

    Hello all,
    I am doing some test.
    Cenario:
    I need to create a Scheduling Agreement in transaction: VA41
    The material I am using to create the VA41, I have just created.
    I created in MM01 the views: Basic Datas 1 and 2, Sales View 1,2 and 3 and Account View 1.
    Issue:
    When I am creating the VA41 and I enter the material, the system shows the messages:
    1) Dates from:: Base line date for rule 11 not set
    2) Dates from:: Base line date for rule 9 not set
    *obs: the messages dos not block the creation of VA41. It is a information message.
    Question:
    What that means? What will happen if I do not fix that? What should I do in order to not have more these messages?
    Tks & Rgds,
    Barbara
    Message was edited by:
            Barbara Barbos

    Hi
    Please check whether you have assigned - payment terms both at company code and sales area level
    VVR

  • Setting Payment terms in PO linking to base line date for payables.

    Hi
    can some help me by giving me simple  steps to create  the payment terms which will be captured in PO and payment is made with reference to baseline date.
    Example :
    1. payment in 15 days from the date of GRN posting date. while doing MIRO, the base line date will be proposed 15 days from the date of GRN posting date.
    2. payment in 30 days from the date of GRN posting date. while doing MIRO, the base line date will be proposed 30 days from the date of GRN posting date.
    while doing MIRO, the base line date will be
    rgds
    Raghu

    Hi
    There is no link between GRN posting date and proposed base line date for payment in MIRO. All that you can link is the posting date/ document date in MIRO etc with base line date calculation in invoice.
    Create a new payment term with posting date (the current date will be defaulated as posting date in MIRO always) and with some payment discount terms say after 15 days etc..
    Thanks

  • Alternatives to using Zenworks for Roaming Profiles

    Novell support tells me I should be using a dedicated Server for Zenworks
    This would be a real over kill!
    So, are there any alternatives to using Zenworks for Roaming profiles?
    Googeling I see SAMBA can support Roaming Profiles
    Samba is installed & I created Samba users via SBE Admin but when I select
    Samba Administration - seems to be no details ie. users, workgroup name etc?
    Is Novell Samba differently?
    Is it possible setup Roaming Profiles with Novell Samba?

    I'm gonna attempt this with a couple of scripts - (one added to login script
    & the other at shutdown)
    to copy Desktop & Favorites - already told users they will be shot if the
    they put files in my docs!
    (It would be nice to do Desktop Colour / Image etc so the user feels at home
    but...)
    "W_ Prindl" <[email protected]> wrote in message
    news:[email protected]...
    > Although I use OWS SBE I never use the integrated Simba tools, etc. I
    > install everything using the standard non SBE methods. So I don't know
    > if you installed SLES Samba or OES ( = Novell) Samba. Of course Novell
    > Samba is different from plain Samba as it provides integrated
    > Edirectory logon and - if using NSS volumes - transparent consistent
    > file access rights.
    >
    > For Novell Samba your users have to be LUM enabled.
    >
    > But roaming profiles should work regardless of the Samba server in use.
    > But of course - if you do not have a common configuration source such
    > as a domain or Zenworks - you will have to configure your roaming ( =
    > server-stored) profiles locally at each PC for each user individually.
    > Should be possible in a 10 users/10 PCs environment - but that are 100
    > configuration entries just for this feature.
    >
    > BTW I have Zenworks and Groupwise running on the same server in a small
    > setup similar to yours.
    >
    > Only negative thing with Zenworks Configuration Management is, that it
    > is a real resource hog at the client side. Recent dual core or quad
    > core processor PCs have no problem, but older dual cores and single
    > cores come really to a halt with the Zenworks Agent.
    > --
    > W. Prindl
    >
    >
    > Chris wrote:
    >
    >>Novell support tells me I should be using a dedicated Server for
    >>Zenworks This would be a real over kill!
    >>
    >>So, are there any alternatives to using Zenworks for Roaming profiles?
    >>
    >>Googeling I see SAMBA can support Roaming Profiles
    >>
    >>Samba is installed & I created Samba users via SBE Admin but when I
    >>select Samba Administration - seems to be no details ie. users,
    >>workgroup name etc?
    >>
    >>Is Novell Samba differently?
    >>
    >>Is it possible setup Roaming Profiles with Novell Samba?

  • UDEV rules for Xilinx FPGA devices

    I recently purchased a Digilent Nexys3 FPGA board with a Xilinx Spartan 5 FPGA on it. I finally got around to finding some time to using it, and setting up the development environment under Arch linux.
    After spending ages reading around about various problems and workarounds, I finally managed to get Xilinx ISE Webpack installed and working, as well as Digilent Adept software for downloading the designs to the development board. One issue still remains though. I am unable to download the designs to the FPGA as a normal user, but only as root.
    I'm pretty sure this is a udev rules problem. Digilent supplies a rules file (attached below) which is supposed to grant permissions to all users to access the FPGA devices over USB. I placed this rule file under /etc/udev/rules.d, but I am still unable to access the devices as normal user due to the following error:
    $ djtgcfg enum
    libusb couldn't open USB device /dev/bus/usb/001/003: Permission Denied.
    libusb requires write access to USB device nodes.
    $
    I believe that udev rules syntax changed since the last time I had a look at it, so maybe the supplied rules file still uses the old syntax? Any suggestions to fixing this rules file (attached below)?
    # 52-digilent-usb.rules -- UDEV rules for Digilent USB Devices #
    # Author: MTA #
    # Copyright 2010 Digilent Inc. #
    # File Description: #
    # This file contains the rules used by UDEV when creating entries for #
    # Digilent USB devices. In order for Digilent's shared libraries and #
    # applications to access these devices without root privalages it is #
    # necessary for UDEV to create entries for which all users have read #
    # and write permission. #
    # Usage: #
    # Copy this file to "/etc/udev/rules.d/" and execute #
    # "/sbin/udevcontrol reload_rules" as root. This only needs to be done #
    # immediately after installation. Each time you reboot your system the #
    # rules are automatically loaded by UDEV. #
    # Revision History: #
    # 04/15/2010(MTA): created #
    # 02/28/2011(MTA): modified to support FTDI based devices #
    # Create "/dev" entries for Digilent device's with read and write
    # permission granted to all users.
    SYSFS{idVendor}=="1443", MODE="666"
    ACTION=="add", SYSFS{idVendor}=="0403", SYSFS{manufacturer}=="Digilent", MODE="666", RUN+="/usr/local/sbin/dftdrvdtch %s{busnum} %s{devnum}"
    # The following rules (if present) cause UDEV to ignore all UEVENTS for
    # which the subsystem is "usb_endpoint" and the action is "add" or
    # "remove". These rules are necessary to work around what appears to be a
    # bug in the Kernel used by Red Hat Enterprise Linux 5/CentOS 5. The Kernel
    # sends UEVENTS to remove and then add entries for the endpoints of a USB
    # device in "/dev" each time a process releases an interface. This occurs
    # each time a data transaction occurs. When an FPGA is configured or flash
    # device is written a large number of transactions take place. If the
    # following lines are commented out then UDEV will be overloaded for a long
    # period of time while it tries to process the massive number of UEVENTS it
    # receives from the kernel. Please note that this work around only applies
    # to systems running RHEL5 or CentOS 5 and as a result the rules will only
    # be present on those systems.
    Thanks!
    -Igor
    Last edited by UQ-igor (2011-12-24 03:56:10)

    Try this
    Use ATTR or ATTRS.
    -SYSFS{idVendor}=="1443", MODE="666"
    -ACTION=="add", SYSFS{idVendor}=="0403", SYSFS{manufacturer}=="Digilent", MODE="666", RUN+="/usr/sbin/dftdrvdtch %s{busnum} %s{devnum}"
    +ATTRS{idVendor}=="1443", MODE="666"
    +ACTION=="add", ATTRS{idVendor}=="0403", ATTRS{manufacturer}=="Digilent", MODE="666", RUN+="/usr/sbin/dftdrvdtch %s{busnum} %s{devnum}"
    +ATTR{idVendor}=="1443", MODE="666"
    +ACTION=="add", ATTR{idVendor}=="0403", ATTR{manufacturer}=="Digilent", MODE="666", RUN+="/usr/sbin/dftdrvdtch %s{busnum} %s{devnum}"

  • I am mac user and want to create Object in VBA macro. when i write "set objwrd=createObject("Word.Application")"- it returns "runtime error "492" can't create object". now what it alternative to create object for word in excel macro???

    I am mac user and want to create Object in VBA macro. when i write "set objwrd=createObject("Word.Application")"… it returns "runtime error "492" can't create object". now what it alternative to create object for word in excel macro???

    Any help here...
    http://support.microsoft.com/kb/288117
    http://www.macworld.com/article/1154785/welcomebackvisualbasic.html

  • Installed Base(ibase) data for segmentation/maintaining customer marketing

    There is a need to use Installed Base(ibase) data for segmentation/maintaining customer marketing attributes e.g. whether customer on active support agreement(yes/no), product line, version no., etc.
    So if the ibase data is updated, the changes should flow back to segmentation/marketing attributes of the business partner/
    Please help with any approach which can be useful in this scenario.
    Edited by: ankitarora on May 4, 2011 12:42 PM

    Please find the reply for your query,,,,,these are the related information
    LIST OF DATA SOURCE
    CRM IBase Transaction Data
    0CRM_SRV_IBASE_TRAN
    CRM IBase Master Data  
    Technical name: 0CRM_SRV_IBASE_ATTR
    Installed Base Category - DataSource for Texts  
    Technical name: 0CRM_IBTYPE_TXT
    Characteristic for IBase or Component - DataSource for Texts   
    Technical name: 0CRM_IBFLAG_TXT
    GUID of Installed Base/Component - DataSource for Texts  
    Technical name: 0CRM_IBAKEY_TXT
    IBase Text Component - DataSource for Texts  
    Technical name: 0CRM_IBTEXT_TXT
    DSO:
    CRM Service - Installed Bases and Components  
    Technical name: 0CRM_IBCO
    QUERYS
    Installed Base Analysis by Location  
    Technical name: 0CRM_IBCO_Q0101
    Installed Base Analysis by Business Partner  
    Technical name: 0CRM_IBCO_Q0104
    Analysis of Products in Installed Bases  
    Technical name: 0CRM_IBCO_Q0102
    Analysis of Individual Objects in IBase Components  
    Technical name: 0CRM_IBCO_Q0103
    More information
    http://help.sap.com/saphelp_nw70/helpdata/EN/ef/c4e1edcb84fa4abd6ddd00130de600/frameset.htm
    For more information, see the CRM documentation under mySAP Business Suite à mySAP Customer Relationship Management à CRM Enterprise à Analytics à Service Analytics.
    Regards
    Srini

  • USER Hook for Changer Manager function

    Dear All,
    I need to know that is there any user hook for Manager Self Service -- Change Manager function for employee.
    If yes then please give me the module name/id for the user hook.
    If no then how can I set custom validations on this page.
    Regards.

    You should look for the update assignment api.
    select * from hr_api_modules
    where module_name like '%UPDATE%ASG%'
    Depending on the legislation, you will have different modules/packages/procedures.

  • API User Hook for Restricting Category Creation in a sepcific catalog

    Q: API User Hook for Restricting Category Creation in a sepcific catalog by a specific responsibility. I want to capture GO button process event?
    Hi All,
    Can anyone help me if anyone have used user hook for OLM? My requirement is to restrict course creation for the specific category... when we select category and select course and click on go button which process is calling? How can we identify the BP Package and Procedure name of that GO button?
    urgent reply shall be a great help.
    thank you.
    Regards,
    AD

    OK, I just tried to insert an element entry from the API and it works perfectly
    The problem seems to be coming from the form. Is the form not using an API?
    If this is the case, should I do a personalization and run a PL/SQL procedure each time a change is made?

  • No base object information for AQ$_PROP_TABLE_1

    Hi all,
    My alert log is stating that there is no base object information for the AQ$_PROP_TABLE_1 table? This table is owned by sys which is preventing me from preparing the table.
    Q1) How did the database end up in the state?
    Q2) How do I fix it?
    I'm running 9.2.0.3.
    WARNING: no base object information defined in logminer dictionary!!!
    knlldmm: gdbnm=HLRDB.SITE1
    knlldmm: objn=6850
    knlldmm: objv=1
    knlldmm: scn=1004390
    SQL> select OBJECT_NAME from dba_objects where OBJECT_ID=6850;
    OBJECT_NAME
    AQ$_PROP_TABLE_1
    Enter user-name: sys as sysdba
    Enter password:
    Connected.
    SQL> begin
    2 DBMS_CAPTURE_ADM.PREPARE_TABLE_INSTANTIATION('AQ$_PROP_TABLE_1');
    3 end;
    4 /
    begin
    ERROR at line 1:
    ORA-12087: online redefinition not allowed on tables owned by "SYS"
    ORA-06512: at "SYS.DBMS_CAPTURE_ADM_INTERNAL", line 74
    ORA-06512: at "SYS.DBMS_CAPTURE_ADM", line 159
    ORA-06512: at line 2
    Many thanks,
    Warren

    Select the image you'd like to use as the placeholder, and assign it a "name" in the Inspector - also make sure that the name only contains standard letters, numbers or underscores and starts with a letter (no spaces or punctuation). Does it show up in the Actions menu after that?

Maybe you are looking for

  • E-mail submit, form sending to wrong address

    My e-mail submit button is part of a fragment. It has been working fine on all other forms. The forms are distribute by my default main e-mail account and the "form submit" button is set to a gmail account so that another location and I can share acc

  • Mapping Help Needed - Message or Java UDF

    Hello Gurus,    I have a source structure as below. Idoc -group_a (0 to 99999) --  sub_groupa_1 (0 to 99999)       sga1_field_1        sga1_field_2 --  sub_groupa_2      sga2_field_1      sga2_field_2 --  sub_groupa_n      sgan_field_1      sgan_fiel

  • How to hide prompts panel for WebI documents opened in PDF via openDocument

    I am linking to a WebI document via openDocument call with sOutputFormat=P. The report opens in PDF format but within another browser window with top panel and left prompts panel.  I tried to set different Web Intelligence Interactive settings in CMC

  • How to stop caching on the server

    Hello, Can anyone please guide me as to how do we disable caching on the portal server since the changes i am making in the JSP pages are not reflected immediately. I have already cleared the browser cache but now i want to clear the cache on the por

  • Help with JButton

    I want to link a button to a web page making a button and adding ActionListener to it is ok from there how do i proceed. Thanks.