>получаете более-менее привычный вам продукт где многое работает из коробки
ключевое слово — _многое_
Лично у меня, как пользователя, не очень-то есть желание бегать по форумам производителей железа, скачивая драйвера (это ещё хорошо, если Windows сетевую карту увидит, иначе получится «Использовать Интернет для поиска драйверов для сетевой карты?»). Дабы не быть голословным — давным-давно, используя XP, имелся каталог с драйверами, чтобы в случае, если придёться переустанавливать систему, не скачивать драйвера из Интернета; вот под что приходилось иметь драйвера (потому как из коробки не работало):
-интеловский чипсет (в т.ч. на видеокарту — из коробки больше 800x600 не показывало)
-сетевая карта
-Bluetooth
-WiFi
-аудио карта
-клавиатура/мышь(для поддержки всяких фич вроде горячих клавиш)
И если это — поддержка «из коробки», то что же тогда не «из коробки»?
В случае же с GNU/Linux, всё это подхватывалось и работало даже в LiveCD режиме, не требуя установки никаких дополнительных драйверов.
Просто дело тут вот в чём — разработчики Windows (причём это чуть ли не официальная позиция) перекладывают заботу о драйверах на производителя железа и пользователя, который эти драйвера должен устанавливать;
в случае же с ядром Linux эту задачу берут на себя разработчики ядра, дабы не предоставлять пользователям лишних неудобств — и именно поэтому ядро Linux на сегодняшний день поддерживает бОльшее количество архитектур, платформ и оборудования, нежели любое другое ядро.
Я смотрю, здесь принято скриншотами со своими шрифтами делиться :-)
Интересно, а что скажут «font nazi» про это — img142.imageshack.us/img142/2184/habr.png?
Ubuntu 8.10, FF3, ну и, конечно, настройка шрифтов «под себя» напильником — лично меня устраивает; проблем с восприятием не испытываю.
А вообще, конечно, очень холиварная тема — зря Вы это начали; имхо, Хабр — не совсем подходящее место для подобных душеизлияний.
Ааа… разобрался. afuse.sourceforge.net/ — в секции «Example Usage» объяснено, как монтирование происходит — оно осуществляется не после обращения к ~/sshfs, а после обращения к ~/sshfs/server.ru; т.е. если нужно подключиться к хосту server.ru, делаем, к примеру
> ls ~/sshfs/server.ru/home/user
а если к otherserver.ru то
> ls ~/sshfs/otherserver.ru/home/user
>После чего достаточно его запустить с нужными парамтерами:
>afuse -o mount_template=«sshfs %r:/ %m» -o unmount_template=«fusermount -u -z %m» ~/sshfs/
извиняюсь за занудство, но не могли бы Вы, пожалуйста, пояснить пару моментов по этой команде — буду очень благодарен:
>После чего все обращения к файлам и папкам в папке ~/sshfs/ будут вызывать монтирование соответствующей папки в ~/sshfs/
Монтироваться будут данные с server.ru? А если нужно монтирование с otherserver.ru? откуда команда afuse узнаёт, с какого именно сервера и от имени какого юзера монтировать ssh?
%r, я так понимаю, означает удалённый сервер, но как именно и откуда это значение будет подставлено во время выполнения команды?
P.S. пробежался по man'ам sshfs и afuse, но про существование переменных %r и %m ничего не нашёл.
P.P.S. как бы то ни было, за сам совет большое спасибо — давно знал про sshfs, да настроить всё никак руки не доходили, а вручную ssh'ем ходить надоело :-)
ошибочка. первая команда срабатывать корректно не будет, т.к. ошибка команды в том, что для перенаправления вывода в файл, принадлежащий root'у, не хватит полномочий, и sudo в данном случае проблемы не решает; правильней в таких случаях делать примерно вот так:
echo «deb ppa.launchpad.net/openoffice-pkgs/ubuntu intrepid main» | sudo tee -a /etc/apt/sources.list > /dev/null
Или, если хочется лицезреть то, что будет добавлено в файл, то "> /dev/null" можно опустить.
Так-то.
>«Собственная сборка от HP основана на ядре Ubuntu 8.04 Hardy Heron»
некорректно звучит, аж слух режет — нет «ядра Ubuntu»; «на дистрибутиве» — корректнее бы звучало.
я не критикую, а лишь делюсь мнением:
>Но вы получите не оптимизированный линукс «специально для нетбуков» а обычную убунту просто с другой шкуркой…
Единственный способ получить оптимизированный линукс «специально для %модель_Вашего_ПК%» — это пересобрать его самому вручную, выкинув половину модулей, которые включены по умолчанию в силу необходимости для установки «из коробки» на как можно бо'льшем количестве ПК с самым разнообразным оборудованием (даже в разных моделях линейки EeePC используются разные wifi/ethernet модули); за Вас, под Ваше оборудование, с Вашими устройствами, вряд ли кто-то что-то будет «оптимизировать».
Много всего в одну кучу смешалось. Если позволите, с удвольствием поясню:
-есть дистрибутив ubuntu
-есть ряд утилит, преобразующих дефолтный интерфейс для удобного использования на нетбуках (весь набор называется, как было выше отмечено — ubuntu netbook remix):
*maximus — утилита, которая автоматически разворачивает окно запускаемой программы на весь экран так, что в каждый конкретный момент времени пользователь работает только с одним приложением
*netbook-launcher — собственно, оболочка для запуска приложений, изображённая на скриншоте чуть выше.
-а также, есть как минимум два дистрибутива, которые работают с комплектом этих утилит из коробки — это eeebuntu и ubuntu eee; и это, как уже сказано ниже в ветке — два разных дистрибутива.
так-то )
P.S. а придирство к названиям лично мне напоминает детскую поговорку про палец, который дураку показывают.
Какие-то сплошные логические противоречия, не подтверждённые фактами.
>Просто убунту пользуется много людей, которые привыкли сидеть в системе из под рута
откуда такие сведения? Вы всех пользователей Ubuntu пересчитывали и спрашивали, сидят ли они под root'ом, и таких оказалось большинство?
Либо пользователь грамотен, и под рутом, независимо от дистрибутива или даже ОС, сидеть не будет; либо, если пользователь от компьютеров далёк и использует Ubuntu, то до шагов по активизации root-аккаунта (тем более, для того, чтобы под ним сидеть постоянно) у такого пользователя дело вряд ли дойдёт.
Ну а тех, кто умышленно под рутом сидит, к компьютерам, конечно, опасно подпускать.
Не впечатлило. Да и стилистика уж больно далека от стандартных статей хабра.
Эмоций много, да, и это, не спорю, немного подкупает, но логики и аргументированности высказываниям местами не достаёт.
отнюдь! есть два типа совершенно разных, никак не коррелирующих между собой понятия: зависимости для сборки(компиляции) и зависимости для установки пакета — Build-Depends и Depends поля соответственно, в debian/control. И значения этих полей для пакетов как правило не равны — Build-Depends обычно в разы длиннее и шире; и потом, зачем пользователю, который всего лишь хочет собрать пакет, устанавливать в работающую систему кучу *-dev пакетов на сотню мегабайт с заголовочными файлами, которые а) впоследствии пользователем использоваться в разрабатываемых им программах использоваться не будут; б) не нужны для установки и работы собственно собранного пакета. pbuilder как раз решает все эти проблемы, а мой комментарий лишь к тому был сказан, что обычно с pbuilder'а в различных howto начинают повествование о сборках deb-пакетов, а не заканчивают.
интересные статьи. но, имхо, стоило всё таки начать с pbuilder'а (а не заканчивать на нём :-), т.к. обычно ни debuild, ни dpkg-buildpackage в чистом виде для сборки пакетов не используются (ибо мусора много в систему тащат в виде ненужных пакетов для удовлетворения зависимостей при сборке); что касается утилит проверки пакета на кошерность, рекомендую(если не сталкивались) обратить внимание на piuparts — проверяет в chroot-окружении, созданном pbuilder'ом, не перезаписывает/удаляет/создаёт/оставляет ли собранный пакет при установке/удалении какие-либо лишние файлы в системе.
И ещё, помимо создания собственного репозитария, думаю, полезной будет заметка наподобие «куда выгружать пакеты, если их не приняли в Ubuntu» и рассказать в ней про использование PPA.
насколько я понял из текста, имелось ввиду не подключение debian «experimental» к другой ветви debian, а к ubuntu — а вот здесь действительно могут быть некоторые проблемы (вроде поломанных зависимостей)
А крибле-крабле-бумс, то бишь ./configure && make && make install (как, впрочем, и checkinstall) — для пакетных дистрибутивов это олицетворение мирового зла и ну очень не кошерно; лучше пару дней потратить на то, чтобы разобраться, как правильно собирать пакеты, чем периодически вручную бороться с зависимостями и постоянно выгребать из системы мусор, которого там быть не должно.
э, не. Вы мою цитату на полуслове оборвали — у меня там дальше речь про конвейеры была — "… вывод <> внешней программы, _пропущенной_ <> через...". К примеру так: var="`cat file | grep <шаблон для вывода строк> | sed <шаблон для замены какого-либо одного текста на другой> | awk <печать определённых полей> | ... <и так далее>`" я не сомневаюсь, наверняка в python'е тоже есть функционал (как и в любом другом нормальном ЯП) для работы с каналами (помню, даже как-то специально ковырялся в нём именно с целью разобраться, как их в нём можно использовать), но сомневаюсь, что это будет выглядеть столь лаконично и записываться в одну строку без лишних слов; опять же, в Вашем примере выше — целых два лишних слова — «execute().text»; так к чему плодить сущности без необходимости. Ну и ещё не стоит забывать, что в shell'е если переменная состоит только из цифр, то она, в зависимости от контекста, может использоваться и как численная переменная, и как текстовая — это _очень_ полезно и эффективно; afaik, в python'е без переконвертирования типов для этого не обойтись(хоть он и может использовать динамическую типизацию) — а это, опять же, лишние строки для вызова других методов для конвертирования данных.
имхо, нельзя приравнивать python и shell; ну разные у них задачи, раз-ны-е; поэтому для меня заголовок топика звучит как что-то вроде «C++ против HTML».
чувствуете разницу? Python — это всё таки больше ЯП, нежели хороший инструмент по автоматизации рутинных действий в операционной системе; а вот posix shell'ам в последнем равных нету, как ни старайтесь. Одни каналы чего стоят — на любом другом ЯП вы задолбаетесь создавать код, который должен тупо положить в переменную вывод результата работы внешней программы(а ведь для этого в другом ЯП придётся ещё создать системный вызов для запуска этой программы), пропущенный, к примеру, через grep или sed; в shell подобные действия осуществляются в одну строку. Каждой задаче — свой инструмент; и ни из python'а, ни из ruby(а что? тоже ведь скриптовый), хороший удобный shell не сделаешь, как ни старайся.
ключевое слово — _многое_
Лично у меня, как пользователя, не очень-то есть желание бегать по форумам производителей железа, скачивая драйвера (это ещё хорошо, если Windows сетевую карту увидит, иначе получится «Использовать Интернет для поиска драйверов для сетевой карты?»). Дабы не быть голословным — давным-давно, используя XP, имелся каталог с драйверами, чтобы в случае, если придёться переустанавливать систему, не скачивать драйвера из Интернета; вот под что приходилось иметь драйвера (потому как из коробки не работало):
-интеловский чипсет (в т.ч. на видеокарту — из коробки больше 800x600 не показывало)
-сетевая карта
-Bluetooth
-WiFi
-аудио карта
-клавиатура/мышь(для поддержки всяких фич вроде горячих клавиш)
И если это — поддержка «из коробки», то что же тогда не «из коробки»?
В случае же с GNU/Linux, всё это подхватывалось и работало даже в LiveCD режиме, не требуя установки никаких дополнительных драйверов.
Просто дело тут вот в чём — разработчики Windows (причём это чуть ли не официальная позиция) перекладывают заботу о драйверах на производителя железа и пользователя, который эти драйвера должен устанавливать;
в случае же с ядром Linux эту задачу берут на себя разработчики ядра, дабы не предоставлять пользователям лишних неудобств — и именно поэтому ядро Linux на сегодняшний день поддерживает бОльшее количество архитектур, платформ и оборудования, нежели любое другое ядро.
Интересно, а что скажут «font nazi» про это — img142.imageshack.us/img142/2184/habr.png?
Ubuntu 8.10, FF3, ну и, конечно, настройка шрифтов «под себя» напильником — лично меня устраивает; проблем с восприятием не испытываю.
А вообще, конечно, очень холиварная тема — зря Вы это начали; имхо, Хабр — не совсем подходящее место для подобных душеизлияний.
> ls ~/sshfs/server.ru/home/user
а если к otherserver.ru то
> ls ~/sshfs/otherserver.ru/home/user
>afuse -o mount_template=«sshfs %r:/ %m» -o unmount_template=«fusermount -u -z %m» ~/sshfs/
извиняюсь за занудство, но не могли бы Вы, пожалуйста, пояснить пару моментов по этой команде — буду очень благодарен:
>После чего все обращения к файлам и папкам в папке ~/sshfs/ будут вызывать монтирование соответствующей папки в ~/sshfs/
Монтироваться будут данные с server.ru? А если нужно монтирование с otherserver.ru? откуда команда afuse узнаёт, с какого именно сервера и от имени какого юзера монтировать ssh?
%r, я так понимаю, означает удалённый сервер, но как именно и откуда это значение будет подставлено во время выполнения команды?
P.S. пробежался по man'ам sshfs и afuse, но про существование переменных %r и %m ничего не нашёл.
P.P.S. как бы то ни было, за сам совет большое спасибо — давно знал про sshfs, да настроить всё никак руки не доходили, а вручную ssh'ем ходить надоело :-)
echo «deb ppa.launchpad.net/openoffice-pkgs/ubuntu intrepid main» | sudo tee -a /etc/apt/sources.list > /dev/null
Или, если хочется лицезреть то, что будет добавлено в файл, то "> /dev/null" можно опустить.
Так-то.
эээх, уже не раз слышу подобное… только вот интересно, откуда же такой миф пошёл…
некорректно звучит, аж слух режет — нет «ядра Ubuntu»; «на дистрибутиве» — корректнее бы звучало.
>Но вы получите не оптимизированный линукс «специально для нетбуков» а обычную убунту просто с другой шкуркой…
Единственный способ получить оптимизированный линукс «специально для %модель_Вашего_ПК%» — это пересобрать его самому вручную, выкинув половину модулей, которые включены по умолчанию в силу необходимости для установки «из коробки» на как можно бо'льшем количестве ПК с самым разнообразным оборудованием (даже в разных моделях линейки EeePC используются разные wifi/ethernet модули); за Вас, под Ваше оборудование, с Вашими устройствами, вряд ли кто-то что-то будет «оптимизировать».
-есть дистрибутив ubuntu
-есть ряд утилит, преобразующих дефолтный интерфейс для удобного использования на нетбуках (весь набор называется, как было выше отмечено — ubuntu netbook remix):
*maximus — утилита, которая автоматически разворачивает окно запускаемой программы на весь экран так, что в каждый конкретный момент времени пользователь работает только с одним приложением
*netbook-launcher — собственно, оболочка для запуска приложений, изображённая на скриншоте чуть выше.
-а также, есть как минимум два дистрибутива, которые работают с комплектом этих утилит из коробки — это eeebuntu и ubuntu eee; и это, как уже сказано ниже в ветке — два разных дистрибутива.
так-то )
P.S. а придирство к названиям лично мне напоминает детскую поговорку про палец, который дураку показывают.
>Просто убунту пользуется много людей, которые привыкли сидеть в системе из под рута
откуда такие сведения? Вы всех пользователей Ubuntu пересчитывали и спрашивали, сидят ли они под root'ом, и таких оказалось большинство?
Либо пользователь грамотен, и под рутом, независимо от дистрибутива или даже ОС, сидеть не будет; либо, если пользователь от компьютеров далёк и использует Ubuntu, то до шагов по активизации root-аккаунта (тем более, для того, чтобы под ним сидеть постоянно) у такого пользователя дело вряд ли дойдёт.
Ну а тех, кто умышленно под рутом сидит, к компьютерам, конечно, опасно подпускать.
Эмоций много, да, и это, не спорю, немного подкупает, но логики и аргументированности высказываниям местами не достаёт.
И ещё, помимо создания собственного репозитария, думаю, полезной будет заметка наподобие «куда выгружать пакеты, если их не приняли в Ubuntu» и рассказать в ней про использование PPA.
deb ppa.launchpad.net/iaz/ubuntu jaunty main
deb-src ppa.launchpad.net/iaz/ubuntu jaunty main
А крибле-крабле-бумс, то бишь ./configure && make && make install (как, впрочем, и checkinstall) — для пакетных дистрибутивов это олицетворение мирового зла и ну очень не кошерно; лучше пару дней потратить на то, чтобы разобраться, как правильно собирать пакеты, чем периодически вручную бороться с зависимостями и постоянно выгребать из системы мусор, которого там быть не должно.
var="`cat file | grep <шаблон для вывода строк> | sed <шаблон для замены какого-либо одного текста на другой> | awk <печать определённых полей> | ... <и так далее>`"
я не сомневаюсь, наверняка в python'е тоже есть функционал (как и в любом другом нормальном ЯП) для работы с каналами (помню, даже как-то специально ковырялся в нём именно с целью разобраться, как их в нём можно использовать), но сомневаюсь, что это будет выглядеть столь лаконично и записываться в одну строку без лишних слов; опять же, в Вашем примере выше — целых два лишних слова — «execute().text»; так к чему плодить сущности без необходимости. Ну и ещё не стоит забывать, что в shell'е если переменная состоит только из цифр, то она, в зависимости от контекста, может использоваться и как численная переменная, и как текстовая — это _очень_ полезно и эффективно; afaik, в python'е без переконвертирования типов для этого не обойтись(хоть он и может использовать динамическую типизацию) — а это, опять же, лишние строки для вызова других методов для конвертирования данных.имхо, нельзя приравнивать python и shell; ну разные у них задачи, раз-ны-е; поэтому для меня заголовок топика звучит как что-то вроде «C++ против HTML».
gogo = open ("/home/username/helloworld","w")
gogo.write("Hello, world!")
gogo.close()
shell:
echo "Hello, world!" >> /home/username/helloworld
чувствуете разницу? Python — это всё таки больше ЯП, нежели хороший инструмент по автоматизации рутинных действий в операционной системе; а вот posix shell'ам в последнем равных нету, как ни старайтесь. Одни каналы чего стоят — на любом другом ЯП вы задолбаетесь создавать код, который должен тупо положить в переменную вывод результата работы внешней программы(а ведь для этого в другом ЯП придётся ещё создать системный вызов для запуска этой программы), пропущенный, к примеру, через grep или sed; в shell подобные действия осуществляются в одну строку. Каждой задаче — свой инструмент; и ни из python'а, ни из ruby(а что? тоже ведь скриптовый), хороший удобный shell не сделаешь, как ни старайся.