Prelink (หรือวิธีทำให้ KDE บูตใน 3 วินาที)

ลิงก์ล่วงหน้า เป็นโปรแกรมที่มียูทิลิตี้เพื่อให้โปรแกรมเปิดได้เร็วขึ้น แม้ว่าคำอธิบายว่ามันจะคุ้มค่ากับบทความฉบับเต็มได้อย่างไร แต่เราสามารถพูดได้อย่างคร่าวๆว่าไบนารีจะต้องค้นหาไลบรารีไดนามิกที่ต้องโหลดก่อน

ลองจินตนาการว่าเรามีไบนารีที่ขึ้นอยู่กับไลบรารี QtCore เมื่อเราดำเนินการเชื่อมโยงล่วงหน้าแล้วระบบจะค้นหาก่อนในช่องว่างที่กำหนดโดยลิงก์ก่อนและในกรณีที่ไม่พบ (เช่นการอัปเดต) ก็จะค้นหา ในรูปแบบดั้งเดิม

Prelink ทำงานบนระบบที่รองรับ POSIX เช่น GNU / linux หรือ BSD

วิธีสมัครพรีลิงค์

การเพิ่มประสิทธิภาพระบบด้วยลิงก์ล่วงหน้านั้นค่อนข้างง่ายเราสามารถปรับไบนารีให้เหมาะสมโดยใช้ (เป็นรูท):

prelink binario

แต่เพื่อเพิ่มประสิทธิภาพทั้งระบบเราต้องดำเนินการ:

prelink -amvR

คุณจะเห็นสิ่งนี้:

ลิงก์ล่วงหน้า

ลิงก์ล่วงหน้า

นี่คือคำอธิบายโดยละเอียดเกี่ยวกับความหมายของพารามิเตอร์:

  • a: เท่ากับ - ทั้งหมดทำให้ใช้ได้กับทั้งระบบ
  • m: เทียบเท่ากับ –conserve-memory คำอธิบายวิธีการทำงานนั้นซับซ้อน แต่ช่วยประหยัดพื้นที่
  • v: เทียบเท่ากับ –verbose ช่วยให้เราทราบว่าไลบรารีใดที่เชื่อมโยงล่วงหน้า
  • ตอบ: เทียบเท่ากับ –random เพิ่มความปลอดภัยโดยการสุ่มค่า ฉันไม่ทราบรายละเอียดของการทำงานของมัน
เทอร์มินอลคือ Yakuake เผื่อว่าใครสนใจ

เพื่อยกเลิกการเชื่อมโยงล่วงหน้า (ยกเลิกการลิงก์) ไบนารี

prelink  -u

ทั้งระบบ:

prelink -au

การแจกแจงจำนวนมากเช่น Ubuntu เสนอ cron ที่เชื่อมโยงไบนารีระบบทั้งหมดล่วงหน้าเป็นระยะ ๆ หากติดตั้งลิงก์ล่วงหน้า
ลิงก์ล่วงหน้าอาจทำให้เกิดปัญหาในไบนารีที่เป็นกรรมสิทธิ์หลายรายการดังนั้นจึงมักจะข้ามไปโดยค่าเริ่มต้น อย่างไรก็ตามตรวจสอบให้แน่ใจว่าไฟล์ /etc/prelink.conf ของคุณมีบรรทัดเหล่านี้:
# Skype -b / usr / lib32 / skype / skype -b / usr / lib / skype / skype # ปลั๊กอิน Flash Player -b /usr/lib/mozilla/plugins/libflashplayer.so # NVIDIA -b / usr / lib / libGL .so * -b /usr/lib32/libGL.so* -b //usr/lib/libOpenCL.so* -b //usr/lib32/libOpenCL.so* -b / usr / lib32 / vdpau / -b / usr / lib / vdpau / -b /usr/lib/xorg/modules/drivers/nvidia_drv.so -b /usr/lib/xorg/modules/extensions/libglx.so* -b / usr / lib / libnvidia- * - b / usr / lib32 / libnvidia- * # Catalyst -b / usr / lib / libati * -b / usr / lib / fglrx * -b / usr / lib / libAMDXvBA * -b /usr/lib/libGL.so* - b / usr / lib / libfglrx * -b /usr/lib/xorg/modules/dri/fglrx_dri.so -b /usr/lib/xorg/modules/drivers/fglrx_drv.so -b / usr / lib / xorg / โมดูล / extensions / fglrx / -b /usr/lib/xorg/modules/linux/libfglrxdrm.so -b /usr/lib/xorg/modules/extensions/libglx.so

