跳转至

常用命令

启动、重启、关闭服务


点击这里,看视频讲解,学习下面内容

Linux上有些软件程序是以服务的形式安装的,比如 ssh 服务、 MySQL服务、 防火墙 服务等。

这些 软件 的启动、重启、关闭 要使用特殊的命令

在centos 7 系统上,使用命令 systemctl 来 启动、重启、关闭 服务。

比如,

要查看 MySQL服务 mysqld状态, 执行命令 systemctl status mysqld

要启动 MySQL服务 mysqld, 执行命令 systemctl start mysqld

要重启 MySQL服务 mysqld, 执行命令 systemctl restart mysqld

要关闭 MySQL服务 mysqld, 执行命令 systemctl stop mysqld


打包与压缩


点击这里,看视频讲解,学习下面内容

打包

Linux下打包的最常用命令是tar 命令,可将多个文件、目录打包到一个文件中。

  • tar 命令打包

下面是使用tar命令打包的操作演示:

在当前工作目录下面创建3个文件,使用下列命令:

touch  123.txt  456.txt  789.txt

将这3个文件放到一个文件包files.tar,使用下列命令:

tar  cvf  files.tar  123.txt   456.txt  789.txt

也可以使用通配符,如 *.txt,这样的格式代表以txt结尾的文件

tar  cvf  files1.tar   *.txt  


tar命令同样可以打包目录,假设 当前目录下 byhy是一个子目录,byhy.txt是一个文件

tar cvf byhy.tar  ./byhy  byhy.txt

这个命令就把目录 byhy 和 文件 byhy.txt 都 打包到 文件 byhy.tar 中了。


  • tar 命令解包

要 将 上面创建的 files1.tar 解压到当前目录,使用下列命令:

tar  xvf   files.tar 


  • 查看tar 包内容

如果只是想查看 上面创建的 files1.tar 内容,使用下列命令:

tar  tvf   files.tar 


  • 往tar 包中添加文件

如果想 在 files1.tar中 添加 新文件 newfile,使用下列命令:

tar  rvf  files.tar  newfile

注意:tar命令只是把文件、目录打包到一个文件中。 并不会压缩文件


压缩


点击这里,看视频讲解,学习下面内容

  • gzip 压缩 和解压

gzip命令用于文件的压缩与解压缩,压缩后的文件名后缀为“.gz”

比如

要 压缩文件abc.txt ,执行命令

gzip abc.txt
这样就产生了一个名为 abc.txt.gz 的压缩后的文件

要 解压文件abc.txt.gz,执行命令

gzip -d abc.txt.gz


  • gzip 和 tar 的联合使用

tar工具与gzip工具联合使用,实现打包并压缩、解压缩并解包功能

假设 在当前目录有如下3个文件 touch 111.txt 222.txt 333.txt

我们要,打包并压缩这3个文件,放到压缩包文件 byhy.tar.gz里面,使用下面命令:

tar zcvf   byhy.tar.gz   *.txt 

解压缩并解包,使用下面命令:

tar zxvf  byhy.tar.gz 


● bzip2、zip 压缩、解压

bzip2 和 zip 也是常见的压缩解压工具, 使用方法和 gzip 类似

如下

---------------------------------------------
.bz2
解压1:bzip2 -d FileName.bz2
解压2:bunzip2 FileName.bz2
压缩: bzip2 -z FileName
.tar.bz2
解压:tar jxvf FileName.tar.bz2
压缩:tar jcvf FileName.tar.bz2 DirName
---------------------------------------------
.zip
解压:unzip FileName.zip
压缩:zip -r FileName.zip DirName
---------------------------------------------

注意:如果你的Linux上没有安装 bzip2、zip、unzip,可以执行命令 yum install bzip2 zip unzip 来安装

您需要高效学习,找工作? 点击咨询 报名实战班

点击查看学员就业情况

安装软件包


点击这里,看视频讲解,学习下面内容

在 CentOS上,安装软件通常有如下几种方式

下载源代码包,编译安装

这种源代码包,通常都是放在以 tar.gz tar.bz2 为扩展名的压缩包中。

源代码包里面的大都是 c语言代码文件,需要编译后才能安装。

