למה אין הרשאה ע"י sudo?
-
רצ"ב קוד BASH ניסיתי לבצע חלקו וקיבלתי שגיאת הרשאה ב B2 .[תמונה להלן]
cat > /etc/systemd/system/getty@tty1.service.d/autologin.conf << EOF [Service] ExecStart= ExecStart=-/sbin/agetty --autologin $USER --noclear %I \$TERM EOFתמונה:

@יצירה זו טעות נפוצה מאוד
כאשר אתה כותבsudo xxxx > /path/to/fileאיזה תהליך לדעתך פותח את הקובץ/path/to/file?
התשובה היא ש-bash הוא זה שפותח את הקובץ. לא התהליך שהרצת עם הרשאותsudo.
לכן מובן למה יש בעיית הרשאות.
הפתרון הוא לכתוב לקובץ באמצעות תהליך עם הרשאות גבוהות.
נהוג לעשות את זה באמצעותteeככה:cat | sudo tee /etc/systemd/system/getty@tty1.service.d/autologin.conf -
@יצירה זו טעות נפוצה מאוד
כאשר אתה כותבsudo xxxx > /path/to/fileאיזה תהליך לדעתך פותח את הקובץ/path/to/file?
התשובה היא ש-bash הוא זה שפותח את הקובץ. לא התהליך שהרצת עם הרשאותsudo.
לכן מובן למה יש בעיית הרשאות.
הפתרון הוא לכתוב לקובץ באמצעות תהליך עם הרשאות גבוהות.
נהוג לעשות את זה באמצעותteeככה:cat | sudo tee /etc/systemd/system/getty@tty1.service.d/autologin.conf -
@yossiz או לחלופין באמת להיכנס לbash כרוט על ידי sudo su.
תלוי באמת בסוג השימוש והצורך.
לפעמים אני צריך להיכנס למצב רוט כי אני צריך לבצע פעולות הדורשות את זה, ולהוסיף כל הזמן sudo זה לא כל כך נוח ולא נכון. בעיקר אם אתה יודע בדיוק מה אתה עושה.