Bios update: Διαφορά μεταξύ των αναθεωρήσεων

Από Hellug Wiki
Χωρίς σύνοψη επεξεργασίας
 
(2 ενδιάμεσες εκδόσεις από ένα χρήστη δεν εμφανίζονται)
Γραμμή 1: Γραμμή 1:
=== Bios update με Linux ===
Το Linux καλύπτει ανάγκες χρηστών οι οποίοι δεν έχουν εγκατεστημένα Windows ως αποτέλεσμα να μην μπορούν να αναβαθμίσουν το [[BIOS]] της μητρικής τους επειδή συχνά οι κατασκευαστές δεν έχουν μεριμνήσει για αυτούς. Κάποιοι όπως η IBM δίνουν [http://www-307.ibm.com/pc/support/site.wss/document.do?lndocid=MIGR-63027 bootable cd's σε iso], αλλά κατασκευαστές μητρικών όπως η MSI ή και κατασκευαστές ολοκληρωμένων συστημάτων, όπως η DELL, ζούν στον.. πλανήτη του .exe. Ο παρών οδηγός προσπαθεί να βοηθήσει στην λύση του προβλήματος.


Το Linux καλύπτει ανάγκες χρηστών οι οποίοι δεν έχουν εγκατεστημένα Windows ως αποτέλεσμα να μην μπορούν να αναβαθμίσουν το bios της μητρικής τους επειδή συχνά οι κατασκευαστές δεν έχουν μεριμνήσει για αυτούς. Απ' όσο βλέπω η IBM δίνει [http://www-307.ibm.com/pc/support/site.wss/document.do?lndocid=MIGR-63027 bootable cd's σε iso], αλλά κατασκευαστές μητρικών όπως η MSI ή και κατασκευαστές πλήρης συστημάτων όπως DELL, ζούνε στο.. πλανήτη του .exe. Ο οδηγός - αν και σε κάποια σημεία δύσκολος - προσπαθεί να βοηθήσει στην λύση του προβλήματος.
{{Προσοχή | Οι παρούσες ιδέες και μέθοδοι που περιγράφονται ΔΕΝ εγγυώνται την επιτυχία, τις εφαρμόζετε με δική σας ευθύνη. Μην ξεχάσετε να διαβάσετε τις οδηγίες του κατασκευαστή για το ποια διαδικασία πρέπει να ακολουθήσετε για το flash του [[BIOS]]. Μπορεί για παράδειγμα να προτρέπει να σβήσετε password του BIOS.}}


'''Αποποίηση ευθύνης!'''
==Θεωρία==
Προσοχή! ΠΡΟΣΟΧΗ! Οι παρούσες ιδέες και μέθοδοι που περιγράφονται ΔΕΝ εγγυούνται την επιτυχία. Οι διαδικασίες που περιγράφονται είναι ΔΙΚΗ ΣΑΣ απόφαση να τις εφαρμόσετε, δεν φέρω καμμία ευθύνη για προβλήματα. Μην ξεχάσετε να διαβάσετε τις ΟΔΗΓΙΕΣ του κατασκευαστή για το ποιά διαδικασία πρέπει να ακολουθήσετε για το flash του bios. Μπορεί για παράδειγμα να προτρέπει να σβήσετε password του bios.
Προγράμματα που χρειάζονται για την διανομή σας - αν δεν τα έχετε ήδη - είναι τα εξής: syslinux, cabextract, unshield, wine, biosdisk. Παρακάτω περιγράφεται η χρησιμότητα κάθε προγράμματος.
 
'''Θεωρία'''
 
Προγράμματα που χρειάζονται για την διανομή σας - αν δεν τα έχετε ήδη - είναι τα εξής: syslinux, cabextract, unshield, wine, biosdisk. Παρακάτω περιγράφεται η χρησιμότητα κάθε προγραμμάτος.
 
