【linux之crontab,启动】
一、计划任务
atd
at命令发布的任务计划
一次性的任务计划
at time ctrl+d 提交
time:
1.绝对时间:12:00
2.相对时间:+8
3.模糊时间:noon midnight teatime
-l:查看任务列表 相当于atq
-d #:从任务列表中撤销一个任务计划 相当于atrm
-c #:显示任务中的命令列表
例:at 11:13
at> mkdir /a/b
at> <EOT> #ctrl+d
job 4 at 2015-11-21 11:13
若任务没有成功执行,会收到邮件,用mail命令读取
at "2:00 2015-12-01"
atrm 4 撤销4号任务
at -d 3 撤销3号任务
cat /etc/sysconfig/atd at的配置文件
date -s "2015-11-21 10:58:00"
可在.bashrc_profile写入hwclock -s
crond
crontab命令发布的任务计划
周期性任务计划
系统的周期性任务
/etc/crontab
cat /etc/crontab
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
HOME=/
# For details see man 4 crontabs # Example of job definition:
# .---------------- minute (0 - 59)
# | .------------- hour (0 - 23)
# | | .---------- day of month (1 - 31)
# | | | .------- month (1 - 12) OR jan,feb,mar,apr ...
# | | | | .---- day of week (0 - 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
# | | | | |
# * * * * * command to be executed
(*表示每一分钟)
用户个人的周期任务
crontab
-e:编辑计划任务 (默认打开vim)
-l:显示计划任务
-r:清除计划任务
* * * * * /bin/date +%F > /dev/pts/0
* * * * * echo "hello root" /dev/pts/0 #默认每分钟执行一次
0 2 10 * * 每月十号两点整。修改了时间,周期向上移动一位。确定数字越多,周期越长
0-10 2 * * * 每天两点整到两点10分,一共执行11次
0-10/2 2 * * * 每天两点整到两点10分,每两分钟执行一次,也就是隔一分钟执行一次。0分执行,2分执行...
二、启动
linux系统的启动
POST-->BIOS-->bootloader-->kernel-->initramfs-->ROOTES-->/sbin/init
POST加电自检
主板上存储着一段BIOS程序,规定了硬件设备的启动顺序列表,Bootsequence
启动顺序设置为硬盘优先启动,为bios设置密码
harddisk
CDROM
removable
network
floppy
MBR
Bootloader引导启动程序,加载kernel
init运行级别
0:关闭系统(不能设置为默认运行级别)
1:单用户模式 1 S s
2:多用户模式,但不支持网络文件系统
3:完全的多用户模式
4:未被使用的、
5:图形界面
6:重新引导
cat /etc/inittab
Default runlevel. The runlevels used are:
# 0 - halt (Do NOT set initdefault to this)
# 1 - Single user mode
# 2 - Multiuser, without NFS (The same as 3, if you do not have networking)
# 3 - Full multiuser mode
# 4 - unused
# 5 - X11
# 6 - reboot (Do NOT set initdefault to this)
chkconfig --level 3 crond off
查看当前的运行级别
runlevel
N 3
who -r
run-level 3 2015-05-11 06:07
切换运行级别
init 0
Bootloader引导启动程序
windows:NTLDR
linux:
LILO:linux loader
GRUB:grand unified bootloader
ls /boot/grub/
device.map ffs_stage1_5 jfs_stage1_5 reiserfs_stage1_5 stage2 xfs_stage1_5
e2fs_stage1_5 grub.conf menu.lst splash.xpm.gz ufs2_stage1_5
fat_stage1_5 iso9660_stage1_5 minix_stage1_5 stage1 vstafs_stage1_5
阶段1:保存在MBR里的446字节
阶段1.5:保存在grub目录中
阶段2:磁盘分区
cat /boot/grub/grub.conf
default=0 #默认选择第一个标题所对应的内核
timeout=5 #当用户不做出选择时,默认等待多长时间,单位是秒
如果是0则表示不需要用户选择,自动启动默认的标题
如果是-1则表示除非用户选择,否则不会启动系统
splashimage=(hd0,0)/grub/splash.xpm.gz #启动界面的背景图片yum install imagemagick
convert source.jpg -resize 640x480! -colors 14 xxx.xpm
gzip -9 xxx.rpms
hiddenmenu #隐藏grub引导菜单,除非用户选择显示
title Red Hat Enterprise Linux (2.6.32-71.el6.i686)
root (hd0,0)
kernel /vmlinuz-2.6.32-71.el6.i686 ro root=UUID=0f4c5b88-8b5e-4cdb-8c7a-3f1ef4757703
rd_NO_LUKS rd_NO_LVM rd_NO_MD rd_NO_DM LANG=en_US.UTF-8 SYSFONT=latarcyrheb-sun16 KEYBOARDTYPE=pc KEYTABLE=us nomodeset crashkernel=auto rhgb quiet #内核文件路径及传递给内核的参数
initrd /initramfs-2.6.32-71.el6.i686.img #假根
boot分区要是基本分区
(hd0,0) 在grub看来所有的硬盘都是hd,第一个0表示第一块硬盘,第二个0表示第一个分区
在引导启动时,如果grub没有配置文件或配置文件已损坏,则需要以下修复步骤
find (hd#,0)/
root (hd0,0)
kernel /vmlinux-2.6.32-71.e16.i686 ro root=/dev/sda3
initrd /initramfs-2.6.32-71.el6.i686.img
boot
如果误删除grub,可以使用下列命令进行命令行级别修复
grub-install --root-directory=/boot /dev/sda
从别的主机进行复制
scp 192.168.100.2:/boot/grub/grub
开机过程中进入单用户模式。setenforce 0 后可修改root密码
给grub加密
grub-md5-crypt >> /boot/grub/grub.conf
将密码粘贴至第一个titile前,全局生效 password --md5 PASSWD
kernel在整个启动的过程中,主要功能:
1.识别设备
2.加载驱动程序(很可能用到initrd)
3.以只读方式挂载根文件系统
4.启动/sbin/init进程
init
/etc/inittab
upstart
基于事件的触发机制
systemd
ls /var/lock/subsys 锁文件
# chkconfig: 345 95 5
# description: Runs commands scheduled by the "at" command at the time \
cp 123.sh /etc/init.d/123
chmod +x /etc/init.d/123
service 123 start
chkconfig - updates and queries runlevel information for system services
SYNOPSIS
chkconfig [--list] [--type type][name]
chkconfig --add name
chkconfig --del name
chkconfig --override name
chkconfig [--level levels] [--type type] name <on|off|reset|resetpriorities>
chkconfig [--level levels] [--type type] name
chkconfig --add
chkconfig --del
chkconfig --list
chkconfig --level name on|off
chkconfig name on|off
chkconfig: 345 95 5
345:服务需要开启的运行级别,没有被包含的运行级别就是关闭
95:如果将该服务设置为链接,S开头文件的编号
5:如果将该服务器设置为链接,K开头文件的编号
chkconfig --level 3 crond off
【linux之crontab,启动】的更多相关文章
- linux计划crontab
linux计划crontab 启动crontab服务 一般启动服务用 /sbin/service crond start 若是根用户的cron服务可以用 sudo service crond sta ...
- Linux 命令 - crontab: 任务调度
cron 是一个 Linux 下的定时执行工具,可以在无需人工干预的情况下运行作业.守护进程 cron 会读取 crontab 文件,根据配置在指定的时间执行任务.contab 命令用来添加.删除.显 ...
- PHP计划任务:如何使用Linux的Crontab执行PHP脚本
我们的PHP程序有时候需要定时执行,我们可以使用ignore_user_abort函数或是在页面放置js让用户帮我们实现.但这两种方法都不太可靠,不稳定.我们可以借助Linux的Crontab工具来稳 ...
- 【转帖】Linux定时任务Crontab命令详解
Linux定时任务Crontab命令详解 https://www.cnblogs.com/intval/p/5763929.html 知道有crontab 以及 at 命令 改天仔细学习一下 讲sys ...
- Linux定时任务Crontab命令详解_转
转自:Linux定时任务Crontab命令详解 (部分修改) linux 定时系统则是由 cron (crond) 这个系统服务来控制的.Linux 系统上面原本就有非常多的计划性工作,因此这个系统服 ...
- Linux系统crontab定时调度Python脚本
Linux系统crontab定时调度Python脚本 一.Python脚本随Linux开机自动运行 #Python脚本:/home/edgar/auto.py #用root权限编辑以下文件:/etc/ ...
- linux的crontab定时任务命令
linux的crontab定时任务命令 cron是一个linux下的定时执行工具. 启动.停止.重启.重新载入配置/sbin/service crond start|stop|restart|relo ...
- linux下crontab安装和使用(定时任务)
在Unix和Linux的操作系统之中,cron可以让系统在指定的时间,去执行某个指定的任务,crontab命令常用于管理对应的cron. 一.crontab在线安装 yum -y install vi ...
- linux使用crontab实现PHP执行计划定时任务
linux使用crontab实现PHP执行计划定时任务 前几天写过一篇文章,利用单纯的php实现定时执行任务,但是效率不佳,对于linux来说用crontab实现更加合理 首先说说cron,它是一个l ...
随机推荐
- Java 并发编程实践基础 读书笔记: 第一章 JAVA并发编程实践基础
1.创建线程的方式: /** * StudySjms * <p> * Created by haozb on 2018/2/28. */ public class ThreadDemo e ...
- oracle 常用sql字符函数介绍
常用字符函数介绍 1.ascii 返回与指定的字符对应的十进制数: SQL>select ascii('A') A,ascii('a') a,ascii('0') zero,ascii(' ') ...
- Java面试总结(二)
前几天去了几家公司面试,果然,基本全部倒在二面上,无语啊...不过幸好,到最后拿到了环球易购的offer,打算就这么好好呆着了,学习学习,努力努力,下面讲讲这几天的面试吧. 先是恒大,一个组长面试,答 ...
- New UWP Community Toolkit - Markdown
概述 前面 New UWP Community Toolkit 文章中,我们对 V2.2.0 版本的重要更新做了简单回顾,其中简单介绍了 MarkdownTextBlock 和 MarkdownDoc ...
- java编程思想笔记(1)
java编程思想笔记(1) 一,对象的创建和生命周期 对象的数据位于何处?怎样控制对象的生命周期? 在堆(heap)的内存池中动态地创建对象. java完全采用了动态内存分配方式. 二,垃圾回收器 自 ...
- 编写简单的辅助脚本来在 Google 表格上记账
我的第二份工作入职在即,而这一次则真的是完全跑到了一个陌生的城市了.租房,购置相关用品,还尚未工作钱就花掉一堆.尽管我个人之前一直都没有过记账的习惯,但为了让自己能够搞清楚自己的钱都花在哪里了,于是还 ...
- 软工实践项目需求分析(团队)修改版get√-黄紫仪
日常前言:随笔距离文档大体完成已经过去了2天+(因为中间插了一波结对作业),所以目测感受没有那时候清晰(那时候烦的想打人了都--)需求分析那边去百度找了模板.emmmm好多东西感觉听都没听说过QAQ, ...
- L2 约束的最小二乘学习法
\[ \begin{align*} &J_{LS}{(\theta)} = \frac { 1 }{ 2 } { \left\| \Phi \theta - y \right\| }^{ 2 ...
- float、absolute、inline-block三者区别
0.前言 float属性在css2中是一个热门的属性,被广泛应用于布局之中,同时由于不当使用float带来的问题也非常多,本文结合自己对float的理解以及实际项目中碰到float的相关问题,做一个详 ...
- PHP分页初探 一个最简单的PHP分页代码的简单实现
PHP分页代码在各种程序开发中都是必须要用到的,在网站开发中更是必选的一项. 要想写出分页代码,首先你要理解SQL查询语句:select * from goods limit 2,7.PHP分页代码核 ...