У світі Linux існують різні методи для завершення роботи програм, проте часто бракує простого інструменту, орієнтованого на використання в терміналі. Саме тут на сцену виходить Gkill – програма для керування процесами, створена на основі Google Go і призначена для роботи через командний рядок. Gkill пропонує зручний спосіб знаходити та завершувати роботу проблемних програм, не вдаючись до складних команд або незручних інтерфейсів.
Встановлення Google Go
Для початку використання Gkill необхідно встановити мову програмування Google Go. Відкрийте термінал і введіть відповідні команди для вашої операційної системи.
Зверніть увагу: хоча в Ubuntu, Debian та інших дистрибутивах Linux існують спеціальні пакети для встановлення Google Go, вони можуть не завжди правильно налаштовувати змінну середовища $GOPATH. Щоб виправити це, скористайтеся інструкціями з розділу “Інші Linux” цього посібника.
Ubuntu
sudo apt install golang
Debian
sudo apt-get install golang
Arch Linux
sudo pacman -S golang
Fedora
sudo dnf install golang
OpenSUSE
sudo zypper install go
Інші Linux
Google Go легко інсталюється практично на будь-який дистрибутив Linux. Спочатку завантажте останню версію, використовуючи утиліту wget.
wget https://dl.google.com/go/go1.10.2.linux-amd64.tar.gz
Після завантаження архіву розпакуйте його вміст до каталогу /usr/local/. Для цього скористайтеся командою tar з опцією -C.
sudo tar -C /usr/local -xvzf go1.10.2.linux-amd64.tar.gz
Оскільки Go найчастіше використовується розробниками, необхідно створити папку для ваших проектів. Зробіть це в домашньому каталозі користувача (/home/username/). Зверніть увагу, що кожен користувач, який планує використовувати Go для програмування, повинен налаштувати таку папку.
Створіть папку проекту за допомогою команди mkdir. Обов’язково додайте опцію -p, щоб зберегти налаштування дозволів у ~/.
mkdir -p ~/golang-projects/{bin,src,pkg}
Далі перейдіть до створеної папки, використовуючи команду cd.
cd ~/golang-projects/
Відкрийте файл ~/bash_profile у текстовому редакторі Nano та додайте наступний код в кінець файлу.
Спочатку вставте шлях для використання Go.
export PATH=$PATH:/usr/local/go/bin
Шлях встановлено. Далі додайте ці два рядки до ~/.bash_profile, щоб вказати розташування GOPATH і GOBIN.
export GOPATH="$HOME/golang-projects" export GOBIN="$GOPATH/bin"
Після введення всього коду збережіть файл, натиснувши Ctrl + O, а потім закрийте Nano, натиснувши Ctrl + X.
Встановлення Gkill
Оскільки Gkill базується на Google Go, він не доступний у вигляді готового пакета в основних репозиторіях програмного забезпечення для Linux (і навіть в AUR). Тому, щоб встановити Gkill, потрібно скористатися інструментом Go для отримання коду безпосередньо з Github.
go get github.com/heppu/gkill
Для запуску Gkill переконайтеся, що всі шляхи налаштовані правильно. Якщо ви цього ще не зробили, виконайте інструкції вище. Після успішного налаштування ви можете запустити Gkill у будь-який час, ввівши цю команду в терміналі:
gkill
Також можна запустити Gkill безпосередньо, перейшовши до потрібної папки. Спочатку введіть команду cd, щоб перейти до папки ~/golang-projects.
cd ~/golang-projects
Після цього скористайтеся ще однією командою cd, щоб перейти до підпапки bin.
cd bin
Тепер ви можете запустити Gkill, виконавши команду ./.
./gkill
Після запуску Gkill ви побачите мінімалістичний інструмент, що відображає список всіх активних програм на вашому комп’ютері Linux. Для завершення роботи програми скористайтеся клавішами зі стрілками для навігації вгору та вниз. Виберіть потрібну програму, натиснувши клавішу Enter.
Натискання клавіші Enter миттєво завершить роботу обраної програми.
Інший спосіб швидко знайти та зупинити програму – скористатися системою фільтрації Gkill. Почніть вводити назву програми, яку ви хочете знайти. Gkill миттєво відфільтрує результати та відобразить відповідні програми. Далі виберіть потрібну програму, використовуючи клавіші зі стрілками, і натисніть клавішу Enter для завершення її роботи.
Щоб закрити Gkill, незалежно від способу його запуску, скористайтеся комбінацією клавіш Ctrl + Z в терміналі. Після цього виконайте команду jobs, щоб відобразити процеси, які були призупинені сеансом терміналу.
Зверніть увагу на номер біля зупиненого завдання Gkill. Далі поверніться до терміналу та скористайтеся командою зупинки завдань, щоб завершити процес остаточно.
Примітка: обов’язково замініть X у команді на номер, що відповідає завданню (наприклад, 1).
jobs stop X
Видалення Gkill
Найшвидший спосіб видалити Gkill з системи – видалити папку golang-projects та створити її заново. Це набагато швидше, ніж сортування папок bin і pkg для видалення необхідних файлів. Розпочніть з видалення папки golang-projects.
Примітка: перед видаленням папки проектів перемістіть всі важливі файли, пов’язані з Google Go, до іншої папки для безпечного зберігання.
rm -rf ~/golang-projects mkdir -p ~/golang-projects/{bin,src,pkg}