Linux命令操作使用_College记录

Linux命令终端介绍

退出命令终端:

在命令终端中输入 exit 或者 ctrl+d 快捷方式退出命令终端

设置命令终端窗口字体大小:

临时设置字体大小
ctrl + - :减小字体
ctrl + + :增大字体
持久设置字体大小
在命令终端界面点击右键–>配置文件首选项–>文本–>自定义字体
ctrl+shift+t 新建命令标签窗口

命令提示符

[pz@ljcs opt]$
pz : 表示用户名
ljcs:表示主机名
opt: 表示当前目录名
$ : 表示当前用户类型 , # 代表管理员用户 $ 代表普通用户

Linux命令

基础常用命令

Linux登录与基本命令使用

who :显示当前登录用户
pwd(print work directory):显示当前目录
cd (change directory): 切换目录
cd ~ : 切换到用户工作目录
ifconfig(interface config)查看网卡配置信息
linux查看ip : ifconfig
window查看ip: ipconfig
ip地址有ipv4和ipv6两个版本, 目前主要使用ipv4

ping :测试主机间的连接情况

主机可以用ip地址或者域名来描述
比如: ping 192.168.1.6
ping www.baidu.com

clear: 清除命令终端内容
ctrl+L :快捷方式清除命令终端内容

uname :显示操作系统信息
uname -r :查看linux内核版本发行号

内核版本号格式:r.x.y
r:主版本号,x:次版本号,y:修订版本号。
如果x是偶数,那么内核就是稳定的,如 4.18.0
如果x是奇数,则表示内核是处于开发中,不一定很稳定,是测试版本,如4.15.1

exit: 退出或注销用户
reboot : 重启系统

shutdown :关闭系统
shutdown –r now :重启系统
shutdown –h now :关机
shutdown –h +5 :5分钟之后关机
shutdown –c :取消预定的关机
init 0 :关机
init 6 重启

Linux命令格式

command [-options][parameter]

每项信息说明:
command:命令名, 比如: who、pwd
[-options]:选项,可以有零个、一个或者多个选项,多个选项可以合并,比如使用的 -r 就是选
项。
[parameter]:参数,可以有零个、一个 或者 多个参数, 比如: ping 192.168.1.6 、cd ~ 这些都
是参数。
[]:代表可选

使用Linux命令的小技巧

命令补全

命令补全是指当键入的字符足以确定某个命令或者某个文件时,只须按 Tab 键就可以自动补全该
命令或者该文件名的剩下部分

查看历史命令

使用上下箭头查看已经使用过的历史命令
使用 history 命令查看 已经使用过的命令
! + 序列号 可执行对应的命令

终止命令的执行

ctrl+c :终止命令的执行
测试top命令查看系统执行效果: [lijun@192 ~]$ top

查看命令帮助方式

–help
使用格式: 命令名 --help
比如: uname --help

命令

grep 选项 查找模式 文件1,文件2

选项说明
-i不区分大小写
-n同时输出行号
-v匹配取反

重定向命令 > >>

命令说明
>覆盖模式重定向
>>追加模式重定向

例子:

管道命令 |

将前一个命令的输出作为后一个命令的输入

例子:netstat -ln | grep ‘22’

wc 命令

统计文件行数\字数\字节数

例子 :ls / | wc

tar 文件打包压缩

文件打包压缩和软件安装Linux_College_Laboratory report5

tar 选项 文件或者目录

选项说明
-c创建新的打包文件
-v显示打包或者解包的文件的详情
-f使用打包文件或者设备,这个选项是必选项, 一般放到所有选项后面
-z用gzip格式来压缩或解压缩文件(.gz)
-j用bzip2格式来压缩或解压缩文件(.bz2)
-x解包
-C解压缩到指定目录

打包与解包
tar -cvf 打包后的文件名.tar 要打包的文件和目录
tar -xvf 要解包的文件名.tar
gz格式压缩和解压:
tar -zcvf 压缩后的名字.tar.gz 要压缩的文件和目录 tar -zxvf 压缩包的名字.tar.gz -C 要解压到的目录

软件安装

离线安装

以二进制形式发布的软件包
在redhat、 centos 发行版中,软件包使用rpm包格式
在debian、 ubuntu发行版中,一般使用deb包格式

rpm包管理器命令 rpm [选项] 包名| 包文件名

-i :安装包
-U :升级包
-v :显示安装详情
-h :显示安装进度
-e :卸载包
-q :包查询
-l :列出包中所有文件

#查询mysql 包是否安装
rpm -q mysql
#查询所有安装的包
rpm -qa
#查询某个包的信息
rpm -qi gedi t
#安装某个软件
rpm -i xxx. rpm
#卸载某个软件
rpm -e 包名

在线安装

通过联网方式在线安装软件, 可安装最新的版本 和关联的包, 一般推荐该方式
yum命令

yum clean packages :清除缓存目录下的所有软件包清空的是:(/var/cache/yum)目录下的缓存文

yum clean all :清除缓存目录下的所有软件包和旧的headers
yum list :查看所有的安装的 ,可以安装的包
yum info 包名 :查看某个包的信息
yum install 包名 : 在线安装软件
yum update 包名: 升级软件
yum remove 包名: 删除软件

dnf命令

dnf是YUM的下一代版本,在centos8中 默认 使用dnf 作为软件包管理器, 用于取代yum

修改yum源为国内的镜像站(拓展) (用下一个命令)

