ווטסאפ - לינוקס, BSD, קוד פתוח ותוכנה חופשית בעברית. Whatsup - Linux, BSD, open source and free software in Hebrew

 
 
  כניסת חברים · רישום · שכחתי סיסמה  
tux the penguin
תגובה לנושא
צפיה בנושא הבא Printable version התחבר כדי לבדוק הודעות פרטיות צפיה בנושא הקודם
שקר כלשהואורח · ·
 

הודעה פורסם: 30/11/2016 - 20:23
נושא ההודעה: כיצד אני יוצא מסביבת chroot כולל הסרת העיגון?

נניח כשאני עולה לג'נטו ואני רוצה לעשות chroot לתוך ארץ', אני מבצע את הפקודות הבאות:
קוד:
sudo mount /dev/sda3 /mnt/archlinux
cd /mnt/archlinux
sudo mount -t proc proc proc/
sudo mount --rbind /sys sys/
sudo mount --rbind /dev dev/
sudo mount --rbind /run run/
sudo cp /etc/resolv.conf etc/resolv.conf
sudo chroot /mnt/archlinux /bin/bash


אני רוצה להסיר את העגונים מכל המחיצות האלו שעיגנתי בתהליך.
קודם כל אני יוצא מ- chroot ע"י exit.
מה אני אמור לעשות עכשיו?
 
   
תגובה  עם ציטוט חזרה למעלה
חזרה לתוכן הדיון
אורח · ·
 

הודעה פורסם: 30/11/2016 - 20:28
נושא ההודעה:

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

הודעה פורסם: 30/11/2016 - 22:42
נושא ההודעה:

ניסית exit?
ויש בוויקי שלהם הסבר על זה.

ניסית גם umount?
 
   
תגובה  עם ציטוט חזרה למעלה
חזרה לתוכן הדיון
mksoftלא בפורום כעתSite Admin ת.הצטרפות: 17/03/2002 · הודעות: 10514 · מיקום: כדור הארץ
 

הודעה פורסם: 30/11/2016 - 23:09
נושא ההודעה:

זה מפורט במדריך ההתקנה של ארץ' לפני ה-reboot:

https://wiki.archlinux.org/index.php/installation_guide#Reboot

לכן במקרה שלך אחרי ה-exit צריך משהו כמו:
קוד:
umount -R /mnt/archlinux

_________________
הבלוג שלי
 
 צפיה בפרופיל המשתמש שלח הודעה פרטית שלח דוא\ ביקור באתר המפרסם  
תגובה  עם ציטוט חזרה למעלה
חזרה לתוכן הדיון
אורח · ·
 

הודעה פורסם: 30/11/2016 - 23:40
נושא ההודעה:

mksoft :
זה מפורט במדריך ההתקנה של ארץ' לפני ה-reboot:

https://wiki.archlinux.org/index.php/installation_guide#Reboot

לכן במקרה שלך אחרי ה-exit צריך משהו כמו:
קוד:
umount -R /mnt/archlinux


עשיתי וזה לא עובד (עכשיו נזכרתי שגם בעבר קיבלתי את ה"שגיאה" הזו):
קוד:
sudo umount -R /mnt/archlinux/
umount: /mnt/archlinux/sys/fs/cgroup/systemd: target is busy
        (In some cases useful info about processes that
         use the device is found by lsof(8) or fuser(1).)
 
   
תגובה  עם ציטוט חזרה למעלה
חזרה לתוכן הדיון
אורח · ·
 

הודעה פורסם: 30/11/2016 - 23:42
נושא ההודעה:

ובגלל השגיאה הזו מהתגובה הקודמת שלי, חשבתי שאולי הוא busy בגלל כל העיגונים אחרי שעיגנתי את arch:
קוד:
sudo mount -t proc proc proc/

sudo mount --rbind /sys sys/

sudo mount --rbind /dev dev/

sudo mount --rbind /run run/


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

הודעה פורסם: 01/12/2016 - 06:26
נושא ההודעה:

אתה בתוך התיקיה שאתה מנסה לעשות לה unmount ?
 
   
תגובה  עם ציטוט חזרה למעלה
חזרה לתוכן הדיון
elcucoלא בפורום כעת ת.הצטרפות: 14/10/2003 · הודעות: 6255 ·
 

