chgrp chown usermod бесполезен, если не root?

Я могу воспроизвести:

$ printf "%s : %s : %s\n" $TERM  ${TERM//[^[:alnum:]]/_} ${TERM//[^[:alnum:]]/?}
xterm-256color : xterm_256color :

Это потому, что ни один файл не соответствует шаблону xterm?256color

Решения:

  1. Укажите свои переменные:

    $ printf "%s : %s : %s\n" "$TERM" "${TERM//[^[:alnum:]]/_}" "${TERM//[^[:alnum:]]/?}"
    xterm-256color : xterm_256color : xterm?256color
    
  2. Отключить расширение имени файла

    $ (set -f; printf "%s : %s : %s\n" $TERM  ${TERM//[^[:alnum:]]/_} ${TERM//[^[:alnum:]]/?})
    xterm-256color : xterm_256color : xterm?256color
    
  3. Отключить опцию оболочки nullglob

    $ (shopt -u nullglob; printf "%s : %s : %s\n" $TERM  ${TERM//[^[:alnum:]]/_} ${TERM//[^[:alnum:]]/?})
    xterm-256color : xterm_256color : xterm?256color
    

1
10.12.2019, 20:55
1 ответ

Вероятно, это

Проблема

Когда вы добавляете пользователя в новую группу, он просто записывает некоторые данные в конфигурационный файл на диск. Существующие процессы не изменяются.

Как решить проблему.

Вы можете выйти из системы и снова войти в нее или использовать newgrpдля создания нового процесса оболочки с добавленной новой группой (это выполняет проверку разрешений путем чтения данных в файле, а затем запускает новую оболочку в новый процесс с новой группой, добавленной к группам ).

2
27.01.2020, 23:40

Теги

Похожие вопросы