• Интересные статьи

9-ть интегрированных сред разработки с поддержкой языка программирования C/C++

"Настоящий программист не использует интегрированную среду разработки, ведь ему вполне достаточно [вставьте сюда название любого текстового редактора] с некоторыми плагинами." Все мы когда-то слышали подобное утверждение. Хотя и сложно не согласиться с ним, следует признать, что интегрированная среда разработки все же может оказаться полезной в ряде случаев. Во-первых, ее проще настроить и использовать сразу же после установки. Кроме того, в ней проще начинать разработку проекта с нуля. Поэтому в данной статье я постараюсь привести список наиболее удобных интегрированных сред разработки с поддержкой языков программирования C/C++ для Linux. Почему я акцентирую внимание именно на языках C/C++? Скорее всего, потому, что C является моим любимым языком программирования, кроме того, нужно с чего-то начинать. Вам также следует учесть тот факт, что существует большое количество подходов к разработке кода на языке C, поэтому с целью сокращения списка в него были включены лишь "реальные интегрированные среды разработки", а не текстовые редакторы, такие, как GEdit или Vim с плагинами. Данные текстовые редакторы не являются плохой альтернативой интегрированных сред разработки по каким-либо причинам, тем не менее, в случае их рассмотрения список оказался бы слишком длинным.

1. Code::Blocks

Code::Blocks

Начнем с моего любимого программного продукта, а именно, Code::Blocks - простой и быстрой интегрированной среды разработки с поддержкой языков программирования C/C++. Как и в любой достойной интегрированной среде разработки, в ней реализованы подсветка синтаксиса, вкладки, механизмы автодополнения кода и управления проектами, а также интегрирован отладчик. Ее главным преимуществом является простая система плагинов, которая позволяет добавить поддержку таких незаменимых инструментов, как Valgrind и CppCheck, а также реализовать такие менее нужные функции, как мини-игра Тетрис. Мне же она нравится из-за главным образом из-за своего набора очевидных и удобных горячих клавиш, а также большого количества параметров конфигурации, которые могут пригодиться в тех или иных ситуациях.

2. Eclipse

Eclipse

Я помню о том, что собирался описывать лишь "реальные интегрированные среды разработки", а не текстовые редакторы с плагинами, при этом Eclipse как раз является "реальной интегрированной средой разработки". Но для программирования на языке C в Eclipse все же нужно установить небольшой плагин. Таким образом, я не противоречу сам себе. Кроме того, было бы невозможно создать список интегрированных сред разработки без упоминания такого монстра, как Eclipse. Нравится вам это или нет, Eclipse остается отличным инструментом для разработки программных продуктов на языке Java. А благодаря проекту CDT, данная интегрированная среда разработки может с успехом использоваться и для разработки программных продуктов на языках C/C++. Вы сможете пользоваться всеми возможностями Eclipse, включая такие традиционные возможности, как автодополнение кода, визуализация структуры кода, генерация кода и мощный рефакторинг. На мой взгляд, единственным недостатком данной интегрированной среды разработки по сравнению с Code::Blocks является тяжеловесность. Она является крайне тяжеловесной, поэтому для ее полной загрузки требуется некоторое время. Но если ваша машина может достаточно быстро работать с ней или же вы являетесь фанатом Eclipse, эта интегрированная среда разработки будет отличным выбором.

3. Geany

Geany

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

4. MonoDevelop

MonoDevelop

Еще одним монстром является MonoDevelop - интегрированная среда разработки с уникальными пользовательскими качествами, обусловленными ее внешним видом и интерфейсом. Лично мне нравятся ее встроенные инструменты для управления проектами и работы с системой контроля версий. Ее система плагинов также впечатляет. Но, по какой-то причине, все ее параметры конфигурации, а также поддержка множества языков программирования смущают меня. Данная интегрированная среда разработки остается отличным инструментом, который я использовал много раз в прошлом, но все же не может претендовать на первое место в том случае, если речь идет о работе с "простым" языком программирования C.

5. Anjuta

Anjuta

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

6. Komodo Edit

Komodo Edit

Я не очень хорошо знаком с интегрированной средой разработки Komodo Edit, но после работы с ней в течение нескольких дней, у меня остались лишь положительные впечатления. Во-первых, ее интерфейс навигации на основе вкладок является достаточно практичным в любых ситуациях. Удобная область визуализации структуры кода очень напоминает аналогичную область интегрированной среды разработки Sublime Text. Более того, система макросов и инструмент сравнения файлов делают интегрированную среду разработки Komodo Edit очень практичной. А библиотека плагинов делает ее практически идеальной. Я использовал слово "практически", так как используемые в ней горячие клавиши показались мне не такими удобными, как в других интегрированных средах разработки. Кроме того, я хотел бы увидеть более специализированные инструменты для работы с кодом C/C++, но этот недостаток свойственен практически всем популярным интегрированным средам разработки. В любом случае, это очень удобный программный продукт.

7. NetBeans

NetBeans

Как и в случае Eclipse, достаточно сложно игнорировать данный монструозный программный продукт. Благодаря наличию вкладок для навигации по файлам проекта, области визуализации структуры кода, механизма отслеживания истории изменений и множества дополнительных полезных инструментов, NetBeans может считаться самой функциональной интегрированной средой разработки из существующих. Но это достоинство может расцениваться и как ее недостаток, причем значительный. Несмотря на наличие множества полезных функций, я предпочитаю использовать программное обеспечение, поддерживающее плагины, так как сомневаюсь, что кому-либо может потребоваться поддержка систем контроля версий Git и Mercurial при разработке одного и того же проекта. Можете считать меня сумасшедшим. Но если вам хватит терпения для того, чтобы разобраться со всеми ее параметрами, вы, скорее всего, разберетесь с любой из интегрированных сред разработки для любой из платформ.

8. KDevelop

KDevelop

Интегрированная среда разработки KDevelop может быть отличным решением для всех фанатов окружения рабочего стола KDE. Она поддерживает огромное количество параметров конфигурации, которыми вы можете воспользоваться при необходимости. Можете считать мое мнение субъективным, но мне никогда не нравился ее интерфейс. Кроме того, я не смог использовать ее для выполнения реальной работы из-за того, что в редакторе кода используется чрезмерное количество различных параметров навигации и изменяемых горячих клавиш. Отладчик также поддерживает чрезмерное количество параметров, поэтому для продуктивной работы с ним требуется продолжительная практика. Однако, в вашем случае все затраты времени наверняка компенсируются гибкостью и мощностью данной интегрированной среды разработки. Кроме того, просто нельзя обойти вниманием отличную документацию, поставляемую в комплекте.

9. CodeLite

CodeLite

Наконец, последняя в списке, но не по значению интегрированная среда разработки CodeLite наглядно демонстрирует то, что вы можете использовать традиционную формулу и получить не ее основе что-либо самобытное. Ее интерфейс напомнил мне интерфейс интегрированных сред разработки Code::Blocks и Anjuta, при этом я был просто поражен ее богатой библиотекой плагинов. Если вам понадобится найти различия в файлах, добавить в файл исходного кода информацию об авторском праве, определить аббревиатуру или разместить свою работу в репозитории Git, для вас найдется подходящий плагин. Если говорить о мелочах, следует отметить, что в данной интегрированной среде разработки отсутствуют некоторые, по моему мнению, полезные горячие клавиши для навигации по коду, при этом я не могу найти каких-либо дополнительных недоработок.

Я надеюсь, что благодаря данному списку вы узнаете о новых интегрированных средах разработки с поддержкой вашего любимого языка программирования. Хотя Code::Blocks и остается моей любимой интегрированной средой разработки, даже при работе с ней иногда возникают значительные трудности. Также следует отметить, что мы рассмотрели далеко не все инструменты, облегчающие процесс разработки программных компонентов на языках C/C++ в Linux. Вы можете сообщить о своем любимом инструменте в разделе комментариев. Если же вы хотите, чтобы я описал интегрированные среды разработки с поддержкой других языков программирования в следующих статьях, вы также можете написать об этом в разделе комментариев.

Print Email

Как создавать папки приложений в GNOME Shell

По-умолчанию Обзор GNOME (Shell) отображает приложения двумя вариантами: «все», где все приложения перечислены в алфавитном порядке, и «часто используемые», где приложения отсортированы по частоте использования.

GNOME Shell поддерживает группировку приложений в папки, и есть две предопределённые папки, "Utilities" и "Sundry". Возможно, кто-то не знает, как создать собственные приложения папок. Давайте рассмотрим два способа достижения этого.

Создаем и редактируем папки приложений GNOME Shell с помощью GNOME AppFolders Manager

gnome appsfolder manager

GNOME AppFolders Manager – это инструмент для создания и редактирования папок приложений в GNOME Shell.

Приложение довольно просто в использовании – в левой секции вы можете добавить, удалять и редактировать папки приложения, а в правой вы можете добавлять или удалять приложения из папок.

Когда вы добавите желаемые приложения в папку, кликните кнопку сохранения. На этом всё! Вот одна из папок приложений GNOME, которую я создал с помощью утилиты GNOME AppFolders Manager:

gnome appsfolder manager appfolder

Чтобы установить GNOME AppFolders Manager в Ubuntu GNOME 16.04, 15.10 или 15.04 (приложение требует версии GNOME 3.12+, в то время как Ubuntu 14.04 использует GNOME 3.10), вы можете использовать основной PPA-репозиторий WebUpd8. Чтобы добавить его в вашу систему и установить приложение, используйте следующие команды:

