Linux常用命令
https://wangchujiang.com/linux-command/
https://linuxtools-rst.readthedocs.io/zh_CN/latest/index.html
一、常用快捷键
常用快捷键 | 功能 |
---|---|
ctrl + c | 停止进程 |
ctrl + l | 清屏 |
reset | 彻底清屏 |
ctrl + q | 退出 |
Tab | 提示,补全 |
↑ ↓ | 查找执行过的命令 |
ctrl + Alt | 在Linux和Windows之间切换 |
二、帮助命令
man:例man top----Linux命令
help:例help cd------shell内置命令
如何判断:which 命令 。没有路径就是shell内置命令
which top:有路径------是 Linux命令
三、文件目录类
命令(语法) | 功能 | 参数/选项 |
---|---|---|
pwd | 显示用户当前工作目录的绝对路径 | |
ls [选项] [目录] | 显示目录列表 | -a -A -l -C -R -s |
cd [参数] | 将当前工作目录切换到指定目录 | cd 绝对路径 |cd 相对路径 |
cd ~/cd cd - cd … cd -P | ||
mkdir [选项] [目录] | 创建新目录 | -p -v |
rmdir [选项] [目录] | 删除空目录 | -p -v --help |
touch [文件名] | 创建新文件 | |
rename [原] [新] [文件] | 重命名 / 批量为文件修改名称 | |
cp [选项] [源] [目标] | 复制粘贴(1/多个) | -a -R/r -v |
rm [选项] [目标] | 删除给定的文件和目录 | -r -f -i -v |
mv | 移动文件与目录 / 重命名 | |
mv /temp/movefile /targetFolder | ||
mv oldNameFile newNameFile | ||
cat [选项] [文件] | 查看文件内容,从第一行开始显示 | -b -n -s |
more [文件] | 以全屏幕的方式按页显示文本文件的内容 | 空格键 Enter Ctrl+F /B q f |
less [文件] | 分屏显示文件内容 | 空格键 /字串 ?字串 q |
head [选项] [文件] | head用于显示文件的开头部分内容 | -n[可有可没有] |
tail [选项] [文件] | tail用于输出文件中尾部的内容 | -n -f [可有可没有] |
echo | 在shell中打印shell变量的值 /直接输出指定的字符串 | -e \\ \n \t |
> 和 >> | > 覆盖 和 >> 追加 | |
ln | 创建软连接/硬链接 | -i -s -v |
history | 指令用于显示指定数目的指令命令 | n |
(一)ls : 显示目录列表
语法:ls【选项】 【目录】
选项:
- -a : 显示包含隐藏文件(文件以"."开头的所有文件)
- -A :显示除隐藏文件".“和”…"以外的所有文件列表
- -l :长数据串列出,包含文件的属性与权限等等数据;(常用,可简写为 ll )
- -C :多列显示输出结果,默认
- -R :递归显示目录下的所有文件列表和子目录列表
- -s : 以块(1块=1024字节)为单位显示文件的大小
实操:
[root@linux01 home]# ll
总用量 20
-rw-r--r--. 1 root root 175 10月 20 21:01 alldata.tar.gz
drwx------. 24 fxy fxy 4096 10月 16 20:23 fxy
drwx------. 5 root root 4096 10月 21 17:01 jh
drwx------. 4 lili english 4096 10月 20 17:30 lili
drwx------. 5 list list 4096 10月 20 21:01 lisi
(二)cd :将当前工作目录切换到指定目录
语法:cd [参数]
选项:
- cd绝对路径 切换路径
- cd相对路径 切换路径
- cd ~或cd 回到自己的家目录
- cd - 回到上一次所在目录
- cd … 回到当前目录的上一级目录
- cd -P 跳转到实际物理路径,而非快捷方式路径
实操:
[root@linux01 ~]# cd /home
[root@linux01 home]#
(三)rename:重命名
语法:rename 【原字符串】 【目标字符串】 【文件】
实操:
[root@linux01 ~]# rename aaa bbb /home/test/*aaa*
(四)cp:复制粘贴
语法: cp 【选项】 【源文件】【目标文件】 将1/多个源文件/目录 复制到 指定的目标文件/目录
选项:
- -a 保持源文件的原有结构和属性,与选项“-dpR"的功能相同
- -R或则-r 以递归的操作方式,将指定目录及其子目录,中的所有文件复制到指定的目标目录
- -v 详细显示指令执行的操作
实操:
[root@linux01 ~]# cp -vr xiyou/dssz/ ./
(五)cat : 查看文件内容,从第一行开始显示
语法:cat [选项] 要查看的文件
选项:
- -b 在非空行前面显示行号
- -n 显示所有行的行号,包括空行。
- -s 压缩空行,多个空行连续出现时仅显示一个空行
实操:
[root@linux01 ~]# cat -n aa.txt
(六)> 和 >>:覆盖和追加
语法:
- ll >文件 (功能描述:列表的内容写入文件中(覆盖写))
- ll >>文件 (功能描述:列表的内容追加到文件的末尾)
- cat 文件1 > 文件2 (功能描述:将文件1的内容覆盖到文件2)
- echo “内容” >> 文件
实操:
[root@linux01 ~]# echo hello>>a.txt
(七)ln :创建链接
语法:ln -s [原文件或目录] [软链接名]
选项:
- -i 创建链接时,如果目标文件已经存在,则提示用户确认覆盖
- -s 创建符号链接。如果系统不支持符号链接,则导致命令出错
- -v 详细信息模式,输出指令的详细执行过程
实操:
[root@linux01 ~]# ln -s /home/test1/b.txt /home/a.txt
PS:
- ln 默认创建链接为硬链接,不能对目录建立链接。要为目录建立链接必须使用“-s”选项,指明创建的链接类型为符号链接。
- 只能为普通文件创建硬链接, 不能为目录创建硬链接。而符号链接(软连接)则没有任何限制,
- 删除软链接: rm -rf 软链接名,而不是rm -rf 软链接名/
- 查询:通过ll就可以查看,列表属性第1位是l,尾部会有位置指向。
四、搜索查找类
命令(语法) | 功能 | 选项 |
---|---|---|
find [搜索范围] [选项] | [向下递归] 查找文件/目录 | -name -user -size -empty -type |
grep [选项] [匹配模式] [源文件] | 过滤查找 | -n -i -v |
which [指令名] | 显示给定指令的绝对路径 | |
whereis [选项] [参数] | 显示指令及相关文件的路径 | -b |
(一)find:查找文件/目录
find指令将从指定目录向下递归地遍历其各个子目录,将满足条件的文件显示在终端。
语法:find [搜索范围] [选项]
选项:
- -name <查询方式> 按照指定的文件名查找模式查找文件
- -user<用户名> 查找属于指定用户名所有文件
- -size<文件大小> 按照指定的文件大小查找文件。
- -empty 查找文件大小为0的目录或文件
- -type<文件类型> 按照指定的文件类型查找文件 [b,c,d,p,f,l,s]
- b:块设备文件(block device)
- c:字符设备文件( characterdevice)
- d:目录(directory)
- p:命名管道(FIFO)
- f:普通文件
- 1:符号链接文件(symbolic links)
- s:网络套接字文件( socket)
实操:
[root@linux01 home]# find -name fxy
./fxy
[root@linux01 home]# find -user root
.
./jh
./jh/log.txt
./jh/mail.txt
./jh/alldata.tar.gz
./jh/test
./lisi/log.txt
./lisi/mail.txt
./lisi/test
./alldata.tar.gz
[root@linux01 home]# find -type f
./jh/.bash_profile
./jh/log.txt
./jh/.bash_logout
(二)grep:过滤查找
语法:grep 【选项】 【匹配模式】 【源文件】
选项:
- -n 显示匹配行及行号。
- -i 忽略大小写的不同
- -v 搜索不含指定字符串的行
实操:过滤fxy,查找其他
[root@linux01 ~]# ll /home
总用量 20
-rw-r--r--. 1 root root 175 10月 20 21:01 alldata.tar.gz
drwx------. 24 fxy fxy 4096 10月 16 20:23 fxy
drwx------. 5 root root 4096 10月 21 17:01 jh
drwx------. 4 lili english 4096 10月 20 17:30 lili
drwx------. 5 list list 4096 10月 20 21:01 lisi
[root@linux01 ~]# ll /home | grep -vn fxy
1:总用量 20
2:-rw-r--r--. 1 root root 175 10月 20 21:01 alldata.tar.gz
4:drwx------. 5 root root 4096 10月 21 17:01 jh
5:drwx------. 4 lili english 4096 10月 20 17:30 lili
6:drwx------. 5 list list 4096 10月 20 21:01 lisi
(三)whereis:显示指令及相关文件的路径
语法:whereis 【选项】【参数】
选项:
- -b 仅查找二进制程序或命令
实操:显示rm指令的程序路径
[root@linux01 ~]# whereis -b rm
五、用户管理类
命令 | 功能 | 选项 |
---|---|---|
useradd 【选项名】【用户名】 | 增加用户 | -g -d -u -c |
id 【用户名】 | 查看用户是否存在 | |
cat /etc/passwd | 查看创建的用户 | |
passwd 【用户名】 | 设置用户密码 | |
su 【用户名】 | 切换用户 | |
whoami |who am i | 显示自身用户名称 |显示登陆用户名称 | |
userdel 【选项名】【用户名】 | 删除用户及相关文件 | |
usermod 【选项】 【用户名】 | 修改用户基本信息 | -g -c -d |
sudo 【指令】 | 设置普通用户具有root权限 |
(一)useradd:增加用户
语法: useradd 【选项】【用户名】
权限要求:root
选项 | 功能 |
---|---|
-g | 指定用户的主要组,默认 组名=用户名 |
-d | 指定用户的宿主目录,默认 /home/与用户名同名的目录 |
-u | 指定用户的UID |
-c | 设置用户注释 |
注册用户:[root@linux01 ~]# useradd -d /home/lisi123 -c “大数据开发组员工” lisi
(二)cat /etc/passwd:查看创建的用户
用户名:密码:用户id:组id:注释:宿主目录:
(三)passwd:设置用户密码
语法:passwd 【用户名】
(四)who:查看登陆用户信息
语法:
-
whoami :显示自身用户名称
-
who am i :显示登陆用户名称
(五)userdel:删除用户及相关文件
语法:userdel 【选项名】【用户名】
选项 | 功能 |
---|---|
-r | 删除用户的同时删除用户相关文件 |
-f | 强制删除用户,即使用户正在登陆 |
(六)usermod:修改用户基本信息
语法:usermod 【选项】 【用户名】
选项 | 功能 |
---|---|
-g | 修改用户的初始登录组,给定的组必须存在 |
-c | 修改用户的注释信息 |
-d | 修改用户的宿主目录 |
修改前:
jh:x:502:505:xiaobai:/home/jh:/bin/bash
修改并查看
[root@linux01 ~]# usermod -c "注释" jh
[root@linux01 ~]# cat /etc/passwd
jh:x:502:505:注释:/home/jh:/bin/bash
(七)sudo:设置普通用户具有root权限
语法:sudo 【指令】
1.添加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
3 . 修改完毕,可以用jinghang帐号登录,然后用 命令 sudo ,即可获得root权限进行操作。
六、用户组管理
每个用户都有一个用户组,系统可以对一个用户组中的所有用户进行集中管理。
查看创建的组:cat /etc/group
命令 | 语法 | 功能 | 选项 |
---|---|---|---|
groupadd | groupadd 【组名】 | 创建新工作组 | |
groupadd -g 【组id】【组名】 | |||
groupdel | groupdel 【组名】 | 删除工作组 | |
groupmod | groupmod 【选项】【组名】 | 修改工作组信息 | -n<新组名> |
-g <新组ID> |
(一)groupadd:创建新工作组
语法:
groupadd 【组名】
groupadd -g 【组id】【组名】
实操:添加一个组,并设置组id
[root@linux01 ~]# groupadd -g 400 class26
(二)groupdel
语法:groupdel 【组名】
PS: groupdel 指令无法删除用户的主要组(Primary Group),即创建用户时自动为用户所创建的组(如果此用户还存在)。
(三)groupmod
语法:groupmod 【选项】【组名】
选项:
- -n<新组名> 指定工作组的新组名
- -g <新组ID> 指定 工作组的新组ID
实操:修改jh1组id为450
[root@linux01 ~]# groupmod -g 450 jh1
七、文件权限类
Linux系统是一种典型的多用户系统,不同的用户处于不同的地位,拥有不同的权限。为了保护系统的安全性,Linux系统对不同的用户访问同一文件(包括目录文件)的权限做了不同的规定。在Linux中我们可以使用ll或者ls -l命令来显示一个文件的属性以及文件所属的用户和组。
(一)文件属性
例如:-rw-r–r--. 1 root root 46832 10月 16 20:15 install.log
从左到右:
- 文件类型与权限(-rw-r–r--):0-9共10个字符
- 0代表类型,-文件、d目录、l链接文档,本例为文件。
- 1-3代表属主(即文件所有者)权限,4-6代表属组权限, 7-9代表其他用户权限
- 有三种权限r可读、w可写、x可执行
- w 代表可写: 可以修改,但不可以删除文件,可写是删除该文件的前提。可写+可执行=可删除
- 本例中,属主权限rw-,可读可写;属组权限r–,可读;其他用户权限r–,可读。
- 链接数:1
- 文件属主:root
- 文件属组:root
- 文件大小:46832
- 建立/最近修改的时间:10月 16 20:15
- 文件名字:install.log
命令 | 语法 | 功能 | 选项 |
---|---|---|---|
chmod | chmod [{ugoa}{±=}{rwx}] 文件或目录 | 改权限 | |
chmod [mode=421 ] [文件或目录] | |||
chown | chown [选项] [最终用户] [文件或目录] | 改v所有者 | -R -v |
chgrp | chgrp [最终用户组] [文件或目录] | 改所属组 |
(二)chmod:改变权限
语法:
chmod [{ugoa}{±=}{rwx}] 文件或目录
chmod [mode=421 ] [文件或目录]
实操:
(三)chown:改变文件或目录所有者
语法:chown [选项] [最终用户] [文件或目录]
实操:
(四)chgrp :改变所属组
语法:chgrp [最终用户组] [文件或目录]
八、日期时间类
(一)date命令:时间
语法 | 功能 |
---|---|
date | 显示当前时间 |
date “+%Y-%m-%d %H:%M:%S” | 功能描述:显示年月日时分秒 |
date -d ‘n days ago’ | 显示非当前时间:前n天 |
date -d ‘-n days ago’ | 显示非当前时间:后n天 |
date -s 字符串时间 | 设置系统时间 |
(二)cal命令:查看日历
语法:cal [选项]
[选项]:年份。
加:具体某一年,显示这一年的日历
不加:当前月
九、压缩和解压类
命令 | 语法 | 功能 |
---|---|---|
gzip | gzip 文件 | 压缩文件,只能将文件压缩为*.gz文件【只文件,不保留原文件】 |
gunzip | gunzip 文件.gz | 解压缩文件命令 |
zip | zip [选项-r] XXX.zip 将要压缩的内容 | 压缩文件和目录的命令【保留原文件】 |
unzip | unzip XXX.zip [选项-d] | 解压缩文件 |
tar | tar [选项] XXX.tar.gz 将要打包进去的内容 | 打包备份 |
选项:-z -c -v -f -x | “c”,“x”只能使用一个,不能同时使用 |
(一)zip/unzip
实操:
1、压缩
[root@linux01 ~]# zip aa.zip jh1.txt jh2.txt
adding: jh1.txt (stored 0%)
adding: jh2.txt (stored 0%)
[root@linux01 ~]# ls
jh1.txt jh2.txt aa.zip
2、解压
[root@linux01 ~]# unzip aa.zip
Archive: aa.zip
extracting: jh1.txt
extracting: jh2.txt
[root@linux01 ~]# ls
jh1.txt jh2.txt aa.zip
3、解压到指定目录
[root@linux01 ~]# unzip aa.zip -d /opt
(二)tar
选项:
- -z 打包同时压缩
- -c 产生.tar打包文件
- -v 显示详细信息
- -f 指定压缩后的文件名
- -x 解包.tar文件
实操:
1、压缩
[root@linux01 ~]# tar -zcvf /home/alldata.tar.gz /home/lisi/log.txt /home/lisi/mail.txt /home/lisi/test
2、解压
[root@linux01 ~]# tar -zxvf /home/jinghang/test1.tar.gz -C /home/test
十、进程管理类
命令 | 语法 | 功能 |
---|---|---|
ps | ps -aux | grep xxx | 查看系统中所有进程 |
ps -ef | grep xxx | 查看子父进程之间的关系 | |
kill | kill [选项 -9] 进程号 | 通过进程号杀死进程 |
killall 进程名称 | 通过进程名称杀死进程 | |
pstree | pstree [选项] | 查看进程树 |
选项:-p(进程id) -u(所属用户) |
(一)ps: 查看当前系统进程状态
语法:
ps -aux | grep xxx --查看进程的CPU占用率和内存占用率
ps -ef | grep xxx – 查看进程的父进程ID
显示信息:
UID:用户ID
PID:进程ID
PPID:父进程ID
C:CPU用于计算执行优先级的因子。数值越大,表明进程是CPU密集型运算,执行优先级会降低;数值越小,表明进程是I/O密集型运算,执行优先级会提高
STIME:进程启动的时间
TTY:完整的终端名称
TIME:CPU时间
CMD:启动进程所用的命令和参数
实操:
[root@linux01 ~]# ps -aux |grep "^root"
(二)kill:终止进程
实操:
[root@linux01 ~]# kill -9 2987
[root@linux01 ~]# killall firefox
十一、性能监控
命令(语法) | 功能 | 选项 |
---|---|---|
top【选项】 | 实时报告系统整体性能情况 | -d -i -p |
free【选项】 | 显示内存的使用情况 | -b -k -m -t -s<间隔时间> |
netstat | 显示网络统计网络系统得状态信息和端口占用情况 | 公用选项 |
netstat -anp | grep 进程号 | 查看该进程网络信息 | -n -l -p -a -u -t |
netstat -nlp | grep 端口号 | 查看网络端口号占用情况 |
(一)top :实时报告系统整体性能情况
语法:top【选项】
选项:
- -d 秒数 指定top命令每隔几秒更新。默认是3秒
- -i 使top不显示任何闲置或者僵死进程。
- -p 通过指定监控进程ID来仅仅监控某个进程的状态。
执行上述命令后,可以按P、M、N对查询出的进程结果进行排序。
-
P 以CPU使用率排序,默认就是此项
-
M 以内存的使用率排序
-
N 以PID排序
-
q 退出top
-
k 根据进程得id,杀死进程
(二)free:显示内存的使用状况
语法:free 【选项】
选项 | 功能 |
---|---|
-b | 以字节为单位显示内存使用情况 |
-k | 以千字节为单位显示内存使用情况 |
-m | 以兆字节为单位显示内存使用情况 |
-h | 以合适的字节显示内存使用情况 |
-t | 显示汇总结果 |
-s 间隔秒数 | 以指定间隔的秒数,显示内存使用情况 |
-b:
-k:
-m:
-h:
-t:
(三)netstat: 显示网络统计网络系统得状态信息和端口占用情况
语法:
netstat -anp | grep 进程号 查看该进程网络信息
netstat -nlp | grep 端口号 查看网络端口号占用情况
选项:
- -n 使用数字形式的IP、端口、用户ID、协议、用户等名称信息
- -l 仅列出有在listen(监听)的服务状态
- -p 表示显示哪个进程在调用
- -a 显示处于监听状态和处于非监听状态的socket信息
- -u 查看udp连接信息
- -t 查看tcp连接信息
实操:
1、通过进程号查看该进程的网络信息
[root@linux01 ~]# netstat -anp | grep 火狐浏览器进程号
2、查看某端口号是否被占用
[root@linux01 ~]# netstat -nlp | grep 端口号
十二、磁盘分区类
命令(语法) | 功能 | 选项 |
---|---|---|
df 【选项】 | 查看磁盘空间使用情况 | -h |
du 【选项】【目录】 | 显示每个文件和目录的磁盘使用空间占用情况 | -s -h -a --max-depth=1 -c |
fdisk【选项】【参数】 | 查看磁盘使用情况和磁盘分区 | |
mount [-t vfstype] [-o options] device dir | 挂载设备 | |
umount 设备文件名或挂载点 | 卸载设备 |
(一)df(disk free):磁盘空间
查看磁盘空间使用情况 ,检查文件系统的磁盘空间占用情况
语法:df 【选项】
选项:
- -h :以人们较易阅读的 GBytes, MBytes, KBytes 等格式自行显示;
(二)du:查看指定目录的磁盘占用情况
语法:du 【选项】【目录】
选项:
- -s 指定目录占用大小汇总
- -h 带计量单位
- -a 含文件
- –max-depth=1 子目录深度
- -c 列出明细的同时,增加汇总值
实操:
[root@linux01 ~]# du -ach --max-depth=1 /opt
4.0K /opt/rh
4.0K /opt/software
12K /opt
12K 总用量
(三)fdisk:查看分区
1、分区的方式:
(1)mbr分区
- 最多支持四个主分区
- 系统只能安装再主分区
- 扩展分区要占一个主分区
- MBR最大只支持2TB,但是拥有较好的兼容性
(2)gpt 分区
- 支持无限多个主分区(但是系统可能限制,比如windowns下最多128个分区)
- 最大支持18EB的大容量(EB=1024PB,PB=1024TB)
- Windowns7 64位以后才支持gpt分区
2、 语法
fdisk -l :查看磁盘分区详情
lsblk -l :查看磁盘分区详情
3、选项
- -l 显示所有硬盘的分区列表
该命令必须在root用户下才能使用
4、 功能说明
(1)Linux分区
Device:分区序列
Boot:引导
Start:从X磁柱开始
End:到Y磁柱结束
Blocks:容量
Id:分区类型ID
System:分区类型
5、实操
查看系统分区情况:
[root@linux01 ~]# 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: 0x0005a2af
Device Boot Start End Blocks Id System
/dev/sda1 * 1 39 307200 83 Linux
Partition 1 does not end on cylinder boundary.
/dev/sda2 39 2358 18631680 83 Linux
/dev/sda3 2358 2611 2031616 82 Linux swap / Solaris
(四) mount/umount 挂载/卸载
对于Linux用户来讲,不论有几个分区,分别分给哪一个目录使用,它总归就是一个根目录、一个独立且唯一的文件结构。
Linux中每个分区都是用来组成整个文件系统的一部分,Linux采用一种叫做“挂载”的处理方法,它整个文件系统中包含了一整套的文件和目录,并将一个分区和一个目录联系起来,要载入的那个分区将使它的存储空间在这个目录下获得。
1 语法:
mount [-t vfstype] [-o options] device dir :挂载设备
umount 设备文件名或挂载点 :卸载设备
2 参数说明:
参数 | 功能 |
---|---|
-t vfstype | 指定文件系统的类型,通常不必指定。mount 会自动选择正确的类型。常用类型有:光盘或光盘镜像:iso9660DOS fat16文件系统:msdosWindows 9x fat32文件系统:vfatWindows NT ntfs文件系统:ntfsMount Windows文件网络共享:smbfsUNIX(LINUX) 文件网络共享:nfs |
-o options | 主要用来描述设备或档案的挂接方式。常用的参数有:loop:用来把一个文件当成硬盘分区挂接上系统ro:采用只读方式挂接设备rw:采用读写方式挂接设备 iocharset:指定访问文件系统所用字符集 |
device | 要挂接(mount)的设备 |
dir | 设备在系统上的挂接点(mount point) |
3 案例实操:
(1)挂载光盘镜像文件
[root@linux01 ~]# mkdir /mnt/cdrom/ 建立挂载点
[root@Linux01 ~]# mount -t iso9660 /dev/cdrom /mnt/cdrom/ 设备/dev/cdrom挂载到 挂载点 : /mnt/cdrom中
[root@Linux01 ~]# ll /mnt/cdrom/
(2)卸载光盘镜像文件
[root@Linux01 ~]# umount /mnt/cdrom
设置开机自动挂载
[root@Linux01 ~]# vi /etc/fstab
添加红框中内容,保存退出。
十三、软件包管理类
(一)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包
(1) rpm 查询命令
基础语法
rpm -qa :查询所安装的所有rpm软件包
rpm -qi :查询安装的软件包的详细信息
经验技巧
由于软件包比较多,一般都会采用grep 过滤。
rpm -qa | grep rpm 软件包
案例实操
(1)查询firefox软件安装情况
[root@Linux02 Packages]# rpm -qa |grep firefox
firefox-45.0.1-1.el6.centos.x86_64
[root@Linux02 Packages]# rpm -qi firefox-45.0.1-1.el6.centos.x86_64
(2) rpm 卸载命令
基本语法
(1)rpm -e RPM软件包
(2)rpm -e --nodeps 软件包
选项
选项 | 功能 |
---|---|
-e | 卸载软件包 |
–nodeps | 卸载软件时,不检查依赖。这样的话,那些使用该软件包的软件在此之后可能就不能正常工作了。 |
实操
(1)卸载firefox软件
[root@Linux02 Packages]# rpm -e firefox
(3) rpm安装命令
基本语法
rpm -ivh RPM 包全名
选项
选项 | 功能 |
---|---|
-i | -i=install,安装 |
-v | -v=verbose,显示详细信息 |
-h | -h=hash,进度条 |
–nodeps | –nodeps,不检测依赖进度 |
实操
安装firefox 软件
[root@Linux02 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%]
(二) YUM
**YUM(全称为 Yellow dog Updater, Modified)**是一个在Fedora和RedHat以及CentOS中的Shell前端软件包管理器。基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装
(1)YUM 常用命令
基本语法
yum 选项 参数
选项说明
选项 | 功能 |
---|---|
-y | 对所有提问都回答“yes” |
参数说明
参数 | 功能 |
---|---|
install | 安装rpm软件包 |
update | 更新rpm软件包 |
check-update | 检查是否有可用的更新rpm软件包 |
remove | 删除指定的rpm软件包 |
list | 显示软件包信息 |
clean | 清理yum过期的缓存 |
deplist | 显示yum软件包的所有依赖关系 |
14.5.1.4 案例实操实操
(1)采用yum方式安装firefox
[root@Linux02 ~]#yum -y install firefox.x86_64
(三) 修改 网络YUM 源
默认的系统YUM源,需要连接国外apache网站,网速比较慢,可以修改关联的网络YUM源为国内镜像的网站,比如网易163。
1.前期文件准备
(1)前提条件linux系统必须可以联网
(2)在Linux环境中访问该网络地址:http://mirrors.163.com/.help/centos.html,在使用说明中点击CentOS6->再点击保存,如图1-164所示
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
(3)查看文件保存的位置
在打开的终端中输入如下命令,就可以找到文件的保存位置。
[root@Linux02 下载]$ pwd
/home/jinghang/下载
2.替换本地yum文件
(1)把下载的文件移动到/etc/yum.repos.d/目录
[root@Linux02 下载]# mv CentOS6-Base-163.repo /etc/yum.repos.d/
(2)进入到/etc/yum.repos.d/目录
[root@Linux02 yum.repos.d]# pwd
/etc/yum.repos.d
(3)用CentOS6-Base-163.repo替换CentOS-Base.repo
[root@Linux02 yum.repos.d]# mv CentOS6-Base-163.repo CentOS-Base.repo
3.安装命令
(1)
[root@Linux02 yum.repos.d]#yum clean all
(2)
[root@Linux02 yum.repos.d]#yum makecache
yum makecache就是把服务器的包信息下载到本地电脑缓存起来
4.测试
[root@Linux02 yum.repos.d]#yum list | grep firefox
[root@Linux02 ~]#yum -y install firefox.x86_64
十四、定时任务操作:crontab 定时任务设置
启动服务:
service crond restart | start
(一) 基本语法
crontab [选项]
(二) 选项
选项 | 功能 |
---|---|
-e | 编辑crontab定时任务 |
-l | 查询crontab任务 |
-r | 删除当前用户所有的crontab任务 |
-i | 删除用户的计划任务前要求用户进行确认 |
(三) 编辑定时任务
[root@Linux01 ~]# crontab -e
(1)进入crontab编辑界面,会打开vim进行编辑。
* * * * * 执行的任务
项目 | 含义 | 范围 |
---|---|---|
第一个“*” | 一小时当中的第几分钟 | 0-59 |
第二个“*” | 一天当中的第几小时 | 0-23 |
第三个“*” | 一个月当中的第几天 | 1-31 |
第四个“*” | 一年当中的第几月 | 1-12 |
第五个“*” | 一周当中的星期几 | 0-7(0和7都代表星期日) |
(2)特殊符号
特殊符号 | 含义 |
---|---|
* | 代表任何时间。比如第一个“*”就代表一小时中每分钟都执行一次的意思。 |
, | 代表不连续的时间。比如“0 8,12,16 * * * 命令”,就代表在每天的8点0分,12点0分,16点0分都执行一次命令 |
- | 代表连续的时间范围。比如“0 5 * * 1-6命令”,代表在周一到周六的凌晨5点0分执行命令 |
*/n | 代表每隔多久执行一次。比如“*/10 * * * * 命令”,代表每隔10分钟就执行一遍命令 |
(3)特定时间执行命令
时间 | 含义 |
---|---|
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 3 1 命令 | 每月1号和15号,每周1的0点0分都会执行命令。注意:星期几和几号最好不要同时出现,因为他们定义的都是天。非常容易让管理员混乱。 |
(四) 案例实操
每月的1号、15号、30号,上午6点30分执行命令将/opt/software中的文件拷贝到/opt/module中
1、进入编辑页面
2、编辑任务
30 6 1,15,30 * * cp -avr /opt/software/* /opt/module
(2)特殊符号
特殊符号 | 含义 |
---|---|
* | 代表任何时间。比如第一个“*”就代表一小时中每分钟都执行一次的意思。 |
, | 代表不连续的时间。比如“0 8,12,16 * * * 命令”,就代表在每天的8点0分,12点0分,16点0分都执行一次命令 |
- | 代表连续的时间范围。比如“0 5 * * 1-6命令”,代表在周一到周六的凌晨5点0分执行命令 |
*/n | 代表每隔多久执行一次。比如“*/10 * * * * 命令”,代表每隔10分钟就执行一遍命令 |
(3)特定时间执行命令
时间 | 含义 |
---|---|
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 3 1 命令 | 每月1号和15号,每周1的0点0分都会执行命令。注意:星期几和几号最好不要同时出现,因为他们定义的都是天。非常容易让管理员混乱。 |
(四) 案例实操
每月的1号、15号、30号,上午6点30分执行命令将/opt/software中的文件拷贝到/opt/module中
1、进入编辑页面
2、编辑任务
30 6 1,15,30 * * cp -avr /opt/software/* /opt/module
十五、文档编辑类
(一)wc:计算指定文件的行数、字数,以及字节数
语法:wc [参数] 文件
选项/参数:
- -c或–bytes或–chars 只显示Bytes数。
- -l或–lines 只显示行数。
- -w或–words 只显示字数。
- –help 在线帮助。
- –version 显示版本信息。
未完待续……