linux常用

环境变量写在/etc/profile中会有个缺陷,利用jenkins等工具远程执行命令时是不能享受这个环境变量的
除非source /etc/profile 在脚本中执行下

建议把环境变量配置到 ~/.bashrc下就可以

export JAVA_HOME=/usr/local/jdk1.8.0_191
export PATH=$JAVA_HOME/bin:$PATH

yum install psmisc -y

fuser -n tcp 8080

 

修改IP能上网
 
sed -i 's/BOOTPROTO=.*/BOOTPROTO=static/g' /etc/sysconfig/network-scripts/ifcfg-enp0s3
sed -i 's/ONBOOT=.*/ONBOOT=yes/g' /etc/sysconfig/network-scripts/ifcfg-enp0s3
echo IPADDR=192.168.31.220>>/etc/sysconfig/network-scripts/ifcfg-enp0s3
echo NETMASK=255.255.255.0>>/etc/sysconfig/network-scripts/ifcfg-enp0s3
echo GATEWAY=192.168.31.1>>/etc/sysconfig/network-scripts/ifcfg-enp0s3
echo DNS1=192.168.31.1>>/etc/sysconfig/network-scripts/ifcfg-enp0s3
echo DNS2=114.114.114.114>>/etc/sysconfig/network-scripts/ifcfg-enp0s3
service network restart
 
echo "* soft nofile 65536" >> /etc/security/limits.conf
 
echo "* hard nofile 65536" >> /etc/security/limits.conf
 
echo "vm.max_map_count=655360" >> /etc/sysctl.conf
sysctl -p

安装wget命令
yum install -y wget

安装ifconfig命令
yum install net-tools 

//切换阿里云安装源
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
yum clean all
yum makecache

安装JDK11

yum list |grep java-11

yum install -y java-11-openjdk.x86_64 java-11-openjdk-demo.x86_64 java-11-openjdk-headless.x86_64


wget https://mirrors.ocf.berkeley.edu/apache/maven/maven-3/3.6.3/binaries/apache-maven-3.6.3-bin.tar.gz --no-check-certificate
mkdir /usr/local/maven
tar -zxvf apache-maven-3.6.3-bin.tar.gz -C /usr/local/maven/


vim /etc/profile
# 将下面的配置放到 profile 最下面,如果有其他配置,做适当修改。
MAVEN_HOME=/usr/local/maven/apache-maven-3.6.3
PATH=$PATH:$MAVEN_HOME/bin:
export MAVEN_HOME
# 使配置文件生效
source /etc/profile


下面这个位置可能有问题
export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-11.0.13.0.8-1.el7_9.x86_64
export PATH=$JAVA_HOME/bin:$PATH

开机自启动:

vim /etc/rc.d/rc.local

#!/bin/bash
echo "Stopping 进程名称"
pid=`ps -ef | grep 查找关键字 | grep -v grep | awk '{print $2}'`
if [ -n "$pid" ]
then
   kill -9 $pid
fi

firewall-cmd --zone=public --add-port=9008/tcp --permanent
firewall-cmd --reload
sed -i 's/BOOTPROTO=.*/BOOTPROTO=static/g' /etc/sysconfig/network-scripts/ifcfg-ens32
sed -i 's/IPADDR=.*/IPADDR=192.168.1.51/g' /etc/sysconfig/network-scripts/ifcfg-ens32
service network restart

系统升级打补丁:

yum -y update:升级所有包同时也升级软件和系统内核;
yum -y upgrade:只升级所有包,不升级软件和系统内核。
命令临时生效:
setenforce 0 (临时生效可以直接用setenforce 0 )
            1 启用
            0 告警,不启用


操作前先备份
  cp /etc/selinux/config /etc/selinux/config.bak
  cat /etc/selinux/config

更改setlinux级别
sed -i 's/SELINUX=enforcing/\SELINUX=permissive/' /etc/selinux/config

ls |wc -w查看目录有多少个文件及文件夹,
du -sh 查看当前目录大小。

du -shc *  查看文件夹下每个文件大小

du -sh * 看当前目录下每个文件夹大小

wc -c filename:显示一个文件的字节数

 wc -l catalina.out   查看文件有多少行

wc -c filename:显示一个文件的字节数

wc -m filename:显示一个文件的字符数

wc -l filename:显示一个文件的行数

wc -L filename:显示一个文件中的最长行的长度

wc -w filename:显示一个文件的字数

每行结尾的换行符也算一个字符,空格也算一个字符。

wc  catalina.out

 6013  50996 741334 catalina.out