1.进入/etc/yum.repos.d/目录
cd /etc/yum.repos.d/
2.删除指定文件
rm -f CentOS-Base.repo CentOS-AppStream.repo CentOS-PowerTools.repo CentOS-centosplus.repo CentOS-Extras.repo
3.从阿里云下载CentOS-Base.repo文件
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-8.repo
4.执行命令,更新缓存
yum makecache

直接用这个命令就行了

安装前可以修改为阿里源:
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-8.repo

用户-组-进程

用户组进程的操作Linux_College_Laboratory report6

用户管理

1.用户分类

超级用户(管理员)

该用户具有所有管理权限, UID=0

系统用户

针对特定的系统服务而开设的用户,系统用户不能用于登录,UID范围 1-999

普通用户

为了让使用者使用Linux系统资源而建立的用户,UID范围1000–65535

查看用户id命令: id [用户名]

选项: -u(查看用户uid) -g(查看用户gid) -G(查看用户所在所有组的id)

2.用户相关的配置文件

文件名 说明
/etc/passwd 用户信息库
/etc/group 用户组信息库
/etc/shadow 用户认证信息
/etc/gshadow 用户组认证信息

cat /etc/passwd
在这里插入图片描述
cat /etc/shadow
在这里插入图片描述

3.用户管理
添加用户

useradd [选项 参数] 用户名
选项:
-d :指定用户主目录 默认的主目录/home/
-M : 不创建用户主目录 useradd 用户名
-s : 指定新用户登录后使用的shell,默认是 /bin/bash

设置用户密码

passwd 用户名

修改用户属性

usermod [选项 参数] 用户名

删除用户

userdel 用户名
选项
-r :同时删除用户主目录
可能遇到的问题
转https://blog.csdn.net/qq_27610647/article/details/100055786

权限管理

sudo(super user do)

在linux系统下,普通用户无法直接执行root用户权限下的命令,如果想让普通用户执行只有root用户才能执行的操作命令,需要用到sudo。

配置文件 /etc/sudoers
visudo 直接编辑/etc/sudoers
101行下
普通用户名 ALL=(root) ALL

例子:
sudo chmod u+x,g+w,o=rx aaa.txt

chmod MODE[,MODE]… FILE

角色
u:user,属主用户,文件所有者
g:group,用户组
o:other,其他用户
a:all,所有用户
权限
+:增加
-:撤销权限
= :设置权限

r:读
w:写
x:执行
-:无权限

例子:

  • chmod u+x,g+w,o=rx aaa.txt
  • chmod o+w aaa.txt

进程

ps

查看当前运行的进程信息
选项:
-a
-u
-x
-e
-f
例子:ps -aux

free

显示系统内存使用情况

top

实时动态监控系统运行的进程,

sleep

使进程按指定时间延迟执行
例子:sleep 5;ps -aux

kill

杀死进程

例子:kill 16887

linux head 命令
1.命令格式:

head [参数]… [文件]…

2.命令功能:

head 用来显示档案的开头至标准输出中,默认head命令打印其相应文件的开头10行。

3.命令参数:

-q 隐藏文件名

-v 显示文件名

-c<字节> 显示字节数

-n<行数> 显示的行数

4.使用实例:

实例1:显示文件的前n行

命令:

head -n 5 log2014.log

磁盘

文件系统和磁盘分区_Linux_College_Laboratory report7
在这里插入图片描述

fdisk

格式: fdisk [选项] <磁盘> :操作磁盘分区
fdisk -l <磁盘> :显示磁盘分区情况

显示或操作磁盘分区

在这里插入图片描述

使用fdisk或parted分区后,必须对分区创建文件系统(格式化),再挂载到某个挂载点之后,才能使用。
mkfs(mkfs.ext3,mkfs.vfat,mkfs.msdos等)
建立各种文件系统,初始化卷标、文件系统卷标和启动块。

mkfs [-vV][fs][-t <文件系统类型>][设备名称][区块数]

参数:
fs 指定建立文件系统时的参数。
-t<文件系统类型> 指定要建立何种文件系统,常见的有ext2、
ext3、vfat、ntfs、iso9660、msdo、shpfs等。
-c 在创建文件系统前检查是否有坏道。
-v 显示版本信息与详细的使用方法。
-V 显示简要的使用方法。
实例
mkfs -t ext4 /dev/sdb1//将sda6分区格式化为ext3格式

mount

卸载文件系统命令umount
示例 挂载卸载 /dev/sdb1 分区

挂载光驱
mount -o auto /dev/sdb1 /mnt/mydata
卸载光驱
umount /mnt/mydata
注意事项

  • 机器重启后, 挂载的设备会无效
  • 不能卸载正在使用的文件系统

自动挂载文件系统

fstab记录格式

在这里插入图片描述

Vim

vim编辑器Linux_College_Laboratory report8

三种工作模式

在这里插入图片描述

命令模式
编辑模式 i、a、o
末行模式 :

例子:使用vim修改主机名(/etc/hostname)

命令模式操作

1.移动光标操作

方向箭头 (上下左右)
hj kl (上下左右)
ctrl +b 向上移动一屏, ctrl +f 向下移动一屏;
^ 移至行首, $ 移至行尾
[行号] G 移至指定行,不指定行号移到最后一行开头
[列号] | 移至指定列,不指定列标移到当前行开头
G 和 gg (G 移到文档最后一行, gg 移到文档首行)

2.删除命令操作

