记录学习Liunx的笔记,内容比较杂。php
在建立的时候必定要选择桥接网络,在centos7中查看本机的ip地址再也不是ifconfig命令,而是由ip addr来代替html
$ ip addr
复制代码
经过ip addr命名查询到咱们网卡的名字后,能够进入如下文件中修改网路配置node
$ vi /etc/sysconfig/network-scripts/ifcfg-enp0s3
# 在文件中须要修改的内容以下:
# 把BOOTPROTO修改成static
BOOTPROTO=static
# 把ONBOOT修改成yes
ONBOOT=YES
# 添加如下内容
IPADDR=192.168.0.30 # 这个ip地址要对应这本机的ip,要处于同一个网段
GATEWAY=192.168.0.1 # 网关地址
NETMASK=255.255.255.0 # 子网掩码
DNS1=8.8.8.8 # DNS1
DNS2=114.114.114.114 # DNS2
复制代码
修改好以上后退出保存重启网卡,修改DNS还能够在/etc/resolv.conf下添加nameserver 8.8.8.8修改,重启后基本上就能够ping同外网了。mysql
centos6的网卡重启方法:service network restart
centos7的网卡重启方法:systemctl restart network
复制代码
1.
启动: systemctl start firewalld
关闭: systemctl stop firewalld
查看状态: systemctl status firewalld
开机禁用 : systemctl disable firewalld
开机启用 : systemctl enable firewalld
那怎么开启一个端口呢
添加
firewall-cmd --zone=public --add-port=2375/tcp --permanent (--permanent永久生效,没有此参数重启后失效)
从新载入
firewall-cmd --reload
查看
firewall-cmd --zone= public --query-port=2375/tcp
删除
firewall-cmd --zone= public --remove-port=2375/tcp --permanent
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
复制代码
能够经过uname -r查看本身的内核版本是多少linux
$ rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
复制代码
$ rpm -Uvh https://www.elrepo.org/elrepo-release-7.0-3.el7.elrepo.noarch.rpm
复制代码
$ yum --enablerepo=elrepo-kernel install kernel-lt -y
# 或者
$ yum --enablerepo=elrepo-kernel install kernel-ml -y
复制代码
# 由于通常新安装的内核在第一个位置,因此设置default=0,表示启动新内核
$ vim /etc/grub.conf
# 以后重启虚拟机之后 可经过uname -r再次查看内核版本
复制代码
$ vim /etc/grub2.cfg
复制代码
能够看到我有两个系统内核,把内核为4.4的单引号中的内容复制,在命令行中运行如下命令sql
# 配置默认内核
$ grub2-set-default 'CentOS Linux (4.4.153-1.el7.elrepo.x86_64) 7 (Core)'
# 查看是否设置成功
$ grub2-editenv list
# 重启liunx主机
$ reboot
复制代码
在CentOS 7中,有个叫hostnamectl的命令行工具,它容许你查看或修改与主机名相关的配置,只查看静态、瞬态或灵活主机名,分别使用“--static”,“--transient”或“--pretty”选项。shell
$ hostnamectl --static set-hostname node01
复制代码
127.0.0.1 node01
$ reboot
复制代码
使用apt-get安装的mysql不知道root的密码,因此以root身份是登录不上去的,这时咱们须要作如下操做:ubuntu
$ cat /etc/mysql/debian.cnf
复制代码
$ mysql -u debian-default-account -p defaultpassword
复制代码
$ use mysql
$ set password for 'root'@'localhost' = password('yourpass');
$ flush privileges;
复制代码
若是是双网卡的话,使用ip add显示的网卡名字有多是p1p1 OR p3p1这种名字,单网卡可能就是eth0,视状况而定vim
$ vi /etc/network/interfaces
# 添加如下内容
auto p3p1
iface p3p1 inet static
address 192.18.0.119
netmark 255.255.255.0
gateway 192.168.0.1
# 添加dns
$ vi /etc/resolv.conf
nameserver 223.5.5.5
nameserver 223.6.6.6
# 确保dns不会在重启电脑后失效
$ vi /etc/resolvconf/resolv.conf.d/base
naseserver 223.5.5.5
nameserver 223.6.6.6
复制代码
运行命令生效dnscentos
$ resolvconf -u
复制代码
运行命令生效网络
$ ifdown p3p1 && ifup p3p1
复制代码
# 查看那些文件比较大以及查看查看磁盘空间
$ du -h --max-depth=1
# 查看内存状况
$ free -h
# 查看磁盘空间
$ df -hl
复制代码
$ echo 1 > /proc/sys/vm/drop_caches
复制代码
# 建议使用这种方式
$ gpasswd -a user_name group_name
OR
$ usermod -a -G 用户组 用户名
# -G:给用户添加一个附属组
复制代码
# 建立用户组
$ gourpadd kernel
# 添加用户,主组是kernel,副组是wheel和adm,用户名是ywh
$ useradd -s /bin/bash -d /home/ywh -m -g kernel -G wheel,adm ywh
$ mkdir kernelbuild
# 把这个文件的权限赋值给kernel组, -R 表示递归把下面全部的文件都变成kernel组
$ chgrp -R kernel kernelbuild
# 操做的用户也分给新建立的用户ywh
$ chown -R ywh kernelbuidl
复制代码
由于是Arch Linux的安装方式,因此若是是其余的系统请自行查阅
# 安装nfs服务
$ pacman -Sy nfs-utils
复制代码
配置nfs服务,假设要共享的目录是 /mnt/nfs
# 建立要共享的文件夹
$ mkdir /mnt/nfs
# 配置nfs的共享目录
$ vim /etc/exports
/mnt/nfs *(rw,sync,no_root_squash,no_subtree_check)
# 每一次修改exports文件都须要运行如下命令
$ exportfs -ra
# 开启nfs服务
$ systemctl start nfs-server.service
# 开机自启服务
$ systemctl enable nfs-server.service
复制代码
$ systemctl start rpcbind.service
$ systemctl start nfs-client.target
$ systemctl start remote-fs.target
$ systemctl enable rpcbind.service
$ systemctl enable nfs-client.target
$ systemctl enable remote-fs.target
复制代码
嵌入式设备须要加参数 -o nolock,若是不是嵌入式设备的话就不用加了
$ mount -t nfs -o nolock 192.168.1.122:/home/ywh/build /mnt/nfs
复制代码
shc是一个专业的加密shell脚本的工具.它的做用是把shell脚本转换为一个可执行的二进制文件,这个办法很好的解决了脚本中含有IP、密码等不但愿公开的问题.
下载 shc-3.8.9b.tgz 之后上传到liunx机器中对其进行解压。
$ tar -xvf shc-3.8.9b.tgz
$ cd shc-3.8.9b
# 建立man1目录是必须的,否则安装过程当中会报错,shc将安装命令到/usr/local/bin/目录下;
# 将帮助文档存放在/usr/local/man/man1/目录下,若是系统中无此目录,安装时会报错,可建立此目录后再执行安装
$ mkdir -p /usr/local/man/man1
$ make install
# 接下来要输入 yes
复制代码
使用方法以下
$ shc -r -f script-name
复制代码
运行后会生成两个文件,script-name.x 和 script-name.x.c. 其中script-name.x是加密后的可执行的二进制文件;用./script-name便可运行,script-name.x.c是生成script-name.x的原文件(c语言).
#!/bin/bash
:<<EOF
echo "1"
echo "1"
echo "1"
echo "1"
echo "1"
EOF
echo 2
复制代码
只输出2