http://mirror.centos.org/centos/6.8/os/x86_64/Packages/ http://ftp.gnu.org/gnu/autoconf/ http://ftp.gnu.org/gnu/automake/
# 按照inode 删除文件
# 某些场景下,文件名很复杂或者很奇怪。可按照inode删除
ls -ail # 在输出中找到文件的inuode
find -inum 12345 | rm -rf {} \; # 12345为要删除文件的inode
# rpm 查看已经安装的rpm rpm -q libtool # rpm 卸载软件 rpm -e libtool-xxx # 安装 rpm -ivh libtool # 设置hostname /etc/sysconfig/network # 将 HOSTNAME=test #这里将hostname改为test # 重启后生效 # 安装 scp ,属于openssh yum install -y openssh-clients # 固定IP vi /etc/sysconfig/network-scripts/ifcfg-eth0 # 内容如下: DEVICE=eth0 设备名称 BOOTPROTO=dhcp /static 自动获取/静态ip IPADDR=IP地址 NETMASK=掩码 GATEWAY= #网关 ONBOOT=yes 开机激活网卡 NM_CONTROLLED=no 需重启网络服务后生效 # 重启网络服务 service network restart
# vm ware 复制导致eth0不可用,解决方案 # ·、先删除一个文件 # 2、查看Mac地址 # 3、修改eth0的Mac为第二步的值 # 4、重启服务器 # 1,删文件 rm -rf /etc/udev/rules.d/70-persistent-net.rules # 2、查看Mac地址 ifconfig -a # 笔者输出如下:
eth0 Link encap:Ethernet HWaddr 00:0C:29:3C:76:AA
inet addr:192.168.1.181 Bcast:192.168.1.255 Mask:255.255.255.0
inet6 addr: fe80::20c:29ff:fe3c:76aa/64 Scope:Link
UP broADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:1963 errors:0 dropped:0 overruns:0 frame:0
TX packets:138 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:154529 (150.9 KiB) TX bytes:18157 (17.7 KiB)
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:65536 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)
# 记下 HWaddr的值,本例中为 00:0C:29:3C:76:AA
# 3、修改eth0的Mac为第二步的值 vi /etc/sysconfig/network-scripts/ifcfg-eth0 # 笔者输出结果如下:
DEVICE=eth0 HWADDR=00:0C:29:3C:76:AA # 修改成上一步的HWaddr的值 TYPE=Ethernet UUID=90cf1d08-bb39-4b35-b8a4-c3780d336afb ONBOOT=yes NM_CONTROLLED=yes IPADDR=192.168.1.181 # 这个地址修改下 GATEWAY=192.168.1.1 NETMASK=255.255.255.0 BOOTPROTO=static
# 将HWADDR和IPADDR做相应修改后,重启服务器 # 4、重启服务器 reboot
# CentOS修改DNS
vi /etc/resolv.conf
# 内容如下
# nameserver 8.8.8.8 #google域名服务器
# nameserver 8.8.4.4 #google域名服务器
# 增加JAVA_HOME 环境变量
vi /etc/profile
# 将 export JAVA_HOME=/usr/local/jdk1.8.0_121 插入到 export PATH= 上一行
# 追加JAVA_HOME/bin至 PATH中。
# 如 修改前为:
# 上面若干行代码
export MysqL_HOME=/usr/local/MysqL
export PATH=.:${MysqL_HOME}/bin:$PATH
# 下面若干行代码
# 修改后为:
# 上面若干行代码
export JAVA_HOME=/usr/local/jdk1.8.0_121
export MysqL_HOME=/usr/local/MysqL
export PATH=.:${MysqL_HOME}/bin:${JAVA_HOME}/bin:$PATH
# 下面若干行代码
# 文件保存退出后需要 执行一下命令 以生效
source /etc/profile
# 全局环境变量
/etc/profile
# 用户环境变量
/~/.bashrc
# 切换用户
# 切换到zhangsan用户登录
su - zhangsan
# su - 等同于 su - root 等同于 su
# 配置的host和IP可以通过host 方式替代·
/etc/hosts
# 在最后追加
# 如:
# 192.168.153.131 master
# 192.168.153.130 worker2
# 192.168.153.129 worker1
# 重启 服务后生效
service network restart
# 查看系统打开文件最大数设置
ulimit -a
# 输出如下:
core file size (blocks,-c) 0
data seg size (kbytes,-d) unlimited
scheduling priority (-e) 0
file size (blocks,-f) unlimited
pending signals (-i) 3810
max locked memory (kbytes,-l) 64
max memory size (kbytes,-m) unlimited
open files (-n) 1024
pipe size (512 bytes,-p) 8
POSIX message queues (bytes,-q) 819200
real-time priority (-r) 0
stack size (kbytes,-s) 10240
cpu time (seconds,-t) unlimited
max user processes (-u) 3810
virtual memory (kbytes,-v) unlimited
file locks (-x) unlimited
# 修改配置:
vi /etc/security/limits.conf
# 在最后增加如下配置,注意,前面的*也要输入
* hard nofile 2048
* soft nofile 2048
#保存后重启后生效,可用ulimit -a再次确认。
# 查看当前登录的服务器的hostname hostname # 解压tgz压缩包,tgz是tag.gz的缩写 tar -zxvf *.tgz # 增加 sudo 用户 vim /etc/sudoers # User privilege specification root ALL=(ALL:ALL) ALL user ALL=(ALL) ALL # 说明:格式为(用户名 网络中的主机=(执行命令的目标用户) 执行的命令范围) # 配置 sudo 命令的使用日志 ,用于查看sudo用户的操作记录 # 1、创建sudo log touch /var/log/sudo.log # 2、修改 /etc/rsyslog.conf,在最后加一行 local2.debug /var/log/sudo.log # 上面的内容,中间空白部分是Tab,不是空格,否则不生效 #3、修改/etc/suduers 在最后增加如下内容: Defaults logfile=/var/log/sudo.log Defaults loglinelen=0 Defaults !syslog #4、重启rsyslog service rsyslog restart 或者 service /etc/init.d/rsyslog restart # 安装 scp ,属于openssh yum install -y openssh-clients # 卸载自带的JDK #1、找到已安装的java信息 rpm -qa | grep java # 一般输出如下: # java-1.4.2-gcj-compat-1.4.2.0-40jpp.115 # java-1.6.0-openjdk-1.6.0.0-1.7.b09.el5 # 2、逐个删除 yum -y remove java java-1.4.2-gcj-compat-1.4.2.0-40jpp.115 # ssh 免密登录,从master、worker1、worker2、worker3等多台机器免密互通 # 1、在每台机器上执行如下操作: sudo vim /etc/ssh/sshd_config # 修改 3个 配置项 # # RSAAuthentication yes # PubkeyAuthentication yes # AuthorizedKeysFile .ssh/authorized_keys # 2、在每台机器上执行生成公钥和私钥 ssh-keygen -t rsa # 之后一直回车,直到不再有交互 # 3、在每台机器上 将当前机器的公钥拷贝到 其中固定的一台机器,这里我们选master来接收所有的公钥 ssh-copy-id -i master # 会有选择yes 还是 no ,这里选择yes # 需要 录入master的登录密码 # master的公钥也要拷贝给master,数据都会追加到~/.ssh/authorized_keys 文件中 # 至此,从master、worker1、worker2、worker3登录到master 不需要输入密码了 # 4、将master中的 ~/.ssh/authorized_keys 复制给其他所有的机器, scp ~/.ssh/authorized_keys worker1:~/.ssh/authorized_keys scp ~/.ssh/authorized_keys worker2:~/.ssh/authorized_keys scp ~/.ssh/authorized_keys worker3:~/.ssh/authorized_keys # 因为还没有免密,因此还需要输入密码 # scp完之后,从master登录到master、worker1、worker2、worker3不需要输入密码了 # 5、在 master 机器上 ssh 到所有的机器 ssh master # 然后Ctrl + d 退出 ssh worker1 # 然后Ctrl + d 退出 ssh worker2 # 然后Ctrl + d 退出 ssh worker3 # 然后Ctrl + d 退出 # 6、将master上的 ~/.ssh/kNown_hosts 赋值给其他所有机器 scp ~/.ssh/kNown_hosts worker1:~/.ssh/kNown_hosts scp ~/.ssh/kNown_hosts worker2:~/.ssh/kNown_hosts scp ~/.ssh/kNown_hosts worker3:~/.ssh/kNown_hosts # 至此,所有的机器可以互通了。 # 如果还是有问题,执行一下操作: # 在每台机器上执行 service sshd restart # 检查~/.ssh/authorized_keys 的权限是否是 -rw-------,权限过大是有问题的。 # ll -a 确认 ~/.ssh 目录的权限是否是 drwx------ # 关防火墙 service iptables stop # 重启后失效 chkconfig iptables off # 禁用防火墙 # 关闭SElinux setenforce 0 vi /etc/selinux/config # 设置SELINUX=disabled # 修改UMASK umask 0022 echo umask 0022 >> /etc/profile
# hadoop 格式化 hdfs namenode -format
spark warn native codeloader:unable to load native-hadoop library for your platform...
cp ${HADOOP_HOME}/lib/native/libhadoop.so.1.0.0 ${JAVA_HOME}/jre/lib/amd64/libhadoop.so
#linux的时区设置为上海 ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime 将系统日期设定成1996年6月10日的命令 date -s 06/22/96 将系统时间设定成下午1点52分0秒的命令 date -s 13:52:00 将当前时间和日期写入BIOS,避免重启后失效 hwclock -w # 查看端口占用 netstat -nutlp netstat -an # 查看打开的文件情况 lsof # 查看端口 lsof -i :3306 # 将当前目录以http形式暴露出来 # 到需要暴露的路径下执行如下命令,其中 8000为端口 nohup python -m SimpleHTTPServer 8000 & # ftp 命令 ftp 192.168.1.2 # 连接192.168.1.2 ftp ,提示输入用户名 密码 get a.txt # 从ftp 下载a.txt put a.txt # 从本地上传a.txt 到当前ftp目录 # 查看linux 分区格式 如ext3 ext4 df -T # 查看分区 fdisk -l # 挂载,sda4分区到/home/p4目录下 mount /dev/sda4 /home/p4 # 开机自动挂载 vi /etc/fstab # 只启动hadoop 的namenode hadoop-deamon.sh start namenode # 开机使用命令行模式 vi /etc/inittab id:5:initdefault: # 按照上面的说明,将5改为3即可。
# 总核数 = 物理cpu个数 X 每颗物理cpu的核数 # 总逻辑cpu数 = 物理cpu个数 X 每颗物理cpu的核数 X 超线程数 # 查看物理cpu个数 cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l # 查看每个物理cpu中core的个数(即核数) cat /proc/cpuinfo| grep "cpu cores"| uniq # 查看逻辑cpu的个数 cat /proc/cpuinfo| grep "processor"| wc -l 查看cpu信息(型号) cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c 查看内 存信息 # cat /proc/meminfo
# 查看进程的内存占用 pmap $PID