The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Определение типа файла устройства"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы Программирование под UNIX (Public)
Изначальное сообщение [ Отслеживать ]

"Определение типа файла устройства"  +/
Сообщение от Niki (??) on 30-Июн-09, 10:23 
Вопрос такой. Как определить какой файл устройств из каталога /dev/ относиться к жесткому диску, а какой к флешке или CD? На разных компах жесткий определяется по разному, то как hda то как sda.
Высказать мнение | Ответить | Правка | Cообщить модератору

 Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Определение типа файла устройства"  +1 +/
Сообщение от badgopher (ok) on 30-Июн-09, 11:35 
>Вопрос такой. Как определить какой файл устройств из каталога /dev/ относиться к
>жесткому диску, а какой к флешке или CD? На разных компах
>жесткий определяется по разному, то как hda то как sda.

Тебе поможет find -l. Оно выдает много интересной инфы. В том числе и disk identifier. Ниже представлен скрипт, который ищет нужный файл в /dev. Скрипт должен запускаться с правами рута. Значение переменной SAVED_DISK_NO замени на disk identifier своего диска.

------cut----------
#!/usr/bin/env bash

SAVED_DISK_NO="0x0002059a"
for DISK_NAME in `find /dev -type b`
do
  echo "Processing $DISK_NAME..."
  DISK_NO=`fdisk -l $DISK_NAME 2> /dev/null | grep "Disk identifier" | awk '{print $3}'`
  if [ x"$DISK_NO" == x"$SAVED_DISK_NO" ]; then
    echo "Found $DISK_NAME"
    break
  fi
done
-----end cut---------

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

2. "Определение типа файла устройства"  +1 +/
Сообщение от badgopher (ok) on 30-Июн-09, 11:52 
Если тебя интересует вопрос как различить любой CD, хард или флешку, то тут может помочь fdisk -l  с грепом типа файловой системы. Конечно, различить флешку от харда тяжелее, но тут можно дополнительно воспользоваться выводом dmesg.


Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

3. "Определение типа файла устройства"  +/
Сообщение от Niki (??) on 30-Июн-09, 12:57 
Меня интересует как отличить неразбитый и не форматированный винт от cd и флешки. Соответственно на нем вообще не будит никакой файловой системы.


Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

4. "Определение типа файла устройства"  +1 +/
Сообщение от badgopher (ok) on 30-Июн-09, 13:01 
>Меня интересует как отличить неразбитый и не форматированный винт от cd и
>флешки. Соответственно на нем вообще не будит никакой файловой системы.

Ну тогда find'ом по блочным устройствам и найти то устройство у которого не будет партишенов. Тот же fdisk -l  должен помочь.


Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

5. "Определение типа файла устройства"  +/
Сообщение от gaa (ok) on 30-Июн-09, 14:59 
>Меня интересует как отличить неразбитый и не форматированный винт от cd и
>флешки. Соответственно на нем вообще не будит никакой файловой системы.

у cd и флешки общее то, что у них в /sys/block/${drive}/removable записано 1. Соответственно, у жёсткого диска там будет 0.

Верно для Linux, как для других ОСей различить я не знаю, м.б. также.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру