Показаны сообщения с ярлыком linux. Показать все сообщения
Показаны сообщения с ярлыком linux. Показать все сообщения

суббота, 1 февраля 2014 г.

Пингвины с чёткими яблоками или ставим Ubuntu на Macbook Pro Retina


2 года успешно пользовался макбуком 2010ого года c ubuntu 12.04, но у него со временем стал быстро садиться аккумулятор, пришло время поменять его на новенький Macbook Pro Late 2013. Подобные извращения люди уже описывали, но как-то они не везде сошлись с моим опытом, поэтому решил им поделиться. Этот способ не убивает MacOS, можно грузиться и в неё.

Ставим загрузчик

Сначала я прочитал статью, где используется стандартный макбуковский загрузчик, но там много магии, не особенно подробно описанной, у меня было мало времени(все-таки ноутбук нужен для работы, а не чтобы ставить на него линукс неделями), поэтому я плюнул и пошёл проверенным методом, который работал с предыдущим устройством. А именно поставил rEFInd. Самый простой(и рекомендованный его разработчиком) способ установки это из макоси.

Качаем binary zip file отсюда

Распаковываем, открываем консоль, запускаем install.sh

$ ./install.sh
Not running as root; attempting to elevate privileges via sudo....
Password:
Installing rEFInd on OS X....
Installing rEFInd to the partition mounted at '/'
Copied rEFInd binary files

Copying sample configuration file as refind.conf; edit this file to configure
rEFInd.

Installation has completed successfully.

Берём нужный образ и пишем его на флешку

В этой версии макбука, загрузчик умеет грузить обычный убунтовый образ с флешки(для этого после включения нужно держать alt), поэтому лучше качать его, а не *-mac вариант.

Люди пишут, что у них всё было хорошо с 13.10, но у меня почему-то нет. Проблемы были с драйвером видеоадаптера и при загрузке в установщик или liveCD режим, изображение было во-первых очень мелкое(retina же!), во-вторых с какими жуткими искажениями цветов и самого изображения. Параметрами ядра при загрузке за короткое время мне это исправить не удалось(читал тут), но было понятно, что проблема в драйвере, а драйвер в ядре, поэтому стоит попробовать ядро посвежее. Чтобы не мелочиться, решил попробовать 14.04(если вы читаете это через 5 лет, то тогда было полгода до релиза). Качал отсюда, вариант PC amd64. И о чудо, тут всё работало. Практически. :-)

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

Образ на флешку можно ставить через unetbootin как-то так:

Собственно установка

Дальше установка как обычно, отрезаем место от раздела макоси, разбиваем по вкусу, grub ставим в тот же раздел, где точка монтирования /.(вообще у меня не спрашивал, видимо нынешние установщики делают так по дефолту). Перезагружаемся, выбираем в rEFInd вновь появившийся пункт меню и загружаемся в новую систему.

Постустановка и впечатления

Проверял немного, работает wifi(c проприетарными драйверами bcmwl-kernel-sources), засыпает и просыпается от крышки, звук есть. Поставил awesome, накатил свои конфиги и наступило счастье. :-) Сегодня замерил батарею, в умеренном режиме(немного торрентов, немного видео, почти всё время музыка, браузер и wifi) проработал 6,5 часов, осталось 7 процентов.

Зачем это?!

Ко всем подобным постам самый популярный вопрос: "а зачем?!". Отвечу заранее. Макбук с точки зрения железа мне нравится. Экран, клавиатура, тачпад, достаточно мощная конфигурация при приличном времени работы. Макось мне не то, чтобы не нравится, но у меня уже есть настроенная среда, которую я подпиливал под себя последние несколько лет, привык к ней и мне в ней удобно и всё нравится. Я пробовал настроить макось в том же ключе, быстро у меня не получилось, а много времени на это жалко. Ломать свои привычки я не хочу.

Еще варианты/примеры:


