sudoers filsyntaksfejl ved kørsel af sudo-kommandoer

Summary: Når du har konfigureret en rolle, kan du ikke køre sudo-kommandoer og får vist en syntaksfejl i sudoers-filen.

This article applies to This article does not apply to This article is not tied to any specific product. Not all product versions are identified in this article.

Symptoms

Når du kører en "sudo" kommando, kan det mislykkes på en eller flere noder, for eksempel:

cluster-1# isi_for_array -s sudo date
cluster-1: Fri Sep 12 16:58:29 CDT 2014
cluster-2: Fri Sep 12 16:58:30 CDT 2014
cluster-3: sudo: >>> /usr/local/etc/sudoers: syntax error near line 124 <<<
cluster-3: sudo: parse error in /usr/local/etc/sudoers near line 124
cluster-3: sudo: no valid sudoers sources found, quitting
cluster-3: sudo: unable to initialize policy plugin

Cause

Dette kan ske af forskellige årsager:
 

1. Den bruger eller gruppe, der er føjet til en rolle, kan ikke løses på berørte noder:

På de noder, der udviser problemet, kan du muligvis se, at den bruger eller gruppe, der blev tilføjet, ikke kan løses:

cluster-1# isi_for_array -n3 'isi auth users view domain\\group'
cluster-3: Failed to find group for 'GROUP:domain\group': No such group

Da brugeren eller gruppen ikke kan løses, kan noden ikke finde en GID/UID for sudoers fil, og ser på /usr/local/etc/sudoers Fil:

cluster-1# isi_for_array -s "egrep -i 'user_alias.*newrole' /usr/local/etc/sudoers"
cluster-1: User_Alias NEWROLE = %#1000010
cluster-2: User_Alias NEWROLE = %#1000010
cluster-3: User_Alias NEWROLE =

Bemærk, at UID/GID ikke er udfyldt, og dette resulterer i en syntaktisk fejl.
 

2. Den rolle, der blev oprettet, indeholder en bindestreg i navnet:

cluster-1# isi auth roles view test-role                                                               
       Name: test-role
Description: -
    Members: DOMAIN\user
 Privileges
             ID : ISI_PRIV_LOGIN_SSH
      Read Only : True

             ID : ISI_PRIV_AUTH
      Read Only : False

cluster-1% sudo date
sudo: >>> /usr/local/etc/sudoers: syntax error near line 124 <<<
sudo: parse error in /usr/local/etc/sudoers near line 124
sudo: no valid sudoers sources found, quitting
sudo: unable to initialize policy plugin

For eksempel findes denne fejl på linje 124:

cluster-1# grep -n '' /usr/local/etc/sudoers | grep ^124
124:User_Alias TEST-ROLE = #1000003

 3. Brugeren eller gruppen har ikke en tilknyttet UID eller GID.

Resolution

1. Hvis noder ikke kan oversætte et bruger- eller gruppenavn til et UID/GID, skal vi tilføje brugeren/gruppen som angivet af UID/GID i stedet.


Fjern bruger- eller gruppenavnet fra rollekonfigurationen:

cluster-1# isi auth roles modify --role=newrole --remove-group=domain\\group
cluster-1# isi auth roles view newrole                                                          
       Name: newrole
Description: -
    Members: -
 Privileges
             ID : ISI_PRIV_LOGIN_SSH
      Read Only : True

             ID : ISI_PRIV_SMB
      Read Only : False


Hent den korrekte UID/GID for brugeren fra en node, der kan udføre handlingen:

cluster-1# isi auth groups view domain\\group
            Name: DOMAIN\group
              DN: CN=group,CN=Users,DC=domain,DC=com
             SID: S-1-5-21-463481935-3723234361-2963677383-1144
             GID: 1000010
          Domain: DOMAIN
Sam Account Name: group
        Provider: lsa-activedirectory-provider:DOMAIN.COM
   Generated GID: Yes
Bemærk: Det samme kan gøres for en bruger ved at erstatte "grupper" med "brugere" i stedet for GID, UID.

Anvend UID/GID i stedet for gruppenavnet:

cluster-1# isi auth roles modify --role=newrole --add-gid=1000010
cluster-1# isi auth roles view newrole                                                          
       Name: newrole
Description: -
    Members: DOMAIN\group
 Privileges
             ID : ISI_PRIV_LOGIN_SSH
      Read Only : True

             ID : ISI_PRIV_SMB
      Read Only : False

 Bemærk: Det samme kan gøres for en bruger ved at erstatte "add-gid" med "add-uid".

Sudoers-filkonfigurationen skal nu afspejle uid/gid korrekt:

cluster-1# isi_for_array -s "egrep -i 'alias.*newrole' /usr/local/etc/sudoers"
cluster-1: User_Alias NEWROLE = %#1000010
cluster-2: User_Alias NEWROLE = %#1000010
cluster-3: User_Alias NEWROLE = %#1000010

Sudo-kommandoer skal også fungere korrekt:

cluster-1# isi_for_array -s sudo date                                                      
cluster-1: Fri Sep 12 17:20:14 CDT 2014
cluster-2: Fri Sep 12 17:20:14 CDT 2014
cluster-3: Fri Sep 12 17:20:14 CDT 2014

 

2. Omdøb rollen, så den ikke indeholder et "-".
 

Omdøb rollen, så den ikke indeholder en bindestreg:

cluster-1# isi auth roles modify --role=test-role --name=test_role

 

Bemærk, at der ikke længere er en syntaksfejl:

cluster-1% % sudo date
Password:

 

3. Sudoers-filen kræver en UID eller GID for at identificere brugere og grupper, sikre at alle brugere og grupper har en tilknyttet UID eller GID.

Affected Products

PowerScale OneFS
Article Properties
Article Number: 000102433
Article Type: Solution
Last Modified: 22 Dec 2025
Version:  5
Find answers to your questions from other Dell users
Support Services
Check if your device is covered by Support Services.