Showing posts with label Сервер. Show all posts
План перехода Ubuntu на оболочку Unity 8 и дисплейный сервер Mir
Компания Canonical поделилась планами перевода Ubuntu на пользовательскую оболочку Unity 8 и новый графический стек на базе дисплейного сервера Mir и Qt5. Первым LTS-выпуском, предлагающим по умолчанию окружение Unity 8 станет Ubuntu 16.04, который выйдет в апреле 2016 года. До этого времени будет обеспечен плавный переход на новую оболочку, при котором одновременно будут сосуществовать сборки на основе Unity 7 и Unity 8.
В выпусках Ubuntu 14.10 и 15.04 окружение Unity 7 будет предлагаться по умолчанию, в то время как сборка с Unity 8 будет постепенно стабилизироваться и доводиться до приемлемой функциональности. Выпуск 15.10 станет переломным моментом, в котором, если всё пойдёт по плану, по умолчанию будет предложена сборка с Unity 8, а сборка с Unity 7 будет оставлена в качестве опции. В Ubuntu 16.04 LTS поддержка опциональной сборки с Unity 7 будет сохранена, т.е. поддержка Unity 7 продлится как минимум до апреля 2021 года.
Для обеспечения качества Unity 8 будут применяться средства непрерывной интеграции, предварительного рецензирования и автоматизированного тестирования. Во время разработки Unity 8 графический стек на основе Unity 7, GTK+ и Compiz будет развиваться в режиме сопровождения, т.е. в основном работа ограничится исправлением ошибок и добавлением мелких улучшений, что положительно скажется на качестве и стабильности Unity 7 в будущих выпусках Ubuntu.
Из особенностей нового окружения на базе Unity 8 отмечается:
* Приложения отделены от обновлений операционной системы. Если при традиционном подходе, новые версии программ поставляются в рамках нового выпуска Ubuntu, то новый подход подразумевает непрерывный цикл обновлений пользовательских приложений. Т.е. новые версии программ будут доставляться пользователю по мере готовности таких программ, без ожидания подготовки нового выпуска всего дистрибутива;
* Изоляция приложений. Если ранее приложение имело доступ ко всем пользовательским данным, то для нового формата пакетов Click применяется система прав доступа к отдельным ресурсам с получением подтверждения полномочий от пользователя. Разрешения запрашиваются не при установке приложения, а непосредственно в момент выполнения операций, требующих особого внимания пользователя. По умолчанию, каждое приложение, установленное из каталога-магазина и поставляемое в формате Click, имеет доступ только к своим директориям и данным. Все сторонние данные запрашиваются через обращение с использованием прослойки Trusted Helpers. Изоляция осуществляется при помощи AppArmor. Запрос подтверждения формируется при каждом обращении программы к приватным данным, но для того чтобы избежать многократных подтверждений одной и той же операции предусмотрен механизм кэширования принятых решений;
* Полноценный SDK для написания приложений для Ubuntu, позволяющий создавать универсальные программы, работающие как на смартфонах, так и на настольных системах. В состав SDK входят средства для разработки приложений с использованием Qt/QML, компоненты для разработки универсальных приложений на базе технологий HTML5, основанные на фреймворке Apache Cordova, инструменты для создания пакетов Click, которые могут быть установлены пользователем в один клик без манипуляций с подключением репозиториев, инструменты для обеспечения интеграции со специфичными для Ubuntu элементами инфраструктуры (Launchpad, Bazaar, PPA, Software Center) и такими системными компонентами как пользовательская оболочка Unity и система изоляции AppArmor.
http://www.opennet.ru/
Оригинал статьи: http://mhall119.com/2014/10/unity-8-desktop/
В выпусках Ubuntu 14.10 и 15.04 окружение Unity 7 будет предлагаться по умолчанию, в то время как сборка с Unity 8 будет постепенно стабилизироваться и доводиться до приемлемой функциональности. Выпуск 15.10 станет переломным моментом, в котором, если всё пойдёт по плану, по умолчанию будет предложена сборка с Unity 8, а сборка с Unity 7 будет оставлена в качестве опции. В Ubuntu 16.04 LTS поддержка опциональной сборки с Unity 7 будет сохранена, т.е. поддержка Unity 7 продлится как минимум до апреля 2021 года.
Для обеспечения качества Unity 8 будут применяться средства непрерывной интеграции, предварительного рецензирования и автоматизированного тестирования. Во время разработки Unity 8 графический стек на основе Unity 7, GTK+ и Compiz будет развиваться в режиме сопровождения, т.е. в основном работа ограничится исправлением ошибок и добавлением мелких улучшений, что положительно скажется на качестве и стабильности Unity 7 в будущих выпусках Ubuntu.
Из особенностей нового окружения на базе Unity 8 отмечается:
* Приложения отделены от обновлений операционной системы. Если при традиционном подходе, новые версии программ поставляются в рамках нового выпуска Ubuntu, то новый подход подразумевает непрерывный цикл обновлений пользовательских приложений. Т.е. новые версии программ будут доставляться пользователю по мере готовности таких программ, без ожидания подготовки нового выпуска всего дистрибутива;
* Изоляция приложений. Если ранее приложение имело доступ ко всем пользовательским данным, то для нового формата пакетов Click применяется система прав доступа к отдельным ресурсам с получением подтверждения полномочий от пользователя. Разрешения запрашиваются не при установке приложения, а непосредственно в момент выполнения операций, требующих особого внимания пользователя. По умолчанию, каждое приложение, установленное из каталога-магазина и поставляемое в формате Click, имеет доступ только к своим директориям и данным. Все сторонние данные запрашиваются через обращение с использованием прослойки Trusted Helpers. Изоляция осуществляется при помощи AppArmor. Запрос подтверждения формируется при каждом обращении программы к приватным данным, но для того чтобы избежать многократных подтверждений одной и той же операции предусмотрен механизм кэширования принятых решений;
* Полноценный SDK для написания приложений для Ubuntu, позволяющий создавать универсальные программы, работающие как на смартфонах, так и на настольных системах. В состав SDK входят средства для разработки приложений с использованием Qt/QML, компоненты для разработки универсальных приложений на базе технологий HTML5, основанные на фреймворке Apache Cordova, инструменты для создания пакетов Click, которые могут быть установлены пользователем в один клик без манипуляций с подключением репозиториев, инструменты для обеспечения интеграции со специфичными для Ubuntu элементами инфраструктуры (Launchpad, Bazaar, PPA, Software Center) и такими системными компонентами как пользовательская оболочка Unity и система изоляции AppArmor.
http://www.opennet.ru/
Оригинал статьи: http://mhall119.com/2014/10/unity-8-desktop/
Tuesday, 5 July 2016
Posted by israelsexyhot
Сервер сетевой загрузки в среде Linux
Если вы системный администратор, либо очень часто сталкиваетесь с ремонтом ПК, наверняка встречали ситуации когда необходимо реанимировать систему, восстановить данные, разбить жесткий диск на разделы, исправить загрузчик, или произвести диагностику железа. А если необходимо установить операционную систему не на один компьютер, а на 10 или более? Что делать если в ПК отсутствует привод CD/DVD, а флеш карты под рукой не оказалось в настоящий момент? Что делать если мы хотим работать с системой через тонкий клиент к примеру с дистрибутивами Tails или Kali linux? В этом случае нам поможет сервер сетевой загрузки.
Итак приступим.
Имеем:
1. Чистую, предустановленную ОС Ubuntu 14.04;
2. 2 сетевые карты: eth0 — смотрящая в интернет и eth1- смотрящая в
локальную сеть.
Хотим получить:
Сервер сетевой загрузки на базе DNS, DHCP и TFTP сервера dnsmasq
! Все команды необходимо выполнять с привилегиями root:
sudo su
Обновляемся:
# apt-get update -y; apt-get upgrade -y; apt-get dist-upgrade -y
Теперь необходимо отредактировать сетевые интерфейсы. Это можно
сделать при помощи встроенного редактора nano.
# nano /etc/network/interfaces
Приведем конфиг к следующему виду:
auto eth0
iface eth0 inet static
address 172.18.0.106
netmask 255.255.240.0
gateway 172.18.0.1
dns-nameservers 172.18.0.1 208.67.222.222
auto eth1
iface eth1 inet static
address 192.168.31.1
netmask 255.255.255.0
post-up /etc/nat
! Внимание, если eth0 получает адрес от DHCP, необходимо это указать:
auto eth0
iface eth0 inet dhcp
auto eth1
iface eth1 inet static
address 192.168.31.1
netmask 255.255.255.0
post-up /etc/nat
Сохраним настройки сетевых интерфейсов при помощи комбинации клавиш Ctrl+O и выходим из nano Ctrl+X.
Теперь необходимо перезапустить сеть:
# service networking restart
Далее нам необходима технология NAT. Настройку NAT мы будем
осуществлять при помощи утилиты iptables.
NAT (от англ. Network Address Translation — «преобразование сетевых
адресов») — это механизм в сетях TCP/IP, позволяющий преобразовывать IP-адреса транзитных пакетов. Также имеет названия IP Masquerading, Network Masquerading и Native Address Translation.
IPTables — утилита командной строки, является стандартным интерфейсом, управления работой межсетевого экрана (брандмауэра) netfilter для ядер Linux.
Создадим файл:
# touch /etc/nat && nano nat
Впишем следующие правила для iptables:
#!/bin/sh
#Включаем форвардинг пакетов
echo 1 > /proc/sys/net/ipv4/ip_forward
#Разрешаем траффик на lo
iptables -A INPUT -i lo -j ACCEPT
#Разрешаем доступ из внутренней сети наружу
iptables -A FORWARD -i eth1 -o eth0 -j ACCEPT
#Включаем NAT
iptables -t nat -A POSTROUTING -o eth0 -s 192.168.31.0/24 -j MASQUERADE
#Разрешаем ответы из внешней сети
iptables -A FORWARD -i eth0 -m state --state ESTABLISHED,RELATED -j ACCEPT
#Запрещаем доступ снаружи во внутреннюю сеть
iptables -A FORWARD -i eth0 -o eth1 -j REJECT
Сохраним наши правила CTRL+O
Дадим нашему файлу право на исполнение:
# chmod +x /etc/nat; reboot
Для раздачи сетевых адресов, DNS, TFTP сервера установим dnsmasq.
Dnsmasq — легковесный и быстроконфигурируемый DNS-, DHCP- и TFTP
сервер, предназначенный для обеспечения доменными именами и связанными с ними сервисами небольшие сети. Может обеспечивать именами локальные машины, которые не имеют глобальных DNS-записей. DHCP-сервер интегрирован с DNS-сервером и даёт машинам с IP-адресом доменное имя, сконфигурированное раннее в конфигурационном файле. Поддерживает привязку IP-адреса к компьютеру или автоматическую настройку IP-адресов из заданного диапазона и BOOTP для сетевой загрузки бездисковых машин.
# apt-get install dnsmasq
Начнем редактирование /etc/dnsmasq.conf
# nano /etc/dnsmasq.conf
listen-address=127.0.0.1, 192.168.31.1 - # Указывает какую подсеть будет слушать dnsmasq
dhcp-range=192.168.31.100,192.168.31.199,255.255.255.0,12h # Указывает диапозон выдаваемых ip адресов и срок их аренды
interface=eth1 - # Интерфейс который будет обслуживать dnsmasq
server=8.8.8.8 - # DNS вышестоящих серверов в данном случае google
enable-tftp - # Активировать TFTP сервер
tftp-root=/home/tftpboot - # Корневой каталог для него
dhcp-boot=pxelinux.0 - # Загрузчик который будет отдаваться по сети
Перезапустим dnsmasq:
# service dnsmasq restart
Если всё настроено правильно при подключении локальных машин в сеть
192.168.31.0/24 машины должны получить сетевые адреса и иметь
возможность пользоваться интернетом.
Создадим рабочие директории:
# sudo mkdir -p /home/tftpboot/images/
# sudo mkdir /home/tftpboot/pxelinux.cfg
Перезапустим серис:
# sudo service dnsmasq restart
Теперь нам необходимо получить загрузочные программы из проекта syslinux.
SYSLINUX Project — набор загрузчиков ядра Linux (автор H. Peter Anvin),
состоит из нескольких отдельных загрузчиков, самым известным из которых является isolinux. В их число входит и загрузчик syslinux, давший название всему проекту.
# cd /tmp; wget http://www.kernel.org/pub/linux/utils/boot/syslinux/syslinux-4.05.tar.gz
! Существуют более поздние стабильные версии syslinux, но почему то у меня завелось именно с этой.
Установим Midnight Commander и запустим его:
Midnight Commander (mc, ми́днайт-кома́ндер, «полуночный командир») —
один из файловых менеджеров с текстовым интерфейсом типа Norton
Commander для UNIX-подобных операционных систем, а также Microsoft
Windows и Windows NT, OS/2, Mac OS X (но не Mac OS 9).
# apt-get install mc -y; mc; exit
Входим в скачанный архив, просто переместив выделение к нему и нажав
Enter. Из него в директорию /home/tftpboot/ надо скопировать несколько
файлов — pxelinux.0 из папки /core, menu.c32 из /com32/menu и memdisk из одноимённого каталога.
Редактируем default:
sudo nano /home/tftpboot/pxelinux.cfg/default
Запишем в этот файл следующие строки:
DEFAULT menu.c32
TIMEOUT 600
MENU TITLE -=My netboot server=-
LABEL HDDBoot
MENU LABEL Local Boot
MENU DEFAULT
LOCALBOOT 0
LABEL Memtest86+
MENU LABEL Memtest86+
KERNEL images/memtest
label Victoria
kernel memdisk
initrd images/viki.iso
APPEND iso raw
Сохраним файл при помощи Ctrl+O и закроем Ctrl+X.
Скачаем образы популярных программ memtest86 для тестирования
оперативной памяти и Victoria для тестирования жесткого диска на наличие поврежденных секторов по следующей ссылке:
https://cloud.mail.ru/public/Mv73/z2UZQcGQ9
Достаем из архива эти 2 файла и помещаем в директорию home/tftpboot/images/ на нашем сервере. Сделать это можно при помощи программы WinScp не буду заострять на этом внимание. Перезапускаемся командой:
# sudo reboot.
Теперь если на клинской машине в BIOS включена опция PXE boot и мы указали загрузку с PXE, то при старте компьютера появится меню нашей сетевой загрузки.
! Образы Виктории и Memtest86 можно так же скачать на официальных сайтах этих программ:
http://www.memtest.org/
http://hdd-911.com/
На этом первая часть статьи заканчивается. Вторым номером будет загрузка по сети linux LiveCD и windows PE дистрибутивов.
При написании статьи использовались материалы по следующим ссылкам:
http://www.3dnews.ru/workshop/625306
P.S. Будут вопросы, задавайте в комментариях, с удовольствием отвечу.
Автор статьи Дмитрий Бобриков.
Удачи.
Итак приступим.
Имеем:
1. Чистую, предустановленную ОС Ubuntu 14.04;
2. 2 сетевые карты: eth0 — смотрящая в интернет и eth1- смотрящая в
локальную сеть.
Хотим получить:
Сервер сетевой загрузки на базе DNS, DHCP и TFTP сервера dnsmasq
! Все команды необходимо выполнять с привилегиями root:
sudo su
Обновляемся:
# apt-get update -y; apt-get upgrade -y; apt-get dist-upgrade -y
Теперь необходимо отредактировать сетевые интерфейсы. Это можно
сделать при помощи встроенного редактора nano.
# nano /etc/network/interfaces
Приведем конфиг к следующему виду:
auto eth0
iface eth0 inet static
address 172.18.0.106
netmask 255.255.240.0
gateway 172.18.0.1
dns-nameservers 172.18.0.1 208.67.222.222
auto eth1
iface eth1 inet static
address 192.168.31.1
netmask 255.255.255.0
post-up /etc/nat
! Внимание, если eth0 получает адрес от DHCP, необходимо это указать:
auto eth0
iface eth0 inet dhcp
auto eth1
iface eth1 inet static
address 192.168.31.1
netmask 255.255.255.0
post-up /etc/nat
Сохраним настройки сетевых интерфейсов при помощи комбинации клавиш Ctrl+O и выходим из nano Ctrl+X.
Теперь необходимо перезапустить сеть:
# service networking restart
Далее нам необходима технология NAT. Настройку NAT мы будем
осуществлять при помощи утилиты iptables.
NAT (от англ. Network Address Translation — «преобразование сетевых
адресов») — это механизм в сетях TCP/IP, позволяющий преобразовывать IP-адреса транзитных пакетов. Также имеет названия IP Masquerading, Network Masquerading и Native Address Translation.
IPTables — утилита командной строки, является стандартным интерфейсом, управления работой межсетевого экрана (брандмауэра) netfilter для ядер Linux.
Создадим файл:
# touch /etc/nat && nano nat
Впишем следующие правила для iptables:
#!/bin/sh
#Включаем форвардинг пакетов
echo 1 > /proc/sys/net/ipv4/ip_forward
#Разрешаем траффик на lo
iptables -A INPUT -i lo -j ACCEPT
#Разрешаем доступ из внутренней сети наружу
iptables -A FORWARD -i eth1 -o eth0 -j ACCEPT
#Включаем NAT
iptables -t nat -A POSTROUTING -o eth0 -s 192.168.31.0/24 -j MASQUERADE
#Разрешаем ответы из внешней сети
iptables -A FORWARD -i eth0 -m state --state ESTABLISHED,RELATED -j ACCEPT
#Запрещаем доступ снаружи во внутреннюю сеть
iptables -A FORWARD -i eth0 -o eth1 -j REJECT
Сохраним наши правила CTRL+O
Дадим нашему файлу право на исполнение:
# chmod +x /etc/nat; reboot
Для раздачи сетевых адресов, DNS, TFTP сервера установим dnsmasq.
Dnsmasq — легковесный и быстроконфигурируемый DNS-, DHCP- и TFTP
сервер, предназначенный для обеспечения доменными именами и связанными с ними сервисами небольшие сети. Может обеспечивать именами локальные машины, которые не имеют глобальных DNS-записей. DHCP-сервер интегрирован с DNS-сервером и даёт машинам с IP-адресом доменное имя, сконфигурированное раннее в конфигурационном файле. Поддерживает привязку IP-адреса к компьютеру или автоматическую настройку IP-адресов из заданного диапазона и BOOTP для сетевой загрузки бездисковых машин.
# apt-get install dnsmasq
Начнем редактирование /etc/dnsmasq.conf
# nano /etc/dnsmasq.conf
listen-address=127.0.0.1, 192.168.31.1 - # Указывает какую подсеть будет слушать dnsmasq
dhcp-range=192.168.31.100,192.168.31.199,255.255.255.0,12h # Указывает диапозон выдаваемых ip адресов и срок их аренды
interface=eth1 - # Интерфейс который будет обслуживать dnsmasq
server=8.8.8.8 - # DNS вышестоящих серверов в данном случае google
enable-tftp - # Активировать TFTP сервер
tftp-root=/home/tftpboot - # Корневой каталог для него
dhcp-boot=pxelinux.0 - # Загрузчик который будет отдаваться по сети
Перезапустим dnsmasq:
# service dnsmasq restart
Если всё настроено правильно при подключении локальных машин в сеть
192.168.31.0/24 машины должны получить сетевые адреса и иметь
возможность пользоваться интернетом.
Создадим рабочие директории:
# sudo mkdir -p /home/tftpboot/images/
# sudo mkdir /home/tftpboot/pxelinux.cfg
Перезапустим серис:
# sudo service dnsmasq restart
Теперь нам необходимо получить загрузочные программы из проекта syslinux.
SYSLINUX Project — набор загрузчиков ядра Linux (автор H. Peter Anvin),
состоит из нескольких отдельных загрузчиков, самым известным из которых является isolinux. В их число входит и загрузчик syslinux, давший название всему проекту.
# cd /tmp; wget http://www.kernel.org/pub/linux/utils/boot/syslinux/syslinux-4.05.tar.gz
! Существуют более поздние стабильные версии syslinux, но почему то у меня завелось именно с этой.
Установим Midnight Commander и запустим его:
Midnight Commander (mc, ми́днайт-кома́ндер, «полуночный командир») —
один из файловых менеджеров с текстовым интерфейсом типа Norton
Commander для UNIX-подобных операционных систем, а также Microsoft
Windows и Windows NT, OS/2, Mac OS X (но не Mac OS 9).
# apt-get install mc -y; mc; exit
Входим в скачанный архив, просто переместив выделение к нему и нажав
Enter. Из него в директорию /home/tftpboot/ надо скопировать несколько
файлов — pxelinux.0 из папки /core, menu.c32 из /com32/menu и memdisk из одноимённого каталога.
Редактируем default:
sudo nano /home/tftpboot/pxelinux.cfg/default
Запишем в этот файл следующие строки:
DEFAULT menu.c32
TIMEOUT 600
MENU TITLE -=My netboot server=-
LABEL HDDBoot
MENU LABEL Local Boot
MENU DEFAULT
LOCALBOOT 0
LABEL Memtest86+
MENU LABEL Memtest86+
KERNEL images/memtest
label Victoria
kernel memdisk
initrd images/viki.iso
APPEND iso raw
Сохраним файл при помощи Ctrl+O и закроем Ctrl+X.
Скачаем образы популярных программ memtest86 для тестирования
оперативной памяти и Victoria для тестирования жесткого диска на наличие поврежденных секторов по следующей ссылке:
https://cloud.mail.ru/public/Mv73/z2UZQcGQ9
Достаем из архива эти 2 файла и помещаем в директорию home/tftpboot/images/ на нашем сервере. Сделать это можно при помощи программы WinScp не буду заострять на этом внимание. Перезапускаемся командой:
# sudo reboot.
Теперь если на клинской машине в BIOS включена опция PXE boot и мы указали загрузку с PXE, то при старте компьютера появится меню нашей сетевой загрузки.
! Образы Виктории и Memtest86 можно так же скачать на официальных сайтах этих программ:
http://www.memtest.org/
http://hdd-911.com/
На этом первая часть статьи заканчивается. Вторым номером будет загрузка по сети linux LiveCD и windows PE дистрибутивов.
При написании статьи использовались материалы по следующим ссылкам:
http://www.3dnews.ru/workshop/625306
P.S. Будут вопросы, задавайте в комментариях, с удовольствием отвечу.
Автор статьи Дмитрий Бобриков.
Удачи.

