Управление компьютером через Ubuntu One.
Данная статья носит академический интерес, практической пользы от неё мало. Мы будем управлять своим удалённым компьютером через Ubuntu One!
Как правильно делать
Если вы новичок, то должны заранее узнать, что удалённое управление компьютером осуществляется «нормальными» решениями. Если нужен консольный доступ к ПК, то нужно использовать защищённый канал с помощью SSH. Если нужен графический доступ к ПК, то нужно использовать протоколы типа VNC.
Протокол VNC, который позволит «увидеть» свой Рабочий Стол, не использует шифрование потока данных, хотя пароль не передаётся открытым текстом. То есть необходимо шифровать поток между вами и вашим удалённым ПК, если вы не хотите чтобы ваши «экраны» могли смотреть «хакеры».
Можно использовать сетевую природу графического сервера Xorg (X, X11, X-server) и «графику» «завернуть» и защитить с помощью SSH. Читаем об это подробнее в статьях X over SSH.
Сетевые проблемы
Идеальная схема, но маловероятная, когда у ваших компьютеров внешние («белые») IP адреса. То есть, образно говоря, есть только вы и Интернет и между вами нет мешающих вам сущностей.
Чаще всего выход в Интернет осуществляется из внутренних («серых») IP адресов провайдера через различные сетевые технологии типа NAT.
Из-за NAT нарушается принцип Интернета точка-точка, когда один хост может напрямую общаться с другим хостом. NAT — это полезное и необходимое зло в мире IPv4. Подробнее об этой философии в статье Заметки об использовании IPv6 в Ubuntu.
Представим, что вы хотите с работы управлять домашним компьютером.
ПК-работа -> NAT-провайдер-работа -> Интернет -> NAT-провайдер-дома -> ПК-дом.
NAT-провайдер-работа доступен вам для конфигурирования только если вы админ на этой работе. NAT-провайдер-дома доступен вам для конфигурирования только если вы админ у провайдера в локальной сети.
Сомневаюсь и маловероятно, что вы админ и там и там. Сразу возникает проблема, как «пробросить» соединение, по которому будет циркулировать ваш трафик между ПК-работа и ПК-дом. Ваше счастье если вы используете ADSL модемы, ваш «выводитель в Интернет» у вас на столе. Вы имеете к нему доступ и можете его перенастроить.
Ваша схема будет выглядеть тогда так:
ПК-работа -> NAT-провайдер-работа -> Интернет -> NAT-ADSL-модем-дома -> ПК-дом.
Легче? Да! Но нужен ещё доступ к NAT-провайдер-работа. Вообщем, я хотел показать, что на пути правильного удалённого управления ПК через Интернет будет много сетевых проблем и нужно будет много узнать про сетевые технологии.
Для новичка это может стать неразрешимой проблемой.
Управление компьютером через Ubuntu One
Управление — здесь громкое слово и лучше его понимать как «возможность давать свои команды удалённому ПК и видеть его экран», не используя realtime.
Чтобы вас не томить, охарактеризую кратко задумку.
На наших компьютерах мы заранее настроим Ubuntu One. Ubuntu One — это онлайн-хранилище Canonical для пользователей Ubuntu, которое позволяет синхронизировать свои файлы между компьютерамии и еще другие вкусные возможности. Вам предоставляют бесплатно 5 Гб, что вполне достаточно для скромных нужд.
Настроив Ubuntu One, мы можем создать файл в папке
/Ubuntu One/ одного компьютера и он тут же окажется на вашем другом компьютере.
Мы напишем скрипт, который будет исполнять наши команды из «командного файла» и помещать нам результат в другой «файл ответа». Вот и вся задумка. Она чем-то похожа на почтовых роботов, которые исполняют команды в пришедшем письме.
Вот сам скрипт control.sh, который я разместил в папке
/Ubuntu One/u1c/
#!/bin/sh
# vasilisc 2012
# remote control via UbuntuOne
# welcome vasilisc.com/
h=»/$
cd «$
if [ ! -r «$
/usr/bin/timeout 60s /bin/sh -x «$
fi
Скрипт прост. Вначале проверяется наличие файла ответа command.txt.done, с помощью конструкции
-r «$
Если файл command.txt.done отсутствует, то это означает, что скрипту control.sh нужно выполнить ваш приказ в файле command.txt.
Если файл command.txt.done присутствует, то это означает, что скрипт control.sh уже отработал в прошлый раз и больше выполнять ничего не нужно.
А кто будет вызывать control.sh? Мне удобно задействовать планировщик Cron. Задание в Cron нужно заносить, вызывая crontab -e для указания своих заданий.
«Я старый солдат и не знаю слов любви» (с) Здравствуйте, я ваша тётя!). «Старая школа» внутри меня любит использовать системный Cron и добавить правило нужно так:
sudo nano /etc/crontab
там указать задание, что раз в 1 минуту (*/1) из под пользователя vasilisc вызывать скрипт «/home/vasilisc/Ubuntu One/u1c/control.sh». Кавычки используются из-за пробела внутри «Ubuntu One». Убил бы за пробел в имени =). А зачем решётка в конце? Новички часто добавляют Крону задания в конец /etc/crontab и оставляют EOF на последней строке, а не на новой отдельной. Крон так не любит и негодует. Решётка вас спасёт =).
*/1 * * * * vasilisc «/home/vasilisc/Ubuntu One/u1c/control.sh»
#
Основная команда выполняющая ваш приказ из файла — это
/usr/bin/timeout 60s /bin/sh -x «$
«Навсякий пожарный» мы используем команду timeout, которая убьёт через 60 секунд (60s), долгоисполняющийся /bin/sh.
То есть если вы ошибётесь и на удалённом компьютере что-то пойдет не так, то эта подстраховка спасёт нас от затянувшегося или зависшего процесса.
Ваши команды исполняются дольше? Увеличивайте тогда параметр, делайте например 120s или 5m. Подробности в man timeout
Конструкция «2>&1» и параметр «-x» позволит вам увидеть в файле ответа command.txt.done саму команду и ошибки, если команда их выводит.
Как вы поняли, мы пишем приказ-команду в файл command.txt. Ubuntu One синхронизирует изменившиеся файлы и файл command.txt появляется на вашем ПК, которым вы хотите управлять и там запущен control.sh.
Control.sh выполняет команды и помещает ответ в command.txt.done.
А кроме текстовых команд ничего не доступно?
Отнюдь! Можно провернуть следующий трюк и получить экран удалённого компьютера с помощью команды вида:
scrot ‘%Y-%m-%d_$wx$h.png’ -e ‘mv $f «/home/vasilisc/Ubuntu One/u1c/»‘
Scrot сделает «экран» и сам поместит картинку-экран в нужную папку в пределах
/Ubuntu One. У меня это «/home/vasilisc/Ubuntu One/u1c/».
Если вам не нужна история экранов, то можно упростить команду до:
scrot ‘screen.png’ -e ‘mv -f $f «/home/vasilisc/Ubuntu One/u1c/»‘
У вас scrot будет создавать картинку всегда с именем screen.png и перезаписывать старую картинку без запросов. Ubuntu One синхронизирует новую screen.png и вы получите её новую версию. В это время ваш Картинкопросматриватель будет сам обновлять содержимое своего окна при поступлении новой screen.png
Вы раз в минуту будете видеть удалённый экран, если будете стирать файл command.txt.done, чтобы control.sh «понял» что нужно снова выполнить ваши приказы из command.txt.
Изврат? Изврат! Мусьё знает толк в извращениях!
Берите и осваивайте SSH, VNC, но если не справитесь, вспомните об этом скрипте. Минус пока один, Ubuntu One будет уметь работать через прокси только в Ubuntu 12.04. А сейчас если между вами и Интернетом прокси, то вы «бреетесь». Но я поглядел с удовольствием, как вы бы прокидывали через прокси — SSH и VNC!
Так что минус не засчитан. Ubuntu 12.04 исправит ситуацию . ждите 26 апреля 2012 года.
Источник
Настройка и оптимизация Ubuntu после установки
В данной статье я постараюсь ответить на вопросы, которые, я думаю, возникают у каждого пользователя, впервые установившего себе GNU/Linux. Я и сам пользуюсь данными ОС только пару лет, и у меня самого возникали подобные вопросы, поэтому, думаю, что смогу немного помочь новичкам разобраться с данными системами. На первый взгляд все кажется сложным и непонятным, я же постараюсь убедить Вас, что это не так. В качестве ОС Linux для начинающих я выбрал Ubuntu, и думаю, что не ошибся, так как этот дистрибутив действительно дружественен к пользователю: его очень легко установить, он имеет удобный графический интерфейс (вне зависимости, будь то Gnome, KDE или Unity), наиболее полная локализация и конечно же Центр приложений, устанавливать софт из которого — дело нажатия одной клавиши мыши. Но после установки системы в ней имеются ряд ненужных на мой взгляд программ и настроек, которые неплохо было бы изменить и дополнить чем то более удобным и функциональным. Этим мы и займемся в этой статье. Какие действия выполнять, а какие — нет это личный выбор каждого пользователя, возможно, Вам пригодится только пара из ниже перечисленных команд, а может быть Вы настроите свой Ubuntu GNU/Linux в точности, как изложено в статье.
Я не буду описывать конкретные настройки для каждой рабочей среды (Gnome, KDE, Unity), а выложу только те настройки, которые не зависят от рабочего окружения и пригодятся всем пользователям.
Все ниже перечисленные команды нужно копировать в терминал. Терминал можно вызвать комбинацией CTRL+ALT+T.
Обновим систему
Для начала обновим список репозиториев и поиск индексов обновленных версий программ, драйверов, ядра и всего прочего:
sudo apt-get update
Теперь, собственно, установим все доступные обновления:
sudo apt-get upgrade
Установим flash, java, аудио- и видео-кодеки:
apt-get install ubuntu-restricted-extras
Теперь перенесем кнопки управления окном (свернуть, развернуть, закрыть) в привычное нам положение — справа, а не слева, как в МАКе:
gconftool-2 —set «/apps/metacity/general/button_layout» —type string «menu:minimize,maximize,close»
Убираем лишний софт:
Удаляем видеоредактор Pitivi:
sudo apt-get remove pitivi
Удаляем клиент мгновенных сообщений Empathy:
sudo apt-get remove empathy empathy-common nautilus-sendto-empathy
Удаляем Клиент микроблогов Gwibber:
sudo apt-get remove gwibber gwibber-service
Если нет необходимости в использовании UbuntuONE (хранение данных на удаленном сервере для доступа к ним из любого места), отключаем и удаляем этот сервис:
sudo apt-get remove python-ubuntuone-client ubuntuone-client python-ubuntuone-storageprotocol ubuntuone-client-gnome rhythmbox-ubuntuone-music-store python-ubuntuone
Если нет необходимости предоставлять кому-то удаленный доступ к СВОЕМУ рабочему столу, отключаем:
sudo apt-get remove vino
Удаляем стандартный клиент удаленного рабочего стола, так как с ним имеются проблемы при подключении к Windows-машинам:
sudo apt-get remove vinagre tsclient rdesktop
И ставим более функциональный клиент RDP Remmina, он позволяет подключаться по RDP к Windows, а так же к чему угодно по SSH:
sudo apt-get install remmina
Предлагаю удалить приложение по очистке системы, так как оно находится в стадии разработки и существенной пользы не несет:
sudo apt-get remove computer-janitor-gtk
Удаляем из системы все, что связано со вспомогательными технологиями, типа экранной лупы:
sudo apt-get remove gnome-accessibility-themes gnome-dictionary gnome-mag at-spi libgail-gnome- module libatspi1.0-0 libgail-common libatk1.0-data libgnome-mag2 espeak-data espeak
Если в вашем компьютере или ноутбуке нет Bluetooth-адаптера и вы не планируете его использовать, удаляем все службы и приложения с этим связанные:
sudo apt-get remove bluez-cups bluez bluez-alsa bluez-gstreamer pulseaudio-module-bluetooth
Поставим приложение gdebi для того, чтобы ставить одиночные .deb пакеты без построения зависимостей:
sudo apt-get install gdebi
Обратите внимание, что после этой процедуры необходимо восстановить соответствие открытие программой gdebi .deb файлов. Наводимся на любой .deb файл, щёлкаем правой клавишей мышки, выбираем в меню Свойства и далее во вкладке «Открывать в программе» выбираем Установщик пакетов Gdebi.
Удалим дефолтный видео проигрыватель, а так же музыкальный проигрыватель, посколю на мой взгляд они не совсем удобны в использовании, а вообще тут решать вам, конечно:
sudo apt-get remove rhythmbox totem totem-common
Взамен ставлю простой и удобный проигрыватель Deadbeef
sudo add-apt-repository ppa:alexey-smirnov/deadbeef
sudo apt-get update
sudo apt-get install deadbeef
А фильмы очень удобно смотреть через VLC:
sudo apt-get install vlc mozilla-plugin-vlc
Ставлю приятную для глаз тему и значки, тут тоже на ваш выбор, можете таким образом поставить любую тему:
sudo add-apt-repository ppa:tiheum/equinox
sudo apt-get update && sudo apt-get install faenza-icon-theme equinox-theme equinox-ubuntu-theme
Включаем отображение дополнительных значков в меню:
gconftool-2 —type boolean —set /desktop/gnome/interface/menus_have_icons true
Включаем отображение дополнительных значков на кнопках:
gconftool-2 —type boolean —set /desktop/gnome/interface/buttons_have_icons true
Ставим утилитку по управлению окружением рабочего стола Compiz:
sudo apt-get install compizconfig-settings-manager
На этом завершим первую часть наших настроек,, полюбуемся на то, что получили на выходе и перезагрузим систему.
Выбор ICQ-клиента
Еще один важный момент при переходе на Ubuntu — выбор ICQ-месседжера для ОС. И так, какой же клиент выбрать? На Windows я привык пользоваться RnQ (в простонародии — крысой). К сожалению, такого клиента под Linux до сих пор нет, так что пришлось искать аналоги. Так же я не исключал возможность запуска крысы на Ubuntu из под Wine, но раз уж мы переходим на Linux, я реширл юзать что-то из линухового. Входящий в стандартный комплект поставки Pidgin не пришелся мне по вкусу, поэтому я остановился на выборе Qutim. Почему: Его интерфейс сильно напоминает Miranda и QIP ранних версий, поэтому он пришелся как нельзя кстати, неперегруженный интерфейс, ну и прочие другие удобства. Рассмотрим 2 способа:
Переходим к процессу установки. Как обычно, запускаем терминал (Ctrl+Alt+T).
1) Добавим в системе источник программы, выполним комманду в терминале:
sudo wget linux.intonet.ru/ubuntu/qutim/hardy.list -O /etc/apt/sources.list.d/qutim.list
Теперь нужно обновить базу пакетов для этого требуется выполнить комманду:
sudo apt-get update
После обновления qutim появится в базе. Теперь установим его:
sudo apt-get install qutim
2)В этом способе рассмотрим, как скомбинировать выполнение сразу нескольких команд, не разделяя их на отдельные шаги. Одной командой добавляем репозиторий, обновляем список пакетов и устанавливаем Qutim. Данный способ предложил хабраюзер ademaro, за что ему отдельное спасибо.
Выполним в терминале:
sudo add-apt-repository ppa:qutim/qutim && apt-get update && apt-get install qutim
Можно добавить смайлы и темы:
sudo apt-get install qutim-emoticons
sudo apt-get install qutim-themes
Это все, установка завершена. Далее можно поиграть с настройками и сделать клиент похожим либо на QIP, либо на Miranda, либо даже на RnQ. Клиент и правда удобен в использовании, так что пользуемся на здоровье.
Теперь установим Skype
Как обычно, устанавливать мы его будем путем добавления Skype — репозитория через терминал. И так, приступим:
Открываем терминал и выполняем команду (Вместо gedit вы можете использовать любой другой текстовый редактор на ваше усмотрение, например, nano):
sudo gedit /etc/apt/sources.list
в появившемся текстовом редакторе дописываем строчку:
deb download.skype.com/linux/repos/debian stable non-free
Пишем в терминале:
sudo apt-get update
и ждём пока обновится информация. Далее выполняем в терминале команду:
sudo apt-get install skype
После установки программу Skype можно найти в меню Приложения > Интернет.
Установка Opera
По умолчанию в Ubuntu в качестве Интернет-обозревателя вмонтирован Firefox. Лично мне он не по нраву, он хоть и легок, но по умолчанию в нем нет некоторых функций, которые доступны в Opera. Конечно, расширить функционал можно, допилив его различными плагинами, однако от этих самиз плагинов он становится весма тяжелым и начинает ощутимо уступать в скорости Опере. Именно поэтому я рекомендую удалить Огнелиса и поставить Оперу. Приступим.
Для начала добавим репозиторий операстов в наш source.list:
deb deb.opera.com/opera stable non-free
Далее добавляем GPG-ключи для обновлений:
wget -O — deb.opera.com/archive.key | sudo apt-key add -sudo apt-get install debian-archive-keyring
Собственно, устанавливаем Opera:
sudo apt-get update
sudo apt-get install opera
Теперь проверяем наличие Opera по пути главное меню/интернет/Opera и запускаем. Принимаем лицензионное соглашение и пользуемся на здоровье.
И да, Firefox больше не нужен:
sudo apt-get remove firefox
Допилим систему
Будет выдавать уведомления о только что подключенных устройствах:
wget download.learnfree.eu/repository/skss/udev-notify-0.1.2-all.deb ;
dpkg -i udev-notify* ;
apt-get install -f ;
Поставим графический редактор Gimp c набором кистей и фильтров:
sudo add-apt-repository ppa:shnatsel/gimp-paint-studio ;
sudo apt-get update ;
sudo apt-get install gimp-paint-studio ;
Добавить в сурс лист…
ppa.launchpad.net/mars-core/ppa/ubuntu natty main
deb-src ppa.launchpad.net/mars-core/ppa/ubuntu natty main
… и поставить игрушку:
apt-get update; apt-get install marsshooter -y
Немного оптимизируем работу ОС.
Команды, начинающиеся с # означают, что требуют прав суперпользователя, для этого перед каждой командой добавляем, как и раньше в статье sudo, либо выполняем в терминале sudo su, что приведет к тому, что все последующие команды будут выполняться от имени суперпользователя, так что бди, аннон.
Настроим, чтобы своп (раздел подкачки) активировался только при полном заполнении физической оперативной памяти:
# gedit /etc/sysctl.conf
Добавьте строку в конец файла: vm.swappiness=0
Таким образом, мы наиболее эффективно будем использовать весь доступный объем оперативной памяти.
Если в системе установлен двух- и более ядерный процессор, то рекомендую выполнить следующее:
# gedit /etc/init.d/rc
найдите CONCURRENCY=none и замените на:
CONCURRENCY=shell
Это существенно добавит вашей системе производительности
Немного ускорим графику, присвоив ей приоритет 20.
# gedit /etc/rc.local
Вставьте это в конец файла перед командой EXIT
sudo renice -n -20 $(pidof X)
При создании данной статьи использовались наработки других авторов, различные блоги, форумы и официальная документация. Поскольку вся эта информация по частям собиралась с различных ресурсов, а я лишь доработал все и собрал воедино, дополнив своими идеями, мне не представляется возможным опубликовать полный список авторов. Так что если кто-то увидел тут свой авторский текст, не нужно рвать волосы и обвинять метя в копипастии, нужно лишь сообщить мне об этом, добавив ссылку на свою статью и я обязательно включу Вас в список авторов.
Материал подготовлен специально для конкурса русскоязычных статей Ubuntu.
Источник