x 删除光标所在字符
nx 删除光标开始后的n个字符, n表示数字,比如3x
dw 删除一个单词
ndw 删除几个单词, n用数字表示,比如3dw
dd 剪切删除光标所在的一行
ndd 剪切删除多行, n代表数字,比如3dd 表示删除光标行及光标下的两行
d$ 或 D 删除光标所在字符到行尾的内容

3.文本移位、 撤销与恢复命令
>>将光标所在的行向右移8个空格
<< 将光标所在的行向左移8个空格
u : 撤销最近一次操作
ctrl +r :恢复

4.复制与粘贴命令

y 复制选定内容 , v 会将光标经过的地方反白选择
yy 与 n yy : yy复制当前光标所在行, n yy复制光标行及光标下n-1 行
p 与 n p : p粘贴一次, n p 粘贴n次

5.命令模式下的查找

/ 要查找的字符(从光标位置向下查询)
? 要查找的字符(从光标位置向上查询)
查找到指定字符后,按 n 查找下一个;按 N 查找上一个

末行模式下的vim操作

1.文件保存退出

w 保存文档
q 退出文档
wq 保存且退出文档
q! 不保存退出文档

2.显示或隐藏行号

set nu 显示行号
set nonu 隐藏行号

  1. 末行模式下的查找替换

g/字符串 查找指定的字符串
g 好比linux的grep命令
%s/查找字符串1/替换字符串2/g 替换字符串
% :表示全文查找 s :替换子串命令 g :表示一行支持多次替换
nohl 取消高亮显示
例子::%s/xiao/hua/g

  1. 执行shell命令

! 命令 在末行模式下执行命令
r! 命令 把命令的结果插入到光标所在处

5.恢复命令

recover
vim在编辑文件时,会另外生成一个临时文件,这个文件通常以.开头,并以.swp结尾.vim在正常
退出时,该文件被删除,若意外退出,而没有保存的话,则可以通过恢复命令恢复

Shell

Shell是Unix/Linux系统用户与系统交互的接口:

Shell是一个命令解释器,它交互式地解释和执行用户输入的命令。
shell又是一种程序设计语言。它允许用户编写由shell命令组成的程序
在这里插入图片描述

Shell的分类

Shell现在流行的主要有三种:Bourne Shell,C-Shell,Korn-shell

Bourne Shell(sh)是其它shell的基础,是Unix系统上最常用的、最基本的shell。
由AT&Bell实验室开发

C-shell(csh)主要模拟C语言

Korn shell (ksh),由David Korn编写,兼容sh,但比sh功能更强

Bash(centos默认的shell方式)是Bourne-Again shell的缩写, Bash是由Bourne Shell发展而来的,但Bash与sh稍有不同,因为它还包含有csh和ksh的特点

查看当前所使用的shell类型:

echo $SHELL

查看系统中可用的shell的完整路径 :

cat /etc/shells
chsh -l

查看用户登录时的shell:

cat /etc/passwd

简单Shell编程

创建Shell程序文件:

Shell程序是纯文本文件,可以用任何编辑程序来编写shell程序
按照shell编程的惯例,以bash为例,程序的第一行一般为 #!/bin/bash
#表示该行是注释
! 告诉shell运行叹号之后的命令并用文件的其余部分作为输入,也就是运行/bin/bash并
让/bin/bash去执行shell程序的内容

执行Shell程序文件:

shell程序是解释执行的,所以不需要编译装配成目标程序
对于shell程序文件,默认权限是不可执行的。,当用户需要运行这个文件时,需要添加执行权
限: chmod +x shell 程序文件名
执行shell程序:
方式一: . /shell 程序文件名
方式二: sh 程序名 [参数]

Shell基础语法

shell变量

定义变量: a=10 a为变量名
显示变量值: echo $a a为变量名, $表示取变量的值

Shell环境变量

shell在开始执行时就已经定义了一些和系统的工作环境有关的变量,称为环境变量
这些变量用户还可以重新定义
set、 env命令查看环境变量
$HOME 使用者自己的目录
$PATH 执行命令时所搜寻的目录
$PS1 在命令列时的提示号
$PS2 当命令尚未打完时, Shell 要求再输入时的提示号
$MANPATH man指令的搜寻路径

预定义变量

预定义变量和环境变量相类似,也是在shell一开始时就定义了的变量,所不同的是,用户只能根
据shell的定义来使用这些变量,而不能重定义它
$0这个程序的执行名字
$n这个程序的第n个参数值, n=1,2,3,4,5,6,7,8,9
$*这个程序的所有参数的内容
$#这个程序的参数个数
$$这个程序的PID
$!上一个后台程序的PID
$?上一个指令的返回值

例子:
shell 程序文件s1 内容如下:

#! /bi n/bash
echo "程序名为: $0"
echo "姓名为: $1"
echo "年龄为: $2"
echo "所属省份: $3"
echo "所在城市: $4"
echo "第五个参数为: $5"
echo "所有参数为: $*"
echo "参数个数为: $#"
echo "这个程序的PID为: $$"
echo "上一个程序的PID为: $! "
echo "上一个程序的返回值为: $?"

运行sh s1 pz 25 Gd Gz 显示结果为 :

程序名为: s1
姓名为: pz
年龄为: 25
所属省份: gd
所在城市: gz
第五个参数为:
所有参数为: pz 25 gd gz
参数个数为: 4
这个程序的PID为: 5357
上一个程序的PID为:

特殊符号使用

双引号 “” (让双引号内的变量生效)
单引号 ‘’ (将单引号内的变量当作字符使用)
反斜线 \ (禁用特殊字符功能$)
后引号 `` (将引号内的内容当作命令执行)这个字符所对应的键一般位于键盘的左上角,不要
将其同单引号(’)混淆。

[root@localhost ~]# echo "Today is `date`"
Today is 2021年 05月 10日 星期一 10:53:28 CST

shell的内部命令
read命令
在这里插入图片描述

echo命令
在这里插入图片描述
在这里插入图片描述

分支控制语句

两路分支语句
在这里插入图片描述
多路分支语句
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
条件判断 实例

设计一个shell,该shell运行时提示从键盘输入一个字符,如果输入的字符是y,则显示“right”,如果是
“n”,则显示“wrong”,否则显示“bat input

echo -n "Please input char"
read input
if [ $input = y ]
then echo "Right"
elif [ $input = n ]
then echo "Wrong"
else echo "Bad input“
fi
echo -n "Please input your age (such as: 18):"
read age
if [ $age -lt 18 ]
then echo "children"
else echo "adult"
fi

Apache服务器

网络相关知识

ip地址

IP 地址介绍: ip(internet protocol) 地址是用于标识网络中的一台设备(主机),好比生活中的家庭地

ip地址两个版本
ipv4: 32位二进制构成,用十进制表示,分为4段, 每一段范围0-255, 比如 192.168.78.22 ,
随着互联网发展, ipv4地址完全不够用, 所以推出ipv6版本
ipv6: 128位二进制构成,用十六进制表示,比如: fe80::bc92:8424:c45e:464/64

使用ifconfig 命令配置网卡

功能: 查看与配置网卡参数
使用:
ifconfig :查看所有网卡信息
ifconfig 网卡名 : 查看某个网卡信息
ifconfig 网卡名 up|down :激活网卡/禁用网卡
ifconfig 网卡名 ip地址 : 修改ip地址
ifconfig 网卡名 netmask 子网掩码 :修改子网掩码
ifconfig 网卡名:1 ip地址 : 绑定多个IP
提示: 使用ifconfig命令设置的ip地址为临时ip,当重启后失效

使用配置文件配置网卡
配置文件:
配置文件位置: /etc/sysconfi g/network-scri pts/i fcfg-ens33

TYPE=Ethernet #网络类型(通常是Ethemet)
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=dhcp #IP的配置方法[none| stati c| bootp| dhcp] (引 导时不使用协议| 静态分配
IP| BOOTP协议| DHCP协议)
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes # IPV6是否有效(yes/no)
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stabl e-pri vacy
NAME=ens33 # 网卡名
UUID=9c863b9c-f7f4-4066-a430-945851e79dae #全局唯一标识
DEVICE=ens33 # 系统逻辑设备名
ONBOOT=yes #系统启动的时候网络接口是否有效(yes/no)

配置静态ip地址:

TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=stati c # IP的配置方法为静态分配i d
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stabl e-pri vacy
NAME=ens33
UUID=9c863b9c-f7f4-4066-a430-945851e79dae
DEVICE=ens33
ONBOOT=yes
NETMASK=255. 255. 255. 0 # 子网掩码
IPADDR=192. 168. 140. 10 #本机i p地址
GATEWAY=192. 168. 140. 2 #默认网关
DNS1=192. 168. 140. 2 #域名服务器, 与网关i p一致

提示:

1 . 配置静态ip参考网址: https://blog.csdn.net/aafeiyang/article/details/81533542
2. 静态ip地址必须同虚拟机网络连接方式(桥接模式/NAT模式/仅主机模式)的子网IP在同一网段
3. 子网掩码,网关, DNS域名服务器必须与虚拟机网络连接方式(桥接模式/NAT模式/仅主机模式)的
子网配置相同
4. 重启虚拟机后查看效果

ping命令

功能:测试网络连通性
使用:
ping ip地址| 域名 : 测试目标主机的网络连通性
提示: 按ctrl+c 终止命令

hostname命令

功能: 显示或设置主机名
使用:
hostname [主机名] : 显示或临时设置主机名
提示: 假如永久修改主机名, 需修改配置文件 /etc/hostname

守护进程

守护进程介绍 : 守护进程,独立于控制终端,且在后台运行,一般做监控和监听,大多数服务都是通过
守护进程实现的
守护进程启动与停止:
systemctl 命令可以启动和终止守护进程
systemctl status/start/stop/restart servername :查看服务运行状态/开始服务/停止服务/重
启服务
提示:centos6及以前版本 是使用 servi ce 命令

示例: 管理ssh服务(实现远程安全登录服务) ,服务名是 sshd 或者 sshd. servi ce
systemctl status sshd :查看sshd服务状态
systemctl start sshd : 启动sshd服务
systemctl stop sshd : 停止sshd服务

Web服务器介绍

Web服务器介绍

Web服务也称为WWW服务,采用 HTTP (HyperText Transfer Protocol)协议的一种服务,Web服务
基于Browse/Server结构,是互联网使用最广泛的服务

主流的Web服务器

目前业界主流web服务器有三种: Apache、 IIS、 Nginx

