Резак / паста перестал работать на меня

У пользователя не может быть больше, чем основная группа. Почему? Поскольку API, используемые для доступа к данным passwd , ограничивают их одной основной группой. См. man 3 getpwent :

The getpwent() function returns a pointer to a structure containing
the broken-out fields of a record from the password database (e.g.,
the local password file /etc/passwd, NIS, and LDAP).  The first time
getpwent() is called, it returns the first entry; thereafter, it
returns successive entries.

The passwd structure is defined in  as follows:

   struct passwd {
       char   *pw_name;       /* username */
       char   *pw_passwd;     /* user password */
       uid_t   pw_uid;        /* user ID */
       gid_t   pw_gid;        /* group ID */
       char   *pw_gecos;      /* user information */
       char   *pw_dir;        /* home directory */
       char   *pw_shell;      /* shell program */
   };

Примечание: gid_t pw_git . Стандарт говорит для pwd.h :

Заголовок должен определять структуру struct passwd , которая должен включать как минимум следующие элементы:

 char * pw_name Имя пользователя для входа. 
uid_t pw_uid Числовой идентификатор пользователя. 
gid_t pw_gid Числовой идентификатор группы. 
char * pw_dir Начальный рабочий каталог. 
char * pw_shell Программа для использования в качестве оболочки. 
 

Заголовок должен определять gid_t , uid_t и size_t {{ 1}}, как описано в .

А на странице types.h :

nlink_t , uid_t , gid_t и id_t должны быть целочисленными типами.

Таким образом, стандарты ограничивают идентификатор основной группы одним целым числом.

3
10.11.2018, 16:27
1 ответ

Если вам нужен более общий совет, то он заключается в том, что установка пакета meta -для более чем одной среды рабочего стола может иметь довольно странные последствия, и вы сможете навести порядок :-P. Есть несколько хороших Причины, по которым Ubuntu и Fedora имеют разновидности/расширения, т.е. разные установочные диски ОС для разных сред рабочего стола.

Конечно, если вы найдете хорошее чистое решение или странный эффект, который вы обнаружите, достаточно опасен, вы также можете сообщить об ошибке и надеяться, что Debian разрешит конфликт.

Документ для clipit --daemon(, который запускается автоматически ), говорит, что он используется «для обеспечения безопасности вашего буфера обмена и основного содержимого». Вы можете догадаться, что это означает несколько вещей. Тем не менее, я ожидаю, что по крайней мере одна из проблем, которую он решит, заключается в том, что буфер обмена X для копирования / вставки фактически теряется, когда вы закрываете приложение, из которого вы скопировали. Возможно, Debian LXDE ожидает, что вы захотите сохранить содержимое буфера обмена в LXDE.

Эта функция уже доступна на рабочем столе GNOME. Я бы посоветовал не запускать clipit --daemonили его эквивалент в сеансе GNOME, если они конфликтуют. Может быть, вы нашли такой конфликт. (Хотя вы прямо не говорите, есть ли у вас такая же проблема и в LXDE?)

(По крайней мере, я думаю, что GNOME предоставляет менеджер буфера обмена, который работает для X Windows. Некоторые детали упоминаются в этом старом документе Ubuntu . Кажется проблема , что это не работает, когда вы используете родные приложения Wayland и GNOME с Wayland ).

Проблема в том, что clipitне является частью LXDE. Кажется вероятным, что вы можете установить его, потому что хотите использовать его в среде, которая не является LXDE, но также поддерживает автозапуск. (? )Это может оправдать clipit.debпредоставление /etc/xdg/autostart/clipit.desktopили что-то в этом роде,для автозапуска clipit в любой среде рабочего стола. Или, может быть, упаковщик счел альтернативы неудобными, т. е. создание пакета-заглушки lxde-clipit-autostartили размещение специфичного для LXDE -автозапуска внутри пакета, не -LXDE-специфичного clipit.

Некоторые файлы автозапуска .desktopсодержат строку типа NotShowIn=GNOME;Unity;. Или они могут использовать строку OnlyShowIn=. Если у них нет такой конкретной строки, автозапуск будет запущен во всех средах рабочего стола, поддерживающих автозапуск.

Вы можете попробовать добавить NotShowIn=GNOMEк clipit.desktop. Если это сработает, вы можете предложить это решение для clipit.debв отчете об ошибке. Я не думаю, что это полностью общее решение. Другой облегченный рабочий стол может вызвать автозапуск другого универсального менеджера буфера обмена. Таким образом, может быть спорным, можно ли принять это или любое другое решение в качестве изменения clipit.deb.

1
27.01.2020, 21:33

Теги

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