Linux /etc目录详解

Linux /etc目录详解
 
/etc目录
  包含很多文件.许多网络配置文件也在/etc 中.
 
/etc/rc   or/etc/rc.d   or/etc/rc*.d  
  启动、或改变运行级时运行的scripts或scripts的目录.
 
/etc/passwd  
  用户数据库,其中的域给出了用户名、真实姓名、家目录、加密的口令和用户的其他信息.
 
/etc/fdprm  
  软盘参数表.说明不同的软盘格式.用setfdprm 设置.
 
/etc/fstab  
  启动时mount -a命令(在/etc/rc 或等效的启动文件中)自动mount的文件系统列表.Linux下,也包括用swapon -a启用的swap区的信息.
 
/etc/group  
  类似/etc/passwd ,但说明的不是用户而是组.
 
/etc/inittab  
  init 的配置文件.
 
/etc/issue  
  getty在登录提示符前的输出信息.通常包括系统的一段短说明或欢迎信息.内容由系统管理员确定.
 
/etc/magic  
  file 的配置文件.包含不同文件格式的说明,file 基于它猜测文件类型.
 
/etc/motd  
  Message Of TheDay,成功登录后自动输出.内容由系统管理员确定.经常用于通告信息,如计划关机时间的警告.
 
/etc/mtab  
  当前安装的文件系统列表.由scripts初始化,并由mount 命令自动更新.需要一个当前安装的文件系统的列表时使用,例如df命令.
 
/etc/shadow  
  在安装了影子口令软件的系统上的影子口令文件.影子口令文件将/etc/passwd 文件中的加密口令移动到/etc/shadow中,而后者只对root可读.这使破译口令更困难.
 
/etc/login.defs  
  login 命令的配置文件.
 
/etc/printcap  
  类似/etc/termcap ,但针对打印机.语法不同.
 
/etc/profile , /etc/csh.login ,/etc/csh.cshrc  
  登录或启动时Bourne或Cshells执行的文件.这允许系统管理员为所有用户建立全局缺省环境.
 
/etc/securetty  
  确认安全终端,即哪个终端允许root登录.一般只列出虚拟控制台,这样就不可能(至少很困难)通过modem或网络闯入系统并得到超级用户特权.
 
/etc/shells  
  列出可信任的shell.chsh 命令允许用户在本文件指定范围内改变登录shell.提供一台机器FTP服务的服务进程ftpd检查用户shell是否列在 /etc/shells 文件中,如果不是将不允许该用户登录.
 
/etc/termcap
  终端性能数据库.说明不同的终端用什么"转义序列"控制.写程序时不直接输出转义序列(这样只能工作于特定品牌的终端),而是从/etc/termcap中查找要做的工作的正确序列.这样,多数的程序可以在多数终端上运行.
 
1. aliases
这个档案主要是告诉 sendmail 要将信转寄给哪些使用者, 或是交由哪个程式处理.
如. root: user1,name2,user3
usenet: "|/usr/local/bin/mail-post.pl"
 
如上范例, sendmail 会将原先寄给的 root 的信分送给 user1 和 name2 和 user3, 而把寄给 usenet 的信交由 mail-post.pl 处理.
 
在你修改完之後, 要记得执行 "newaliases" 来更新 /etc/aliases.db
关於 aliases 之详细说明, 请 man aliases 查询.
 
2. crontab
这是给 root 用的 crontab file, 你也可以杀掉这个档案以 "crontab -e" 来替代.
格式如下...
 
#分 小时 天 月 礼拜几 用谁的身份 命令
*/5 * * * * root /usr/libexec/atrun
 
minute: 分钟/小时, 范围自 0 至 59
hour: 小时/天, 范围自 0 至 23
mday: 天/月, 范围自 0 至 31
month: 月/年, 范围自 0 至 12
wday: 天/周, 范围自 0 至 7 (0, 7 表示星期天)
who: 表是以谁的身份执行这个 command
(这只对 /etc/crontab 有用, crontab -e 无此栏位)
command: 命令或是 shell script
 
*/N: 表示每 N 一算, 像小时而言, */3 指的是 0,3,6,9,12
 
请 man 5 crontab 去看详细说明.
 
3. csh.cshrc
 
# 系统内定给 csh shell 用的 .cshrc 档
 
## 确定 HOME 目录
setenv HOME $HOME
set home=$HOME
cd $HOME
 
## 档案权限设定
umask 022
 
## 就是 Aliases 嘛
alias pftp '/usr/local/bin/pftp'
alias free 'pstat -s|grep -v not'
alias talk ytalk
alias ruptime '/usr/bin/ruptime|grep -v down'
alias ftp ncftp
alias rwho '/usr/bin/rwho -a|grep -v LOGIN'
alias more less
alias zmore zless
alias m less
alias pss 'ps auxw|sort -k 2|grep $USER'
alias psm 'ps auxw|sort -k 1,2|more'
alias psl psm
alias psv 'ps auxw|grep -v $USER|sort -k 2|more'
alias d '/usr/local/bin/colorls -G -alFgk /!* | more'
alias dir '/usr/local/bin/colorls -G -alFgk /!*'
alias rd rmdir
alias md mkdir
alias cls clear
alias cd.. 'cd ..'
alias del '/bin/rm -i'
alias xdel '/bin/rm -rf'
alias mv 'mv -i'
alias dir/w '/bin/ls -aFgk'
alias dw '/bin/ls -aFgk'
#alias x '(startx &)>&/dev/console;sleep 300;lo'
#alias lpr 'lpr -m'
alias cp 'cp -i'
alias rm 'rm -i'
alias lo 'clear;exit'
alias bye 'clear;exit'
#alias vi cvi
alias unlo 'unset autologout;unsetenv autologout'
alias q joe
alias .. 'cd ..'
alias ... 'cd ../..'
#alias ku 'ku -W'
alias tin rtin
#alias s 'exec screen'
 
## 环境设定
set path = (/sbin /usr/sbin /bin /usr/bin /usr/local/sbin /usr/local/bin)
set path = ($path /etc /usr/etc /usr/local/etc)
set path = ($path /usr/X11R6/bin /usr/games)
set path = ($path ~ ~/bin .)
set mail = (10 /var/mail/$USER)
set recexact
set autolist
set matchbeep = ambiguous
set autoexpand
set autocorrect
set ignoreeof
set noclobber
set notify
set correct = all
if ( ! $?WINDOW ) then
# set prompt = "%B%m [%/] [%?] -%n- "
set prompt = "%B%m [%/] -%n- "
else
set prompt = "%B%m [%/] -%n- [W$WINDOW] "
endif
set prompt2 = "(%t %m)%~ #%% "
set prompt3 = "%SDo you mean [%R] (y/n/e) ? "
set history = 500
set savehist = 500
set time=100
#set watch=(1 any any)
set symlinks = ignore
set listlinks
set listjobs
set rmstar
set showdots

# 给 FSP Client 用
setenv FSP_PORT 21
setenv FSP_HOST nctuccca.edu.tw
setenv FSP_DIR /
setenv FSP_TRACE
setenv FSP_DELAY 3000

 
4. csh.login
 
# 系统内定的 .login 档.
 
#stty extb
stty 38400
#stty crt
#stty -tabs
stty -istrip
stty pass8
 
# Mesg y if not console
mesg y
if ( `tty | cut -c 6-` == console ) then
mesg n
endif
 
msgs -fp
 
5. csh.logout
 
# 系统内定的 .logout
clear
.
 
6. daily
 
cron 会 依照 /etc/crontab 去做每日例行的工作. 注意一下有些 commands 对你的硬盘造成很大的负荷, 像是最後一行 的 "sh /etc/security", 他会从你的根目录开始查询. 你可以加些每天你想要执行的commands, 像 是 "quotacheck -a", "bin/rm/-f /tmp*junk*.

猜你喜欢

转载自appleblue.iteye.com/blog/2102299