输出信息依次是:行数 字数 字节数 文件名称。

解决中文乱码问题

locale -a 

确保有 zh_CN.UTF-8

然后执行下面命令,注意最后一条会重启系统

echo LANG="zh_CN.UTF-8" >> /etc/sysconfig/i18n
echo LC_ALL="zh_CN.UTF-8" >> /etc/sysconfig/i18n
source /etc/sysconfig/i18n


echo LANG="zh_CN.UTF-8" > /etc/locale.conf
source /etc/locale.conf

reboot


修改密码

passwd
输入两次密码即可

Authentication token manipulation error  如果提示这个 也可能是磁盘满了

chattr -i /etc/passwd
chattr -i /etc/shadow 
lsattr /etc/passwd
lsattr /etc/shadow 
然后再改

防火墙

Centos 7 firewall :
1、firewalld的基本使用
启动: systemctl start firewalld
关闭: systemctl stop firewalld
查看状态: systemctl status firewalld 
开机禁用  : systemctl disable firewalld
开机启用  : systemctl enable firewalld
 
 
2.systemctl是CentOS7的服务管理工具中主要的工具,它融合之前service和chkconfig的功能于一体。
启动一个服务:systemctl start firewalld.service
关闭一个服务:systemctl stop firewalld.service
重启一个服务:systemctl restart firewalld.service
显示一个服务的状态:systemctl status firewalld.service
在开机时启用一个服务:systemctl enable firewalld.service
在开机时禁用一个服务:systemctl disable firewalld.service
查看服务是否开机启动:systemctl is-enabled firewalld.service
查看已启动的服务列表:systemctl list-unit-files|grep enabled
查看启动失败的服务列表:systemctl --failed

3.配置firewalld-cmd
查看版本: firewall-cmd --version
查看帮助: firewall-cmd --help
显示状态: firewall-cmd --state
查看所有打开的端口: firewall-cmd --zone=public --list-ports
更新防火墙规则: firewall-cmd --reload
查看区域信息:  firewall-cmd --get-active-zones
查看指定接口所属区域: firewall-cmd --get-zone-of-interface=eth0
拒绝所有包:firewall-cmd --panic-on
取消拒绝状态: firewall-cmd --panic-off
查看是否拒绝: firewall-cmd --query-panic
 
那怎么开启一个端口呢
添加
firewall-cmd --zone=public --add-port=80/tcp --permanent    (--permanent永久生效,没有此参数重启后失效)
重新载入
firewall-cmd --reload
查看
firewall-cmd --zone= public --query-port=80/tcp
删除
firewall-cmd --zone= public --remove-port=80/tcp --permanent
 
调整默认策略(默认拒绝所有访问,改成允许所有访问):
firewall-cmd --permanent --zone=public --set-target=ACCEPT
firewall-cmd --reload
对某个IP开放多个端口:
firewall-cmd --permanent --add-rich-rule="rule family="ipv4" source address="10.159.60.29" port protocol="tcp" port="1:65535" accept"
firewall-cmd --reload
 
Centos 6 iptables:
1、iptables的基本使用
启动: service iptables start
关闭: service iptables stop
查看状态: service iptables status
开机禁用  : chkconfig iptables off
开机启用  : chkconfig iptables on
2、开放指定的端口
-A和-I参数分别为添加到规则末尾和规则最前面。

#允许本地回环接口(即运行本机访问本机)
iptables -A INPUT -i lo -j ACCEPT
# 允许已建立的或相关连的通行
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
#允许所有本机向外的访问
iptables -P INPUT ACCEPT
iptables -A OUTPUT -j ACCEPT
# 允许访问22端口
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
iptables -A INPUT -p tcp -s 10.159.1.0/24 --dport 22 -j ACCEPT   
注:-s后可以跟IP段或指定IP地址
#允许访问80端口
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
#允许FTP服务的21和20端口
iptables -A INPUT -p tcp --dport 21 -j ACCEPT
iptables -A INPUT -p tcp --dport 20 -j ACCEPT
#如果有其他端口的话,规则也类似,稍微修改上述语句就行
#允许ping
iptables -A INPUT -p icmp -m icmp --icmp-type 8 -j ACCEPT
#禁止其他未允许的规则访问
iptables -A INPUT -j REJECT  #(注意:如果22端口未加入允许规则,SSH链接会直接断开。)
iptables -A FORWARD -j REJECT
3、屏蔽IP
#如果只是想屏蔽IP的话 “3、开放指定的端口” 可以直接跳过。
#屏蔽单个IP的命令是
iptables -I INPUT -s 123.45.6.7 -j DROP
#封整个段即从123.0.0.1到123.255.255.254的命令
iptables -I INPUT -s 123.0.0.0/8 -j DROP
#封IP段即从123.45.0.1到123.45.255.254的命令
iptables -I INPUT -s 124.45.0.0/16 -j DROP
#封IP段即从123.45.6.1到123.45.6.254的命令是
iptables -I INPUT -s 123.45.6.0/24 -j DROP
4、查看已添加的iptables的规则
iptables -L -n

