Сначала вам нужно выполнить следующую команду:
dhclient -v -r
Затем изменить адрес ip
:
ifconfig eth0 xx.xx.xx.xx
Изменить xx .xx.xx.xx
с необходимым ip_adress
Почему у нас есть и / dev / cdrom
, и / media / cdrom
?
Почему у нас есть и / dev / sda2
, и / home
?
По сути, / dev / cdrom
- это файл . Когда вы обращаетесь к нему, вы обращаетесь к отдельным битам и байтам на компакт-диске (если он есть). В то время как / media / cdrom
- это папка . Когда вы открываете его, вы получаете доступ к файлам , хранящимся на компакт-диске.
Точно так же / dev / sda2
представляет необработанное содержимое второго раздела на первом жестком диске. Вы должны писать прямо в него, например, если хотите отформатировать раздел. (Программа mkfs
буквально открывает / dev / sda2
или что-то еще и записывает в него определенные битовые шаблоны.) Затем вы монтируете / dev / sda2
в, скажем, / home
, и теперь вы можете получить доступ к фактическим файлам . Когда вы получаете доступ к файлам через точку монтирования, драйвер файловой системы читает и записывает файл базового устройства.
Именно так работает Unix.
Вы можете видеть, что / dev / cdrom
на самом деле является специальным файлом блока , который является файлом устройства .
$ ls -l / dev / cdrom
lrwxrwxrwx 1 root root 3 18 марта 17:00 / dev / cdrom -> sr0
$ ls -l / dev / sr0 {{1} } brw-rw ---- + 1 корневой компакт-диск 11, 0 18 марта 17:00 / dev / sr0
Посетите Стандарт иерархии файловой системы :
/ media
] Точки монтирования для съемных носителей, таких как CD-ROM (появились в FHS-2.3).
$ ls -ld / media / cdrom /
drwxr-xr-x 2 root root 4096 15 июня 2015 / media / cdrom /
Этот каталог содержит подкаталоги, которые используются как точки монтирования для съемных носителей , таких как дискеты, компакт-диски и zip-диски.
Итак, / dev / cdrom
и / media / crdom
- это совершенно разные вещи. один является файлом блока / устройства для CD-ROM, а другой - каталогом для его монтирования!
Хороший источник информации об этом (и многом другом) можно найти здесь https://en.wikipedia.org/wiki/Filesystem_Hierarchy_Standard
Почему бы просто не получить доступ к файлам на компакт-диске через / dev / cdrom
В дополнение к уже предоставленным ответам вы не можете использовать / dev / cdrom
для доступа к содержимому компакт-диска, потому что монтируете / dev / cdrom
(файлы, присутствующие на компакт-диске) поверх / dev / cdrom
(устройство) - запрещенная операция.
В Linux вы можете монтировать файловую систему только поверх существующего каталога, но не поверх существующего файла или устройства.
Если ОС разрешает такую операцию, побочным эффектом будет доступ к исходному / dev / cdrom
, который больше не будет возможен после монтирования.
Если вы действительно хотите получить доступ к своему компакт-диску через / dev / cdrom
, вот хитрость, которая должна сработать:
umount /media/cdrom
mv /dev/cdrom /dev/cdrom-org
mkdir /dev/cdrom
mount /dev/cdrom-org /dev/cdrom
Конечно, в этом нет особого смысла.
Драйверы устройств Linux представлены в виде специальных файлов. Утилиты / приложения выполняют файловые операции с этими файлами (вызовы ioctl) для управления устройствами.
Одним из примеров утилиты, которая будет вызывать специальный файл для управления устройством, является «mount».
Утилита mount - это программа, предназначенная для представления данных на устройстве cdrom в виде структуры каталога / файла. Это хорошо понятный и удобный способ использования данных для пользователей путем простого чтения их из файловой структуры, созданной утилитой монтирования.
Устройство компакт-диска поддерживает множество других операций со специальным файлом, например для открытия / закрытия панели задач и т. д.
Многие специальные файлы, используемые для управления устройствами, хранятся в / dev, чтобы разработчикам / пользователям утилит было проще узнать, где их искать.
Кроме того, утилиты, которые представляют данные об устройствах (например, cdrom, SDCard, карту памяти и т. Д.) В виде структуры каталога / файла, делают это в / media, чтобы разработчикам / пользователям было проще узнать, где искать.
Таким образом, оба используются для своих собственных целей.
/ media / cdrom
- это соглашение для точки монтирования , а / dev / cdrom
- специальное устройство, которое может быть установлено на первом.
Вам нужны оба, потому что они служат разным целям: большинство приложений не читают напрямую со специального устройства, но могут читать из файловой системы (что-то, что смонтировано)
(Спасибо за множество ответов на мой вопрос. После некоторого поиска в Интернете я хочу поделиться своим пониманием.)
Согласно здесь :
В Unix-подобных операционных системах файл устройства или специальный файл представляет собой интерфейс для драйвера устройства , который появляется в файловой системе, как если бы это был обычный файл.
Согласно здесь :
Команда mount служит для присоединения файловой системы , найденной на каком-то устройстве , к большому файловому дереву.
Итак, я думаю, что здесь есть 2 разных уровня абстракции программного обеспечения:
/ dev / cdrom
- это специальный файл устройства. Он абстрагируется от оборудования CD-ROM как блочного устройства ввода-вывода. Эта абстракция предоставляется драйвером устройства.
/ media / cdrom
- точка монтирования файловой системы. Таким образом, он обеспечивает более высокий уровень абстракции оборудования CD-ROM, то есть файловой системы. Например, файловая система ISO-9660 . И эта абстракция обеспечивается драйвером файловой системы.
Итак, по сути, 2 разных местоположения файлов для 2 разных уровней абстракции. И в разных сценариях нам может понадобиться другой. Я думаю, что другие ОС, такие как Windows, также предоставляют такие разные возможности, только Linux объединяет их в единую файловую иерархию.
(Думаю, мне стоит поэкспериментировать, написав код на C в Linux для взаимодействия с / dev / cdrom
и / media / cdrom
. И посмотрите, как все пройдет дальше.)
(Я буду продолжать учиться и при необходимости уточнять свое понимание.)