Как посмотреть содержимое флешки qnx

Как посмотреть содержимое флешки qnx

Что-то я не так делаю, а что не пойму.

скачал драйвер для USB, установил (я так понял, что это просто копирование файлов в /bin, верно?)

потом,
1) вставляю флэшку
2) запускаю io-usb
3) смотрю появляется /dev/usb
4) запускаю Fsys.umass &
5) через время пишет ‘No Adaptors found!’

это как?
PS: запускаю это всё под VMWare 5.5.1 build-19175

Есть ещё такая фича, я не интересовался почему, и для всех ли флэшек, это уже под 6.3.0, но подсистемы USB почти одновременно сделали, и у них много общего:

Под WMWare Transcend USB Flash-ки видит нормально, то есть проблема скорее не в виртуальной машине. Пункт 4) от PoP показывает что-нибудь?

2mgb14: речь идет о qnx 4.25?

1) А Вы флешку на хост-системе отмонтировали после загрузки виртуальной машины в варе?
2) USB-девайсы есть в конфгурации Вашей виртуальной машины?
3) Апдейт для USB с www.qnx.com скачивали?

Хмм. У меня флешка Transcend 256Mb. Без раздела. Видится всюду и всеми. Может у Вас модерн какой-нибудь попался?

О! с магической строкой, после
1) # io-usb
2) # Fsys.umass &

вижу устройство /dev/fd1,
а на

3) # usb
получаю
USB 0 (UHCI) v1.10, v1.01 DDK, v1.01 HCD

Device Address : 1
Vendor : 0x10d6
Product : 0x1000
Class : 0x00 (Independant per interface)

А как теперь собственно посмотреть что на флэшке?

Что ж тут снова не так?

Для работы с FAT-partitions используется утилита Dosfsys или более поздний ее аналог Fatfsys (он поставлялся с одним из патчей). Эти файлы находятся в каталоге /bin. Краткий порядок их использования посмотрите командой:
#use Dosfsys или
#use Fatfsys

Источник

Базовые знания по QNX 4.25 необходимые в работе.

Требования перед началом прочтения:

Краткое содержание.

1.Основные понятия.

Примечание:

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

Операционная система— комплекс программных средств обеспечивающих инфраструктуру для выполнения программ (приложений) пользователя.

Ядро операционной системы – программный модуль, который загружается первым, на старте операционной системы и обеспечивает загрузку и дальнейшее функционирование ОС. Ядро не выгружается из памяти пока компьютер не выключен, в отличии от загрузчика ОС.

Загрузчик операционной системы— программный модуль обеспечивающий получение управления от BIOS и загрузку ядра ОС. Обеспечение загрузки ядра- это единственная функция загрузчика.

Микроядро – программная часть ядра ОС обеспечивающая базовые функции:
передача сообщений— микроядро обеспечивает маршрутизацию всех сообщений в системе

диспетчеризация – распределение машинного времени между процессами в системе

Процесс— загруженный в память и выполняемый программный код.

Операционная система реального времени— ОС с нормированным временем задержки на события

Драйвер устройства— программный код обслуживающий аппаратные ресурсы компьютера. Драйвер обеспечивает взаимодействие ОС и оборудования.

Расширение системного процесса

Узел (Node)- номер идентификатор микроядра, который микроядро само себе присваивает и сообщает при запросе другим процессам. Является идентификатором в сети QNET.

Логическая сеть- при инициализации коммуникационного оборудования данному оборудованию может быть присвоен условный ID-сети. В последующем этот ID-сети можно использовать при маршрутизации сообщений.

Сеть QNET – механизм передачи сообщений в сети машин с ОС QNX. Не различается передача сообщений в локальной системе и сети (прозрачность сети Qnet).

Оконный менеджер – программа управляющая размещением и определяющая внешний вид окон в графическом интерфейсе пользователя.

Командный процессор (оболочка операционной системы) – интерпритатор команд, обеспечивающий интерфейс взаимодействия пользователя и системы.

Консоль – интерфейс командной строки

Псевдотерминал— реализация консоли в оконном менеджере.

Скрипт— программа для командного процессора.

Файловая система- порядок определяющий способ организации, хранения и именования данных на носителях информации.

Интерпритация программы— построчный анализ, обработка и выполнение исходного кода программы или запроса.

Компиляция программы – перевод исхордного кода программы в машинный код, доступный для непосредственного выполнения.

Физическая консоль— Адаптер дисплея, дисплей и системная клавиатура в совокупности носят название физической консоли, управляемой драйвером консоли.

Жесткая ссылка – по своему смыслу- еще одно имя файла или каталога. Файл остается доступным, пока не удалена последняя жесткая ссылка на него (последнее имя файла).

Мягкая ссылка – или символическая ссылка, указывает на имя существующего файла, по сути ярлык перенаправляющий вас по другому адресу. Если целевой файл удален, то символическая ссылка указывает в никуда.

Корневой каталог— каталог в который смонтирована корневая файловая система. Корневой каталог обозначается символом «/» или «///». Необходимость использовать обозначение «///» возникает когда вы переходите из каталога на другом узле в сети в корневой каталог узла, с которого осуществляется работа.

2.Основы архитектуры.

QNX 4.25 основана на микроядерной архитектуре. Микроядро занимается только диспетчеризацией и передачей сообщений. Прочие функции добавляются в ядро при его настройке и сборке исходя из функциональных особенностей применения.

QNX 4.25 не различает системные и пользовательские процессы. Функции «вшитые» в ядро системы ни чем не отличаются от других процессов.

QNX 4.25 обеспечивает прозрачную гомогенную сеть вычислительных ресурсов.

Для обеспечения минимальной работоспособности системы в ядро должны входить и некоторые системные процессы, перечислим их:

QNX 4.25 построена на концепции «все есть файлы». Для нас это означает, что при запуске драйвера устройства в каталоге /dev создается файл устройства, и взаимодействие с оборудованием происходит через этот файл. Имена устройств могут быть изменены программным путем при их инициализации, тем не менее, приведем общепринятые примеры:

Читайте также:  похожие персонажи на дадзай осаму

/dev/serN ( где N- 1,2,3…)- файл соответствующий СОМ-порту

/dev/hdN – файл жесткого диска

/dev/hd1t11 – файл раздела типа FAT

/dev/null – чёрная дыра или мусорка, что туда не пиши, все закончится успехом и пропадёт

/dev/conN – интерфейсы консолей.

/dev/ttypN – интерфейсы псевдотерминалов.

Поскольку «все есть файлы» будут корректны следующие конструкции:

cp /dev/ttyp0 /dev/ser1 – все что вводится в виртуальной консоли, будет отправлено через СОМ1;

Работа с сетевыми картами Ethernet происходит по-другому.

Распределение прав доступа к ресурсам происходит на основе пользователей и групп.

Для запуска графики нужны графический драйвер для видеокарты, что может стать проблемой.

3. Доступ к файловой системе. Монтирование дисков.

Доступ к файлам хранящимся на жестких дисках, флешнакопителях и других подобных устройствах, осуществляется через механизм монтирования. Механизм монтирования является крайне важным для QNX, а также других ОС. Доступ ко всем ресурсам (или почти всем) осуществляется как к файлам. Доступ к дискам осуществляется как доступ к каталогам (тоже файл, только особого вида содержащий список файлов и каталогов). Базовый каталог обозначается символом «/» и называется корневым (root). В корневой каталог должен быть смонтирован раздел диска с файлами ОС QNX, при старте системы.

mount –p /dev/hd0 /dev/hd0t77 /

Команда выполняет следующие действия:

В QNX 4.25 есть серьезные ограничения на количество и тип разделов расположенных на одном диске, оно вытекает из именования файлов в каталоге /dev. В приведенном выше примере hd0t77 будет произведена попытка смонтировать устройство как файловую систему QNX4. Файловые системы QNX4, так же могут иметь тип 78. И на этом выбор ограничен. Таким образом, на одном диске мы можем расположить только две файловые системы QNX4.

