การติดตั้ง open-vm-tools ใน Ubuntu ผ่าน Puppet ความชั่วร้ายที่น้อยลงคืออะไร


9

ในโลกอุดมคติการกำหนดค่าหุ่นเชิดเพื่อติดตั้งopen-vm-toolsควรจะง่ายเหมือนนี้

class vm-tools {
    package { 'open-vm-tools':
        ensure => installed
    }
    package { 'open-vm-dkms':
        ensure => installed
    }
}

แต่นั่นเปิดขึ้นน่าเกลียดของการพึ่งพาอาศัยกันคืบ; มันติดตั้ง X ซึ่งเห็นได้ชัดว่าไม่ได้อยู่ในเซิร์ฟเวอร์ ตั้งแต่ Ubuntu 10.04 แพ็คเกจเหล่านี้ทั้งคู่แนะนำopen-vm-toolboxแพ็คเกจของเครื่องมือ GUI ดังนี้:

# apt-cache depends open-vm-dkms
open-vm-dkms
  Depends: dkms
  Depends: make
  Suggests: open-vm-toolbox
  Recommends: open-vm-tools

# apt-cache depends open-vm-tools
open-vm-tools
  Depends: libc6
  Depends: libfuse2
  Depends: libgcc1
  Depends: libglib2.0-0
  Depends: libicu44
  Depends: libstdc++6
  Recommends: open-vm-source
  Recommends: open-vm-toolbox
  Recommends: ethtool
  Recommends: zerofree

แพ็คเกจที่แนะนำจะติดตั้งตามค่าเริ่มต้นเสมอ เห็นได้ชัดว่าไม่พึงปรารถนาที่จะติดตั้ง X dependencies โดยค่าเริ่มต้นเมื่อติดตั้งแพคเกจที่อธิบายว่า "CLI Tools"

คำขอคุณลักษณะกับ Debianถูกปฏิเสธทันทีด้วยเหตุผลนี้ แต่หัวเย็นไม่ได้เหนือกว่าในอูบุนตู ดูเหมือนว่าภายในสัปดาห์ที่ผ่านมามีการรับรู้บางอย่างว่านี่เป็นการเปลี่ยนแปลงที่ไม่สมควร แต่ก็ไม่ช่วยอะไรจนกว่า LTS ต่อไปจะเปิดตัว

พฤติกรรมในการติดตั้งแพคเกจที่แนะนำคือได้อย่างง่ายดายพอคนพิการในบรรทัดคำสั่งที่มี--no-install-recommendsตัวเลือก แต่ผ่านหุ่นเชิดมีการสนับสนุนสำหรับการทำเช่นนี้และพันกัน ยุ่งของตั๋วขอการสนับสนุนที่ยังไม่ได้ไปไกลในรอบ 3 ปี

ตัวเลือกอื่นคือเพียงแค่ปิดการใช้งานแพ็คเกจที่แนะนำตลอดทั้งระบบผ่านทางapt.confซึ่งเป็นการเปลี่ยนแปลงครั้งใหญ่ในพฤติกรรมของแพคเกจที่มีผลกระทบมากกว่าที่ฉันต้องการ

ฉันลาออกจากตำแหน่งเพื่อทำสิ่งที่ขี้เกียจ

exec { 'open-vm-tools install':
    command => '/usr/bin/apt-get install -y --no-install-recommends open-vm-dkms open-vm-tools',
    creates => '/usr/lib/open-vm-tools',
}

แต่ตอนนี้เห็นได้ชัดว่า"ทำมันผิด" ฉันขาดสิ่งที่จะทำให้มันใช้งานได้ตามที่ควรจะเป็นหรือเป็นวิธีแก้ปัญหาแฮ็คที่ดีที่สุดสำหรับปัญหานี้หรือไม่?

คำตอบ:


3

ข้อผิดพลาด 1766ระบุว่าผู้ให้บริการความถนัดติดตั้งแพ็คเกจที่แนะนำในขณะที่ผู้ให้บริการที่เหมาะสมไม่ได้

หากถูกต้อง (ฉันไม่ได้ตรวจสอบด้วยตัวเอง) สิ่งต่อไปนี้อาจทำงานได้อย่างหมดจดมากขึ้น:

package { [ "open-vm-tools", "open-vm-dkms" ]:
  ensure   => installed,
  provider => apt,
}

ที่ดัดแปลงมาจากหุ่นประเภทอ้างอิง "แพคเกจ" ส่วน


แก้ไขหลังจากตรวจสอบเพิ่มเติม: เนื่องจากผู้ให้บริการ apt เป็นค่าเริ่มต้นใน Ubuntu และ Debian ให้ใช้ผู้ให้บริการ aptitude สำหรับแพ็คเกจเหล่านี้และเพิ่มที่เหมาะสม~/.aptitude/configสำหรับรูท

package { [ "open-vm-tools", "open-vm-dkms" ]:
  ensure   => installed,
  provider => aptitude,
  require  => File["/root/.aptitude/config"];
}
file { "/root/.aptitude/config":
  ensure  => present,
  content => 'APT::Install-Recommends "0";';
}

ไม่สมบูรณ์แบบ แต่กระชับกว่าสายการผลิตขนาดยักษ์


ไม่มีโชคเช่นนั้น x11-common และเพื่อนทั้งหมดของมันได้รับการติดตั้ง รายงานข้อผิดพลาดที่ดูเหมือนจะบ่งบอกว่ามีข้อโต้แย้งที่สามารถเพิ่มเพื่อควบคุมพฤติกรรมกับผู้ให้บริการ apt ... แต่ฉันไม่สามารถหาข้อมูลใด ๆ เกี่ยวกับวิธีการที่ควรจะทำ รายงานข้อผิดพลาดนั้นอาจล้าสมัย แต่ดูเหมือนว่าอย่างน้อยในปัจจุบันaptผู้ให้บริการจะเป็นค่าเริ่มต้นสำหรับ Ubuntu และ Debian โดยดูบรรทัดที่ 13 ของไฟล์นี้
เชนแมดเดน

ดูการแก้ไขด้านบน
Mike Renfro

3

ดูเหมือนว่าใน 12.04 apt-get install open-vm-toolsไม่มีการติดตั้ง X อีกต่อไป

Ubuntu wiki บนเครื่องมือของ VMware


1
ใช่แน่นอน! ฉันคุยโวเกี่ยวกับการรายงานข้อผิดพลาดอาจจะช่วยด้วย :) ว่า
เชน Madden
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.