取决于你使用的是哪个Linux发行版,通常在/etc/rc.d /etc/init.d等目录下 Linux的账号验证程序是login,login会接收mingetty传来的用户名作为用户名参数。然后login会对用户名进行分析:如果用户名不是root,且存在/etc/nologin
文件,login将输出nologin文件的内容,然后退出。这通常用来系统维护时防止非root用户登录。只有/etc/securetty中登记了的
终端才允许root用户登录,如果不存在这个文件,则root可以在任何终端上登录。/etc/usertty文件用于对用户作出附加访问限制,如果不存在这个文件,则没有其他限制。在分析完用户名后,login将搜索/etc/passwd以及/etc/shadow来验证密码以及设置账户的其它信息,比如:主目录是什么、使用何种shell。如果没有指定主目录,将默认为根目录;如果没有指定shell,将默认为/bin/bash。login程序成功后,会向对应的终端在输出最近一次登录的信息(在/var/log/lastlog中有记录),并检查用户是否有新邮件(在/usr/spool/mail/的对应用户名目录下)。然后开始设置各种环境变量:对于bash来说,系统首先寻找/etc/profile
脚本文件,并执行它;然后如果用户的主目录中存在.bash_profile文件,就执行它,在这些文件中又可能调用了其它配置文件,所有的配置文件执行后后,各种环境变量也设好了,这时会出现大家熟悉的命令行提示符,到此整个启动过程就结束了。linux下运行bash脚本的方法如下:
1.
首先在桌面右键点击,选择在终端中打开,打开命令行;
2.
在命令行中输入
cd
脚本路径,进入脚本所在目录;
3.
使用chmod
+x
脚本名命令给文件添加可执行权限;
4.
使用sh
脚本名或者
./脚本名的方法来运行bash脚本。
在脚本nohup设置每天开始拷贝日志作为前一天的日志备份,然后把当前日志清空即可,代码如下:
crontab -e
//增加:
0 0 * * * cp /dirname/logfile.log /bakdir/logfile.`date -d yesterday +%Y%m%d`.log cat /dev/null > /dirname/logfile.log
//每周日凌晨1:00打包、删除文件:
0 1 * * 0 cd /bakdir find ./ +mtime 7 -exec tar cvf logfile.`date -d yesterday +%Y%U`.tar {} \ find ./ -mtime 91 -exec rm -f {} \
评论列表(0条)