Монтирование «не родных» файловых систем может происходить с некоторыми особенностями.

4. Процесс загрузки системы.

Загрузка системы QNX4.25 можно разделить на несколько этапов. Кроме того, для нас, важна диагностика сбоев на этапе загрузки, соответственно особое внимание уделим сообщениям BIOS, загрузчика, ядра и др.

1 этап. Загрузка BIOS прохождение процедуры POST.

После включения компьютера загружается BIOS и проводится диагностика железа (процедура POST). На экран может выводиться или заставка, или результат диагностики. По результату диагностики, как правило, подается звуковой сигнал системным динамиком. Один короткий сигнал- все хорошо. Управление передается на MBR диска (как правило в настройках BIOS задается последовательность дисков, для передачи управления).
Возможные проблемы на первом этапе:

2 этап. Загрузчик QNX.

Если загрузчик успешно найден, то мы увидим сообщения следующего вида (в скобках пояснения):

QNX Loader (старт загрузчика QNX)

Boot Partition 1 (Загрузка будет производиться с раздела 1, если на диске более одного раздела, будет предложение выбрать нажав клавишу «2», «3» или иную)

(В туже строку) (началась загрузка ядра системы)

(В туже строку)……. ( при успешной загрузке ядра будет 10 точек)

(Далее сообщения ядра, можно поменять или удалить при конфигурировании)

Дальше в случае удачного монтирования корневого раздела утилита sinit загружает командный процессор ( например sh) и передает ему файл sysinit.node или sysinit или altsysinit, в зависимости от условий загрузки.

3 этап загрузки. Выполнение файла инициализации.

Если все предыдущие этапы прошли успешно, то командный процессор начинает выполнение команд из файла инициализации системы /etc/config/sysinit.node (или другого, см. выше).

Команды, выполняемые до переопределения переменной PATH, должны быть на жестком диске в каталоге /bin, /usr/bin. По всей видимости состояние переменной PATH, для этого этапа, можно где-то прописать, но пока не знаю где.

Некоторые команды рассмотрим в отдельном разделе «5. Команды в файле sysinit.»

Файлы в каталоге /etc/config/trap.

В каталоге /etc/config/trap находятся важные файлы для работы системы.

Input.node – файл для настройки мыши и клавиатуры

crt.node – файл настройки графического режима Photon microGUI


5.Команды в файле sysinit.

Если все предыдущие этапы прошли успешно, то командный процессор начинает выполнение команд из файла инициализации системы /etc/config/sysinit.node (или другого, см. ниже).

Файл /etc/config/sysinit.node выполняется при штатной загрузке, где node номер узла для текущего ядра.
Файл /etc/config/sysinit выполняется, если sysinit.node не обнаружен.
Файл /etc/config/altsysinit выполняется для ядра .altboot по альтернативной загрузке.

Исходя из выше сказанного, акцентируем внимание на некоторых моментах:

Файл /etc/config/sysinit – это обычный скрипт командного процессора и должен соответствовать правилам написания скриптов;

Файл /etc/config/sysinit – не единственный файл выполняемый при входе в систему;

Некоторые процессы, такие как драйвера устройств, должны продолжить выполнение в фоновом режиме. Не забывайте использовать знак “&” после команды, для возврата управления ;

Для понимания, происходящего в системе, рассмотрим, некоторые команды в файле sysinit.

6. Пользователи и группы. Пользователь root.

Разграничение прав доступа в QNX происходит на основе атрибутов файлов (в том числе файлов устройств). Атрибуты файлов являются свойством файловой системы QNX, соответственно, копирование файла на файловую систему другого типа приводит к потере его атрибутов. (Если распаковать архив на флешку с файловой системой FAT, то все атрибуты будут сброшены и ПО не будет работать).

Фалы имеют следующие атрибуты:

Owner – ID владельца файла ( соответствие определено в файле /etc/default/passwd)
Group – ID группы которой принадлежит файл ( соответствие определено в файле /etc/group)

