Ansible Academy · บทเรียน

ติดตั้งแพ็กเกจด้วยโมดูล package

จัดการซอฟต์แวร์ข้ามดิสทริบิวชัน

บทเรียน 2 จาก 413 ขั้นตอน

ติดตั้งแพ็กเกจด้วยโมดูล package เป็นบทเรียน Ansible Academy ฟรีบน CoddyKit นี่คือบทเรียนที่ 2 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน Ansible Academy และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส Ansible Academy มีบทเรียนทั้งหมด 4 บทเรียน

หนึ่งโมดูล ใช้ได้กับหลายดิสทริบิวชัน

โมดูล package ใช้ติดตั้งซอฟต์แวร์โดยไม่ต้องระบุตัวจัดการแพ็กเกจ โมดูลจะเลือก apt, dnf หรือ yum ให้โดยอัตโนมัติตามโฮสต์เป้าหมาย

ติดตั้งด้วย state present

หากต้องการติดตั้งซอฟต์แวร์ ให้ระบุชื่อแพ็กเกจและตั้งค่า state: present Ansible จะติดตั้งเฉพาะเมื่อยังไม่มีแพ็กเกจนั้น

ansible.builtin.package:
  name: nginx
  state: present

name คือชื่อแพ็กเกจ

คีย์ name ใช้เก็บชื่อแพ็กเกจตามที่ดิสทริบิวชันรู้จัก เช่น nginx หรือ git ชื่อที่ใช้กันทั่วไปส่วนใหญ่จะเหมือนกันในแต่ละดิสทริบิวชัน

name: git

ลบออกด้วย state absent

ตั้งค่า state: absent เพื่อถอนการติดตั้งแพ็กเกจ โมดูลจะลบแพ็กเกจเฉพาะเมื่อมีการติดตั้งอยู่ในปัจจุบัน และยังคงทำงานซ้ำได้อย่างปลอดภัย

ansible.builtin.package:
  name: telnet
  state: absent

ติดตั้งรายการแพ็กเกจพร้อมกัน

ส่งรายการให้กับ name แล้วโมดูลจะติดตั้งทุกแพ็กเกจในงานเดียว ซึ่งเป็นระเบียบและเร็วกว่าการแยกเป็นหลายงาน

ansible.builtin.package:
  name:
    - git
    - curl
    - vim
  state: present

ทำงานซ้ำได้อย่างปลอดภัย

เรียกใช้งานสองครั้ง แล้วครั้งที่สองจะรายงานสถานะ ok ไม่ใช่ changed เพราะมีแพ็กเกจอยู่แล้ว จึงไม่ต้องทำอะไรซ้ำ

package ครอบตัวจัดการแพ็กเกจของระบบ

โมดูล package เป็นตัวครอบทั่วไป ภายในจะเรียกใช้ apt บน Debian หรือ dnf บน Fedora ทำให้คุณเขียนงานเพียงครั้งเดียว

ใช้โมดูลเฉพาะเมื่อต้องการ

หากต้องใช้ความสามารถเฉพาะของตัวจัดการแพ็กเกจ ให้ใช้ apt หรือ dnf โดยตรง โมดูลเหล่านี้มีตัวเลือกอย่าง update_cache ซึ่ง package ไม่มี

ansible.builtin.apt:
  name: nginx
  update_cache: true

โดยปกติต้องยกระดับสิทธิ์

การติดตั้งซอฟต์แวร์ต้องใช้ root จึงควรเพิ่ม become: true ให้กับงานหรือเพลย์บุ๊ก จากนั้น Ansible จะเรียกใช้งานแพ็กเกจผ่าน sudo

- name: Install nginx
  become: true
  ansible.builtin.package:
    name: nginx

state present มักเป็นค่าเริ่มต้น

โมดูลแพ็กเกจหลายตัวถือว่า present เป็นสถานะเริ่มต้น การเขียนระบุไว้ด้วยจะช่วยให้ผู้อ่านคนถัดไปเข้าใจเจตนาของคุณได้ชัดเจน

ลองใช้แบบเฉพาะกิจ

คุณสามารถติดตั้งแบบเฉพาะกิจได้โดยไม่ต้องมีเพลย์บุ๊ก คำสั่งนี้จะติดตั้ง git บนโฮสต์ทุกเครื่องในกลุ่ม web ภายในบรรทัดเดียว

ansible web -b -m package -a "name=git state=present"

ตรวจสอบอย่างรวดเร็ว

คุณต้องการงานเดียวที่ติดตั้ง nginx บนโฮสต์ทั้ง Debian และ Fedora

สรุป

โมดูล package ใช้ติดตั้งหรือถอนซอฟต์แวร์ด้วยค่า present และ absent รับรายการแพ็กเกจ มีคุณสมบัติทำซ้ำได้โดยไม่เปลี่ยนแปลง และทำงานได้กับดิสทริบิวชันต่าง ๆ 📦

เริ่มต้นได้ฟรี

เรียนรู้ YAML ด้วย AI tutor — ฟรี

เขียนและเรียกใช้โค้ดจริงในเบราว์เซอร์ของคุณ รับความช่วยเหลือทันทีจาก AI tutor 24/7 และเรียนรู้ต่อจากที่คุณหยุดบนเว็บหรือในแอป

คอร์ส
30
บทเรียน
120

คำถามที่พบบ่อย

บทเรียน “ติดตั้งแพ็กเกจด้วยโมดูล package” ฟรีหรือไม่

ใช่ — ข้อความเต็มของ “ติดตั้งแพ็กเกจด้วยโมดูล package” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส Ansible Academy ให้อัปเกรดเป็น CoddyKit PRO คอร์ส Ansible Academy มีบทเรียนทั้งหมด 4 บทเรียน

คุณจะเรียนรู้อะไรในบทเรียน “ติดตั้งแพ็กเกจด้วยโมดูล package”

จัดการซอฟต์แวร์ข้ามดิสทริบิวชัน คุณปฏิบัติ Ansible Academy ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน Ansible Academy หรือไม่

ไม่จำเป็นต้องมีประสบการณ์มาก่อน Ansible Academy บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 2 จากทั้งหมด 4 บทเรียน

บทเรียน “ติดตั้งแพ็กเกจด้วยโมดูล package” ใช้เวลานานแค่ไหน

บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย

ฉันเขียนและรันโค้ดในบทเรียน Ansible Academy นี้ได้ไหม

ได้ บทเรียน Ansible Academy ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ

บทเรียนทั้งหมดในหลักสูตรนี้

  1. โมดูลคืออะไรในความเป็นจริง
  2. ติดตั้งแพ็กเกจด้วยโมดูล package
  3. จัดการบริการด้วย systemd
  4. อ่านเอกสารด้วย ansible-doc
← กลับไปที่ Ansible Academy