Linux
一、安装系统
1、安装VMWare
2、新建虚拟机
点击创建新的虚拟机。
硬件机器装完了!
3、安装Linux
接下来装载操作系统:
下一步–>语言(English)–>键盘(U.S.English)
点击Create按钮。
点击OK按钮。
sda1:a是第一块硬盘;1是第一个分区的概念。
Next --> Format --> Write changes to disk
4、初步配置
登录名root,密码hadoop;如果密码输入错误,按住Ctrl+Backspace键狂删,将密码删除再重新输入,Backspace键也算一个字符。
设置IP 要与vmware网络配置的ip同步段位!
配置文件path
vi /etc/sysconfig/network-scripts/ifcfg-eth0
配置文件新增修改内容:
ONBOOT=yes
BOOTPROTO=static (dhcp:自动获得IP地址)
IPADDR=192.168.171.100
NETMASK=255.255.255.0
GATEWAY=192.168.171.2
DNS1=114.114.114.114
重启网络服务:
(配置文件更改完后,服务已经在跑了,不会发现配置文件被更改,此时需要重新启动服务,才会跑新的配置)
service network restart
测试网络连接:
ping www.baidu.com
会一直跑,Ctrl+C结束,相当于Windows中的Alt+F4
关闭防火墙:(下一次开机还会开启防火墙)
service iptables stop
禁用防火墙:
chkconfig iptables off
问题:虚拟机不能ping通外网了。
解决:检查服务当中,VMware DHCP、VMware NAT、VMware Workstations三个服务必须开启。
查看系统中的服务
chkconfig
关闭安全模块:
(因为这个设置不关闭,会因为安全,弹出各种警告提示,影响使用系统)
cd /etc/selinux/
vi config
(selinux改为以下状态)
SELINUX=disabled
硬件地址、eth0
cat /etc/udev/rules.d/70-persistent-net.rules
删除该文件:
rm -f /etc/udev/rules.d/70-persistent-net.rules
关机:
poweroff
小释:
ifcfg:interface config
eth0:以太网0网卡
配置完成,拍摄快照:
5、克隆
从快照上克隆出4台新机器。
6、完善配置
修改IP:
vi /etc/sysconfig/network-scripts/ifcfg-eth0
service network restart
ping www.baidu.com
修改主机名:
vi /etc/sysconfig/network
reboot(重启后配置文件才会生效)
配置主机映射:
vi /etc/hosts
关机:poweroff
拍快照。
检验:
互相ping通;
Windows配置主机映射。
【时间同步:】
yum install ntpdate -y
ntpdate -u ntp.api.bz
ntpdate -u 210.72.145.44
-u:从man ntpdate中可以看出-u参数可以越过防火墙与主机同步;
NTP服务器(上海) :ntp.api.bz
210.72.145.44:中国国家授时中心的官方服务器。
7、单节点免密钥登陆配置
[root@Linux00 ~]# ll -a
[root@Linux00 ~]# cd .ssh/
注:如果ll -a 没有 .ssh 文件夹,输入命令:
ssh localhost
执行一下。
[root@Linux00 ~]# ssh localhost
[root@Linux00 .ssh]# ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa
-t:类型
-P:是否需要密码
[root@Linux00 .ssh]# cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
二、简单命令
远程连接客户端工具:SecurityCRT(scrt)、putty、Xshell。
1、type [命令]:命令类型:外部命令还是内部命令。显示快捷方式执行的文件路径。
2、file [路径]:文件类型:ELF 是一种可执行程序二进制的编码格式(同Windows的.exe文件一样)。
3、echo [要打印的值(可以是常量、变量)]:打印到标准输出(Java的system.out.println()):
例:echo $PATH
Windows:用(两个百分号%%)取变量值,变量值用(分号;)分割。
Linux:用(dollar符)取变量值,变量值之间用(冒号:)分割。
外部命令
yum install man man-pages
学习外部命令通过man命令学习:
例:man ifconfig
(J键、下键:向下翻
上键:向上翻
空格:快速翻
回车:一页一页地翻
B键:往回翻
斜线 /[要查找的字符串] :查找;高亮显示查找到的字符串(N键向下跳跃))。
whereis:定位外部命令。
内部命令
type [命令]:
显示 [命令] is a shell builtin。
学习内部命令,用help [命令]。
三、文件系统
file descriptor
0:默认输入流
1:默认正确的输出流
2:默认错误的输出流
df -h:统计磁盘目录的使用情况
du -sh:查看磁盘使用空间
用户权限前边第一列:
-rwxrwxrwx
-:普通文件
d:目录
b:(设备文件)字节型文件
c:(设备文件)字符型文件
l:链接
p:pipline(管道)见不到
s:socket
ls:
cd:
pwd:
mkdir:
rm:
cp:
mv:
ln:
软链接:
硬链接:
stat:
touch:
四、文本操作
五、VI
六、正则表达式
七、文本编辑
八、用户管理
九、权限管理
十、安装软件
十一、脚本编程
1. $取变量值
2.$$取进程ID号
3. ps -fe
执行时快照,有多少个进程
4. source和.
5. pstree
6. 输出重定向
>:覆盖重定向
>>:追加重定向
0 标准输入流
1 标准输出流:1>,1可以不写
2 错误输出流:2>
标准输出与错误输出,输出到不通文件
ls -l /god /usr 1> ls.log 2> ls.log
标准输出与错误输出,输出到同一个文件
ls -l /god /usr 1>ls.log 2>& 1
重定向符号右边文件是数字,则数字前需要加“&”
ls -l /god /usr >& ls.log
ls -l /god /usr &> ls.log
7. 输入重定向
read [变量] :等待键盘输入,回车,键盘可输入字符,再回车,这些字符会赋给变量。
read [变量] 0<<<"afsdfasdk"
将一行字符串放到一个标准输入流
read [变量] 0<<ooxx
> afsdf
> fsdf
> ooxx
将多行文本放入到标准输入流中,
当文本与 << 符号号右边的字符串相等的时候,回车,会结束等待键盘输入。
cat 0< ooxx.sh
总结:
0<<<一行字符串
0<<多行字符串
0<文本