Linux和一些简单的环境搭建

Linux简介

特点:

开放性,多用户,多任务,丰富的网络功能,可靠的系统安全,良好的可移植性,具有标准兼容性

环境准备

Vmware虚拟机化技术

2.1安装教程见文档

2.2网络配置

进入vi模式: vi /etc/sysconfig/network-scripts/ifcfg-eth0

按 i 键进入 insert 模式后可以输入

DEVICE=eth0  #网卡设备名,请勿修改名字

TYPE=Ethernet  #网络类型,以太网

BOOTPROTO=static  #启用静态IP地址

ONBOOT=yes  #开启自动启用网络连接

IPADDR=192.168.235.100  #设置IP地址

NETMASK=255.255.255.0  #设置子网掩码

GATEWAY=192.168.235.2  #设置网关

设置结束退出后重启一定要: service network restart

2.3Nut与桥接的区别

桥接模式:

结构:网络与物理机同一个网段(会占用外部IP)

特点:1.外网能够访问

2.能够访问外网

注意:桥接模式下的虚拟机网关必须改为与物理机网关一致

 

NAT模式:

结构:构成一个以物理机为网关的子网

特点:1.子网的所有的服务器对外不可见

2.子网能够正常访问外网

 

  • 文件系统操作

3.1目录操作

3.1.1切换

命令:cd + 目录的路径

查看当前目录的完整路径:pwd

cd .. 返回到父目录

cd /

cd /路径 /路径

3.1.2新建

命令:mkdir + 目录名字

查看当前目录下拥有的子目录和文件: ls     ll = ls –l

导入man 包: yum –y install man

3.1.3 拷贝

cp test test02 –r

cp test /home/ -r

3.1.4 删除

rmdir directory

rm -r dir

注意:rmdir只能删除空目录,若要删除非空目录则用rm命令

3.1.5移动/更改

移动文件或目录:mv + 目录/文件名字 + 其他路径

mv test /

更改文件或目录的名字:mv + 旧目录名字 + 新目录名字

mv test02 test01

3.2文件操作

