OnWorks Linux ແລະ Windows Online WorkStations

Logo

ໂຮດຕິ້ງອອນໄລນ໌ຟຣີສໍາລັບ WorkStations

<Previous | ເນື້ອໃນ | ຕໍ່ໄປ>

ເມື່ອ​ລະ​ຫັດ​ເຂົ້າ​ສູ່​ລະ​ບົບ​ອອກ​, bash ອ່ານແລະປະຕິບັດຄໍາສັ່ງຈາກໄຟລ໌ ~/.bash_logout, ຖ້າມັນມີຢູ່. ຂັ້ນຕອນນີ້ແມ່ນໄດ້ອະທິບາຍຢ່າງລະອຽດຢູ່ໃນ ເຂົ້າ​ສູ່​ລະ​ບົບ ແລະ bash ຫນ້າຜູ້ຊາຍ.

7.2.3. ຊຸດໄຟລ໌ຕັ້ງຄ່າປົກກະຕິ


7.2.3.1. /etc/profile ຕົວຢ່າງ


ໃຫ້ເບິ່ງບາງໄຟລ໌ config ເຫຼົ່ານີ້. ທໍາອິດ / etc / profile ແມ່ນອ່ານ, ໃນຕົວແປທີ່ສໍາຄັນເຊັ່ນ:

PATH, USER ແລະ HOSTNAME ຖືກຕັ້ງ:


debby:~> cat /etc/profile

# /etc/profile


# ສະພາບແວດລ້ອມກ້ວາງຂອງລະບົບແລະໂຄງການເລີ່ມຕົ້ນ, ສໍາລັບການຕິດຕັ້ງເຂົ້າສູ່ລະບົບ

# ຟັງຊັນແລະນາມແຝງເຂົ້າໄປໃນ /etc/bashrc


# ການຫມູນໃຊ້ເສັ້ນທາງ

ຖ້າ [ `id -u` = 0 ] && ! ສະທ້ອນ $PATH | /bin/grep -q "/sbin" ; ຈາກນັ້ນ PATH=/sbin:$PATH

fi


ຖ້າ [ `id -u` = 0 ] && ! ສະທ້ອນ $PATH | /bin/grep -q "/usr/sbin" ; ຈາກນັ້ນ PATH=/usr/sbin:$PATH

fi


ຖ້າ [ `id -u` = 0 ] && ! ສະທ້ອນ $PATH | /bin/grep -q "/usr/local/sbin" ຈາກນັ້ນ

PATH=/usr/local/sbin:$PATH

fi


ຖ້າ ! ສະທ້ອນ $PATH | /bin/grep -q "/usr/X11R6/bin" ; ຈາກນັ້ນ PATH="$PATH:/usr/X11R6/bin"

fi

debby:~> cat /etc/profile

# /etc/profile


# ສະພາບແວດລ້ອມກ້ວາງຂອງລະບົບແລະໂຄງການເລີ່ມຕົ້ນ, ສໍາລັບການຕິດຕັ້ງເຂົ້າສູ່ລະບົບ

# ຟັງຊັນແລະນາມແຝງເຂົ້າໄປໃນ /etc/bashrc


# ການຫມູນໃຊ້ເສັ້ນທາງ

ຖ້າ [ `id -u` = 0 ] && ! ສະທ້ອນ $PATH | /bin/grep -q "/sbin" ; ຈາກນັ້ນ PATH=/sbin:$PATH

fi


ຖ້າ [ `id -u` = 0 ] && ! ສະທ້ອນ $PATH | /bin/grep -q "/usr/sbin" ; ຈາກນັ້ນ PATH=/usr/sbin:$PATH

fi


ຖ້າ [ `id -u` = 0 ] && ! ສະທ້ອນ $PATH | /bin/grep -q "/usr/local/sbin" ຈາກນັ້ນ

PATH=/usr/local/sbin:$PATH

fi


ຖ້າ ! ສະທ້ອນ $PATH | /bin/grep -q "/usr/X11R6/bin" ; ຈາກນັ້ນ PATH="$PATH:/usr/X11R6/bin"

fi

ສາຍເຫຼົ່ານີ້ກວດເບິ່ງເສັ້ນທາງທີ່ຈະກໍານົດ: ຖ້າ ຮາກ ເປີດ shell (ID ຜູ້ໃຊ້ 0), ມັນຖືກກວດເບິ່ງວ່າ / sbin, / usr / sbin ແລະ

/usr/local/sbin ຢູ່ໃນເສັ້ນທາງ. ຖ້າບໍ່, ພວກເຂົາຖືກເພີ່ມ. ມັນໄດ້ຖືກກວດສອບສໍາລັບທຸກຄົນວ່າ

/usr/X11R6/bin ຢູ່ໃນເສັ້ນທາງ.


