https://www.bilibili.com/video/av47702283/?p=2
JavaEE:至少得会Linux搭建JavaEE环境
大数据对服务器集群的操作,需要学习shell编程:脚本
python专业开发平台:Ubuntu;及开发环境搭建
1)linux运维工程师:
2)linux嵌入式工程师:
3)linux下开发项目:
程序员为什么要学linux:程序的开发、部署、维护都需要linux操作系统的使用。
1)个人桌面领域
2)服务器领域:因为Linux OS
1)第一阶段:基本操作命令
2)第二阶段:linux各种配置
3)第三阶段:linux下搭建对应语言的开发环境
4)第四阶段:能写shell脚本,对linux服务器进行维护
更高要求:(已经达到运维工程师的要求)
5)第五阶段:能进行安全设置,防止攻击。保障服务器正常运行,能对系统调优
6)第六阶段:深入理解linux系统(对内核有研究),熟练掌握大型网站应用架构组成、并熟悉各环节的部署和维护方法
1)高效而愉快的学习:学习结果——达到实操水平
2)先建立整体框架,然后细节
3)不需要掌握所以指令,学会查询手册和百度(基本指令要掌握)
4)先know how,再know why
5)计算机是一门“做中学”的学科,必须上手做了才会
6)适当的囫囵吞枣(实操中会使你大彻大悟)
7)Linux不是编程,重点是实际操作,各种指令要玩的溜
linux系统组成及结构:
https://blog.csdn.net/hguisu/article/details/6122513
1)计算机硬件、操作系统内核、操作系统发现版本的关系
Shell是系统的用户界面,提供了用户与内核进行交互操作的一种接口。它接收用户输入的命令并把它送入内核去执行,是一个命令解释器。另外,shell编程语言具有普通编程语言的很多特点,用这种编程语言编写的shell程序与其他应用程序具有同样的效果。
2)Liunx发展历史:Unix与Linux关系(GNU计划)
参考文章:
https://www.linuxidc.com/Linux/2016-09/135521.htm
首先是VMware的几个虚拟设备:
1.vmware为我们提供了三种网络工作模式,它们分别是:
打开vmware虚拟机,我们可以在选项栏的“编辑”下的“虚拟网络编辑器”中看到VMnet0(桥接模式)、VMnet1(仅主机模式)、VMnet8(NAT模式),那么这些都是有什么作用呢?其实,我们现在看到的VMnet0表示的是用于桥接模式下的虚拟交换机;VMnet1表示的是用于仅主机模式下的虚拟交换机;VMnet8表示的是用于NAT模式下的虚拟交换机。
2.宿主机的网卡:包含自己的网络适配器,以及两个虚拟机网络适配器
同时,在主机上对应的有VMware Network Adapter VMnet1和VMware Network Adapter VMnet8两块虚拟网卡,它们分别作用于仅主机模式与NAT模式下。在“网络连接”中我们可以看到这两块虚拟网卡,如果将这两块卸载了,可以在vmware的“编辑”下的“虚拟网络编辑器”中点击“还原默认设置”,可重新将虚拟网卡还原。
1.需求:
2.windows、vm和centos关系:
3.VM安装步骤
1)安装虚拟机软件:
BOIS里修改设置开启虚拟化设备支持(F2/F10)
2)虚拟空间的设置:
虚拟机网络连接的三种形式
1.安装流程
http://mirrors.163.com/centos/
1)CentOs磁盘分区的设置:
2)CentOs安装模块的选择:桌面、还是最小安装……
3)CentOs root 用户的创建
第一步:修改改静态IP
vim /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
TYPE=Ethernet
ONBOOT=yes
BOOTPROTO=static
IPADDR=192.168.1.100
PREFIX=24
GATEWAY=192.168.1.2
DNS1=192.168.1.2
NAME=eth0
第二步:改主机名
vim /etc/sysconfig/network
第三步:改网卡脚本文件(新虚拟机)
vim /etc/udev/rules.d/70-persistent-net.rules
1)VMware Tools的主要作用是:
2)安装:https://blog.csdn.net/blessed_sy/article/details/81173746
3)windows和linux共享文件夹的设置:
https://www.cnblogs.com/huangjianxin/p/6343881.html
4)共享文件夹的使用:
在终端命令行输入 cd /mnt/ + 按下两次Tab键 ,回车,即可进入主机中的共享文件夹。
linux 的文件系统:
记住一句经典的话: 在 Linux 世界里, 一切皆文件。
深刻理解 linux 树状文件目录是非常重要的:
每个目录的存放内容都有要求,需要清楚。
可参考博客:https://blog.csdn.net/u013239236/article/details/48845251
1./bin:重点(/usr/bin、/usr/local/bin)
2./sbin(/usr/sbin、/usr/local/sbin)
3./home:重点
4./root:重点
5./boot:重点
6./proc
如:查看Linux内核版本命令(两种方法):
[root@S-CentOS home]# cat /proc/version
7./srv
8./sys
9./tmp
10./dev
11./media:重点
12./mnt:重点
13./opt
14./usr/local:重点
15./var:重点
16./selinux(security-enhanced linux)
17./etc
18./lost+found
19./lib
20./usr
说明:公司开发时候, 具体的情况是这样的
Secure Shell 的缩写,是一种网络安全协议,专为远程登录会话和其他网络服务提供安全性协议;通过使用SSH,可以把传输的数据进行加密,有效防止远程管理过程中的信息泄露问题。
从客户端来看,有两种验证登录方式:
连接请求发送,基本语法:
ssh 用户名@服务器IP地址
每次客户端连接服务器,都需要输入密码:
能不能每次登录远程服务器时,免密登陆:步骤
OpenSSH是SSH协议的免费开源实现。
OpenSSH由客户端和服务端的软件组成:
默认情况,CentOS系统会自带安装OpenSSH服务:
yum list installed | grep openssh
ps -ef | grep openssh
使用案例:配置node1 至 node2 机器的免密登陆:
a)在node1上,生成秘钥:
ssh-keygen -t rsa [dsa] ->按4下回车
会生成秘钥文件和公钥问价:id_rsa,id_rsa.pub
存放在主目录下 .ssh 文件夹中
rsa/dsa:两种不同的秘钥算法
b)将公钥拷贝给 node2 机器
ssh-copy-id node2的IP
首次连接,需要输入用户密码、验证成功后后续免密登陆;
会在 node2 的.ssh文件夹下复制一份公钥文件:authorized_keys
Xshell 是目前最好的远程登录到 Linux 操作的软件, 流畅的速度并且完美解决了中文乱码。
Xshell是一个强大的安全终端模拟软件, 它支持 SSH1, SSH2, 以及 Microsoft Windows 平台的 TELNET 协议。
Xshell 可以在 Windows 界面下用来访问远端不同系统下的服务器,从而比较好的达到远程控制终端的目的。
特别说明:
如果希望安装好 XShell 5 就可以远程访问 Linux 系统的话, 需要有一个前提:
CentOS6 如何查看与开启SSHD服务:
1)查看SSHD服务是否正在运行:
/etc/init.d/sshd status
或者
service sshd status
服务运行输出:
openssh-daemon (pid 13624) 正在运行...
2)若处于非运行状态则使用(service sshd start)命令开启SSH服务;
3)停止SSHD服务命令(service sshd stop);
4)重启SSHD服务命令(service sshd restart)
1)安装过程
2)Linux 连接网络、查看IP:ifconfig
3)连接Linux配置:
4)远程连接与操作
1.《计算机网络》:文件传输协议FTP、SFTP和SCP:
https://www.cnblogs.com/xingxia/p/system_ftp.html
2.SFTP:secure file transfer protocol 安全文件传输协议
3.SFTP模式连接
操作:使用SFTP连接方式连接服务器
常用命令
1.XFtp5 软件介绍:
是一个基于 windows 平台的功能强大的 SFTP、 FTP 文件传输软件。
使用了 Xftp 以后, windows用户能安全地在 UNIX/Linux 和 Windows PC 之间传输文件。
2.配置与使用
1)使用哪个用户(如root),就会显示哪个用户的家目录。
2)乱码的解决:
说明: 如上图配置后, 还需要刷新一下, 就可以解决中文乱码