Çekirdek dizini boş, ancak çekirdek başlıkları yüklendi


19

Ana bilgisayar - Windows 7

Konuk - CentOS

3.10.0-229.7.2.e17.x86_64 için çekirdek başlık dosyalarının yolunu soran bir ileti alıyorum beri yükleme sırasında kernel-headerskullanmaya çalışıyorum .yumvmware-tools

Koşu yum install kernel-headersdöner Paket kernel-headers-3.10.0-229.7.2.e17.x86_64 zaten yüklü ve son sürümü . Ancak dizin /usr/src/kernelsboş.

Çekirdek başlıkları başka bir yere mi kurulmuş? Yoksa yumbaşka bir şey yüklemeyi mi istemeliyim ?

Çekirdek üstbilgileri için vmware araçlarına sağlanan yol

Searching for a valid kernel header path...
The path "" is not a valid path to the 3.10.0-229.7.2.e17.x86_64 kernel headers.
Would you like to change it? [yes]

Yolu /usr/include/linuxsağlamanız yine aynı yanıtı verir ancak "" ile sağlanan yol değiştirilir.


1
çıkışını kontrol edin rpm -ql kernel-headers; Ben / usr / include / linux dosyaları koyar düşünüyorum, ama güncel olmayabilir. Eğer vmware-tools yükleyicisine hangi yolu verdiğinizi ve aynı zamanda neyi raporladığını belirtebilseydiniz iyi olur.
Jeff Schaller

Yanıtlar:


8

Çekirdek modülleri oluşturmak için gereken tüm bağımlılıkları yüklemek için doğru paket kernel-devel( daha fazla bilgi için CentOS belgelerine bakın ).

Üstbilgiler yüklenmez /usr/src/kernels, bunun yerine aşağıdaki birkaç dizine yüklenir /usr/include(C başlık dosyaları için varsayılan konum). kernel-headersYüklediğiniz paketin içeriğini aşağıdakileri kullanarak listeleyebilirsiniz :

rpm -ql kernel-headers

Öyleydi. Daha önce bu sayfaya var ama "sen sanki onu yanlış anlamıştı do tam kaynak kullanımı Kernel-devel gerek". Teşekkürler
Kvothe

23

Aynı problemim vardı. Çok fazla çalıştıktan sonra, bu çözüm benim için çalıştı. Önce yüklü çekirdek sürümünü belirler ve daha sonra çekirdek başlık paketini yüklemek için bu tam sürümü kullanır.

sudo yum install "kernel-devel-uname-r == $(uname -r)"

Bu, Surface Book ve VMWare yapılandırmasında çalıştı.
ThinkCode

Centos 7 üzerinde çalışır, iki saatten önce geçirdi .. Teşekkürler!
h0x91B

Sonunda .... CentOS7 üzerinde çalıştı. Çok teşekkürler
VM_AI

İşe yaradı. Teşekkürler. Çekirdek başlıklarının bu geliştiricinin bir parçası olup olmadığından emin değilim.
Murali Mopuru

4

Aşağıda verilen CentOS sürüm 7'de çekirdek başlıklarının yolu verilmiştir.

/lib/modules/3.10.0-327.36.2.el7.x86_64/build/include

yum install kernel-headersİki kez çalıştıktan sonra (en son sürüme güncellendi), sorun düzeltildi. Çalışan çekirdek sürümünün ve çekirdek üstbilgileri sürümünün aynı olduğundan emin olun. Çekirdek sürümüm3.10.0-327.36.2.el7.x86_64


Bunun gibi basit cevaplar daha fazla oy hak ediyor.
WesternGun

2

Aynı sorunu yaşadım ve yukarıdaki çözüm benim için işe yaramadı. Kullandığım CentOS 7'nin yapımı olabilir.
İşte benim için problemi çözen şey ...

çekirdek başlıklarını yükle

yum -y install kernel-devel

vmware araçlarının version.h bulabilmesi için sembolik bağlantı ayarlayın

export kernel_headers=`ls -hd /usr/src/kernels/3*`
sudo ln -s ${kernel_headers}/include/generated/uapi/linux/version.h ${kernel_headers}/include/linux/version.h

2

Çekirdek-devel paketini kurdum, ancak başlıkların örneğimde çalışandan farklı bir çekirdek sürümü için olduğu ortaya çıktı. Sorunu çözmek için koştum

sudo yum upgrade

ve yeniden başlatıldı ve ardından vmware-tools karışıklık olmadan kuruldu.


2

Aynı sorunu yaşadım.

Benim durumumda sadece kernel-dev * et'i tekrar yüklemek zorunda kaldım:

yum -y remove kernel-devel*
yum -y install kernel-devel*

0

Bunun için bir çözüm bulduğuma inanıyorum.

VMWare araçlarının aksine open-vm araçlarını yüklemenizi tavsiye eden önerileri (VMWare web sitesinde bile) okuyorum.

yum install open-vm-tools

Tabii ki bazı uyarılar var, kurduktan sonra sanal makineyi yeniden başlatmayı unutmayın.

Ayrıca, şimdi vSphere'de gösterilen yeşil onay işareti yerine gri "?" ancak araçların çalıştığını tanır ve IP adresini ve çalışan işletim sisteminin yanı sıra "Çalışan (3. taraf / Bağımsız)" ekranını gösterir.

Umarım bu birisine yardım eder. Bu konuda iki gün geçirdim ve sonunda bu cevabı buldum ve benim için çalıştı, konuk os olarak CentOS 7.2 ile ESXi 5.1 ve vCenter'ı çalıştırdı.


open-vm-tools bazı durumlarda vmware araçlarına gerçekten bir alternatif değildir. Örneğin. open-vm-tools, konuk ve ana bilgisayar arasında dosya paylaşımı için hgfs'yi desteklemez. Vmware, centos 7'deki hgfs'yi destekliyor
Gaurav

0

Soruyu cevaplamak için, Çekirdek kaynağı / usr / src / kernels / altına kurulur. kernel-devel kurulacak pakettir.

Soruna çözüm sağlamak için, sorunun nedeni yüklü olan çekirdeğin eski olması ve çekirdek-devel'in depoda bir güncellemesinin olmasıdır. Böylece kernel-devel kurulumu daha yeni bir kernel kaynağını kurar ve bu nedenle vmware tools config betiği kaynağı bulamaz. İki olası çözüm vardır.

  1. Çekirdeği, hem çekirdek hem de çekirdek-devel yeni olacak şekilde güncelleyin.

    sudo yum upgrade

Yeni çekirdek yüklenecek şekilde yeniden başlatın ve ardından vmware tools config komut dosyasını çalıştırın.

  1. Çekirdeği güncellemek her zaman mümkün değildir. Durum buysa, yüklü çekirdek sürümüyle aynı olan çekirdek çekirdek sürümünü yükleyin.

    sudo yum install "kernel-devel-uname-r == $(uname -r)"

0

Benim için taze bir minimal Centos kurulumunda işe yarayan buydu:

sudo yum update
sudo yum upgrade
sudo yum install "kernel-devel-uname-r == $(uname -r)" gcc
./vmware-install.pl
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.