学Linux操作之前不得不了解的知识!!!
Posted 老张学coding
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了学Linux操作之前不得不了解的知识!!!相关的知识,希望对你有一定的参考价值。
一、Linux命令基础
1.1 Shell 概述
在计算机科学中,Shell俗称壳(用来区别于核),是指“为使用者提供操作界面”的软件(命令解析器)。它类似于DOS下的command.com和后来的cmd.exe。它接收用户命令,然后调用相应的应用程序。
1.2 Shell 特点
- Linux系统中运行的一种特殊程序;
- 在用户和内核之间充当“翻译官”;
- 用户登录Linux系统时,自动加载的一个Shell程序;
- Bash是Linux系统中默认使用的Shell程序。
- 文件位于/bin/bash(小写)
二、Linux命令的分类
2.1、内部命令和外部命令的区别
内部命令 | 外部命令 |
---|---|
集成于Shell解释器程序内部的一些特殊指令,也称为内建(Built-in)指令 | Linux系统中能够完成特定功能的脚本文件或二进制程序 |
属于Shell的一部分 | 属于Shell解释器程序之外的命令 |
没有单独对应的系统文件 | 每个外部命令对应了系统中的文件 |
自动载入内存,可以直接使用 | 必须知道其对应的文件位置,由Shell加载后才能执行/bin;/usr/bin;/usr/local/bin等 |
2.2、如何查看命令是内部命令还是外部命令?
三种方式:
type 命令 ##########下面的提示显示内嵌就是内部命令,显示路径就是外部命令
操作:
有一个特例是cd命令:它既是内部命令,又是外部命令
type cd ###### 显示是命令类型是内嵌
enable -n cd ###### 关闭内部命令
type cd ###### 显示路径,是外部命令
enable cd ###### 解除命令
操作:
三、Linux命令行的格式
命令字 【选项】 【参 数】
注意:Linux 中英文字符区分大小写
说明:
命令字 #####要进行的操作
1、是整条命令中最关键的一部分
2、唯一确定一条命令
选项 ##### 要实现的功能
短格式选项:使用“-”符号引导,短格式后面一般跟字母,多个单字符选项可以组合在一起使用。
长格式选项:使用“- -”符号引导,长格式后面一般跟单词
参数#####要执行的对象
1、命令字的处理对象
2、可以是文件名、目录(路径)名或者用户名等内容
3、个数可以是零0到多个
四、编辑Linux命令行的辅助操作
Tab键: #####自动补齐
反斜杠“\\” #####强制换行
Ctrl + U组合键 #####清空至行首
Ctrl + K组合键 #####清空至行尾
Ctrl + L组合键 #####清屏(clear也行)
Ctrl + C组合键 #####取消本次命令编辑
Ctrl + a组合键 #####切换到行首
Ctrl + e组合键 #####切换到行尾
注意:为了摆脱low逼,答应我,记住他!!!!!!
五、Linux命令帮助的方法
5.1、内部命令帮助用help
说明:适用于内部命令
格式:
help #####直接help查看内部命令信息
操作:
5.2、命令的“-- help”选项
说明:适用于大多数Linux外部命令
格式:
命令字 --help #####这里命令字如果是内部命令的话,直接会显示无效选项
5.3、使用man命令阅读手册页
格式:
man ls #####命令+命令字,会进入阅读环境,q或Q退出阅读环境
键盘操作:
#####使用“↑”、“↓”(ENTER)方向键滚动一行文本
#####使用Page Up和Page Down(空格)键翻页
注意:Page Up和Page Down键先要锁住数字才能使用
#####按Q或q键退出阅读环境
#####按“/"键查找内容,n键向下查找,N键向上查
六、路径的概念
6.1、相对路径与绝对路径概述
绝对路径 #####以“/”为起点
相对路径 #####以当前目录为起点
6.2、相对路径的表现形式
表现形式 | 说明 | 示例 |
---|---|---|
直接使用目录名或文件名 | 表示当前工作目录中的子目录、文件的位置 | zhangsan |
以一个点号“.”开头 | 表示以当前的工作目录作为起点 | ./zhangsan |
以两个点号“…”开头 | 表示以当前目录的上一级目录(父目录)作为起点 | …/zhangsan |
以“~用户名”形式开头 | 表示以指定用户的宿主目录作为起点 | ~zhangsan |
以“~”形式开头 | 表示以当前用户的宿主目录作为起点 | ~ |
七、命令行提示字符
[root@localhost ~]#
[当前登录系统的用户@主机名称 当前所在的目录]#
$ 表示为普通用户登录
管理员切换与普通用户切换(可以添加用户账号进行转换用户进行测试)
su 切换成管理员
su +用户名
八、基本命令
8.1、切换用户
su 用户名 #切换后所在目录不变
su - 用户名 #切换后所在目录变成用户家目录
注: ‘-’左右都要有空格
操作:
8.2、主机名设置
8.2.1、查看当前主机名称
格式:
hostname #查看当前所登录的主机名
操作:
8.2.2、临时设置主机名
格式:
hostname 主机名 #临时设置电脑重启后就没这个主机名
操作:
8.2.3、永久设置主机名
格式:
hostnamectl set-hostname 主机名 #不用重启立即生效
操作:
第二种永久设置主机名的方法:直接修改/etc/hostname
格式:
vi/etc/hostname #直接用编辑器进行更改,设置完后需重启才生效
按 i 键删除旧主机名,再输入新主机名(只有第一行有效,,wq保存退出)
init 6 #重启
#注意:设置完重启才能生效,编辑的时候必须内容在第一行
操作:
进入编辑界面:
8.3、查看当前系统版本信息(两种查看的对比)
格式:
cat /etc/redhat-release #显示比较简单
cat /etc/*release #显示比较详细
操作:
8.4、查看当前内核信息
格式:
uname -r#查看内核信息,注意是u+name ,不是un+name
操作:
8.5、修改网卡(要添加)
8.5.1、临时修改网卡IP
格式:
ifconfig ens33 192.168.80.3/24
或
ifconfig ens33 192.168.80.3 netmask 255.255.255.0
补充知识:
ens33是物理网卡,下面可以有很多虚拟网卡,添加虚拟网卡,虚拟网卡可以通信,但是要通过物理网卡
方法:ifconfig ens33:0 192.168.80.40/24
ifconfig ens33:1 192.168.80.50/24
8.5.2、永久修改网卡IP
格式:
vi /etc/sysconfig/network-scripts/ifcfg-ens33
TYPE=Ethernet #设置网卡类型,“Ethernet”表示以太网
DEVICE=ens33 #设置网卡的名称
ONBOOT=yes #设置网卡是否在 Linux 操作系统启动时激活
BOOTPROTO=static #设置网卡的配置方式,“static”表示使用静态IP地址,“dhcp”时表示动态获取地址
IPADDR=192.168.80.3 #设置网卡的 IP 地址
NETMASK=255.255.255.0 #设置网卡的子网掩码
GATEWAY=192.168.80.2 #设置网卡的默认网关地址
DNS1=192.168.80.2 #设置DNS服务器的 IP 地址
8.6、重启网卡
格式:
systemctl restart network #重启所有的网卡(谨慎操作)
ifdown ens33 ; ifup ens33 #重启单个网卡(常用重启操作)
ifdown ens33 #关闭某个网卡
ifup ens33 #启动某个网卡
ifconfig ens33 down #临时禁用某个网卡
ifconfig ens33 up #重新激活某个网卡(不会更新IP地址)
8.7、查看网卡地址
格式:
ifconfig ###############
ip add ################
操作:
ifconfig查看:
ip add查看:
8.8、添加静态路由条目(要添加)
8.8.1、临时添加路由(重启network后失效)
格式:
方法一:
route add -net 192.168.3.0/24 gw 192.168.8.2 [dev ens33]
-net:指定目标网段的地址
gw:指定下一跳路由器的 IP 地址
dev: 为路由指定的输出接口(可加可不加)
查看路由表条目
route -n
删除静态路由条目
route del -net 192.168.3.0/24
方法二:
ip route add 192.168.15.0/24 via 192.168.80.2 [dev ens33]
8.8.2、永久添加路由(重启network后生效)
方法一:
vi /etc/sysconfig/static-routes(修改配置文件)
any net any gw 192.168.80.2
any net 192.168.3.0/24 gw 192.168.80.2
any net 10.0.0.0 netmask 255.0.0.0 gw 192.168.80.2
any host 192.168.100.100 gw 192.168.80.2
systemctl restart network(修改之后要重启网卡才会生效)
方法二:
vim /etc/sysconfig/network-scripts/route-ens33
default via 192.168.80.2 dev ens33 #默认路由,另一种格式 0.0.0.0/0 192.168.14.254 dev ens33
10.211.6.0/24 via 192.168.80.2 dev ens33
192.168.100.200 via 192.168.14.254 dev ens33
systemctl restart network(修改之后要重启网卡才会生效)
8.9、测试网络连接
8.9.1、ping进行测试
格式:
ping IP地址
操作:
8.9.2、traceroute(静态跟踪)
格式:
traceroute IP地址
操作:
8.9.3、mtr(动态跟踪)
格式:
mtr IP地址
操作:
8.10、开关机,重启系统
8.10.1、重启系统(3种)
格式:
reboot
init 6 #如果是0的话就是关机
shutdown -r now
这个就不测试了
8.10.2、关机(3种)
格式:
poweroff
init 0
shutdown -h now
shutdown -h 10 #表示10min之后再关机
shutdown -c #取消关机
总结:
PS1="[\\e[1;34m][\\u@\\h \\W]\\$[\\e[0m] "
PS1="[\\e[1;35m][[\\e[1;34m]\\u[\\e[1;36m]@[\\e[1;34m]\\h [\\e[1;31m]\\w[\\e[1;35m]][\\e[1;36m]\\$[\\e[0m] "
[\\e[1;35m][ ====> 定义左边的"[" [\\e[1;34m]\\u ====> 定义用户名 [\\e[1;36m]@ ====> 定义"@" [\\e[1;34m]\\h ====> 定义第一个点(.)之前的主机名 [\\e[1;31m]\\w ====> 定义目录完整路径 [\\e[1;35m]] ====> 定义"]" [\\e[1;36m]\\KaTeX parse error: Expected 'EOF', got '#' at position 42: …eter character #̲' in math mode …" [\\e[0m] ====> 一段不显示字串的结束
/etc/resolv.conf
是DNS客户机配置文件,用于设置DNS服务器的IP地址及DNS域名。最多可以指定3个不同的DNS服务器地址,优先使用第一个 DNS 服务器。对该文件所做的修改将会立刻生效。
nameserver 192.168.80.2 #定义DNS服务器的IP地址
注意:此配置文件与网卡配置文件的DNS1参数作用相同,哪个最后修改或重启,系统就使用哪个配置。
以上是关于学Linux操作之前不得不了解的知识!!!的主要内容,如果未能解决你的问题,请参考以下文章