우분투는 GNU / 리눅스 운영 시스템의 배포판으로, 유닉스 시스템 제품군에 속합니다. 이는 여러 현대 운영체제의 공통 아키텍처입니다.
전통적으로 Unix는 메인 프레임 컴퓨터에서 실행되었습니다. 원격 터미널을 통해 수십 또는 수백 명의 사용자에게 서비스를 제공하는 중앙 컴퓨팅 시설. 모든 사용자가 메인 프레임의 가용성에 의존하기 때문에 단일 사용자가 종료 명령을 실행할 수 없었습니다. 유닉스 아키텍처의 기본 개념-시스템 커널은 수퍼 유저 프로세스가 해당 함수를 호출하지 않는 한 시스템 종료를 초기화하지 않습니다.
현대 데스크탑 시스템에서 개발자는 단순한 데스크탑 사용자 만 시스템 종료를 사용할 수 있도록하기 위해 몇 가지 어려움을 겪었습니다. 일반적인 기술은 일반적으로 루트 사용자의 보안 컨텍스트에서 실행되는 로그인 관리자가 종료 및 재부팅을 처리하도록하는 것입니다. 이 경우 그래픽 쉘은 로그인 관리자에게 요청하여 컴퓨터를 종료합니다. 여기에는 일반적으로 dbus 서비스를 통한 프로세스 간 통신 (IPC) 사용이 포함됩니다.
위에서 언급 한 정책 키트는 로그인 관리자 (또는 모든 프로그램이 종료 서비스를 제공하는 프로그램)가 종료를 유발할 수있는 사용자를 확인하고 관리자가 해당 권한을 각각 구성 할 수있는 표준화 된 프레임 워크를 제공하여이 프로세스를 확장합니다.
일부 데스크탑 환경은 IPC 기반 서비스를 사용하지 않고 동일하거나 유사한 기능을 제공하기 위해 일련의 도우미 프로그램을 사용합니다. 이러한 도우미 프로그램은 메커니즘을 통해 호출되므로 sudo, suid 또는 sudo와 유사한 정책 키트 메커니즘과 같은 수퍼 유저 컨텍스트로 변경할 수 있습니다.
어쨌든 쉘의 벙어리 전통적인 종료 프로그램은 이런 방식으로 작동하지 않습니다. 수퍼 유저 컨텍스트에서 실행되고 있는지 확인해야합니다.
sudo shutdown -h now
하지만 문제는 액세스 권한이 없으면shutdown
작동하지 않는다는 것입니다. .. 당신이 내 상황을 이해하기를 바랍니다 .. :)