เพิ่มประสิทธิภาพ KDE

สิ่งที่สัญญาคือหนี้ หากคุณได้เชื่อมโยงระบบของคุณไว้ล่วงหน้าแล้วคุณอาจไม่สังเกตเห็นความแตกต่างของเวลาในการโหลด KDE เนื่องจาก KDE ทำหน้าที่เป็นยูทิลิตี้ที่เรียกว่า kdeinit เพื่อโหลดไลบรารีที่จำเป็นทั้งหมด เพื่อหลีกเลี่ยงการใช้เครื่องมือนี้เราต้องแจ้งให้ KDE ทราบว่ามีการเชื่อมโยงล่วงหน้า ในการทำสิ่งนี้เราต้อง (ในฐานะรูท) สร้างไฟล์ตัวแปร:

nano /etc/profile.d/kde-prelink.sh

ซึ่งเราวางบรรทัดต่อไปนี้

export KDE_IS_PRELINKED=1

และเราให้สิทธิ์ที่เหมาะสม (เราไม่ต้องการซนเพิ่ม rm-rf /)

chmod 755 /etc/profile.d/kde-prelink.sh

และถ้าคุณไม่เชื่อฉันนี่คือวิดีโอของ KDE ที่บูตระบบของฉัน:

[รายละเอียด] รายละเอียดระบบ:

  • HDD ที่ 7200 รอบต่อนาที
  • Gentoo
  • XFS
  • Ksplash ถูกปิดใช้งาน (สาเหตุของวิดีโอหน้าจอดำ
[/ รายละเอียด]

Cron และพรีลิงค์

หากคุณใช้ระบบเช่น Archlinux ซึ่งมีการอัปเดตบ่อยมากการเพิ่ม cron ที่รันพรีลิงก์ทุกวันอาจเป็นเรื่องที่น่าสนใจ

ดังนั้นเราจึงเปิดไฟล์ cron ด้วย nano (เป็นรูท):

nano /etc/cron.daily/prelink

และเราวางสิ่งต่อไปนี้:

#! / bin / ทุบตี
[[-x / usr / bin / prelink]] &&
/ usr / bin / prelink -amR &> / dev / null

จากนั้นเราให้สิทธิ์ที่เหมาะสม (ฉันได้กล่าวไปแล้วว่าไม่มีใครต้องการให้ใครเพิ่มรหัสที่เป็นอันตราย):
chmod 755 /etc/cron.daily/prelink

นิสัยที่ดีเมื่ออ่านบทความคือการค้นคว้าว่าสคริปต์ทำอะไรกันแน่ นิสัยที่ดีเมื่อเขียนคือการอธิบายว่ามีไว้เพื่ออะไร นี่คือรายละเอียด

  1. บรรทัดแรกคือการบอกระบบว่าสคริปต์ทุบตีคืออะไรและตำแหน่งของล่าม
  2. อันที่สองทำให้ bash เรียกใช้ subshell ในโหมด debug ฉันไม่รู้ว่าทำไม แต่ขอแนะนำสามารถกำจัดได้โดยไม่มีความเสี่ยง && หมายความว่าเมื่อคำสั่งเสร็จสิ้นให้รันสิ่งต่อไปนี้
  3. ดำเนินการเชื่อมโยงล่วงหน้าด้วยพารามิเตอร์บางอย่างที่อธิบายไว้แล้วเครื่องหมาย &> / dev / null จะเปลี่ยนทิศทางเอาต์พุตไปยัง / dev / null นั่นคือจะทิ้งมัน

ลิงค์ที่น่าสนใจ


แสดงความคิดเห็นของคุณ

อีเมล์ของคุณจะไม่ถูกเผยแพร่ ช่องที่ต้องการถูกทำเครื่องหมายด้วย *

*

*

  1. ผู้รับผิดชอบข้อมูล: Miguel ÁngelGatón
  2. วัตถุประสงค์ของข้อมูล: ควบคุมสแปมการจัดการความคิดเห็น
  3. ถูกต้องตามกฎหมาย: ความยินยอมของคุณ
  4. การสื่อสารข้อมูล: ข้อมูลจะไม่ถูกสื่อสารไปยังบุคคลที่สามยกเว้นตามข้อผูกพันทางกฎหมาย
  5. การจัดเก็บข้อมูล: ฐานข้อมูลที่โฮสต์โดย Occentus Networks (EU)
  6. สิทธิ์: คุณสามารถ จำกัด กู้คืนและลบข้อมูลของคุณได้ตลอดเวลา

  1.   อีวานบาร์รา dijo

    ด้วย "การโจมตี" ที่คุณมอบให้กับ [ENTER] เหล่าคนแคระตัวน้อยที่พีซีเริ่มกลัวและเริ่มทำงานด้วยความเร็วสองเท่าของก่อนหน้านี้คุณบอกว่าใช้ PRELINK แต่ระบบของคุณขึ้นอยู่กับความหวาดกลัว ... ฮ่า ๆ ๆ !

    ทักทายและโพสต์ที่ยอดเยี่ยม

    ขอบคุณสำหรับการแบ่งปัน.

    1.    โรเดอร์ dijo

      อืมด้วยเสียงรบกวนมันทำให้ฉันไม่แปลกใจเลยถ้ามีของฉันอยู่ในคอมพิวเตอร์ XD ของฉัน

    2.    นักล่า dijo

      มหากาพย์เรื่องตลกเป็นเรื่องจริงที่เขากระตือรือร้นที่จะเข้ามาฮิฮิ

  2.   เชอซี dijo

    ฉันอยากจะแสดงความคิดเห็นว่าเมื่อไม่นานมานี้ฉันได้ทำการเปรียบเทียบสิ่งนี้และฉันเห็นว่าความแตกต่างนั้นเกือบจะเป็นศูนย์ (ใช้เป็นการทดสอบที่ฉันคิดและจมบิตของ firefox และ nautilus
    หากมีความสนใจฉันจะเผยแพร่ไฟล์ (ฉันไม่ได้เผยแพร่ในเวลาที่ขี้เกียจ)

    1.    โรเดอร์ dijo

      อืมไม่ใช่ทุกไฟล์ที่สามารถปรับปรุงได้ แต่อย่างน้อยที่สุดระบบก็มีแนวโน้มที่จะบูตได้เร็วขึ้น

  3.   วัน dijo

    มีอยู่ครั้งหนึ่งที่ฉันใช้ e4rat และปรับปรุงการเริ่มต้นใช้งานเพียงไม่กี่วินาทีเนื่องจากเป็น hdd มันเริ่มเร็วเกินไปจากที่ฉันเห็นตอนนี้ฉันมี ssd ขนาดเล็กพร้อม kaos และใน xfs และเมื่อฉันเห็นเวลาเริ่มต้นฉันไม่อยากจะเชื่อเลย
    http://i.imgur.com/ds6WqIT.png

    1.    Joao dijo

      ฉันต้องการทราบธีมเดสก์ท็อปที่คุณใช้และชุดไอคอน (ด้วยความรู้สึกที่ดี)

      1.    โรเดอร์ dijo

        ฉันสาบานว่าธีมนี้คือฮีเลียม

      2.    วัน dijo

        ธีมและไอคอนของพลาสมาเรียกว่าไดนาโมและหน้าต่างบางถัดไป
        http://sta.sh/02ful04ags1
        http://hombremaledicto.deviantart.com/art/Dynamo-Plasma-beta-473014317
        http://kde-look.org/content/show.php?content=164722

        ขออภัยผู้แต่งเพลงที่ปิด🙂

    2.    โจสร็อด dijo

      ตัวเรียกใช้แอปพลิเคชันเรียกว่าอะไร 🙂

      1.    โรเดอร์ dijo

        ฉันคิดว่ามันเป็นตัวเรียกใช้ qml แบบธรรมดา

      2.    วัน dijo

        ดังที่ roader กล่าวว่ามันคือ QML

      3.    โจสร็อด dijo

        กราเซียส😉

  4.   Eliotime3000 dijo

    เคล็ดลับที่ดีมากแม้ว่า KDE จะดำเนินการอย่างมหัศจรรย์บน Arch และ Slackware (ฉันได้ลองใช้แล้วและพวกเขาก็น่าตื่นเต้นจริงๆ)

  5.   Azureus dijo

    เยี่ยมมากขอบคุณมาก ฉันทดสอบบน Arch ของฉันฉันทำ prelink ทั่วไปและฉันต้องบอกว่าการปรับปรุงค่อนข้างดีและฉันรู้สึกสบายใจมากฮิฮิ

  6.   เอียนพ็อคส์ dijo

    ฉันไม่รู้ว่าเป็นฉัน…. แต่ฉันไม่สังเกตเห็นความแตกต่างใด ๆ และด้วย systemd-analysis ยังใช้เวลานานกว่าจะเริ่ม ...

    1.    โรเดอร์ dijo

      ต้องมีปัญหาบางอย่างในระบบปฏิบัติการของคุณคุณก็รู้ prelink -au และทุกอย่างได้รับการแก้ไขแล้ว

  7.   blablabla dijo

    เท่าที่ฉันรู้ (จากประสบการณ์ของฉันเอง) อย่างน้อยใน Gentoo คุณไม่จำเป็นต้องสร้างไฟล์ใหม่เพื่อส่งผ่านค่าของตัวแปร KDE_IS_PRELINKED เพียงแค่ยกเลิกการใส่เครื่องหมายบรรทัด KDE_IS_PRELINKED = 1 ใน /etc/env.d/43kdepaths (ฉันไม่แน่ใจว่าเป็นเส้นทางที่แน่นอนหรือไม่เนื่องจากฉันไม่มีเครื่องในขณะนี้)

    ทุกครั้งที่คอมไพล์ KDE เสร็จสมบูรณ์คุณต้องตรวจสอบไฟล์นั้นเนื่องจากบางแพ็คเกจที่ติดตั้งจะเขียนทับไฟล์ที่ฉันพูดถึง

    1.    โรเดอร์ dijo

      และอาจเป็นเช่นนั้นในหลาย ๆ การแจกแจง แต่การทำในแบบที่ฉันทำฉันรับประกันได้ว่าการกำหนดค่านี้จะไม่เปลี่ยนแปลง

  8.   สเตติค dijo

    โพสต์ยอดเยี่ยมขอแสดงความยินดี

    ฉันขอแนะนำให้คุณสร้างบทช่วยสอนเพื่อติดตั้ง Gentoo

    1.    โรเดอร์ dijo

      ฉันจะเก็บไว้ในใจ ขอขอบคุณ

  9.   Cristianhcd dijo

    ยูทิลิตี้ที่ดีมากแม้ว่าจะไม่ได้ให้บริการฉันเพราะฉันมี: น่าขยะแขยงกับ KDE

  10.   ซาเวียร์ dijo

    ปลาโลมาจะเร่งความเร็วหรือไม่? ดูเหมือนจะเริ่มช้าเสมอ

    1.    โรเดอร์ dijo

      มันควรฉันไม่รู้ฉันมักจะใช้มันเป็นค่าเริ่มต้น ฉันใช้ gentoo, portage หากตรวจพบว่ามีการติดตั้งลิงก์ล่วงหน้าไว้ก่อนหน้านี้จะมีการเชื่อมโยงไบนารีโดยอัตโนมัติดังนั้นจึงไม่มีความคิด

  11.   pepo dijo

    น่าสนใจขอบคุณ!

    PD- Library = ห้องสมุดไม่ใช่ห้องสมุด😉
    เดสก์ท็อปเรียกว่า Plasma Desktop ไม่ใช่ KDE โอเคฉันหยุด xD

    1.    โรเดอร์ dijo

      ในศัพท์แสงของคอมพิวเตอร์ถือเป็นความล้มเหลวที่ได้รับการยอมรับท้ายที่สุดแล้วภาษาก็ใช้งานได้จริงโดยเฉพาะอย่างยิ่งในการแปล
      https://es.wikipedia.org/wiki/Librería_(desambiguación)

  12.   ดีทัลฟ์ dijo

    ดี. ฉันกำลังจะทดสอบใน ArchLinux KDE (ฐานไม่ใช่ DE ที่สมบูรณ์) และมันให้«บันทึกข้อผิดพลาด '/etc/cron.daily/ Error saving' /etc/cron.daily/prelink ': ไฟล์ prelink หรือไดเร็กทอรี ไม่มี ': ไม่มีไฟล์หรือไดเร็กทอรี» ฉันไม่ได้ติดตั้ง "cron" และใน wiki [1] พวกเขาพูดถึง cronie, fcron และตัวแปรอื่น ๆ ฉันต้องติดตั้งหรือทำอะไรบ้างเพื่อให้บทแนะนำนี้สมบูรณ์

    [1] https://wiki.archlinux.org/index.php/cron#Installation