linux自启动脚本及其记录,说说Linux自启动脚本

前言

由于自己的linux系统安装在U盘上面,所以每次启动linux时间都是错的,对于强迫症患者来说,肯定是不能忍受的,每一次都要百度当前时间,然后用date -s命令设置时间,这种做法无疑是很不程序员的做法,所以就想着写一个脚本用来自动同步设置时间,其中遇到了很多坑,所以这里记录下来顺便分享给大家。

时间同步脚本

首先贴出时间同步的time.sh脚本,很简单的一个shell脚本。首先通过对时接口获取到时间保存在本地,然后使用date -s "@timestamp",使用时间戳去设置时间即可。接下来就是配置开机运行这个脚本即可。

#时间服务器地址

time_server="http://api.k780.com:88/?app=life.time&appkey=10003&sign=b59bc3ef6191eb9f747dd4e83c99f2a4&format=json"

#临时文件位置

time_temp_file="/temp.time"

#下载时间到本地

wget -q -O ${time_temp_file} ${time_server}

#读取下载的时间

timestamp=$(cat ${time_temp_file} | cut -d \" -f 10 )

date -s "@${timestamp}"

#删除临时文件

rm ${time_temp_file}

用户登录时执行同步脚本

在上一篇博客Linux下环境变量的那些事中我介绍了下几个设置环境变量的位置,分别如下:

位置

针对用户

执行时机

/etc/profile

任何用户

任何用户登录的时候

~/.bash_profile 或 ~/.profile

单个用户

当用户登录时该文件仅执行一次

~/.bashrc

单个用户

当用户登录以及每次打开新的 shell 时

通过分析我们可以知道,将这个脚本的执行放在~/.profile中即可,这样当我从u盘启动登录的时候就会同步一次时间。注意:如果脚本很耗时,那么会导致用户登录以后进入系统很慢!!!

将脚本加入开机启动项

首先对于开机启动脚本的位置都放置在/etc/init.d/下面,我们可以参考该目录下的README文件进行书写,README下载 其实大致也就是如下几点

1、文件头第一句必须为#!/bin/sh

3、使用update-rc.d命令来将脚本加入到/etc/rc?.d(?一般为0-6的数字)

其中etc/rc?.d分别代表系统不同的运行等级,关于系统运行等级输入runlevel命令即可

>>runlevel

N 2

然后在相应的目录(/etc/rc2.d/)下面创建一个软链接(ln -s)指向/etc/init.d/下的对应脚本即可,update-rc.d命令也只是创建软连接而已,具体的请查看博客:追梦的飞飞

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值