Права доступа для владельца, группы и прочих. R-W-X- соответственно, чтение, запись, выполнение.

Иногда выражают в числовом в виде 0-0-0 = 0 все запрещено. 1-1-1 =7 все разрешено. Таким образом права на файл 760 означают:

Читайте также:  с чего начинается крым с какого города

Владельцу- все разрешено, группе – разрешено чтение и запись, прочим – доступ закрыт.

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

Пользователь root – всегда есть в системе, имеет не ограниченные права, в том числе по ограничению собственных прав.

7. Установка системы на диск или иное устройство.

В общем случае установка системы на диск происходит в несколько этапов:

Создание образа системы и загрузочного диска;
Этот раздел не рассматривается, считаем что образ системы получен у производителя.

Загрузка с подготовленного загрузочного носителя;
Как правило установка происходит без изъятия носителя из устройства, соответственно нам необходимо получить доступ к диску и доступ к инструментам для работы с диском. Для этого применяются установочные диски CD-ROM от дистрибьютора или специально подготовленные носители USB, CD-ROM или загрузка по сети.

Разметка диска утилитой fdisk;
Для разметки жесткого диска необходимо запустить соответствующий драйвер, посмотреть/определить имя диска и передать его утилите fdisk.
Fsys.eide & # Смотрим выдачу.
ls /dev #Смотрим содержимое каталога /dev и имя нашего диска (нужно посмотреть до и после, затем найти разницу). Предположим это hd0.
fdisk /dev/hd0
shutdown # До перезагрузки системы результата можем не увидеть.
По утилите fdisk достаточно много материалов, стоит лишь отметить, что системный раздел следует делать первым, тип системного раздела 77, размер системного раздела более 500Мб не имеет смысла, пространство далее 2Гб может не поддерживаться. Системный раздел необходимо отметить как «загрузочный/boot». Загрузчик на этом этапе ставить не следует.

Создание файлов конфигурации системы и размещение их на диске;
Отдельная большая тема. Считаем, что все есть в образе системы.

Создание ядра системы и размещение его на диске;
Отдельная большая тема. Считаем, что все есть в образе системы.

Подготовка загрузчика и размещение его на диске (если загрузчик установлен до создания файловой системы, ОС едва ли стартует);
Утилита fdisk позволяет установить стандартный загрузчик QNX, через свой интерфейс.
Для установки специальных загрузчиков следует воспользоваться командой :
fdisk –B fileNameLoader /dev/hd0 loader

Размещение файлов лицензий.
Лицензии нового стиля добавляются в файл /.licenses.
Лицензии старого стиля находятся в каталоге /etc/licenses.
Лицензирование происходит по количеству узлов в сети. Если лицензия на четыре узла, а в сети две машины с номерами узлов 3 и 5, то связи между ними не будет. Потому что 5 больше 4.

Извлечение установочного носителя и загрузка, вновь установленной ОС;
После копирования файлов, крайне рекомендуется, выполнить команду: sync. Только затем перезугружать систему.

8. Сеть Qnet. Настройка сети Qnet.

Возможности сети Qnet:
Сеть Qnet позволяет объединить машины с QNX 4.25 в гомогенную сеть, с прозрачным доступом к ресурсам. Резервирование сетей при помощи логического ID сети.

Для работоспособности сети Qnet необходимы следующие условия:

Маршрутизация логических сетей:
Любой узел является мостом между однотипными логическими сетями.

Примеры рабочих конфигураций:

Виртуальная машина, сетевой адаптер Intel PRO/1000 MT Desktop (82540OEM)

netmap –f
nameloc &
netmapd &

Виртуальная машина,
1 сетевой адаптер Intel PRO/1000 MT Desktop (82540OEM), Внутренняя сеть 1;
2 сетевой адаптер PCnet-FAST III (Am 79C973), Внутренняя сеть 2;

Net &
Net.i82540 –l 1 &
Net.ether2100 –l 2 &

netmap –f
nameloc &
netmapd &