# ບໍ່ມີໄຟລ໌ຫຼັກຕາມຄ່າເລີ່ມຕົ້ນ ulimit -S -c 0 > /dev/null 2>&1

# ບໍ່ມີໄຟລ໌ຫຼັກຕາມຄ່າເລີ່ມຕົ້ນ ulimit -S -c 0 > /dev/null 2>&1

ຂີ້ເຫຍື້ອທັງຫມົດໄປ / dev / null ຖ້າຜູ້ໃຊ້ບໍ່ປ່ຽນການຕັ້ງຄ່ານີ້.


USER=`id -un` LOGNAME=$USER

MAIL="/var/spool/mail/$USER"


HOSTNAME=`/bin/hostname` HISTSIZE=1000

USER=`id -un` LOGNAME=$USER

MAIL="/var/spool/mail/$USER"


HOSTNAME=`/bin/hostname` HISTSIZE=1000

ໃນທີ່ນີ້ຕົວແປທົ່ວໄປຖືກມອບຫມາຍຄ່າທີ່ເຫມາະສົມຂອງພວກເຂົາ.


ຖ້າ [ -z "$INPUTRC" -a ! -f "$HOME/.inputrc" ]; ຈາກນັ້ນ INPUTRC=/etc/inputrc

fi

ຖ້າ [ -z "$INPUTRC" -a ! -f "$HOME/.inputrc" ]; ຈາກນັ້ນ INPUTRC=/etc/inputrc

fi

ຖ້າຕົວແປ INPUTRC ບໍ່ໄດ້ຕັ້ງ, ແລະບໍ່ມີ .inputrc ໃນໄດເລກະທໍລີເຮືອນຂອງຜູ້ໃຊ້, ຫຼັງຈາກນັ້ນໄຟລ໌ຄວບຄຸມການປ້ອນຂໍ້ມູນເລີ່ມຕົ້ນຖືກໂຫລດ.


ຮູບພາບເລັກນ້ອຍ


ການສົ່ງອອກ PATH ຜູ້ໃຊ້ LOGNAME MAIL ຊື່ເຈົ້າພາບ ປະຫວັດສາດ INPUTRC

ຕົວແປທັງຫມົດຖືກສົ່ງອອກ, ດັ່ງນັ້ນພວກມັນມີຢູ່ໃນໂຄງການອື່ນໆທີ່ຮ້ອງຂໍຂໍ້ມູນກ່ຽວກັບສະພາບແວດລ້ອມຂອງທ່ານ.


ຮູບພາບເລັກນ້ອຍ

7.2.3.2. ໄດເລກະທໍລີ profile.d