N:只显示IP地址和端口号,不将IP解析为域名

删除已添加的iptables的规则
将所有iptables以序号标记显示,执行:

iptables -L -n --line-numbers

比如要删除INPUT里序号为8的规则,执行:

iptables -D INPUT 8

5、也可以直接编辑配置文件,添加iptables防火墙规则:
iptables的配置文件为/ etc / sysconfig / iptables

编辑配置文件:

vi /etc/sysconfig/iptables

文件中的配置规则与通过的iptables命令配置,语法相似:

如,通过iptables的命令配置,允许访问80端口:

iptables -A INPUT -p tcp --dport 80 -j ACCEPT

那么,在文件中配置,只需要去掉句首的iptables,添加如下内容:

-A INPUT -p tcp --dport 80 -j ACCEPT

保存退出。

 

有两种方式添加规则

iptables -A 和iptables -I

iptables -A 添加的规则是添加在最后面。如针对INPUT链增加一条规则,接收从eth0口进入且源地址为192.168.0.0/16网段发往本机的数据。

[root@localhost ~]# iptables -A INPUT -i eth0 -s 192.168.0.0/16 -j ACCEPT

iptables -I 添加的规则默认添加至第一条。

如果要指定插入规则的位置,则使用iptables -I 时指定位置序号即可。

 

删除规则

如果删除指定则,使用iptables -D命令,命令后可接序号。效果请对比上图。

或iptables -D 接详细定义;

如果想把所有规则都清除掉,可使用iptables -F。

 

备份iptabes rules

使用iptables-save命令,如:

[root@localhost ~]# iptables-save > /etc/sysconfig/iptables.save

恢复iptables rules

使用iptables命令,如:

[root@localhost ~]# iptables-restore < /etc/sysconfig/iptables.save

 

iptables 配置保存

以上做的配置修改,在设备重启后,配置将丢失。可使用service iptables save进行保存。

[root@localhost ~]# service iptables save

 

重启iptables的服务使其生效:

service iptables save   添加规则后保存重启生效。

service iptables restart

centeros增加swap

free -m
dd if=/dev/zero of=/var/swap bs=1024 count=2048000
mkswap /var/swap
mkswap -f /var/swap
swapon /var/swap
free -m
vi /etc/fstab
最后一行添加
/var/swap swap swap defaults 0 0



使用下面的命令创建2G的空间
dd if=/dev/zero of=/var/swap bs=1024 count=2048000
if 表示infile,of表示outfile,bs=1024代表增加的模块大小,count=2048000代表2048000个模块,也就是2G空间
将目的文件设置为swap分区文件
mkswap /var/swap
激活swap,立即启用交换分区文件
mkswap -f /var/swap
free -m查看swap已经增加了,但这只是临时性的,如果机器重启会失效
vi /etc/fstab
最后一行添加
/var/swap swap swap defaults 0 0
重启或free -m测试 swap添加成功

centos7 安装 出现/dev/root does not exist问题

首先U盘启动虽然安装不了centos 7,一直报script timeout等总是,但最终还是能入命令行提示符
#
切换到dev目录
#cd /dev
#ls
会看到你的U盘,一般是第二块硬盘,比如sdbx
 
好,那么记住这个,比如查看到是/dev/sdb4,现在reboot重新启动,进入启动菜单选项,按e进入编辑模式,
 
将菜单中vmlinuz initrd=initrd.imginst.stage2=hd:LABEL=CentOS\x207\x20x86_64 rd.live.check quiet
 
改为:vmlinuz initrd=initrd.img inst.stage2=hd:/dev/sdb4 quite
 
然后根据下面的说明按快捷键(ctrl+x)重启,即可安装了。



安装源改为阿里云
yum -y install wget
yum install bash-completion
yum -y install lrzsz  

cd   /etc/yum.repos.d/      
rm -rf    /etc/yum.repos.d/*.repo
wget  http://mirrors.aliyun.com/repo/Centos-7.repo
yum clean all
yum makecache

checking for C compiler ... not found

yum -y install gcc
yum -y install gcc-c++

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值