שאלה איך אני יכול להריץ יציב דביאן אבל להתקין כמה חבילות בדיקות?


תגיד שאתה מפעיל שרת ואתה לא רוצה לשדרג ל בדיקה (לסחוט) מ יציב (לני) רק כדי להתקין את החבילה הנדרשת או שניים.

מהי הדרך הטובה ביותר להתקין רק חבילות מסוימות מ 'בדיקה'?


181
2018-06-09 07:53




זה מה שיש לתיעוד הרשמי האחרון לומר: חבילות ממקור מעורב של ארכיונים. - Alexey


תשובות:


אנשים רבים חוששים לערבב יציבה עם בדיקות, אבל בכנות, הבדיקה היא יציבה למדי בזכות עצמה, ועם העדפות הנכונות ובדיקת פתרון, אתה יכול למנוע את "היסחף יציבות" זה מעמיד את חבילות הליבה שלך על השביל יציב.

"בדיקה יציבה למדי?", אתה שואל. כן. כדי שחבילה תעבור ממצב לא יציב לבדיקה, יש לה אפס באגים פתוחים במשך 10 ימים רצופים. רוב הסיכויים כי, במיוחד עבור חבילות פופולרי יותר, מישהו הולך להגיש דוח באגים עבור גרסה לא יציבה אם משהו לא בסדר.

גם אם אתה לא רוצה לערבב את סביבות, זה עדיין נחמד יש את האפשרות שם במקרה אתה נתקל לתוך משהו הדורש גרסה חדשה יותר מאשר מה הוא יציב.

הנה מה שאני ממליץ על הגדרת זה:

ראשית, צור את הקבצים הבאים /etc/apt/preferences.dYou

security.prefYou

Package: *
Pin: release l=Debian-Security
Pin-Priority: 1000

stable.prefYou

Package: *
Pin: release a=stable
Pin-Priority: 900

testing.prefYou

Package: *
Pin: release a=testing
Pin-Priority: 750

unstable.prefYou

Package: *
Pin: release a=unstable
Pin-Priority: 50

experimental.prefYou

Package: *
Pin: release a=experimental
Pin-Priority: 1

(אל תפחדו מהדברים הלא יציבים / הניסיוניים כאן, סדרי העדיפויות נמוכים מספיק, שלעולם לא יתקינו את כל הדברים האלה באופן אוטומטי.גם ענף הבדיקות יתנהג, כי זה רק הולך להתקין את החבילות שאתם רוצים להיות בבדיקה).

עכשיו, יצירת סט תואם עבור /etc/apt/sources.list.dYou

security.listYou

deb     http://security.debian.org/         stable/updates  main contrib non-free
deb     http://security.debian.org/         testing/updates main contrib non-free

stable.listYou

deb     http://mirror.steadfast.net/debian/ stable main contrib non-free
deb-src http://mirror.steadfast.net/debian/ stable main contrib non-free
deb     http://ftp.us.debian.org/debian/    stable main contrib non-free
deb-src http://ftp.us.debian.org/debian/    stable main contrib non-free

testing.list: כמו stable.list, אלא עם testing.

unstable.list: כמו stable.list, אלא עם unstable.

experimental.list: כמו stable.list, אלא עם experimental.

אתה יכול להחליף את המראה steadfast.net עם מה שאתה רוצה. אני ממליץ להשתמש netselect-apt כדי להבין את המראה המהיר ביותר, ולהשתמש בו לבחירה הראשונה שלך. ה ftp.us.debian.org יכול לשמש גיבוי. חשוב גם להשתמש במונחים stable, testing, unstable, וכו ', במקום squeeze, wheezy, sid, וכו ', מאז stable היא מטרה נעה וכאשר זה מגיע הזמן כדי לשדרג את היציב האחרון, aptitude / aptitude יהיה להבין את זה באופן אוטומטי.

