Usuń wszystkich użytkowników administratora oprócz administratora

3

Chciałbym usunąć wszystkich użytkowników, którzy mają uprawnienia administratora, z wyjątkiem użytkownika o nazwie „administrator”

dscl. -delete / Groups / admin

Myślę, że powyższe polecenie usunie wszystkich użytkowników administracyjnych, ale istnieje sposób na edycję polecenia, aby osiągnąć to, czego chcę.

R.Srinath
źródło

Odpowiedzi:

4

Musisz wykonać iterację nad wszystkimi użytkownikami w grupie administracyjnej, usuwając ich jeden po drugim, pozostawiając wybrane konto w spokoju, w przeciwieństwie do usuwania samej grupy administracyjnej.

Zachowaj także ostrożność, aby nie usunąć żadnych wbudowanych kont, ponieważ spowodowałoby to uszkodzenie systemu operacyjnego. Zwykle konta użytkowników mają identyfikator większy niż 500, więc poskładasz trochę skryptów:

Nie zamierzam publikować działającego skryptu, ponieważ będziesz chciał dokładnie skasować usunięcie, aby było odwracalne, a także wyczyścić foldery domowe użytkowników po usunięciu każdego użytkownika. Błąd w tym skrypcie może spowodować znaczną utratę danych.

bmike
źródło
Wykonaj kompleksową kopię zapasową PRZED uruchomieniem dowolnego takiego skryptu ...
Solar Mike
Tak, rzeczywiście - mój minimalny punkt początkowy to kopia zapasowa i wcześniej pobrana ponowna instalacja / weryfikacja dobrego Recovery HD lub sieci obsługującej rozruch z Internetu. Najpierw usunąłbym użytkowników, a potem dane, gdybym zaczynał projekt automatyzacji, tak jak poprosił PO.
bmike