Γνωρίζω για το [http://www.coreboot.org/Flashrom Flashrom] αλλά δεν υποστηρίζει πολλές μητρικές και σε κάποιες περιπτώσεις κατέστρεψε το bios (δηλαδή το bios επιδιορθώνεται μόνο από τον κατασκευαστή).


Γνωρίζω για το [http://www.coreboot.org/Flashrom Flashrom] αλλά δεν υποστηρίζει πολλές μητρικές και σε κάποιες περιπτώσεις κατέστρεψε το BIOS (δηλαδή το BIOS επιδιορθώνεται μόνο από τον κατασκευαστή).
* Το syslinux, έχει images και λειτουργικό σύστημα ώστε να δημιουργήσουμε bootable δισκέτα ή cd/dvd με ελεύθερη έκδοση DOS.
* Το syslinux, έχει images και λειτουργικό σύστημα ώστε να δημιουργήσουμε bootable δισκέτα ή cd/dvd με ελεύθερη έκδοση DOS.
* Τα cabextract και wine είναι προγράμματα που μας βοηθούν να αποσυμπιέσουμε ή να ψαρέψουμε το bios + το πρόγραμμα που flashάρει το Bios.
* Τα cabextract και wine είναι προγράμματα που μας βοηθούν να αποσυμπιέσουμε ή να ψαρέψουμε το BIOS + το πρόγραμμα που flashάρει το BIOS.
* Το [http://linux.dell.com/biosdisk biosdisk], είναι ένα open source project της Dell και μας διευκολύνει να φτιάξουμε bootable δισκέττα όπως θα δούμε παρακάτω. Ειδικότερα για υπολογιστές dell, δεν μας επιτρέπει μόνο να δημιουργήσουμε bootable δισκέτα (ή image), αλλά "κατεβάζει" το bios από το site της Dell.
* Το [http://linux.dell.com/biosdisk biosdisk], είναι ένα open source project της Dell και μας διευκολύνει να φτιάξουμε bootable δισκέττα όπως θα δούμε παρακάτω. Ειδικότερα για υπολογιστές dell, δεν μας επιτρέπει μόνο να δημιουργήσουμε bootable δισκέτα (ή image), αλλά "κατεβάζει" το BIOS από το site της Dell.
 
'''Η εύκολη περίπτωση: έτοιμη δισκέττα, χωρίς wine'''


==Η εύκολη περίπτωση: έτοιμη δισκέττα, χωρίς wine==
Την παραπάνω περίπτωση συνάντησα πολλές φορές σε IBM φορητούς. Η IBM δίνει έκδοση "δισκέτα" και "χωρίς δισκέτα".
Την παραπάνω περίπτωση συνάντησα πολλές φορές σε IBM φορητούς. Η IBM δίνει έκδοση "δισκέτα" και "χωρίς δισκέτα".


Για δοκιμή (μην το δοκιμάσετε στον υπολογιστή σας) θα κατεβάσουμε το bios ενός ibm φορητού. Κατεβάζουμε την έκδοση χωρίς δισκέτα.
Για δοκιμή (μην το δοκιμάσετε στον υπολογιστή σας) θα κατεβάσουμε το BIOS ενός IBM φορητού. Κατεβάζουμε την έκδοση χωρίς δισκέτα.
 
<pre>wget http://download.lenovo.com/ibmdl/pub/pc/pccbbs/mobiles/spsu1735.exe</pre>
<pre>wget http://download.lenovo.com/ibmdl/pub/pc/pccbbs/mobiles/spsu1735.exe</pre>


Αποσυμπιέζουμε με cabextract (μου έχει τύχη να χρειαστεί το unshield)
Αποσυμπιέζουμε με cabextract (μου έχει τύχη να χρειαστεί το unshield)
 
<pre>cabextract spsu1735.exe
<pre> cabextract spsu1735.exe
Extracting cabinet: spsu1735.exe
Extracting cabinet: spsu1735.exe
   extracting 17UJ35WW.IMG
   extracting 17UJ35WW.IMG
Γραμμή 37: Γραμμή 29:
   All done, no errors.</pre>
   All done, no errors.</pre>


Το αρχείο που μας ενδιαφέρει είναι αυτό που καταλήγει σε .IMG. Είναι στην πράξη τα περιεχόμενα μίας δισκέτας την οποία μπορείτε - αν είστε περίεργοι ή θέλετε να κάνετε αλλαγές - να προσαρτήσετε στο σύτημα με
Το αρχείο που μας ενδιαφέρει είναι αυτό που καταλήγει σε .IMG. Είναι στην πράξη τα περιεχόμενα μίας δισκέτας την οποία μπορείτε - αν είστε περίεργοι ή θέλετε να κάνετε αλλαγές - να προσαρτήσετε στο σύστημα με
 
<pre>mount -o loop 17UK35WW.IMG /mnt/my_virtual_floppy/</pre>
<pre>mount -o loop 17UK35WW.IMG /mnt/my_virtual_floppy/</pre>


μπορούμε να δούμε τα περιεχόμενα ή και να γράψουμε σ' αυτή. Επίσης αν έχουμε floppy, μπορούμε με την εντολή
μπορούμε να δούμε τα περιεχόμενα ή και να γράψουμε σ' αυτή. Επίσης αν έχουμε floppy, μπορούμε να μεταφέρουμε το image σε δισκέτα με την εντολή:
 
<pre>dd if=17UK35WW.IMG of=/dev/fd0</pre>
<pre>dd if=17UK35WW.IMG of=/dev/fd0</pre>


να μεταφέρουμε το image σε δισκέτα. Εκκίνηση με δισκέτα λοιπόν και τελειώσαμε. Σε περίπτωση που δεν έχουμε floppy, μας έμεινε το τελευταίο βήμα. \\Στον bootloader μας (lilo ή grub),
Εκκίνηση με δισκέτα λοιπόν και τελειώσαμε. Σε περίπτωση που δεν έχουμε floppy, μας έμεινε το τελευταίο βήμα. \\Στον bootloader μας (lilo ή grub),


# στο πεδίο kernel (αν έχουμε lilo όπου kernel διάβαζε image) γράφουμε kernel = /boot/memdisk (απαιτεί να αντιγράψαμε το memdisk από τον φάκελλο /usr/lib/syslinux/) και
# στο πεδίο kernel (αν έχουμε lilo όπου kernel διάβαζε image) γράφουμε kernel = /boot/memdisk (απαιτεί να αντιγράψαμε το memdisk από τον φάκελλο /usr/lib/syslinux/) και
Γραμμή 51: Γραμμή 41:


Παράδειγμα με grub (/boot/grub/menu.lst)
Παράδειγμα με grub (/boot/grub/menu.lst)
<pre>title IBM BIOS update
<pre>title IBM BIOS update
     root (hd0,0)
     root (hd0,0)
Γραμμή 58: Γραμμή 47:


Παράδειγμα με lilo (/etc/lilo.conf)
Παράδειγμα με lilo (/etc/lilo.conf)
<pre>title = IBM BIOS update
<pre>title = IBM BIOS update
     image = /boot/memdisk
     image = /boot/memdisk
     initrd = /boot/1RUJ37US.IMG</pre>
     initrd = /boot/1RUJ37US.IMG</pre>


Στο lilo χρειάζεται εκτέλεση (ως root εκτελούμε lilo) για να ισχύσουν οι αλλαγές
Στο lilo χρειάζεται εκτέλεση (ως root εκτελούμε lilo) για να ισχύσουν οι αλλαγές.
 
'''Μία δύσκολη περίπτωση: χωρίς εικονική δισκέττα, χωρίς wine'''
 
Για δοκιμή και πάλι (μην το δοκιμάσετε στην μητρική σας) θα κατεβάσουμε το bios της μητρικής msi k7t266 pro2


==Μία δύσκολη περίπτωση: χωρίς εικονική δισκέττα, χωρίς wine==
Για δοκιμή και πάλι (μην το δοκιμάσετε στην μητρική σας) θα κατεβάσουμε το BIOS της μητρικής MSI k7t266 pro2
<pre>wget http://download1.msi.com/files/downloads/bos_exe/6380v37.exe </pre>
<pre>wget http://download1.msi.com/files/downloads/bos_exe/6380v37.exe </pre>


Αποσυμπιέζουμε με unzip αυτή την φορά (για να βρείτε ποιό πρόγραμμα χρειάζεται, θα πρέπει απλά να δοκιμάσετε!), αν δεν τα καταφέρετε υπάρχει και η λύση του wine.
Αποσυμπιέζουμε με unzip αυτή την φορά (για να βρείτε ποιό πρόγραμμα χρειάζεται, θα πρέπει απλά να δοκιμάσετε!), αν δεν τα καταφέρετε υπάρχει και η λύση του wine.
<pre>unzip 6380v37.exe
<pre>unzip 6380v37.exe
Archive:  6380v37.exe
Archive:  6380v37.exe
Γραμμή 80: Γραμμή 65:
   inflating: How to flash the BIOS.doc</pre>
   inflating: How to flash the BIOS.doc</pre>


Εδώ έχουμε το bios καθ' αυτό (A6380VMS.370) και το πρόγραμμα amifl827.EXE που θα flashάρει το bios. Για να δημιουργήσουμε bootable δισκέτα, αφού εγκαταστήσουμε το biosdisk εκτελούμε biosdisk mkimage amifl826.EXE. Η παραπάνω εντολή θα δημιουργήσει ένα αρχείο bootable δισκέτας στον φάκελλο /tmp με όνομα amifl827.img. Μας λείπει όμως το αρχείο A6380VMS.370, που είναι το bios. \\ Για να περάσουμε το αρχείο στην εικονική δισκέτα δίνουμε:
Εδώ έχουμε το BIOS καθ' αυτό (A6380VMS.370) και το πρόγραμμα amifl827.EXE που θα flashάρει το BIOS. Για να δημιουργήσουμε bootable δισκέτα, αφού εγκαταστήσουμε το biosdisk εκτελούμε biosdisk mkimage amifl826.EXE. Η παραπάνω εντολή θα δημιουργήσει ένα αρχείο bootable δισκέτας στον φάκελλο /tmp με όνομα amifl827.img. Μας λείπει όμως το αρχείο A6380VMS.370, που είναι το BIOS.


Για να περάσουμε το αρχείο στην εικονική δισκέτα δίνουμε:
<pre>mount -o loop /tmp/amifl827.img /mnt/floppy
<pre>mount -o loop /tmp/amifl827.img /mnt/floppy
cp A6380VMS.370 /mnt/floppy/</pre>
cp A6380VMS.370 /mnt/floppy/</pre>
Γραμμή 87: Γραμμή 73:
Συνεχίζουμε όπως παραπάνω είτε με lilo είτε με grub.
Συνεχίζουμε όπως παραπάνω είτε με lilo είτε με grub.


'''Bonus track: bootable CD/DVD από image floppy'''
==Bonus track: bootable CD/DVD από image floppy==
 
Η παραπάνω μέθοδος βολεύει σε "administrators" που βαριούνται να στήσουν tftpboot server. Δημιουργεί ένα .iso για bootable cd με τα αρχεία της δισκέττας. Δημιουργούμε έναν φάκελλο και αντιγράφουμε το image της δισκέτας.
Η παραπάνω μέθοδος βολεύει σε "administrators" που βαριούνται να στήσουν tftpboot server. Δημιουργεί ένα .iso για bootable cd με τα αρχεία της δισκέττας. Δημιουργούμε έναν φάκελλο και αντιγράφουμε το image της δισκέτας.
<pre>mkdir bootablecd
<pre>mkdir bootablecd
cp /tmp/amifl827.img bootablecd/</pre>
cp /tmp/amifl827.img bootablecd/</pre>


Τώρα δημιουργούμε το bootable cd.
Τώρα δημιουργούμε το bootable cd.
<pre>mkisofs -b amifl827.img -o bootcd.iso bootablecd/ </pre>
<pre>mkisofs -b amifl827.img -o bootcd.iso bootablecd/ </pre>


''' Success stories'''
==Success stories==


Έως τώρα με τις παραπάνω μεθόδους έχω αναβαθμίσει bios στους εξής υπολογιστές / μητρικές.
Έως τώρα με τις παραπάνω μεθόδους έχω αναβαθμίσει BIOS στους εξής υπολογιστές / μητρικές.


# Dell GX260
# Dell GX260
Γραμμή 109: Γραμμή 92:
# ThinkPad X40
# ThinkPad X40


''' Πηγές'''
==Πηγές==
#*http://korgman.is-a-geek.net/htm/tut/nix/bios_update_with_linux.php
#http://clavisound.no-ip.info/htm/tut/nix/bios_update_with_linux.php
##man biosdisk
#man biosdisk
##[http://www.thinkwiki.org/wiki/BIOS_Upgrade ThinkWiki.org]
#[http://www.thinkwiki.org/wiki/BIOS_Upgrade ThinkWiki.org]
##[http://wiki.osdev.org/Bootable_CD wiki.osdev.org]
#[http://wiki.osdev.org/Bootable_CD wiki.osdev.org]
 


[[Κατηγορία:Σύστημα]]
[[Κατηγορία:Σύστημα]]

Τελευταία αναθεώρηση της 08:52, 30 Σεπτεμβρίου 2013

Το Linux καλύπτει ανάγκες χρηστών οι οποίοι δεν έχουν εγκατεστημένα Windows ως αποτέλεσμα να μην μπορούν να αναβαθμίσουν το BIOS της μητρικής τους επειδή συχνά οι κατασκευαστές δεν έχουν μεριμνήσει για αυτούς. Κάποιοι όπως η IBM δίνουν bootable cd's σε iso, αλλά κατασκευαστές μητρικών όπως η MSI ή και κατασκευαστές ολοκληρωμένων συστημάτων, όπως η DELL, ζούν στον.. πλανήτη του .exe. Ο παρών οδηγός προσπαθεί να βοηθήσει στην λύση του προβλήματος.

Οι παρούσες ιδέες και μέθοδοι που περιγράφονται ΔΕΝ εγγυώνται την επιτυχία, τις εφαρμόζετε με δική σας ευθύνη. Μην ξεχάσετε να διαβάσετε τις οδηγίες του κατασκευαστή για το ποια διαδικασία πρέπει να ακολουθήσετε για το flash του BIOS. Μπορεί για παράδειγμα να προτρέπει να σβήσετε password του BIOS.

Θεωρία

Προγράμματα που χρειάζονται για την διανομή σας - αν δεν τα έχετε ήδη - είναι τα εξής: syslinux, cabextract, unshield, wine, biosdisk. Παρακάτω περιγράφεται η χρησιμότητα κάθε προγράμματος.

Γνωρίζω για το Flashrom αλλά δεν υποστηρίζει πολλές μητρικές και σε κάποιες περιπτώσεις κατέστρεψε το BIOS (δηλαδή το BIOS επιδιορθώνεται μόνο από τον κατασκευαστή).

  • Το syslinux, έχει images και λειτουργικό σύστημα ώστε να δημιουργήσουμε bootable δισκέτα ή cd/dvd με ελεύθερη έκδοση DOS.
  • Τα cabextract και wine είναι προγράμματα που μας βοηθούν να αποσυμπιέσουμε ή να ψαρέψουμε το BIOS + το πρόγραμμα που flashάρει το BIOS.
  • Το biosdisk, είναι ένα open source project της Dell και μας διευκολύνει να φτιάξουμε bootable δισκέττα όπως θα δούμε παρακάτω. Ειδικότερα για υπολογιστές dell, δεν μας επιτρέπει μόνο να δημιουργήσουμε bootable δισκέτα (ή image), αλλά "κατεβάζει" το BIOS από το site της Dell.

Η εύκολη περίπτωση: έτοιμη δισκέττα, χωρίς wine

Την παραπάνω περίπτωση συνάντησα πολλές φορές σε IBM φορητούς. Η IBM δίνει έκδοση "δισκέτα" και "χωρίς δισκέτα".

Για δοκιμή (μην το δοκιμάσετε στον υπολογιστή σας) θα κατεβάσουμε το BIOS ενός IBM φορητού. Κατεβάζουμε την έκδοση χωρίς δισκέτα.

wget http://download.lenovo.com/ibmdl/pub/pc/pccbbs/mobiles/spsu1735.exe

Αποσυμπιέζουμε με cabextract (μου έχει τύχη να χρειαστεί το unshield)

cabextract spsu1735.exe
Extracting cabinet: spsu1735.exe
  extracting 17UJ35WW.IMG
  extracting DOSBOOT.COM
  extracting DOBOOT.EXE
  extracting BIOSUPTP.EXE
  extracting DOSBOOT.SYS
  extracting DOSBOOT.VXD

  All done, no errors.

Το αρχείο που μας ενδιαφέρει είναι αυτό που καταλήγει σε .IMG. Είναι στην πράξη τα περιεχόμενα μίας δισκέτας την οποία μπορείτε - αν είστε περίεργοι ή θέλετε να κάνετε αλλαγές - να προσαρτήσετε στο σύστημα με

mount -o loop 17UK35WW.IMG /mnt/my_virtual_floppy/

μπορούμε να δούμε τα περιεχόμενα ή και να γράψουμε σ' αυτή. Επίσης αν έχουμε floppy, μπορούμε να μεταφέρουμε το image σε δισκέτα με την εντολή:

dd if=17UK35WW.IMG of=/dev/fd0

Εκκίνηση με δισκέτα λοιπόν και τελειώσαμε. Σε περίπτωση που δεν έχουμε floppy, μας έμεινε το τελευταίο βήμα. \\Στον bootloader μας (lilo ή grub),

  1. στο πεδίο kernel (αν έχουμε lilo όπου kernel διάβαζε image) γράφουμε kernel = /boot/memdisk (απαιτεί να αντιγράψαμε το memdisk από τον φάκελλο /usr/lib/syslinux/) και
  2. στο initrd γράφουμε initrd=/boot/17UK35WW.IMG (στο boot πάλι έχουμε αντιγράψει το image που αποσυμπιέσαμε προηγουμένως). Συμπληρώνουμε και το label, στο lilo εκτελούμε lilo ως root.

Παράδειγμα με grub (/boot/grub/menu.lst)

title IBM BIOS update
    root (hd0,0)
    kernel /boot/memdisk
    initrd /boot/1RUJ37US.IMG

Παράδειγμα με lilo (/etc/lilo.conf)

title = IBM BIOS update
    image = /boot/memdisk
    initrd = /boot/1RUJ37US.IMG

Στο lilo χρειάζεται εκτέλεση (ως root εκτελούμε lilo) για να ισχύσουν οι αλλαγές.

Μία δύσκολη περίπτωση: χωρίς εικονική δισκέττα, χωρίς wine

Για δοκιμή και πάλι (μην το δοκιμάσετε στην μητρική σας) θα κατεβάσουμε το BIOS της μητρικής MSI k7t266 pro2

wget http://download1.msi.com/files/downloads/bos_exe/6380v37.exe 

Αποσυμπιέζουμε με unzip αυτή την φορά (για να βρείτε ποιό πρόγραμμα χρειάζεται, θα πρέπει απλά να δοκιμάσετε!), αν δεν τα καταφέρετε υπάρχει και η λύση του wine.

unzip 6380v37.exe
Archive:  6380v37.exe
  inflating: amifl827.EXE
  inflating: 6380v3X.txt
  inflating: A6380VMS.370
  inflating: How to flash the BIOS.doc

Εδώ έχουμε το BIOS καθ' αυτό (A6380VMS.370) και το πρόγραμμα amifl827.EXE που θα flashάρει το BIOS. Για να δημιουργήσουμε bootable δισκέτα, αφού εγκαταστήσουμε το biosdisk εκτελούμε biosdisk mkimage amifl826.EXE. Η παραπάνω εντολή θα δημιουργήσει ένα αρχείο bootable δισκέτας στον φάκελλο /tmp με όνομα amifl827.img. Μας λείπει όμως το αρχείο A6380VMS.370, που είναι το BIOS.

Για να περάσουμε το αρχείο στην εικονική δισκέτα δίνουμε:

mount -o loop /tmp/amifl827.img /mnt/floppy
cp A6380VMS.370 /mnt/floppy/

Συνεχίζουμε όπως παραπάνω είτε με lilo είτε με grub.

Bonus track: bootable CD/DVD από image floppy

Η παραπάνω μέθοδος βολεύει σε "administrators" που βαριούνται να στήσουν tftpboot server. Δημιουργεί ένα .iso για bootable cd με τα αρχεία της δισκέττας. Δημιουργούμε έναν φάκελλο και αντιγράφουμε το image της δισκέτας.

mkdir bootablecd
cp /tmp/amifl827.img bootablecd/

Τώρα δημιουργούμε το bootable cd.

mkisofs -b amifl827.img -o bootcd.iso bootablecd/ 

Success stories

Έως τώρα με τις παραπάνω μεθόδους έχω αναβαθμίσει BIOS στους εξής υπολογιστές / μητρικές.

  1. Dell GX260
  2. MSI k7t266 pro2
  3. ThinkPad iSeries 1200 (model 1161)
  4. ThinkPad T20, T21, T22
  5. ThinkPad T30
  6. ThinkPad X40

Πηγές

  1. http://clavisound.no-ip.info/htm/tut/nix/bios_update_with_linux.php
  2. man biosdisk
  3. ThinkWiki.org
  4. wiki.osdev.org