Linux系统常用命令

Posted Mr.韩

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux系统常用命令相关的知识,希望对你有一定的参考价值。

linux 

    001第二部分

Linux系统常用命令

Linux命令的通用格式

       命令字 [命令选项] [命令参数]

命令中所有字符区分大小写

命令选项分为短格式(-)及长格式(--

必须在命令行提示符下输入命令

命令中的各个部分至少需要一个空格分隔

命令总是以回车符作为结束并开始执行

基础命令操作-1

uname r   显示内核版本   

uname 查看系统架构

halt        停机

poweroff 关闭电源

shutdown h now       关机

reboot    重启

shutdown r now 重启

logout    注销

exit         退出

echo  在终端显示命令行中键入的任何信息:echo ni hao,显示ni hao

若在一行上需要同时执行2条以上命令是用“;”分隔

基础命令操作-2

date +%Y%m%d         显示日期

date +%H:%M        显示时间

date -s mm/dd/yyyy hh:mm:ss      修改日期时间

date +%Y%m%d --date=-1 day“ 得到昨天的日期

cal [month] [year] 显示日历

bc   计算器 

+ - * / % ^    运算功能

scale=n  小数位数(只适用于除法)

quit        退出

clear                 清屏

基础命令操作-3

grep  MemTotal  /proc/meminfo  --检查内存空间

grep  SwapTotal  /proc/meminfo  --检查交换分区

free 检查当前可用的内存和交换分区(free -h

df  -h  /usr 检查磁盘共享空间

fdisk -l  查看硬盘空间

cat  /etc/issue 软件版本与内核版本检测

rpm -qa|grep binutils 检验binutils(工具包)是否安装

获得命令帮助

shell命令(内置命令)是Linux系统中使用频率最高的一类命令 。

注:BashLinux系统中默认使用的shell程序。

显示Bash的命令列表:help

获得单独的Bash命令的帮助信息:help <命令字 help pwd

只显示命令的格式信息:help -s <命令字help s pwd

Linux系统中的大多数命令都属于非shell命令,即“外部命令”:

       <命令字>  --help

无论是shell命令还是非shell命令,都提供手册页形式的帮助信息:man <命令字>,通过↑、↓、PgUpPgDnq键操作

信息页是Linux中提供的与手册页类似的另一种帮助信息的形式:  info <命令字>

注意:直接输入info命令,显示info说明信息,通过↑、↓、PgUpPgDnq键操作

文件和目录的操作命令

       显示当前工作目录 命令

pwd

print working directory

列表目录命令:

格式: ls  [参数]   用于显示文件或目录信息

选项: -l  每行显示一个文件和目录信息(长格式),简写:ll等同于ls -l

注意:当参数是文件时,显示此文件全部信息

当参数是目录时,显示此目录内文件及子目录信息

若要显示指定目录的详细信息 ,在“l(这是英文l)后面加”d” 。

更改当前工作目录命令 

cd <目录名>  

change directory

若无参数,则返回宿主目录,否则切换到指定参数目录

上级目录:..

当前目录:.

根目录:/

注意:

相对路径是以“.”或“..”开始的目录路径表示形式

绝对路径是以“/”开始的目录路径表示形式

新建目录命令:

mkdir <目录名>

make directory

选项:-p  自动创建不存在的父目录

注意:一个mkdir 可同时创建多个目录,用空格分隔

修改文件名

mv 源文件名  新文件名

删除目录命令

rmdir <目录名>

remove directory

选项:-p  自动删除父目录

注意:一个 rmdir 可同时删除多个空目录,用空格分隔

新建空文件命令

touch <文件名>

可同时创建多个文件

注意:

当文件不存在时,创建大小为0的空文件

当文件存在时,则只更新该文件的时间属性

复制文件命令

cp <source> <dest>

cp <source.....> directory

可同时将多个文件复制到指定目录

cp -r srcdirectory desdirectory

可将原目录及其子目录复制到目标目录

删除文件命令

rm <文件名......>

注意:一个rm 可同时删除多个文件,用空格分开

rm -r 可删除非空目录(recurse)

rm -f 删除时不提示

rm -rf 强制删除(force)

文件移动与重命名

mv  <source>  <des>

CP命令使用相同

注意

当源文件与目标文件在同一目录下,视为重命名

文件查找命令:find <path> -name <file>

在指定目录下查找指定文件

注意:

文件名中可用“*”和“?”

* 表示0到多个字符

?表示一个字符

文件类型查看命令

file <文件名>

注意:Linux中无文件扩展名,无法知其文件类型,所以常用此命令

文本文件查看命令:

cat    使用单屏查看文本文件

more 分屏查看

h(帮助)  space(下翻屏)  b(上翻屏)  enter(下一行) q键(退出)

less   分屏查看

e(下一行)  y(上一行)  f(下翻页)  b(上翻页)  q(退出)

head   -# head -2

tail   -# tail -2   

用户(组)管理命令

       用户信息文件: /etc/passwd

可通过cat    /etc/passwd 进行查看

用户密码文件: /etc/shadow

可通过cat    /etc/shadow 进行查看

添加用户:useradd 用户名

使用passwd设置密码 :passwd  用户名

注意:若无<username>则默认为root修改密码

查看当前用户: whoami   /   who am i

查看所有已登录用户:who

查看所有登录用户记录:last

切换用户:su  <username>

禁止/解禁用户:usermod [-L|-U] <username>

删除用户: userdel [-r] <username>

用户组信息文件 /etc/group

添加用户组:groupadd <groupname>

创建用户时指定用户初始组

useradd -g <initial_group>  <username>

修改用户所在初始组

usermod -g  <groupname>  <username>

查看用户所属组:groups <username>

删除用户组:groupdel  <groupname>

write <user> 向指定用户发送信息

注:ctrl+d结束编辑

wall ‘<info>’ 向所有用户发送信息

mesg <n/y> 拒绝或接收发送的信息

注:对于root管理员无效

查看文件权限:ll <file> 

第一位,文件类型:“-”普通文件  d”目录   l”链接 “b”块(硬盘等设备)

第二---四位,属主权限:“r”读取权限 “w”编写权限 “x”执行权限 “-”无权限

第五---b七位,属组权限:

后三位,其他用户权限:

查看文件/目录的权限和归属

      

文件权限的设置

更改文件权限:chmod [ugoa][+-=][rwx] <file> (用逗号分隔),例:”chmod u+w file”

更改文件所有者:chown <owner> <file> -R 是修改子目录

更改文件所属组:chgrp <group> <file>

同时更改所有者和所属组:

chown <owner:group> <file>

chmod的扩展使用

chmod u+x j2sdk-1_4_2_04-linux-i586.bin

chmod linux中用来改变文件或目录的权限

u 指的是文件的拥有者,即user

+x 让该文件有可运行的权限

连起来就是,给当前目录下的j2sdk-1_4_2_04-linux-i586.bin 的所有者添加可执行权限。其他用户依然没有执行权限

分别表示UserGroup、及OtherAll的权限

若要rwx属性则4+2+1=7
若要rw-属性则4+2=6
若要r-x属性则4+1=7

chmod a=rwx file chmod 777 file效果相同
chmod ug=rwx,o=x file
chmod 771 file效果相同
若用chmod 4755 filename可使此程式具有root的权限

第四部分
Linux
系统文本编辑

vi编辑器

vi编辑器是Linux系统中使用最广泛的,而且是默认的文本编辑器,如还有emacs

Vim 高级编辑

文本编辑器的作用:

修改系统配置文件

创建用户信息文件

编辑程序源代码文件

 

 

vi编辑器基本操作

打开或新建文件:vi <file>

编辑文件:i ,或者o ,或者a,或者r

继续打开新文件: :e <file>

读取文件内容到当前文件: :r <file>

保存文件: :w <file>(有另存为功能)

退出编辑器:

:q(已保存或未更改)

:wq(保存后退出)

:q!(强制退出)

vi中的光标移动操作

       光标方向移动在命令模式下:

k()

j()

h()

l()

翻页操作:

ctrl+b   (前一页)

ctrl+f    (后一页)

ctrl+u   (前半页)

ctrl+d   (后半页)

行内快速跳转:

^ 行首

$ 行尾

后一个单词首字母

前一个单词首字母

后一个单词尾字母

#

行间快速跳转:

: set  nu    显示行号

: set  nonu  取消行号

1G 文件首行

 #G  转到#

G文件末行

vi基本操作

删除操作:

x            删除后一个字符

X         删除前一个字符

dd   删除光标所在行

dw        删除光标至词首

de         删除光标至词尾

d$       删除光标至行尾

d^   删除光标至行首  

#,如3dd3就是这里说的#

撤销操作: u

复制操作:

yy        复制光标所在行

yw   复制光标所在单词

y$          复制光标至行尾

y^          复制光标至行首

yG   复制光标至文尾

y1G 复制光标至文首

粘贴操作:

p            粘贴在光标所在行之后

P         粘贴在光标所在行之前

查找与替换(末行命令)

查找: 

由”/”或者”?”开始后跟一个word 

n键查找后一个

N键查找前一个

替换:

set fileencoding=utf8

:mn s/old/new/gc    m,n表示从第几行到第几执行替换

多文件操作:

创建/打开多个文件:vi file1 file2 ......

查看当前文件: : args

文件切换:

:first

:last 

:next

:prev

第五部分
Linux
系统基本网络配置

网络配置

Linux操作系统中,主机的的网络接口卡(网卡/NIC)通常称为“网络接口”

查看活动网络接口信息命令:

ifconfig [网络接口名称]

ipaddr (centos7查看ip命令)

注意:

“eth0”Linux系统中第一块以太网卡名称 。

“lo”Linux系统中的回环网络接口,它不代表真正的网络接口,而是一个虚拟的网络接口,IP永远是“127.0.0.1”,通常用于对本机的网络测试,这样在主机没有物理网络接口或网络接口尚未激活时使Linux系统依然可完成网络的相关操作。

查看当前主机名称:

hostname

查看默认网关:

route

测试与其他主机的网络连接:

ping  [-c 测试数据包数量目的主机IP

或者 ping  目的主机IP     [-c 测试数据包数量]

测试与其他主机的网络连接路径:

traceroute    目的主机

DHCP网络配置命令:

dhclient(自动分配IP)

设置主机名称

hostname  主机名称

人工网络配置命令:

ifconfig  网络接口名称  ip地址  [netmask 子网掩码]

设置默认网关:

route   <add/del>   default  gw 默认网关地址

本地主机名称解析文件:/etc/hosts

域名服务器配置文件:/etc/resolv.conf

使配置生效:

ifdown NIC; ifup NIC

service network restart

注意:以上方法是临时设置的

下面方法是长久生效:

netconfig | setup

网络配置文件:

/etc/sysconfig/network-scripts/ifcfg-eth0

重启网络服务

service network restart

配置固定IP

进入/etc/sysconfig/network-scripts文件下,修改ifcfg-eth0这个文件。(红色字体不可以修改)

 

防火墙的关闭和开启

1) 重启后生效

开启: chkconfig iptables on

关闭: chkconfig iptables off

2) 即时生效,重启后失效

开启: service iptables start

关闭: service iptables stop

需要说明的是对于Linux下的其它服务都可以用以上命令执行开启和关闭操作。

在开启了防火墙时,做如下设置,开启相关端口, 修改/etc/sysconfig/iptables 文件,添加以下内容:

-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT

-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT

Centos7防火墙

查看服务状态

systemctl status firewalld

查看状态

firewall-cmd --state

开启、重启、关闭

# 开启

service firewalld start

# 重启

service firewalld restart

# 关闭

service firewalld stop

查看防火墙规则

firewall-cmd --list-all

查询、开放、关闭端口

# 查询端口是否开放

firewall-cmd --query-port=8080/tcp

# 开放80端口

firewall-cmd --permanent --add-port=80/tcp

# 移除端口

firewall-cmd --permanent --remove-port=8080/tcp

 

#重启防火墙(修改配置后要重启防火墙)

firewall-cmd --reload

 

# 参数解释

1firwall-cmd:是Linux提供的操作firewall的一个工具;

2--permanent:表示设置为持久;

3--add-port:标识添加的端口;

 

 

 

 

 

 

 

安装docker

yum install docker

安装后查看Docker版本

docker -v

启动与停止Docker

systemctl命令是系统服务管理器指令,它是 service chkconfig 两个命令组合。

启动dockersystemctl start docker

查看docker状态:systemctl status docker

停止dockersystemctl stop docker

重启dockersystemctl restart docker

开机启动:systemctl enable docker

查看docker概要信息:docker info

查看docker帮助文档:docker --help

列出docker下的所有镜像:

docker images

搜索镜像

docker search 镜像名称

删除镜像

docker rmi $IMAGE_ID:删除指定镜像

docker rmi `docker images -q`:删除所有镜像

查看正在运行容器(-a所有,-l最后运行,-f exited停止

docker ps

docker ps –a

docker ps –l

docker ps -f status=exited

创建一个交互式容器并取名为mycentos

docker run -it --name=mycentos centos:7 /bin/bash

守护式容器

docker run -di --name=mycentos2 centos:7

目录挂载

docker run -di -v /usr/local/myhtml:/usr/local/myhtml --name=mycentos2 centos:7

查看容器IP地址

docker inspect mycentos2

docker inspect --format=‘{{.NetworkSettings.IPAddress}}‘ mycentos2

删除容器

只能删除停止的容器

docker rm $CONTAINER_ID/NAME

 

docker rm `docker ps -a -q` (删除所有)

 

2.1 mysql部署

拉取镜像(可省略

docker pull mysql

创建MySQL容器

docker run -di --name aisile_mysql -p 33306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql

-p 代表端口映射,格式为  宿主机映射端口:容器运行端口

-e 代表添加环境变量  MYSQL_ROOT_PASSWORDroot用户的登陆密码

进入mysql容器

docker exec -it aisile_mysql /bin/bash

登录

mysql -u root -p

进入容器查看状态

mysql> status;

mysql  Ver 8.0.11 for Linux on x86_64 (MySQL Community Server - GPL)

进行授权远程连接(注意mysql 8.0跟之前的授权方式不同)

GRANT ALL ON *.* TO ‘root‘@‘%‘;

刷新权限

flush privileges;

更改加密规则

ALTER USER ‘root‘@‘localhost‘ IDENTIFIED BY ‘password‘ PASSWORD EXPIRE NEVER;

更新root用户密码

ALTER USER ‘root‘@‘%‘ IDENTIFIED WITH mysql_native_password BY ‘123456‘;

刷新权限

flush privileges;

拉取镜像(可省略

docker pull tomcat:7-jre7

创建容器

docker run -di --name=aisile_tomcat -p 9000:8080 -v /usr/local/myhtml:/usr/local/tomcat/webapps --privileged=true tomcat:7-jre7

我们在宿主机“/usr/local/myhtml”目录下导入web项目(WEB-INFhello.html),重启docker tomcat通过ip访问

docker restart aisile_tomcat

 

浏览器访问 http://192.168.75.146:9000/hello.html

拉取镜像(可省略)

docker pull rabbitmq:management

创建容器

rabbitmq需要有映射以下端口:  5671   5672  4369  15671   15672   25672

15672 (if management plugin is enabled)

15671 management监听端口

5672, 5671 (AMQP 0-9-1 without and with TLS)

4369 (epmd) epmd代表 Erlang 端口映射守护进程

25672 (Erlang distribution)

docker run -di --name=aisile_rabbitmq -p 5671:5671 -p 5672:5672 -p 4369:4369 -p 15671:15671 -p 15672:15672 -p 25672:25672 rabbitmq:management

访问 http://192.168.75.146:15672/

 

 

 

Docker mysql创建

docker run -di --name XXXX -p 3307:3306 -e MYSQL_ROOT_PASSWORD=8520 mysql:5.6.43

Docker

systemctl stop docker

Docker

systemctl start docker

启动对应容器

docker start 841cb7876d4f

第二部分
Linux
系统常用命令

Linux命令的通用格式

       命令字 [命令选项] [命令参数]

命令中所有字符区分大小写

命令选项分为短格式(-)及长格式(--

必须在命令行提示符下输入命令

命令中的各个部分至少需要一个空格分隔

命令总是以回车符作为结束并开始执行

基础命令操作-1

uname r   显示内核版本   

uname 查看系统架构

halt        停机

poweroff 关闭电源

shutdown h now       关机

reboot    重启

shutdown r now 重启

logout    注销

exit         退出

echo  在终端显示命令行中键入的任何信息:echo ni hao,显示ni hao

若在一行上需要同时执行2条以上命令是用“;”分隔

基础命令操作-2

date +%Y%m%d         显示日期

date +%H:%M        显示时间

date -s mm/dd/yyyy hh:mm:ss      修改日期时间

date +%Y%m%d --date=-1 day“ 得到昨天的日期

cal [month] [year] 显示日历

bc   计算器 

+ - * / % ^    运算功能

scale=n  小数位数(只适用于除法)

quit        退出

clear                 清屏

基础命令操作-3

grep  MemTotal  /proc/meminfo  --检查内存空间

grep  SwapTotal  /proc/meminfo  --检查交换分区

free 检查当前可用的内存和交换分区(free -h

df  -h  /usr 检查磁盘共享空间

fdisk -l  查看硬盘空间

cat  /etc/issue 软件版本与内核版本检测

rpm -qa|grep binutils 检验binutils(工具包)是否安装

获得命令帮助

shell命令(内置命令)是Linux系统中使用频率最高的一类命令 。

注:BashLinux系统中默认使用的shell程序。

显示Bash的命令列表:help

获得单独的Bash命令的帮助信息:help <命令字 help pwd

只显示命令的格式信息:help -s <命令字help s pwd

Linux系统中的大多数命令都属于非shell命令,即“外部命令”:

       <命令字>  --help

无论是shell命令还是非shell命令,都提供手册页形式的帮助信息:man <命令字>,通过↑、↓、PgUpPgDnq键操作

信息页是Linux中提供的与手册页类似的另一种帮助信息的形式:  info <命令字>

注意:直接输入info命令,显示info说明信息,通过↑、↓、PgUpPgDnq键操作

文件和目录的操作命令

       显示当前工作目录 命令

pwd

print working directory

列表目录命令:

格式: ls  [参数]   用于显示文件或目录信息

选项: -l  每行显示一个文件和目录信息(长格式),简写:ll等同于ls -l

注意:当参数是文件时,显示此文件全部信息

当参数是目录时,显示此目录内文件及子目录信息

若要显示指定目录的详细信息 ,在“l(这是英文l)后面加”d” 。

更改当前工作目录命令 

cd <目录名>  

change directory

若无参数,则返回宿主目录,否则切换到指定参数目录

上级目录:..

当前目录:.

根目录:/

注意:

相对路径是以“.”或“..”开始的目录路径表示形式

绝对路径是以“/”开始的目录路径表示形式

新建目录命令:

mkdir <目录名>

make directory

选项:-p  自动创建不存在的父目录

注意:一个mkdir 可同时创建多个目录,用空格分隔

修改文件名

mv 源文件名  新文件名

删除目录命令

rmdir <目录名>

remove directory

选项:-p  自动删除父目录

注意:一个 rmdir 可同时删除多个空目录,用空格分隔

新建空文件命令

touch <文件名>

可同时创建多个文件

注意:

当文件不存在时,创建大小为0的空文件

当文件存在时,则只更新该文件的时间属性

复制文件命令

cp <source> <dest>

cp <source.....> directory

可同时将多个文件复制到指定目录

cp -r srcdirectory desdirectory

可将原目录及其子目录复制到目标目录

删除文件命令

rm <文件名......>

注意:一个rm 可同时删除多个文件,用空格分开

rm -r 可删除非空目录(recurse)

rm -f 删除时不提示

rm -rf 强制删除(force)

文件移动与重命名

mv  <source>  <des>

CP命令使用相同

注意

当源文件与目标文件在同一目录下,视为重命名

文件查找命令:find <path> -name <file>

在指定目录下查找指定文件

注意:

文件名中可用“*”和“?”

* 表示0到多个字符

?表示一个字符

文件类型查看命令

file <文件名>

注意:Linux中无文件扩展名,无法知其文件类型,所以常用此命令

文本文件查看命令:

cat    使用单屏查看文本文件

more 分屏查看

h(帮助)  space(下翻屏)  b(上翻屏)  enter(下一行) q键(退出)

less   分屏查看

e(下一行)  y(上一行)  f(下翻页)  b(上翻页)  q(退出)

head   -# head -2

tail   -# tail -2   

用户(组)管理命令

       用户信息文件: /etc/passwd

可通过cat    /etc/passwd 进行查看

用户密码文件: /etc/shadow

可通过cat    /etc/shadow 进行查看

添加用户:useradd 用户名

使用passwd设置密码 :passwd  用户名

注意:若无<username>则默认为root修改密码

查看当前用户: whoami   /   who am i

查看所有已登录用户:who

查看所有登录用户记录:last

切换用户:su  <username>

禁止/解禁用户:usermod [-L|-U] <username>

删除用户: userdel [-r] <username>

用户组信息文件 /etc/group

添加用户组:groupadd <groupname>

创建用户时指定用户初始组

useradd -g <initial_group>  <username>

修改用户所在初始组

usermod -g  <groupname>  <username>

查看用户所属组:groups <username>

删除用户组:groupdel  <groupname>

write <user> 向指定用户发送信息

注:ctrl+d结束编辑

wall ‘<info>’ 向所有用户发送信息

mesg <n/y> 拒绝或接收发送的信息

注:对于root管理员无效

查看文件权限:ll <file> 

第一位,文件类型:“-”普通文件  d”目录   l”链接 “b”块(硬盘等设备)

第二---四位,属主权限:“r”读取权限 “w”编写权限 “x”执行权限 “-”无权限

第五---b七位,属组权限:

后三位,其他用户权限:

查看文件/目录的权限和归属

      

文件权限的设置

更改文件权限:chmod [ugoa][+-=][rwx] <file> (用逗号分隔),例:”chmod u+w file”

更改文件所有者:chown <owner> <file> -R 是修改子目录

更改文件所属组:chgrp <group> <file>

同时更改所有者和所属组:

chown <owner:group> <file>

chmod的扩展使用

chmod u+x j2sdk-1_4_2_04-linux-i586.bin

chmod linux中用来改变文件或目录的权限

u 指的是文件的拥有者,即user

+x 让该文件有可运行的权限

连起来就是,给当前目录下的j2sdk-1_4_2_04-linux-i586.bin 的所有者添加可执行权限。其他用户依然没有执行权限

分别表示UserGroup、及OtherAll的权限

若要rwx属性则4+2+1=7
若要rw-属性则4+2=6
若要r-x属性则4+1=7

chmod a=rwx file chmod 777 file效果相同
chmod ug=rwx,o=x file
chmod 771 file效果相同
若用chmod 4755 filename可使此程式具有root的权限

第四部分
Linux
系统文本编辑

vi编辑器

vi编辑器是Linux系统中使用最广泛的,而且是默认的文本编辑器,如还有emacs

Vim 高级编辑

文本编辑器的作用:

修改系统配置文件

创建用户信息文件

编辑程序源代码文件

 

 

vi编辑器基本操作

打开或新建文件:vi <file>

编辑文件:i ,或者o ,或者a,或者r

继续打开新文件: :e <file>

读取文件内容到当前文件: :r <file>

保存文件: :w <file>(有另存为功能)

退出编辑器:

:q(已保存或未更改)

:wq(保存后退出)

:q!(强制退出)

vi中的光标移动操作

       光标方向移动在命令模式下:

k()

j()

h()

l()

翻页操作:

ctrl+b   (前一页)

ctrl+f    (后一页)

ctrl+u   (前半页)

ctrl+d   (后半页)

行内快速跳转:

^ 行首

$ 行尾

后一个单词首字母

前一个单词首字母

后一个单词尾字母

#

行间快速跳转:

: set  nu    显示行号

: set  nonu  取消行号

1G 文件首行

 #G  转到#

G文件末行

vi基本操作

删除操作:

x            删除后一个字符

X         删除前一个字符

dd   删除光标所在行

dw        删除光标至词首

de         删除光标至词尾

d$       删除光标至行尾

d^   删除光标至行首  

#,如3dd3就是这里说的#

撤销操作: u

复制操作:

yy        复制光标所在行

yw   复制光标所在单词

y$          复制光标至行尾

y^          复制光标至行首

yG   复制光标至文尾

y1G 复制光标至文首

粘贴操作:

p            粘贴在光标所在行之后

P         粘贴在光标所在行之前

查找与替换(末行命令)

查找: 

由”/”或者”?”开始后跟一个word 

n键查找后一个

N键查找前一个

替换:

set fileencoding=utf8

:mn s/old/new/gc    m,n表示从第几行到第几执行替换

多文件操作:

创建/打开多个文件:vi file1 file2 ......

查看当前文件: : args

文件切换:

:first

:last 

:next

:prev

第五部分
Linux
系统基本网络配置

网络配置

Linux操作系统中,主机的的网络接口卡(网卡/NIC)通常称为“网络接口”

查看活动网络接口信息命令:

ifconfig [网络接口名称]

ipaddr (centos7查看ip命令)

注意:

“eth0”Linux系统中第一块以太网卡名称 。

“lo”Linux系统中的回环网络接口,它不代表真正的网络接口,而是一个虚拟的网络接口,IP永远是“127.0.0.1”,通常用于对本机的网络测试,这样在主机没有物理网络接口或网络接口尚未激活时使Linux系统依然可完成网络的相关操作。

查看当前主机名称:

hostname

查看默认网关:

route

测试与其他主机的网络连接:

ping  [-c 测试数据包数量目的主机IP

或者 ping  目的主机IP     [-c 测试数据包数量]

测试与其他主机的网络连接路径:

traceroute    目的主机

DHCP网络配置命令:

dhclient(自动分配IP)

设置主机名称

hostname  主机名称

人工网络配置命令:

ifconfig  网络接口名称  ip地址  [netmask 子网掩码]

设置默认网关:

route   <add/del>   default  gw 默认网关地址

本地主机名称解析文件:/etc/hosts

域名服务器配置文件:/etc/resolv.conf

使配置生效:

ifdown NIC; ifup NIC

service network restart

注意:以上方法是临时设置的

下面方法是长久生效:

netconfig | setup

网络配置文件:

/etc/sysconfig/network-scripts/ifcfg-eth0

重启网络服务

service network restart

配置固定IP

进入/etc/sysconfig/network-scripts文件下,修改ifcfg-eth0这个文件。(红色字体不可以修改)

 

防火墙的关闭和开启

1) 重启后生效

开启: chkconfig iptables on

关闭: chkconfig iptables off

2) 即时生效,重启后失效

开启: service iptables start

关闭: service iptables stop

需要说明的是对于Linux下的其它服务都可以用以上命令执行开启和关闭操作。

在开启了防火墙时,做如下设置,开启相关端口, 修改/etc/sysconfig/iptables 文件,添加以下内容:

-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT

-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT

Centos7防火墙

查看服务状态

systemctl status firewalld

查看状态

firewall-cmd --state

开启、重启、关闭

# 开启

service firewalld start

# 重启

service firewalld restart

# 关闭

service firewalld stop

查看防火墙规则

firewall-cmd --list-all

查询、开放、关闭端口

# 查询端口是否开放

firewall-cmd --query-port=8080/tcp

# 开放80端口

firewall-cmd --permanent --add-port=80/tcp

# 移除端口

firewall-cmd --permanent --remove-port=8080/tcp

 

#重启防火墙(修改配置后要重启防火墙)

firewall-cmd --reload

 

# 参数解释

1firwall-cmd:是Linux提供的操作firewall的一个工具;

2--permanent:表示设置为持久;

3--add-port:标识添加的端口;

 

 

 

 

 

 

 

安装docker

yum install docker

安装后查看Docker版本

docker -v

启动与停止Docker

systemctl命令是系统服务管理器指令,它是 service chkconfig 两个命令组合。

启动dockersystemctl start docker

查看docker状态:systemctl status docker

停止dockersystemctl stop docker

重启dockersystemctl restart docker

开机启动:systemctl enable docker

查看docker概要信息:docker info

查看docker帮助文档:docker --help

列出docker下的所有镜像:

docker images

搜索镜像

docker search 镜像名称

删除镜像

docker rmi $IMAGE_ID:删除指定镜像

docker rmi `docker images -q`:删除所有镜像

查看正在运行容器(-a所有,-l最后运行,-f exited停止

docker ps

docker ps –a

docker ps –l

docker ps -f status=exited

创建一个交互式容器并取名为mycentos

docker run -it --name=mycentos centos:7 /bin/bash

守护式容器

docker run -di --name=mycentos2 centos:7

目录挂载

docker run -di -v /usr/local/myhtml:/usr/local/myhtml --name=mycentos2 centos:7

查看容器IP地址

docker inspect mycentos2

docker inspect --format=‘{{.NetworkSettings.IPAddress}}‘ mycentos2

删除容器

只能删除停止的容器

docker rm $CONTAINER_ID/NAME

 

docker rm `docker ps -a -q` (删除所有)

 

2.1 Mysql部署

拉取镜像(可省略

docker pull mysql

创建MySQL容器

docker run -di --name aisile_mysql -p 33306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql

-p 代表端口映射,格式为  宿主机映射端口:容器运行端口

-e 代表添加环境变量  MYSQL_ROOT_PASSWORDroot用户的登陆密码

进入mysql容器

docker exec -it aisile_mysql /bin/bash

登录

mysql -u root -p

进入容器查看状态

mysql> status;

mysql  Ver 8.0.11 for Linux on x86_64 (MySQL Community Server - GPL)

进行授权远程连接(注意mysql 8.0跟之前的授权方式不同)

GRANT ALL ON *.* TO ‘root‘@‘%‘;

刷新权限

flush privileges;

更改加密规则

ALTER USER ‘root‘@‘localhost‘ IDENTIFIED BY ‘password‘ PASSWORD EXPIRE NEVER;

更新root用户密码

ALTER USER ‘root‘@‘%‘ IDENTIFIED WITH mysql_native_password BY ‘123456‘;

刷新权限

flush privileges;

拉取镜像(可省略

docker pull tomcat:7-jre7

创建容器

docker run -di --name=aisile_tomcat -p 9000:8080 -v /usr/local/myhtml:/usr/local/tomcat/webapps --privileged=true tomcat:7-jre7

我们在宿主机“/usr/local/myhtml”目录下导入web项目(WEB-INFhello.html),重启docker tomcat通过ip访问

docker restart aisile_tomcat

 

浏览器访问 http://192.168.75.146:9000/hello.html

拉取镜像(可省略)

docker pull rabbitmq:management

创建容器

rabbitmq需要有映射以下端口:  5671   5672  4369  15671   15672   25672

15672 (if management plugin is enabled)

15671 management监听端口

5672, 5671 (AMQP 0-9-1 without and with TLS)

4369 (epmd) epmd代表 Erlang 端口映射守护进程

25672 (Erlang distribution)

docker run -di --name=aisile_rabbitmq -p 5671:5671 -p 5672:5672 -p 4369:4369 -p 15671:15671 -p 15672:15672 -p 25672:25672 rabbitmq:management

访问 http://192.168.75.146:15672/

 

 

 

Docker mysql创建

docker run -di --name XXXX -p 3307:3306 -e MYSQL_ROOT_PASSWORD=8520 mysql:5.6.43

Docker

systemctl stop docker

Docker

systemctl start docker

启动对应容器

docker start 841cb7876d4f

以上是关于Linux系统常用命令的主要内容,如果未能解决你的问题,请参考以下文章

Linux基础:简介安装常用命令和JDKMysqlTomcat的安装

Linux常用命令

Linux常用文件管理命令

图解Linux最常用命令!我是小白,秒懂!

linux常用命令

Linux常用监控系统命令