l1 – имя будущего иньеофейса будет en1

9. Настройка протокола TCP/IP в QNX 4.25.

Для запуска TCP / IP со статическим адресом необходимы две команды:
/ usr / ucb / Socket Name &
/ usr / ucb / ifconfig en 1 192.168.0.1

Поверх TCP/IP возможна поддержка некоторых протоколов: NFS, SMB, FTP, SMTP, TELNET.

10.Лицензии в QNX 4.24.

Необходимо активировать лицензии командой:
license r

Необходимо активировать лицензии командой:
license r

11. Конфигурирование, сборка и установка ядра в систему.

Обычно формирование образа ядра необходимо для решения следующих задач:

Стоит остановиться на формировании образа ядра для того или иного источника загрузки. Очевидно, что загруженное ядро должно получить доступ к командному процессору и файлу sysinit. Для этого необходимо включить в ядро необходимые средства для доступа к корневому разделу.

Например:
Fsys, Fsys.ata, mount – позволяют получить доступ корневому разделу расположенному на диске с драйвером Fsys.ata.
Fsys, io-usb, Fsys.umass, mount – необходимы если корневой раздел находится на USB накопителе
Перед сборкой ядра необходимо создать файл конфигурации. В каталоге /boot/build/ можно посмотреть образцы файлов конфигурации. В каталоге boot/images находятся собранные ядра.
Средства автоматизации для создания конфигураций отсутствуют. Файл конфигурации необходимо создавать в текстовом редакторе.
Более подробную информацию можно получить в справочной системе графической среды Photon microGUI.

Для сборки ядра можно применять следующие команды:
cd /boot
buildqnx build/hard.1 images/hard.ata.1
или
cd /boot
make b=hard.1
Если в первом варианте имя целевого файла задается прямо, то во втором случае целевой файл будет находиться в каталоге /boot/images и иметь тоже имя, что и файл конфигурации (полный путь: /boot/images/ hard.1).
Установка ядра в систему происходит копированием полученного файла в файл /.boot или /.altboot.

ВАЖНО. Кроме того следует позаботиться о конфигурировании системы для нового ядра и возможности загрузки в случае ошибок. В общем случае стоит действовать по следующему алгоритму:

12.Установка специальных загрузчиков.

Несмотря на то, что загрузчик QNX представляет приемлемые возможности по загрузке, иногда требуется установка специальных загрузчиков для расширения функциональных возможностей системы.

Установка загрузчика из файла filename:

fdisk –B filename /dev/hd0 loader

13.Настройка и запуск графической оболочки Фотон (Photon microGUI).

Графическая оболочка Photon microGUI для QNX 4.25 позволяет использовать современный графический интерфейс пользователя (GUI).
С поддержкой PS/2 устройств, проблем не возникает с поддержкой USB устройств, не все однозначно.

Читайте также:  Видеть во сне новые полусапожки

14.Драйвера устройств и файловых систем. Многоуровневая модель драйверов.

Концепция многоуровневой модели драйверов, или послойной модели, заключается в том, что драйвер выполняет свою, узко специализированиую функцию, передовая результаты своей работы дальше по цепочке уровненей, соответственно получая входные данные от предыдущего слоя.

Подобная концепция вытекает из концепции, применяемой в UNIX-подобных ОС, когда каждую программу нагружают минимальным количеством однородного функционала, что позволяет строить более гибкую и более надежную систему.

Рассмотрим концепцию на прмере получения доступа к USB-накопителю:

Fsys.umass Io-usb Fsys Fatfsys

Большинство драйверов распалагается в каталоге /bin и имеют достаточно понятное наименование файлов:

Используйте команду use для получения краткой справки.

15.Основы работы и программирования в командном процессоре.

Заходя в систему в текстовом режиме вы, как правило, видите приглашение командного процессора. Вводя команды, вы можете управлять системой или запускать программы.

В QNX 4.25 доступны bash, ksh, sh. В базовые возможности командных процессоров входит интерактивный ввод и испольнение встроенных команд, исполение скриптов, запуск программ.

