G-RAID Studio: Skirtumas tarp puslapio versijų

Iš Žinynas.
Jump to navigation Jump to search
(Naujas puslapis: Vaizdas:Screenshot 2026-03-11 at 00.45.20.png G-Technology G-RAID Studio Thunderbolt 2 = Prijungimas Linux'e = Į /etc/default/grub GRUB_CMDLINE_LINUX_DEFAULT arba /etc/k...)
 
 
6 eilutė: 6 eilutė:
 
= Prijungimas Linux'e =
 
= Prijungimas Linux'e =
  
Į /etc/default/grub GRUB_CMDLINE_LINUX_DEFAULT arba /etc/kernel/cmdline rekia pridėti
+
Į '''/etc/default/grub''' GRUB_CMDLINE_LINUX_DEFAULT eilutės galą arba '''/etc/kernel/cmdline''' (jeigu naudojamas [[EFI]] boot pvz ant Proxmox) reikia pridėti
 
  iommu=pt
 
  iommu=pt
  

Dabartinė 00:48, 11 kovo 2026 versija

Screenshot 2026-03-11 at 00.45.20.png

G-Technology G-RAID Studio Thunderbolt 2


Prijungimas Linux'e[keisti]

Į /etc/default/grub GRUB_CMDLINE_LINUX_DEFAULT eilutės galą arba /etc/kernel/cmdline (jeigu naudojamas EFI boot pvz ant Proxmox) reikia pridėti

iommu=pt

Pririšam thunderbolt'ą:

boltctl list
boltctl enroll <UUID>

Pvz.:

boltctl enroll 00000000-0000-0018-0004-d4032e54e050

Žiūrim ar atsiranda devaisas:

dmesg -w

Jeigu viskas ok ir buvo pakonfigytas ant JBOD, turėtų atsirasti diskai:

lsblk

Jeigu neatsirado toliau žiūrime dmesg kodėl..

Papildoma info[keisti]

c9:00.0 SATA controller: Marvell Technology Group Ltd. 88SE9230 PCIe 2.0 x2 4-port SATA 6 Gb/s RAID Controller (rev 11)

Controlleris taip pat exposina management console, kurios dar nepriveikiau...

lsscsi -g
 [2:0:0:0]    process Marvell  Console          1.01  -          /dev/sg2 
apt install sg3-utils
sg_inq /dev/sg2

Standarinės siunčiamos komandos grąžina statusą failed. Reikia tolimesnio tyrimo.

Reverse Engineered info[keisti]

Standartinis softas veikia kaip web aplikacija bet turi įrankį, kuris yra pacompilintas ant i386 ir tikrai ant naujų macOS neveiks, nebent turint seną macOS relyzą su mac'u kuriame yra TB2 portai galima pajungti ir išsiaškinti. Tas įrankis naudojamas backende atlikti visus juodus darbus, kuriuos vartotojas nurodo per tą web ui:

G-SPEED Studio Software Utility.app/Contents/Resources/XMLBase/cli_exeMod: Mach-O executable i386


Atvirkštine inžinerija išsiaiškinta šios detalės:

G-SPEED Studio CLI Notes[keisti]

This document explains how to use the bundled Promise/G-SPEED command line utility to:

 * identify physical disks
 * list physical disks
 * map UI disk labels to CLI disk IDs
 * change disk mode between unconfig and passthru
 * perform a few related physical-drive operations

It is based on the software bundle in this repository, especially:

 * G-SPEED Studio Software Utility.app/Contents/Resources/XMLBase/cli_exeMod
 * the web UI code that calls physical-drive APIs

Important terms[keisti]

 * PD ID: Physical Drive ID used by backend/API/CLI operations.
 * pdi_FlatId: Internal drive ID field used by the web UI data model.
 * PassThru: What this software uses as the JBOD-like mode for a drive.
 * Unconfigured: A drive that is not currently passed through and not in an array.

Important warning about numbering[keisti]

There are two different representations in this software:

 * Internal/backend ID: pdi_FlatId
 * Human-facing detail label: PD <id+1>

That means:

 * if the UI detail page says PD 1, the backend ID may actually be 0
 * if the physical drive list shows a raw numeric ID column, that raw numeric value is the one to trust for backend and CLI work

The web UI code confirms this:

 * the physical drive list uses item.pdi_FlatId
 * the detail view displays PD  plus getId()+1

Utility location[keisti]

Bundled CLI binary:

"/Users/devnull/Projects/G-Drive/G-SPEED Studio Software Utility.app/Contents/Resources/XMLBase/cli_exeMod"

Short shell variable for convenience:

CLI="/Users/devnull/Projects/G-Drive/G-SPEED Studio Software Utility.app/Contents/Resources/XMLBase/cli_exeMod"

Platform note[keisti]

The bundled cli_exeMod in this repository is a Mach-O i386 binary. On an arm64 Mac it may not run directly unless the proper compatibility layer is available. The commands below document the intended usage from the bundled help text and the surrounding application code.

How the software changes JBOD mode[keisti]

The web UI does not call a special jbod command.

It changes a physical drive's configuration state through the backend method:

 * setPhyDrvSettings

When switching a drive into JBOD-like mode, it sets:

 * pdsp_Flags = "PassThru"

The equivalent CLI operation is:

$CLI phydrv -a mod -p <PD_ID> -s "config=passthru"

To switch back:

$CLI phydrv -a mod -p <PD_ID> -s "config=unconfig"

Basic discovery workflow[keisti]

Recommended order:

 - List physical drives.
 - Identify the correct PD ID.
 - Confirm whether the drive is already Unconfigured or PassThru.
 - Change the mode only for the target drive.
 - Re-list drives to verify the new state.

List physical drives[keisti]

Basic listing:

$CLI phydrv

Explicit list action:

$CLI phydrv -a list

Verbose listing:

$CLI phydrv -v

List all SCSI devices instead of only disks:

$CLI phydrv -a list -l all

What to look for in output:

 * Physical Drive ID
 * model
 * slot/location
 * current status
 * array membership
 * current configuration status such as Unconfigured or PassThru

Identify the correct PD ID[keisti]

From the web UI[keisti]

Use the Physical Drives page.

The first numeric ID column comes from the raw internal field:

 * pdi_FlatId

That is the best candidate for CLI/API work.

Do not rely only on a detail screen label like PD 1, because the detail screen may display id+1 for humans.

From CLI output[keisti]

Use:

$CLI phydrv -v

The bundled help text indicates the output includes physical drive information and refers to Physical Drive Id.

Once you have the printed Physical Drive ID, use that exact number with -p.

Locate a drive physically[keisti]

Blink the LED for one disk:

$CLI phydrv -a locate -p <PD_ID>

Example from the bundled help:

$CLI phydrv -a locate -p 9

Use this before changing mode if you need to confirm the exact tray/slot.

Change a drive to JBOD-like mode[keisti]

In this software, JBOD-like mode means PassThru.

Command:

$CLI phydrv -a mod -p <PD_ID> -s "config=passthru"

Example:

$CLI phydrv -a mod -p 9 -s "config=passthru"

Expected use:

 * drive should currently be Unconfigured
 * drive should not be part of an active array

After changing mode, verify:

$CLI phydrv -v

Change a drive back from PassThru[keisti]

To return a passed-through drive to Unconfigured:

$CLI phydrv -a mod -p <PD_ID> -s "config=unconfig"

Example:

$CLI phydrv -a mod -p 9 -s "config=unconfig"

This is also what the web UI does when converting a PassThru disk back to Unconfigured.

Change drive alias[keisti]

The CLI help says alias can only be set on a configured drive.

Example:

$CLI phydrv -a mod -p <PD_ID> -s "alias=MyDisk"

Do not assume alias changes are allowed in Unconfigured or PassThru state.

Other physical-drive operations[keisti]

Force a drive offline:

$CLI phydrv -a offline -p <PD_ID>

Force a drive online:

$CLI phydrv -a online -p <PD_ID>

Clear PFA:

$CLI phydrv -a clear -p <PD_ID> -t pfa

Clear stale config:

$CLI phydrv -a clear -p <PD_ID> -t staleconfig

These are riskier than listing/locating and should be used only when you are sure about the drive state.

Global SATA/SAS drive settings[keisti]

The CLI also supports global settings on SATA/SAS drives through phydrv -a mod, for example:

$CLI phydrv -a mod -s "writecache=enable,rlacache=enable"

Drive-type-specific scope:

 * -d sata
 * -d sas
 * -d all

Examples:

$CLI phydrv -a mod -d sata -s "writecache=enable" $CLI phydrv -a mod -d sas -s "readcache=enable,multipath=enable"

These are global settings for drives of that type, not a single-disk mode switch.

Arrays and PD IDs[keisti]

The CLI help for array creation uses PD IDs directly:

$CLI array -a add -p 1,3,5~9 -l "raid=5,capacity=50gb,stripe=256kb"

This matters because it confirms that:

 * the same PD ID namespace is used across physical-drive and array commands
 * the IDs you discover in phydrv are the IDs you would use when creating arrays

Safe operating procedure[keisti]

Before changing a disk to PassThru:

 - List all drives with phydrv -v.
 - Record the target drive's PD ID, slot, model, and current config state.
 - If needed, run phydrv -a locate -p <PD_ID> to confirm the tray.
 - Ensure the drive is not part of an active array you care about.
 - Run phydrv -a mod -p <PD_ID> -s "config=passthru".
 - Re-run phydrv -v and confirm the new state.

Common examples[keisti]

List drives:

$CLI phydrv -v

Locate drive 4:

$CLI phydrv -a locate -p 4

Convert drive 4 to PassThru:

$CLI phydrv -a mod -p 4 -s "config=passthru"

Convert drive 4 back to Unconfigured:

$CLI phydrv -a mod -p 4 -s "config=unconfig"

Clear stale configuration on drive 4:

$CLI phydrv -a clear -p 4 -t staleconfig

What the web app code confirms[keisti]

Relevant behavior found in the application code:

 * Physical drive IDs come from pdi_FlatId.
 * UI detail display uses PD <id+1>.
 * The physical-drive settings panel offers Unconfigured and PassThru.
 * Saving those settings issues backend setPhyDrvSettings.
 * Advanced configuration code also toggles drives through setPhyDrvSettings.

Limitations of this note[keisti]

 * This document is based on bundled help text and code inspection.
 * The cli_exeMod binary in this repository was not executed successfully on the current arm64 host during this review.
 * If you run this on the original supported platform, verify syntax with:

$CLI help phydrv

or:

$CLI phydrv -h