libparted определить используемый сектор

0

Я пытаюсь определить сектора, используемые в разделе. Но libparted не поддерживает поддержку ntfs/ext4 для изменения размера парирования, в моем коде мне просто нужно знать, сколько сектора используется.

Код ошибки: "Ошибка: изменение размера файловых систем ntfs не поддерживается"

SLPartition::SLPartition(PedPartition *partition, SLDrive *drive) :
    _pedPartition(0),
    _drive(0),
    _mountInfo(QString()),
    _path(QString()),
    _name(QString()),
    _start(0),
    _end(0),
    _size(0),
    _sector(0)
{
    if(partition)
    {
        this->_pedPartition = partition;
        this->_drive        = drive;
        this->_path         = ped_partition_get_path(partition);
        this->_name         = QString::number(partition->num);
        this->_start        = partition->geom.start;
        this->_end          = partition->geom.end;
        this->_sector       = partition->geom.length;
        this->_size         = partition->geom.length / 2;


        qint64 usedSector = -1;

        PedFileSystem *pedFileSystem = ped_file_system_open(&partition->geom);

        if(pedFileSystem)
        {
            if(PedConstraint* pedConstraint = ped_file_system_get_resize_constraint(pedFileSystem))
            {
                usedSector = pedConstraint->min_size;
                ped_constraint_destroy(pedConstraint);
            }

            ped_file_system_close(pedFileSystem);
        }

        qDebug() << usedSector;

        // TODO MountInfo
    }
}

Есть ли альтернативное решение? Спасибо.

Теги:
qt

1 ответ

0

Один из альтернатив - выложить на sfdisk который имеет машинный синтаксический вывод.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню