記錄學習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