linux命令知识

一. linux

1.Linux发行版
<1> 常见的发行版本如下:
Ubuntu
Redhat
Fedora
openSUSE
Linux Mint
Debian
Manjaro
Mageia
CentOS
Arch
2.Linux和Windows区别
比较
Windows
Linux
费用
收费且很贵
Linux免费或少许费用
软件与支持
数量和质量的优势,不过大部分为收费软件;由微软官方提供支持和服务
开源自由软件,用户可以修改定制和再发布,由于基本免费没有资金支持,部分软件质量和体验欠缺;有全球所有的Linux开发者和自由软件社区提供支持
安全性
三天两头打补丁安装系统安全性更新,还是会中病毒木马
要说Linux没有安全问题,那当然是不可能的,这一点仁者见仁智者见智,相对来说肯定比Windows平台更加安全
使用习惯
普通用户基本都是纯图形界面下操作使用,依靠鼠标和键盘完成一切操作,用户上手容易入门简单;
兼具图形界面操作和完全的命令行操作,可以用键盘完成一切操作,新手入门较困难,需要一些学习和指导,一旦熟练以后效率极高
可定制型
封闭的,系统的可定制性很差
开源,可定制性很强
应用场景
桌面操作系统主要使用Windows
支撑百度、谷歌、淘宝等应用软件和服务,是后台成千上万的Linux服务器主机,世界上大部分软件和服务都运行Linux上的
3.不同应用领域的主流操作系统
l 桌面操作系统
Windows 系列: 用户群体大
macOS: 适合于开发人员
Linux: 应用软件少
服务器操作系统
Linux: 1、安全、稳定、免费 2、占有率高
Windows Server: 1、付费 2、占有率低
4.Linux文件
Linux系统中一切皆文件。
常用快捷键
ctrl + c 停止进程
ctrl+l 清屏;彻底清屏是:reset
ctrl + q 退出
善于用tab键 提示(更重要的是可以防止敲错)
上下键 查找执行过的命令
ctrl +alt linux和Windows之间切换
pwd 显示当前工作目录的绝对路径
ls 列出目录的内容
cd 切换目录
cd 绝对路径 切换路径
cd相对路径 切换路径
cd ~或者cd 回到自己的家目录
cd - 回到上一次所在目录
cd … 回到当前目录的上一级目录
cd -P 跳转到实际物理路径,而非快捷方式路径
mkdir 创建一个新的目录
-p 创建多层目录
rmdir 删除一个空的目录
rmdir 要删除的空目录
touch 创建空文件
cp 复制文件或目录
-r 递归复制整个文件夹
rm 移除文件或目录
-r 递归删除目录中所有内容
-f 强制执行删除操作,而不提示用于进行确认。
-v 显示指令的详细执行过程
mv 移动文件与目录或重命名
如果没有这个目录就创建一个
如果有就移动
cat 查看文件内容
cat [选项] 要查看的文件
-n 显示所有行的行号,包括空行。
more 文件内容分屏查看器
空白键 (space) 代表向下翻一页;
Enter 代表向下翻『一行』;
q 代表立刻离开 more ,不再显示该文件内容。
Ctrl+F 向下滚动一屏
Ctrl+B 返回上一屏
= 输出当前行的行号
:f 输出文件名和当前行的行号
less 分屏显示文件内容
空白键 向下翻动一页;
[pagedown] 向下翻动一页
[pageup] 向上翻动一页;
/字串 向下搜寻『字串』的功能;n:向下查找;N:向上查找;
?字串 向上搜寻『字串』的功能;n:向上查找;N:向下查找;
q 离开 less 这个程序;
echo输出内容到控制台
-e: 支持反斜线控制的字符转换
\ 输出\本身
\n 换行符
\t 制表符,也就是Tab键
head 显示文件头部内容
-n <行数> 指定显示头部内容的行数
tail 输出文件尾部内容加粗样式
-n<行数> 输出文件尾部n行内容
-f 显示文件最新追加的内容,监视文件变化

覆盖 和 >> 追加
ll >文件 (功能描述:列表的内容写入文件a.txt中(覆盖写))
(2)ll >>文件 (功能描述:列表的内容追加到文件aa.txt的末尾)
(3)cat 文件1 > 文件2 (功能描述:将文件1的内容覆盖到文件2)
(4)echo “内容” >> 文件
ln 软链接
ln -s 原文件或目录 ./软链接名
删除软链接: rm -rf 软链接名,而不是rm -rf 软链接名/
history 查看已经执行过历史命令
时间日期类 date [OPTION]… [+FORMAT]
-d<时间字符串> 显示指定的“时间字符串”表示的时间,而非当前时间
-s<日期时间> 设置系统日期时间
date:显示当前时间)
date +%Y(功能描述:显示当前年份)
date +%m:显示当前月份)
date +%d(功能描述:显示当前是哪一天)
date "+%Y-%m-%d %H:%M:%S"功能描述:显示年月日时分秒)
cal 查看日历
cal 要查看的年份
useradd 添加新用户
useradd 用户名 (功能描述:添加新用户)
useradd -g 组名 用户名 (功能描述:添加新用户到某个组)
passwd 设置用户密码
passwd 用户名 (功能描述:设置用户密码)
id 查看用户是否存在
id 用户名
cat /etc/passwd 查看创建了哪些用户
su 切换用户
su 用户名称 (功能描述:切换用户,只能获得用户的执行权限,不能获得环境变量)
su - 用户名称 (功能描述:切换到用户并获得该用户的环境变量及执行权限)
userdel 删除用户
(1)userdel 用户名 (功能描述:删除用户但保存用户主目录)
(2)userdel -r 用户名 (功能描述:用户和用户主目录,都删除)
who 查看登录用户信息
whoami (功能描述:显示自身用户名称)
who am i (功能描述:显示登录用户的用户名)
sudo 设置普通用户具有root权限
添加jinghang用户,并对其设置密码。
[root@hadoop101 ~]#useradd jinghang
[root@hadoop101 ~]#passwd jinghang
2.修改配置文件
[root@hadoop101 ~]#vi /etc/sudoers
修改 /etc/sudoers 文件,找到下面一行(91行),在root下面添加一行,如下所示:
## Allow root to run any commands anywhere
root ALL=(ALL) ALL
jinghang ALL=(ALL) ALL
或者配置成采用sudo命令时,不需要输入密码
## Allow root to run any commands anywhere
root ALL=(ALL) ALL
jinghang ALL=(ALL) NOPASSWD:ALL
修改完毕,现在可以用jinghang帐号登录,然后用命令 sudo ,即可获得root权限进 行操作。
usermod 修改用户
usermod -g 用户组 用户名
-g 修改用户的初始登录组,给定的组必须存在
groupadd 新增组
groupadd 组名
groupdel 删除组
groupdel 组名
groupmod 修改组
groupmod -n 新组名 老组名
-n<新组名> 指定工作组的新组名
cat /etc/group 查看创建了哪些组

chmod 改变权限
第一种方式变更权限
chmod [{ugoa}{±=}{rwx}] 文件或目录
第二种方式变更权限
chmod [mode=421 ] [文件或目录]
u:所有者 g:所有组 o:其他人 a:所有人(u、g、o的总和)
r=4 w=2 x=1 rwx=4+2+1=7
chown 改变所有者
chown 选项 最终用户 文件或目录(功能描述:改变文件或者目录的所有者)
-R 递归操作
chgrp 改变所属组
chgrp [最终用户组] [文件或目录] (功能描述:改变文件或者目录的所属组)
find 查找文件或者目录
find [搜索范围] [选项]
-name<查询方式> 按照指定的文件名查找模式查找文件
-user<用户名> 查找属于指定用户名所有文件
-size<文件大小> 按照指定的文件大小查找文件。
grep 过滤查找及“|”管道符
grep 选项 查找内容 源文件
-n 显示匹配行及行号。
which 查找命令
which 命令
gzip/gunzip 压缩
gzip 文件 (功能描述:压缩文件,只能将文件压缩为*.gz文件)
gunzip 文件.gz (功能描述:解压缩文件命令)
zip/unzip 压缩
-r 压缩目录
-d<目录> 指定解压后文件的存放目录
tar 打包
tar [选项] XXX.tar.gz 将要打包进去的内容(功能描述:打包目录,压缩后的文件格 式.tar.gz)
-z 打包同时压缩
-c 产生.tar打包文件
-v 显示详细信息
-f 指定压缩后的文件名
-x 解包.tar文件
7.9 磁盘分区类
7.9.1 df 查看磁盘空间使用情况
df: disk free 空余硬盘
1.基本语法
df 选项 (功能描述:列出文件系统的整体磁盘使用量,检查文件系统的磁盘空间占用情况)
2.选项说明
表1-32
选项 功能
-h 以人们较易阅读的 GBytes, MBytes, KBytes 等格式自行显示;
3.案例实操
(1)查看磁盘使用情况
[root@hadoop101 ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda2 15G 3.5G 11G 26% /
tmpfs 939M 224K 939M 1% /dev/shm
/dev/sda1 190M 39M 142M 22% /boot
7.9.2 du 查看指定目录的磁盘占用情况
1.基本语法
du -h /目录
查询指定目录的磁盘暂用情况,默认为当前目录
-s 指定目录占用大小汇总
-h 带计量单位
-a 含文件
–max-depth=1 子目录深度
-c 列出明细的同时,增加汇总值

  1. 应用实例
    查询 /opt 目录的磁盘占用情况,深度为1
    [root@jinghang01 ~]# du -ach --max-depth=1 /opt
    4.0K /opt/rh
    4.0K /opt/software
    12K /opt
    12K 总用量

7.9.3 磁盘情况-工作实用指令
1)统计/root文件夹下的文件的个数
[root@jinghang01 ~]# ls -l /root | grep “^-” | wc -l
6
2)统计/root文件夹下的目录的个数
[root@jinghang01 ~]# ls -l /root | grep “^d” | wc -l
10
3)统计/root文件夹下文件的个数,包括子文件夹里的
[root@jinghang01 ~]# ls -lR /root | grep “^-” | wc -l
17
4)统计文件夹下目录的个数,包括子文件夹里的
[root@jinghang01 ~]# ls -lR /root | grep “^d” | wc -l
13
5)以树状显示目录结构
[root@jinghang01 ~]# yum install tree
[root@jinghang01 ~]# tree
7.9.4 fdisk 查看分区
分区基础知识
分区的方式:
1)mbr分区
1.最多支持四个主分区
2.系统只能安装再主分区
3.扩展分区要占一个主分区
4.MBR最大只支持2TB,但是拥有较好的兼容性
2)gpt 分区
1.支持无限多个主分区(但是系统可能限制,比如windowns下最多128个分区)
2.最大支持18EB的大容量(EB=1024PB,PB=1024TB)
3.Windowns7 64位以后才支持gpt分区
1.基本语法
fdisk -l (功能描述:查看磁盘分区详情)
2.选项说明
表1-33
选项 功能
-l 显示所有硬盘的分区列表
3.经验技巧
该命令必须在root用户下才能使用
4.功能说明
(1)Linux分区
Device:分区序列
Boot:引导
Start:从X磁柱开始
End:到Y磁柱结束
Blocks:容量
Id:分区类型ID
System:分区类型
(2)Win7分区,如图1-157所示

图1-157 Win7分区
5.案例实操
(1)查看系统分区情况
[root@hadoop101 /]# fdisk -l
Disk /dev/sda: 21.5 GB, 21474836480 bytes
255 heads, 63 sectors/track, 2610 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disk identifier: 0x0005e654
这个硬盘是21.5G的,有255个磁面;63个扇区;2610个磁柱;每个 cylinder(磁柱)的容量是 8225280 bytes=8225.280 K(约为)=8.225280M(约为);
分区序列 引导 开始 终止容量 ID 分区类型

Device Boot Start End Blocks Id System
/dev/sda1 * 1 26 204800 83 Linux
Partition 1 does not end on cylinder boundary.
/dev/sda2 26 1332 10485760 83 Linux
/dev/sda3 1332 1593 2097152 82 Linux swap / Solaris
7.9.3 mount/umount 挂载/卸载
对于Linux用户来讲,不论有几个分区,分别分给哪一个目录使用,它总归就是一个根目录、一个独立且唯一的文件结构。
Linux中每个分区都是用来组成整个文件系统的一部分,Linux采用一种叫做“挂载”的处理方法,它整个文件系统中包含了一整套的文件和目录,并将一个分区和一个目录联系起来,要载入的那个分区将使它的存储空间在这个目录下获得。
1.挂载前准备(必须要有光盘或者已经连接镜像文件),如图1-158,1-159所示

图1-158

图1-159 挂载镜像文件
2.基本语法
mount [-t vfstype] [-o options] device dir (功能描述:挂载设备)
umount 设备文件名或挂载点 (功能描述:卸载设备)
3.参数说明
表1-34
参数 功能
-t vfstype 指定文件系统的类型,通常不必指定。mount 会自动选择正确的类型。常用类型有:
光盘或光盘镜像:iso9660
DOS fat16文件系统:msdos
Windows 9x fat32文件系统:vfat
Windows NT ntfs文件系统:ntfs
Mount Windows文件网络共享:smbfs
UNIX(LINUX) 文件网络共享:nfs
-o options 主要用来描述设备或档案的挂接方式。常用的参数有:
loop:用来把一个文件当成硬盘分区挂接上系统
ro:采用只读方式挂接设备
rw:采用读写方式挂接设备
  iocharset:指定访问文件系统所用字符集
device 要挂接(mount)的设备
dir 设备在系统上的挂接点(mount point)
4.案例实操
(1)挂载光盘镜像文件
[root@hadoop101 ~]# mkdir /mnt/cdrom/ 建立挂载点
[root@hadoop101 ~]# mount -t iso9660 /dev/cdrom /mnt/cdrom/ 设备/dev/cdrom挂载到 挂载点 : /mnt/cdrom中
[root@hadoop101 ~]# ll /mnt/cdrom/
(2)卸载光盘镜像文件
[root@hadoop101 ~]# umount /mnt/cdrom
5.设置开机自动挂载
[root@hadoop101 ~]# vi /etc/fstab
添加红框中内容,保存退出。
如图1-160所示

图1-160 设置开机自动挂载
案例2:添加挂载硬盘
1.添加磁盘

添加完成后要重启电脑
2.使用
[root@jinghang01 ~]# lsblk -l
3.分区
[root@jinghang01 ~]# fdisk /dev/sdb
[root@jinghang01 ~]# lsblk -f
NAME FSTYPE LABEL UUID MOUNTPOINT
sr0 iso9660 CentOS_6.10_Final

sda
├─sda1 ext4 a55c3d9c-6a8e-46e3-b92c-ce6b46a66ec8 /boot
├─sda2 ext4 425ad190-3bc7-4c59-8b91-bab19d1d83da /
└─sda3 swap 88340fee-5be3-44aa-bb6a-4e93eb652d34 [SWAP]
sdb
└─sdb1
4.格式化分区
[root@jinghang01 ~]# mkfs -t ext4 /dev/sdb1

正在写入inode表: 完成
Creating journal (8192 blocks): 完成
Writing superblocks and filesystem accounting information: 完成

This filesystem will be automatically checked every 25 mounts or
180 days, whichever comes first. Use tune2fs -c or -i to override.

5.查看格式化结果
[root@jinghang01 ~]# lsblk -f
NAME FSTYPE LABEL UUID MOUNTPOINT
sr0 iso9660 CentOS_6.10_Final

sda
├─sda1 ext4 a55c3d9c-6a8e-46e3-b92c-ce6b46a66ec8 /boot
├─sda2 ext4 425ad190-3bc7-4c59-8b91-bab19d1d83da /
└─sda3 swap 88340fee-5be3-44aa-bb6a-4e93eb652d34 [SWAP]
sdb
└─sdb1 ext4 556a1549-110b-4679-9bcd-0ad3d64112a3
6.先创建一个目录/root/newdisk,挂载mount /dev/sdb1 /root/newdisk
[root@jinghang01 ~]# mkdir newdisk
[root@jinghang01 ~]# mount /dev/sdb1 newdisk/
[root@jinghang01 ~]# cd newdisk/
[root@jinghang01 newdisk]# ll1
总用量 16
drwx------. 2 root root 16384 12月 13 00:34 lost+found
7.10 进程线程类
进程是正在执行的一个程序或命令,每一个进程都是一个运行的实体,都有自己的地址空间,并占用一定的系统资源。
7.10.1 ps 查看当前系统进程状态
ps:process status 进程状态
1.基本语法
ps aux | grep xxx (功能描述:查看系统中所有进程)
ps -ef | grep xxx (功能描述:可以查看子父进程之间的关系)
2.选项说明
表1-35
选项 功能
-a 选择所有进程
-u 显示所有用户的所有进程
-x 显示没有终端的进程
3.功能说明
(1)ps aux显示信息说明
USER:该进程是由哪个用户产生的
PID:进程的ID号
%CPU:该进程占用CPU资源的百分比,占用越高,进程越耗费资源;
%MEM:该进程占用物理内存的百分比,占用越高,进程越耗费资源;
VSZ:该进程占用虚拟内存的大小,单位KB;
RSS:该进程占用实际物理内存的大小,单位KB;
TTY:该进程是在哪个终端中运行的。其中tty1-tty7代表本地控制台终端,tty1-tty6是本地的字符界面终端,tty7是图形终端。pts/0-255代表虚拟终端。
STAT:进程状态。常见的状态有:R:运行、S:睡眠、T:停止状态、s:包含子进程、+:位于后台
START:该进程的启动时间
TIME:该进程占用CPU的运算时间,注意不是系统时间
COMMAND:产生此进程的命令名
(2)ps -ef显示信息说明
UID:用户ID
PID:进程ID
PPID:父进程ID
C:CPU用于计算执行优先级的因子。数值越大,表明进程是CPU密集型运算,执行优先级会降低;数值越小,表明进程是I/O密集型运算,执行优先级会提高
STIME:进程启动的时间
TTY:完整的终端名称
TIME:CPU时间
CMD:启动进程所用的命令和参数
4.经验技巧
如果想查看进程的CPU占用率和内存占用率,可以使用aux;
如果想查看进程的父进程ID可以使用ef;
5.案例实操
[root@hadoop101 datas]# ps aux
如图1-161所示

图1-161 查看进程的CPU占用率和内存占用率
[root@hadoop101 datas]# ps -ef

如图1-162所示

图1-162 查看进程的父进程ID
7.10.2 kill 终止进程
1.基本语法
kill [选项] 进程号 (功能描述:通过进程号杀死进程)
killall 进程名称 (功能描述:通过进程名称杀死进程,也支持通配符,这在系统因负载过大而变得很慢时很有用)
2.选项说明
表1-36
选项 功能
-9 表示强迫进程立即停止
3.案例实操
(1)杀死浏览器进程
[root@hadoop101 桌面]# kill -9 5102
(2)通过进程名称杀死进程
[root@hadoop101 桌面]# killall firefox
7.10.3 pstree 查看进程树
1.基本语法
pstree [选项]
2.选项说明
表1-37
选项 功能
-p 显示进程的PID
-u 显示进程的所属用户