我们 以python3.6 为例,讲解一下,如何安装。

  • 执行下面的命令,安装Python3.6必需的库

yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel

  • 下载 python3 源代码包

执行命令 wget https://www.python.org/ftp/python/3.6.8/Python-3.6.8.tgz

  • 解压代码包

执行命令 tar zxf Python-3.6.8.tgz

  • 安装编译器gcc

如果你的Linux上还没有安装gcc编译器,执行命令 yum install gcc 安装

  • 配置、编译、安装

先进入到解压后的python代码目录

cd Python-3.6.8 

依次执行下面的2个命令进行配置和编译、安装

./configure ; 
make && make install

下载rpm包,使用rpm工具安装

CentOS上也经常使用rpm 命令安装软包。

当我们有rpm软件包,就可以使用rpm命令安装

  • 安装

使用命令

rpm -ivh rpm软件包名

比如, rpm -ivh software-1.2.3-1.i386.rpm

  • 卸载

使用命令

rpm -e 软件名 

不过要注意的是,后面使用的是软件名,而不是软件包名。

例如,要安装software-1.2.3-1.i386.rpm这个包时,应执行:

rpm -ivh software-1.2.3-1.i386.rpm 

而当卸载时,则应执行:

rpm -e software

YUM安装

YUM 是 在Fedora、RedHat、SUSE、CentOS中常见的一种安装方式rpm软件方式。

能够从指定的 yum 源服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。


CentOS 缺省的 yum 源服务器 在国外,访问往往是有问题的。

请大家修改yum源为国内的,比如清华大学的 yum 仓库

yum源设置方法, 点击参考这里


yum 命令用法

  • yum install package1 安装指定的安装包package1

  • yum list 显示所有已经安装和可以安装的程序包

  • yum list installed 显示所有已经安装的程序包

  • yum list package1 显示指定程序包安装情况package1

  • yum remove package1 删除程序包package1


top 查看系统进程的动态运行情况


点击这里,看视频讲解,学习下面内容

执行top命令可以查看 当前系统中,运行的进程的信息,比如

[root@localhost ~]# top

top - 14:01:00 up 15:52,  2 users,  load average: 0.00, 0.01, 0.05
Tasks:  97 total,   1 running,  96 sleeping,   0 stopped,   0 zombie
%Cpu(s):  0.0 us,  0.0 sy,  0.0 ni, 99.7 id,  0.0 wa,  0.0 hi,  0.3 si,  0.0 st
KiB Mem :  2895572 total,  2507692 free,   118824 used,   269056 buff/cache
KiB Swap:  3145724 total,  3145724 free,        0 used.  2598756 avail Mem

  PID USER      PR  NI    VIRT    RES    SHR S %CPU %MEM     TIME+ COMMAND
 2041 root      20   0       0      0      0 S  0.3  0.0   0:03.60 kworker/0:3
    1 root      20   0  127960   6580   4104 S  0.0  0.2   0:01.91 systemd
    2 root      20   0       0      0      0 S  0.0  0.0   0:00.01 kthreadd
    3 root      20   0       0      0      0 S  0.0  0.0   0:00.29 ksoftirqd/0
    5 root       0 -20       0      0      0 S  0.0  0.0   0:00.00 kworker/0:0H
    6 root      20   0       0      0      0 S  0.0  0.0   0:00.05 kworker/u2:0
    7 root      rt   0       0      0      0 S  0.0  0.0   0:00.00 migration/0
    8 root      20   0       0      0      0 S  0.0  0.0   0:00.00 rcu_bh
    9 root      20   0       0      0      0 S  0.0  0.0   0:01.94 rcu_sched
   10 root       0 -20       0      0      0 S  0.0  0.0   0:00.00 lru-add-dra+
   11 root      rt   0       0      0      0 S  0.0  0.0   0:00.48 watchdog/0
   13 root      20   0       0      0      0 S  0.0  0.0   0:00.00 kdevtmpfs
   14 root       0 -20       0      0      0 S  0.0  0.0   0:00.00 netns
   15 root      20   0       0      0      0 S  0.0  0.0   0:00.01 khungtaskd
   16 root       0 -20       0      0      0 S  0.0  0.0   0:00.00 writeback
   17 root       0 -20       0      0      0 S  0.0  0.0   0:00.00 kintegrityd
   18 root       0 -20       0      0      0 S  0.0  0.0   0:00.00 bioset

