电脑安装虚拟机
有些电脑需要打开虚拟化选项,这里以联想电脑举例:开机按F2进入BIOS,选择Configuration的选项,Intel Virtual Technology的选项设置成Enable的状态
这里安装的是Centos6.5
Vmware中网卡 桥接(bridge),NAT
桥接:宿主机 ,虚拟机 在网络上 ,等同的 ,相互都具有独立的ip地址
NAT模式:宿主机(192.168.0.3) 虚拟机(192.168.0.3)
宿主机 可以与 虚拟机 构建一个 虚拟的网络
便于实验 测试 虚拟的IP地址
设置ip地址
临时ip地址的设置
ifconfig eth0 192.168.111.3 关机 重启 ip将消失
永久设置linux服务器ip地址
vi /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
TYPE=Ethernet
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=static
IPADDR=192.168.111.3
NETMASK=255.255.255.0
GATEWAY=192.168.111.0
重启网络服务器 service network start|stop|restart
ifconfig命令:
ifconfig直接执行 显示所有网卡的ip地址
ifconfig eth0 具体查看某一块网卡的ip信息
ifconfig eth0 up|down 启动|关闭某一块网卡
防火墙操作
Centos6防火墙命令:
service iptables start|stop|restart|status 开启|关闭|重启|查看 当前防火墙,
chkconfig iptables off|on 关闭防火墙开机自动启动
Centos7防火墙命令
systemctl start|status|stop firewalld 开启|查看|关闭 防火墙
systemctl disable firewalld 关闭防火墙开机自启
关闭selinux : 红帽子、centos公司定制的一种安全服务
vi /etc/selinux/config
SELINUX=disabled
linux常用的其他相关命令
查看主机名的命令 hostname
修改主机名命令 hostnamectl set-hostname 主机名
修改主机名文件 /etc/hostname
主机名与ip地址的映射 作用:1.好记 2.解耦合
windows映射 C:\Windows\System32\drivers\etc\hosts
linux映射 vi /etc/hosts
删除老机器的mac地址 rm -rf /etc/udev/rules.d/70-persistent-net.rules
#远程复制
#从本地复制到远程
拷贝文件 scp /home/test/test.txt root@192.168.0.2:/home/test/
拷贝目录 scp -r /home/test/ root@192.168.0.2:/home/test/
#从远程复制到本地
拷贝文件 scp root@192.168.0.2:/home/test/ /home/test/test.txt
拷贝目录 scp -r root@192.168.0.2:/home/test/ v/home/test/
#同步数据
a:归档拷贝 v:显示复制过程
同步文件夹 rsync -av /home/test root@192.168.0.2:/home/test/
只同步文件夹中差异的内容,而不是全部复制(第一次同步等同于复制),比如第一次复制后,接着在/home/test中
做了一些修改,此时只需将和另一台机器有差异的文件同步过去即可,可以理解为增量复制
rpm解压 rpm -ivh jxxxx.rpm
tar解压 tar -zxvf xxx.tar -C /xxx/xxx
Centos7查看硬盘使用情况
lsblk 查看分区和磁盘
df -h 查看空间使用情况
disk -l 分区工具查看分区信息
cfdisk /dev/sda 查看分区
blkid 查看硬盘label(别名)
du -sh ./* 统计当前目录各文件夹大小
free -h 查看内存大小
mkfs -t xfs /dev/vdb && mount /dev/vdb /data 给机器挂载磁盘
说明: mkfs -t xfs /dev/vdb 指定/dev/vdb为xfs文件系统
mount /dev/vdb /data 指定/dev/vdb挂载到/data文件夹下(data文件夹要存在,不存在需要手动创建)
linux服务器中双网卡的设置
- 虚拟中配置一个新的网络适配器,设置类型为桥接
- cp ifcfg-eth0 ifcfg-eth1 复制ifcfg-eth0命名为ifcfg-eth1
- 修改ifcfg-eth1
/etc/syconfig/nework-scripts/ifcfg-eth1
DEVICE=eth1
TYPE=Ethernet
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=dhcp
- 启动ifcfg-eth1网卡
配置环境变量说明
vi /etc/profile 环境变量 linux 所有用户生效
vi ~/.bash_profile 环境变量 当前用户生效
vi ~/.bashrc
注意:
在编辑/etc/profile文件时,profile中有一段如下代码,意思就是加载/etc/profile.d
文件夹下的所有以.sh
结尾的配置文件,所以现在好多企业也有在profile.d中配置的
所以修改环境变量还有以下方法:
- 在/etc/profile.d文件夹中创建自己的以.sh结尾的配置文件,并编写环境变量
如:export JAVA_HOME = jdk路径
export PTAH=$PATH:$JAVA_HOME/bin- 重新加载profile
source etc/profile
一些常用linux的命令
#远程复制
#从本地复制到远程
//将本机/home/test/test.txt复制到192.168.0.2的/home/test/文件夹下
拷贝文件 scp /home/test/test.txt root@192.168.0.2:/home/test/
//将本机的/home/test/文件夹复制到192.168.0.2的/home/test/文件夹下
拷贝目录 scp -r /home/test/ root@192.168.0.2:/home/test/
#从远程复制到本地
//将192.168.0.2的/home/test/test.txt文件复制到本机的/home/test/文件夹下
拷贝文件 scp root@192.168.0.2:/home/test/test.txt /home/test/
//将192.168.0.2的/home/test/文件夹复制到本机的/home/test/文件夹下
拷贝目录 scp -r root@192.168.0.2:/home/test/ v/home/test/
rpm解压 rpm -ivh jxxxx.rpm
tar解压 tar -zxvf xxx.tar -C /xxx/xxx
lsof -i :22 知道22端口被哪个进程占用
netstat -lnp|grep 7000 查看7000端口占用情况
ps aux | grep 进程A相关 查询进程A
ps -axu和ps aux区别不大,但-aux可能会打出警告提示,所有不推荐用-
例如:ps aux | grep amoeba 查到amoeba的进程
ps aux | grep -v grep| grep NameNode
中间加个grep -v grep是因为使用此命令过滤时,也会将自己的查询作为一个结果查出来,中间的grep是过滤自己的作用
ps -ef 查看所有的进程
ps -ef | grep -v grep| grep NameNode 和aux区别不大
aux是BSD风格,-ef是System V风格 推荐用-ef
-rwxr--r-- (一共10个参数) 表示文件所属组和用户的对应权限。
总共分为4部分
【文件或文件夹】【owner权限】【group权限】【others权限】
【文件是-,文件夹是d】【r/w/x相加】【r/w/x相加】【r/w/x相加】
第一个跟参数判断是文件还是文件夹,跟chmod无关
2-4参数:属于owner
5-7参数:属于group
8-10参数:属于others
接下来就简单了:r==>可读 w==>可写 x==>可执行
r=4 w=2 x=1
所以755代表 rwxr-xr-x
777 代表 rwxrwxrwx 所有用户都可读可写可执行。
修改文件权限:chmod 755 linuxmi.txt
修改文件夹权限:chmod 777 /images/xiao
top 查看linux资源使用情况
find命令格式:
find path -option 【 -print 】 【 -exec -ok |xargs |grep 】 【 command {} \; 】
find命令的参数:
1)path:要查找的目录路径。
~ 表示$HOME目录
. 表示当前目录
/ 表示根目录
2)print:表示将结果输出到标准输出。
3)exec:对匹配的文件执行该参数所给出的shell命令。
形式为command {} \;,注意{}与\;之间有空格
4)ok:与exec作用相同,
区别在于,在执行命令之前,都会给出提示,让用户确认是否执行
5)|xargs 与exec作用相同 ,起承接作用
区别在于 |xargs 主要用于承接删除操作 ,而 -exec 都可用 如复制、移动、重命名等
6)options :表示查找方式
options常用的有下选项:
-name filename #查找名为filename的文件
-perm #按执行权限来查找
-user username #按文件属主来查找
-group groupname #按组来查找
-mtime -n +n #按文件更改时间来查找文件,-n指n天以内,+n指n天以前
-atime -n +n #按文件访问时间来查找文件,-n指n天以内,+n指n天以前
-ctime -n +n #按文件创建时间来查找文件,-n指n天以内,+n指n天以前
-nogroup #查无有效属组的文件,即文件的属组在/etc/groups中不存在
-nouser #查无有效属主的文件,即文件的属主在/etc/passwd中不存
-type b/d/c/p/l/f #查是块设备、目录、字符设备、管道、符号链接、普通文件
-size n[c] #查长度为n块[或n字节]的文件
-mount #查文件时不跨越文件系统mount点
-follow #如果遇到符号链接文件,就跟踪链接所指的文件
-prune #忽略某个目录
find的常规用法的一些简单案例:
1、按名字查找
在当前目录及子目录中,查找大写字母开头的txt文件
$ find . -name '[A-Z]*.txt' -print
在/etc及其子目录中,查找host开头的文件
$ find /etc -name 'host*' -print
在$HOME目录及其子目录中,查找所有文件
$ find ~ -name '*' -print
在当前目录及子目录中,查找不是out开头的txt文件
$ find . -name "out*" -prune -o -name "*.txt" -print
2、按目录查找
在当前目录除aa之外的子目录内搜索 txt文件
$ find . -path "./aa" -prune -o -name "*.txt" -print
3、按时间查找
查找2天内被更改过的文件
$ find . -mtime -2 -type f -print
查找2天前被更改过的文件
$ find . -mtime +2 -type f -print
查找一天内被访问的文件
$ find . -atime -1 -type f -print
查找一天前被访问的文件
$ find . -atime +1 -type f -print
查找一天内状态被改变的文件
$ find . -ctime -1 -type f -print
查找一天前状态被改变的文件
$ find . -ctime +1 -type f -print
查找10分钟以前状态被改变的文件
$ find . -cmin +10 -type f -print
4、按大小查找
查找超过1M的文件
$ find / -size +1M -type f -print
查找等于6字节的文件
$ find . -size 6c -print
查找小于32k的文件
$ find . -size -32k -print
Centos6修改yum源(wget命令也无法使用的情况)
本来是想使用yum安装mysql,结果yum源不能用,就想着换一个yum源,结果网上大部分都是需要使用wget命令,
但wget安装又需要yum,互成死锁了,本来想手动下载wget安装包手动安装,但没成功,在网上找了半天才发现一个
在不使用wget命令就可以修改yum源的方法
解决方法(逐条输入即可)
#第一条命令我没执行
sed -i “s|enabled=1|enabled=0|g” /etc/yum/pluginconf.d/fastestmirror.conf
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
curl -o /etc/yum.repos.d/CentOS-Base.repo https://www.xmpan.com/Centos-6-Vault-Aliyun.repo
yum clean all
yum makecache