Chocolatey로 무료 소프트웨어를 자동으로 업데이트하는 방법

컴퓨터에 Spotify , Adobe Reader , Chrome , Firefox , 7-Zip , VLC Media Player(VLC Media Player…the list) 같은 앱이 있고 목록이 계속 표시되며 모두 무료입니다. 우리는 프리웨어(freeware) 없이 무엇을 할 것인가? 그러나 이러한 앱은 보안 허점을 수정하고 새롭고 유용한 기능을 도입하기 위해 자주 업데이트해야 합니다. 업데이트는 편리한 시간에 이루어지지 않습니다.

바로 여기에 Chocolatey 가 등장합니다. 무료 앱인 Chocolatey 를 사용하여 소프트웨어를 최신 상태로 유지하십시오. 쉽고 빠르고 간단하며 무료라고 언급 했습니까? 사실이라고 하기에는 너무 좋은 것 같지만 사실입니다. (Seems)하지만 초콜릿(Chocolatey) 은 무엇 입니까?

초콜렛이란?

Windows 명령줄(Windows command line) , PowerShell 또는 Linux 명령줄(Linux command line) 에서 작업을 수행하지 않은 경우 Chocolatey 의 개념이 약간 이상할 수 있습니다. Chocolatey 는 (Chocolatey)소프트웨어를 관리(manage software) 하는 데 도움이 되는 기계 수준 프로그램입니다 .

기계 수준이란 작업을 수행하는 데 도움이 되는 그래픽 사용자 인터페이스(user interface) 가 없다는 의미입니다 . 모든 명령을 입력해야 합니다. 두려워 (Don)하지(t let) 마십시오 ! 당신이 단어를 쓸 수 있다면, 당신은 이것을 마스터 할 수 있습니다.

어떻게 초콜릿을 설치합니까?

Chocolatey 가 작동해야 하는 몇 가지 사항이 있습니다. 프로그램이 작동하기 위해 Windows(Windows) 기능 의 다른 프로그램이 필요할 때 필요한 프로그램을 종속성이라고 합니다. Chocolatey 의 종속성은 최소한 다음을 사용해야 합니다.

  • 윈도우 7 이상
  • PowerShell 버전 2 이상
  • .NET Framework 4 이상
  • 또한 컴퓨터에 대한 관리자 액세스 권한(administrator access) 이 있어야 합니다.

Windows 7 이상 이 있다면 이미 PowerShell 버전 2(PowerShell version 2) 이상이 있는 것입니다. .NET Framework 4(Framework 4) 가 있는지 확실하지 않은 경우 걱정하지 마십시오. Chocolatey 를 설치할 때 .NET 4가 없는 경우 Chocolatey 가 설치합니다.

시작 메뉴(Start Menu) 의 검색 상자 에 PowerShell 을 입력하여 PowerShell을 엽니다 . Windows PowerShell App 이라는 결과가 표시되어야 합니다 .

그것을 마우스 오른쪽 버튼으로 클릭하고 관리자 권한으로 실행 을(Run as Administrator) 선택하십시오 . 이렇게 하는 것을 상승된 인스턴스에서 PowerShell을 실행하는 것으로 알려져 (elevated instance)있습니다(PowerShell) . 관리자 권한으로 승격되었습니다. PowerShell 창이(PowerShell window) 열립니다 .

PowerShell 창(PowerShell window) 에서 다음 명령 을 입력하거나 복사(type or copy) 하여 붙여넣습니다.