Apache: 是开源的老牌web服务器,在世界上的排名是第一的,它可以运行在几乎所有广泛使用的计算
机平台上,不仅简单、速度快、而且性能稳定
IIS : IIS是英文Internet Information Server的缩写,微软主力打造的web服务器,目前作为Windows系
统组件一部分,和微软上层web开发制(asp.net)应用接口紧密
Nginx: nginx是开源的后起之秀,是俄罗斯开发的一款用于高并发服务的web服务器,主要应用于高并
发网站、静态服务器、下载服务器等,其优点是性能更高,且支持负载均衡,反向代理等
Tengine: 是淘宝开发团队基于nginx修改的一款web服务器

示例: 使用chrome浏览器的调试控制台(ctrl+shift+i)查看网站的www服务器类型
中国建设银行(www.ccb.com)
中国招商银行(www.cmbchina.com)
新浪网(www.sina.com.cn)
淘宝网(www.taobao.com)

搭建Apache服务器

安装服务器软件

检查是否已安装apache服务器

rpm -q ’ httpd’
rpm -aq | grep ’ httpd’

安装Apache服务器(需联网)

apache的程序名为httpd
yum -y install httpd

启动Apache服务器

apache的服务名为httpd或者httpd.service,默认端口为80
检查apache服务是否运行

systemctl status httpd. servi ce :查看httpd服务的状态 ,按 q 退出
pstree | grep httpd : 查看进程中是否包含’httpd’进程
netstat -antp | grep 80 : 查看占用80端口的进程

启动| 停止| 重启 apache服务

systemctl start| stop| restart httpd. servi ce :启动| 停止| 重启Apache服务器

测试apache 服务器

在firefox浏览器中输入localhost或者127.0.0.1 或者 虚拟机ens33的ip地址 进行测试

配置Apache服务器

主配置文件

配置文件位置: /etc/httpd/conf/httpd. conf
查看文件内容命令: [l i j un@pzCentOS ~] $ grep -v “#” /etc/httpd/conf/httpd. conf