3.案例实操
(1)显示进程pid
[root@hadoop101 datas]# pstree -p
(2)显示进程所属用户
[root@hadoop101 datas]# pstree -u
7.10.4 top 查看系统健康状态
1.基本命令
top [选项]
2.选项说明
表1-38
选项 功能
-d 秒数 指定top命令每隔几秒更新。默认是3秒在top命令的交互模式当中可以执行的命令:
-i 使top不显示任何闲置或者僵死进程。
-p 通过指定监控进程ID来仅仅监控某个进程的状态。
3.操作说明
表1-39
操作 功能
P 以CPU使用率排序,默认就是此项
M 以内存的使用率排序
N 以PID排序
q 退出top
4.查询结果字段解释
第一行信息为任务队列信息
表1-40
内容 说明
12:26:46 系统当前时间
up 1 day, 13:32 系统的运行时间,本机已经运行1天
13小时32分钟
2 users 当前登录了两个用户
load average: 0.00, 0.00, 0.00 系统在之前1分钟,5分钟,15分钟的平均负载。一般认为小于1时,负载较小。如果大于1,系统已经超出负荷。
第二行为进程信息
表1-41
Tasks: 95 total 系统中的进程总数
1 running 正在运行的进程数
94 sleeping 睡眠的进程
0 stopped 正在停止的进程
0 zombie 僵尸进程。如果不是0,需要手工检查僵尸进程
第三行为CPU信息
表1-42
Cpu(s): 0.1%us 用户模式占用的CPU百分比
0.1%sy 系统模式占用的CPU百分比
0.0%ni 改变过优先级的用户进程占用的CPU百分比
99.7%id 空闲CPU的CPU百分比
0.1%wa 等待输入/输出的进程的占用CPU百分比
0.0%hi 硬中断请求服务占用的CPU百分比
0.1%si 软中断请求服务占用的CPU百分比
0.0%st st(Steal time)虚拟时间百分比。就是当有虚拟机时,虚拟CPU等待实际CPU的时间百分比。
第四行为物理内存信息
表1-43
Mem: 625344k total 物理内存的总量,单位KB
571504k used 已经使用的物理内存数量
53840k free 空闲的物理内存数量,我们使用的是虚拟机,总共只分配了628MB内存,所以只有53MB的空闲内存了
65800k buffers 作为缓冲的内存数量
第五行为交换分区(swap)信息
表1-44
Swap: 524280k total 交换分区(虚拟内存)的总大小
0k used 已经使用的交互分区的大小
524280k free 空闲交换分区的大小
409280k cached 作为缓存的交互分区的大小
5.案例实操
[root@hadoop101 jinghang]# top -d 10
[root@hadoop101 jinghang]# top -i
[root@hadoop101 jinghang]# top -p 2575
执行上述命令后,可以按P、M、N对查询出的进程结果进行排序。
7.10.5 netstat 显示网络统计信息和端口占用情况
1.基本语法
netstat -anp | grep 进程号 (功能描述:查看该进程网络信息)
netstat -nlp | grep 端口号 (功能描述:查看网络端口号占用情况)
2.选项说明
表1-45
选项 功能
-n 拒绝显示别名,能显示数字的全部转化成数字
-l 仅列出有在listen(监听)的服务状态
-p 表示显示哪个进程在调用
3.案例实操
(1)通过进程号查看该进程的网络信息
[root@hadoop101 hadoop-2.7.2]# netstat -anp | grep 火狐浏览器进程号
unix 2 [ ACC ] STREAM LISTENING 20670 3115/firefox /tmp/orbit-root/linc-c2b-0-5734667cbe29
unix 3 [ ] STREAM CONNECTED 20673 3115/firefox /tmp/orbit-root/linc-c2b-0-5734667cbe29
unix 3 [ ] STREAM CONNECTED 20668 3115/firefox
unix 3 [ ] STREAM CONNECTED 20666 3115/firefox