Продолжение...


четверг, 10 октября 2013 г.

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


У меня задача была такой: есть несколько школьников(до 10 человек) со своими ноутбуками. На них винда разных версий и степени рабочести. Хотелось как-то задешево сделать им всем одинаковое рабочее окружение на их компьютерах, ничего им не сломав. И совсем хорошо потом иметь между этими окружениями какую-то синхронизацию. Решал я это так:
Вообще ничего сверъестественного я не делал, пост больше как подтверждение возможности реализации такой идеи.
А что делал-то:
1. Купил флешки kingston на 8GB.
2. Поставил на одну из них Xubuntu через VirtualBox(можно и обычным методом, но это нужно выключать компьютер и внимательно выбирать диск при разметке. Установка через VB таких проблем лишена)
3. Загрузился снова через VirtualBox, поставил обновления и нужный софт, настроил синхронизацию.
4. С помощью dd клонировал эту флешку на все остальные.
Собственно всё. Теперь немного подробнее.

Вот флешки:


Для теста взял 4 штуки, если проблем не выявится, докуплю еще.

Ставим линукс.

Качаем образ нужного линукса:
wget http://mirror.yandex.ru/ubuntu-cdimage/xubuntu/releases/12.04.3/release/xubuntu-12.04.3-desktop-i386.iso
Создаём виртуальную машину
Подключаем флешку.
Немного отмечу процесс разбивки диска. Сейчас в компьютерах относительно много ОЗУ(от 1ГБ), и восьмигиговая флешка по сравнению с этим не такая большая. Поэтому я предпочитаю отдавать всё под / и не делать swap. Если так почему-то вообще нельзя делать никогда, расскажите мне почему.

Включаем и настраиваем.

Поставился, теперь попробуем в него загрузиться. По умолчанию VirtualBox так не умеет, но несложно его научить. Хотя официальный представить Oracle и уверяет, что это невозможно. Нужно добавить своего пользователя в группу disk
usermod -aG disk triklozoid
После этого перелогиниться и выполнить такую команду:
sudo VBoxManage internalcommands createrawvmdk -filename ~/temp/usbdisk.vmdk -rawdisk /dev/sdb
где
~/temp/usbdisk.vmdk это где создать файла диска
а
/dev/sdb устройство вашей флешки
В настойках виртуальной машины добавляем диск:
На этом этапе могут появиться какие-нибудь ошибки доступа, нужно проверять права на свежесозданный файл ~/temp/usbdisk.vmdk
Теперь включаем машину, она должна нормально загрузиться с флешки.
Делаем sudo apt-get update && sudo apt-get upgrade(yum, pacman, emerge или что там у вас).
Устанавливаем нужные приложения, настраиваем что нужно.

Про синхронизацию

Для синхронизации я использовал клиент Яндекс.Диска под линукс.
Качаем cтавим настраиваем по официальным докам.
Я использовал такую схему: Зарегистрировал один новый аккаунт на яндексе. Сделал папку у себя и дал доступ на чтение новому аккаунту. И авторизовался в линукс клиенте новым аккаунтом.
Можно конечно как-то усложнить схему и сделать на каждой флешке отдельный аккаунт, но мне лень. :-)

Клонирование.

После того, как настройка всего закончена, можно приступить к магии dd.
Хотя команда очень простая, совсем не магическая, если кто знает магические ключи, которые улучшают всё в миллион раз, делитесь.
КОМАНДУ ЗАПУСКАТЬ АККУРАТНО, С УСТРОЙСТВАМИ НЕ ОШИБАТЬСЯ
А то всё потрёте нафиг.
dd if=/dev/sdb of=/dev/sdc bs=16M
if - откуда
of - куда
bs - размер блока

Конец

Собственно на этом всё, всё работает, можно пробовать. Работает достаточно шустро(особенно питоновая консоль :-)), проблем с железом пока не было. Кроме синхронизации папки с файлами, хотелось бы конечно и набор пакетов тоже синхронизировать, например, через puppet, но на первое время хватит и такого.

Продолжение...


понедельник, 9 сентября 2013 г.

Делимся Linux скриншотами в один клик


Это супер короткий пост-заметка, как в Linux сохранять скриншоты на Яндекс.Диск и сразу получать ссылку. Ставим консольный клиент отсюда. Делаем такой скрипт:

#!/bin/bash
xfce4-screenshooter -s ~/Yandex.Disk/screenshots/ -r
yandex-disk sync
yandex-disk publish "$(ls -td ~/Yandex.Disk/screenshots/*|head -n 1)"|xclip

Первую строчку естественно можно заменить на запуск вашей любимой скриншотилки, если ей можно передать параметр, куда сохранять файл. Команду xclip можно заменить на xclip -selection clipboard, если вы хотите вставлять ссылку не средней кнопкой мыши, а по ctrl+v. Подробнее например здесь.

Продолжение...


вторник, 9 сентября 2008 г.

Мои впечатления о eeePC.

Недавно стал счастливым обладателем этого замечательного девайса и хотел поделиться впечатлениями от его использования.

Их существует достаточно много разновидностей, моя называется eeePC 1000.
Характеристики Intel Atom 1.6/1024MB RAM/40Gb SSD/Bluetooth/Wi-fi/10" дисплей.
Продавался он с предустановленным линуксом - Xandros. Поначалу нравилось, непривычное ощущение, вроде и линукс, а вроде и все работает. Потом выяснилось, что на самом деле не все. Набор приложений в репозиториях, которые можно подключить (включая всякие левые) откровенно беден и версии давно устаревшие. Вообщем я понял, надо ставить что-то свое. Остановил свой выбор на Debian Lenny. Давно хотел где-нибудь дебиан попробовать, но все как-то у меня с ним не складывалось. В этот раз сложилось.
Ставил я его по этой инструкции. Все делал как написано и никаких проблем при установке не возникло. После установки, впрочем, проблем тоже не было. Практически все работает, проще сказать, что не работает. Не работают частично Fn клавиши. В частности клавиша переключения режимов работы WiFi/Bluetooth. Это означает, что включить или выключить эти устройства можно только из биоса. Особых проблем это не доставляет, у меня они все время включены, благо батарейка это позволяет.
К слову о батарейке. Это один из очень заметных существенных плюсов. В режиме набора текстов он без труда работает 6 часов, при максимальной яркости экрана. Фильмы я смотреть не пробовал, но уверен, что в режиме просмотра фильма со звуком - 3,5..4 часа он протянет.
По поводу экрана. Размер у него оптимальный. Он настолько мал, насколько это возможно без создания критических неудобств. Кроме того, изображение на нем вполне разборчиво даже в прямом солнечном свете.(сказывается то, что он матовый).
Клавиатура. Клавиатура тоже удобная(ну, насколько может быть удобной клавиатура ноутбука...), за исключением одной досадной детали. Это правый шифт. Постоянно попадаешь на кнопку вверх. Но со временем все равно привыкаешь.
Тачпад. Туговаты кнопки, нажимать приходится с усилием. Зато Multitouch очень удобная штука. Изображения масштабировать это скорее игрушки, но вот использование двух пальцев для эмуляции колесика мыши - очень удобная штука. Привык мгновенно и теперь на всех других ноутбуках пытаюсь прокручивать страницы аналогичным образом.
Вес и размер меня устраивает. Таскаю его целый день с собой и к вечеру плечо не отваливается, как это было раньше с моим HP nx6110.
Вот он, красавец.


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

Продолжение...


воскресенье, 12 августа 2007 г.

Сборка ядра.

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

