LINUX基础知识
I、Linux概述
linux是啥?
一套免费使用和自由传播的类Unix操作系统,是一个基于POSIX和Unix的多用户、多任务、支持多线程和多CPU的操作系统。它能运行主要的Unix工具软件、应用程序和网络协议。它支持32位和64位硬件。Linux继承了Unix以网络为核心的设计思想,是一个性能稳定的多用户网络操作系统。
linux可以做啥?
- Linux作为企业级服务器的应用
Linux系统可以为企业架构WWW服务器、数据库服务器、负载均衡服务器、邮件服务器、DNS服务器、代理服务器、路由器等,不但使企业降低了运营成本,同时还获得了Linux系统带来的高稳定性和高可靠性,且无须考虑商业软件的版权问题。 - 嵌入式Linux系统应用领域
由于Linux系统开放源代码,功能强大、可靠、稳定性强、灵活而且具有极大的伸缩性,再加上它广泛支持大量的微处理体系结构、硬件设备、图形支持和通信协议,因此,在嵌入式应用的领域里,从因特网设备(路由器、交换机、防火墙,负载均衡器)到专用的控制系统(自动售货机,手机,PDA,各种家用电器),LINUX操作系统都有很广阔的应用市场。特别是经过这几年的发展,它已经成功地跻身于主流嵌入式开发平台。 - 个人桌面Linux应用领域
所谓个人桌面系统,其实就是我们在办公室使用的个人计算机系统,例如:Windows xp、windows 7、Mac等。Linux系统在这方面的支持也已经非常好了,完全可以满足日常的办公及家长需求。
linux有啥特点?
-
免费、开源
Linux系统是通过公共许可协议GPL的自由软件。这种软件具有两个特点,一是开放源代码并免责提供,二是开发者可以根据自身需要自由修改、复制和发布程序的源码。因此,用户可以从互联网上很方便地免费下载并使用Linux操作系统,不需要担心版权问题。
-
良好的硬件平台可移植性
硬件平台可移植性是指将操作系统从一个硬件平台转移到另一个硬件平台时,只需改变底层的少量代码,无需改变自身的运行方式。Linux系统最早诞生于PC机环境,一系列版木都充分利用了X86 CPU的任务切换能力,使X86 CPU的效能发挥得淋漓尽致。另外,Linux系统几乎能在所有主流CPU搭建的体系结构上运行,包括 Intel/AMD、HP-PA、MIPS、Powerpc、 ULTRASPARC和 ALPHA等,其伸缩性超过了所有其他类型的操作系统。
-
完全符合POSIX标准
POSⅨ也称为可移植的Linux操作系统接口,是由ANSI和ISO制订的一种国际标准,它在源代码级别上定义了一组最小的Linux操作系统接口。Linux系统遵循这一标准,使得它和其他类型的Linux系统之间可以很方便地相互移植平台上的应用软件。
-
具有良好的图形用户界面
Linux系统具有类似于 Windows操作系统的图形界面,其名称是 X-Window系统。X- Window是一种起源于Linux操作系统的标准图形界而,它可以为用户提供一种具有多种窗口管理功能的对象集成环境。
-
具有强大的网络功能
由于Linux系统是依靠互联网平台迅速发展起来的,所以也具有强大的网络功能。它在内核中实现了 TCP/TP协议簇,提供了对 TCP/TP协议簇的支持。同时,它还可以支持其他各种类型的通信协议,如 IPX'SPX、 Apple Talk、PP、SLP和ATM等。
-
丰富的应用程序和开发工具
由于 Linux系统具有良好的可移植性,目前绝大部分其他Linux系统下使用的流行软件都已经被移植到 Linux系统中。另外,由于 Linux得到了IBM、 Intel、 Oracle及 Syabse等知名公司的支持,这些公司的知名软件也都移植到了 Linux系统中,因此, Linux获得越来越多的应用程序和应用开发工具。
-
良好的安全性和稳定性
Linux系统采取了多种安全措施,如任务保护机制、审计跟踪、核心报校、访问授权等,为网络多用户环境中的用户提供了强大的安全保障。由于Linux系统的开放性及其他一些原因,使其对计算机病具有良好的防御机制, Linux平台基木上不需要安装防病毒软件。另外,Linux系统具有极强的稳定性,可以长时间稳定地运行。
常用linux发行版本
- A、CentOS(https://www.centos.org/)
- B、Red Hat Linux(https://www.redhat.com/en)
- C、Ubuntu(https://ubuntu.com/)
Ⅱ、shutdown指令、init指令
注:字母n、H、s代表数字,非管理员用户执行此指令时需要使用sudo指令来执行
sync指令
该指令用于关机或重启前将数据同步到磁盘上。
shutdown指令:关机
注:凡是定时的shutdown操作都可以通过shutdown -c来取消
shutdown -h 指令
shutdown -h now
立刻关机(halt指令、poweroff指令)shutdown -h +n/n
系统将在n分钟后关机shutdown -h H:s
: 系统将在H:s关机
shutdown -r 指令
shutdown -r now
立刻重启(reboot指令)shutdown -r +n/n
系统将在n分钟后重启shutdown -r H:s
系统将在H:s重启
init指令
0
立刻关机3
切换字符界面模式5
切换图形界面模式6
立刻重启
Ⅲ、user指令、group指令
注:所有用户的默认目录在/home下,home目录为用户主目录
user指令-用户的增删改
1、useradd - 添加新用户
useradd [option] 新用户名
[option]
-c
comment 指定一段注释性描述。-d
目录 指定用户主目录,如果此目录不存在,则同时使用-m选项,可以创建主目录。-g
用户组 指定用户所属的用户组。-s
Shell文件 指定用户的登录Shell。-u
用户编号 指定用户的用户号,如果同时有-o选项,则可以重复使用其他用户的标识号。
注:所有通过指令添加的新用户在没有设置密码前是不可以使用的
2、usermod - 修改用户信息
usermod [option] 用户名
[option]
-c
comment 指定一段注释性描述。-d
目录 指定用户主目录,如果此目录不存在,则同时使用-m选项,可以创建主目录。-g
用户组 指定用户所属的用户组。-s
Shell文件 指定用户的登录Shell。-u
用户号 指定用户的用户号,如果同时有-o选项,则可以重复使用其他用户的标识号。
3、userdel - 删除用户
userdel [option] 用户名
[option]
-r
删除用户以及用户目录中的所有文件-f
强制删除用户
4、passwd - 设置用户口令
passwd [option] 用户名
[option]
-l
锁定口令,即禁用账号。-u
口令解锁。-d
使账号无口令。-f
强迫用户下次登录时修改口令
注:passwd 如若不指定用户名,直接修改当前用户的口令。普通用户只能修改自己的口令,超级用户(root)可以修改任何用户的口令,但需要在修改时指定用户名。
group指令-用户组的增删改
注:每个用户都有一个用户组,系统可以对一个用户组中的所有用户进行集中管理。不同Linux 系统对用户组的规定有所不同,如Linux下的用户属于与它同名的用户组,这个用户组在创建用户时同时创建。用户组的管理涉及用户组的添加、删除和修改。组的增加、删除和修改实际上就是对/etc/group文件的更新。
1、groupadd - 添加用户组
groupadd [option] 用户组名
[option]
-g
GID 指定新用户组的组标识号(GID)。-o
一般与-g选项同时使用,表示新用户组的GID可以与系统已有用户组的GID相同。
2、groupmod - 修改用户组
groupmod [option] 用户组名
[option]
-g
GID 为用户组指定新的组标识号。-o
与-g选项同时使用,用户组的新GID可以与系统已有用户组的GID相同。-n
修改用户组的名字
3、groupdel - 删除用户组
groupdel 用户组名
需要从系统中删除群组时,可用groupdel指令来完成这项工作。倘若该群组中仍包括某些用户,则必须先删除这些用户或者将用户移出后,方能删除该群组。
IV、目录指令、文件指令
注:Linux的目录结构为树状结构,最顶级的目录为根目录 /。
- 绝对路径:
路径的写法,由根目录 / 写起,例如: /usr/share/doc 这个目录。 - 相对路径:
路径的写法,不是由 / 写起,例如由 /usr/share/doc 要到 /usr/share/man 底下时,可以写成: cd ../man
目录指令
1、ls - 列出目录
ls [option] 路径
[option]
-a
全部的文件,连同隐藏文件( 开头为 . 的文件) 一起列出来(常用)-d
仅列出目录本身,而不是列出目录内的文件数据(常用)-l
长数据串列出,包含文件的属性与权限等等数据;(常用)
2、cd - 切换目录
cd是Change Directory的简写,这是用来变换工作目录的命令。
cd 路径或目录名
/是系统根目录,在任何目录下都可以通过cd / 来快速切回根目录,../代表一层目录。
3、pwd - 显示当前目录
pwd 是 Print Working Directory 的简写,也就是显示目前所在目录的命令或显示当前用户的工作目录。
pwd [option]
[option]
-P
显示出确实的路径,而非使用连结 (link) 路径。
4、mkdir - 创建新目录
mkdir 是 Make Directory 的简写,也就是创建新目录的命令。
mkdir [option] 新目录名字
[option]
-m
配置文件的权限喔!直接配置,不需要看默认权限 (umask) 的脸色-p
帮助你直接将所需要的目录(包含上一级目录)递归创建起来
5、rmdir - 删除【空】目录
rmdir 是Remove Empty Directory 的简写,也就是删除目录的命令,此命令只能删除空目录。
rmdir [option] 目录名字
[option]
-p
连同上一级『空的』目录也一起删除
6、cp - 复制文件或目录
cp [option] 来源档(文件或目录) 目标档(文件或目录)
[option]
-f
为强制(force)的意思,若目标文件已经存在且无法开启,则移除后再尝试一次;-i
若目标档(destination)已经存在时,在覆盖时会先询问动作的进行(常用)-l
进硬式连结(hard link)的连结档创建,而非复制文件本身;-p
连同文件的属性一起复制过去,而非使用默认属性(备份常用);-r
递归持续复制,用於目录的复制行为;(常用)-s
复制成为符号连结档 (symbolic link),亦即『捷径』文件,可理解成快捷方式;-u
若 destination 比 source 旧才升级 destination !
7、rm - 删除文件或目录
rm [option] 文件或目录
[option]
-f
就是 force 的意思,忽略不存在的文件,不会出现警告信息;-i
互动模式,在删除前会询问使用者是否动作-r
递归删除啊!最常用在目录的删除了!这是非常危险的选项!!!
8、mv - 移动文件或目录
mv [option] 来源档(文件或目录) 目标档(文件或目录)
[option]
-f
force 强制的意思,如果目标文件已经存在,不会询问而直接覆盖;-i
若目标文件 (destination) 已经存在时,就会询问是否覆盖!-u
若目标文件已经存在,且 source 比较新,才会升级 (update)
文件指令
1、cat - 正向查看文本内容
cat [option] 文件名
[option]
-n
显示文本行编号(行号)-E
显示行结束符号$
注:cat还可以创建文件,语法为cat>file(文件名.后缀),Ctrl+D保存
2、tac - 倒序查看文本内容
tac [option] 文件名
[option]不常用,可通过tac --help 进行查看
3、head - 显示文本开头指定行内容
head [option] 文件名
[option]
-n
行数,显示文本头n行内容,不带-n时默认显示10行
4、tail - 显示文本末尾指定行内容
tail [option] 文件名
[option]
-n
行数,显示文本末尾n行内容,不带-n时默认显示10行-f
查看文本末尾内容结束后不退出,跟随显示新增的行
5、more - 分屏显示文本内容
注:当内容显示完后会自动关闭文件
more [option] 文件名
[option]
-n
一次显示n行-s
显示连续空行为一行+n
从n 行开始显示-f
统计实际行数+/pattern
在每个文档显示前搜寻pattern字符串,然后从pattern之后开始显示
6、less - 分屏显示文本内容
less [option] 文件名
[option]
-
-e
当文件显示结束后按任意键都可关闭文件 -
-i
忽略搜索时的大小写 -
-m
显示百分比 -
-N
显示行号 -
-o
将输出的内容在指定文件中保存 -
-s
显示连续空行为一行 -
/pattern
向下搜索字符串,从上往下 -
?pattern
向上搜索字符串,从下往上
注:Pg Up与Pg Dn只有在less中可以使用
7、创建文件
touch [fileName]
[option]
- -a:或--time=atime或--time=access或--time=use 只更改存取时间;
- -c:或--no-create 不建立任何文件;
- -d:<时间日期> 使用指定的日期时间,而非现在的时间;
- -f:此参数将忽略不予处理,仅负责解决BSD版本touch指令的兼容性问题;
- -m:或--time=mtime或--time=modify 只更该变动时间;
- -r:<参考文件或目录> 把指定文件或目录的日期时间,统统设成和参考文件或目录的日期时间相同;
- -t:<日期时间> 使用指定的日期时间,而非现在的时间;
- --help:在线帮助;
- --version:显示版本信息。
8、建立文件链接
ln -s 源文件 目标文件
V、文件解压缩指令
zip - 压缩文件
注:通过zip指令压缩的文件格式为
.zip
,只能通过unzip进行解压
zip [option] [压缩后的文件名] [压缩的目录路径]
[option]
-a
将文件转成ASCII模式-F
尝试修复损坏的压缩文件-h
显示帮助界面-m
将文件压缩之后,删除源文件-o
将压缩文件内的所有文件的最新变动时间设为压缩时候的时间-q
安静模式,在压缩的时候不显示指令的执行过程-r
将指定的目录下的所有子目录以及文件一起处理-S
包含系统文件和隐含文件(S是大写)
unzip - 解压缩文件
unzip [option] [待解压缩文件]
[option]
-n
解压缩时不要覆盖原有的文件;-o
不必先询问用户,unzip执行后覆盖原有的文件;-P [密码]
使用zip的密码选项;-q
执行时不显示任何信息;-d [目录]
指定文件解压缩后所要存储的目录;
gzip - 解/压缩文件
注:gzip指令压缩的文件一般格式为
.gz
。
gzip [option] [压缩的目录路径]/[待解压缩文件]
[option]
-a
使用ASCII文字模式。-c
显示压缩文件的所有内容。-d
解开压缩文件。-f
强行压缩文件。不理会文件名称或硬连接是否存在以及该文件是否为符号连接。-h
获取在线帮助。-l
列出压缩文件的相关信息。-n
压缩文件时,不保存原来的文件名称及时间戳记。-N
压缩文件时,保存原来的文件名称及时间戳记。-q
不显示警告信息。-r
递归处理,将指定目录下的所有文件及子目录一并处理。-t
测试压缩文件是否正确无误。。-<压缩效率>
压缩效率是一个介于1-9的数值,预设值为"6",指定愈大的数值,压缩效率就会愈高。
tar - 文件打包
注:tar指令打包的文件一般格式为
.tar.gz
和.gz
两种,只处理本身打包的文档。
tar [option] [打包后的文件名] [打包的目录路径]
常用命令:tar -xvf [打包后的文件名] [打包的目录路径]
[option]
-c
建立压缩档案-x
解压档案-t
查看内容-r
向压缩归档文件末尾追加文件-u
更新原压缩包中的文件-m
还原文件时,不变更文件的更改时间-w
遭遇问题时先询问用户-z
通过gzip指令处理备份文件-r
新增文件到已存在的备份文件的结尾部分-cf
创建压缩文档-tvf/-xf
解压缩文档
VI、VIM编辑器
vim(vi)是Linux上常用编辑器,在Windows上可以使用记事本来编辑文件内容,Vim也类似于记事本,但是Vim有更加强大的功能。在Vim中,有命令模式,输入模式 和 末行模式(底行命令模式)三种模式。
vi/vim [filename]
当vim后面跟随的是不存在的文件时,系统会自动创建这个新文件
[option]
-
:wq
正常保存退出(如果提示"readonly",则需要使用:wq!
进行强制保存) -
:w [filename]
将编辑的数据储存成新的文件 -
:q
在没有修改内容的情况直接退出 -
:q!
不保存,强制退出 -
i/I
在光标所在位置后面开始输入,插入 -
dd
删除光标所在行 -
x
删除光标所在字符 -
u
撤销上一次操作 -
s
替换光标所在位置的字符 -
/pattern
向前搜索(从上往下) -
?pattern
向后搜索(从下往上)
VII、服务管理
systemctl指令(CentOS7)
注:unit参数为服务名称(格式可以为unit或者unit.service),option为子命令。systemctl只可以在CentOS7系统中使用,在CentOS6系统中需要使用service指令对服务进行操作。
systemctl [option] [unit]
[option]
start
启动unit服务。stop
关闭unit服务。restart
重启unit服务。reload
在不关闭unit服务的情况重新加载配置文件。enable
设置开机自启服务。disable
设置开机不自启服务(默认项)。status
查看unit服务的运行状态。mask
注销unit服务,从系统服务中删除unit服务
service指令(CentOS6)
注:unit参数为服务名称,option为子命令。
service [unit] [option]
[option]
start
启动unit服务。stop
关闭unit服务。restart
重启unit服务。status
查看unit服务的运行状态。
ps指令
ps命令用于查看当前系统的进程状态。可以搭配kill指令随时中断、删除不必要的程序。
ps [option]
[option]
-ef
用标准的格式显示进程aux/-aux
用BSD的格式显示进程-u
查看特定用户运行的进程-C
查看具体的某个进程信息-f
将得到的信息进行格式化- -a 显示当前终端的所有进程信息
- -u 以用户的信息显示进程
- -x 显示后台进程的参数
- -ef 以进程树界面显示进程
kill指令
kill命令用来删除执行中的程序或进程。程序或进程的编号(pid)可利用ps指令查看。
kill [option] pid
[option]
Signal Name | Number | Description |
---|---|---|
SIGHUP | 1 | Hangup (POSIX) |
SIGINT | 2 | Terminal interrupt (ANSI) |
SIGQUIT | 3 | Terminal quit (POSIX) |
SIGILL | 4 | Illegal instruction (ANSI) |
SIGTRAP | 5 | Trace trap (POSIX) |
SIGIOT | 6 | IOT Trap (4.2 BSD) |
SIGBUS | 7 | BUS error (4.2 BSD) |
SIGFPE | 8 | Floating point exception (ANSI) |
SIGKILL | 9 | Kill(can't be caught or ignored) (POSIX) |
SIGUSR1 | 10 | User defined signal 1 (POSIX) |
SIGSEGV | 11 | Invalid memory segment access (ANSI) |
SIGUSR2 | 12 | User defined signal 2 (POSIX) |
SIGPIPE | 13 | Write on a pipe with no reader, Broken pipe (POSIX) |
SIGALRM | 14 | Alarm clock (POSIX) |
SIGTERM | 15 | Termination (ANSI) |
SIGSTKFLT | 16 | Stack fault |
SIGCHLD | 17 | Child process has stopped or exited, changed (POSIX) |
SIGCONT | 18 | Continue executing, if stopped (POSIX) |
SIGSTOP | 19 | Stop executing(can't be caught or ignored) (POSIX) |
SIGTSTP | 20 | Terminal stop signal (POSIX) |
SIGTTIN | 21 | Background process trying to read, from TTY (POSIX) |
SIGTTOU | 22 | Background process trying to write, to TTY (POSIX) |
SIGURG | 23 | Urgent condition on socket (4.2 BSD) |
SIGXCPU | 24 | CPU limit exceeded (4.2 BSD) |
SIGXFSZ | 25 | File size limit exceeded (4.2 BSD) |
SIGVTALRM | 26 | Virtual alarm clock (4.2 BSD) |
SIGPROF | 27 | Profiling alarm clock (4.2 BSD) |
SIGWINCH | 28 | Window size change (4.3 BSD, Sun) |
SIGIO | 29 | I/O now possible (4.2 BSD) |
SIGPWR | 30 | Power failure restart (System V) |
VIII、网络管理
ping - 测试主机网络连通性
注:domain是指目标域名,ip是指目标主机的IP地址。
ping [option] [domain]/[ip]
[option]
-c
设置完成要求回应的次数-d
使用Socket的SO_DEBUG功能
ifconfig - 配置和显示网络参数
ifconfig [option]
[option]
-a
显示所有网络参数[ip]
设定临时IP地址up
启动指定的网络设备down
关闭指定的网络设备[name]
指定网络设备名称
配置静态IP vim /etc/sysconfig/network-scripts/ifcfg-*
BOOTPROTO="dhcp"改成BOOTPROTO="static" IPADDR=192.168.*.n NETMASK=255.255.255.0 GATEWAY=192.168.*.2 DNS=8.8.8.8
systemctl restart network 修改完配置文件之后需要重启网络服务才可以使配置文件生效
怎么查看子网掩码、网关Ip、有效Ip呢?
hostname - 显示和设置主机名
hostname [option]
[option]
-a
显示主机别名-d
显示DNS域名-i
显示主机的IP地址
修改主机名:hostnamectl set-hostname 新主机名
ifup/ifdown - 激活/ 禁用网络接口
ifup/ifdown [name]
注:[name] 是指网络设备的名字
nslookup - 查询域名DNS信息
nslookup [domain]/[ip]
注:domain是指目标域名,ip是指目标主机的IP地址。
wget - Linux系统下载工具
wget命令用来从指定的URL下载文件。wget非常稳定,它在带宽很窄的情况下和不稳定网络中有很强的适应性,如果是由于网络的原因下载失败,wget会不断的尝试,直到整个文件下载完毕。如果是服务器打断下载过程,它会再次联到服务器上从停止的地方继续下载。这对从那些限定了链接时间的服务器上下载大文件非常有用。
wget [option] [url]
[option]
-V(大写)
显示版本信息-h
获取帮助信息-o
下载文件时以不同的文件名保存-c
使用wget断点续传下载-b
使用wget后台下载-P
下载到指定目录-r
指定递归下载-N
只获取比本地文件新的版本-q
安静模式(无信息输出)
tail -f wget-log 查看文件下载进度
curl - 文件下载工具
curl命令是一个利用URL规则在命令行下工作的文件传输工具。它支持文件的上传和下载,所以是综合传输工具,但按传统,习惯称curl为下载工具。作为一款强力工具,curl支持包括HTTP、HTTPS、ftp等众多协议,还支持POST、cookies、认证、从指定偏移处下载部分文件、用户代理字符串、限速、文件大小、进度条等特征。做网页处理流程和数据检索自动化,curl可以祝一臂之力。
curl [option] [url]
[option]
-C(大写)
断点续转-o
将获取到的文件以新名字保存-O(大写)
将获取到的文件以原名字保存-c
将[url]中的cookie信息保存到文件中-#
显示下载进度条-s
不显示下载进度条
curl [url] >> [filename] 通过重定向的方式保存文件
yum-镜像文件下载工具
1、先备份好原有镜像
cp /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.back
2、下载并配置阿里云镜像
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
3、清理缓存
yum clean all
4、生成缓存
yum makecache
5、查看yum镜像源
yum repolist
IX 权限管理
chmod
Linux/Unix 的文件调用权限分为三级 : 文件拥有者、群组、其他。利用 chmod 可以藉以控制文件如何被他人所调用。
chmod [option][mode] [filename]
[option]
-c
若该文件权限确实已经更改,才显示其更改动作-f
若该文件权限无法被更改也不显示错误信息-v
显示权限变更的详细资料-R
对目前目录下的所有文件与子目录进行相同的权限变更--help
显示帮助说明--version
显示版本
[mode]
-
u 表示该文件的拥有者,g 表示与该文件的拥有者属于同一个群体(group)者,o 表示其他以外的人,a 表示这三者皆是。
-
+表示增加权限、- 表示取消权限、= 表示唯一设定权限。
X 防火墙
防火墙是一组规则。当数据包进出受保护的网络区域时,进出内容(特别是关于其来源、目标和使用的协议等信息)会根据防火墙规则进行检测,以确定是否允许其通过。
firewalld
1、查看firewalld服务状态
systemctl status firewalld
-
出现Active: active (running)切高亮显示则表示是启动状态。
-
出现 Active: inactive (dead)灰色表示停止,看单词也行。
2、查看firewalld的状态
firewall-cmd --state
- 出现running(黑色)表示正常运行
- 出现not running(红色)表示停止
3、开启、重启、关闭firewalld.service服务**
systemctl start firewalld # 启动防火墙 systemctl restart firewalld # 重启防火墙 systemctl stop firewalld # 停止防火墙
4、查看防火墙规则
firewall-cmd --list-all
5、查询、开放、关闭端口
firewall-cmd --query-port=端口号/tcp # 查询端口 firewall-cmd --permanent --add-port=端口号/tcp # 开放端口 firewall-cmd --permanent --remove-port=端口号/tcp # 关闭端口 firewall-cmd --reload #重启防火墙(修改配置后要重启防火墙)
-
firwall-cmd
:是Linux提供的操作firewall的一个工具; -
--permanent
:表示设置为持久; -
iptables
(https://blog.csdn.net/zhengsaisai/article/details/81063598)
1、基本操作
systemctl status iptables # 查看防火墙状态(iptables) systemctl stop iptables # 停止防火墙(iptables) systemctl start iptables # 启动防火墙(iptables) systemctl restart iptables # 重启防火墙(iptables) chkconfig iptables off # 永久关闭防火墙(不会自动重启系统)(iptables) chkconfig iptables on # 永久关闭后重启(自动重启系统)(iptables)
2、开启端口
vim /etc/sysconfig/iptables # vim编辑配置文件
-A INPUT -m state --state NEW -m tcp -p tcp --dport 端口号 -j ACCEPT # 添加新的端口号
systemctl restart iptables # 重启防火墙(iptables)
netstat -tlnp # 查询已开放的端口,端口必须要有程序在使用
SELinux
查看SELinux状态:
sestatus -v
#如果SELinux status参数为enabled即为开启状态getenforce
#也可以用这个命令检查
关闭SELinux:
1、临时关闭
setenforce 0
#设置SELinux 成为permissive模式(临时关闭)2、修改配置文件(永久关闭)
修改/etc/sysconfig/selinux 文件,将SELINUX=enforcing改为SELINUX=disabled,保存并退出vim编辑器,接着重启系统(init 6 / shutdown -r now)方可生效。
-
XI 软件包管理
RPM
[option]
–i
安装(Install)软件。–U
升级(Upgrade)旧版本的软件。–e
移除/删除(Erase)软件。–v
显示详细的处理信息。–h
显示安装进度。卸载不能用-q
查询软件/软件包--force
强制覆盖安装
常用的查询已安装的软件包信息的命令:
-
a) rpm –qa:显示目前操作系统上安装的全部软件包,其中q是查询的第1个字母,a是all(全部)的第1个字母。
-
b) rpm –qf 文件名:显示这个文件是由哪个软件包安装的,f是file(文件)的第1个字母。
-
c) rpm –qi 软件包名:显示这个软件包的信息,i是information(信息)的第1个字母。
-
d) rpm –ql 软件包名:列出这个软件包中所包含的全部文件,其中l是list的第1个字母。
YUM
yum( Yellow dog Updater, Modified)是一个在Fedora和RedHat以及SUSE中的Shell前端软件包管理器。基於RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软体包,无须繁琐地一次次下载、安装。
常用命令
1.列出所有可更新的软件清单命令:yum check-update
2.更新所有软件命令:yum update
3.仅安装指定的软件命令:yum install <package_name>
4.仅更新指定的软件命令:yum update <package_name>
5.列出所有可安裝的软件清单命令:yum list
6.删除软件包命令:yum remove <package_name>
7.查找软件包 命令:yum search
8.清除缓存命令:
- yum clean packages: 清除缓存目录下的软件包
- yum clean headers: 清除缓存目录下的 headers
- yum clean oldheaders: 清除缓存目录下旧的 headers
- yum clean, yum clean all (= yum clean packages; yum clean oldheaders)
安装jdk在/etc/profile里的配置环境如下:
Java_Home=/usr/java/jdk
Jre_Home=${Java_Home}/jre
CLASSPATH=.
标签:文件,显示,入门,--,指令,Linux,快速,option From: https://www.cnblogs.com/smallzengstudy/p/17720785.html