1.2 Linux的高级命令
1.2.1 编辑
1.2.1.1 vi(系统自带)
命令模式
– 进入插入模式
i I
a A
o O
– 常用命令
dd 删一行
ndd 往下删n行
yy 复制一行
nyy 复制n行
p 复制的数据粘贴到游标所在行的下一行
P 复制的数据粘贴到游标所在的上一行
gg 移动到本文件的第一行
G 移动到本文的最后一行
u 撤销前一个动作
x 向后删除一个字符
nx 向后连续删除n个字符
d1G 删除从此行到第一行
dG 删除从此行到最后一行
插入模式
– 进入命令模式
i 操作光标之前
I 光标移到行首
A 光标移到行尾
o 光标移到当前行的下一行
O 光标移到当前行的上一行
底行命令
:set nu 显示行号
:q 退出
:wq 保存退出
shift + zz
:q! 不保存强制退出
:wq! 保存强制退出
1.2.1.2 vim(系统不自带,需自己安装,使用与vi一致)
1.2.2 设置静态IP地址
命令行的方式
vim /etc/sysconfig/network-scripts/ifcfg-(名字)
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static
DEFROUTE=yes
NAME=ens33
DEVICE=ens33
ONBOOT=yes
IPADDR=192.168.10.101
IPADDR1=192.168.10.201
GATEWAY=192.168.10.2
NETMASK=255.255.255.0
DNS1=8.8.8.8
DNS2=114.114.114.114
DNS3=192.168.10.2
注:把BOOTPROTO修改为none或static,ONBOOT修改为yes,修改完成需重启网络生效
systemctl restart network,查看当前IP可使用ip addr。
1.2.3 防火墙(NetWorkManager操作一致)
关闭防火墙(临时)
systemctl stop firewalld
或
systemctl status firewalld
开启防火墙
systemctl start firewalld
设置防火墙开机自启
systemctl disable firewalld
或
systemctl enable firewalld
1.2.4 selinux安全服务
关闭selinux安全服务
vim /etc/selinux/config
将SELINUX=enforcing改为SELINUX=disabled
1.2.5 网络操作
测试网络的连接通信
eg:
ping www.baidu.com
查看当前IP
ip addr
或
ifconfig
注:windows上用ipconfig
1.2.5 主机名
查看主机名
hostname
修改主机名
– 临时性
hostname name
– 永久性
vim /etc/hostname (重启生效)
或
hostnamectl set-hostname name(立即生效)
修改主机名和ip地址的映射关系
vim /etc/hosts
192.168.10.101 name
1.2.6 进程管理命令
ps 查看系统中的进程信息
-a 显示所有用户的进程
-u 显示用户名和启动时间
-x 显示没有控制终端的进程
-e 显示所有进程,包括没有控制终端的继承
-l 长格式显示
ps -ef |grep init 查看指定进程信息
ps axu 查看系统中所有进程
ps axu |grep sam 查看用户sam执行的进程
pstree 查看当前的进程树
-u 显示用户
top 查看使用进程的前20
fg 将后台线程调到前台运行
ctrl + z 挂起
& 加个地址符就是在后台运行
bg 将前台进程调到后台运行
kill 关闭进程
-9 立即杀死
-1 重启进程
-3 先清除某些内容再杀死进程
killall -1 关闭所有进程(忽略进程名的大小写)
w 查看用户信息
nohup 使进程在用户退出登录之后依然能继续执行
uptime 查看负载情况
1.2.7 用户和组的管理
注:只有root用户才可以操作,su切换为root用户
用户
– 增加用户
useradd
-c 注释
-b 主目录
-g gid group 主组
-G 副组
-u uid
useradd name
passwd name
cat /etc/passwd
– 注销用户
userdel name
-r
组
– 增加用户组
groupadd
-g 指定组id
– 修改用户组
groupmod
-n 修改组名
-o 允许使用重复gid
-p 将密码修改为加密过的
– 删除用户组
groupdel
sodu配置
vi /etc/sudoers
增加需要配置突破权限的用户
## Allow root to run any commands anywhere
root ALL=(ALL) ALL
name ALL=(ALL) ALL
## Same thing without a password
# %wheel ALL=(ALL) NOPASSWD: ALL
如果要执行突破之后的权限,前面要加sudo
1.2.8 文件权限命令
1
d 目录
r 列举目录下的内容
w 增加内容
删除内容 删除本身目录 看上一级的权限
修改内容
x 可以进入目录
- 普通文件
r 去读文件
cat
tail
head
more
w 修改文件内容
vi
echo
x sh
l 链接文件
2-10 a(all)
所属用户权限2-4 u(user)rwx 读写执行权限
所属组用户5-7 g(group)rwx 读写执行权限
其他用户权限8-10 o(other)rwx 读写执行权限
设置权限
chmod(可使用数字如777,增加所有权限)
增加权限
chmod g+w 文件名
减少权限
chmod o-x 文件名
all都只有一个权限
a=r 用户名
a=w 用户名
a=x 用户名
chown
修改文件所属者,所属组
-R 递归
修改所属用户
chown 用户名 文件名
修改所属组
chown :组名 文件名
1.2.9 软件安装管理
rpm安装
软件包要先安装依赖
*.rpm
r redhat
p package
m manager
i 安装
v 显示安装进度
h 显示安装进度
U 升级安装包
qa 显示所有已安装的软件包
e 卸载应用程序 --nodepts 默认卸载依赖
-ivh
yum安装
包依赖机制
yellowdog updater modified
方便的软件包升级
yum list 查询所有可用软件包列表
yum search 关键字
yum info 关键字
yum repolist 查询yum可用的仓库
yum clean all 清除yum的缓存信息 修改了库的配置,都需要清楚缓存信息 如果提示yum被pid占用 rm -f/var/run/yum.pid
安装 yum -y install app
-y 所有人机交互都回答yes
升级 yum -y update app
卸载 yum -y remove app
– 配置本地yum源
1、单击虚拟机的:设备——分配光驱——选择虚拟盘——选择D盘上的系统镜像文件,在终端执行以下命令:mkdir /mnt/cdrom #新建挂载目录
mount /dev/cdrom /mnt/cdrom #挂载光盘到/mnt/cdrom目录下
2、让网络yum源失效
cd /etc/yum.repo.d/
mkdir back
mv *.* back
cp back/CentOS-Media.repo .
3、配置本地yum源
cd /etc/yum.repos.d/ #进入yum配置目录
vi CentOS-Media.repo #编辑配置文件,添加以下内容
[c6=media]
name=CentOS-$releasever - Media #自定义名称(无需修改)
baseurl= file:///mnt/cdrom #本地光盘挂载路径#本地光盘挂载路径
gpgcheck=0 #检查GPG-KEY,0为不检查,1为检查
enabled=1 #启用yum源,0为不启用,1为启用
按ESC键,输入“:wq!”
4、清除yum缓存,使用yum install自动安装软件
# yum clean all #清空yum缓存
# yum list #生成缓存列表
测试本地源的指定是否成功。
yum install httpd
注意:若果安装出错(找不到路径),用init 6重启(让配置脚本生效)。
5、如果不需要以光盘为源进行软件安装时,只需要将/etc/yum.repos.d/back目录下的
拷贝回来即可。
cd /etc/ yum.repos.d/
cp back/*.* .
– 配置局域网yum源(搭载成web服务器,将包发出去,其他就能引用)
yum info http
yum -y install httpd
systemctl start httpd 开启服务
systemctl status httpd 查看
systemctl stop firewalld 关闭防火墙
systemctl enable httpd 开机自启
httpd的默认目录是/var/www/html
创建软连接,指向安装包的挂载目录 ln -s /mnt/cdrom /var/www/html/centos
配置yum源
源码编译(编译的时候和硬件紧密结合,会检测硬件,性能比较好)
1.2.10 克隆
– 修改ip地址
– 修改hostname
– 修改映射关系 /etc/hosts