התקנת פסאודו לא מקוון של ArchLinux שלב אחר שלב

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

פסאודו-התקנה

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

במקרה שלי, כבר עמדתי בדיסק שלי על Windows 7 (עם האתחול ומחיצת המערכת) ופדורה (עם ההחלפה שלו ומחיצת הייעוד / האתחול). הרעיון היה אז להתקין את Arch במקום שהיה בעבר פדורה, מבלי להרוס את Windows תוך כדי.

התקנת פסאודו לא מקוונת של ArchLinux

ובכן, התחלתי את תקליטור ה- Arch, בחרתי ב- x86_64, ובלי הרבה בעיות השארתי אותי בקונסולה. חשבתי, "וואו, החבר'ה האלה רציניים שהם לא דיסטרו טירונים ... בסדר, בואו נשחק אז ונראה מה יקרה."

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

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

loadkeys es

הדבר הבא היה להרכיב דיסק חיצוני כדי לשמור עותק של ה- MBR במקרה של בעיות ולשמור את המידע החשוב שהיה לי בפדורה שלי:

mkdir -p / mnt / tmp1 && mount / dev / sdb1 / mnt / tmp1 dd if = / dev / sda of = / mnt / tmp1 / mbr.bin bs = 512 count = 1

למרבה המזל LiveCD של Arch תומך ב- NTFS ויש לו מובנה מפקד חצות (MC), אז תוך זמן קצר סיימתי לשמור את שאר המידע.

לאחר מכן פרמתי את הדיסק, הסרתי את הספריה הזמנית והסרתי פיזית את הדיסק החיצוני כדי להפחית את הסיכון ל"קגסטרופות ".

umount /mnt/tmp1 && rmdir /mnt/tmp1

אז עיצבתי את המחיצות שלי, הרכבתי את מחיצת השורש והאתחול והפעלתי החלפה:

mkfs -t ext4 / dev / sda3 mkfs -t ext4 / dev / sda6 mount / dev / sda6 / mnt mkdir -p / mnt / boot boot / dev / sda3 / mnt / swapon אתחול / dev / sda5

השלב הבא היה המכשול הראשון שלי:

pacstrap /mnt base

Arch ניסה באופן טבעי לחפש את מאגרי המאגרים על אחת המראות, ולא הצליח למצוא הכל pacstrap מה שהוא עשה היה ליצור מבנה ספריות ב- / mnt, מסודר מאוד, אך ברור שהוא ריק.

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

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