הודעה פורסם: 01/12/2016 - 07:59
נושא ההודעה:

תשובה לא מלאה, ומי שיבין אותה ממש יהנה ממנה:

קוד:
man pivot_root
 
 צפיה בפרופיל המשתמש שלח הודעה פרטית  
תגובה  עם ציטוט חזרה למעלה
חזרה לתוכן הדיון
צפריראורח · ·
 

הודעה פורסם: 01/12/2016 - 08:41
נושא ההודעה:

pivot_root הוא למקרה שרוצים לעבור למערכת בלי אפשרות לחזור חזרה (זה נוצר כדי לעבור מתוך ה־initramfs לתוך המערכת הראשית).

לעניין השאלה המקורית: אפשר לעטוף את הפעלת chroot בסקריפט שמפעיל את פקודות ה־mount הנדרשות, ובסיום מריץ umount.

משהו בסגנון:
קוד:

#!/bin/sh

# usage: chroot_wrapper [cmd [parameters...]]

root_dir=/the/target/dir

mount -o bind /proc "$target_dir/proc"
# other mounts

chroot "$target_dir" "$@"

# other umounts
umount "$target_dir/proc"


אם הפעולות שנדרשות לביצוע לפני הסקריפט הן מורכבות יותר, לפעמים נוח להריץ את כל ה־umount כחלק מפונקציית exit:
קוד:

#!/bin/sh

# usage: chroot_wrapper [cmd [parameters...]]

root_dir=/the/target/dir

cleanup() {
  # other umounts
  umount "$target_dir/proc"
}

# Run cleanup on exit.
# Bash gives the symbolic name 'exit'.
# But with dash, 0 will have to do:
trap cleanup 0

mount -o bind /proc "$target_dir/proc"
# other mounts

chroot "$target_dir" "$@"

 
   
תגובה  עם ציטוט חזרה למעלה
חזרה לתוכן הדיון
אורח · ·
 

הודעה פורסם: 02/12/2016 - 00:55
נושא ההודעה:

אני מחוץ לתיקייה שאני מנסה לעשות לה umount.
חזרתי ל-home ומשם אני מנסה.
צפריר תודה על העזרה אבל אני לא צריך סקריפט.
מה גם שלכאורה אם זה לא עובד לי סתם כפקודה ישירה יש לי השערה שזה לא אמור לעבוד גם בתוך סקריפט.
כלומר ה- busy להבנתי יחזור בכל מקרה.
באחד החיפושים ראיתי שאפשר לעשות הסרת עיגון באופן עצל ואכן ניראה שזה עבד כלומר הפקודה עבדה ולא הוחזרה שגיאה:
http://superuser.com/questions/412109/lazy-umount-or-unmounting-a-busy-disk-in-linux

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

הודעה פורסם: 02/12/2016 - 02:42
נושא ההודעה:

אולי כדאי סתם בשביל הספורט להשתמש ב lsof ו fused כמו שמציעה השגיאה כדי לברר מה תופס את המחיצה.
 
   
תגובה  עם ציטוט חזרה למעלה
חזרה לתוכן הדיון
צפריראורח · ·
 

הודעה פורסם: 02/12/2016 - 14:11
נושא ההודעה:

יכול להיות שאלו הם שרותים שונים שהפעלת בזמן שהתעסקת עם המערכת. בהקשר הזה שווה להזכיר את systemd-nspan שאצלו את את הבעיה הזו מכיוון שהוא יודע מהם כל התהליכים שנוצרו בתוך ה־chroot והורג אותם בסיום.

קוד:

systemd-nspawn -D directory [command [parameters [...]]]

כמובן שזה עובד רק במערכת עם systemd.
 
   
תגובה  עם ציטוט חזרה למעלה
חזרה לתוכן הדיון
הצגת הודעות מלפני:     
מעבר אל:  
כל הזמנים הם GMT + 2 שעות
תגובה לנושא
צפיה בנושא הבא Printable version התחבר כדי לבדוק הודעות פרטיות צפיה בנושא הקודם
PNphpBB2 © 2003-2004 

תוכן הדיון

  1. אורח [שקר כלשהו]
  2. אורח
  3. אורח
  4. mksoft
  5. אורח
  6. אורח
  7. אורח
  8. elcuco
  9. אורח [צפריר]
  10. אורח
  11. אורח
  12. אורח [צפריר]