50-gid-video 646 B

1234567891011121314151617181920212223242526
  1. #!/usr/bin/with-contenv bash
  2. FILES=$(find /dev/dri /dev/dvb -type c -print 2>/dev/null)
  3. for i in $FILES
  4. do
  5. VIDEO_GID=$(stat -c '%g' "$i")
  6. if id -G abc | grep -qw "$VIDEO_GID"; then
  7. touch /groupadd
  8. else
  9. if [ ! "${VIDEO_GID}" == '0' ]; then
  10. VIDEO_NAME=$(getent group "${VIDEO_GID}" | awk -F: '{print $1}')
  11. if [ -z "${VIDEO_NAME}" ]; then
  12. VIDEO_NAME="video$(head /dev/urandom | tr -dc 'a-z0-9' | head -c8)"
  13. groupadd "$VIDEO_NAME"
  14. groupmod -g "$VIDEO_GID" "$VIDEO_NAME"
  15. fi
  16. usermod -a -G "$VIDEO_NAME" abc
  17. touch /groupadd
  18. fi
  19. fi
  20. done
  21. if [ -n "${FILES}" ] && [ ! -f "/groupadd" ]; then
  22. usermod -a -G root abc
  23. fi