Linux GoGoGo
1、简述rpm与yum命令的常见选项
CentOS系统上rmp:安装、升级、卸载、查询、校验、数据库维护 常用rpm-ivh PACKAGE
rpm [options] [package_file]
-i:安装
-v详细信息 -h显示进度 --test测试安装 --nodeps忽略依赖关系
--replacepkgs重新安装 --noscripts不执行程序包脚本 --nosignature不检查来源合法性 --nodigest不坚持包完整信息
-U:升级 :不对内核升级 -U升级或安装 rpm -Uvh package -F升级 -Fvh package --oldpackage:降级 --force强制升级 -e:卸载 rpm -e package_name --allmatches卸载所有版本 -q:查询 rpm-qa package_name查询所有包 -f FILE查询FILE是由哪个程序生成的 -p|--package PACKAGE_FILE查询为安装的包 --whatprovides CAPABILITY:查询指定CAPABILITY由哪个包提供 --whatrequires CAPABILITY:查询指定CAPABILITY被哪个包依赖 [query-options]:
--changelog :查询rpm包的changelog
-c :查询程序的配置文件
-d :查询程序文档
-i :information
-l :查看程序包安装后生成的所有文件
--scripts:查看程序包自带的脚本
--provides:列出程序包所提供的CAPABILITY
-R :查询指定的额程序包所依赖的CAPABILITY
常用查询法:
-qi PACKAGE;-qf FILE;-qc PACKAGE;-ql PACKAGE;-qd PACHKAGE
-v:校验 rpm {-V|--verify}[select-options][verify-options]
[verify-options]
S:file Size differs
M:Mode differs(includes permissons and file type)
5:digest differs
L:readlink path mismatch
D:Device major/minor number mismatch
U:User ownership differs
T:mtime differs
P:capabilities differs
导入所需公钥
rpm -k|--checksig rpmfile检查包的完整性
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-Centos-7
Centos 7发行光盘提供RPM-GPG-KEY-Centos-7
rpm -qa “gpg-pubkey*”
yum
解决程序包依赖性安装
yum [optios] [command] [packages]
yum repolist[all|enable|disable]显示仓库列表
yum list显示程序包
yum install [packages]...安装程序包
yum reinstall [packages]..重新安装程序包
yum update [package]..升级程序包
yum downgrade [packages]降级
yum check-update 检查可用升级
yum remove |erase packages 卸载程序包
/etc/yum.conf为仓库提供公共配置
/etc/yum.repos.d/*.repo:为仓库的指向提供配置
仓库指向定义:
[repositoryID]
name=仓库名字
baseurl=仓库路径
enable={1|0}是否启用
gpgcheck={1|0}是否校验
2、自建yum仓库,分别为网络源和本地源
[newrepo]
name=newrepo1
baseurl=https://mirrors.aliyun.com/centos/7/os/x86_64/
gpgcheck=0
enable=1
[newrepo]
name=newrepo2
baseurl=/mnt/Packages
gpgcheck=0
enable=1
3、简述at和crontab命令,制定 每周三凌晨三、五点10分执行某个脚本,输出当前时间,时间格式为 2017-12-28 10:00:00
at:
at [options] TIME
TIME =HH:MM[YYYY-mm-dd]
noon,midnight,teatime,
tomorrow
now+#[minutes,hours,days,weeks]
ctrl+d提交
-l 查看任务列表,相当于atq -f /FILE 从指定文件中读取任务 -d # 删除#号任务,相当于atrm -c # 显示#号任务的具体内容 -q 指明队列
crontab
服务程序:
cronle:主程序包,提供crond守护进程及相关辅助工具
确保守护进程:systemctl status crond.service --OS7 service crond status --OS6 * * * * * 周期性时间 user-name 用户 command to be executed任务 向crond提交作业方式使用专用配置文件,有固定的格式要是用crontab命令 cron任务分两类: 系统cron任务:主要用于系统自身维护 手动编辑/etc/crontab 用户cron任务:crontab 命令 /var/spool/cron/USERNAME 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
# | | | | |
# * * * * * user-name command to be executed
10, 3,5 * * 3 /bin/date +%Y-%m-%d-%H-%M-%S
时间表示法:
特定值:给定时间点有效取值范围内的值
- 给定时间点上有效取值范围内的所有值; 3 每小时的第三分钟执行
指定时间的离散取值:在给定时间点上使用逗号分隔的多个值(1,3,4 )每小时1,3,4分执行
连续取值 0 9-18 每天9点到18点每小时执行一次
定义步长:指定时间上定义步长 /# #表示步长 /5 *每5分钟执行一次任务
crontab:
-e:编辑任务
-l:列出任务
-r:移除所有任务
4、简述sed常用操作命令,并举例
ed [options] 'scripts' [file]....
scripts:
地址定界:
不给地址,全文处理
单地址,#:指定行
/partten/被此模式匹配到的每一行
-n 不输出模式空间中的内容到标准输出 -e 实现多点编辑 -f 脚本文件 -r 支持扩展正则表达式 -i 原处编辑
编辑命令:
d 删除
p 显示模式空间内容
a 匹配到的行后面追加文本
i 匹配到的行前面插入文本
c 匹配到的行替换为指定的文本
w 保存模式空间中的内容到指定文件
r 读取指定文件的内容至当前文件被匹配到的行
= 加行号
! 条件取反
s/// 查找替换g全局 w将替换的结果保存至指定文件中 p显示替换成功的行
高级用法:
h 把模式空间中的内容复盖到保持空间中
H 把模式空间中的内容追加到保持空间中
g 把保持空间中的内容覆盖至模式空间中
G 把保持空间中的内容追加到模式空间中
x 把模式空间中的内容与保持空间中的内容互换
n 读取匹配到的行的下一行覆盖到模式空间
N 读取匹配到的行的下一行追加到模式空间
D 删除多行空间中的所有行
- Linux GoGoGo
- ubuntu android 找不到arm-hisiv200-linux-gcc解决办法
- linux系统编程之进程(四):进程退出exit,_exit区别即atexit函数
- Linux下Gcc生成和使用静态库和动态库详解(转)
- linux 下的postfix的搭建
- Linux培训之教你轻松学习shell变量的使用
- Linux 目录与文件的基本操作
- Linux Makefile 小事例
- Linux--NFS和DHCP服务器
- linux deepin配置adb
- Linux下源码httpd编译安装
- linux驱动编程--中断
- linux-pppoe
- Linux apache 默认目录结构
- Linux常见信号汇总
- linux挂载和卸载移动设备
- 【Linux】ps命令
- linux常用命令-笔记
- linux 命令 mkdir -p
- 谈谈Linux打补丁的原理以及如何判别打补丁的错误 --- 从补丁学内核