II – КА. Управление пакетами в Debian.

II – КА. Управление пакетами в Debian.

Продолжаем нашу линейку статей КА (Компьютер Адимина), основанный на популярном дистрибутиве Debian 8. В данном посте разберем основные команды debian по управлению пакетами, а также самостоятельно соберем программу для удобного захвата изображения с экрана.

В целом, передо мной стоит не легкая задача, как же мне подать материал так, чтобы было понятно абсолютно любому пользователю, даже никогда не имевшему дела с линукс. Поэтому оставляйте комментарии, интересно ли вам администрирование на линуксе, все ли из моих статей понятно, о чем вы бы хотели узнать и т.д.

Пакет - это архив, как правило содержит исполняемые файлы, библиотеки, документацию наборы программ. В debian пакеты обычно имеют расширение .deb, система управления пакетами в debian называется dpkg, но это не единственный путь управления пакетами, также имеется такой менеджер пакетов как Synaptic, и т.д. да и вообще привыкайте к той мысли, что для решение какой либо задачи или проблемы в линукс существует множество путей. Одну и туже идею мы можем осуществить с помощью сотен различных способов.

Менеджер пакетов Synaptic

Заходим в меню - Debian - Приложения - Системные - Управление пакетами - Synaptic Package Manager

 В левой части окна менеджера мы видим каталог пакетов разбитый на категории, в правой части более подробная информация, к примеру, на скриншоте ниже видно уже установленные пакеты (отмечены зеленым квадратиком), показывается последняя версия пакета, а также версия которая установлена у нас.

 Прежде чем мы поэкспериментируем с командами управления пакетами, давайте поставим себе какую нибудь задачу, по улучшению функциональности нашего компьютера на debian.

Как сделать скриншот в Debian?

Ну вот, чем вам не задача! Да, я знаю, существует просто огромное количество способов сделать скриншот рабочего стола на debian. Но мы настроим свой, удобный нам вариант. В винде мы привыкли к разным удобным программкам по созданию снимков рабочего стола или же тупо пользовались кнопкой PrtSc на клавиатуре. В линуксе на данной клавише такой фичи не висит, да и в целом, если вы присмотритесь к ней, то увидите там надпись SysRq - это прямой доступ к ядру системы, возможно мы еще поговорим о его возможностях. В контексте данной статьи, могу сказать лишь то,  что команда SysRq появилась намного раньше.

Покопавшись на хабре, я нашел очень классный кейс для удобного создания скриншотов на линукс, вот только рецепт там для дистрибутива ArchLinux, в связи с чем ссылку я давать не буду, а лучше переточу данный рецепт под наш Debian.

Итак, давайте взглянем на общую картину, что же мы будем реализовывать:

Нажимаем на горячую клавишу, например можно прикрутить к тому же PrtSc, у нас появляется меню в котором мы выбираем, какое действие нужно произвести. Из нужных нам действий, это заскринить весь экран или определенную рабочую область, указать путь куда сохранять файл, ввод имени или случайная его генерация, так же загрузка скриншота куда нибудь в облако, сохранение url в буфер и т.д.

Все это мы будем конструировать самостоятельно и для этого нам понадобятся следующие пакеты:

  • scrot (скриншотер)
  • zenity (спрашивать вопросы у пользователя)
  • dmenu (показывать меню)
  • xclip (копировать ссылку в буфер обмена)
  • imagepaste (заливать картинку на image hosting)

Начнем мы с пакета scrot, открываем главное меню - системные - LXTerminal, не проще ли воспользоваться менеджером пакетов?, конечно проще, но хотя бы базовые знания командной строки вы обязаны усвоить.

Для начала, давайте попробуем поискать пакет, данная команда нужна для поиска пакетов по точному названию, делать это конечно не обязательно, мы можем сразу приступить к установке:

aptitude search "scrot"

Как видим такой пакет в репозитории имеется. Устанавливаем его с помощью команды:

sudo apt-get install scrot

По нажатию Enter у нас запрашивает пароль от нашего пользователя (не рут) вводим его и продолжаем выполнение команды. Если перед вами выскакивает ошибка:

YOU-LOGIN is not in the sudoers file.  This incident will be reported.

 Значит у нашего пользователя не достаточно прав! Откроем главное меню - Терминал суперпользователя, у нас запрашивает пароль (теперь требуется пароль рут), данный пароль мы задавали при установке системы, надеюсь вы его записали себе! Пробуем повторить установку пакета:

sudo apt-get install scrot

Отлично! Установка прошла успешно. Но давайте все же добавим нашего пользователя в группу Sudo, для этого вводим команду:

nano /ets/sudoers

Перед нами открывается редактирование файла, спускаемся при помощи стрелочки вниз до строчки # User privilege specification, после нее будет строка root ALL=(ALL:ALL) ALL, следом нам нужно добавить свою строчку user ALL=(ALL:ALL) ALL, где user - это ваш логин пользователя. Сохраняем наши изменения Ctrl+O, затем Enter (подтверждаем имя файла) и закрываем файл Ctrl+X.

Теперь давайте вернемся в обычный эмулятор терминала, открываем главное меню - системные - LXTerminal, хотелось бы проверить наши права.

Канал телеграм Planworld.ru

sudo apt-get install zenity

У нас запрашивают пароль пользователя (не рут), вводим, и видим информацию о пакете zenity, установлено будет 2 пакета, для продолжения нужно наше согласие, просто вводим "y" или "д", что означает да. Теперь у нас запрашивает диск Debian GNU/Linux 8.7.1., тот самый диск с которого мы ставили систему, вставляем в привод, нажимаем Enter и пакеты успешно устанавливаются.

Теперь нам нужно установить dmenu, данный пакет входит в состав suckless-tools, вводим команду:

sudo apt-get install dmenu

Кстати, сразу же после установки пакета scrot, вы можете делать скриншоты! Для этого просто в терминале выполните команду scrot, после чего сам файл скриншота можно будет найти в папке /home/ваш_логин. Если выполнить команду scrot -s, нам нужно будет выделить область скриншота.

Далее мы будем пользоваться наработками одного хорошего человека с хабры, от него я взял скрипт, который связывает все установленные нами пакеты. И для начала нам нужно создать папку:

mkdir ~/bin

Отлично! Тильда~ обозначает домашний каталог (/home/Ваш_логин), а bin - это название папки, которую мы создали, теперь заходим в неё, команда:

cd !$

Следом выполняем:

wget https://bitbucket.org/balta2ar/screenshot/raw/45ad932db13b/screenshot.sh

В папку Bin у нас скачался скрипт. Теперь настраиваем права на данный файл, команда:

 chmod u+x ./screenshot.sh

Для того чтобы лучше понять эту команду, дабы не расписывать как ей пользоваться и не запутать вас еще сильнее, порывшись среди линукс блогеров, я нашел четкую иллюстрацию шпаргалку.

Создаем логи, для это команда su, вводим пароль, и по очереди выполняем:

touch /var/log/screenshot.log

chown `Ваш_логин`:users !$

!$ обозначает как бы последний используемый путь, по команде выше, для того чтобы не набирать полную команду chown `jack`:users /var/log/screenshot.log

Сейчас мы повесим действия на горячие клавиши. Для этого залезаем в конфигурацию openbox, файл который нам нужен находится /home/ВАШ_ЛОГИН/.config/openbox/lxde-rc.xml

Нам нужно отредактировать его, к примеру можно воспользоваться тем же редактором Nano, Главное меню - Debian - Приложения - Редакторы - Nano

Спускаемся вниз до строчки <!-- -Keybindings for desktop switching ->, сразу после нее, по аналогии с тем, что там уже есть, нужно добавить пару новых строк.

<keybind key="F6">

<action name="Execute">

<command>/home/jack/bin/screenshot.sh cached</command>

</action>

</keybind>

<keybind key="F7">

<action name="Execute">

<command>/home/jack/bin/screenshot.sh</command>

</action>

</keybind>

Не забываем в пути указать свой логин, а не мой. И как вы видите я назначил клавиши F6 и F7, если нужны сочетания, то через тире их прописываем, например S+PrintSreen, нужно записать так S-Print. А сочетание F+G+6 (F-G-6). Думаю это понятно, если нет то вот вам википедиа по openbox 

После того как внесли правки, сохраняем Ctrl+O, закрываем Ctrl+X и нужно перезагрузить openbox:

openbox --restart

Теперь если нажать F7, то у нас появляется меню, правда на англ. языке, с целой кучей настроек, вам нужно все пошагово настроить, после чего последующие скриншоты можно делать моментально по клавише F6. Если нужно изменить шаблон настроек, то нажимаем опять F7. Меню можно перевести на русский язык, вот только для этого понадобится установить шрифт!

Устанавливаем шрифт Terminus, который предлагает использовать автор скрипта:

sudo apt-get install xfonts-terminus

Перезапускаем наш X-server, горячие клавиши Ctrl+Alt+F1, нас выкидывает в консоль, вводим логин, пароль и запускаем X-сервер командой:

startx

Отлично, думаю на этом, мы пока что притормозим. Что еще можно реализовать? Я думаю можно прикрутить загрузку скриншота в облако, как это сделал сам автор скрита! Также можно добавить какие-то инструменты для вставки надписей, стрелок, рамок. Чуть позже мы еще вернемся к этому, если конечно будут желающие, не хотелось бы расписывать никому не нужные рецепты. Тем более впереди еще столько интересных вещей нас ждет, специальные программы, настройка впн и т.д.

II – КА. Управление пакетами в Debian. обновлено: Май 8, 2017 автором: Jack

Отправить ответ

Уведомлять меня
avatar
wpDiscuz