Бомжебук и Linux | Кое-Что О Слонах
В предыдущей части я всё-таки успешно водрузил штатную, “некастомную” винду и смог воспользоваться некоторыми благами цивилизации благодаря механизму Portable Apps.
В заключительной части расскажу про мытарства с Linux. На этом сага о бомжебуке будет закончена. Хотя, может быть, получится “запилить” какой-нибудь аппаратный “мод” охлаждения, ибо соответствующий тред на 4pda весьма вдохновляет.
Как всё начиналось
Однако, винда-виндой, но хотелось большего. А именно – полноценного Linux на “уродце”. Зачем он там вообще – вопрос открытый. Из серии “потому что можем”.
На самом деле довольно мобильный терминал ещё никому не вредил, да и мои давние приседания с Debian на легендарном EEE PC покоя не дают. Как давно это было :). Из очевидных плюсов – 64 битная система, возможность запускать Docker, и даже, если тянет на приключения – Qemu KVM.
Исследование показало, что для Irbis TW52 вполне себе существует вполне настроенный и летучий дистрибутив Xubuntu 19. 04 (там же в треде на 4PDA). И уже проведена фактически вся работа по преднастройке, бери да пользуйся. Более того – все шаги по его подготовке тоже опубликованы, что, в целом, редкость для подобных поделий.
Итак, отправная точка есть.
Окей, Линукс
Хорошие новости. Дистрибутив имеет место быть – бери, да пользуйся. Плохие – дистрибутив всего один, методика “изготовления” флешки довольно сложная, а ещё я не фанат Xubuntu, да и обои там скучные.
Нет, серьезно. Обычный “кейс”, как говорят пидорасы-маркетологи – берём ISO файл, переносим его посекторно на флешку. Так работает у всех. Здесь же требуется какой-то стороннний софт, какие-то приблуды, какое-то вуду. Внешний вид системы довольно чудовищен, хотя и вполне годен для работы.
Что не работает
Сразу о том, что не работает:
- Камера. Их там две, подтыкание модуля video4linux ничем не помогает. Не знаю, может там в конфигурации XOrg накосячено, может быть ещё что-то, ну да бог с ним.
- Звук. Давайте честно – то, как он работает, лучше бы он так не работал. Нет, какое-то плюмканье из динамиков будет, в наушниках даже сносно, но два момента. Во-первых звук не отключается в динамике при включении наушников. Во-вторых он ещё тише, чем в Windows. Злые языки утверждают, что нужно колдунство с GPIO. Но с какими и в какую сторону – история умалчивает. В теории – можно поиграть с параметрами Alsa Mixer, но проще перегрузиться в Windows для просмотра кинохи.
See the future, study the past
Проблему с Linux@AtomZ решали уже несколько лет назад на опять-таки легендарном Asus Transformer. И, надо сказать в массе своей пришли к успеху. А значит, надо обратиться к тем “наработками” и делать не просто ISO-файл, а генератор ISO файлов, который бы позволил шлёпать ISO-файлы на базе Ubuntu (простите, фанаты Arch и Gentoo – вам придётся испытать карусель боли самостоятельно, хотя вы это любите).
Linuxium isorespin
Скромные парни из Австралии запилили шелл-скрипт на 500+ килобайт (!), которому вы можете скормить на вход ubuntu-based исошник, а на выходе получить другой ISO, который уже “заряжен” для работы на “атомном” чипсете.
В ситуации с бомжебуком нам надо сделать несколько ключевых вещей:
- Установить 32бит-версию Grub. Она сможет стартовать 64 битное ядро.
- Доставить пакеты, например для калибровки тач-скрина.
- Доложить несколько файлов – те же настройки поворота экрана и firmware для Silead Touch
И таки да, оно всё это умеет. Плюс к этому оно в силах доставить туда обновленное ядро (на момент написания — 5.5), которое, походу улучшает ситуацию.
mint-tw52
Я тут решил сохранить все приседания в виде репозитария на github. Теперь желающие могут создать свой собственный образ по крайней мере на базе Linux Mint (он мне более по нраву из-за наличия кучи проприетарных драйверов-кодеков, поборники чистоты кода идут нахуй стройными рядами). Там есть README на английском, однако ниже вольный перевод, для тех кто не в силах.
Что с ним делать
Решаем задачу – нам нужно создать загрузочный образ Linux Mint, для того, чтобы хотя бы попробовать всё это на нашем горе-планшете.
Что понадобится
- Виртуальная машина с Ubuntu или не очень виртуальная
- Возможность доставлять пакеты (читай – права root или sudo)
- Гигабайт 10 места на диске, ибо придётся качать туда-сюда ISO-файлы
- git
Подготовка
Клонируем репозитарий
1 | git clone https://github.com/znoxx/mint-tw52 |
Читаем документацию на isorespin и доставляем туда нужные пакеты – утилиты работы с ISO и squashfs
Качаем оригинальный ISO и подкладываем в папку mint-tw52. Открываем mint-tw52.sh
и редактируем строчку:
1 | ISO=linuxmint-19.3-cinnamon-64bit.iso |
Очевидно, меняем этот ISO на скачаный. Дальше нужно убедиться, что у нас последняя версия isorespin.sh
, для этого запускам:
1 | ./isorespin.sh --check |
Если обругало, что мол версия не последняя – идем сюда и как-то выкачиваем обновленную версию.
Тут придется проявить смекалку. Я не знаю почему авторы выкладывают код на гуглодиск.
Генерация
1 | sudo ./mint-tw52.sh |
Ждём, возможно даже не требуется sudo, но я запускал в контейнере от root, так что пусть будет для опредленности. Поглядываем на ошибки – их не должно быть. Если они есть, скорее всего где-то не установлен тот или иной пакет, его нужно доставить.
Запись на USB flash
В отличие от версии с 4PDA для записи достаточно команды dd, как и в оригинальном дистрибутиве. В принципе, можно втыкать в планшет и грузиться. У меня лично загрузка работала через microUSB OTG гнездо.
После загрузки
Вполне вероятно, что после загрузки вы увидите повернутый экран – я столкнулся с этим только на Mint Cinnamon edition и Elementary OS. В циннамоне – нужно просто изловчиться и вызвать настройки дисплея. Там, очевидно, нужно порвернуть. В Elementary у меня что-то не заладилось, поэтому оставлю это просто на суд истории. В MATE и LXDE – всё ок.
Дальше нужно проверить авторотацию и подкрутить звук.
Ротация
В терминале запускаем:
1 | sudo /usr/share/autorotate/rotate.sh |
Дальше вертим планшетом, ротация должна работать. Скрипт можно остановить командой Ctrl-C. После инсталляции с флешки сие нужно добавить в автозагрузку после старта GUI, это уже гуглим сами.
Звук
Тут всё сложнее. Оригинальный скрипт для включения звука найден в глубинах испаноязычных (?) форумов. Изначально он подразумевал скачивание неких патченных исходников и сборку модуля ядра.
Но во-первых модули в ядре 5.5 уже есть, во-вторых это надо было делать через DKMS, а не тяп-ляп один раз, ибо с обновлением ядра всё это нужно “намылить-смыть-повторить”. Поэтому эта часть была безжалостно вымарана.
Итак, чтоб услышать хоть что-то делаем следующие приседания:
Остановим PulseAudio – pulseaudio -k
Перейдем в папку со скриптом – cd /usr/share/es8316
Запускаем sudo . /es8316.sh
– но перед этим нужно убедиться, что доступ в интернет имеется в наличии. Скрипт выкачает UCM файлы и установит их, куда следует.
Дальше нужно запустить обратно PulseAudio – pulseaudio -D
.
Если не стартует – нужно выгрузить (а после установки системы отключить перманентно) модуль snd_hdmi_lpe_audio
.
Звук можно проверять. Возможно потребуетя изменить default output device.
Установка на планшет
Есть проблема – загрузчик Grub не видит вашу microSD (очевидно, что если хочется Dual Boot, а места мало, то ставиться лучше на microSD). Это можно исправить, отрезав около 512 мб от внутреннего SSD планшета. Там будет расположена партиция /boot. rootfs же можно расположить на microSD.
Больше подробностей в этом (моем) посте
Как это все выглядит
Выбор ОС для загрузки
Linux Mint LXDE
На корм коту
В массы
В трубу
- ← Следующий
- Предыдущий →
9 мобильных приложений для изучения программирования
Собрали для вас актуальные мобильные приложения для изучения программирования.
Start Android — уроки программирования
Это приложение для изучения программирования на Android. Вы научитесь создавать Android-приложения с использованием Android Studio. В программе есть много примеров кода на языке Java, разные темы оформления и возможность изменять шрифт. В последней версии также добавлен офлайн-режим, так что отключение интернета обучению не грозит.
- Скачать Start Android.
- Язык учебника — русский.
- Приложение бесплатное, можно заплатить за отключение рекламы.
Программирование игр, создание с нуля (Python 3)
Это приложение для изучения Python рассчитано на новичков. В нём простыми словами объясняются основы программирования: алгоритмы, работа процессора, архитектура игр. Вы научитесь писать простые игры и изучите кроссплатформенную библиотеку Tkinter.
- Скачать приложение в Google Play.
- Язык учебника — русский.
- Для доступа ко всем главам нужно купить приложение.
Encode: Learn to code
Данное Android-приложение позволяет изучить основы программирования на Python, JavaScript, HTML и CSS. Программа содержит много простых текстовых уроков для начинающих. Особенностью приложения является офлайн-режим, который позволяет изучать программирование без интернета.
- Скачать Encode.
- Язык учебника — английский.
- Приложение платное.
Grasshopper: learn to code
Ещё одно мобильное приложение, но теперь для изучения программирования на языке JavaScript, разработанное Google. В 2018 году организация Common Sense Education включила Grasshopper в число лучших обучающих программ.
Уроки представлены в лёгкой игровой форме. Приложение как для детей, так и для тех, кто впервые решил заняться программированием.
- Grasshopper доступен для iOS и Android устройств.
- Обучение на английском языке.
- Приложение полностью бесплатное.
Enki
С Enki можно изучать не только программирование, но и Data Science, блокчейн, кибербезопасность, Git, Linux и многое другое. В этом приложении много контента по разным направлениям. Есть уроки как для начинающих, так и для более опытных пользователей.
Ежедневно программа предлагает проходить пятиминутные тренировки для закрепления информации.
- Enki доступен для iOS и Android устройств.
- Язык учебника — английский.
- Приложение условно бесплатное: для открытия всех курсов и отключения рекламы нужно оформить подписку.
Codeacademy Go
Мобильное приложение для начинающих программистов, с помощью которого можно изучать веб-разработку, Data Science, Python, SQL, HTML & CSS, Java и многое другое.
Codeacademy Go предлагает не только обучение конкретным языкам программирования, но и Skill Paths — роадмапы по нескольким направлениям. Любой урок курса можно пройти в любой момент, не проходя предыдущие.
- Codeacademy Go доступен для iOS и Android устройств.
- Язык учебника — английский.
- Приложение бесплатное, но можно оформить подписку для доступа ко всем курсам и роадмапам.
DataCamp
DataCamp — это сайт и мобильные программы для разработчиков, ориентированные на изучение Data Science.
С его помощью вы узнаете, как учёные по данным собирают информацию, после чего анализируют и визуализируют её.Обучение проходит по трём направлениям: Python, R и SQL. Есть удобный редактор кода с автодополнением.
- DataCamp доступен для Android и iOS.
- Приложение бесплатное, но доступ ко всем курсам только по подписке.
Programming Hero
Мобильное приложение, которое позволяет изучить программирование на Python, HTML, CSS и JavaScript. Программа включает в себя Playground, в котором можно запускать любой код.
Кроме изучения языков программирования в приложении есть курсы по алгоритмам, базам данных, разработке игр, веб-разработке и не только. В процессе обучения вы напишете небольшую игру.
- Мобильное приложение доступно на Android и iOS.
- Обучение на английском языке.
- Приложение бесплатное, но полный доступ к курсам доступен по подписке.
Dcoder, code compiler IDE
Dcoder — это мобильное приложение-компилятор для программистов. Среда разработки поддерживает больше 30 языков программирования.
Основные возможности:
- синхронизация с GitHub и Bitbucket;
- подсветка синтаксиса;
- работа с целыми проектами из нескольких файлов;
- отладка кода;
- лаконичный дизайн.
В приложении есть раздел с задачами которые помогут прокачать ваш скилл в программировании. Кроме того, есть чат с другими разработчиками.
- Приложение доступно на iOS и Android.
- Основной функционал приложения бесплатен, платить нужно только за кастомизацию и отсутствие рекламы.
***
Для тех, кому не хватило, есть предыдущая статья про 10 приложений для изучения программирования.
Реклама на Tproger: найдем для вас разработчиков нужного стека и уровня.
Подробнее
Реклама на tproger.ru
Загрузка
Как использовать команду Linux BIND для установки и настройки DNS
Опубликовано: 30 августа 2021 г. | | на Ашиш Бхарадвадж Мадабхушана (Красная шляпа)
Изображение
Фото Александра Эндрюса на Unsplash
Система доменных имен (DNS) используется для разрешения (преобразования) имен хостов в адреса интернет-протокола (IP) и наоборот. DNS-сервер, также известный как сервер имен 9.0004 сопоставляет IP-адреса с именами хостов или доменными именами.
В этой статье вы изучите основы DNS, от того, как DNS получает IP-адрес и имя хоста, до концепций зон прямого и обратного просмотра. Он также покажет вам, как установить и настроить DNS, определить и отредактировать файлы зон и проверить, может ли DNS разрешить правильный адрес с помощью команд. Если вы новичок в DNS, эта статья поможет вам поиграть с ним в вашей системе, используя базовые конфигурации.
Как работает DNS
Когда клиент запрашивает информацию у сервера имен, он обычно подключается к порту 53, после чего сервер имен разрешает запрошенное имя.
Изображение
(Ашиш Бхарадвадж, CC BY-SA 4.0)Откуда DNS получает IP-адреса?
Вы можете задаться вопросом, как DNS получает IP-адрес соответствующего имени хоста или доменного имени. Как DNS выполняет поиск среди разных IP-адресов и правильно связывает ваше доменное имя? Кто хранит эти сопоставления между доменными именами и IP-адресами?
Рабочий процесс DNS иллюстрирует, как происходит обмен данными в DNS и как он разрешает адреса.
Изображение
(Ашиш Бхарадвадж, CC BY-SA 4.0)- Когда клиент ищет домен
www.example.com
, запрос сначала направляется к распознавателю интернет-провайдера (ISP). Он ответит на запрос пользователя о разрешении доменного имени. - Если IP-адрес не найден на преобразователе, запрос перенаправляется на корневой DNS-сервер, а затем на серверы домена верхнего уровня (TLD). Серверы TLD
- хранят информацию для доменов верхнего уровня, таких как .com или . net .
- Запросы перенаправляются на серверы имен, которым известна подробная информация о доменах и IP-адресах.
- Серверы имен отвечают распознавателю интернет-провайдера, а затем распознаватель отвечает клиенту с запрошенным IP-адресом.
- Если преобразователь не знает IP-адрес, он сохраняет IP-адрес и его домен в кэше для обслуживания будущих запросов.
[ Загрузить сейчас: Руководство системного администратора по автоматизации ИТ. ]
Прямой и обратный поиск
Зона прямого просмотра использует имя домена для поиска IP-адресов, тогда как зона обратного просмотра использует IP-адреса для поиска имени домена.
Изображение
(Ашиш Бхарадвадж, CC BY-SA 4.0)Установка и настройка DNS
BIND — это служба сервера имен, отвечающая за преобразование доменного имени в IP на DNS-серверах на базе Linux.
[root@servera ~] # yum install bind
Пакет BIND предоставляет службу с именем
. Он считывает конфигурацию из файлов /etc/named
и /etc/named.conf
. После установки этого пакета вы можете приступить к настройке DNS.
Настройте файл /etc/named.conf
Сначала добавьте или измените два значения в поле options . Один — это адрес DNS-сервера, а другой — запрос разрешения от до любых .
[root@servera ~] # vim /etc/named.conf порт прослушивания 53 { 127.0.0.1; 192.168.25.132; }; разрешить запрос { локальный; Любые; };
Вот значения из вышеуказанного файла:
- 192.168.25.132 — адрес DNS-сервера
- любой — соответствует каждому IP-адресу
Определение прямой и обратной зон
Определение прямой и обратной зон в /etc/named.conf
или /etc/named.rfc1912.zones
(вы можете определить зоны в любом из этих файлов). В этом примере я добавляю сведения об определении зоны в файл /etc/named. rfc1912.zones
.
[root@servera ~] # vim /etc/named.rfc1912.zones зона "example.com" IN { type master; файл "example.forward.zone"; разрешить обновление {нет; }; }; зона "25.168.192.in-addr.arpa" IN { тип мастер; файл "example.reverse.zone"; разрешить обновление {нет; }; };
Создать файлы прямой и обратной зоны
Вам также необходимо создать файлы прямой и обратной зоны в /var/имя каталога
.
Примечание : По умолчанию файл named.conf
включает каталог /var/named
для проверки файлов зоны. Примеры файлов зон named.localhost
и named.loopback
создаются во время установки пакета BIND.
[root@servera ~] # vim /var/named/example.forward.zone
Изображение
(Ашиш Бхарадвадж, CC BY-SA 4.0)[root@servera ~] # vim /var/named/example.reverse.zone
Изображение
(Ашиш Бхарадвадж, CC BY-SA 4.0)Добавьте IP-адрес сервера имен в /etc/resolv.
conf Во-первых, вы должны отключить обработку DNS с помощью NetworkManager, поскольку он динамически обновляет файл /etc/resolv.conf
с настройками DNS. из его активных профилей подключения. Чтобы отключить это и разрешить ручное редактирование /etc/resolv.conf
, вы должны создать файл (например, 90-dns-none.conf
) от имени пользователя root в /etc/NetworkManager/conf.d /
каталог, который содержит следующее:
[основной] dns=none
Сохраните файл и перезагрузите (перезапустите) NetworkManager.
# systemctl reload NetworkManager
После перезагрузки NetworkManager он не будет обновлять /etc/resolv.conf
. Теперь вы можете вручную добавить IP-адрес сервера имен в файл /etc/resolv.conf
.
[root@servera ~] # vim /etc/resolv.conf # Генерируется NetworkManager поиск localdomain example.com nameserver 192.168.25.132
[ Будьте готовы на случай, если что-то пойдет не так. Прочтите Введение в устранение неполадок DNS. ]
Запуск/перезапуск и включение именованной службы
Если именованная служба
не запущена или отключена, запустите и включите ее. Если он уже активен (работает) и вы выполнили все эти настройки, вам необходимо перезапустить службу, чтобы внести изменения.
[root@servera ~] # статус systemctl named.service [root@servera ~] # запуск systemctl named.service [root@servera ~] # systemctl включить named.service [root@servera ~] # перезапуск systemctl named.service
Проверьте разрешение имен DNS
Вы установили пакет BIND, настроили файлов с именами
, создали зоны поиска и перезапустили службу, чтобы настройки вступили в силу. Теперь используйте команды nslookup
и dig
, чтобы проверить, правильно ли работает DNS, и убедиться, что вы получаете ожидаемые результаты.
-
nslookup
— это программа для запроса серверов доменных имен в Интернете. -
копать
— это инструмент для опроса DNS-серверов. Он выполняет поиск DNS и отображает ответы, возвращаемые сервером имен.
Запрос с помощью nslookup
[root@servera ~] # nslookup servera.example.com Сервер: 192.168.25.132 Адрес: 192.168.25.132#53 Имя: servera.example.com Адрес: 192.168.25.132 [root@servera ~] # nslookup 192.168.25.132 132.25.168.192.in-addr.arpa name = servera.example.com.
Запрос с помощью dig
Вот прямой поиск, где DNS отвечает 192.168.11.132 в качестве IP-адреса для servera.example.com :
[root@servera ~] # dig servera.example.com ...вывод усечен... ;; РАЗДЕЛ ОТВЕТОВ: servera.example.com. 86400 В А 192.168.25.132 ;; ОТДЕЛ ПОЛНОМОЧИЙ: пример.com. 86400 В NS servera.example.com. ...вывод усечен...
В этом примере показан обратный поиск, где DNS-сервер отвечает servera.example.com в качестве доменного имени для 192. 168.25.132 :
[root@servera ~] # dig -x 192.168.25.132 ...вывод усечен... ;; РАЗДЕЛ ОТВЕТОВ: 132.25.168.192.in-addr.arpa. 86400 В PTR servera.example.com. ;; ОТДЕЛ ПОЛНОМОЧИЙ: 25.168.192.in-addr.arpa. 86400 В NS servera.example.com. ;; ДОПОЛНИТЕЛЬНЫЙ РАЗДЕЛ: servera.example.com. 86400 В А 192.168.25.132 ...вывод усечен...
[ Сеть выходит из-под контроля? Ознакомьтесь с бесплатной книгой «Сетевая автоматизация для всех» от Red Hat. ]
Подведение итогов
В этой статье вы узнали, что такое DNS и как он работает. Кроме того, теперь вы знаете, что такое зоны прямого и обратного просмотра и как они работают. Вы также узнали, как установить пакет BIND, который отвечает за настройку DNS в системе и настройку назвал
файлов и зон поиска. Наконец, вы выучили две команды, nslookup
и dig
, для запроса разрешений DNS.
Ознакомьтесь со статьями по теме Включить системного администратора
Изображение
Настройка DNS с помощью Ansible
Самый простой способ научиться автоматизации Ansible — погрузиться и попробовать.
Изображение
Введение в устранение неполадок DNS
В этой первой части двухчастного введения в устранение неполадок DNS вы узнаете, как найти проблему.
Изображение
Устранение неполадок DNS с проверкой записей
В этой второй части серии статей по устранению неполадок DNS, состоящей из двух частей, вы получите больше информации о DNS и ее движущихся частях, а также о том, что делать, когда они не перемещаются.
Темы: Сеть DNS
Как найти IP-адрес моего DNS-сервера в Linux
DNS ( Система доменных имен ) является основным помощником нескольких сетевых технологий, таких как почтовые серверы, просмотр Интернета и потоковые службы, например. Netflix и Spotify среди прочих.
Он работает на специальном компьютере, называемом DNS-сервером, который хранит в базе данных запись нескольких общедоступных IP-адресов вместе с соответствующими им именами хостов, чтобы разрешать или преобразовывать имена хостов в IP-адреса по запросу пользователя.
Читайте также : 4 способа найти общедоступный IP-адрес сервера в терминале Linux
Это сделано для того, чтобы нам не нужно было запоминать IP-адреса различных веб-сайтов, которые мы посещаем.
Хотя есть несколько вещей, которые мы можем обсудить на DNS-серверах, таких как перенаправление и предотвращение атак вредоносных программ, сегодня мы сосредоточимся на том, как узнать IP-адрес вашего собственного DNS-сервера.
Существует несколько способов проверить это в зависимости от используемой операционной системы, но Linux, BSD и Unix-подобные системы используют один и тот же метод, поэтому давайте начнем с них.
Как найти IP-адрес моего DNS-сервера
1. Чтобы узнать IP-адрес вашего DNS-сервера, используйте следующую команду cat или команду less.
$ кошка /etc/resolv.conf ИЛИ ЖЕ $ меньше /etc/resolv.conf
2. Другой способ — использовать следующую команду grep.
$ grep "сервер имен" /etc/resolv.conf сервер имен 109.78.164.20
Здесь сервер имен 109.78.164.20 — это IP-адрес сервера имен в так называемой точечной нотации — формате, который приложения на вашей рабочей станции используют для маршрутизации DNS.
Как найти IP-адрес DNS-сервера моего веб-сайта
3. Чтобы узнать IP-адрес DNS-сервера веб-сайта, вы можете использовать следующую команду dig.
$ копать tecmint.com
Пример вывода
; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.68.rc1.el6_10.1 <<>> tecmint.com ;; глобальные параметры: +cmd ;; Получил ответ: ;; ->>HEADER<<- код операции: QUERY, статус: NOERROR, id: 30412 ;; флаги: qr rd ra; ЗАПРОС: 1, ОТВЕТ: 2, АВТОРИЗАЦИЯ: 0, ДОПОЛНИТЕЛЬНО: 0 ;; РАЗДЕЛ ВОПРОСОВ: ;tecmint.com. В ;; РАЗДЕЛ ОТВЕТОВ: tecmint.com. 21 В А 204.45.67.203 tecmint.com. 21 В А 204.45.68.203 ;; Время запроса: 0 мс ;; СЕРВЕР: 209.74.194.