ניתן גם להוסיף oldstable in sources.lists.d ו preferences.d (השתמש בעדיפות של 1), אם כי הכינוי הזה נוטה לפוג ולהיעלם לפני המחזור היציב הבא. במקרים כאלה, אתה יכול להשתמש http://archive.debian.org/debian/ ו "hardcode" את הגירסה Debian (etch, lenny, וכו ').

כדי להתקין את גירסת הבדיקה של חבילה, פשוט להשתמש aptitude install lib-foobar-package/testing, או פשוט לקפוץ לתוך GUI של הכושר לבחור את הגרסה בתוך הפרטים החבילה (פגע להיכנס על החבילה שאתה מסתכל).

אם אתה מקבל תלונות על סכסוכים חבילה, להסתכל על הפתרונות הראשון. ברוב המקרים, הראשון הוא הולך להיות "לא להתקין את הגירסה הזו". למד כיצד להשתמש בחבילות קבלת / דחיית חבילה לכל חבילה. לדוגמה, אם אתה מתקין את החבילה / בדיקה של foobar, והפתרון הראשון הוא "אל תתקין את החבילה / בדיקה של foobar", ולאחר מכן סמן את הבחירה כנדחית, והפתרונות האחרים לעולם לא ייסוגו שוב לנתיב זה. במקרים כאלה, אתה כנראה צריך להתקין כמה חבילות בדיקה אחרות.

אם זה מתחיל להיות שעיר מדי (כמו שזה מנסה לשדרג libc או את הקרנל או כל מערכת הליבה ענק אחרים), אז אתה יכול לדחות את נתיבי השדרוג או פשוט לחזור מתוך השדרוג הראשוני לגמרי. זכור כי זה רק הולך לשדרג דברים כדי בדיקה / יציב אם אתה מאפשר את זה.


166
2018-04-23 02:38



אני מנסה להשתמש בזה, אבל אני לא מסוגל לפתור שום תלות בכלל. זה נראה כמו לא apt-get, לא כישרון יחפש את התלות repos בדיקה. האם יש דרך לפתור את זה? - Tamás Szelei
רצת apt-get update לאחר שיצרת את קבצי התצורה? - Flow
מה לגבי עדכונים backports? - dgrant
חשוב: המחבר בחר ערך העדפת הצמדה עבור יציבה / אבטחה כלומר גבוה יותר מאשר ערך שחרור ברירת המחדל ... ראה serverfault.com/a/653552/120130 למידע נוסף - Alex Ryan
תשובה זו פשוט שברתי את המערכת שלי. אחרי ניסיון לעשות sudo apt-get update, קיבלתי הודעת שגיאה. ואז התחילה מחדש, מה שנתן לי Xsession error, הפעל מחדש, ועכשיו אין לי גי. ה /dev/sda1/ הוא מלא עכשיו. גדול. - luchonacho


ב /etc/apt/apt.conf.d הוסף את הקובץ הבא

99defaultreleaseYou

APT::Default-Release "stable";

in /etc/apt/sources.list.d - הוספת כתובות אתרים לבדיקה / מקורות לא יציבים

stable.listYou

deb     http://ftp.de.debian.org/debian/    stable main contrib non-free
deb-src http://ftp.de.debian.org/debian/    stable main contrib non-free

deb     http://security.debian.org/         stable/updates  main contrib non-free

testing.listYou

deb     http://ftp.de.debian.org/debian/    testing main contrib non-free
deb-src http://ftp.de.debian.org/debian/    testing main contrib non-free

deb     http://security.debian.org/         testing/updates  main contrib non-free

לרוץ

apt-get update

ולאחר מכן להתקין את מה שאתה צריך עם

apt-get -t testing install something

היזהר מאוד אם אתה מתקין דברים שיש להם הרבה תלות. רצוי לא לעשות את זה על הייצור.

אתה יכול גם לנסות את המזל שלך ב - או מאגר דומה.


90
2018-06-09 07:57



