OpenBMC adalah distribusi Linux untuk pengontrol manajemen yang digunakan dalam perangkat seperti server, sakelar rak di atas atau peralatan RAID. Menggunakan yocto, openembedded, systemd, dan d-bus untuk memungkinkan kustomisasi mudah untuk platform Anda.
Lihat dokumentasi yocto untuk persyaratan terbaru
sudo apt install git python3-distutils gcc g++ make file wget
gawk diffstat bzip2 cpio chrpath zstd lz4 bzip2
sudo dnf install git python3 gcc g++ gawk which bzip2 chrpath cpio
hostname file diffutils diffstat lz4 wget zstd rpcgen patch
git clone https://github.com/openbmc/openbmc
cd openbmc
Bangunan apa pun membutuhkan lingkungan yang diatur sesuai dengan target perangkat keras Anda. Ada skrip khusus di akar repositori ini yang dapat digunakan untuk mengonfigurasi lingkungan sesuai kebutuhan. Script disebut setup
dan mengambil nama target perangkat keras Anda sebagai argumen.
Skrip perlu bersumber saat berada di direktori teratas klon repositori OpenBMC, dan, jika dijalankan tanpa argumen, akan menampilkan daftar target perangkat keras yang didukung, lihat contoh berikut:
$ . setup <machine> [build_dir]
Target machine must be specified. Use one of:
...
Daftar mesin yang didukung yang lebih lengkap dapat ditemukan di bawah meta-fosfor/dokumen.
Setelah Anda mengetahui target (misalnya Romulus), sumber skrip setup
sebagai berikut:
. setup romulus
bitbake obmc-phosphor-image
Detail tambahan dapat ditemukan di repositori DOCS.
Komunitas OpenBMC memelihara serangkaian tutorial yang dapat dilalui pengguna baru untuk mempercepat pengembangan OpenBMC di sini
Komitmen yang dikirimkan oleh anggota komunitas OpenBMC GitHub dikompilasi dan diuji melalui server Jenkins kami. Komitmen dijalankan melalui dua tingkat pengujian. Pada level repositori, arahan Makefile make check
dijalankan. Pada level sistem, komit ini dibangun ke dalam gambar firmware dan dijalankan dengan model QEMU ARM-SoftMMU terhadap rentetan tes CI.
Komitmen yang diajukan oleh non-anggota tidak secara otomatis melanjutkan melalui pengujian CI. Setelah inspeksi visual dari komit, CI Run dapat dilakukan secara manual oleh pengulas.
Pengujian otomatis terhadap model QEMU bersama dengan sistem yang didukung dilakukan. Proyek OpenBMC menggunakan kerangka kerja robot untuk semua otomatisasi. Repositori pengujian lengkap kami dapat ditemukan di sini.
Dukungan paket perangkat keras dan perangkat lunak tambahan selalu diterima. Harap ikuti pedoman yang berkontribusi saat mengajukan pengajuan. Diharapkan bahwa kontribusi berisi kasus uji.
Masalah dikelola di GitHub. Disarankan Anda mencari melalui masalah sebelum membuka yang baru.
Pertama, tolong lakukan pencarian di internet. Ada kemungkinan besar pertanyaan Anda telah ditanyakan.
Untuk pertanyaan umum, silakan gunakan tag OpenBMC di Stack Overflow. Harap tinjau diskusi tentang lisensi Stack Overflow sebelum memposting kode apa pun.
Untuk diskusi teknis, silakan lihat info kontak di bawah ini untuk informasi perselisihan dan milis. Tolong jangan mengajukan masalah untuk mengajukan pertanyaan. Anda akan mendapatkan hasil yang lebih cepat dengan menggunakan milis atau perselisihan.
Ini adalah pertanyaan umum, terutama mengenai papan dari cot populer (komersial off-the-shelf) vendor seperti Supermicro dan Asrock. Anda dapat melihat daftar papan yang didukung dengan berlari . setup
(tanpa argumen lebih lanjut) di akar pohon sumber OpenBMC. Sebagian besar platform yang didukung oleh OpenBMC adalah server khusus yang dioperasikan oleh perusahaan yang menjalankan pusat data besar, tetapi beberapa server COT yang lebih umum didukung untuk berbagai tingkat.
Jika motherboard Anda tidak terdaftar di output . setup
saat ini tidak didukung. Porting OpenBMC ke platform baru adalah usaha non-sepele, idealnya dilakukan dengan bantuan skema dan dokumentasi lain dari produsen (tidak sepenuhnya tidak layak untuk melakukan upaya porting tanpa dokumentasi melalui rekayasa terbalik, tetapi jauh lebih sulit , dan mungkin melibatkan risiko kerusakan perangkat keras yang lebih besar).
Namun , bahkan jika motherboard Anda adalah di antara yang tercantum dalam output dari . setup
, ada dua peringatan signifikan yang perlu diingat. Pertama, tidak semua port sama matangnya - beberapa platform lebih didukung daripada yang lain, dan fungsionalitas pada beberapa papan "yang didukung" mungkin cukup terbatas. Kedua, dukungan untuk motherboard tidak sama dengan dukungan untuk sistem yang lengkap - khususnya, kontrol kipas sangat bergantung pada tidak hanya motherboard tetapi juga para penggemar yang terhubung dengannya dan sasis tempat papan dan penggemar ditempatkan di, keduanya dapat bervariasi secara dramatis antara sistem menggunakan model papan yang sama. Jadi, sementara Anda mungkin dapat mengkompilasi dan menginstal OpenBMC build di sistem Anda dan mendapatkan beberapa fungsi dasar, tepi kasar (seperti kipas pendingin Anda berjalan terus -menerus di throttle penuh) kemungkinan besar.
Lihat juga "mesin yang didukung".
Menyelam lebih dalam ke OpenBMC dengan membuka repositori Docs.
Komite Pengarah Teknis (TSC) memandu proyek. Anggota adalah: