Sudo

Screenshot Software:
Sudo
Szczegóły programowe:
Wersja: 1.8.21p1 Aktualizowane
Filmu: 2 Oct 17
Wywoływacz: Todd Miller
Licencja: Wolny
Popularność: 131

Rating: 4.0/5 (Total Votes: 1)

Sudo (su "do") jest oprogramowaniem typu open source i bezpłatnym oprogramowaniem wierszowym, które umożliwia regularnym użytkownikom wykonywanie różnych poleceń, które wymagają uprawnień administratora lub jako administrator systemu, w ramach dowolnego GNU / Linuksa i systemów operacyjnych UNIX.


To jedno narzędzie do wydajnego administrowania systemem

Jednak nie wszyscy użytkownicy mają dostęp do polecenia sudo w środowisku systemu Linux, ale tylko użytkownicy lub grupy użytkowników mają tę zdolność, skonfigurowaną przez administratora systemu. Są nazywane użytkownikami z uprawnieniami administratora.

Wszystkie komendy, jak również ich argumenty, uruchamiają się (jako root) przez zwykłego użytkownika domyślnie są rejestrowane w domyślnym katalogu dzienników danego systemu operacyjnego Linux. Wszystkie dystrybucje systemu Linux domyślnie zawierają polecenie sudo.


Pierwsze kroki z Sudo

Domyślnie program Sudo jest zainstalowany w dowolnym systemie operacyjnym GNU / Linux, który jest dystrybuowany jako obrazy ISO (na żywo lub instalowane tylko) lub USB. Sudo jest także niezbędnym pakietem dystrybucji Linuksa, który musi być zbudowany ze źródeł lub za pomocą wstępnie zbudowanych programów binarnych, takich jak Gentoo i Arch Linux.

w programie Softoware można pobrać najnowszą wersję Sudo jako uniwersalne archiwum źródeł w formacie pliku tar.gz, które można zoptymalizować pod kątem platformy komputerowej, obsługując zarówno 32-bitowe, jak i 64-bitowe zestawy instrukcji. / p>

Aby ją pobrać, pobierz plik i zapisz go na swojej ścieżce, wyodrębnij archiwum, otwórz emulatora terminala, przejdź do lokalizacji wyodrębnionych plików archiwalnych używając & lsquo; cd & rsquo; uruchom polecenie & lsquo ;./ configure && make & rsquo; polecenie, aby skonfigurować i skompilować program.

Po pomyślnym zainstalowaniu można wykonać polecenie & lsquo; make install & rsquo; komenda z sudo (tak, sudo musi być zainstalowane w systemie przed instalacją) lub jako root (administrator systemu), który jest zalecanym wyborem, jeśli sudo nie jest zainstalowane w systemie GNU / Linux.

Co nowego w tym wydaniu:

  • W systemach, które obsługują zarówno PAM, jak i SIGINFO, główny proces sudo nie będzie już przekazywał SIGINFO do polecenia, jeśli sygnał został wygenerowany z klawiatury. Polecenie otrzymało już SIGINFO, ponieważ jest częścią tej samej grupy procesów, więc nie ma potrzeby przesyłania dalej. Jest to zgodne z obsługą SIGINT, SIGQUIT i SIGTSTP. Bug # 796.
  • Jeśli SODOERS_SEARCH_FILTER w pliku ldap.conf nie określa wartości, wyrażenie wyszukiwania LDAP użyte podczas wyszukiwania grup netgroups i nie-uniksowych miało błąd składni, jeśli wtyczka grupy nie została określona.
  • sudo -U otheruser -l ma teraz wartość wyjścia 0, nawet jeśli inny użytkownik nie ma uprawnień sudo. Wartość wyjścia, gdy użytkownik spróbuje wypisać własne uprawnienia lub jeśli komenda jest podana, nie ulega zmianie.
  • Poprawiono regresję wprowadzoną w sudo 1.8.21, gdzie odtwarzanie sudoreplay będzie wisiało w przypadku dzienników I / O zawierających dane wejściowe terminala.
  • Sudo 1.8.18 zawierało niekompletną poprawkę do dopasowywania wpisów w teczkach LDAP i SSSD, gdy określono sudoRunAsGroup, ale w sudoRole nie ma sudoRunAsUser.

  • Co nowego w wersji 1.8.16:

    • Naprawiono błąd kompilacji w Solaris 10 przy użyciu programu Stun Studio 12. Bug # 727.
    • Jeśli zachowasz zmienne z środowiska wywołującego użytkownika, jeśli istnieją duplikaty, sudo teraz zachowuje tylko pierwszą instancję.
    • Naprawiono błąd, który spowodował, że poczta ostrzegawcza ma zostać wysłana w trybie listy (sudo -l) dla użytkowników bez uprawnień sudo, gdy używane są backends LDAP i SSSD.
    • Naprawiono błąd, który uniemożliwił "mail_no_user" opcja nie działa poprawnie z zapleczem LDAP.
    • W przypadku zaplecza LDAP i SSSD biała przestrzeń jest ignorowana między operatorem (!, +, + =, - =) podczas analizowania sudoOption.
    • Teraz można wyłączyć ustawienia ścieżki w sudo.conf pomijając nazwę ścieżki.
    • Opcja Domyślnie sudoedit_checkdir Defaults domyślnie włączona i została rozszerzona. Podczas edytowania plików z sudoedit każdy katalog na ścieżce do edycji jest teraz zaznaczony. Jeśli katalog jest zapisywany przez użytkownika wywołującego, nie będą przestrzegane dowiązania symboliczne. Jeśli katalog nadrzędny edytowanego pliku ma być edytowany, sudoedit odmówi jego edycji. Bug # 707.
    • Opcja Domyślna netgroup_tuple została dodana, aby umożliwić dopasowanie całej krotki grupy netgroup, a nie tylko części hosta lub użytkownika. Bug # 717.
    • Podczas dopasowywania poleceń opartych na trawieniu SHA2 sudo będzie teraz używać fexecve (2), aby wykonać polecenie, jeśli jest dostępne. Ustala to czas sprawdzania w odniesieniu do wyścigu w czasie, gdy katalog, w którym jest zatrzymany komend, może być zapisywalny przez wywołującego użytkownika.
    • W systemach AIX sudo teraz przechowuje ciąg rejestru auth wraz z hasłem i informacjami o grupie. To rozwiązuje potencjalny problem, gdy użytkownik lub grupa o tej samej nazwie istnieje w wielu rejestrach uwierzytelniania. Na przykład lokalny i LDAP.
    • Naprawiono awarię w backendze SSSD, gdy nie znaleziono użytkownika wywołującego. Bug # 732.
    • Dodano flagę konfiguracyjną --enable-asan, która umożliwia obsługę adresowania się do środków sanitujących. Kilka drobnych wycieków pamięci zostało podłączonych do wyciszenia detektora wycieków ASAN.
    • Wartość _PATH_SUDO_CONF może zostać ponownie zastąpiona przez błąd nr 735.
    • Skrypt sudoers2ldif obsługuje teraz wiele ról o tej samej nazwie.
    • Naprawiono błąd kompilacji w systemach zawierających funkcje posix_spawn () i posix_spawnp (), ale nieużyteczny nagłówek spawn.h. Bug # 730.
    • Stała obsługa pomijania klas znaków w funkcji fnmatch () sudo w systemie.
    • Naprawiono błąd w obrębie zaplecza LDAP i SSSD, które może umożliwić nieautoryzowanemu użytkownikowi listę uprawnień innych użytkowników. Bug # 738.
    • Funkcja konwersacji PAM działa teraz wokół niejasności w specyfikacji PAM w odniesieniu do wielu wiadomości. Bug # 726.
    • Zaktualizowane tłumaczenia z portalu translationproject.org.

    • Co nowego w wersji 1.8.15:

      • Naprawiono błąd, który uniemożliwiał sudo budowę poza drzewem źródłowym na niektórych platformach. Bug # 708.
      • Poprawiono lokalizację biblioteki sssd w pakietach RHEL / Centos. Bug # 710.
      • Naprawiono problem z buildem w systemach, które nie domyślnie zawierają sys / types.h z innych plików nagłówkowych. Bug # 711.
      • Naprawiono problem w systemie Linux za pomocą kontenerów, w których sudo zignorowałoby sygnały wysłane przez proces w innym kontenerze.
      • Sudo odmawia wykonania polecenia, jeśli moduł sesji PAM zwróci błąd.
      • Podczas edytowania plików z sudoedit, linki symboliczne nie są już stosowane domyślnie. Stare zachowanie można przywrócić, włączając opcję sudoedit_follow w sudoers lub na zasadzie dla każdego polecenia za pomocą znaczników FOLLOW i NOFOLLOW. Bug # 707.
      • Poprawiono błąd wprowadzony w wersji 1.8.14, który spowodował ostatni poprawny edytor w edytorze sudoers " lista, która będzie używana przez visudo i sudoedit zamiast pierwszego. Bug # 714.
      • Naprawiono błąd w visudo, który uniemożliwiał dodanie ostatniej nowej linii do edytowanych plików bez jednego.
      • Naprawiono błąd powodujący dekodowanie niektórych buforów base64 w sudoersach, gdy format pośredni zawierał znak "=".
      • Poszczególne rekordy są teraz zablokowane w pliku stemplem czasowym zamiast całego pliku. To pozwala sudo uniknąć wielokrotnego podawania hasła wielokrotnego na tym samym terminalu, gdy jest używany w rurociągu. Innymi słowy, sudo cat foo | sudo grep bar teraz wyświetla tylko jedno hasło. Wcześniej oba procesy sudo wymagałyby hasła, co często uniemożliwiało wejście. Bug # 705.
      • Naprawiono błąd, w którym sudo nie uruchamia poleceń jako użytkownika innego niż root na systemach, w których brakuje zarówno ustawień setresuid (), jak i setreuid (). Bug # 713.
      • Naprawiono błąd wprowadzony w pliku sudo 1.8.14, który uniemożliwiał ponowną edycję poprawnego pliku visudo po wykryciu błędu składniowego.
      • Naprawiono błąd, w którym sudo nie przekazywał sygnału SIGHUP do polecenia, gdy terminal jest zamknięty, a polecenie nie jest uruchamiane w jego własnym pseudo-tty. Bug # 719.
      • Jeśli zachowano zachowanie niektórych, ale nie wszystkich, zmiennych środowiskowych LOGNAME, USER lub USERNAME z środowiska wywołującego użytkownika, sudo teraz użyje zachowanej wartości, aby ustawić pozostałe zmienne zamiast używać użytkownika runasa. Zapewnia to, że jeśli na liście env_keep znajduje się tylko nazwa LOGNAME, to sudo nie ustawi użytkowników USER i USERNAME na użytkownika runas.
      • Gdy sudo polecenia jest uruchomione z powodu sygnału, sudo teraz wysyła ten sam sygnał z domyślnym procesorem sygnału zainstalowanym zamiast wyjść. Powłoka bash wydaje się ignorować niektóre sygnały, np. SIGINT, chyba że uruchomiony komend zostanie zabity przez ten sygnał. Sprawia to, że zachowanie poleceń działa pod sudo tak samo jak bez sudo, gdy bash jest powłoką. Bug # 722.
      • Słownik tłumaczenie sudo z translateproject.org.
      • Tłumaczenia w języku węgierskim i słowackim dla sudoers z portalu translationproject.org.
      • Wcześniej, gdy env_reset został włączony (domyślnie), a opcja -s nie była używana, zmienna środowiskowa SHELL została ustawiona na powłok użytkownika wywołującego. Teraz, gdy env_reset jest włączony, a opcja -s nie jest używana, SHELL jest ustawiany na podstawie docelowego użytkownika.
      • Uwierzytelnianie BSD w trybie wyzwania / odpowiedzi.
      • Dodano opcję sudoedit_checkdir Defaults, aby uniemożliwić sudoeditowi edycję plików znajdujących się w katalogu, który jest zapisywany przez wywołującego użytkownika.
      • Dodano opcję domyślną always_quiring_group_plugin, aby sprawdzić, czy grupy nie znalezione w bazie danych grupy systemowej są przekazywane do wtyczki grupy. Wcześniej nieznane grupy systemowe były zawsze przekazywane do wtyczki grupy.
      • Podczas tworzenia nowego pliku sudoedit sprawdzi, czy katalog główny pliku istnieje przed uruchomieniem edytora.
      • Naprawiono test kompilatora stosu kompilatora dla kompilatorów, które obsługują -fstack-protector, ale w rzeczywistości nie ma biblioteki ssp.

      • Co nowego w wersji 1.8.14p3:

        • Naprawiono błąd wprowadzony w sudo 1.8.14p2, uniemożliwił sudo pracy, gdy nie ma tty.
        • Stałe wykrywanie tty w nowszych systemach AIX, w których dev_t to 64-bitowy.

        • Co nowego w wersji 1.8.14:

          • Wiadomości logowania w systemie Mac OS X respektują sudoers_locale, gdy sudo jest zbudowane z obsługą NLS.
          • Strony podręcznika sudo teraz przekazują mandoc -Tylkę bez ostrzeżeń.
          • Naprawiono problem kompilacji w systemach z funkcją sig2str (), która nie definiuje SIG2STR_MAX w signal.h.
          • Pracował wokół błędu kompilatora, który powodował nieoczekiwane zachowanie podczas zwracania int z funkcji zadeklarowanej w celu zwrócenia bool bez wyraźnego odtworzenia.
          • Pracował wokół błędu w badaniu BSD systemu Mac OS X 10.10, gdy au_preselect () nie powiedzie się dla zdarzeń AUE_sudo, ale udaje się dla AUE_DARWIN_sudo.
          • Naprawiono zawieszenie w systemach Linux z glibc, gdy sudo jest połączone z jemalloc.
          • Gdy użytkownik uruchamia polecenie jako identyfikator użytkownika, który nie jest obecny w bazie danych haseł za pomocą flagi -u, polecenie to jest teraz uruchamiane z identyfikatorem grupy użytkownika wywołującego zamiast grupy ID 0.
          • Naprawiono problem kompilacji w systemach, które nie pobierają definicji uid_t i gid_t bez sys / types.h lub unistd.h.
          • Naprawiono problem kompilacji w nowszych systemach AIX, które używają struct st_timespec dla znaczników czasu w strukturze struct różniących się od struct timespec. Bug # 702.
          • Katalog przykładów można konfigurować za pomocą --with-exampledir i domyślnie DATAROOTDIR / examples / sudo na systemach BSD.
          • Plik /usr/lib/tmpfiles.d/sudo.conf jest teraz instalowany jako część "make install" gdy systemd jest używany.
          • Naprawiono problem z łącznikiem w niektórych systemach z libintl. Bug # 690.
          • Stała kompilacja z kompilatorami, które nie obsługują __func__ lub __FUNCTION __.
          • Sudo nie musi już używać słabych symboli, aby obsługiwać lokalizację w funkcjach ostrzegania. Zamiast tego używa się funkcji rejestracji.
          • Naprawiono błąd setresuid () w sudoers na jądrach systemu Linux, gdzie zmiany uid uwzględniają limit zasobów zasobu nproc.
          • Naprawiono zapytania dotyczące grupy netgrupy LDAP w systemie AIX.
          • Sudo wyświetli monit niestandardowy w systemach Linux za pomocą PAM, nawet jeśli "Password: & quot; nie jest zlokalizowany przez moduł PAM. Bug # 701.
          • Podwójne wartości w sudoOption LDAP są teraz obsługiwane dla spójności z plikami sudoers.
          • Naprawiono błąd, który uniemożliwiał analizowanie składniowego wpisu w btime w pliku / proc / stat w systemie Linux.

          • Co nowego w wersji 1.8.13:

            • Katalog przykładów jest podkatalogiem katalogu doc ​​zgodny z zasadami Debian. Bug # 682.
            • Naprawiono błąd kompilacji dla siglist.c i signame.c w niektórych systemach. Bug # 686.
            • Słabe symbole są teraz używane dla sudo_warn_gettext () i sudo_warn_strerror () w libsudo_util, aby uniknąć błędów łącza, gdy -Wl, - nie jest zdefiniowane w LDFLAGS. Opcja --disable-weak-symbols config może być użyta do wyłączenia użytkownika słabych symboli.
            • Poprawiono błąd w funkcji zastąpienia sudo mkstemps (), która uniemożliwiała zachowywanie rozszerzenia pliku w sudoedit.
            • Nowa flaga sudoers mail_all_cmnds wyśle ​​pocztę, gdy użytkownik uruchomi polecenie (lub spróbuje). Zachowanie flagi mail_always zostało przywrócone do zawsze wysyłania poczty przy uruchamianiu sudo.
            • Dodano nowe znaczniki poleceń MAIL i NOMAIL, aby przełączyć zachowanie wysyłania poczty na podstawie polecenia (lub Cmnd_Alias).
            • Poprawiono dopasowywanie pustych haseł, gdy sudo jest skonfigurowane do uwierzytelniania plików passwd (lub shadow) w systemach, w których funkcja crypt () zwraca NULL w przypadku nieprawidłowych soli.
            • W systemie AIX sudo teraz używa wartości ustawień auth_type w pliku /etc/security/login.cfg, aby ustalić, czy ma być używany identyfikator użytkownika lub LAM.
            • Wszystkie ustawienia listpw i verifypw działają poprawnie z LDAP i sssd sudoers.
            • Katalog sudo timestamp jest teraz tworzony w czasie rozruchu na platformach używających systemd.
            • Sudo przywróci wartość obsługi programu SIGPIPE przed wykonaniem polecenia.
            • Sudo wykorzystuje teraz struct timespec zamiast struct timeval do zachowania czasu, gdy jest to możliwe. Jeśli jest to obsługiwane, sudoedit i visudo używają teraz znaczników czasu nanoszenia nanosekund.
            • Naprawiono kolizję nazwy symboli z systemami, które mają własną implementację SHA2. To rozwiązuje problem, w którym PAM może użyć niewłaściwej implementacji SHA2 w systemach Solaris 10, skonfigurowanych do używania haseł SHA512.
            • Edytor wywołany przez sudoedit po raz kolejny używa niezmodyfikowanej kopii środowiska użytkownika zgodnie z dokumentacją. To zostało przypadkowo zmienione w sudo 1.8.0. Bug # 688.

            • Co nowego w wersji 1.8.11p2:

              • Naprawiono błąd, w którym dynamiczne obiekty udostępnione z wtyczki mogły używać zahaczonej wersji getenv (), ale nie z hakowanymi wersjami putenv (), setenv () lub unsetenv (). Może to powodować problemy z modułami PAM, które używają tych funkcji.

              Co nowego w wersji 1.8.9p5:

              • Naprawiono błąd kompilacji w systemie AIX, gdy jest włączona obsługa protokołu LDAP.
              • Naprawiono analizowanie ustawień domyślnych "umask" w sudoers. Bug # 632.
              • Naprawiono nieudane potwierdzenie, gdy w sudoers jest włączone ustawienie domyślne "closefrom_override", a używana jest sudo-C. Bug # 633.

              Co nowego w wersji 1.8.9p4:

              • Naprawiono błąd, w którym sudo może zużywać duże ilości CPU, podczas gdy polecenie było uruchomione, gdy rejestracja we / wy nie jest włączona. Bug # 631
              • Naprawiono błąd, w którym sudo wychodzi z błędu, gdy poziom debugowania ustawiony jest na util @ debug lub all @ debug, a rejestracja we / wy nie jest włączona. Polecenie będzie kontynuowane po uruchomieniu sudo.

              Co nowego w wersji 1.8.3:

              • Dodano tag SUDO_1_8_3 w przypadku zmian 82bec4d3a203
              • Aktualizuj tłumaczenie japońskiego sudoers z portalu translationproject.org

              Co nowego w wersji 1.7.4p5:

              • Usunięto błąd, który pozwoliłby na uruchomienie polecenia bez konieczności wprowadzania hasła przez użytkownika, gdy używana jest opcja -u flagi sudo bez flagi -u.
              • Jeśli użytkownik nie ma żadnych dodatkowych grup, sudo powróci do sprawdzenia pliku grupy, który przywraca zachowanie historyczne sudo.
              • Uruchomienie awarii zostało przeprowadzone przy użyciu flagi sudo-s bez flagi -u, a plik sudoers zawiera wpis bez użytkownika lub grupy runas.
              • W usłudze rejestrowania we / wy poprawiono błąd, który może powodować artefakty wizualne w programach pełnoekranowych, takich jak edytory tekstu.
              • Uruchomienie awarii zostało zakończone, gdy włączona jest obsługa projektu Solaris i używana jest s-g flaga sudo bez flagi -u.
              • Sudo nie kończy się z błędem, gdy skompilowane jest wsparcie dla audytu, ale kontrola nie jest włączona.
              • Naprawiono błąd wprowadzony w sudo 1.7.3, gdzie plik ticketów nie był honorowany, gdy włączono opcję domyślnych sudoers defaultpw "targetpw".
              • Tagi LOG_INPUT i LOG_OUTPUT w sudoers są teraz poprawnie analizowane.
              • Gdy sudo został zbudowany z obsługą inspekcji, użytkownik nie może uruchamiać żadnych poleceń na hoście. Usterka została rozwiązana w "sudo-l".

              Co nowego w wersji 1.7.4p2:

              • Błąd, w którym sudo mógł przenieść się w zapętlonej pętli oczekującej na proces podrzędny.
              • Błąd wprowadzony w programie sudo 1.7.3, który uniemożliwiał działanie opcji -k i -K, gdy włączono opcję sudoers tty_tickets.
              • Sudo przestaje drukować ostrzeżenie, gdy podano opcje -k lub -K, a plik biletu nie istnieje.

              Co nowego w wersji 1.7.4:

              • Sudoedit zachowuje teraz rozszerzenie pliku w nazwie edytowanego pliku tymczasowego. Rozszerzenie jest używane przez niektórych edytorów (np. Emacs), aby wybrać tryb edycji.
              • Pliki znaczników czasu przenoszono z / var / run / sudo do / var / db / sudo, / var / lib / sudo lub / var / adm / sudo. Katalogi są sprawdzane pod kątem istnienia w tej kolejności. Zapobiega to użytkownikom otrzymywania wykładu sudo za każdym razem, gdy system zostanie uruchomiony ponownie. Pieczątki czasowe starsze niż czas rozruchu są ignorowane w systemach, w których można to określić.
              • Dokumentacja dodatkowa (pliki README, LICENCJA itp.) jest teraz instalowana w katalogu dokumentacji sudo.
              • Sudo rozpoznaje "tls_cacert" jako alias "tls_cacertfile" w pliku ldap.conf.
              • Ustawienie domyślne powiązane z użytkownikiem, hostem lub poleceniem może zawierać operatora negacji. Na przykład:
              • Ustawienia domyślne:! millert lecture
              • będzie pasował do dowolnego użytkownika, ale będzie miał wartość millert.
              • Domyślna zmienna środowiskowa PATH, używana, gdy nie istnieje zmienna PATH, zawiera teraz / usr / sbin i / sbin.
              • Sudo używa teraz polipkg (http://rc.quest.com/topics/polypkg/) do pakowania między różnymi platformami.
              • W systemie Linux sudo zrestartuje limit zasobów nproc przed wykonaniem polecenia, chyba że limit limitów został zmodyfikowany przez pam_limits. Pozwala to uniknąć problemów z skryptami bash, które otwierają więcej niż 32 deskryptorów w SuSE Linux, gdzie sysconf (_SC_CHILD_MAX) zwróci -1, gdy RLIMIT_NPROC jest ustawiona na RLIMIT_UNLIMITED (-1).
              • Visudo traktuje nierozpoznawalny wpis Domyślnie jako błąd analizy (sudo ostrzega, ale nadal będzie działał).
              • Zmienne środowiskowe HOME i MAIL są teraz resetowane w oparciu o wpis bazy danych haseł użytkownika docelowego, gdy włączona jest opcja enudo_servers sudoers (co ma miejsce w konfiguracji domyślnej). Użytkownicy chcący zachować oryginalne wartości powinni użyć wpisu sudoers:
              • Domyślnie env_keep + = HOME
              • , aby zachować starą wartość HOME i
              • Domyślnie env_keep + = MAIL
              • , aby zachować starą wartość poczty elektronicznej.
              • Opcja tty_tickets jest domyślnie włączona.
              • Naprawiono błąd w przywróceniu ustawień rejestru AIX authdb.
              • Jeśli jest używany PAM, poczekaj, aż proces zakończy się przed zamknięciem sesji PAM.
              • Naprawiono "sudo -i -u user", gdzie użytkownik nie ma powłoki wymienionej w bazie danych haseł.
              • Podczas logowania I / O, sudo teraz obsługuje pty odczytu / zapisu zwracającego ENXIO, co widać na FreeBSD, gdy sesja logowania została zabita.
              • Sudo przeprowadza teraz rejestrowanie we / wy w locale C. Pozwala to uniknąć problemów z lokalizacją podczas analizowania liczb zmiennoprzecinkowych w pliku czasu.
              • Dodano obsługę plików punktów dot. administracyjnych w stylu Ubuntu.

Komentarze do Sudo

Komentarze nie znaleziono
Dodaj komentarz
Włącz zdjęć!