ServerRoot "/etc/httpd"
Li sten 80
Incl ude conf. modul es. d/*. conf
User apache
Group apache
ServerAdmi n root@l ocal host
<Di rectory />
Al l owOverri de none
Requi re al l deni ed
</Di rectory>
DocumentRoot "/var/www/html "

httpd.conf文件包含三部分

Global environment (全局变量配置)
  • ServerRoot apache进程运行的目录,指出服务器保存其配置、出错和日志文件等的根目录
  • Listen 监听的端口, 默认是80端口
  • ServerAdmin 设置Apache服务器管理员的邮件地址
  • DocumentRoot 网页的主目录,网页存放的路径. 默认为/var/www/html
  • DirectoryIndex 默认主页的文件名,默认为index.html
Virtual Hosts(虚拟主机配置)

虚拟主机: 虚拟主机是指一台服务器虚拟成多个web服务器
配置虚拟主机三种方法:

  • 基于名称的虚拟主机
    -服务器只有一个IP地址,但有多个域名
  • 基于端口的虚拟主机
    服务器只有一个IP地址,但设置多个端口, 一个端口对应一个web服务
  • 基于IP地址的虚拟主机
    服务器有多个IP地址,服务器上的网站用不同的IP地址访问
Main server configuration(主服务配置)

示例

1.在/var/www/html 目录下创建一个index.html网页文件

<html ><head><head><body>wel come apache server 培正</body></html >

2.启动Apache服务器

systemctl restart httpd. servi ce

3.在浏览器输入http://localhost:80/index.html 查看效果
4. /etc/httpd/conf/httpd. conf 配置文件修改监听端口

37 # Li sten: Al l ows you to bi nd Apache to speci fi c IP addresses and/or
38 # ports, i nstead of the defaul t. See al so the <Vi rtual Host>
39 # di recti ve.
40 #
41 # Change thi s to Li sten on speci fi c IP addresses as shown bel ow to
42 # prevent Apache from gl ommi ng onto al l bound IP addresses.
43 #
44 #Li sten 12. 34. 56. 78: 80
45 Li sten 80 #把默认的80端口改为8080 , 端口范围1-65535
46
47 #
48 # Dynami c Shared Obj ect (DSO) Support

5.重启Apache服务器
6.在浏览器输入http://localhost:8080/index.html 查看效果

防火墙命令

1:查看防火状态

systemctl status firewalld

service  iptables status

2:暂时关闭防火墙

systemctl stop firewalld

service  iptables stop

3:永久关闭防火墙

systemctl disable firewalld

chkconfig iptables off

4:重启防火墙

systemctl enable firewalld

service iptables restart  

FTP服务器

一、 Ftp服务简介

1 认识FTP服务

FTP协议是指File Transfer Protocol协议,即文件传输协议。该协议的主要功能是实现文件的传输
(上传下载)。
FTP服务就是使用FTP协议实现文件传输的服务

2 FTP服务的特点

C/S结构,即分成服务器和客户端两部分。跨平台,服务器端和客户端可以在linux,UNIX,windows
等平台实现。
服务器端使用tcp的20、 21 端口。 21 号端口称为控制连接端口。 20号端口称为数据连接端口,数
据连接完成后, 20号端口的连接自动关闭。
支持断点续传

3 FTP 术语

匿名用户: 在访问ftp服务时,输入anonymous表示匿名用户
上载(upload):把文件从客户端传输到服务器端。
下载(download):把文件从服务器下载到本地(客户端)

4 常见FTP服务器软件

Wu-ftpd:历史最久的FTP服务器软件,功能强大,稳定性好,但安全性较差
Proftpd:比较容易配置.
vsftpd:指very secure ftp,安全,高速,稳定.可以支持4000个以上的并发用户同时连接

二、 Ftp服务器安装与启动(vsftpd)

检测是否已经安装

rpm –q vsftpd
rpm –qa | grep vsftpd

安装:

yum -y install vsftpd

启动vsftpd服务

systemctl status| start| stop| restart vsftpd (查看状态| 启动| 停止| 重启) 服务

客户端访问ftp服务器

三、客户端访问FTP服务器

使用ftp客户端工具访问

winscp、 filezilla等

四、 FTP服务器的配置

配置文件

/etc/vsftpd/vsftpd.conf :主配置文件

/etc/vsftpd/ftpusers : 指定哪些用户不能访问FTP服务器

/etc/vsftpd/user_list: user_list则取决于userlist_enable和userlist_deny两项配置

提示

vsftp支持匿名登录,且匿名用户默认只能下载操作,远程路径: /var/ftp/pub
vsftp支持linux本地账号登录, 且默认支持上传下载操作, 远程路径:登录用户的主目录

开机自动启动| 取消 服务
systemctl enabl e| di sabl e vsftpd(服务名)
访问ftp服务器,记得要关闭服务端的防火墙
systemctl stop firewal l d

NFS 与 Samba服务器

例子 NFS-Samba服务器_Linux_College_Laboratory report11

NFS服务器

一、 NFS服务简介

1.NFS介绍

NFS(Network File System)由Sun公司制定的用于分布式访问的文件系统,它的本质是文件系统。
主要在 *nix 系列操作系统上使用,基于TCP/IP协议层,可以将远程的计算机磁盘挂载到本地,像本地磁盘一样操作
NFS最大的功能就是可以通过网络,让不同的机器、不同的操作系统可以共享彼此的文件。

2.NFS使用的协议

NFS的结构模式为C/S。服务器端与客户端之间通过远程过程调用RPC(Remote Procedure Call)通信。

3.NFS相关的术语

导出(export):设置服务器上的目录能够被客户端访问的过程,称为导出。
安装(mount):客户端访问服务器上的导出目录的过程,称为安装或挂载,也称为导入

二、 NFS服务器的安装与配置

1.安装服务端软件

检查是否安装 rpm -qa | grep nfs
yum -y instal l nfs-uti l s rpcbi nd
提示: centos7, centos8默认已经安装

2.共享目录设置

创建要共享的目录

比如 mkdir /opt/nfs (位置自己随意设定)
可随意添加一个文件: info.txt,便于测试

设置文件访问权限

chmod -R a+w /opt/nfs :所有用户都可读写该目录及其子目录
递归设置权限, 要慎重

关闭防火墙

a) 方式一 systemctl stop fillwalld
b) 方式二 如果正在运行Firewalld服务,则需要允许通过防火墙进入必要的NFS服务(mountd,
nfs, rpc-bind),然后重新加载防火墙规则以应用更改,如下所示:

firewall-cmd --permanent --add-service=nfs
firewall-cmd --permanent --add-service=rpc-bind
firewall-cmd --permanent --add-service=mountd
firewall-cmd --reload

3.更改配置文件

配置文件名 : /etc/exports

#ip地址为192. 168. 140. 0–192. 168. 140. 24 都可读写该目 录
#/opt/nfs 192. 168. 140. 0/24(rw, sync)
#所有ip都可读写操作共享目录
/opt/nfs *(rw, sync)

让配置文件立即生效: exportfs -ra

4.重启服务

systemctl restart nfs-server

三、在linux客户端查看nfs共享资源

查看服务端nfs共享状态

showmount -e 服务端ip

挂载服务端的共享资源到本地

mount -t nfs 192.168.140.10: /opt/nfs /home/pz/temp
-t nfs : 表示挂载的类型是nfs
192.168.140.10 :表示服务端的ip
/opt/nfs :表示服务端导出的路径, 用于共享资源
/home/pz/temp :表示挂载点 ,自己可以随意设定目录, 但目录必须要存在

卸载本地共享资源

umount 挂载点

四、 windows 客户端配置(了解,拓展)

1.开启nfs服务
2.通过命令方式查看共享资源

查看服务端nfs共享状态
showmount -e 服务端i p

通过命令方式挂载
mount \服务端i p: \opt\nfs z:

3.通过桌面方式自动挂载

Samba服务

1.Samba服务器简介

SMB(Service message block)协议,是用于实现不同计算机之间共享文件和打印机的协议
Samba服务器就是基于SMB协议的服务器,即文件和打印共享服务器 ,主要用于局域网内
windows和Linux之间共享文件和打印服务

2.搭建Samba服务器

2.1 安装服务器软件

检测samba是否已经安装
rpm –qa | grep samba
rpm –q samba
安装samba
yum install -y samba

2.2 启动samba服务器

systemctl start smb

2.3 配置samba服务器

配置文件: /etc/samba/smb.conf

[gl obal ] #定义全局参数和缺省值, 适用于每一个共享目 录
workgroup = SAMBA
securi ty = user
passdb backend = tdbsam
pri nti ng = cups
pri ntcap name = cups
l oad pri nters = yes
cups opti ons = raw
[homes] #用于定义用户的主目 录共享
comment = Home Di rectori es
val i d users = %S, %D%w%S
browseabl e = No
read onl y = No
i nheri t acl s = Yes
[pri nters] #用于定义打印机共享
comment = Al l Pri nters
path = /var/tmp
pri ntabl e = Yes
create mask = 0600
browseabl e = No
[pri nt$]
comment = Pri nter Dri vers
path = /var/l i b/samba/dri vers
wri te l i st = @pri ntadmi n root
force group = @pri ntadmi n
create mask = 0664
di rectory mask = 0775

[userdefined_ShareName] 用于用户自 定义共享目 录(可以有多个)
[myshare] #自 定义共享目 录
comment= my test samba
path=/opt/soft
wri teable=yes
public=no
valid users= lijun root

参数设置详解

workgroup = SAMBA :定义该Samba服务器所在的工作组
security = user

定义Samba的安全级别, 按从低到高分为三级: user, server, domain
user: samba的默认配置, 要求用户在访问共享资源之前必须先提供用户名和密码进行验证。
server: 和user安全级别类似, 但用户名和密码是递交到另外一个服务器去验证
domai n: 这个安全级别要求网络上存在一台Wi ndows的主域控制器, samba把用户名和密码递交
给它去验证。
注: 三种安全级都要求用户在本linux机器上也要有帐户, 否则是不能访问的。

comment :对共享目录的描述
path:共享目录在服务器中对应的实际路径
writeable =yes 对目录具有写权限
browseable: 该共享目录是否可见(可浏览)
valid users: 指定允许使用服务的用户,多用户用空格隔开
read only: 指定共享路径是否为只读
public: 指定是否允许guest帐号访问
read list: 设置只读访问用户组,组名前加@
write list设置读写访问用户组

配置是否成功

2.4 添加samba用户

访问共享目录的用户密码不是系统用户的密码,但用户名一样,我们还要使用 pdbedi t 创建和系
统用户对应的Samba共享用户

pdbedit -a 用户名: 设置用户密码
pdbedit -L : 可以列出所有的Samba共享用户
pdbedi t -x -u pz 删除共享用户pz

2.5 windows客户端访问samba共享

在运行命令中查看

Linux远程登录

一、远程登录概念

登录: 通过用户名密码进入到系统中

远程: 非本地,不同主机通过网络实现登录

二、 Telnet实现远程登录

Telnet曾经是使用最广泛的远程登录工具,但是Telnet协议有一个致命的缺陷,那就是使用明文
传输。所以现在linux已经不再包含telnet服务程序,并且也不推荐用户使用
Telnet:不安全,已经淘汰的远程登录方式

三、 SSH实现远程登录

1.ssh介绍

SSH是Secure Shell的简写,也就是“安全的shell”。 SSH会对用户的身份进行验证,并加密(RSA加密方式: 公钥,私钥)两台主机之间的通信。可以有效防止远程管理过程中的信息泄露问题目前的SSH已经转变为商业产品SSH2,但我们可以使用免费开源的OpenSSH。使用ssh服务,需要安装服务端软件和客户端软件

2.SSH服务端与客户端软件安装

ssh服务端安装

检测ssh服务端是否已经安装
rpm -qa | grep ssh
安装ssh服务端
yum install -y openssh-server
提示: centos 默认已经安装了ssh服务端与客户端

ssh客户端安装

mac(unix)和linux(unix)默认已经安装好ssh客户端,直接使用ssh命令即可实现远程登录
安装: yum -y install openssh-clients
windows 需要安装第三方的ssh客户端软件,比如putty、 xshell、 SecureCRT等

3.客户端远程登录服务端

服务端运行ssh服务

检查ssh服务运行情况
systemctl status sshd. service
运行ssh服务
systemctl start sshd. service

Linux\Mac 客户端访问服务端

直接使用ssh命令登录
命令格式1 : ssh 用户名@服务器IP
命令格式2: ssh -l 用户名 服务器IP

Windows系统访问服务端

由于windows没有预装ssh客户端软件,通过第三方的ssh客户端工具 实现远程登录

先测试客户端与服务端的网络通信是否通畅
查看ip地址命令: windows(ipconfig) linux(ifconfig)
测试主机连通性命令: ping 目 标主机ip
使用putty\xshell\SecureCRT 等第三方ssh客户端工具远程登录ssh服务端

Linux启动过程

一、计算机启动过程

1.1 两种启动方式

传统启动方式(Legacy+mbr)

指传统BIOS启动方式,存在一些不足:比如只支持2TB以下硬盘,只支持四个分区,且不支持图
形操作

UEFI+GPT方式

是新式的启动方式,逐步取代传统启动方式
相对于 Legacy+mbr , 优点在于

  • 启动更快(不要开机自检),
  • 最多可支持128个磁盘分区
  • 最大可支持18EB硬盘
  • 支持图形操作

1.2 计算机启动流程(以Legacy+mbr为参考)

开机,系统BIOS加电自检
读主引导扇区MBR
读取激活分区DBR
操作系统引导代码引导系统并读取操作系统初始化文件

在这里插入图片描述

1.3 专业术语介绍:

BIOS

Basic Input Output System(基本输入输出系统)的简称,是一组固化到主板中一个ROM芯片上的
程序
Legacy
Legacy:传统的BIOS架构,每次启动需自检,且不支持图形操作

UEFI:

统一的可扩展固件接口(Unified Extensible Firmware Interface),uefi是新式的BIOS架构,
每次启动可不需自检,支持图形操作

MBR

Master Boot Record: 主引导记录 ,是一种磁盘分区架构
作用:检查分区表是否正确以及确定哪个分区为引导分区,并在程序结束时把该分区的启动程序调
入内存加以执行,是BIOS转向操作系统的操作入口
不足: 支持的分区少,且最大只支持2TB磁盘

GPT

GPT全称:Globally Unique Identifier Partition Table Format,全局唯一标识分区表,一种由基
于 Itanium 计算机中的可扩展固件接口 (EFI) 使用的磁盘分区架构,用于取代MBR磁盘分区架构
优点:
最多可支持128个磁盘分区,且最高可支持18EB的大硬盘等

DBR

分区引导扇区也称DBR,是由FORMAT高级格式化命令写到该扇区的内容,DBR是由硬盘的MBR
装载的程序段。DBR装入内存后,即开始执行该引导程序段,其主要功能是完成操作系统的自举并
将控制权交给操作系统。每个分区都有引导扇区,但只有被设为活动分区的DBR才会被MBR装入
内存运行

二、Linux启动过程

(1) 加载BIOS(Basic Input/Output System)
(2) 进入GRUB
(3) 加载Linux Kernel

  1. 探测可识别到的所有硬件设备
  2. 加载硬件驱动程序
  3. 以只读方式挂载根文件系统
    内核初始化信息可在启动完成后用dmesg命令查看。

(4) 执行init进程
第一个进程,PID为1,是所有进程的父进程。负责产生其他所有用户进程
(5) 根据init配置文件设置默认运行级别
在centos7中:初始化程序init是systemd,其配置文件为:/usr/lib/system/systemd/,
/etc/systemd/system/
查看/etc/inittab 文件, 获取默认运行级别
(6) 执行默认级别中的所有Script
(7) 执行/bin/login程序
提示用户输入帐户和口令

三、Grub配置

GRUB(Grand Unified Bootloader)引导程序,可以对各种linux发行版本进行引导,也可以引导其它
操作系统

3.1 查看grub配置文件

grub配置文件名:grub.cfg , 保存在/boot/grub2目录中

提示:需要进入root用户 ,才有权查看

查看内容命令: cat /boot/grub2/grub.cfg
# DO NOT EDIT THIS FILE 
# It is automatically generated by grub2-mkconfig using templates 
# from /etc/grub.d and settings from /etc/default/grub ...

查看内容命令: cat /etc/default/grub

GRUB_TIMEOUT=5 
GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)" 
GRUB_DEFAULT=saved 
GRUB_DISABLE_SUBMENU=true 
GRUB_TERMINAL_OUTPUT="console" 
GRUB_CMDLINE_LINUX="crashkernel=auto resume=/dev/mapper/cl-swap rd.lvm.lv=cl/root rd.lvm.lv=cl/swap rhgb quiet" 
GRUB_DISABLE_RECOVERY="true" 
GRUB_ENABLE_BLSCFG=true

查看目录列表命令: ls /etc/grub.d

[root@pzCentOS grub.d]# ls /etc/grub.d 
00_header 01_users 20_ppc_terminfo 40_custom 
00_tuned 10_linux 30_os-prober 41_custom 
01_menu_auto_hide 20_linux_xen 30_uefi-firmware README

3.2 修改grub引导菜单等待时间

配置文件 /etc/default/grub
1)切换至有修改权限的用户, 比如root用户 :
命令: su root
2) 编辑grub文件 命令: gedit /etc/default/grub
3) 修改/etc/default/grub文件中的GRUB_TIMEOUT=5 这一参数值, 且保存退出
在这里插入图片描述
4)grub2-mkconfig –o /etc/grub2.cfg 命令重新编译生成grub文件
5)重启系统,查看效果

命令: shutdown -r now

在这里插入图片描述
第一个选项正常启动,第二个选项急救模式启动(系统出项问题不能正常启动时使用并修复系统)

3.3 重置root密码

1.在启动GRUB菜单中选择编辑选项,按键 e 进入内核信息编辑界面;

在这里插入图片描述

2.在 rhgb\quiet 后面加上 rd.break ,并且按 ctrl-x 进入单用户模式

在这里插入图片描述

3.在命令界面依次输入如下命令:
mount -o remount,rw /sysroot 
chroot /sysroot 
passwd 
#此处输入两次你的新密码 
touch /.autorelabel 
exit 
reboot

在这里插入图片描述

4.完成 重设root 密码在这里插入图片描述

四、设置Linux运行级别

1. 查阅 /etc/inittab文档

查看文件内容命令: cat /etc/inittab

# inittab is no longer used. 
#
# ADDING CONFIGURATION HERE WILL HAVE NO EFFECT ON YOUR SYSTEM. 
#
# Ctrl-Alt-Delete is handled by /usr/lib/systemd/system/ctrl-alt-del.target 
#
# systemd uses 'targets' instead of runlevels. By default, there are two main targets: 
#
# multi-user.target: analogous to runlevel 3 
# graphical.target: analogous to runlevel 5 
#
# To view current default target, run: 
# systemctl get-default 
#
# To set a default target, run: 
# systemctl set-default TARGET.target

2. 设置Linux的运行级别

运行级别3(multi-user-target 多用户字符方式)
运行级别5(graphical-target 多用户图形方式 )

  • 查看当前启动级别: 命令: systemctl get-default
  • 设置启动级别3 命令: systemctl set-default multi-user.target
  • 设置启动级别5 命令: systemctl set-default graphical.target
  • 重启虚拟机 命令: reboot

可参考

Linux 用户和用户组管理

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值