sudo add-apt-repository ppa:nilarimogard/webupd8
sudo apt update
sudo apt install gnome-appfolders-manager

Пользователи Arch Linux могут установить GNOME AppFolders Manager через AUR.

Для других дистрибутивов Linux смотрите страницу установки приложения.

Добавляем приложения в папки, используя GNOME Software

Учтите, что у меня инструкции ниже не заработали в Ubuntu 16.04 с GNOME 3.18 и GNOME Software 3.20 (ошибок не отображалось, но папка просто не создавалась). Это также не работало в Fedora 24 с GNOME 3.20, но работало в Fedora 22 с GNOME 3.16.

Также стоит отметить, что GNOME Software не доступен в официальных репозиториях для версий Ubuntu старше, чем 16.04. Поэтому для версий Ubuntu (и GNOME), где эта возможность не поддерживается, используйте приложение GNOME AppFolders Manager.

Если вы используете GNOME Software, вы можете легко добавить приложения в папки и создавать новые папки. Чтобы сделать это, запустите GNOME Software, переключитесь на вкладку установленных приложений и кликните кнопку выбора (вверху справа).

appfolders gnome software

Затем выберите приложения, которые вы хотите добавить в папку, и кликните соответствующую кнопку:

appfolders gnome software

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

appfolders gnome software

Точно также вы можете также удалять или перемещать приложения между папками.

Вот результат:

appfolders gnome software

Print Email

Оболочку рабочего стола Ubuntu Unity запустили в среде Windows 10

Сделать это несложно, просмотрите короткую инструкцию и попробуйте сделать то же самое

Компания Canonical, отвечающая за разработку Ubuntu и корпорация Microsoft в начале этого года объявили о включении bash и основного инструментария Ubuntu в Windows 10. Знакомство с новыми возможностями Windows 10 с элементами Ubuntu можно было начать еще в апреле, начиная с обновления 14316. В этом обновлении к Windows 10 добавили WSL-прослойку, которая транслирует системные вызовы Linux в системные вызовы Windows. В результате в среде Windows стало возможным развернуть полноценный инструментарий Ubuntu Linux без эмуляции и виртуализации. Окончательная интеграция будет выполнена с выходом Anniversary Update в августе.

В апреле этого года специалисты научились запускать и десктопные приложения Ubuntu с графическим интерфейсом в среде Windows 10. Пользователь Reddit с ником w2qw нашел способ установить VIM и Firefox. Сейчас пользователь Github с ником Guerra24 смог запустить в среде Windows оболочку рабочего стола Ubunu Unity.

Для успешного запуска требуется выполнить несколько шагов. Дело в том, что X-серверы вроде vcxsrv или Xming в среде Windows 10 работают без особых проблем. Но большинству приложений для работы необходим сервис dbus, который по умолчанию не работает. Из-за этого десктопные приложения вроде Firefox или virt-manager, запущенные в подсистеме Linux, «падают» уже при запуске или через короткое время после запуска. Напрямую не работает и Unity — оболочке тоже требуется dbus.

Юзеру ShaRose с Reddit удалось «завести» dbus. Изначально ему (или ей) захотелось попробовать установить virt-manager, чтобы получить возможность администрировать qemu-сервера в среде Windows без необходимости работы с виртуальной машины. И сервер dbus, который требуется для работы virt-manager, удалось «завести».

Для установки нужна «чистая» Windows 10 с интегрированным инструментарием Ubuntu. Если все это уже имеется, необходимо выполнить всего три шага:

1. Устанавливаем X-сервер. И vcxsrv, и Xming работают нормально.

2. Добавляем DISPLAY=:0.0 к bashrc: Это можно сделать следующим образом:

echo «export DISPLAY=:0.0» >> ~/.bashrc

После проверки оказывается, что десктопные программы, требующие «иксы» для работы, функционируют нормально.

3. Теперь чиним dbus. Проблема с dbus в том, что для работы здесь требуются unix-сокеты, которые bash для Windows пока не поддерживает. Поэтому все, что нужно — «объяснить» dbus, как работать с tcp.

Сделать этого довольно просто. В /etc/dbus-1/session.conf заменяем unix:tmpdir=/tmp строкой tcp:host=localhost,port=0. Вот и все.

Для этого выполняем такую команду:

sudo sed -i 's/.*/tcp:host=localhost,port=0/' /etc/dbus-1/session.conf

Firefox и virt-manager работают отлично. Chrome, к сожалению нет. Но самое главное — теперь можно приступить к установке Unity в WSL.

Сразу Unity работать не будет, необходимо установить ccsm (CompizConfig Settings Manager), а затем запустить VcXsrv, используя XLaunch (сейчас это единственный X сервер, работающий с Unity). После запуска в появившемся окне заменяем номер дисплея на 0. Все остальные установки оставляем по умолчанию.

Теперь запускаем ccsm, где активируем плагин Unity. При выводе меню пользователь увидит несколько опций, нужно выбрать Copy to Texture plugin. После этого в нижней части настроек Window Management активируем все плагины кроме одного — Grid. Этот плагин должен быть неактивен.

Теперь выходим из ccsm, а в bash запускаем compiz. Будут показаны несколько сообщений об ошибках, но Unity должна загрузиться нормально.


Это еще Windows или уже Ubuntu?

В этой среде можно будет запускать только программы, иконки которых есть на панели. Запустить командную строку в Unity нельзя, поэтому снова открываем bash в Windows, повторяем операцию с дисплеем и запускаем gnome-terminal. Теперь появляется иконка командной строки, и ее можно использовать.



Кроме Unity можно запустить и xfce4. В этом случае требуется выполнить только первый этап по «ремонту» dbus, второй этап относится только к Unity, здесь он не нужен. После того, как в среде Windows начинает нормально работать dbus, можно запустить xfce4, хотя работает оболочка не слишком стабильно.

Print Email

Linux для планшета

imageВ этой статье я покажу вам на своём опыте, что GNU/Linux и графические оболочки для него уже дозрели до уровня планшетов и вовсе не нужно бояться покупать трансформер\планшет только из-за того, что вы приверженный линуксоид. Здесь описывается сравнение и выбор оптимальной среды рабочего стола (далее DE) для планшета или трансформера, её установка и доработка для сенсорного управления.

Небольшая предыстория

