Linus Torvalds va explicar els problemes amb la implementació de ZFS per al nucli Linux

Durant la discussió proves planificador de tasques, un dels participants de la discussió va donar un exemple que, malgrat les declaracions sobre la necessitat de mantenir la compatibilitat en desenvolupar el nucli Linux, els canvis recents al nucli van interrompre el correcte funcionament del mòdul "ZFS a Linux". Linus Torvalds va respondreque el principi"no trenqui usuaris" es refereix a preservar les interfícies externes del nucli utilitzades per les aplicacions d'espai d'usuari, així com el propi nucli. Però no cobreix complements de tercers desenvolupats per separat sobre el nucli que no s'accepten a la composició principal del nucli, els autors dels quals han de supervisar els canvis al nucli sota el seu propi risc i risc.

Pel que fa al projecte ZFS a Linux, Linus no recomanava utilitzar el mòdul zfs a causa de la incompatibilitat de les llicències CDDL i GPLv2. La situació és que, a causa de la política de llicències d'Oracle, les possibilitats que ZFS pugui entrar mai al nucli principal són molt petites. Les capes proposades per evitar la incompatibilitat de llicències, que tradueixen l'accés a les funcions del nucli a codi extern, són una solució dubtosa - continuen els advocats argumentar sobre si la reexportació de les funcions del nucli GPL mitjançant embolcalls dóna lloc a la creació d'un treball derivat que s'ha de distribuir sota la GPL.

L'única opció en la qual Linus acceptaria acceptar el codi ZFS al nucli principal és obtenir el permís oficial d'Oracle, certificat per l'advocat principal, o millor encara, el mateix Larry Ellison. No es permeten solucions intermèdies, com ara capes entre el nucli i el codi ZFS, donada la política agressiva d'Oracle pel que fa a la propietat intel·lectual de les interfícies de programació (per exemple, judici amb Google pel que fa a l'API de Java). A més, Linus considera que el desig d'utilitzar ZFS només és un homenatge a la moda, i no avantatges tècnics. Els punts de referència que Linus va examinar no admeten ZFS i la manca de suport complet no garanteix l'estabilitat a llarg termini.

Recordem que el codi ZFS es distribueix sota una llicència CDDL gratuïta, que és incompatible amb GPLv2, que no permet integrar ZFS a Linux a la branca principal del nucli de Linux, ja que barreja codi sota les llicències GPLv2 i CDDL. és inacceptable. Per evitar aquesta incompatibilitat de llicències, el projecte ZFS on Linux va decidir distribuir el producte sencer sota una llicència CDDL en forma d'un mòdul carregat per separat que es subministra per separat del nucli.

La possibilitat de distribuir un mòdul ZFS ja fet com a part dels kits de distribució és controvertida entre els advocats. Advocats de Software Freedom Conservancy (SFC) considerarque el lliurament d'un mòdul del nucli binari a la distribució forma un producte combinat amb la GPL amb el requisit que el treball resultant es distribueixi sota la GPL. Advocats Canònics no hi estic d'acord i indiqueu que el lliurament d'un mòdul zfs és acceptable si el component es subministra com a mòdul autònom, separat del paquet del nucli. Canonical assenyala que les distribucions han utilitzat durant molt de temps un enfocament similar per subministrar controladors propietaris, com ara els controladors NVIDIA.

L'altra banda contesta que el problema de la compatibilitat del nucli en els controladors propietaris es resol proporcionant una petita capa distribuïda sota la llicència GPL (un mòdul sota la llicència GPL es carrega al nucli, que ja carrega components propietaris). Per a ZFS, aquesta capa només es pot preparar si es proporcionen excepcions de llicència des d'Oracle. A Oracle Linux, la incompatibilitat amb la GPL es resol mitjançant Oracle proporcionant una excepció de llicència que elimina el requisit de llicència de treball combinat sota CDDL, però aquesta excepció no s'aplica a altres distribucions.

Una solució alternativa és proporcionar només el codi font del mòdul a la distribució, cosa que no condueix a l'agrupació i es considera el lliurament de dos productes separats. A Debian, s'utilitza el sistema DKMS (Dynamic Kernel Module Support), en el qual el mòdul es subministra en codi font i es munta al sistema de l'usuari immediatament després d'instal·lar el paquet.

Font: opennet.ru

Afegeix comentari