(2)查看某端口号是否被占用
[root@hadoop101 桌面]# netstat -nlp | grep 20670
unix 2 [ ACC ] STREAM LISTENING 20670 3115/firefox /tmp/orbit-root/linc-c2b-0-5734667cbe29
7.11 crond 系统定时任务
7.11.1 crond 服务管理
1.重新启动crond服务
[root@hadoop101 ~]# service crond restart
7.11.2 crontab 定时任务设置
1.基本语法
crontab [选项]
2.选项说明
表1-46
选项 功能
-e 编辑crontab定时任务
-l 查询crontab任务
-r 删除当前用户所有的crontab任务
3.参数说明
[root@hadoop101 ~]# crontab -e
(1)进入crontab编辑界面。会打开vim编辑你的工作。

          • 执行的任务
            表1-47
            项目 含义 范围
            第一个“” 一小时当中的第几分钟 0-59
            第二个“
            ” 一天当中的第几小时 0-23
            第三个“” 一个月当中的第几天 1-31
            第四个“
            ” 一年当中的第几月 1-12
            第五个“*” 一周当中的星期几 0-7(0和7都代表星期日)
            (2)特殊符号
            表1-48
            特殊符号 含义
  • 代表任何时间。比如第一个“*”就代表一小时中每分钟都执行一次的意思。
    , 代表不连续的时间。比如“0 8,12,16 * * * 命令”,就代表在每天的8点0分,12点0分,16点0分都执行一次命令
  • 代表连续的时间范围。比如“0 5 * * 1-6命令”,代表在周一到周六的凌晨5点0分执行命令
    /n 代表每隔多久执行一次。比如“/10 * * * * 命令”,代表每隔10分钟就执行一遍命令
    (3)特定时间执行命令
    表1-49
    时间 含义
    45 22 * * * 命令 在22点45分执行命令
    0 17 * * 1 命令 每周1 的17点0分执行命令
    0 5 1,15 * * 命令 每月1号和15号的凌晨5点0分执行命令
    40 4 * * 1-5 命令 每周一到周五的凌晨4点40分执行命令
    */10 4 * * * 命令 每天的凌晨4点,每隔10分钟执行一次命令
    0 0 1,15 * 1 命令 每月1号和15号,每周1的0点0分都会执行命令。注意:星期几和几号最好不要同时出现,因为他们定义的都是天。非常容易让管理员混乱。
    4.案例实操
    (1)每隔1分钟,向/root/bailongma.txt文件中添加一个11的数字
    */1 * * * * /bin/echo ”11” >> /root/bailongma.txt
    第8章 软件包管理
    8.1 RPM
    8.1.1 RPM概述
    RPM(RedHat Package Manager),RedHat软件包管理工具,类似windows里面的setup.exe
    是Linux这系列操作系统里面的打包安装工具,它虽然是RedHat的标志,但理念是通用的。
    RPM包的名称格式
    Apache-1.3.23-11.i386.rpm
    -“apache” 软件名称
    -“1.3.23-11”软件的版本号,主版本和此版本
    -“i386”是软件所运行的硬件平台,Intel 32位微处理器的统称
    -“rpm”文件扩展名,代表RPM包
    8.1.2 RPM查询命令(rpm -qa)
    1.基本语法
    rpm -qa (功能描述:查询所安装的所有rpm软件包)
    2.经验技巧
    由于软件包比较多,一般都会采取过滤。rpm -qa | grep rpm软件包
    3.案例实操
    (1)查询firefox软件安装情况
    [root@hadoop101 Packages]# rpm -qa |grep firefox
    firefox-45.0.1-1.el6.centos.x86_64
    8.1.3 RPM卸载命令(rpm -e)
    1.基本语法
    (1)rpm -e RPM软件包
    (2) rpm -e --nodeps 软件包
    2.选项说明
    表1-50
    选项 功能
    -e 卸载软件包
    –nodeps 卸载软件时,不检查依赖。这样的话,那些使用该软件包的软件在此之后可能就不能正常工作了。
    3.案例实操
    (1)卸载firefox软件
    [root@hadoop101 Packages]# rpm -e firefox
    8.1.4 RPM安装命令(rpm -ivh)
    1.基本语法
    rpm -ivh RPM包全名
    2.选项说明
    表1-51
    选项 功能
    -i -i=install,安装
    -v -v=verbose,显示详细信息
    -h -h=hash,进度条
    –nodeps --nodeps,不检测依赖进度
    3.案例实操
    (1)安装firefox软件
    [root@hadoop101 Packages]# pwd
    /media/CentOS_6.8_Final/Packages
    [root@hadoop101 Packages]# rpm -ivh firefox-45.0.1-1.el6.centos.x86_64.rpm
    warning: firefox-45.0.1-1.el6.centos.x86_64.rpm: Header V3 RSA/SHA1 Signature, key ID c105b9de: NOKEY
    Preparing… ########################################### [100%]
    1:firefox ########################################### [100%]
    8.2 YUM仓库配置
    8.2.1 YUM概述
    YUM(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及CentOS中的Shell前端软件包管理器。基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装,如图1-163所示

图1-163 YUM概述
8.2.2 YUM的常用命令
1.基本语法
yum [选项] [参数]
2.选项说明
表1-52
选项 功能
-y 对所有提问都回答“yes”
3.参数说明
表1-53
参数 功能
install 安装rpm软件包
update 更新rpm软件包
check-update 检查是否有可用的更新rpm软件包
remove 删除指定的rpm软件包
list 显示软件包信息
clean 清理yum过期的缓存
deplist 显示yum软件包的所有依赖关系
4.案例实操实操
(1)采用yum方式安装firefox
[root@hadoop101 ~]#yum -y install firefox.x86_64
8.2.3 修改网络YUM源
默认的系统YUM源,需要连接国外apache网站,网速比较慢,可以修改关联的网络YUM源为国内镜像的网站,比如网易163。
1.前期文件准备
(1)前提条件linux系统必须可以联网
(2)在Linux环境中访问该网络地址:http://mirrors.163.com/.help/centos.html,在使用说明中点击CentOS6->再点击保存,如图1-164所示

图1-164 下载CentOS6
(3)查看文件保存的位置,如图1-165,1-166所示

图1-165 图1-166
在打开的终端中输入如下命令,就可以找到文件的保存位置。
[jinghang@hadoop101 下载]$ pwd
/home/jinghang/下载
2.替换本地yum文件
(1)把下载的文件移动到/etc/yum.repos.d/目录
[root@hadoop101 下载]# mv CentOS6-Base-163.repo /etc/yum.repos.d/
(2)进入到/etc/yum.repos.d/目录
[root@hadoop101 yum.repos.d]# pwd
/etc/yum.repos.d
(3)用CentOS6-Base-163.repo替换CentOS-Base.repo
[root@hadoop101 yum.repos.d]# mv CentOS6-Base-163.repo CentOS-Base.repo
3.安装命令
(1)[root@hadoop101 yum.repos.d]#yum clean all
(2)[root@hadoop101 yum.repos.d]#yum makecache
yum makecache就是把服务器的包信息下载到本地电脑缓存起来
4.测试
[root@hadoop101 yum.repos.d]#yum list | grep firefox
[root@hadoop101 ~]#yum -y install firefox.x86_64

喜欢的朋友可以点赞加关注,这也是我持续更新的动力 谢谢!

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值