Некоторые базовые сущьности для коммандных процессоров:

Абсолютный путь— полный путь к файлу или каталогу начиная от корневого ( /home/username/.profile)

Переменная “PATH – перечень каталогов, в которых ищуться испольняемые файлы, задаваемые только по имени.

Скрипт текстовы файл, который является программой для командного процессора. Скрипты выполняются в режиме интерпритации. Перевод строки является командой на выполнение, таким образом, для выполнения последней команды в скрипте, должна быть переведена строка и скрипт будет оканчиваться, или пустой строкой, или комментарием.

Переменные окружения – для настройки поведения командного процессора (оболочки ) используются переменные окружения( Например: PATH).

Команда expot – объявляет о том, что переменная окружения будет передоваться дочерним процессам. (Не путать с объявлением глобальной переменной в языках програмирования).

Часто используемые приемы работы с коммандными процессорами (не все возможности есть во всех оболочках):

Стрелки вверх и вниз – переход по истории команд в текущем экземпляре оболочки.

Источник

Как посмотреть USB устройства Linux

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

Каждому новичку важно уметь идентифицировать подключенные устройства, будь то usb флешки, SD карты или жесткие диски чтобы не записать что-либо не туда или не отформатировать не тот диск. В этой статье мы рассмотрим несколько способов как посмотреть usb устройства Linux, подключенные к компьютеру.

Список подключенных устройств Linux

В операционной системе Linux используется особенная философия управления. Все объекты, в том числе и устройства считаются файлами. При подключении какого-либо устройства к системе для него создается файл в каталоге /dev/.

Обычно, после того, как вы подключили любую USB флешку или другой накопитель к системе с установленным окружением рабочего стола, устройство автоматически монтируется в папку /media/имя_пользователя/метка_устройства/, а затем вы можете получить доступ к файлам из устройства в этой папке. Тем не менее, бывают ситуации, когда вам нужно вручную монтировать USB и тогда такой вариант не поможет.

Файлы всех устройств находятся в каталоге /dev/. Здесь вы можете найти файлы sda, hda, которые представляют из себя жесткий диск, а также файлы sda1 или hda1, которые позволяют получить доступ к разделам диска. Мы уже подробно рассматривали это все в статье работа с устройствами Linux. Вы можете посмотреть список всех устройств в каталоге /dev/ с помощью команды:

Теперь осталось понять какие из этих файлов устройств принадлежат USB устройствам и каким устройствам именно.

Как посмотреть USB устройства Linux

Чтобы узнать более подробную информацию о каждом устройстве, подключенном к вашей системе и посмотреть список устройств linux, можно использовать команду df. Она используется для просмотра свободного места на диске:

По общему размеру и занятому пространству вы можете определить какое из устройств является вашей флешкой, но этот способ посмотреть устройства linux не очень удобен и работает он только с уже смонтированной флешкой, есть еще несколько, дающих более точную информацию.

Есть еще один способ, это утилита fdisk. Она позволяет посмотреть таблицу разделов на всех блочных устройствах, подключенных к компьютеру. Но утилиту нужно выполнять от имени суперпользователя:

Также, узнать о подключенном USB устройстве можно посмотрев очередь сообщений ядра dmesg. Здесь хранится информация обо всех операциях, которые происходят в ядре. В том числе здесь будет отображено имя флешки, только что подключенной к компьютеру. Для просмотра сообщений ядра выполните:

Чтобы посмотреть какие из sd устройств относятся к USB используйте такую команду:

Попытаться идентифицировать свою флешку в системе через терминал можно с помощью утилиты blkid. Она выводит UUID идентификаторы всех подключенных устройств, а также файловую систему:

Выводы

В этой статье мы рассмотрели как посмотреть usb устройства linux, а также как узнать имя своей usb флешки в системе. Вы можете использовать любую из команд, которая вам понравилась, или же сразу несколько. Но теперь вы знаете как точно определить имя файла своей флешки.

Источник

Обучающий онлайн портал