compizomania
Азбука в Linux для начинающих и не только. Я знаю только то, что ничего не знаю, но другие не знают и этого. Сократ
Страницы
23 июля 2018
Попробуйте Linux с USB-live (загрузочной флешки) без установки
Практически во всех установочных образах дистрибутивов Linux (в отличии от Windows или MacOS X) присутствует возможность загрузки системы в Live-режиме, т.е. без установки на жёсткий диск компьютера, непосредственно с флешки с образом.
Примечание. Как загрузить и установить образ специальной программой на USB-накопитель (флешку), посмотрите ЗДЕСЬ.
В этой статье я хочу рассказать, как загрузиться и работать в Live-режиме.
Под рукой у меня оказался загруженный на флешку образ Linux Mint 19 Cinnamon. У вас на флешке может быть другой образ c системой, например, Linux Mint 19 MATE, Linux Mint 19 Xfce или любой другой.
Загрузка флешки в BIOS.
Для порядка загрузки системы не с жёсткого диска, с флешки, необходимо войти в настройки BIOS вашего компьютера и выбрать USB Fash Disk первым загрузочным.
Если требуется загрузиться только один раз с определенного загрузочного устройства, например флешки, нажмите соответствующую клавишу (чаще всего F8, F11, или F12), после чего BIOS выведет меню загрузки, как на рисунке ниже. Это позволит вам избежать лишних настроек BIOS.
Клавишами с стрелками вверх/вниз выберите в меню USB Flash Disk и нажмите Enter для начала загрузки, как поясняется внизу меню загрузки, правда на английском языке.
После загрузки дистрибутива с флешки (в данном случае с Linux Mint 19 Cinnamon) откроется меню загрузки.
Первым в меню стоит Start Linux Mint. Нажмите клавишу Ввод/Enter для загрузки дистрибутива в live-режиме и дождитесь окончания загрузки.
Примечание. Во время загрузки дистрибутива в live-режиме, в качестве жёсткого диска используется USB-накопитель, т.е. флешка, но не ж/диск компьютера.
По окончании загрузки дистрибутива откроется рабочий стол системы и значком установки системы.
Практически это операционная система, в которой вы можете делать практически всё, как в установленной системе на ж/диск.
Откройте меню, выберите программу и работайте в ней так, как в обычной системе.
Для примера я выбрал веб-браузер Firefox.
Как обычно путём поиска нашёл телевизионные каналы и смотрю телепередачи.
А также можно пользоваться Youtube.
Либо просто путешествовать в сети интернет или использовать социальные сети для общения.
А также в live-режиме можно устанавливать и полноценно пользоваться программами.
Примечание. Во время установки программ в терминале в live-режиме вам не требуется вводить пароль, т.к. вы являетесь пользователем, так сказать, обезличенным, т.е. пока не зарегистрированным в системе, но программа будет установлена.
А также следует помнить, что в качестве ж/диска используется флешка и если объём флешки невелик (например 2 ГБ), то во время установки дополнительных программ, возможно, система вас известит о том, что «На диске мало места».
Но и это ещё не всё. В live-режиме вы можете изменять любые настройки системы.
Для примера я выбрал изменения языка системы на русский.
Примечание. В live-режиме интерфейс системы отображается на английском языке, но в загрузочном образе дистрибутива присутствуют все языки на выбор пользователя во время установки. Поэтому в live-режиме можно изменить язык системы.
После установки языка и нажатия кнопки Применить его для всей системы (Apply System Wide), необходимо перезагрузить систему (НЕ компьютер).
В окне входа Войти введите mint, т.к. вы являетесь Live user и нажмите клавишу Ввод.
Окно ввода пароля оставьте пустым и нажмите клавишу Ввод, чтобы войти в live-сессию.
После нового входа вам будет предложено изменить название папок файлового менеджера. Нажмите на кнопке Update Names, в знак согласия.
Теперь интерфейс системы и файлового менеджера будет отображаться на русском языке.
Вы также можете добавить раскладку клавиатуры, чтобы в Live-режиме печатать на родном языке.
Примечание. Все изменения, которые вы производили в Live-режиме сохраняются только на текущий сеанс. После повторной перезагрузке флешки с дистрибутивом, ОС сохраняет настройки по умолчанию.
Live-режим в загрузочном образе присутствует для ознакомления с возможностями операционных систем. Таким образом, можно быстро запустить и попробовать в использовании ту или иную ОС Linux, и, если система понравится и ваш компьютер работает без сбоев, установить её на жёсткий диск компьютера.
Источник
Автоопределение USB-устройств в Linux Mint 18.3 (udev,udisks, или что?)
По причине описанной в другой ветке этого форума, у меня возник более конкретный вопрос, который я вынес сюда как более общую тему:
- Как в системе Linux Mint 18.3 реализовано автоопределение usb-устройств сейчас в 2018 году?
Проблема в том, что почти вся информация, которая находится по подобным поисковым запросам датируется 2011-2015 годами и ссылается на настройку утилиты udev путём добавления в каталог /etc/udev/rules.d/ файлов с описаниями правил монтирования.
Но беда в том, что в моей системе этот каталог изначально пуст и все описанные в инструкциях действия не дают никакого результата.
Каталог /etc/udisks2/ тоже пуст.
Я нашёл упоминание о рolkit, но как это может быть связано с моей задачей я не очень понимаю.
udev актуален. Правила в rules.d пусты, так как в этом каталоге правила, что создает сам пользователь, а не умолчания в системе.
в моей системе этот каталог изначально пуст
В /etc/udev/rules.d/ пишет только админ (локалхоста), если конечно дистр не упоротый. Обычно правила, поставляемые с пакетом, живут в /usr/lib/udev/rules.d/ и/или в /lib/udev/rules.d/ .
действия не дают никакого результата
- Убедись, что правило описано правильно и хандлит нужное тебе устройство.
- udevadm control —reload делал?
Туда лучше не лезь, если не знаешь, что делать. Проще добавить пользователя в соответствующую группу (GID и название группы в разных дистрах могут отличаться, потому тут не подскажу) и перелогиниться (при этом, чтобы изменения вступили в силу, пользователь должен завершить все активные сессии, потому, если не сработало, лучше перезагрузить компьютер).
Спасибо, значит буду пытаться копать в сторону udev.
Убедись, что правило описано правильно и хандлит нужное тебе устройство.
Ну, опишу всё по порядку, может я где-то ступил.
Вначале, я использовал dmesg для сбора информации. Я сделал два файла с выводами этой утилиты до и после подключения NXT-устройства:
В статьях 2011-2012 годов по подключению NXT, как раз упоминалось, что у устройства долженsы быть idVendor=0694 и idProduct=0002.
Дальше, разница выводов lsusb до и после подключения устройства была:
Причём, это всё работало ещё до того как я стал прописывать настройки в пустой по умолчанию каталог /etc/udev/rules.d/, но такое поведение было описано и в тех статьях, которые я читал.
Что касается udev, то у меня в системе установлена по умолчанию версия 229-4ubuntu21.4, что бы это ни значило.
Дальше, в разных статьях по настройке рекомендовалось следующее:
1) Создать файл /etc/udev/rules.d/80-nxt.rules с текстом:
2) Или создать тот же файл но с текстом (предполагается, что это разные вариации для разных версий udev, но какой для чего я не в курсе):
3) В другом источнике, предлагалось создать файл /etc/udev/rules.d/45-legonxt.rules с текстом:
4) Ещё предлагался вариант файла /etc/udev/rules.d/70-nxt.rules с текстом:
В принципе, названия файлов, по всей видимости не важны, просто я привожу примеры из разных источников и опробовал я эти варианты по отдельности.
После создания конфигурационного файла, предполагалось выполнить команду:
Но ни эта команда, ни перезагрузка, ни
Честно говоря, я не очень представляю, как можно проверить автораспознание NXT-устройства, подключенного к usb, но выполняя инструкции по установке софта (компиляторов nxc и nbc) предполагалось, что при запуске компиляторов с определёнными опциями, компиляторы должны загрузить бинарные файлы в подключенное и автоматически расшаренное NXT-устройство. Этого не происходит.
что за шиза? Компилируй и отправляй, через scp там или чем, как тебе уже надо.
что за шиза? Компилируй и отправляй, через scp там или чем, как тебе уже надо.
Вообще, мне нужно хоть как-то расшарить доступ к устройству, чтобы загружать на него программы любым из возможных способов!
Сами программы компилируются нормально. Я проверял как это работает в винде, где проблем с распознаванием NXT нет (но даже в винде, NXT-устройство не отображается как внешний диск).
Ну, и просто в примере компилятора nbc для системы NXT по умолчанию приводятся варианты типа:
You can then compile this up using
then upload your HelloWorld program
You can then run the program using the buttons on the NXT
Тут речь была о загрузке ранее скомпилированного компилятором nbc файла из исходника HelloWorld.nxc в бинарник HelloWorld с помощью специального питоновского скрипта nxt_push
Another final option is to use the the built in download feature of nbc, you can do something like this when you compile:
This will automatically download a successful build to the NXT brick, there is also a -r option to download and run.
А тут, компиляция и загрузка того же исходника осуществляется самим компилятором nbc
Ну, а сам nbc -help выдаёт в первых строчках описания своих опций:
использовал dmesg для сбора информации
А следовало бы использовать udevadm monitor , оттуда можно копировать данные (почти) как есть.
Показывай написанное тобой правило.
Зачем? Используй udevadm control —reload .
В общем, давай написанное правило и выхлоп udevadm monitor (вытаскиваешь девайс, запускаешь монитор, втыкаешь девайс, ждёшь получения информации (её будет много)).
В общем, я решил сделать все действия сначала (И кажется заработало):
1) я создал один файл рулесов с немного изменёнными параметрами:
Тут, насколько я понимаю, проверяются 4 первых параметра на соответствие, потом создаётся символьная ссылка с именем «nxt» и задаются (для этой ссылки?) права доступа «666».
2) После этого я выполнил команду: udevadm control —reload
3) Потом выключил NXT-устройство и снова его включил.
4) Набрал lsusb для просмотра устройств и получил:
5) Потом я набрал команду: ls -l /dev/bus/usb/002/
Вроде тут видно, что устройство 009 было подключено, но права доступа к нему «crw-rw—-»
6) Потом я набрал: ls -l /dev/nxt
Во! Вот это мне понравилось!
Как я понял, при подключении NXT была создана символьная ссылка на устройство /dev/nxt и права на эту ссылку были определены уже по максимуму: «lrwxrwxrwx».
При отключенном устройстве, эта символьная ссылка недоступна.
7) Вывод udevadm monitor (отключил девайс, запустил монитор, включил девайс):
Тут всего 4 строчки, но они мне как-то ничего не говорят.
В итоге, после проведения всех этих телодвижений, оказалось, что я могу уже загружать программы с помощью компилятора nbc:
Но загрузка данных с помощью питоновского скрипта nxt_push пока не работает.
Также, всё ещё не видит подключенного по usb устройства и запущенная под Wine система BricXX.
Честно говоря, я пока не понял до конца, в чём проблема.
Может быть нужно как-то менять права доступа к самому устройству, а не только к символьной ссылке?
Может нужно что-то городить с группами и групповыми правами?
Все симлинки имеют такие права доступа. MODE в правиле udev задает пермиссии не для симлинка а для самого девайс нода (в данном случае для /dev/bus/usb/002/009.
У тебя права получились другие — 0660, root:plugdev. Значит открыть этот девайс нод сможет только пользователь группы plugdev (ну и конечно root).
Почему получились другие права — видимо правило, которое ты добавил, перекрыто каким-то другим правилом. Порядок правил зависит от порядка, в котором udevd читает файлы с правилами, а читает он их в порядке лексиграфического возрастания имен. Поэтому файлам с правилами дают имена с числовыми префиксами. Попробуй назвать свой файл правил с префиксом 99-, может быть тогда твое правило станет последним.
Можно также попробовать запустить nbc -d с правами рута. Рут однозначно имеет право открывать любые девайс ноды. Если и с правами рута nbc -d не может загрузить программу на устройство, значит дело не в правах, и правилами udev ты ситуацию не поправишь.
И я бы не надеялся, что устройство «увидят» виндовые приложения, запущенные под вайном. https://www.winehq.org/wwn/331#USB Support in Wine
Порядок правил зависит от порядка, в котором udevd читает файлы с правилами, а читает он их в порядке лексиграфического возрастания имен. Поэтому файлам с правилами дают имена с числовыми префиксами. Попробуй назвать свой файл правил с префиксом 99-, может быть тогда твое правило станет последним.
Да, вот только что сам тоже обратил на это внимание!
Настроил всё то же самое на ноуте, с той лишь разницей, что на ноуте файл рулесов прописал с большим числом в начале и результаты вывода на ноуте отличались по правам доступа.
Сейчас исправил и на первом компе. Всё пучком стало с отображаемыми правами.
Можно также попробовать запустить nbc -d с правами рута.
Да, по факту, так оно сейчас и работало. Просто при установке компилятора прописывался конфиг через sudo visudo
с заменой имени пользователя, конечно.
Т.е. насколько я понимаю, тут nbc запускается с админскими правами без запроса пароля.
проверяются 4 первых параметра на соответствие
потом создаётся символьная ссылка с именем «nxt»
Не потом, а при условии соответствия условиям.
задаются (для этой ссылки?) права доступа «666»
symlink всегда имеет lrwxrwxrwx (ибо ему пофиг, он прозрачно перенаправляет туда, куда ссылается, и права будут те, что у реального файла/устройства/директории), права доступа присваиваются девайсу. Я представления не имею, что за девайс, но я бы назначил хотя бы группу, и разрешил доступ только этой группе.
устройство 009 было подключено, но права доступа к нему «crw-rw—-»
Попробуй вначале назначить права доступа, и только потом создать симлинк.
и права на эту ссылку были определены уже по максимуму
Но загрузка данных с помощью питоновского скрипта nxt_push пока не работает.
А права-то на запись есть?
Если от юзера, то нет.
Также, всё ещё не видит подключенного по usb устройства и запущенная под Wine система BricXX.
Тут ничем не помогу.
Может быть нужно как-то менять права доступа к самому устройству, а не только к символьной ссылке?
Права, назначенные на symlink (кроме прав на чтение), менять смысла нет, читай выше. Про изменение прав я уже написал выше — измени порядок правила (смести создание ссылки в конец строки).
Может нужно что-то городить с группами и групповыми правами?
Я бы сделал, разграничив права. Но учитывая, что тебе нужен доступ из Wine… не заморачивайся.
Так и не понял, загружает ли у тебя nbc -d программу в устройство под пользователем, или только под рутом, или вообще никак не загружает.
только пользователь группы plugdev
С этим разобрался, но подумал, что может быть поможет включение в рулесы описания новой группы типа GROUP=»nxt» с последующим добавлением нужному пользователю этой группы.
Сделал, проверил, но отличий не увидел, т.к. изначально nbc всё равно имел админские права и не обращал внимания на все ограничения, а во-вторых, права всё равно выставляются в 666, и наличие дополнительной группы вроде как и не нужно вообще (в отличие от прав 660).
Но, на всякий случай, я добавил группу, что называется, на вырост.
Так и не понял, загружает ли у тебя nbc -d программу в устройство под пользователем, или только по рутом, или вообще никак не загружает.
Сейчас nbc -d работает. По факту, он работает с админскими правами, но учитывая мои теперешние настройки, видимо, должен был бы работать и без админских прав.
Я пока не разобрался с другими способами загрузки программ, кроме как nbc -d. Но, это, вероятней всего, уже совсем другой вопрос.
Судя по всей этой писанине, nbc -d работал изначально. Под рутом или под пользователем входящим в группу plugdev.
Да, я понял некоторые свои косяки, и теперь изменил кое что в настройках.
1) Я создал единственный файл рулесов в начинающийся с большого номера (поскольку файлов с другими номерами в этом каталоге не было, то я изначально решил, что номер моего файла не очень важен, и это было ошибкой). Итак файл 80-legonxt.rules :
== — сравнение, = — присвоение.
Не потом, а при условии соответствия условиям.
Да, я знаю, просто не точно выразился.
В данном конфиге я оставил права «666» и добавил группу «nxt», на будущее, и чтобы не забыть.
2) После этого, я выполнил udevadm control —reload
3) Включил NXT и получил следующие выводы:
ls -l /dev/bus/usb/002/ :
Теперь все настройки более корректны, добавлена группа nxt и права доступа к устройству настроены на 666, как и было задумано.
Судя по всей этой писанине, nbc -d работал изначально.
В теории, видимо должен был. Но мне почему-то казалось, что он не работал. Я экспериментировал с разными программами, и много всего перепробовал с разными настройками.
Попробую потом на новом компе с нуля поставить только один nbc и поиграюсь с ним без настройки прав.
Группу создать не забыл? (%
добавлена группа nxt и права доступа к устройству настроены на 666
С одной стороны ты создаёшь группу и присваиваешь владение файлом устройства ей, с другой оставляешь доступ на запись всем остальным. Если тебе нужен доступ для всех, то выделять группу — просто лишняя трата времени.
Да, я написал, что соответствующую группу присвоил пользователю.
Если конкретно, то:
выделять группу — просто лишняя трата времени
Да, понятно. Просто я решил заранее выделить, чтобы потом не забыть.
Сейчас мне важно разобраться с другими аспектами работы с устройством, и я решил по максимуму открыть права доступа, чтобы не ломать голову.
Но потом, я планирую перенести всё в компьютерный класс, и там, возможно, ограничу права доступа по групповому принципу, прикрыв права до 660.
Источник