● CPU 整体负载

在这行显示了 CPU 整体负载

Cpu(s):  0.0 us,  0.0 sy,  0.0 ni, 99.7 id,  0.0 wa,  0.0 hi,  0.3 si,  0.0 st

● 各个CPU 的负载(按键盘1,可以在整体cpu和所有cpu之间切换)

Cpu0  :  0.3%us,  0.3%sy,  0.0%ni, 97.7%id,  1.3%wa,  0.0%hi,  0.3%si,  0.0%st
Cpu1  :  0.0%us,  0.0%sy,  0.0%ni,100.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu2  :  0.0%us,  0.3%sy,  0.0%ni, 99.7%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Cpu3  :  0.0%us,  0.0%sy,  0.0%ni,100.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
  • 进程的CPU占用

缺省情况下,进程列表里就是按CPU占用率来排序的。

如果不是,可以按快捷键大写的P要求top按照CPU占用率来排序。(按b,再按x可以显示当前排序列)

  • 整体内存使用量
KiB Mem :  2895572 total,  2507692 free,   118824 used,   269056 buff/cache
KiB Swap:  3145724 total,  3145724 free,        0 used.  2598756 avail Mem

注意:上面显示 2507692 free,并非只有 2507692 的内存可用。

因为 buffer 和 cache 部分的内存都是临时缓存用了, 其实也是可用的内存

实际可用的内存大概是 free + buffers + cached

  • 各个进程对内存的占用(RES)

按快捷键大写的 M 可以 对进程列表按照内存使用率来排序


查看系统内存使用情况

free命令可以显示Linux系统中空闲的、已用的物理内存及swap内存,及被内核使用的buffer。

[root@localhost ~]# free -m
              total        used        free      shared  buff/cache   available
Mem:           2827         115        2449           8         262        2538
Swap:          3071           0        3071

查看设置系统时间

date 可以用来显示或设定系统的日期与时间。

  • 显示当前日期和时间
[byhy@localhost ~]$ date
Mon Nov 7  23:25:05 PST 2018
  • 设定日期
# date -s 20161109
  • 设定时间
# date -s 21:05:50

查看系统版本

  • 执行命令 uname –a 查看系统内核版本信息
[root@localhost ~]# uname -a
Linux bogon 3.10.0-862.el7.x86_64 #1 SMP Fri Apr 20 16:44:24 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux

其中3.10.0 为Linux内核的版本。

  • 执行命令 cat /etc/redhat-release 查看Linux系统版本信息
[root@localhost ~]# cat /etc/redhat-release
CentOS Linux release 7.5.1804 (Core)

其中,显示Linux发行版本为 CentOS Linux 7.5.1804 版本


作业和练习

请使用 root 账号本机直接登录登录 Linux,依次执行下面的操作

  • root 账号本机直接登录 Linux,根据你Linux主机的版本,使用适当的命令 关闭,启动,重启 sshd服务。

看看关闭后,远程PuTTY登录是否中断了连接。再次启动sshd服务后,远程PuTTY是否可以重新登录。

  • 前面的练习,我们创建了一个byhy用户,请执行命令,讲该用户的home目录下所有内容打包并压缩到 byhy.tar.bz2,然后远程传输到你的Windows主机中保存备份。

再想办法,把Windows主机中备份的 byhy.tar.bz2 文件远程传输到 Linux主机的 root用户 home目录,创建一个子目录byhy,解压bz2文件中所有的内容到 这个byhy目录中。

  • 在网上 查询一下 如何 在Linux上以源代码包的方式,下载安装Python3.6,根据指示,进行操作。

在网上查询如何 使用 yum 方式安装 vim,进行操作。安装好以后,执行vim,确保安装成功。

  • 使用命令,查看当前系统中CPU占用率最高的5个进程,再查看内存占用最高的5个进程

  • 查看当前主机的时间,和你手机的时间是否一致, 再使用命令,把当前系统的时间调整和手机时间一模一样。

  • 查看你的CentOS Linux系统的 版本号 和内核版本号。