Являясь обладателем небольшого (по современным меркам) телефона, 7" планшета и ноутбука, пришла мысль о замене устройств. После некоторого раздумия пришёл к выводам:

  • хочется большой (5.5-6") телефон, чтобы можно было удобно смотреть фильмы и серфить в интернете;
  • тогда в маленьком планшете нет смысла, т. к. телефон его полностью заменит, и при этом будет помещаться в карман;
  • для 10" планшета уже нужна сумка, так почему бы тогда не взять что-нибудь побольше?
  • хотелось бы соединить большой планшет и ноутбук в одно устройство.

Вывод был один: трансформер – идеальный вариант.

Далее предстоял выбор трансформера: хотелось бы не просто планшет с подключаемой по Bluetooth клавиатурой, а полноценный мощный ноутбук с отсоединяемым экраном и дополнительными портами в док-станции. Мой долгий выбор пал на одну из моделей HP. О нём я рассказывать не буду, т. к. статья не про это (да и вообще получится реклама). Скажу лишь, что мне очень понравилась концепция модульности: у вас в руках мощный и лёгкий (900г) планшет, который при подключении в док-станцию приобретает настоящую клавиатуру, дополнительный жёсткий диск и становится ноутбуком, который может проработать 12 часов от 2х батарей. Паралельно со мной моей девушке понадобился ноутбук по учёбе, она хотела маленький и лёгкий, с flip форм-фактором (петли могут поворачиваться на 360°, откидывая клавиатуру за крышку и превращая ноутбук в планшет). Её выбор остановился на модели производства Dell.

Итак, у меня оказались на руках 2 устройства одного назначения, но абсолютно разного исполнения. На HP изначально была Windows 8, на Dell — 8.1. Обе системы были удалены после проверки работоспособности в магазине.

Выбор дистрибутива и DE

Всё должно быть предназначено для управления тачем, интерфейс должен быть единым и для ноутбука, и для планшета — такие концепции я поставил перед собой. Начитавшись в интернете про поддержку тачскрина разными DE, решил поставить Ubuntu из-за жестов. Жесты оказались действительно удобными, скролл пальцем есть, также для тача очень удобна широкая панель Unity (удобно листать и открывать приложения). На этом удобства закончились. Мелкие кнопки закрытия и сворачивания окна (развернуть можно жестом), невозможность пролистывания главного меню, неудобное скрытие панели (в портретной ориентации она занимает много места, а раскрыть её можно только жестом четыремя пальцами). Это меня не устраивало, к тому же я недолюбливаю Ubuntu. Поскольку Ubuntu c Unity я отбросил, а остальные известные DE с хоть какой-то поддержкой жестов можно поставить почти любой дистрибутив, был выбран ArchLinux из-за прошлого опыта (он стоит на всех моих устройствах).

Были установлены KDE4, XFCE и Gnome 3.

Тачскрин работал во всех DE из коробки, т. к. им управляет X-сервер (драйвер xf86-input-evdev устанавливается вместе с Xorg как зависимость в ArchLinux)

KDE:
плюсы:

  • удобный плазмоид клавиатуры (при нажатии выдвигается снизу, не перекрывая экран)
  • огромная возможность настройки и расширения, вплоть до увеличения кнопок в заколовке окна и их перемещения (для тачскрина очень полезно)

минусы:

  • нет никакой поддержки тача, скролл пальцем не работает, хорошо хоть приложения перетаскиваются пальцем, пользоваться невозможно

XFCE:
плюсы:

  • минималистичность, для небольших мощностей планшетов – только полезно

минусы:

  • прокрутка пальцем не работает;
  • отсутствие жестов.

Впрочем, XFCE ругать не за что, так как разработчики позиционируют её как в первую очередь как легковесная система для нетбуков, с чем XFCE справляется отлично.

Gnome 3:
плюсы:

  • хоть какая-то экранная клавиатура, которая вылезает только при касании поля ввода (если кликнуть туда мышью клавиатура не раскроется);
  • мультитач-жесты, хоть и не такие удобные, как в Unity;
  • принцип управление окнами и панели как будто для планшетов и создавались;
  • меню приложений в виде крупных иконок, которые можно листать пальцем;
  • удобный менеджер сеансов (gdm) с поддержкой тача;
  • хорошая расширяемость плагинами;
  • все стандартные приложения поддерживают мультитач (например, масштабирование сведением двух пальцев в просмотре изображений).

Минусы:

  • абсолютно убогая стандартная клавиатура без поддержки русского языка и без нормальной раскладки;
  • другая концепция упорядочения окон (например отсутствие сворачивания при стандартных настройках) требует очень долгого привыкания.

Итак, возьмём за основу Archlinux с Gnome 3 и доработаем его.

Установка

Установку описывать не буду, всё есть по ссылке. Если хотите ускорить установку, сделайте так:

pacstrap /mnt grep sed filesystem shadow pacman screen nano mkinitcpio # ставим основню систему и всё нужное
genfstab -pU /mnt >> /mnt/etc/fstab # генерируем fstab
arch-chroot /mnt # переключаемся на нашу новую систему
screen -dm pacman -S —noconfirm base # запускаем установку остальной системы в фоне. Сюда можете добавить пакеты, которые вам нужны в новой системе

Далее делаете всё, что указано в статье на Wiki после пункта «Change root into the new system».

После основной настройки системы установим Gnome 3:

pacman -Sy gnome
systemctl enable gdm
systemctl start gdm

Настройка

Начнём, собственно, адаптацию под планшет:

  1. Включим правый клик по долгому нажатию (с мышью тоже будет работать):
    gsettings set org.gnome.desktop.a11y.mouse secondary-click-enabled "true"
    gsettings set org.gnome.desktop.a11y.mouse secondary-click-time "0.6"
    Вместо 0.6 можете подставить комфортное для вас время, после которого будет сделан клик правой мышью. Минус в том, что палец нужно держать идеально ровно все эти 0.6 секунд, поэтому этот фокус получается только с 2-3 раза. Нужна альтернатива.
  2. У большинства планшетов есть кнопка Windows (как правило под экраном). Было бы логично при нажатии на неё открывать «обзор», но он и так удобно открывается жестами, поэтому мы повесим на эту кнопку правый клик:
    Устанавливаем xdotool и xbindkeys:
    pacman -S xdotool xbindkeys
    Чтобы узнать, как определяется у вас подэкранная кнопка, выполните:
    touch ~/.xbindkeysrc
    xbindkeys -k
    Запишем конфигурацию xbindkeys и добавим его в автозагрузку (вместо Super_r подставьте свой идентификатор кнопки, полученный из предыдущей команды):
    echo "\"env DISPLAY=:0 xdotool click 3\" Super_R" > ~/.xbindkeysrc
    echo "[Desktop Entry]
    Name=Xbindkeys
    Exec=xbindkeys
    Type=Application
    Terminal=false" > /etc/xdg/autostart/xbindkeys.desktop
  3. Сделаем ползунки яркости и громкости пошире. Для этого скачаем патч и применим его:
    curl http://pastebin.com/raw.php?i=F2WJiEUC > /tmp/theme.patch
    patch /usr/share/gnome-shell/theme/gnome-shell.css < /tmp/theme.patch
    Получится примерно так:

    image
  4. Если вы уведёте планшет в сон, после пробуждения вы заметите, что тач то собственно не работает. Gnome зачем-то отключает его как устройство ввода в X-сервере. Простое «xinput enable «ELAN Touchscreen»» исправит ситуацию после сна. Давайте сделаем демон systemd, который будет выполнять эту команду сразу после сна:
    echo "[Unit]
    Description=Fix touchscreen after resume
    After=suspend.target
    [Service]
    Type=simple
    ExecStart=env DISPLAY=:0 xinput enable 'ELAN Touchscreen'
    [Install]
    WantedBy=suspend.target" > /usr/lib/systemd/system/touchscreen-fix.service
    systemctl enable touchscreen-fix
  5. Автоповорот… Не думал, что всё будет так легко. Драйвер для акселеометра на обоих ноутбуках не потребовался, lsusb опознавал его как «0483:91d1 STMicroelectronics». Был быстро написан скрипт на python для автоповотора. Нужно поставить python2 и прописать скрипт в автозагрузку:
    pacman -S python2 xorg-xrandr
    curl http://pastebin.com/raw.php?i=nnecb7iA > /usr/bin/autorotate
    chmod +x /usr/bin/autorotate
    echo "[Desktop Entry]
    Name=Autorotate
    Exec=python2 /usr/bin/autorotate
    Type=Application
    Terminal=false" > /etc/xdg/autostart/autorotate.desktop
  6. Отключим автопоказ стандартной экранной клавиатуры:
    sed -i 's/^Exec/#Exec/g' /usr/share/dbus-1/services/org.gnome.Caribou.Daemon.service /usr/share/dbus-1/services/org.gnome.Caribou.Antler.service
  7. Установим и настроим Onboard (отличная экранная клавиатура для планшета):
    pacman -S onboard
    gsettings set org.onboard.auto-show enabled "true" # автопоказ клавиатуры при касании в поле ввода
    gsettings set org.onboard.keyboard touch-feedback-enabled "true" # увеличение кнопок при нажатии
    gsettings set org.onboard.window docking-enabled "true" # прикрепить клавиатуру к низу экрана
    gsettings set org.onboard.window enable-inactive-transparency "true" # увеличение прозрачности при простое
    gsettings set org.onboard.window force-to-top "true" # всегда на переднем плане
    gsettings set org.onboard.window inactive-transparency "60.0" # прозрачность при простое
    gsettings set org.onboard.window transparency "20.0" # общая прозрачность
    gsettings set org.onboard.window transparent-background "true" # прозрачный фон
    gsettings set org.onboard.window window-decoration "false" # отключить заголовок окна (где кнопки закрыть, свернуть, etc.)
    gsettings set org.onboard layout "/usr/share/onboard/layouts/Compact.onboard" # раскладка
    gsettings set org.onboard show-status-icon "true" # показывать иконку панели уведомлений
    gsettings set org.onboard start-minimized "true" # запускать скрытой
    echo "[Desktop Entry]
    Name=Onboard-autostart
    Exec=onboard
    Type=Application
    Terminal=false" > /etc/xdg/autostart/onboard.desktop
    Теперь клавиатура будет появляться после клика в месте ввода. Это работает даже с мышью и тачпадом, поэтому если подразумевается такое использование планшета, выполните:
    gsettings set org.onboard.auto-show enabled "false"
    Чтобы вручную открыть клавиатуру, достаточно свайпнуть вверх с нижнего края экрана и нажать на иконку Onboard.
  8. При использовании без клавиатуры меню выбора ОС в Grub можно скрыть. Для этого поставим пакет из AUR:
    curl -O https://aur.archlinux.org/packages/gr/grub-holdshift/grub-holdshift.tar.gz
    tar -xf grub-holdshift.tar.gz
    cd grub-holdshift
    makepkg -si
    grub-mkconfig -o /boot/grub/grub.cfg
  9. Если в вашем планшете SSD, советую также прочитать эту статью
  10. Ещё большую функциональность жестов (например, разворачивание окна на весь экран свайпом тремя пальцами вверх, сворачивание свайпом вниз) сможет дать touchegg. Однако стандартных мультитач-жестов в Gnome достаточно.

Теперь система готова для использования только тачскрином. Всё удобно, а главное, отлично адаптировано под формат планшета, при этом во время работы в режиме планшет+док-станция, отличий от обычного Gnome 3 вы почти не заметите.

Вывод

Если вы приверженный линуксоид, и вы не покупаете планшет\трансформер только из-за того, что придётся отказаться от Linux — ничего подобного. Работать гораздо удобнее чем в Windows из-за, хотя бы, поддержки жестов в Gnome 3.

После обновления 3.16 в Gnome изменили дизайн трея, теперь это не панель, выдвигающаяся снизу экрана
image (как же это было удобно на тачскрине), а маленькая панелька снизу слева, которая содержит только иконки image. Кстати, ей ещё и невозможно пользоваться на планшете (баг я зарепортил уже давно).

В итоге пользоваться клавиатурой стало трудно, иногда даже включал «плавающий значок при свёрнутом Onboard» в настройках. Это решается расширением, которое позволяет открыть клавиатуру свайпом вверх с нижнего края экрана.
Также пункт 6 утратил актуальность, теперь это также решается расширением. Если вы таки предпочитаете стоковую клавиатуру и вам не нравится, что она накладывается сверху на окна, можете воспользоваться этим.
Также можно немного облегчить жизнь в портретном режиме (при 1366x768 туда не влазит большинство заголовков окон), поставив это и вот это.

Print Email

35 полезных инструментов по теме виртуализации

Сегодня слово «виртуализация» у всех на слуху, а технологии виртуализации становятся одним из основных компонентов ИТ-инфраструктуры организаций. Кстати, сегодня вышел наш пост, в котором мы поделились своим опытом создания провайдера виртуальной инфраструктуры на примере 1cloud.

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


Управление виртуализацией
  • Migrate: инструмент для миграции в виртуальную среду
  • OpenFiler: создание сетевого файлового хранилища с управлением через веб-интерфейс
  • StarWind Virtual SAN: виртуализированное хранилище, ориентированное на работу с гипервизорами
  • vCenter Converter: позволяет конвертировать физическую машину под Windows и Linux в виртуальную
  • RV Tools: приложение, использующее ВИ SDK для отображения информации о виртуальных машинах и ESX-хостах
  • Citrix Essentials: управление хост-серверами XenServer и Hyper-V для обеспечения виртуализации корпоративного уровня
  • Veeam Backup and Replication: восстановление виртуализированных приложений и данных платформ vSphere и Hyper-V
  • vSphere Mobile Watchlist: позволяет мониторить виртуальную инфраструктуру удаленно с помощью смартфона
  • ESX Deployment Appliance: упрощает развертку ESX-серверов
  • Ganeti: система управления кластером виртуализации от компании Google
  • oVirt: платформа виртуализации с простым веб-интерфейсом
  • Packer: инструмент для сборки образов
  • Xen: монитор виртуальных машин или гипервизор с поддержкой паравиртуализации для процессоров архитектуры x86
  • CloudStack: позволяет автоматизировать развертывание, настройку и поддержание виртуальной инфраструктуры
  • Vagrant: консольная утилита для создания и конфигурирования виртуальной среды разработки
  • VirtualBox: легкий и надежный инструмент виртуализации
  • FusionSphere: платформа виртуализации от Huawei
KVM
  • KVM: решение по виртуализации в среде Linux для процессоров архитектуры x86
  • Mist.io: комплексное решение, помогающее управлять гибридной инфраструктурой
  • nbsvm: создание, работа и взаимодействие с ВМ с помощью простых цепочечных команд
  • Witsbits: сервис, упрощающий развертку виртуальных машин на физических серверах
  • UVMM: интуитивно понятное управление виртуальными машинами на базе Xen и KVM
  • libvirt: кроссплатформенная библиотека для управления виртуализацией
  • cloonix: настройка параметров виртуальной сети
  • Archipel: push-уведомления с использованием XMPP
  • kimchi: инструмент управления для KVM на базе HTML5
  • SolusVM: одна из самых популярных контрольных панелей для коммерческого использования
  • Virtual Machine Manager: предоставляет интерфейс для управления виртуальными машинами с помощью libvirt
  • vmmaestro: небольшой shell-скрипт, способный запускать и останавливать виртуальные машины на базе KVM
  • kvm-wrapper: набор shell-скриптов, упрощающих управление виртуальными машинами на базе KVM
Безопасность виртуальных сред
  • VMware vShield Edge: продукт для комплексной защиты периметра дата-центра
  • VMware Compliance Checker Tool: проверки на соответствие требованиям безопасности (FISMA, PCI/DSS и др.)
  • Catbird Secure: решение по безопасности для физических и виртуальных инфраструктур
  • HyTrust: средство защиты соединений пользователей в виртуальной инфраструктуре
  • Trend Micro: платформа для защиты физических, виртуальных и облачных серверов
P.S. Другие материалы из нашего блога на Хабре о разработке провайдера виртуальной инфраструктуры 1cloud:

Print Email

Linux для начинающего разработчика или как навсегда забыть о Windows

Дисклеймер

Внимание, очень много букв! Предлагаю запастись попкорном и выделить время для данного мероприятия.

Пост предназначен в первую очередь для тех, кто занимается разработкой, но так же очень сильно поможет тем, кто пытался перейти на linux, но из-за каких бы то ни было непонятных вещей и трудностей плюнул и сказал: «Да ну нафиг этот линукс, еще возиться с ним буду».

В статье рассматривается установка Ubuntu 16.04 и настройка оной исключительно для работы.

Предыстория

Ранее уже были предприняты попытки перекатиться на linux, но из-за своей чрезмерной привязанности к продукту компании Microsoft, миграция в который раз откладывалась в «долгий ящик».

Так же меня всегда останавливало большое количество вопросов, на которые я не смог найти ответы, проблемы, ошибки и.т.д.
Но после того, как я заинтересовался и начал изучение Node.js, один товарищ меня все же подбил на переезд под предлогом того, что работать в linux будет удобнее. И вот, после нескольких неудачных попыток установки и некоторого времени использования Ubuntu в качестве основной ОС, я удалили драгоценную винду и навсегда забыл о ней. Ничуть об этом не жалею.

Приступаем к установке

Первое что нам надо сделать — записать загрузочную флешку или диск. Дистрибутив Ubuntu 16.04 весит всего 1.4 гб, поэтому лучше всего нам подойдет флешка. Скачиваем программу Unetbootin -> unetbootin.github.io.


Тут все довольно просто. Ставим «Образ диска», выбираем .iso файл, который мы скачали, выбираем носитель и нажимаем ОК. Запись не заставит себя долго ждать.

Перезагружаем систему и выбираем способ загрузки -> через USB. Но тут кого-то может подстерегать проблема, заключается она в том, что в обычном режиме загрузка не произойдет.

Чтобы все же завести флешку, пробуем загрузится с нее в UEFI режиме. Но позже, нас спросят, хотим ли мы продолжить установку в UEFI режиме. В случае если ваше решение перейти на linux является окончательным, то можете ответить утвердительно. Если же у вас есть необходимость загружаться в других ОС, то нажимаем «вернуться» (ума не приложу, почему именно так обозвали эту кнопку). Сама установка не должна вызывать каких-либо трудностей. Выбираем свой язык, и двигаемся дальше. Рекомендую в следующем окне поставить галочки:


В следующем окне выбираем пункт: «Другой вариант».


Далее нам нужно разметить диск. Если у вас 2 жестких диска и один из них не используется и на нем нет никаких данных, то просто выбираем его и нажимаем -> «Создать новую таблицу разделов».

У нас появится «свободное место», на него мы так же нажимаем и создаем первый раздел.

Раздел №1:

Размер root раздела может составлять и 4гб, но рекомендую поставить 40-50, чтобы имелся запас.
Тип — первичный
Местоположение — на всех разделах должно стоять «Начало этого пространства»
Использование — Ext4
Точка монтирования — " / "

Раздел №2:

Размер = размеру вашей оперативной памяти
Использование — раздел подкачки
Данный раздел играет роль резервной «оперативной» памяти, хранящейся на нашем жестком диске.

Раздел №3:

Размер = все оставшееся пространство
Тип — логический
точка монтирования — " /home "

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

Настройка системы, оформление, подгонка под особенности железа

После установки мы конечно же перезагружаемся в нашу теперешнюю ОС, логинимся. Заходим в параметры системы -> программы и обновления, в первой вкладке выставляем галочки таким образом:


Сразу же выполним некоторые команды:

sudo apt update
sudo apt upgrade
sudo означает выполнение с правами администратора

После первой же команды у вас попросят пароль, который вы придумали на этапе установки. Не пугайтесь, если вы вводите пароль, а буквы не отображаются — это такая мера безопасности. Если спросит про установку пакетов и приветливо будет мигать курсором — смело пишем Y и нажимаем Enter. Так что же мы только что сделали сей командой? Мы дали команду пакетному менеджеру «apt» обновить список доступных пакетов и установить их. Принцип работы основывается на GIT, вы включаете репозитории, обновляете их, устанавливаете обновления.Это дает нам преимущество — у нас всегда все самое свежее. Список репозиториев лежит в /etc/apt/sources.list, но нам это вряд ли понадобится.

Обновление завершено — перезагружаемся, хоть и в linux это обычно не требуется, но возможно обновилось ядро и данную операцию все же следует провести. Вообще если после update вы видите строчки подобного содержания:

linux-headers, linux-generic

значит обновление затрагивает наше ядро и перезагрузка обязательна.

«Железные» проблемы

Лично у меня сразу возникла проблема с мышкой. Использую игровую мышь с чувствительностью 3800DPI. Естественно, она металась по всему монитору от малейшего передвижения. И проблема с отображением мониторов. У меня стоят 2х 17inch с соотношением 4:3. Один монитор у подключен в мат.плату, а второй — в видеокарту от AMD. С первым все было хорошо, а вот тот что на встроенной графике — затухал сразу же после входа в систему. На ум пришло написать скрипт в автозагрузку для замедления мышки и переопределения мониторов (может кому пригодится).

Решение проблемы с слишком шустрой мышкой

В консоли вводим xinput и видим список подключенных устройств. Находим свою мышь и переписываем ее ID. На моей мышке ID=11, вводим команду xinput list-props '11'. Перед нами опять появляется список, но уже с набором опций, нам нужна Device Accel Constant Deceleration, смотрим ее ID (в скобочках). У меня оно равно 274. Теперь, зная id мышки и id, мы пишем следующее:

xinput set-prop '11' 274 2

В домашнем каталоге создаем файл start.sh и открываем его, где последняя цифра (2) означает во сколько раз надо замедлить мышь. Данную команду можем сразу внести в наш скрипт.ё

#!/bin/bash
xinput set-prop '11' 274 2

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

Решение проблемы с некорректно отображаемыми мониторами

Заходим в настройки -> настройка экранов. Видим два мониторчика, мы можем схватить один из них и расположить так, как нам нужно, а так же выбрать, на каком располагать панель запуска. Нажимаем применить, и если после перезагрузки все останется на своих местах, значит никаких действий более не требуется.

Но у меня при выставленном в БИОС приоритете встроенной графики, после входа второй монитор выключался и оставался тот, что подключен к видеокарте. Что примечательно — после пробуждения из спящего режима, второй снова оживал и работал нормально. Смотрим нумерацию мониторов, здесь на главном мониторе стоит метка «Primary».

xrandr

Согласно номерам, выставляем как будут располагаться мониторы. Дописываем в наш скрипт:

#!/bin/bash
xinput set-prop '11' 274 2
xrandr --output VGA1-1 --primary
xrandr --output VGA1-1 --left-of VGA1

Теперь пришло время прописать скрипт в автозагрузку, открываем меню dash (клавиша WIN) и вводим в поиске:

«Автоматически запускаемые приложения». Нажимаем добавить, вписываем имя (не важно какое, главное чтобы вам был понятен смысл назначения этого элемента), описание оставляем пустым. Теперь в поле «команда» вводим следующее:

sh /home/user/start.sh

Этим самым мы отдаем команду на запуск скрипта. Путь у вас может быть любой другой. Сохраняем и при следующей перезагрузке проверяем работоспособность.

Если все же проблема с мониторами остается — попробуйте поколдовать с их расположением и приоритетом вывода видео в БИОС
Касательно драйверов — я не стал ставить поскольку все и без них работает хорошо, в случае с AMD установка драйверов может вызвать крах системы.

Настройка системы и установка программ

Добавление шрифтов windows

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

sudo apt install msttcorefonts
sudo fc-cache -fv

После перезагрузки браузера шрифты должны отображаться правильно. Если есть желание — вы можете выставить какой-либо из них как системный (в настройках или ubuntu tweak tool). Рекомендую зайти в ubuntu tweak и во вкладке «шрифты» выставить:


Софт из уже включенных репозиториев

Программы которые уже включены в репозиторий партнеров canonical вы можете установить следующим образом:

sudo apt install <Название программы>

Пакет программ, которыми пользуюсь я:

1. skype
2. ssh (для подключения и удаленного управления машиной)
3. unity-tweak-tool (Тонкая настройка оболочки unity)
4. ubuntu-tweak-tool (Расширенные настройки системы)
5. inkscape (Редактор векторной графики)
6. gimp (Использую вместо фотошопа)
7. clementine (Аудиопроигрыватель)
8. mc (файловый менеджер для терминала)
9. vlc (видеопроигрыватель, со множеством кодеков)
10. filezilla (ftp клиент)

Установка стороннего ПО

Чтобы установить стороннее ПО нам придется добавлять репозитории в систему.

Telegram

sudo add-apt-repository ppa:atareao/telegram
sudo apt update
sudo apt install telegram

Yandex browser

Качаем с официального сайта пакет, открываем его, в менеджере нажимаем «install».
Для просмотра видео, требуется flash, установим его.

sudo apt install pepperflashplugin-nonfree

Brackets

Мне нравится работать в «скобках», очень приятная и удобная вещь:

sudo add-apt-repository ppa:webupd8team/brackets
sudo apt-get update
sudo apt-get install brackets

Далее установим тему, я использую numix, но вы можете найти любую другую и установить ее.

sudo add-apt-repository ppa:numix/ppa
sudo apt-get update
sudo apt-get install numix-gtk-theme numix-icon-theme n1umix-icon-theme-circle

После установки запускам unity tweak tool. Тему выставляем «Numix», значки так же «Numix». По душе темные темы? Запускаем ubuntu tweak tool и во вкладке «внешний вид» ставим «Применить темную тему глобально». Пока не вышли из ubuntu tweak, лучше прописать в автозагрузку skype и telegram.

Установка LAMP

Финальным штрихом установим LAMP сервер (Linux apache mysql php) и phpmyadmin:

sudo apt install lamp-server
sudo apt install phpmyadmin
sudo phpenmod mcrypt
sudo apt-get install php-mbstring php-gettext
sudo apt-get install php5-dev

Перезапустим apache:

sudo service apache2 reload

Пробуем зайти по адресу localhost. Если все в порядке, то двигаемся дальше. Открываем конфигурационный файл apache:

sudo nano /etc/apache2/apache2.conf

Находим там теги в них прописана информация о местоположении файлов нашего сервера, после последнего пишем такую конструкцию:

<Directory /home/user/public_html>
AllowOverride All
Require all granted

Путь можете указать какой вам удобно. В конце конфигурационного файла прописываем:

ServerName localhost

Внимание! Ниже описанные операции придется проделывать каждый раз при добавлении нового виртуального хоста!

Для добавления новых виртуальных хостов проделываем следующее. Создаем папку в директории /home/user/public_html/test, открываем /etc/hosts и в первую строку оного добавляем имя нашего сайта:

127.0.0.1 localhost testsite

Далее выполним в терминале:

sudo cp /etc/apache2/sites-available/000-default.conf /etc/apache2/sites-available/testsite.conf

Тем самым мы скопировали дефолтный конфигурационный файл для нашего сайта, открываем его:

sudo nano /etc/apache2/sites-available/testsite.conf

Раскомментируем строчку:

ServerName www.example.com

и вместо example.com впишем свое название. Далее подправим DocumentRoot который указывает на местоположение файлов нашего сайта, прописываем вместо стандартного /var/www — /home/user/public_html/test.

Теперь мы можем включить наш сайт:

sudo a2ensite testsite
sudo service apache2 reload

Вот и все. Базовая настройка завершена, можно пользоваться!

Не бойтесь искать в интернете, если вам что-то необходимо установить и настроить! Он не кусается. В данной статье я постарался изложить как можно подробнее процесс базовой настройки Ubuntu 16.04. Уверен, что после недели использования ubuntu в качестве основной ОС вы уже вряд ли вернетесь обратно.

Print Email

Использование синхронизации с Google Drive в Unity, Xfce и других окружениях рабочего стола

GNOME 3.18 получила возможность получения доступа к Google Drive прямо из Files (Nautilus). Чтобы использовать эту возможность, всё, что вам нужно сделать – добавить ваш аккаунт Google к онлайн-аккаунтам Gnome и включить "Files":

gnome
Онлайн-аккаунты GNOME 3.18

Ubuntu 16.04 Xenial Xerus уже включает большую часть GNOME 3.18, но поскольку Unity не использует Центр управления GNOME (также известный как Системные настройки GNOME или просто Настройки) и GNOME Online Accounts, а вместо этого поставляется с его форком (unity-control-center), который не включает эту возможность по-умолчанию.

Все же вы можете использовать интеграцию с Диском Google из GNOME 3.18 в Unity, а также других окружениях рабочего стола, если вы используете Ubuntu и её производные вроде Xubuntu) 16.04 Xenial Xerus. Это не работает на версиях Ubuntu старше 16.04!