Set-ExecutionPolicy Bypass -Scope Process -Force; iex ((New-Object System.Net.WebClient).DownloadString(‘https://chocolatey.org/install.ps1’))

Set-ExecutionPolicy Bypass -Scope Process -Force 부분은 다음 작업에만 제한된 실행 정책을 적용하고 싶지 않다고 PowerShell 에 알려줍니다. (PowerShell)PowerShell 은 기본적으로 서명된 프로세스만 실행하도록 허용합니다. 가장 높은 보안 설정(security setting) 입니다. 그러나 우리는 Chocolatey 를 설치하는 이 서명되지 않은 프로세스를 실행해야 합니다 .

명령 의 iex ((New-Object System.Net.WebClient).DownloadString(‘https://chocolatey.org/install.ps1’)) 부분은 PowerShell 에 (PowerShell)Chocolatey 웹 사이트(Chocolatey website) 로 이동 하여 설치를 다운로드하도록 지시합니다. .ps1 스크립트를 만들고 실행합니다. 그것은 실제로 Chocolatey 를 설치하는 부분입니다 .

많은 텍스트가 날아가는(text fly) 것을 볼 수 있습니다. 그냥(Feel) 돌아가서 방금 무슨 일이 일어났는지 알 수 있도록 읽으십시오. choco /? 명령을 실행할 것을 제안합니다 . 기능 목록을 보려면 설치가 제대로 되었는지 확인하는 좋은 방법입니다. 계속해서 해당 명령을 실행하십시오.

또 다른 텍스트 더미가 지나가며 읽고 이해하기에도 좋습니다. 마지막에 Chocolatey 설치가 작동하면 다음과 같은 내용이 표시됩니다. 초록색 부분에는 방금 설치한 버전이 나열되어 있습니다.

Chocolatey로 소프트웨어 설치하기

소프트웨어 를 업데이트하기 전에 Chocolatey 로 소프트웨어를 설치하는 방법을 간단히 살펴보겠습니다 .

https://chocolatey.org/packages 페이지로 이동하여 Chocolatey 를 통해 사용할 수 있는 소프트웨어를 검색합니다 . 패키지라고 하는 것을 볼 수 있습니다.

설치하려는 패키지를 찾습니다. 이 예에서는 Malwarebytes Anti-Malware를(Malwarebytes Anti-Malware) 사용 합니다. 컴퓨터에 Malwarebytes가 있는 것이 항상 좋습니다.

PowerShell 의 상승된 인스턴스에서 choco install Malwarebytes 명령을 사용합니다 . 그게 다야 설치가 시작됩니다. 다음 텍스트와 함께 중지됩니다.

Chocolatey 가 소프트웨어를 관리 하도록 허용하는 것이 편 하다면 이 설치가 완료되면 choco 기능 enable -n allowGlobalConfirmation(choco feature enable -n allowGlobalConfirmation) 명령을 사용하여 향후 설치 및 업데이트를 자동화할 수 있습니다. 지금은 A 를 사용 하여 설치를 완료하겠습니다.

Malwarebytes 가 다운로드되고 설치를 시작하는 것을 볼 수 있습니다.

약 1분 안에 Malwarebytes 가 다운로드되어 추가 작업 없이 설치됩니다.

Chocolatey로 소프트웨어 업데이트

소프트웨어가 설치되었으므로 이제 Chocolatey 로 업데이트를 시도할 수 있습니다 . 다시 말하지만 (Again)PowerShell관리자(Administrator) 로 열어야 합니다 . 그런 다음 choco upgrade Malwarebytes(choco upgrade malwarebytes) 명령을 실행할 수 있습니다 .

그러면 Chocolatey 가 나가서 업데이트가 있는지 확인한 다음 업데이트합니다. Malwarebytes를 방금 설치했으므로 하나의 패키지가 업데이트되었음을 ​​표시합니다. 괜찮습니다.

Chocolatey 로 여러 패키지를 설치했다면 choco upgrade all -y 한 줄 명령으로 모두 업데이트할 수 있습니다 .

그만큼 어렵습니다. 이제 Chocolatey(Chocolatey) 로 소프트웨어를 자동으로 업데이트하기 위해 해야 할 일은 일정에 따라 해당 명령을 실행하는 것입니다.

Chocolatey 로 소프트웨어 자동 업데이트(Update Software)

다음 단계는 wither Notepad 또는 PowerShell ISE( 통합 스크립팅 환경(Integrated Scripting Environment) )를 사용하여 수행할 수 있습니다. 모든 Windows 버전에 PowerShell ISE 가 있는 것은 아니므로 (PowerShell ISE)메모장(Notepad) 을 사용하여 이 예제를 수행합니다 .

메모장을 엽니다. choco upgrade all -y 명령 을 메모장에 복사합니다 .

upgrade-ChocoPackages.ps1 과 같은 이름을 지정하여 PowerShell 스크립트(PowerShell script) 로 저장합니다 . .ps1 확장자는 Windows에 이것이  PowerShell 스크립트(PowerShell script) 임을 알려줍니다 .

파일 형식을 Text Documents (*.txt) 에서 All Files (*.*).그렇지 않으면 Windows 에서 ChocoPackages.ps1.txt를 업그레이드(upgrade-ChocoPackages.ps1.txt) 하고 메모장 파일(Notepad file) 이라고 생각 합니다 .

Windows에는 작업 스케줄러(Task Scheduler) 라는 훌륭한 기능이 있습니다. 일반 가정 사용자(home user) 는 아마 그것에 대해 알지 못할 것입니다. 그러나 작업 스케줄러(Task Scheduler) 는 이미 많은 일을 정기적으로 실행하게 하는 기능입니다.

시작 메뉴(Start Menu search) 에서 작업 스케줄러(Task Scheduler) 를 검색 합니다 . 결과로 나타나면 클릭하십시오(Click) .

작업 스케줄러(Task Scheduler) 가 열리면 창의 왼쪽 상단 영역에 있는 작업 스케줄러 라이브러리(Task Scheduler Library) 를 클릭합니다 . 그러면 현재 컴퓨터에 설정된 모든 예약된 작업이 표시됩니다.

오른쪽 상단 영역 의 작업 창에서 작업 (Actions)만들기(Create Task…) 를 클릭합니다 . 나중에 인수 문을 사용할 것이기 때문에 Create Basic Task(Create Basic Task isn) 는 이 상황에 적합하지 않습니다.

열리는 창의 일반(General) 탭에서 작업에 Choco Upgrade All 과 같은 이름을 지정한 다음 Chocolatey가 설치한 모든 소프트웨어 업데이트( Updates all software installed by Chocolatey) 와 같은 설명(Description ) 을 지정 합니다. 현재 사용자 계정(user account) 이 컴퓨터 의 관리자 계정(administrator account) 이 아닌 경우 사용자 또는 그룹 변경(Change User or Group) 버튼을 사용하여 관리자 계정(Administrator account) 을 선택하십시오 .

또한 관리자 계정(Administrator account) 의 비밀번호 도 알아야 합니다. 사용자가 로그온했는지 여부에 관계없이 실행 이 선택되어 (Run whether the user is logged on or not)있는지(Make) 확인 합니다 . 이렇게 하면 컴퓨터에 있지 않아도 스크립트를 실행할 수 있으며 작업을 수행하는 데 필요한 모든 권한을 갖게 됩니다.

트리거(Triggers) 탭 은 작업을 실행할 때 알려주는 곳입니다. 이를 위해서는 일주일에 한 번이면 충분합니다. 이 예에서는 매주 일요일(Sunday) 오전 1시에 실행되도록 설정되어 있습니다. 최상의 성능을 위해 컴퓨터를 사용하지 않을 시간을 선택하십시오.

다음보다 오래 실행되는 경우 작업 중지(Stop the task if it runs longer than:) 도 선택 하고 기간을 2시간으로 변경하는 것이 좋습니다 . 원하는 대로 조정할 수 있습니다. 트리거가 적용되도록 하려면 하단 의 Enabled 확인란을 선택해야 합니다.(Enabled)

작업(Actions) 탭 으로 이동하여 작업 에 수행하려는 작업을 알려줍니다. 작업(Action) 은 기본적으로 프로그램 시작(Start a program) 으로 설정됩니다 . 그것이 우리가 원하는 것이므로 그냥 두십시오. Program/script 필드에 powershell.exe를 입력합니다 . 이렇게 하면 Windows에서 PowerShell 스크립트(PowerShell script) 를 실행할 것임을 알 수 있습니다 .

인수 추가(Add arguments) 필드에 다음 인수를 입력하십시오 .

-noprofile - PowerShell 프로필(PowerShell profile) 스크립트가 실행되는 것을 방지 하고 원하는 스크립트만 실행하도록 지시합니다.

-ExecutionPolicy Bypass - 스크립트 실행이 활성화되었는지 확실하지 않은 경우 인수에 이것을 포함하는 것이 좋습니다. 스크립트가 실행되도록 합니다.

-file - 이것은 작업 스케줄러에게 다음에 나오는 것이 (-file )PowerShell 이 ​​실행 되기를 원하는 파일의 경로임을 알려주는 인수입니다 . 이 예에서 스크립트는 C:\Scripts\upgrade-ChocoPackages.ps1 에 저장되었습니다 . 컴퓨터에 따라 다를 수 있으므로 적절하게 조정하십시오. 파일 경로에 공백이 있는 이름이 있는 경우 전체 경로를 따옴표 안에 넣어야 합니다.

전체 인수는 다음과 같습니다 -noprofile -executionpolicy bypass -file C:\Scripts\upgrade-ChocoPackages.ps1

조건(Conditions ) 탭 에는 스크립트 실행 방법에 대해 설정할 수 있는 더 많은 옵션이 있습니다. 어떤 것을 적용하고 싶은지 살펴보십시오. 이 예에서는 컴퓨터가 AC 전원에 있는 경우에만 작업 시작(Start the task only if the computer is on AC power) 으로 설정되고 배터리가 소모 되지 않도록 컴퓨터가 배터리 전원으로 전환되는 경우 중지 로 설정됩니다.(Stop if the computer switches to battery power )

(Wake the computer to run this task)컴퓨터가 절전 모드인지 여부에 관계없이 작업이 실행되도록 하려면 이 작업을 실행하기 위해 컴퓨터 깨우기 가 선택됩니다.

설정(Settings ) 탭에서 작업이 완료되면 수동으로 테스트할 수 있도록 요청 시 작업 실행 허용 상자를 선택하는 것이 좋습니다 . (Allow task to be run on demand)나머지에 대한 기본 선택은 괜찮습니다.

확인(OK) 을 클릭 하여 예약된 작업 생성을 완료합니다. 일반 탭에서 선택한 사용자의 이름이 포함된 창이 팝업되어야 합니다. 사용자의 암호를 입력하고 확인 (OK)을 클릭(user and click) 해야 합니다 . 이것은 실제로 작업을 실행할 권한이 있음을 Windows에 알려줍니다.

이제 기본 작업 스케줄러 창(Task Scheduler window) 으로 돌아갑니다 . 새 작업을 찾으십시오. 작업 을 마우스 오른쪽 버튼으로 클릭하고 실행 을 (Run )선택(task and select) 하여 테스트합니다.

작업 상태가 Running(Running) 으로 변경되는 것을 제외하고는 아무 의미 있는 일이 발생하지 않습니다. 1분 정도 후에 마지막 실행 시간(Last Run Time ) 도 작업 실행을 시작할 때 타임스탬프로 변경되는 것을 볼 수 있습니다.

오류 메시지가 표시되지 않으면 작업이 정상일 것입니다. 작업 스케줄러 창(Task Scheduler window) 을 닫고 Chocolatey 로 설치한 소프트웨어를 수동으로 다시 업데이트해야 하는 것에 대해 걱정하지 마십시오 .

모두 완료되었습니다!

이것을 설정하는 것은 많은 작업처럼 보일 수 있습니다. 이것을 고려하십시오: 이것을 설정하는 데 10분에서 30분 정도 소요되었습니다. 이것을 사용하여 10개의 프로그램을 업데이트하고 각 프로그램이 매월 업데이트 프로세스를 수행하는 데 약 6분이 걸린다면 30분에서 50분 사이를 절약한 것입니다.

절약된 시간에 이미 앞서고 있습니다. 1년 동안 6~10시간의 시간을 절약할 수 있습니다. 10분이나 15분이 아닌 1~2분 안에 프로그램을 설치 하기 위해 Chocolatey 를 사용하는 방법을 알면 절약되는 시간은 포함되지 않습니다 .



About the author

저는 소프트웨어 리뷰어이자 생산성 전문가입니다. Excel, Outlook 및 Photoshop과 같은 다양한 소프트웨어 응용 프로그램에 대한 소프트웨어 리뷰를 검토하고 작성합니다. 내 리뷰는 충분한 정보를 제공하며 애플리케이션 품질에 대한 객관적인 통찰력을 제공합니다. 2007년부터 소프트웨어 리뷰를 작성해 왔습니다.



Related posts