תוויות

‏הצגת רשומות עם תוויות הרשאות מערכת. הצג את כל הרשומות
‏הצגת רשומות עם תוויות הרשאות מערכת. הצג את כל הרשומות

15 ביוני 2014

הויתור על BTRFS לעת עתה

במסגרת התקנה של Arch על אחד הניידים 
בחרתי את אחד המדריכים כדרך
זה: 
https://wiki.archlinux.org/index.php/Installation_guide

והתחלתי אותו:

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

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

הבחירה הייתה במערכת הקבצים btrfs 

עם שימוש בכלי cfdisk מחקתי את מחיצת החלונות והשארתי לעצמי כונן ללא מחיצות
ועכשיו היה עליי לשבור את הראש באיך אני רוצה שטבלת המחיצות שלי בכונן תיראה...

במחשבה משותפת מישהו התעקש שתהיה מחיצת SWAP למרות שחשבתי לוותר עליה ושהיא תהיה כפול מגודל הזיכרון בגודלה.

כמו כן חשבתי לשים את מחיצת הבית בנפרד מהמחיצה עם קבצי המערכת ושיהיה בה מקום לקבצי מדיה.
100G נתתי לראשית 390G לבית ו- G10 לסוופ.

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

המערכת נתקעה בשלב התקנת ה boot-loader כאשר בחרתי להתקין את grub ונתנה הודעות שגיאה משונות כמו 


# grub-install --target=i386-pc --recheck --debug /dev/sdx
# grub-mkconfig -o /boot/grub/grub.cfg

arch-chroot /dev/sda1 /bin/bash

grub-install --debug /dev/sda

warning: your core.img is unusually large.
it wont fit in the embedding area

error: file system btrfs doesnot support blocklists
 


* היו ניסיונו להתקין בצורות משונות את גראב שחלקן הצלחתי להתקין את גראב ולהגיע לגראב אבל 
גראב לא זיהה את מערכת הקבצים הזו.
 
* ניסיתי גם את המדריך הזה עם הגדרת מחיצות באופן שונה וזה כשל:
 http://blog.wculver.com/linux/how-to-arch-linux-install-with-btrfs-gpt/

כמה ניסיונות להתקין BTRFS נכשלו
הסיבה מצויינת במדריך הזה:
https://wiki.archlinux.org/index.php/Btrfs
Btrfs does not support swap files. This is due to swap files requiring a function that Btrfs doesn't have for possibility of corruptions.link A swap file can be mounted on a loop device with poorer performance but will not be able to hibernate. Multiple systemd services are available: systemd-loop-swapfile, systemd-swap.

GRUB

Partition offset

Note: The offset problem may happen when you try to embed core.img into a partitioned disk. It means that it's OK to embed grub's corg.img into a btrfs pool on a partitionless disk (e.g. /dev/sdx) directly.
GRUB can boot Btrfs partitions however the module may be larger than other file systems. And the core.img file made by grub-install may not fit in the first 63 sectors (31.5KiB) of the drive between the MBR and the first partition. Up-to-date partitioning tools such as fdisk and gdisk avoid this issue by offsetting the first partition by roughly 1MiB or 2MiB.

Missing root

Users experiencing the following: error no such device: root when booting from a RAID style setup then edit /usr/share/grub/grub-mkconfig_lib and remove both quotes from the line echo " search --no-floppy --fs-uuid --set=root ${hints} ${fs_uuid}". Regenerate the config for grub and the system should boot without an error.
מסתבר שהגדלתי את ה MBR כי זה לא ממש עזר.
גם יצירה של מחיצה נפרדת ל BOOT לא ממש עזר עם BTRFS
בנוסף גם משום שזו מערכת קבצים ג'ורנלינג אם ריסטתי בלי להתנתק מהמחיצה או שהייתה הפסקת חשמל מצריך ממני שחזור על ידי כלים חיצוניים...
גם אם זה אמור לעבוד מהר זה לא משהו... מבחינת יתרונות וחסרונות עדיין המערכת של רייזר4 שהיא גם ג'ורנלינג יותר טובה מבחינת יחס מהירות ויציבות עם הנטיה למהיר...
לצערי נאלצתי לוותר על btrfs לעת עתה ועד שהיא תתפתח קצת יותר ולא תמנע ממני שימוש במחיצות מסוג אחר באותו כונן רק כדי שזה יעבוד...

בסופו של דבר התקנתי את ארץ על מערכת קבצים יציבה ext3 מפאת חוסר זמן
אבל מכל הסיפור הזה מצאתי למי שירצה לשחק עם זה קישורים מעניינים כמו:

http://www.funtoo.org/BTRFS_Fun

ולמען הגילוי הנאות אני אגיד שלא הספקתי לבדוק את הקישור ב AUR שגורם לגראב לעבוד עם  BTRFS: למרות שהתכוונתי לעשות את זה לא הספקתי כי הנייד צריך להיות מוכן לעבודה בהקדם

https://aur.archlinux.org/packages/grub-btrfs

ENJOY







4 ביולי 2010

טוב מה נסגר עם SUDI GUI


בסוף החלטתי לעשות איזה פרוייקטון קטן כזה של יצירת GUI ל sudo. אף על פי שיש כאלה שחושבים שצריך ויש כאלה שחושבים שלא... בא לי לעשות את זה.

שיתפתי את חבר שלי והוא יהיה איתי בלעשות את זה. ביום שישי ניסינו לעצב את הממשק משתמש של איך זה יראה באיזה שפות נכתוב את זה וכו'...

חבר שלי חשב שזה יראה משהו כמו חלון כזה שרואים את התוכן של מה שכתוב ב /etc/sudoers אבל אז חשבתי שזה לא רעיון טוב משום שאין כל כך הבדל בין זה לבין לערוך את הקובץ דרך הטרמינל ואז אפשר במילה לשנות מה שצריך ובאמת בישביל דבר כזה לא ממש צריך GUI כי כל אחד שמכיר את התחביר של הקובץ שמבוסס על EBNF שזה איזה שהוא תחביר שמבוסס על שפה ADA יכול לערוך את הקובץ והוא לא צריך בכלל בישביל זה GUI ואז יוצא שזה בעצם לא תורם בכלום.

אז לקחתי נייר ועט והתחלתי לעצב ממשק שימוש ואיך זה אמור להיראות...

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

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

כמובן שזה ניתן להגבלה רק ברמה של תהליכים שמותרים להרצה רק למשתמש על אז הנחתי שהרשימה של ה DENY היא חסרת כל תועלת במקרה הספציפי הזה ולכן זה לא יכלל ב GUI.

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

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

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

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

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

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

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

טוב המשך יבוא...


30 ביוני 2010

סודו בכללי

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

יש שני סוגי הגדרות: הגדרת אליאסים והגדרה למשתמשים.

4 סוגי אליאסים::=משתמש, רונס, הוסט (שם המכונה), פקודה.

כל אחד מסוג האליאסים האלה יכול לקבל שם ולהכיל רשימה על פי מאפיין האליאס:

התחביר להגדרת אליאס הוא:
Alias_Type NAME = item1, item2, item3 ...

Alias_Type NAME1 = a, b, c : NAME2 = x, y

התחביר להגדרה עבור משתמשים:
username machine(ex: localhost) = pathToCmnd

ניתן להוסיף לפני רשימת הפקודות למשתמש מאפייני תגים מיוחדים למשל:
PASSWD or NOPASSWD לחובת שימוש בסיסמא או אפשרות להריץ ללא סיסמא
EXEC or NOEXEC אפשרות להריץ משהו או שלא לאפשר להריץ בכלל
SETENV or NOSETENV אפשרות להריץ באותה סביבה או בסביבה של משתמש אחר.

ניתן להשתמש במילה ALL בכל אחד מהחלקים בתחביר למשל כדי לאפשר את זה לכל המשתמשים או בכל ההוסטים או לאפשר את כל הפקודות האפשריות למשל:

ALL ALL=ALL

דוגמא לשימוש

myusername localhost = NOPASSWD: /bin/ls

זה מאפשר להריץ צפיה בקבצים כמשתמש על ללא סיסמא עבור משתמש בשם myusername במחשב עם הוסט בשם localhost.

אפשר גם לאפשר את זה לכל המשתמשים במחשב למשל אם משנים את myusername ל ALL

ואפשר לאפשר למשתמש להריץ כל פקודה ללא סיסמא אם משנים את /bin/ls ל ALL.

ניתן גם להגדיר את הפקודה באליאס מסוג פקודה למשל

Alias_Cmnd LSALIAS = /bin/ls

ואז לתת למשתמש עם שימוש באליאס

myusername localhost = NOPASSWD: LSALIAS

זה בכללי

נ"ב
פרטים חשובים ששכחתי לציין

בתחביר של המשתמש יכולים לבוא במקום שמות בדדים גם רשימה של משתמשים ורשימה של הוסטים ורשימה של פקודות.

באליאסים זה נראה לי קייס סנסטיב ואלה שמות סוגי האליאסים: User_Alias, Runas_Alias, Host_Alias, Cmnd_Alias.

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

רונס אליאס הוא כמו יוזר אליאס רק שאפשר להכניס בו גם UID בנוסף לשם והוא טוב למקרים שיש שני משתמשים עם אותו שם במחשב אבל עם UID שונה.

זהו

קישור למדריך טוב של אבונטו https://help.ubuntu.com/community/Sudoers


___________________________
בחיפוש אחרי איזה GUI לסודו מצאתי איזה פרוייקט ביפנית בסורספורג'
http://en.sourceforge.jp/projects/sfnet_sudoersgui/

ואיזה דיון על זה שזה לא נחוץ לדעת מישהו כי לדעתו זה "לא בעיה" אז ...
http://brainstorm.ubuntu.com/idea/3193

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

עכשיו בא לי לפתח את זה קצת ...

שוב מתחיל התסכול של העיצוב.... איפוא פינקית כשצריך אותה?

to be continue...