Проверка, которую Вы ищете, находится в acl_permission_check()
в fs/namei.c
. Это просто проверяет необработанного пользователя и Значения идентификаторов группы для пользователя, делающего системный вызов против значений, найденных в inode файла.
Для нормальной файловой системы POSIX полный путь вызова:
open(2)
→sys_open()
→do_sys_open()
→do_filp_open()
→finish_open()
→may_open()
→inode_permission()
→generic_permission()
→acl_permission_check()
Для других типов файловой системы (например, FAT) цепочка вызовов может варьироваться из-за отсутствия inodes, битов полномочий и такого.
Ядро не заботится, куда пользователь и идентификаторы группы происходят из, или каковы их фактические значения.
В исследовании этого большая часть результатов, которые я находил, указала на объекты, в которых я упоминаю, приводит № 1 и № 2. Я добавляю, что некоторые дополнительные ведут, который мог бы стоить развития, но я буду ожидать, что возможностью чего-либо после ведущего № 3 будет "Аве Мария".
Первое имеет отношение к использованию GPT разделение жесткого диска по сравнению с MBR. Таким образом, я предложил бы пытаться использовать gdisk
, parted
, или даже sgdisk
вместо этого.
Другая проблема, которые, кажется, подходят, была то, что сообщение "неизвестная таблица разделов" произойдет при обнаружении с или сбоем или с дефектным твердотельным диском, или если контроллер, с которым это подключено, перестал работать. Для устранения контроллера, Вы могли бы хотеть попытаться подключить SSD к другому контроллеру, чтобы видеть, сохраняется ли проблема.
Третий выпуск, с которым я столкнулся, походил на неправдоподобную возможность, но я упомяну это тем не менее. Возможно, существует встроенное микропрограммное обеспечение на Вашем SSD, который нуждается в том, чтобы быть обновленным? Это - поток, с которым я столкнулся, названный: Сбой твердотельного диска? Повторно смонтируйтесь только для чтения.
Согласно модели # Вы упомянули, "ocz вершина 3 90 ГБ", там появляется к некоторым потенциальным обновлениям, доступным на веб-сайте OCZ: http://ocz.com/consumer/download/firmware.
Наконец я смотрел бы на вывод hdparm -i <device>
видеть, может ли это пролить какой-либо свет на то, что продолжает Ваш твердотельный диск.
$ sudo hdparm -i /dev/sdc
/dev/sdc:
Model=ST3000DM001-1CH166 , FwRev=CC43 , SerialNo= Z1XXXXXX
Config={ HardSect NotMFM HdSw>15uSec Fixed DTR>10Mbs RotSpdTol>.5% }
RawCHS=16383/16/63, TrkSize=0, SectSize=0, ECCbytes=4
BuffType=unknown, BuffSize=0kB, MaxMultSect=16, MultSect=?16?
CurCHS=16383/16/63, CurSects=16514064, LBA=yes, LBAsects=268435455
IORDY=on/off, tPIO={min:120,w/IORDY:120}, tDMA={min:120,rec:120}
PIO modes: pio0 pio1 pio2 pio3 pio4
DMA modes: mdma0 mdma1 mdma2
UDMA modes: udma0 udma1 udma2
AdvancedPM=yes: unknown setting WriteCache=enabled
Drive conforms to: unknown: ATA/ATAPI-4 ATA/ATAPI-5 ATA/ATAPI-6 ATA/ATAPI-7
* signifies the current active mode
Возможно, приложение testdisk
смогший для восстановления что случилось с SSD? Эта функция - то, что привлекло мое внимание:
- Исправьте таблицу разделов, восстановите удаленный раздел
Можно выполнить любой из этих инструментов на SATA и SSD жесткий диск. Возможно, один из них может восстановить что случилось с Вашим диском? Я имел хороший успех с обоими продуктами в восстановлении дисков, которые иначе не работали бы правильно. Обратите внимание, что HDAT2 является бесплатным программным обеспечением, в то время как Spinrite является коммерческим продуктом.
Удостоверьтесь, что тщательно исследовали dmesg
журнал после начальной загрузки системы, чтобы определить, как устройство SSD обнаруживается ядром Linux. Дополнительная информация может быть показана там, который мог бы пролить свет на то, почему устройство действует странно при попытке разделить его.
sgdisk
также: unix.stackexchange.com/questions/103879 / … – slm♦ 10.02.2014, 03:42hdparm -i /dev/...
сказать? – slm♦ 10.02.2014, 03:54