Перед продолжением учтите, что при использовании этой возможности Google Drive монтируется через GVfs, поэтому все изменения, которые вы делаете в папке Google Drive на вашем компьютере, будет отражаться на вашем аккаунте Google Drive, но у вас не будет доступа к другим возможностям, доступным в официальных клиентах Google Drive для Windows/Mac, а также в неофициальных Linux-клиентах, например, к опции поделиться ссылкой и так далее.

Если вам требуется полноценный Google Drive-клиент для Linux, обратите своё внимание на Insync.

Получаем доступ к Google Drive через Unity

1. Установите GNOME Control Center (Системные настройки GNOME):

sudo apt-get install gnome-control-center

2. Откройте GNOME System Settings и добавьте свой аккаунт Google к онлайн-аккаунтам GNOME.

Найдите «Настройки» в Dash – это должно запустить Системные настройки GNOME.

Вы также можете запустить GNOME System Settings через диалог выполнения команды (ALT+F2) или терминал, выполнив следующую команду:

gnome-control-center

Или, чтобы напрямую запустить GNOME Online Accounts, вы можете использовать:

gnome-control-center online-accounts

Здесь добавьте свой Google-аккаунт и убедитесь в том, что "Файлы" включены.

gnome control center google drive

На этом всё. Это должно помочь вам получить доступ к вашим файлам Google Drive из приложения Файлы (Nautilus):

google drive nautilus

...а также из других файловых менеджеров. Например, работает Nemo:

google drive nemo

Получаем доступ к Google Drive из Xfce и других окружений рабочего стола

Есть некоторые различия между использование интеграции с Диском Google из GNOME 3.18 в Unity и в других окружениях рабочего стола.

Установить Центр управления GNOME в Unity не так сложно и не требует установки многих зависимостей, поскольку Unity основана на GNOME 3, поэтому вместе с центром управления GNOME устанавливается лишь небольшое количество дополнительных пакетов.

Впрочем, в других окружениях рабочего стола больше зависимостей GNOME Control Center не установлены – поэтому они будут установлены в процессе загрузки. Это также зависит от используемого вами окружения рабочего стола, но всё же, зависимости, устанавливаемые вместе с GNOME Control Center, не должны загрязнять ваше меню нежелательными элементами (отличными от самого центра управления, разумеется), как это происходит в случае установки нескольких окружений рабочего стола на одну машину.

Вот несколько примеров:

  • Дополнительные пакеты, которые устанавливаются вместе с gnome-contol-center в Xubuntu 16.04 (Xfce)
  • Дополнительные пакеты, которые устанавливаются вместе с gnome-contol-center в Ubuntu MATE 16.04 (рабочий стол MATE)

Второе отличие – центр управления GNOME не отображается в меню в окружениях рабочего стола, отличных от GNOME/Unity, и требуется установить XDG_CURRENT_DESKTOP=GNOME для отображения всех его панелей. Но мы доберёмся до этого ниже, в основной части инструкций.

1. Устанавливаем GNOME Control Center (GNOME System Settings):

sudo apt-get install gnome-control-center

2. Запускаем GNOME Control Center

Вы можете запустить GNOME Control Center двумя путями. Также вам необходимо отобразить все его панели, поскольку вы устанавливаете приложение не в GNOME и не в Unity. Вот эти два способа.

1. Использование команды для запуска GNOME Control Center

Чтобы запустить GNOME Control Center со всеми доступными панелями в окружениях рабочего стола, отличных от GNOME/Unity, вы можете использовать следующие команды:

XDG_CURRENT_DESKTOP=GNOME gnome-control-center

2. Редактирование .desktop-файла GNOME Control Center

Чтобы GNOME Control Center отображался в меню, скопируйте /usr/share/applications/gnome-control-center.desktop в ~/.local/share/applications/ (создайте эту папку, если она не существует) и удалите "OnlyShowIn=GNOME;Unity;" из файла .desktop.

Строка выше заставляет GNOME Control Center отображаться в меню только в окружениях рабочего стола GNOME и Unity.

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

mkdir -p ~/.local/share/applications/
cp /usr/share/applications/gnome-control-center.desktop ~/.local/share/applications/
sed -i '/^OnlyShowIn/d' ~/.local/share/applications/gnome-control-center.desktop

GNOME Control Center теперь должен отображаться в меню как "Settings":

gnome control center settings xfce

Теперь нам нужно заставить GNOME Control Center отображать все доступные панели. Вот как по-умолчанию он выглядит в других окружениях рабочего стола:

gnome control center default xfce

Чтобы Центр управления GNOME отображал все доступные панели, вам нужно изменить строку, начинающуюся с "Exec=", и добавить "env XDG_CURRENT_DESKTOP=GNOME" (без кавычек) между "Exec=" и "gnome-control-center". После изменения строка "Exec" должна выглядеть так:

Exec=env XDG_CURRENT_DESKTOP=GNOME gnome-control-center --overview

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

sed -i 's/^Exec.*/Exec=env XDG_CURRENT_DESKTOP=GNOME gnome-control-center --overview/' ~/.local/share/applications/gnome-control-center.desktop

Теперь все панели GNOME Control Center должны отображаться, в том числе и онлайн-аккаунты:

3. Добавляем ваш аккаунт Google в онлайн-аккаунты GNOME и получаем доступ к Google Drive через ваш файловый менеджер.

Всё, что вам нужно сделать теперь – запустить GNOME Control Center, используя один из двух методов, которые я описал ниже, и в разделе онлайн-аккаунтов добавить ваш аккаунт Google (убедитесь, что «Файлы» включены):

online accounts xfce google drive files

После того, как вы дадите доступ онлайн-аккаунтам к вашему аккаунту Google, вы сможете получить доступ к вашим файлам с Google Drive вне зависимости от используемого файлового менеджера, будь то Thunar или Xfce:

thunar google drive xfce

Print Email

Установка ЛИГА:ЗАКОН в Ubuntu

Работоспособность проверялась для клиента системы Лига:Закон версий 9.1, 9.2 и 9.4 на версиях Ubuntu Linux 13.04 и 13.10

1. Перед установкой клиента системы Лига:Закон необходимо установить WINE.

2. Далее необходимо установить библиотеку MFC 4.2. Для этого в терминале выполняем команду:
$ winetricks mfc42

3. Последним шагом будет непосредственная установка клиента системы Лига:Закон на компьютер. В директории, где находятся файлы cli_inst.exe и setup.inf, выполняем команду:
$ wine cli_inst

После установки иконка для запуска программы Лига:Закон появится на рабочем столе пользователя.

Дополнение:

Если по каким-либо причинам файл конфигурации setup.inf отсутствует, то при запуске клиент Лига:Закон выдаст сообщение "Сервер не найден". В таком случае необходимо вручную установить параметры соединения с сервером. Для этого запускаем "Конфигурация Клиента системы ЛІГА:ЗАКОН" и в разделе "Связь" в расширенных параметрах прописываем IP адрес сервера, порт 30583, тип протокола 0006, тип сокета 0001, нажимаем "Изменить" и затем "Сохранить".

Если для подключения к интернету используется прокси-сервер, выполняем следующие команды от имени root:
# export http_proxy="http://user:password@proxy_ip:port"
# export ftp_proxy="http://user:password@proxy_ip:port"

где user и password – имя пользователя и пароль соответственно для доступа к прокси-серверу (если необходимо), proxy_ip – IP адрес прокси-сервера, port – порт.

Статья написана благодаря источнику.

Print Email

LTSP: Терминальный сервер на Linux

LTSP — Это терминальное решение на Linux.
Говоря "терминальное", я в первую очередь имею в виду не подключение к удаленному рабочему столу как в Windows. Я подразумеваю гораздо более гибкую и продвинутую систему доставки ПО, конфигов, домашенего каталога, да и самой операционной системы на клиентские рабочие станции с вашего терминального сервера.

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

У LTSP есть несколько режимов работы:

  • тонкий клиент
  • толстый клиент

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

Принцип работы

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

Как я уже сказал, на терминальных станциях вполне может и не быть жесткого диска, а соответственно никакой операционной системы на них не установленно, вся загрузка происходит c LTSP-сервера прямо по сети.
На терминальном сервере у вас установлена система, в ней же и хранятся все данные пользователей, конфиги, и ПО.
Когда пользователь включает свой компьютер, у него загружается операционная система с терминально сервера, он может в нее войти, поработать, отключиться. При этом все данные всегда остаются на терминальном сервере.

Теперь о режимах работы:

  • тонкий клиент — Приложения выполняются на терминальном сервере и просто выводятся на дисплей терминального клиента.
  • толстый клиент — Приложения выполняются непосредственно на терминальном клиенте, а сервер просто предоставляет доступ к пользовательским файлам и программам.

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

Кроме того, режимы можно комбинировать и некоторые приложения можно заставлять работать иначе, чем все остальные. Например запускать "тяжелый" браузер с flash локально на клиентах, а офисные приложения запускать на самом сервере.

Плюсы и минусы

Давайте рассмотрим какие же плюсы мы имеем по сравнению со стандартными принципами построения ит инфраструктуры:

  • Централизованное управление — У вас есть одна единая конфигурация, которой вы управляете из одного места.
  • Резервирование и бэкапирование — Все пользовательские данные у вас хранятся на одном сервере, а соотвественно настроив резервирование этого сервера, вы никогда не потеряете пользовательские данные.
  • Экономия на компьютерах — Бездисковые терминальные станции стоят заметно дешевле, чем полноценные компьютеры.
  • Быстрое развертывание — Вам больше не нужно устанавливать ОС. Прикупив очередную пачку терминалов их можно смело втыкать в сеть, они сразу подтянут операционку с сервера и они будут полностью готовы к работе. Точно так же нерабочий терминал можно быстро заменить другим.
  • Независимость от рабочего места — Пользователи могут работать под своей учетной записью независимо с любого компьютера в сети, всегда будет подгружаться именно их личный профиль.
  • OpenSource — Прежде всего, LTSP — это открытый и свободный проект. Вам не надо покупать лицензии для его использования. Кроме того, вы всегда можете посмотреть исходники, в основе которых лежат обычные bash-скрипты.

Минусы:

  • Требуется непрерывное подключение LAN — терминальные станции грузятся и работают по сети, поэтому требуется стабильное проводное подключение к сети.
  • Зависимость от сервера — понятное дело, без сервера все терминальные клиенты становятся бесполезными и превращяются в тыкву.

Устройство

Первое, что мы должны знать, это компоненты из которых состоит сервер:

  • DHCP-сервер — используется для выдачи клиентам IP-адресов и информации о tftp-сервере и пути к загрузчику pxelinux. Вы так же можете использовать ваш собственный DHCP-сервер.
  • TFTP-сервер — отдает по tftp-протоколу загрузчик, ядро и главный конфиг lts.conf.
  • NBD-сервер — используется ядром для загрузки базовой системы по сети. Так же, при желании, может быть заменен на NFS
  • SSH-сервер — используется для авторизации пользователей и передачи их домашних каталогов на терминальные станции.

Во вторых разберемся в том как он работает:

Когда вы установите на ваш сервер пакет ltsp-server-standalone, вы, к полностью настроенным сервисам, получите еще несколько ltsp-скриптов:

  • ltsp-build-client — собирает для нас образ системы, который мы будем отдавать на клиентские машины.
  • ltsp-chroot — chroot'ит нас в клиентскую систему, например для установки дополнительных пакетов и изменения конфигов.
  • ltsp-config — генерит дефолтные конфиги для LTSP.
  • ltsp-info — выводит информацию о текущей установке.
  • ltsp-update-image — обновляет nbd-образ базовой системы.
  • ltsp-update-kernels — копирует ядро и загрузчик из клиентского образа, в директорию tftp-сервера
  • ltsp-update-sshkeys — добавляет ssh publickey вашего сервера, в known_hosts клиентского образа.

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

Как устроена загрузка по сети?

Так же предельно важно понимать как устроена загрузка по сети, процесс загрузки выглядит примерно следующим образом:

  • Рабочая станция включается и опрашивает DHCP-сервер, как ей грузиться дальше:
    А точнее происходит запрос двух опций: next server — адрес TFTP-сервера и boot file — путь к загрузчику.
  • DHCP-сервер, выдает ответ с адресом сервера и путем к pxelinux.
  • Рабочая станция загружает загрузчик pxelinux по TFTP
  • pxelinux загружает ядро.
    В конфиге pxelinux в опциях ядра указанно откуда грузить основную систему по NBD
  • Когда ядро запускается, оно маунтит с сервера nbd-образ в корень системы и загружает процесс init, который в свою очередь и загружает все остальное обычным способом.
  • Так же в этот момент ltsp-читает главный конфиг lts.conf с сервера и запускает LDM, после чего пользователь видит приглашение к вводу логина и пароля.

LDM — это логон менеджер LXDE, который отвечает за авторизацию пользователей и начальный запуск окружения.

image

Когда пользователь логинится проиходит следующее:

  • В случае тонкого клиента, LDM заходит с введенным логином и паролем на ваш сервер по SSH,, если успешно, загружает окружение с сервера простым пробросом X'ов.
  • В случае толстого клиента, LDM пытается подключиться с введенным логином и паролем к вашему серверу, если успешно, то маунтит домашний каталог пользователя с сервера на клиент посредством sshfs, затем запускает окружение.

Если вам нужна более подробная информация о загрузке Linux по сети, рекомендую обратиться к циклу статей Roshalsky, вот ссылка на первую.

Установка

Я опишу установку LTSP в режиме толстого клиента, как наиболее сложную и интересную.
Настройка в режиме тонкого клиента мало чем будет оличаться, за исключением того, что необходимое ПО вам придется устанавливать не в chroot, а в основную систему, и после этого вам не нужно будет пересобирать nbd-образ.

Маленькая оговорочка, для сервера лучше брать дистрибутивы посвежее, т.к. LTSP находится среди стандартных пакетов и обновляется вместе с дистрибутивом. 

Итак, приступим. Сначала устанавливаем ltsp-server-standalone:

apt-get update && apt-get install ltsp-server-standalone

Теперь с помощью ltsp-build-client мы установим клиентскую систему. LTSP поддерживает различные DE, но больше всего мне понравилось как работает LXDE. В отличии от Unity он потребляет совсем мало ресурсов и так-как работает на голых иксах, он почти полностью конфигурируется с помощью переменных среды, это очень удобно, так-как их можно указать в главном конфиге lts.conf.

ltsp-build-client --dist xenial --arch i386 --fat-client-desktop lubuntu-desktop

Все эти опции можно указать в конфиге /etc/ltsp/ltsp-build-client.conf, что бы не прописывать их вручную:

ltsp-build-client.conf
# Distribution
DIST=xenial
# The chroot architecture.
ARCH=i386

# ubuntu-desktop and edubuntu-desktop are tested.
# If you test with [k|x]ubuntu-desktop, edit this page and mention if it worked OK.
# kubuntu lucid (10.10) working okay.
FAT_CLIENT_DESKTOPS="lubuntu-desktop"

# Space separated list of programs to install.
# The java plugin installation contained in ubuntu-restricted-extras
# needs some special care, so let's use it as an example.
#LATE_PACKAGES="
#    ubuntu-restricted-extras
#    gimp
#    nfs-client
#"

# This is needed to answer "yes" to the Java EULA.
# We'll create that file in the next step.
DEBCONF_SEEDS="/etc/ltsp/debconf.seeds"

# This uses the server apt cache to speed up downloading.
# This locks the servers dpkg, so you can't use apt on
# the server while building the chroot.
MOUNT_PACKAGE_DIR="/var/cache/apt/archives/"

В случае если опция не указана, будет использоваться тот же дистрибутив и/или архитектура, что и на серверной системе.

После запуска комманды, у вас в полностью автоматическом режиме, с помощью debootstrap, развернется система в каталог /opt/ltsp/i386.

Эта же система и будет использоваться в дальнейшем всеми командами LTSP, в нее будет устанавливаться дополнительное ПО, из нее будут генериться загрузчик с ядром и nbd-образ системы. В принципе, ее, так же можно отдавать по nfs при должной настройке загрузчика.
После установки LTSP автоматически сгенерит из нее nbd-образ. Этот образ и будут загружить наши клиенты.

Для того, чтобы внести какие-нибудь изменения в гостевую ОС, например устанавливать дополнительное ПО, используется команда ltsp-chroot.
Если вы хотите что-то поменять или добавить в гостевую систему, выполните ltsp-choot и вы окажетесь внутри нее.
Затем произведите нужные вам действия, и выйдите командой exit.
Чтобы изменения применились, нужно перегенерить nbd-образ командой ltsp-update-image

DHCP-сервер:

Вместе с метапакетом ltsp-server-standalone у нас установился и isc-dhcp-server.
В принципе он уже из коробки работает как надо, но при желании вы можете поправить его конфиг /etc/default/isc-dhcp-server.
Есть классная статья на OpenNet от 2010 года на тему настройки LTSP, там неплохо описана процедура настройки DHCP-сервера.

Но, так как я предполагаю, что у вас уже есть DHCP-сервер, предлагаю настроить его.

Удалим isc-dhcp-server:

sudo apt-get remove isc-dhcp-server

Теперь вам нужно добавить к вашему dhcp-серверу 2 опции:

next-server 192.168.1.2; # TFTP-сервер
filename "/ltsp/i386/pxelinux.0"; # Загрузчик

Как это сделать, смотрите инструкции к вашему DHCP-серверу.
Вот, например инструкция как это сделать на оборудовании Mikrotik.

Установка ПО

  • Давайте же войдем в нашу гостевую систему:


    ltsp-chroot
  • Теперь установим vim:


    apt-get update && apt-get install vim
  • Поддержку русского языка:


    apt-get update && apt-get install `check-language-support -l ru`
  • Последнюю версию Remmina:


    apt-add-repository ppa:remmina-ppa-team/remmina-next
    apt-get update
    apt-get install remmina remmina-plugin-rdp libfreerdp-plugins-standard
  • Skype:


    add-apt-repository -y "deb http://archive.canonical.com/ $(lsb_release -sc) partner"
    apt-get -y update
    apt-get -y install skype
  • Браузер Chromium c плагином PepperFlash (свежий flash от google)


    sudo apt-get install chromium-browser
    sudo apt-get install pepperflashplugin-nonfree
    sudo update-pepperflashplugin-nonfree --install
  • Кстати, PepperFlash можно установить и запустить без Chromium, в Firefox:
Установка PepperFlash для Firefox
add-apt-repository -y ppa:skunk/pepper-flash
add-apt-repository -y ppa:nilarimogard/webupd8
apt-get -y update
apt-get -y install pepflashplugin-installer freshplayerplugin
mkdir -p /opt/google/chrome/PepperFlash
ln -s /usr/lib/pepflashplugin-installer/libpepflashplayer.so /opt/google/chrome/PepperFlash
  • Чтобы администратор мог удаленно подключиться к сессии пользователя установим x11vnc:

Установка x11vnc

# Скачиваем пакет
apt-get -y install x11vnc

# Создаем скрипт запуска
cat > /usr/bin/x11vncd <<EOT
#!/bin/bash
x11vncd () {
     XAUTH=\`ls -1td /var/run/ldm-xauth-* | head -n1 | sed 's|$|/Xauthority|'\`
     logger -f /var/log/x11vnc "Starting with \$XAUTH"
     /usr/bin/x11vnc -display :7 -rfbauth /etc/x11vnc.pass -logfile /var/log/x11vnc -xauth \$XAUTH 
     sleep 1
     x11vncd
}
x11vncd
EOT

# Создаем init-скрипт
cat > /etc/init.d/x11vnc <<EOT
#!/bin/sh

### BEGIN INIT INFO
# Provides:x11vnc
# Required-Start:\$remote_fs \$syslog
# Required-Stop:\$remote_fs \$syslog
# Default-Start:2 3 4 5
# Default-Stop:0 1 6
# Short-Description:Start X11VNC
# Description:Start VNC server X11VNC at boot
### END INIT INFO

case "\$1" in
        start) 
                start-stop-daemon --start --oknodo --pidfile /var/run/x11vnc.pid --background --nicelevel 15 --make-pidfile --exec /usr/bin/x11vncd
        ;;
        stop)  
                logger -f /var/log/x11vnc "Stopping"
                start-stop-daemon --stop --oknodo --pidfile /var/run/x11vnc.pid
        ;;
        restart)
                logger -f /var/log/x11vnc "Restarting"
                \$0 stop
                \$0 start
        ;;
        status)
                PID=\`cat /var/run/x11vnc.pid\`
                if [ -e /proc/\$PID ]; then
                        echo "Process \$PID is running"
                else   
                        echo "No process matching"
                fi
        ;;
        *)
                echo "Usage: \$0 start|stop|restart|status"
                exit 1
        ;;
esac
exit 0
EOT

# Разрешаем выполнение
chmod +x /usr/bin/x11vncd /etc/init.d/x11vnc
# Включаем службу при запуске
update-rc.d x11vnc defaults
# Задаем пароль
x11vnc -storepasswd /etc/x11vnc.pass
  • И ssh-сервер:


    apt-get -y install openssh-server
  • Еще в Ubuntu 16.04 есть некая проблема, xscreensaver автоматически не стартует. Исправим это:
    cat > /etc/xdg/autostart/xscreensaver.desktop <<EOT
    [Desktop Entry]
    Type=Application
    Exec=/usr/bin/xscreensaver -nosplash
    Hidden=false
    NoDisplay=false
    X-GNOME-Autostart-enabled=true
    Name[en_US]=xscreenasaver
    Name=xscreensaver
    Comment[en_US]=
    Comment=
    EOT

Не забываем выйти из chroot и обновить наш nbd-образ:

exit
ltsp-update-image

Создание пользователей

  • Обычных пользователей терминального сервера можно создать стандартным способом:

    useradd -m -c "Иван Иваныч" -g users -s /bin/bash <username>
    passwd <username>
    Или через GUI если он установлен у вас на сервере
  • Также при желании можно создать локального администратора в клиентском образе:
    ltsp-chroot
    useradd -g adm -G sudo -s /bin/bash -m <adminname>
    passwd <adminname>
    exit
    ltsp-update-image

Конфиг lts.conf

Вот мы и подобрались к самому главному конфигу
Находится он по адресу /var/lib/tftpboot/ltsp/i386/lts.conf и представляет ссобой нечто иное как описание глобальных переменных.

Конфиг поделен на секции, в секции Default описываются настройки общие для всех клиентов:

[Default]
# Сессия LXDE
LDM_XSESSION    = /usr/bin/dbus-launch --exit-with-session /usr/bin/lxsession -s Lubuntu -e LXDE
# Настройки локалей и системного языка
LOCALE          = Europe/Moscow
LC_ALL      = ru_RU.UTF-8
LANG        = ru_RU.UTF-8
LDM_LANGUAGE    = ru_RU.UTF_8
# Настройка переключения клавиатуры и хоткеев
XKBLAYOUT       = "us,ru"
XKBOPTIONS      = "grp:ctrl_shift_toggle,terminate:ctrl_alt_bksp"
X_NUMLOCK       = true
KEYTABLE    = ru
LDM_NUMLOCK     = true
# Разрешаем флешки
HOTPLUG     = True
# Разрешаем локальные диски
LOCALDEV        = true
# Настраиваем звук и микрофон
SOUND       = True
MIC_VOLUME      = 0
CAPTURE_VOLUME  = 100
CAPTURE_SWITCH  = toggle
# Включаем поддержку SSH
RCFILE_01       = "ssh-keygen -A ; /usr/sbin/sshd"
# Настраиваем сбор логов
SYSLOG_HOST     = server

Также можно добавить секции для отдельных клиентов, на основе hostname, IP или MAC-адреса:

# Настройка графики
[oldmachine]
X_COLOR_DEPTH=8
X_MODE_0=800x600

# Включить автологин
[192.168.1.123]
LDM_AUTOLOGIN = True
LDM_USERNAME  = user
LDM_PASSWORD  = password

# Принт-сервер
[00:11:25:93:CF:00]
PRINTER_0_DEVICE=/dev/usblp0
SCREEN_07=shell

# FreeRDP, вместо стандартной оболочки
[00:11:25:93:CС:11]
SCREEN_07=xfreerdp
RDP_SERVER=192.168.100.10
RDP_OPTIONS="/f /sec:rdp /cert-ignore /multimon:force"

Вообще полный список опций вы можете найти на этой странице, или в

man lts.conf

Итоги

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

К тому же, благодаря свободной лицензии все это достается вам абсолютно бесплатно.

LTSP можно использовать как в учебных заведениях, так и в обычных офисах, как для удаленного подключения к Windows, так и просто для обычной работы и для создания рендер-фермы.

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

Несколько интересных ссылок:

  • LTSP.org — Официальный сайт проекта.
  • UbuntuLTSP — Страничка на Ubuntu Wiki.
  • LTSP-Cluster. — Проект по созданию кластера на LTSP (для больших установок).
  • Raspi-LTSP — Интересный проект, который позволяет использовать Raspberry Pi в качестве терминальных станций.

Print Email

Галопом по Европам! Образование и все что с этим связано!

 

Читая новости постоянно натыкаюсь на заголовки: “Украинское образование в 20…N году станет одним из прогресивнейших в Европе!”, “Образование Украины – одно из самых передовых в Европе” и так далее в том-же духе и ключе …
Итак образование, ЗНО и … а что такое образование и ЗНО у них и у нас?
В принципе ЗНО, что у них, что у нас это одно и тоже – оценивание знаний. По результатам ЗНО можно поступить в институт, академию или еще какое другое учебное заведение, что у них, что у нас, но …! И вот оно – наше НО!
Итак ЗНО у них – это возможность поступить в учебные заведения по всей еврозоне! В любые учебные заведения! Подчеркну еще раз – в ЛЮБЫЕ!
ЗНО у нас, а ЗНО у нас – это ЗНО у нас, и все! За пределами Украины наше ЗНО плавно превращается, превращается … а не во что оно не превращается!
Сказать что ЗНО у нас – это плохо, да нет и уровень его соответствующе – высокий и хорошо, что требуют, но проблема кроется намного глубже и в тоже время лежит на поверхности.
Мы хотим жить как там, в Европе и безбожно копируем множество их стандартов. Желание похвальное и мало того, я сам хочу жить в европейском государстве с соответствующим уровнем как жизни так и стандартов. Но тут каждый должен понять – скопировать это одно. Копия – это всего лишь копия и все, не более! Мы не принимаем общемировые стандарты, а выдумываем свои и начинаем их безбожно “разгонять” со словами – это почти как принято у них там … Почти!
Что касается образования, про школьное (среднее) можно писать тома о том, как ненужно его развивать. Наши школы, если посмотреть на их работу более пристально, работают зачастую для удовлетворения амбиций преподавательского состава, не всех, но в подавляющей массе.
Родители идут в школу у нас, и не приведи господь по вызову – для того, что бы на тебя вылился набор всего возможного негатива. И ребенок не такой и не учит и не заинтересован и все вокруг плохие. А как же у них там .. в Европе? А там, а там тоже вызывают – но чаще и в основном, что-бы похвалить! Ругать и обвинять может каждый, это просто, а вот найти подход к ребенку …
Почему там – преподаватель ищет проблему в первую очередь в себе, а у нас во всех окружающих и детях? Почему там дети хотят идти в школу, садик, университет или академию или любое другое учебное заведение, а у нас идут как на каторгу? Может стоит перестать винить детей и половине преподавательского состава стоит задуматься о том, насколько они компетентны в обучении детей? Не с точки зрения знаний, а со стороны психологической совместимости и готовности обучать детей?
И я еще не говорю про дополнительные занятия (платные) и репетиторство! Не в специально арендованном помещении, а тут -же в учебном заведении и с теми-же детьми которых ты должен учить во время урока! Это ли не абсурд?
Но вот ребенок получил среднее образование и готов идти учиться дальше. Но и тут если поинтересоваться есть ряд проблем – среднее образование не готовит их к дальнейшему обучению! Но почему так?
Но вернемся к нашей теме …
Итак, Ваш ребенок получил среднее образование и готов идти учиться дальше. Куда идти учиться и может ли Ваш ребенок учиться за пределами Украины?
Да может! А при наличии знаний языка и отлично сданных экзаменов в Польше и Чехии, например, даже может попробовать претендовать и на бесплатное обручение. Тяжело, но возможно! Намного проще на платной основе и по контракту. Но в любом случае от него там будут требовать знаний! Например, средняя стоимость образования в Польше за год – 1200 евро, но там существует ряд программ и акций направленных на привлечение учащихся – 50% скидки за первый год, помесячная оплата, возможность совмещать работу и учебу! Да-да, там есть и такая программа обучения, когда ученик работает и учиться! Мало того, там поощряется желание учеников работать и практиковаться и именно таких, в дальнейшем и стараются привлекать и брать на работу местные компании. По окончанию образования студенты получают дипломы европейского образца!
Скажете дорого? А давайте посчитаем сколько родители и дети платят у нас за год, за две сессии? А за все обучение?
Но какой же выход, и есть ли он? Да все просто, как я выше уже писал, проблема кроется намного глубже и в тоже время лежит на поверхности, вместо ежегодного написания новых учебников и выдумывания уровней ЗНО Министерству Образования нужно научиться дипломатии и вести переговоры с Министерсвами других стран о признании наших ЗНО, дипломов и так далее и естественно все это произойдет не сразу, не вдруг но начать это нужно было еще вчера. не выдумывать новые, переходные или временные стандарты, а договариваться и внедрять сразу – Европейские! Делается ли что-то в этом направлении сейчас, я увы пока не знаю…
Ну и по привычки, дабы два раза не садиться – о патриотизме!
Нигде за пределами Украины я ни разу не слышал выражения – я не люблю (ненавижу) свой город или я не люблю свою страну? Может наши проблемы корнями уходят именно в нелюбовь? Что в Чехии, что в Польше мне удалось поговорить с местными жителями и они все сочувствуют и поддерживают Украину в стремлении быть Свободным Европейским Государством, но все как один говорят – Вы должны сами построить свое государство, а не ждать указаний и помощи! САМИ!
И они правы! Мы должны сами научиться любить свое государство, стать патриотами страны, города, улицы и подъезда! Мы должны сами научиться нести ответственность и наводить порядок. И мы должны сами осознать, что Украина – это Свободное Европейское Государство! А вот готовы ли мы? На этот вопрос каждый должен ответить себе сам…

Print Email

  

UALINUX LTD.

Tel: +380 (97) 33-55-1-88 (mon ... fri   09.00 - 18.00)

Viber, WhatsApp, Telegram: +380 (97) 33-55-1-88 (24/365)

E-Mail: [email protected] 

© 2020 UALinux