rsync -avl / {bin, וכו ', בית, lib, lib64, opt, root, sbin, srv, usr, var} / mnt arch-chroot / mnt genfstab -p / >> / etc / fstab echo hpc> / etc / שם מארח ln -sf / usr / share / zoneinfo / Cuba / etc / localtime locale-gen

השלב הבא היה המכשול הבא שלי:

mkinitcpio -p linux

פקודה זו הניבה כמה שגיאות לאחר קריאת מדריך הפקודה ותוכן הקבצים /etc/mkinitcpio.conf y /etc/mkinitcpio.d/linux.preset, הבנתי שהפקודה לא מצליחה למצוא את הקובץ vmlinuz-linux, אז לחצתי על Ctrl + D כדי לצאת מסביבת ה- chroot וחיפשתי כל קובץ שנראה כמוהו:

find / -type f -iname "*vmlinuz*"

זה קורה ש- LiveCD של Arch מרכיב את קבצי האתחול מתחת לספריה / לרוץ /אז החלטתי להעתיק לי אותם / אתחול / שיהיה להם שימושי בסביבת השורש שלי:

cp /run/archiso/bootmnt/arch/boot/[memtest,intel_ucode.img} / mnt / boot / cp / run / archiso / bootmnt / arch / boot / x86_64 / * / mnt / boot / arch-chroot / mnt

כשגיאה נוספת שמצאתי שהתנסות ב- mkinitcpio הייתה שלא ניתן למצוא את התווית של מחיצת השורש, רשמתי את ה- UUID שלו (שאותו זיהיתי באמצעות הפקודה blkid) לשימוש עם הפקודה, שנראתה לבסוף כך:

mkinitcpio -p linux -k /boot/vmlinuz root=UUID=d85938aa-83b8-431c-becb-9b5735264912

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

genfstab -U -p / > /etc/fstab

חשבתי: אה נו, סוף סוף התקדמו. והמשכתי לשנות את הסיסמה ולהתקין מטען אתחול.

passwd grub-install - target = i386-pc - לבדוק / ​​dev / sda grub-mkconfig -o /boot/grub/grub.cfg

לבסוף, וכדי להיות מתודתי, לחצתי שוב על Ctrl + D כדי לצאת מהסביבה השורשית, פירקתי הכל והתחלתי מחדש כדי לראות מה קרה:

umount / mnt / אתחול umount / mnt אתחול מחדש

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

journalctl -xb

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

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

אבל כדי להיות מעשיים חשבתי: "טוב, אבל לפחות צריך להתייחס אליו בקובץ כלשהו, ​​בוא נראה ...":

find /etc -type f -print0 | xargs -0 grep -i "plymouth"

באופן מפתיע, שום קובץ עם מחרוזת הטקסט "פלימות" לא הופיע בספריית התצורה. חשבתי אז: «אה, אז ... אתה מכריח את עצמך איתי? אז בוא נראה איך אתה מטמיע 'תותח' "(כמו שאנחנו אומרים בקובה), ו"אני בניתי" פלימות מאפס:

vi / usr / bin / plymouth chmod 755 / usr / bin / plymouth

לאלו מכם שתוהים מה הכנסתי לקובץ ההוא, הנה התוכן במלואו המפואר:

#! יציאה / bin / sh

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

rm -fr / usr / bin / plymouth אתחול מחדש

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

הוספת Windows ל- GRUB

זה היה אז להוסיף את ערך Windows ל- GRUB. מכיוון שהמסלולים המסורתיים לא פעלו (השילוב של grub-mkconfig עם os-prober נראה שלא עובד טוב), החלטתי ליצור את הערך באופן ידני, שעבורו עלי לזהות את מחרוזת האתחול של Windows ואת ה- UUID של מחיצת האתחול:

mkdir -p / mnt / winboot && mount / dev / sda1 / mnt / winboot grub-probe --target = hints_string / mnt / winboot / bootmgr grub-probe --target = fs_uuid / mnt / winboot / bootmgr

בהתאמה זה החזיר לי את שני המיתרים הבאים:

--hint-bios=hd0,msdos1 --hint-efi=hd0,msdos1 --hint-baremetal=ahci0,msdos1
DC788F27788EFF8E

באופן זה אימתתי שה- UUID שהוחזר היה זהה לזה שהושג עבור אותה מחיצה בעת ביצוע הפקודה blkid. לאחר מכן היה צורך ליצור רשומה מותאמת אישית עם הנתונים האמורים:

vi /etc/grub.d/40_custom

בתוכנו:

#! / bin / sh exec tail -n +3 $ 0 # קובץ זה מספק דרך קלה להוסיף ערכי תפריט מותאמים אישית. כל שעליך לעשות הוא להקליד את # ערכי התפריט שברצונך להוסיף לאחר תגובה זו. היזהר שלא לשנות את קו 'זנב exec' למעלה. menuentry "Microsoft Windows 7 SP1" - windows class - class os {insmod part_msdos insmod ntfs insmod search_fs_uuid insmod ntldr search --fs-uuid --set = root --hint-bios = hd0, msdos1 --hint-efi = hd0, msdos1 --hint-baremetal = ahci0, msdos1 DC788F27788EFF8E ntldr / bootmgr}

לאחר השלמת שלב זה, החלטתי להגדיר את Windows כמערכת ההפעלה המוגדרת כברירת מחדל, כך שאשתי לא תיכנס לפאניקה ואחיינית שלי תוכל לשחק את הברביות שלה כשהיא תבוא. לשם כך פשוט ערכתי את הקובץ / Etc / default / זלילה והגדרתי את הקלט להפעלה כברירת מחדל ואת פסק הזמן ל -3 שניות בלבד.

GRUB_DEFAULT = 2 GRUB_TIMEOUT = 3

נותר רק ליצור מחדש את תצורת GRUB ולהפעיל מחדש:

grub-mkconfig -o /boot/grub/grub.cfg אתחול מחדש

למרבה המזל, הכל עבר כמצופה. בחרתי בערך Windows וזה התחיל בשמחה.

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

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


השאירו את התגובה שלכם

כתובת הדוא"ל שלך לא תפורסם. שדות חובה מסומנים *

*

*

  1. אחראי לנתונים: מיגל אנחל גטון
  2. מטרת הנתונים: בקרת ספאם, ניהול תגובות.
  3. לגיטימציה: הסכמתך
  4. מסירת הנתונים: הנתונים לא יועברו לצדדים שלישיים אלא בהתחייבות חוקית.
  5. אחסון נתונים: מסד נתונים המתארח על ידי Occentus Networks (EU)
  6. זכויות: בכל עת תוכל להגביל, לשחזר ולמחוק את המידע שלך.

  1.   פטרצ'קו דיג'ו

    מקווה שתנסה את FreeBSD Elav.
    באשר למדריך שלך, מאוד מאוד טוב מאוד ושלם ...

    1.    רמפה דיג'ו

      כמה אתה משתנה. אני מבטיח לך שתשתעמם עם FreeBSD בעוד כמה חודשים.

      1.    lf דיג'ו

        מידע מעניין, אולם אני עדיין לא רואה מדריכים להתקנת קשת במערכות עם UEFI, האם לקשתים יש מחשבים חדשים?

        1.    אלב דיג'ו

          ההתקנה עם UEFI ב- ArchLinux מפושטת על ידי התקנת Antergos, אתה רק צריך ליצור מחיצה ב- Fat32 עם פחות מ 500MB ובאופן אוטומטי (כאשר אתה מאתחל את ה- USB עם UEFI), Antergos יסמן את המחיצה כ- / boot.

      2.    פטרצ'קו דיג'ו

        לכן אני משנה ... כדי לא לשנות יותר אני עובר מלינוקס ל- BSD: ד.

    2.    פטרצ'קו דיג'ו

      מדריך שינוי וכתוב: ד.

  2.   r @ y דיג'ו

    וואו ואני חשבתי שבזבזתי עבודה https://humanos.uci.cu/2014/11/instalando-arch-linux-en-gpt-con-repositorio-local/

    1.    אוזקר דיג'ו

      המשך להשתמש בקשת, כשאני הולך להוואנה אאסוף את זה.

  3.   אלכס דיג'ו

    יש לי ארכיב לינוקס ב- USB שלי לא העזתי להשתמש בו בגלל חוסר זמן.
    אני הולך לסקור טוב את המאמר ואז להשתמש בו!

  4.   לב Warheart דיג'ו

    מאמר מצוין, אגב זה מזכיר לי את האודיסיאה שעברתי כדי להתקין את Arch דרך WIFI עם BCM4312.

  5.   kalevito דיג'ו

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

    1.    דאקו דיג'ו

      המדריך מתפרסם באתר זה. https://blog.desdelinux.net/guia-de-instalacion-de-arch-linux-2014/

      😀 אז באמצעות המדריך ושים לב לנעשה תהיה לנו התקנה ללא סיבוכים, מזל!

    2.    אלב דיג'ו

      אתה עדיין יכול להתקין את Antergos, שהוא Archlinux אבל עם התקנה "בסגנון אובונטו" .. 😀

  6.   אפאני דיג'ו

    ב- Arch יש מדיום התקנה חלופי נוסף לתמונות הרשמיות שנקרא Archboot, שבניגוד לתמונות הרשמיות, מכיל את מאגר [הליבה] (ומשהו אחר), שימושי להתקנות לא מקוונות (זה גם ארכיטקטורה היברידית, זה עובד עבור i686 ו- עבור x86_64).

    הדבר הרע הוא שהוא תופס 1 ג'יגה-בתים כרגע (בעבר היה תופס הרבה פחות שנים) שיהיה צורך להוריד אותו לפני ... ובלי חיבור יציב לעשות את זה ההורדה הראשונית מסובכת.

    הנה קישור למקרה שתמצא אותו שימושי: https://wiki.archlinux.org/index.php/archboot

    1.    אלב דיג'ו

      מעניין, לא הכרתי אותו 😀

    2.    הוגו דיג'ו

      ובכן, באופן מוזר, לפני זמן מה ניסיתי את archboot וכשאני מגיע לחלק ה- pacstrap הוא אומר לי שהוא לא יכול למצוא את החבילה ntfs-3g 🙁

      יש לו גם מוזרויות אחרות, כגון שהוא אינו כולל דפי mc או דפים ידניים, והוא זקוק להרבה ram כדי להתקין אותו. זה לא נראה כמו פתרון מלוטש היטב.

  7.   מקס פלדה דיג'ו

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

    בשביל זה אתה כמובן צריך מחשב אחר עם קשת וחיבור לאינטרנט. פשוט הכינו קודם Pacman -Syu ואז בסיס Pacman -Sw (פלוס כל מה שאתם רוצים להתקין ברור). העתק את כל הקבצים ממטמון ה- pacman למקל USB וגם את קבצי מסד הנתונים (/var/lib/pacman/sync/{core.db, extra.db, community.db}.

    ואז המשך לבצע את ההתקנה הרגילה של arch, אבל לפני שתגיע לנקודת הפיכת pacstrap - d / mnt base (או כל דבר אחר, אני אומר הכל מהזיכרון>. <) אתה צריך לערוך pacstrap במדויק (עם vi או כל מה שאתה מעדיף. או הביאו את דיסק ההתקנה) וכמעט עד הסוף יש שורה שמתייחסת ל "pacman -Syy", אנחנו פשוט מוחקים אותה. בעקבות זאת אנו מעתיקים את קבצי מסד הנתונים של pacman למקומם המקביל (כל קבצי ה- db אל / var / lib / pacman / sync), ואת קבצי המטמון לספריית המטמון.

    אז עכשיו נמשיך עם pacstrap -loquenomeaccord / mnt בסיס וכל השאר.

    כל מה שאני אומר מהזיכרון, כך שיש אולי קצת פרטים שעברתי, כמו קבצי המטמון, אני לא זוכר לאן הם הולכים בדיוק, אבל זה צריך להיות ב / var / cache / pacman / pkg או אם לא ניתן לציין pacstrap נראה לי.

  8.   ליונל דיג'ו

    אתה יכול לעשות הדרכת cfdisk עם אתחול כפול או משולש bes, מה אני צריך להתקין arch

    1.    הוגו דיג'ו

      באמת אין הרבה מה לומר על cfdisk מכיוון שהוא אינו מורכב כלל, ולמעשה מדריך ההתקנה שהוזכר לעיל בעצם מראה כיצד להשתמש בו. אבל אם יש לך מערכות אחרות מותקנות אתה יכול להשתמש במשהו ידידותי יותר, אולי Gparted. עבור Windows יש כלי חינמי (אם כי למרבה הצער לא בחינם) שנקרא Easeus Partition Master שתוכל להשתמש בו, נראה שהוא עובד טוב מאוד.

      לשאר הדברים אני שמח שמצאת את המאמר מעניין, לא ראיתי את היתרון הגדול של החוויה שלי, אבל אלב עודד אותי להכין משהו בנושא.