3.2.1新建文件:(一切皆文件

不仅普通的文件,目录、字符设备、块设备、 套接字等在 Unix/Linux 中都是以文件被对待;它们虽然类型不同,但是对其提供的却是同一套操作面。

touch web.log 创建一个空文件

3.2.2 复制文件

cp web.log web_cp.log -r

复制文件【文件 文件夹目录】,加个-r 参数,代表遍历复制,此时可用于复制一个目录。

3.2.3 删除文件

rm –rf web_cp.log

此时需要手动输入y ,代表确认删除。可加 –f参数,直接删除,无需确认。当需要一个目录下所有东西时,加-r参数,代表遍历删除。

3.2.4 查看

3.2.4.1查看目录下的东西

ls / ll   命令 ls -l 等价于 ll

查看目录下的所有东西(包括隐藏文件)

命令:ls –al 等价于 ll –a

3.2.4.2查看文件内容

cat filename  : 一次性显示整个文件的内容

3.2.4.3打印文件

head -10 filename  (从头部)打印文件1到10行

tail -10 filename  (从尾部)打印文件最后10行

3.2.5查找文件或目录

find pathname –name filename

find /etc -name pro*

该命令表示为:在/etc目录下查找以pro开头的文件或目录

pathname越精确,查找的范围越小,速度越快。

 

四、文本编辑

4.1.vi

编辑模式

vi filename :打开或新建文件,并将光标置于第一行首

vi +n filename :打开文件,并将光标置于第n行首

vi + filename :打开文件,并将光标置于最后一行首

vi +/pattern filename:打开文件,并将光标置于第一个与 pattern匹配的串处

命令行模式

 w保存

 q退出

q!:不保存文件并退出vi

在VI的命令模式下输入“:set nu”,就有行号了。

搜索及替换命令

:s/p1/p2/g    将当前行中所有p1均用p2替代

:n1,n2s/p1/p2/g  将第n1至n2行中所有p1均用p2替代

:g/p1/s//p2/g    将文件中所有p1均用p2替换

一般模式

• yy 复制光标所在行(常用)

• nyy 复制光标所在行的向下n行,例如, 20yy则是复制20行(常用)

• p|P  p为复制的数据粘贴在光标下一行, P则为粘贴在光标上一行(常用)

G:光标移至第最后一行

nG:光标移动至第N行行首

n+:光标下移n行

n-:光标上移n行

H :光标移至屏幕顶行

M :光标移至屏幕中间行

L :光标移至屏幕最后行

• dd:删除 行

x或X:删除一个字符,x删除光标后的,而X删除光标前的

• u 恢复前一个动作(常用)

删除第N行到第M行:N,Md

,$-1d  删除当前光标到倒数第一行数据

4.2.vim

    拥有vi的所有功能,且视图更清晰化

yum install vim –y

五.远程传输

5.1拷贝

5.1.1将本地文件/目录复制到远程机器

scp -r test 192.168.2.5:/home/ 

scp -r test 192.168.2.5:`pwd` (将test文件考到另一个虚拟机的相同目录下)

5.1.2将远程机器上的文件/目录复制到本地

scp –r 192.168.2.5:/home/test /root/

5.2.上传/下载

需先安装好lrzsz :   yum install lrzsz –y

rz上传    sz下载

5.3.host配置

Windows端:C:\Windows\System32\drivers\etc\hosts 文件

添加你的ip和节点,例如下:

#192.168.94.101node1

#192.168.94.102node2

Linux端:vi/etc/sysconfig/network

六、磁盘指令

6.1.查看硬盘信息

df     (默认-k ,可加-m  -h)

6.2.查看文件/目录的大小

du 文件名字/目录名字   (默认-k ,可加-m  -h  -a)

du /etc/profile

七、网络指令

查看网络配置信息命令: ifconfig

测试与目标主机的连通性: ping 192.168.2.163

显示各种网络相关信息: netstat

测试远程主机的网络端口

需安装telnet :  yum install telnet -y

命令:   telnet ip port

http请求模拟

命令: curl [option] [url]

curl -X GET http://www.baidu.com/

八.系统管理

8.1.用户操作

8.1.1创建用户

useradd/adduser username

passwd username 修改密码

8.1.2删除用户

userdel -r username

8.1.3修改用户

usermod

usermod不允许你改变正在线上的使用者帐号名称。当usermod用来改变user时,必须确认这名user没在电脑上执行任何程序。

8.1.3.1修改用户名

usermod -l new_name old_name

8.1.3.2锁定账号

usermod -L username

8.1.3.3解除锁定

usermod -U mytest

8.1.4查看用户

whoami 查看当前登录用户名

普通用户可查看cat /etc/passwd

root用户可查看cat /etc/shadow

8.2.用户组操作(增删改查)

8.2.1创建用户组

groupadd groupname

8.2.2删除用户组

groupdel groupname

8.2.3修改用户组

groupmod -n new_name old_name

8.2.4查看用户组

groups username 查看指定用户所在的组

注意:创建用户时,系统默认会创建一个和用户名字一样的主组。用户名修改,但是主组名却不会更改.

usermod -g 组名 用户 —— 把用户的主组改为其他的组

usermod –g group username

usermod -G 组名 用户 —— 把用户添加到附加组当中

usermod –G group username

8.3.系统权限

查看/usr 目录下的每个文件或目录的权限

命令: ll /usr

8.3.1权限类别

r(读取)  w(写入)  x(执行)

8.3.2UGO模型

第一个字符代表文件(-)、目录(d),链接(l

Linux权限基于UGO模型进行控制

U代表User, G代表Group, O代表other

每一个文件的权限基于UGO进行设置

权限三个一组(rwx), 对应UGO分别设置

每个文件都有一个拥有者/用户(User), 用户的所属组即(Group), 不属于上面的都是other

8.3.3修改权限

8.3.3.1修改文件/目录的拥有者

修改所有者

chown username 文件/目录

命令:chown username:groupname 文件/目录

同时修改一个文件或目录的所有者和属组。

如果要递归修改整个目录下的所有者或属组,加参数-R.

如:chown -R mytest:test 目录名字

8.3.3.2修改文件/目录的属组

chgrp groupname name

8.3.3.3修改文件/目录的权限

命令:chmod ugo+rwx name

+ 赋予权限  - 取消权限

另外一种修改方式: r=4w=2x=1 (二进制)

chmod 700 file 文件的所有者才有读写和执行的权限

九.系统设置

9.1.DNS配置

hosts文件的作用相当于DNS,提供IP地址hostname的对应,可在这个文件里添加映射。域名解析  vi /etc/hosts

/etc/resolv.conf  为DNS服务器的地址文件

9.2.sudo权限配置

root的权限太过大了,慎用!!

vim /etc/sudoers(只读)

注意:在使用命令时,需要加sudo 然后在敲命令,且第一次使用时需要mytest用户密码,接下来每隔15分钟需要一次密码验证。

如果不需要密码直接运行命令的,应该加NOPASSWD:参数

(编辑时用)  visudo

sudo -l 列出该用户所有sudo权限

9.2.系统时间

date 查看当前系统时间

date -s 2012-08-02  只修改系统的日期

date -s 10:08:00    修改时间不修改日期

date -s "2018-01-01 04:53:00"  同时修改日期和时间

同步ntp时间(http://www.ntp.org.cn/pool.php)

需要事先安装ntp服务yum install ntp -y

命令:ntpdate cn.ntp.org.cn

十、重定向与管道

10.1.重定向符号

10.1.1输出重定向

> 输出重定向到一个文件或设备覆盖原来的文件

>> 输出重定向到一个文件或设备追加原来的文件

ls > shsxt.log ,这个命令会将ls的查看结果输出到shsxt这个文件里,不再将内容打印到屏幕上。

命令:echo “shsxt is good” >> shsxt.log

shsxt is good追加到shsxt.log文件里

10.1.2输入重定向

< 输入重定向到一个程序

cat < shsxt.log ,将shsxt .log文件里的内容当作是cat 命令的输入

10.2 标准/错误输出重定向

10.2.1 标准输出重定向

符号为: 1>

该符号含义为:输出重定向时,只有正确的输出才会重定向到指定文件,否则如果是错误的输出则不会。输出重定向默认是1。即符号“1>”等价于”>”

cat sxt > test.log  (目录下没有sxt这个文件)

所以,会显示错误日志 cat: sxt: No such file or directory并没有重定向到 test.log 文件里,而是直接打印到屏幕上

10.2.2 错误输出重定向

符号“2>”

该符号含义为:把错误的输出日志重定向到指定文件里,正确的日志则不会。

10.2.3 结合使用

符号2>&1

2>&1 将一个标准错误输出重定向到标准输出 ,即无论是正确的输出还是错误的输出都重定向到指定文件里。

以上重定向符号都是覆盖的,若想追加则用”>>”

cat sxt >>test.log 2>&1  全都重定向到test.log文件夹里

10.3 管道|

命令“|” 表示把前一个输出当做后一个输入

| grep 命令结合使用: netstat -anp | grep 22

命令含义:把netstat anp 命令的输出当做是grep 命令的输入。

上面的命令就是:先用netstat anp 命令查出本机的端口信息,然后把netstat输出的端口信息,用作grep命令的输入进行匹配搜,并且匹配的是22 ,即查看22端口是否开着。

10.4 命令执行控制

命令:&& 前一个命令执行成功才会执行后一个命令

cat shsxt && ping www.baidu.com

命令:|| 前一个命令执行失败才会执行后一个命令

cat shsxt || ping www.baidu.com

会先显示没有shsxt文件夹,再去连接网址

10.5 信息黑洞

写入它的内容都会永远丢失,说白了就是不显示任何信息

/dev/null

ls > /dev/null

十一.服务操作

11.1 列出所有服务

chkconfig

查询操作系统在每一个执行等级中会执行哪些系统服务,其中包括各类常驻服务。

11.2服务操作

service 服务名 start/stop/status/restart

防火墙的服务名为:iptables

service iptables start/stop  (临时)打开/关闭

service iptables /status 防火墙的状态

chkconfig iptables on/off  (永久)打开/关闭

11.3.添加服务

/etc/init.d 目录包含许多系统各种服务的启动和停止脚本

每个软连接前面都有一个以S或K开头+数字的前缀名,代表了这个脚本在开机时的启动顺序,或关机时的杀死顺序。(S为启动,K为杀死

kill -9 1806  强制关闭1806端口的进程

添加服务:

vim myservice

#chkconfig: 2345 80 90

#description:auto_run

result=’ntpdate cn.ntp.org.cn’

echo $result > /root/logs

chkconfig --add myservice   添加服务

service myservice start  开启服务

重启下服务器,验证一下。系统时间成功修改,且在/usr目录下有log产生。

11.4 删除服务

chkconfig --del name

chkconfig ipatables on/off 开启/关闭防火墙(永久)

十二.定时调度

crond 是linux下用来周期性的执行某种任务或等待处理某些事件的一个守护进程,与windows下的计划任务类似,当安装完成操作系统后,默认会安装此服务工具,并且会自动启动crond进程,crond进程每分钟会定期检查是否有要执行的任务,如果有要执行的任务,则自动执行该任务。

crontab –e 打开crontab定时配置文件,然后我们在里面编辑定时任务。

* * * * *  echo ‘helloworld’    (年月日时分-à5个 * )

*”任意的数字, “/”代表”每隔多久”, “-”代表从某个数字到某个数字, “,”分开几个离散的数字

 

该提示只有我们操作其他的命令后才会出现,如果一直放着是不会有此提示的。

/var/spool/mail/root  文件里查看root用户定时任务的执行情况

/var/spool/mail  目录下放各用户定时任务,执行后的信息

/var/spool/cron  目录存放每个用户的定时任务

contab –l  可以直接查看当前用户的定时任务

十三、linux安全

13.1 selinux

建议关闭SeLinux

•enforcing:强制模式,代表SELinux 运作中,且已经正确的开始限制domain/type了;

•permissive:宽容模式:代表SELinux 运作中,不过仅会有警告讯息并不会实际限制。这种模式可以运来作为SELinux 的debug 之用;•disabled:关闭,SELinux没有实际运作

查看SELinux状态:

 

sestatus -v    ##如果SELinux status参数为enabled即为开启状态

关闭SELinux

临时关闭(不用重启机器):

setenforce 0 设置SELinux 成为permissive模式

setenforce 1 设置SELinux 成为enforcing模式

修改配置文件需要重启机器:

修改/etc/selinux/config 文件,将selinux关闭掉。

将SELINUX=enforcing改为SELINUX=disabled

十四、其他常用命令

14.1 yum

yum是一个在Fedora和RedHat以及CentOS中的Shell前端软件包管理器。基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。

由于centos系统的yum默认是到国外网站下载,有时下载速度会很慢,故我们可以换一个yum的下载源,这里我们换一个国内的下载源阿里云镜像。

第一步:备份你的原镜像文件,以免出错后可以恢复。

cp /etc/yum.repos.d/CentOS-Base.repo.backup

第二步:下载新的CentOS-Base.rep到/etc/yum.repos.d/

wget O /etc/yum.repos.d/CentOSBase.repo http://mirrors.aliyun.com/repo/Centos-6.repo

下载完之后,vim /etc/yum.repos.d/CentOS-Base.repo 查看一下文件内容。

第三步:运行yum makecache生成缓存

查看当前源

yum list | head -50

14.2 wget

需先安装 yum install wget –y

wget用法:wget [option] 网址-O 指定下载保存的路径

wget www.baidu.com –O baidu.html

14.3 rpm

安装   rpm  –ivh  rpm

查找rpm已安装的软件  rpm -q ntp

卸载  rpm –e ntp-4.2.6p5-10.el6.centos.2.x86_64(全名)

14.4 tar

解压命令:tar -zvxf xxxx.tar.gz

压缩命令:tar -zcf 压缩包命名压缩目标

例子:tar -zcf tomcat.tar.gz apache-tomcat-7.0.61

将apache-tomcat-7.0.61 目录压缩成tomcat.tar.gz包。

14.5 zip

需先安装zip:yum install zip –y

压缩命令:zip -r 包名目标目录

解压  unzipfilename

需先安装  unzip,yum install unzip –y

十五.配置JDK(局部)环境变量

以 jdk-7u80-linux-x64.rpm 格式的jdk文件为例

  1. 上传并解压一个rmp格式的jdk文件到/home

rpm –ivh jdk-7u80-linux-x64.rpm

(默认解压到  /usr/java 目录下)

  1. 配置局部环境变量

root目录下  vim ~/.bash_profile

(下面两句复制要小心)

export JAVA_HOME=/usr/java/ jdk1.7.0_80

export PATH=$PATH:$JAVA_HOME/bin

重新加载环境变量

source ~/.bash_profile

验证是否成功  java –version

注意:配置环境变量时,很容易发生错误,所以虚拟器拍照很重要.

十六.部署Tomcat

1.配置Tomcat

 

以 apache-tomcat-7.0.61.tar.gz 格式的tar文件为例

1.上传并解压一个tar格式的Tomcat文件到 /home目录

tar –zvxf apache-tomcat-7.0.61.tar.gz (默认在/home目录下)

2.启动 tomcat

cd apache-tomcat-7.0.61

tomcatbin目录下有个startup.sh脚本可以直接启动tomcat务.

(启动前需要关闭防火墙 service iptables stop)

./bin/startup.sh

关闭tomcat服务,可以用shutdown.sh命令。

./bin/shutdown.sh

2.修改端口号

cd apache-tomcat-7.0.61

cd conf/  ----->在conf文件里的都是配置文件

vim service.xml

/8080找到默认的端口号,将connector port=8080,改为80

:wq保存退出

.

3.给host取别名

Windows端:

C:\Windows\System32\drivers\etc下有个hosts文件,可在最后添加:

192.168.18.5 node01

192.168.18.6 node02

192.168.18.7 node03

vim /etc/sysconfig/network  里面的hostname=node01,此node01指的是当前主机的名称,也就是[root@node01 ~]中@后的.

 

Linux端:

vim /etc/hosts

按o键可在最后添加: 192.168.18.5 node01

192.168.18.6 node02

192.168.18.7 node03

4. 克隆虚拟机

修改配置:

修改网卡    vi /etc/sysconfig/network-scripts/ifcfg-eth0

hostname  vi /etc/sysconfig/network

重启网络 service network restart

删除网络规则 rm -rf /etc/udev/rules.d/70-persistent-net.rules

重启虚拟机 reboot

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值