וואו. זה היה מהיר. הייתי לפרסם כדי לחלוק את המידע אני רק נתקל! נחמד! - Gareth
מעולם לא השתמשתי בשיטה apt.conf לפני. זה נראה פשוט יותר כי העדפות הקובץ השיטה, אבל נותן לך שליטה פחות מדויק. - לולים - Coops
מענה לשדרוג הצרכים; זה config תשבור דברים לחלוטין עכשיו לסחוט הפך יציב lenny הפך oldstable. - El Yobo
לא ניתן להשתמש בו עוד, אנא עדכן - Lothar
במהדורות חדשות של debian אין קובץ apt.conf, במקום לערוך /etc/apt/apt.conf.d/70debconf - Hayden Thring


apt_preferences

להגדיר את רמת ברירת המחדל כי המערכת צריכה 'בטוח לשדרג' ל / etc / apt / העדפות הקובץ:
גבר apt_preferences

יש הרבה דברים שאתה יכול לעשות עם apt_preferences אבל למען הפשטות ...

אני צריך להתקין חבילה אחת (autoMysqlBackup) זה היה זמין רק בדיקה. הפתרון היה להוסיף את הדברים הבאים ל / etc / apt / preferences:

Explanation: Uninstall or do not install any Debian-originated
Explanation: package versions other than those in the stable distro
Package: *
Pin: release a=stable
Pin-Priority: 900

Package: *
Pin: release o=Debian
Pin-Priority: -10

עם מאגרים מרובים נוסף ל / etc /apt /sources.list aptitude עכשיו רק לשדרג את המהדורה שצוין שלך למרות repos שחרור מאוחר יותר מופיעים (במקרה זה 'יציב').

deb http://mirror.aarnet.edu.au/debian/ lenny main
deb-src http://mirror.aarnet.edu.au/debian/ lenny main
deb http://mirror.aarnet.edu.au/debian/ squeeze main
deb-src http://mirror.aarnet.edu.au/debian/ squeeze main

אז כדי להתקין את החבילה, כל מה שאתה צריך לעשות הוא:

$ aptitude install -t testing packageName 

46
2018-06-09 08:04



זוהי שיטה טובה מדי, לא במהירות קלה כמו apt.conf, אבל מאפשר לך לשלוט על כל המקורות השונים שלך באופן יחסי. - Coops
זה מסובך מדי עבור המשימה ... באמצעות APT :: Default-Release עושה להגדיר את העדיפות סיכה של שחרור ל 990 (בדומה איך אתה מגדיר את זה 900) ואת הצמדה שלילית עבור שאר לא נחוץ באמת .. במהלך שדרוג הרחובות יש לחבילת האורווה עדיפות בכל מקרה, וברגע שתציין משהו במפורש בשורת הפקודה, עדיפותה שלילית שלילית לא תתעלם. - Raphaël Hertzog
אני לא בטוח איך לענות לך @ רפאל. זה נראה דרך אלגנטית מאוד לעשות דברים. השתמשתי בהצמדה לפני לפני שנים, אבל אני אף פעם לא באמת 'יש' את זה. הדוגמאות שהשתמשתי בהן הן ישירות מדף האדם apt_preferences. - Gareth
אישור זה עובד בסדר על לסחוט - tomfanning
@ Lothar: זה עובד על דביאן 6. רק בגלל הקובץ אינו קיים לא אומר שזה לא עובד. פשוט ליצור את הקובץ ולהוסיף את ההגדרות. ציטוט מדף האיש: "אם אין קובץ העדפות או אם אין ערך בקובץ המתאים לגירסה מסוימת, אזי העדיפות המוקצית לגרסה זו היא העדיפות של ההפצה שאליה שייכת גירסה זו". - rzetterberg


תיעוד debian הוא נרחב בנושא ואני ממליץ בחום לחפור כפי שהוא יהיה לחשוף את היופי של מערכת debian.

תסתכל על כיצד לשמור על מערכת מעורבת, זה יסביר את כל מה שאתה צריך tio יודע.


12
2018-06-09 08:24



זה נראה כי אותה שיטה המשמשת את התשובה על ידי @pQd, ולכן זה אינו חל על debian> = 6.0. גם את הכותרת הקישור אומר "תיעוד מיושן" עכשיו. כמו כן הקישור רק תשובה. - dequis
למרות @ דקים נכון כי הקישור נראה מיושן, אני רק בעקבות ההוראות על דביאן 8 (בדיקה) כדי להתקין חבילה מ יציב, והכל נראה לעבוד בסדר גמור. מישהו קיבל קישור תיעוד מעודכן? - domsson
זה עשוי להיות מה שאתה מחפש:debian.org/doc/manuals/debian-reference/... - tomdeb


בשביל מה זה שווה, את העצה הכללית אני תמיד ראיתי היא "אל תערבב עם כל דבר יציב." רוב הדרכות המעורבות של המערכות הן לבדיקת ערבוב ולאי יציבות.

נראה כי אם אתה מערבב יציבה עם בדיקות, חבילות בסיסיות מאוד (כמו libc6) יחייבו עדכונים (כדי להתקין תוכנה מהבדיקה), וברגע שהחבילות הבסיסיות יעברו לבדיקה, המערכת כולה יכולה להיסחף ככה.

להלן שתי חלופות:

  1. להשתמש Backports.
  2. התקן קו מקור מהבדיקה ונסה לבנות את הגירסה המאוחרת שאתה רוצה ממקור.

10
2018-06-09 13:09



אני מסכים. אני פשוט ניסיתי לעדכן libdvdread4 מ בדיקות בגלל באג בגרסה ב wheezy / יציבה. הוא רוצה להביא את libc האחרונה אף. אז אני פשוט תפס את החבילה המקור libdvdread4 מ יציבה ו תוקנו אותו עם שינוי מקור 1 קו מחדש אותו. דרך טובה יותר מאשר משיכת כל מיני חבילות מן הבדיקה. עכשיו כל החבילות הן עדיין "יציבה" אלה ויש לי רק את 1-line לשנות אני צריך. - dgrant


דרך אחרת, שיכולה למנוע התקנת תלות רבות מדי מבדיקות או סיד, היא זו: אתה אומר שאתה מקבל את המקור של החבילה מהבדיקה או מסיד וליצור חבילה עבור המערכת שלך באמצעות כלים של דביאן (אין צורך לבצע טינקר ידני עם מקורות).

ציטוט מכאן:
https://wiki.debian.org/DebianUnstable#How_do_I_backport_a_sid_package_to_testing_or_stable.3F

איך אני backport חבילת צד לבדיקה או יציב?

התקן את מקור דביאן (ואת כלי הפיתוח, במיוחד   debhelper, devscripts, ו- build-essential), ולאחר מכן לבנות את   החבילה.

צעד אחר צעד:

add a deb-src line for sid to your sources.list

apt-get update

apt-get build-dep PACKAGE_NAME

apt-get -b source PACKAGE_NAME 

וכתוצאה מכך debs צריך להיות בספרייה הנוכחית יכול להיות   מותקן עם dpkg -i the.deb.


7
2018-03-13 17:02





אני עושה את זה במשך תקופה ארוכה של זמן כדי להיות בטוח לומר את זה בטוח מספיק והוא יכול להיות נוח. עם הגירסה יציבה ההתקנה להלן יותקן כברירת מחדל, אולם Aptitude גם יאפשר לך לבחור בגירסה backported או לא יציב אם רצוי:

enter image description here

ישנם ארבעה דברים שצריכים לערוך, ברירת המחדל של הצמדה מהדורה צריכה להיות מוגדרת, המקורות צריכים backports ובלתי יציבים הוסיף, הפחתת העדיפות הצמדה של backports / חבילות לא יציב, ואת הגדרות תצוגת הכישרון צריך להיות שונה כדי להציג הצמדה.

  • ליצור '/etc/apt/apt.conf.d/10defaultrelease' ולהפוך אותו תוכן כדלקמן:
Apt :: default-Release "יציב";
  • ערוך את '/etc/apt/sources.list' כדי להוסיף מקורות יציבים ו backports אז זה נראה משהו כזה:
# Deb cdrom: [דביאן גנו / לינוקס 6.0.0 _Squeeze_ - ארכיטקטורה רב-תחומית רשמית amd64 / i386 NETINST # 1 20110205-14: 45] / סחיטה הראשי

deb http://ftp.us.debian.org/debian/ squeeze main
deb-src http://ftp.us.debian.org/debian/ לסחוט הראשי

הדיון http://security.debian.org/ squeeze / Updates main
debs src http://security.debian.org/ לסחוט / עדכונים הראשי

# לסחוט עדכון, ידע בעבר "נדיף"
deb http://ftp.us.debian.org/debian/ squeeze-updates main
deb-src http://ftp.us.debian.org/debian/ סחיטה-עדכונים הראשי

# לסחוט backports
# http://backback.debian.org/Instructions/
deb http://backports.debian.org/debian-backports לסחוט- backports הראשי

# לא יציב
# http://wiki.debian.org/AptPreferences
deb http://ftp.us.debian.org/debian/ unstable main
deb-src http://ftp.us.debian.org/debian/ ראשי לא יציבים

# לא חופשיים לשעבר. השמש ג 'אווה
#deb http://ftp.us.debian.org/debian/ לסחוט ללא תשלום
# deb-src http://ftp.us.debian.org/debian/ סחיטה ללא תשלום
  • ערוך etc/apt/preferences קובץ מצמיד - אם הקובץ אינו קיים, צור אותו.
# חבילה הצמדת עדיפויות
# ראה http://wiki.debian.org/AptPreferences ו http://manpages.debian.net/cgi-bin/man.cgi?query=apt_preferences
#
# ב פגז אגוז הגבוהה ביותר מותקן מקבל
#
# ברירת מחדל Pining הם כמו בצע אשר בנוסף להגדרות שלנו:
# 990 - עבור גירסה שאינה מותקנת, אך הם שייכים להגדרה 'APT :: Default-Relase' יציבה שלנו.
# 500 - עבור גירסאות שאינן מותקנות ואינן שייכות לשחרור היעד
# 100 - עבור חבילות שכבר מותקנות, זה גם אומר גירסאות אחרות של אותה החבילה
# 1 - עבור חבילות ניסיוניות; חבילות עם "NotAutomatic: כן"
#
# Pinnings שלנו
# 400 - backports כי ניתן להתקין בבטחה ללא צורך לעדכן חבילות אחרות
# 50 - חבילות לא יציב, להתקין כפוי במסך הפרטים, עלולה לגרום להתנגשויות

חבילה: *
Pin: שחרור n = לסחוט backports
PIN-Priority: 400

חבילה: *
Pin: שחרור a = לא יציב
  • צור '/etc/apt/apt.conf.d/100guiconf' וכדי להגדיר Aptitude כך להציג להצמיד מידע.
Aptitude :: ממשק משתמש :: תצוגת חבילות -% c%%% M%%% Z%%% V% i ";

4
2018-02-04 22:59



רק עדכון נוסף על האמור לעיל יש לי התיישבו על הפעלת כל חבילות המערכת שלי מן "בדיקות" מאגרי הפיתוח. אז ב source.list יש לציין שם קוד jessie במקום squeeze. המדיניות של דביאן testing הוא יציב ליד חבילות חבילות כבר כמעט כמו חדש מ unstable מאגר. אני אוזל כאן אז בבקשה תסתכל על: wiki.debian.org/DebianReleases, wiki.debian.org/StableUpdates, ו wiki.debian.org/StableProposedUpdates; שני האחרונים הם מקורות מאגר נוספים. - Daniel Sokolowski