По умолчанию в 11.2 идет ядро 2.6.17. Набрав в консоли из-под рута yum install kernel, с подключенным репозиторием asplinux-updates, можно быстро и безболезненно обновить ядро до версии 2.6.20. Мне этого показалось мало, ядро не самое новое, да и поковыряться в нем самому нельзя. Поэтому я решил установить последнее стабильное ядро из исходников. Для этого скачиваем с kernel.org файл linux-2.6.22.2.tar.bz2 . Потом переносим файл в более подходящую папку.

mv linux-2.6.22.2.tar.bz2 /usr/src/

распаковываем архив

tar -xf linux-2.6.22.2.tar.bz2

переходим появившуюся папку

cd linux-2.6.22.2

там набираем

make menuconfig

Появляется меню конфигурирования ядра. Теперь начинается самое интересное. Многие советуют копировать конфиг с установленного ядра или брать готовые конфиги под определенную архитектуру. Так сделать конечно можно, но по своему опыту могу сказать, что это совсем не гарантирует, что ядро нормально запустится с первого раза. Мне, чтобы ядро нормально работало, потребовалось сделать следующее.
Первым делом я включил поддержку своего SATA контроллера. Без нее ядро выдавало Panic kernel в самом начале и грузиться наотрез отказывалось. Когда ядро начало загружаться, я просмотрел остальные сообщения об ошибках. Ошибки выдавали сервисы hidd, auditd и где-то в конце проскакивало сообщение об отсутствии fuse. Кроме этого не работал звук, сетевая карта и nvidia модуль ядра.
Исправлял я это таким образом
hidd - Networking -> Networking support -> Bluetooth subsystem support -> HIDP protocol support =Y

auditd - General setup -> Auditing support

fuse - File systems -> Filesystem in Userspace support

звук(звуковая карта PCI SB Audigy)
-> Device Drivers -> Sound -> Advanced Linux Sound Architecture -> PCI Devices -> Emu10k1 (SB Live!, Audigy, E-mu APS)

Когда вы закончили(в очередной раз?) конфигурирование ядра, нужно вбить магические команды:

make
sudo make install
make modules
sudo make modules install


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

Потом у меня были небольшие проблемы с модулем nvidia. Для его установки нужно скачать последний бинарник с драйверами.
Потом нужно выключить Х-сервер и из-под рута в консоли этот файл запустить. По поводу выключения Х. Можно выставить в /etc/inittab id:3:initdefault: и перезагрузиться, но есть способ чуть быстрее, это нажать Ctrl+Alt+Backspace, а потом 2 раза Ctrl+C.
Следующей проблемой было то, что драйвер не смог найти исходники моего ядра. Это решается опцией --kernel-source-path=путь. После этого модуль без ошибок компилируется, но при перезагрузке выдает module not found. Я подозреваю где-то можно указать к нему путь, но я не нашел, поэтому просто сделал так.

mkdir /lib/modules/2.6.22.2/extra/
mkdir /lib/modules/2.6.22.2/extra/nvidia/
cp /lib/modules/2.6.22.2/video/nvidia.ko /lib/modules/2.6.22.2/extra/nvidia/


И тогда наконец-то все загрузилось и заработало.

Еще хотел сказать по поводу make clean. Во всех инструкциях по сборке ядер настойчиво рекомендуют делать его перед каждой пересборкой. Не могу сказать насколько это оправдано, но мне часто было лень из-за одного мааааленького дополнительного крестика ждать полной пересборки 20-30 мин. Поэтому я пересобирал без make clean. И работало все замечательно. Make clean я делал всего раза 3, когда у меня компиляция прерывалась на середине с ошибкой.

Вот собственно и все чем я хотел поделиться по этому вопросу. Если вспомню еще что-нибудь, обязательно допишу.

P.S. Забыл предупредить, это не инструкция "от и до", а всего лишь описание некоторых особенностей и оно предполагает, что читатель уже знаком с чем-то вроде этого, конкретнее этого, ну и вообще хорошо если здесь.

Продолжение...