package mtd import ( "fmt" "os" "strconv" "strings" ) func ReadMTDSize(devIndex int) (uint64, error) { path := fmt.Sprintf("/sys/class/mtd/mtd%d/size", devIndex) data, err := os.ReadFile(path) if err != nil { return 0, err } // Файл содержит размер в байтах как строку (например, "16777216\n") sizeStr := strings.TrimSpace(string(data)) size, err := strconv.ParseUint(sizeStr, 10, 64) if err != nil { return 0, fmt.Errorf("parsing size from %s: %w", path, err) } return size, nil }