ສໍາລັບຂ້ອຍໃນ /etc/profile.d/*.sh ; do if [ -r $i ]; ແລ້ວ

. $i

fi ສໍາເລັດ unset i

ສໍາລັບຂ້ອຍໃນ /etc/profile.d/*.sh ; do if [ -r $i ]; ແລ້ວ

. $i

fi ສໍາເລັດ unset i

ສະຄຣິບແກະທັງໝົດທີ່ສາມາດອ່ານໄດ້ຈາກ /etc/profile.d ໄດເລກະທໍລີຖືກອ່ານແລະປະຕິບັດ. ສິ່ງເຫຼົ່ານີ້ເຮັດສິ່ງຕ່າງໆເຊັ່ນການເປີດໃຊ້ງານ ສີ-ls, ນາມແຝງ vi to vim, ການຕັ້ງຄ່າທ້ອງຖິ່ນແລະອື່ນໆ. ຕົວແປຊົ່ວຄາວ i ບໍ່ໄດ້ຕັ້ງຄ່າເພື່ອປ້ອງກັນບໍ່ໃຫ້ມັນລົບກວນພຶດຕິກໍາຂອງແກະໃນພາຍຫຼັງ.


ຮູບພາບເລັກນ້ອຍ

7.2.3.3. ຕົວຢ່າງ .bash_profile


ຫຼັງຈາກນັ້ນ, bash ຊອກຫາ a .bash_ ໂປຣໄຟລ ໃນ​ບັນ​ຊີ​ລາຍ​ຊື່​ຂອງ​ຜູ້​ໃຊ້​:


ຮູບພາບເລັກນ້ອຍ

debby:~> cat .bash_profile

# ######## ######## ######## # ເລົ່າສູ່ກັນຟັງ

# #

# ໄຟລ໌ .bash_profile #

# #

# ຖືກປະຕິບັດຈາກແກະ bash ເມື່ອທ່ານເຂົ້າສູ່ລະບົບ.

# #

# ######## ######## ######## # ເລົ່າສູ່ກັນຟັງ


ແຫຼ່ງ ~/.bashrc ແຫຼ່ງ ~/.bash_login

ໄຟລ໌ທີ່ກົງໄປກົງມານີ້ສັ່ງໃຫ້ແກະຂອງເຈົ້າອ່ານກ່ອນ ~ / bashrc ແລະຫຼັງຈາກນັ້ນ ~/.bash_login. ທ່ານຈະໄດ້ພົບກັບ ແຫຼ່ງ ຄໍາສັ່ງ shell ທີ່ມີການກໍ່ສ້າງເປັນປົກກະຕິໃນເວລາທີ່ເຮັດວຽກຢູ່ໃນສະພາບແວດລ້ອມຂອງແກະ: ມັນຖືກນໍາໃຊ້ເພື່ອນໍາໃຊ້ການປ່ຽນແປງການຕັ້ງຄ່າກັບສະພາບແວດລ້ອມໃນປະຈຸບັນ.


ຮູບພາບເລັກນ້ອຍ

7.2.3.4. ຕົວຢ່າງ .bash_login


ໄດ້ ~/.bash_login ໄຟລ໌ກໍານົດການປົກປ້ອງໄຟລ໌ເລີ່ມຕົ້ນໂດຍການຕັ້ງຄ່າ ໜ້າ ກາກ ຄ່າ, ເບິ່ງພາກ 3.4.2.2. ໄດ້ ~ / bashrc ໄຟລ໌ຖືກນໍາໃຊ້ເພື່ອກໍານົດຊໍ່ຂອງນາມແຝງແລະຫນ້າທີ່ສະເພາະຂອງຜູ້ໃຊ້ແລະຕົວແປສະພາບແວດລ້ອມສ່ວນບຸກຄົນ. ມັນທໍາອິດອ່ານ /etc/bashrc, ເຊິ່ງອະທິບາຍການກະຕຸ້ນເຕືອນເລີ່ມຕົ້ນ (PS1) ແລະຄ່າ umask ເລີ່ມຕົ້ນ. ຫຼັງຈາກນັ້ນ, ທ່ານສາມາດເພີ່ມການຕັ້ງຄ່າຂອງທ່ານເອງ. ຖ້າບໍ່ມີ ~ / bashrc ມີຢູ່, /etc/bashrc ຖືກອ່ານໂດຍຄ່າເລີ່ມຕົ້ນ.


ຮູບພາບເລັກນ້ອຍ

7.2.3.5. /etc/bashrc ຕົວຢ່າງ


ຂອງທ່ານ /etc/bashrc ໄຟລ໌ອາດຈະມີລັກສະນະນີ້:


debby:~> cat /etc/bashrc

# /etc/bashrc


# ລະບົບຟັງຊັນກວ້າງແລະນາມແຝງ

# ສິ່ງແວດລອ້ມໄປໃນ /etc/profile


# ໂດຍຄ່າເລີ່ມຕົ້ນ, ພວກເຮົາຕ້ອງການການຕັ້ງຄ່ານີ້.

debby:~> cat /etc/bashrc

# /etc/bashrc


# ລະບົບຟັງຊັນກວ້າງແລະນາມແຝງ

# ສິ່ງແວດລອ້ມໄປໃນ /etc/profile


# ໂດຍຄ່າເລີ່ມຕົ້ນ, ພວກເຮົາຕ້ອງການການຕັ້ງຄ່ານີ້.


# ເຖິງແມ່ນວ່າສໍາລັບການທີ່ບໍ່ມີການໂຕ້ຕອບ, ບໍ່ເຂົ້າສູ່ລະບົບ shells.

ຖ້າ [ `id -gn` = `id -un` -a `id -u` -gt 99 ]; ຫຼັງຈາກນັ້ນ, umask 002

ອື່ນ

umask 022

fi

# ເຖິງແມ່ນວ່າສໍາລັບການທີ່ບໍ່ມີການໂຕ້ຕອບ, ບໍ່ເຂົ້າສູ່ລະບົບ shells.

ຖ້າ [ `id -gn` = `id -un` -a `id -u` -gt 99 ]; ຫຼັງຈາກນັ້ນ, umask 002

ອື່ນ

umask 022

fi

ສາຍເຫຼົ່ານີ້ກໍານົດ ໜ້າ ກາກ ຄ່າ. ຫຼັງຈາກນັ້ນ, ອີງຕາມປະເພດຂອງແກະ, ການເຕືອນແມ່ນຖືກກໍານົດ:


# ພວກເຮົາເປັນແກະໂຕ້ຕອບບໍ? ຖ້າ [ "$PS1" ]; ແລ້ວ

ຖ້າ [ -x /usr/bin/tput ]; ແລ້ວ

ຖ້າ [ "x`tput kbs`" != "x" ]; ແລ້ວ

# ພວກເຮົາບໍ່ສາມາດເຮັດສິ່ງນີ້ໄດ້ດ້ວຍ "dumb" terminal stty erase `tput kbs`

elif [ -x /usr/bin/wc ]; ແລ້ວ

ຖ້າ [ "`tput kbs|wc -c `" -gt 0 ]; ແລ້ວ

# ພວກເຮົາບໍ່ສາມາດເຮັດສິ່ງນີ້ໄດ້ດ້ວຍ "dumb" terminal stty erase `tput kbs`

fi fi

fi

ກໍລະນີ $TERM ໃນ

xterm*)

ຖ້າ [ -e /etc/sysconfig/bash-prompt-xterm ]; ຈາກນັ້ນ PROMPT_COMMAND=/etc/sysconfig/bash-prompt-xterm

ອື່ນ

PROMPT_COMMAND='echo -ne "\033]0;${USER}@${HOSTNAME%%.*}:\

${PWD/$HOME/~}\007"'

fi

;;

*)

[ -e /etc/sysconfig/bash-prompt-default ] && PROMPT_COMMAND=\

/etc/sysconfig/bash-prompt-default

;;

ວ່າ C

[ "$PS1" = "\\s-\\v\\\$" ] && PS1="[\u@\h \W]\\$"


ຖ້າ [ "x$SHLVL" != "x1" ]; ແລ້ວ # ພວກເຮົາບໍ່ແມ່ນ login shell ສໍາລັບ i ໃນ /etc/profile.d/*.sh; ເຮັດ

ຖ້າ [ -x $i ]; ແລ້ວ

. $i

fi

ເຮັດ

fi

fi

# ພວກເຮົາເປັນແກະໂຕ້ຕອບບໍ? ຖ້າ [ "$PS1" ]; ແລ້ວ

ຖ້າ [ -x /usr/bin/tput ]; ແລ້ວ

ຖ້າ [ "x`tput kbs`" != "x" ]; ແລ້ວ

# ພວກເຮົາບໍ່ສາມາດເຮັດສິ່ງນີ້ໄດ້ດ້ວຍ "dumb" terminal stty erase `tput kbs`

elif [ -x /usr/bin/wc ]; ແລ້ວ

ຖ້າ [ "`tput kbs|wc -c `" -gt 0 ]; ແລ້ວ

# ພວກເຮົາບໍ່ສາມາດເຮັດສິ່ງນີ້ໄດ້ດ້ວຍ "dumb" terminal stty erase `tput kbs`

fi fi

fi

ກໍລະນີ $TERM ໃນ

xterm*)

ຖ້າ [ -e /etc/sysconfig/bash-prompt-xterm ]; ຈາກນັ້ນ PROMPT_COMMAND=/etc/sysconfig/bash-prompt-xterm

ອື່ນ

PROMPT_COMMAND='echo -ne "\033]0;${USER}@${HOSTNAME%%.*}:\

${PWD/$HOME/~}\007"'

fi

;;

*)

[ -e /etc/sysconfig/bash-prompt-default ] && PROMPT_COMMAND=\

/etc/sysconfig/bash-prompt-default

;;

ວ່າ C

[ "$PS1" = "\\s-\\v\\\$" ] && PS1="[\u@\h \W]\\$"


ຖ້າ [ "x$SHLVL" != "x1" ]; ແລ້ວ # ພວກເຮົາບໍ່ແມ່ນ login shell ສໍາລັບ i ໃນ /etc/profile.d/*.sh; ເຮັດ

ຖ້າ [ -x $i ]; ແລ້ວ

. $i

fi

ເຮັດ

fi

fi


ຮູບພາບເລັກນ້ອຍ


7.2.3.6. ຕົວຢ່າງ .bash_logout


ເມື່ອອອກຈາກລະບົບ, ຄໍາສັ່ງໃນ ~/.bash_logout ໄດ້ຖືກປະຕິບັດ, ເຊິ່ງສາມາດສໍາລັບການຍົກຕົວຢ່າງລ້າງ terminal, ດັ່ງນັ້ນທ່ານມີປ່ອງຢ້ຽມທີ່ສະອາດເມື່ອອອກຈາກເຊດຊັນຫ່າງໄກສອກຫຼີກ, ຫຼືເມື່ອອອກຈາກ console ລະບົບ:


debby:~> cat .bash_logout

# ~/.bash_logout


ແຈ້ງ

debby:~> cat .bash_logout

# ~/.bash_logout


ແຈ້ງ

ລອງພິຈາລະນາເບິ່ງວ່າສະຄຣິບເຫຼົ່ານີ້ເຮັດວຽກແນວໃດໃນພາກຕໍ່ໄປ. ຮັກສາ ຂໍ້ມູນ bash ໃກ້ກັບມື.


ຮູບພາບເລັກນ້ອຍ


OS Cloud Computing ຍອດນິຍົມຢູ່ OnWorks: