الفرق بين المراجعتين ل"Bash/shell initialization files"

من موسوعة حسوب
اذهب إلى التنقل اذهب إلى البحث
(أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE:ملفات تهيئة الصدفة}}</noinclude>')
 
(إضافة أولية للمحتوى دون تنسيق)
سطر 1: سطر 1:
 
<noinclude>{{DISPLAYTITLE:ملفات تهيئة الصدفة}}</noinclude>
 
<noinclude>{{DISPLAYTITLE:ملفات تهيئة الصدفة}}</noinclude>
 +
 +
== ملفات الإعدادات على مستوى النظام System-wide Configuration files ==
 +
 +
=== etc/profile/ ===
 +
تقرأ Bash التعليمات الموجودة في etc/profile/ إن استدعيْت بشكل تفاعلي عبر خيار login-- أو إن استدعيْت كـ sh ، تضبط تلك التعليمات عادة متغيرات PATH - USER - MAIL - HOSTNAME - HISTSIZE ، وهي متغيرات تابعة للصدفة.
 +
 +
كذلك تُضبط قيمة unmask في etc/profile/ على بعض الأنظمة، أما في بعضها الآخر فإن هذا الملف يحتوي على موجّهات (pointers) لملفات الإعدادات الأخرى مثل:
 +
* ملف etc/inputrc/ ، وهو ملف تهيئة على مستوى النظام لأمر readline، حيث يمكنك تهيئة أسلوب الجرس (bell style) لسطر الأوامر.
 +
* مجلد etc/profile.d/ ، وهو يحتوي الملفات التي تضبط سلوك برامج محددة على مستوى النظام.
 +
يجب أن تكون كل الإعدادات التي تريد تطبيقها على جميع المستخدمين في النظام لديك موجودة في ذلك الملف -etc/profile/-، وقد يكون شكله مشابهًا لما يلي:<syntaxhighlight lang="bash">
 +
# /etc/profile
 +
 +
# System wide environment and startup programs, for login setup
 +
 +
PATH=$PATH:/usr/X11R6/bin
 +
 +
# No core files by default
 +
ulimit -S -c 0 > /dev/null 2>&1
 +
 +
USER="`id -un`"
 +
LOGNAME=$USER
 +
MAIL="/var/spool/mail/$USER"
 +
 +
HOSTNAME=`/bin/hostname`
 +
HISTSIZE=1000
 +
 +
# Keyboard, bell, display style: the readline config file:
 +
if [ -z "$INPUTRC" -a ! -f "$HOME/.inputrc" ]; then
 +
    INPUTRC=/etc/inputrc
 +
fi
 +
 +
PS1="\u@\h \W"
 +
 +
export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE INPUTRC PS1
 +
 +
# Source initialization files for specific programs (ls, vim, less, ...)
 +
for i in /etc/profile.d/*.sh ; do
 +
    if [ -r "$i" ]; then
 +
        . $i
 +
    fi
 +
done
 +
 +
# Settings for program initialization
 +
source /etc/java.conf
 +
export NPX_PLUGIN_PATH="$JRE_HOME/plugin/ns4plugin/:/usr/lib/netscape/plugins"
 +
 +
PAGER="/usr/bin/less"
 +
 +
unset i
 +
</syntaxhighlight>ويضبط ملف التهيئة ذاك بعض متغيرات الصدفة الأساسية إضافة إلى بعض المتغيرات التي يطلبها أي مستخدم يشغّل جافا أو أي تطبيقات جافا في متصفحه. انظر [[Bash/variables|المتغيرات في Bash]].
 +
 +
<span> </span>

مراجعة 07:20، 1 أغسطس 2018


ملفات الإعدادات على مستوى النظام System-wide Configuration files

etc/profile/

تقرأ Bash التعليمات الموجودة في etc/profile/ إن استدعيْت بشكل تفاعلي عبر خيار login-- أو إن استدعيْت كـ sh ، تضبط تلك التعليمات عادة متغيرات PATH - USER - MAIL - HOSTNAME - HISTSIZE ، وهي متغيرات تابعة للصدفة.

كذلك تُضبط قيمة unmask في etc/profile/ على بعض الأنظمة، أما في بعضها الآخر فإن هذا الملف يحتوي على موجّهات (pointers) لملفات الإعدادات الأخرى مثل:

  • ملف etc/inputrc/ ، وهو ملف تهيئة على مستوى النظام لأمر readline، حيث يمكنك تهيئة أسلوب الجرس (bell style) لسطر الأوامر.
  • مجلد etc/profile.d/ ، وهو يحتوي الملفات التي تضبط سلوك برامج محددة على مستوى النظام.

يجب أن تكون كل الإعدادات التي تريد تطبيقها على جميع المستخدمين في النظام لديك موجودة في ذلك الملف -etc/profile/-، وقد يكون شكله مشابهًا لما يلي:

# /etc/profile

# System wide environment and startup programs, for login setup

PATH=$PATH:/usr/X11R6/bin

# No core files by default
ulimit -S -c 0 > /dev/null 2>&1

USER="`id -un`"
LOGNAME=$USER
MAIL="/var/spool/mail/$USER"

HOSTNAME=`/bin/hostname`
HISTSIZE=1000

# Keyboard, bell, display style: the readline config file:
if [ -z "$INPUTRC" -a ! -f "$HOME/.inputrc" ]; then
    INPUTRC=/etc/inputrc
fi

PS1="\u@\h \W"

export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE INPUTRC PS1

# Source initialization files for specific programs (ls, vim, less, ...)
for i in /etc/profile.d/*.sh ; do
    if [ -r "$i" ]; then
        . $i
    fi
done

# Settings for program initialization
source /etc/java.conf
export NPX_PLUGIN_PATH="$JRE_HOME/plugin/ns4plugin/:/usr/lib/netscape/plugins"

PAGER="/usr/bin/less"

unset i

ويضبط ملف التهيئة ذاك بعض متغيرات الصدفة الأساسية إضافة إلى بعض المتغيرات التي يطلبها أي مستخدم يشغّل جافا أو أي تطبيقات جافا في متصفحه. انظر المتغيرات في Bash.