https://mirrors.aliyun.com/centos/$releasever/BaseOS/$basearch/os/ hostnamectl set-hostname CentOS hwclock timedatectl timedatectl set-timezone Asia/Shanghai /etc/firewalld/firewalld.conf /usr/lib/firewalld/firewalld.conf nmcli vi /etc/sysconfig/network-scripts/ifcfg-ens nmcli c reload nmcli c down ens nmcli c up ens cat /etc/redhat-release cd /etc/yum.repos.d baseurl=https://mirrors.aliyun.com/centos/$releasever/AppStream/$basearch/os/ baseurl=https://mirrors.aliyun.com/centos/$releasever/BaseOS/$basearch/os/ baseurl=https://mirrors.aliyun.com/centos/$releasever/extras/$basearch/os/ # dnf -y install epel-release # dnf clean all # dnf makecache # dnf repolist dnf list installed dnf search dnf install dnf reinstall dnf remove dnf download dnf info dnf check-update dnf grouplist dnf install vim dnf install wget dnf install bash-completion dnf install net-tools rpm -qa | grep kernel dnf erase httpd dnf install httpd sudo systemctl status firewalld systemctl list-unit-files | grep httpd chkconfig httpd on (systemctl enable httpd) systemctl start httpd httpd -v hostname -I | awk '{print $1}' $ sudo firewall-cmd --permanent --zone=public --add-service=http $ sudo firewall-cmd --permanent --zone=public --add-service=https $ sudo firewall-cmd --reload curl 127.0.0.1:80 /etc/httpd/conf/httpd.conf dnf install cockpit systemctl enable cockpit.socket systemctl start cockpit.socket firewall-cmd --permanent --add-service=cockpit firewall-cmd --reload systemctl status cockpit.socket ss -tunlp | grep cockpit netstat -lnp | grep 9090 ps auxf|grep cockpit dnf install -y java-1.8.0-openjdk java-1.8.0-openjdk-devel which java ls -lrt /usr/bin/java ls -lrt /etc/alternatives/java cat <<EOF | sudo tee /etc/profile.d/java.sh export JAVA_HOME=/usr/lib/jvm/java-openjdk export PATH=\$PATH:\$JAVA_HOME/bin export CLASSPATH=.:\$JAVA_HOME/jre/lib:\$JAVA_HOME/lib:\$JAVA_HOME/lib/tools.jar EOF source /etc/profile.d/java.sh
vi /etc/profile.d/java.sh #set java environment JAVA_HOME=/usr/local/jdk/jdk1.8.0_162 CLASSPATH=.:$JAVA_HOME/lib.tools.jar PATH=$JAVA_HOME/bin:$PATH export JAVA_HOME CLASSPATH PATH chmod 755 /etc/profile.d/java.sh source /etc/profile.d/java.sh
boot安裝源 https://mirrors.aliyum.com/centos/8/BaseOS/x86_64/os/
一,個人用
如果是個人用,就沒必要分那么多區,分一個區,或者二個區就行了。
分一個區,就要一個根分區就行了/,我的多系統里面的linux都是一個分區。
分二個區,一個/boot分區,一個根分區/
關於服務器的分區,不要分的太多,適合自己就行,有二種比較好的方法,適合二種不同的人
喜歡用軟件管理工具的人,pacman,yum,apt-get等。
這種人喜歡用軟件自帶的軟件來安裝web服務器,mysql服務器,mail服務器等。
/boot 分區100M,絕對夠用了。
/home 硬盤大小*4% 根據用戶數據的多少,進行增減
/user 硬盤大小*6% 喜歡用管理工具,但是總還有要自己編譯安裝的東西
/swap 內在大小*2
/var 硬盤大小*70% 默認安裝的文件包基本上都在這里面,以及web服務,mysql服務等,所以這種分區要足夠大
/tmp 硬盤大小*10% 做為服務器用,log文件會很多,所以單獨拿出來。如果定時清理可適當減少。
/ 剩下的都給根分區
手動編譯安裝靈活性比較高,但是如果升級系統,可能會導致手動安裝的東西不能用。
/boot 分區100M,絕對夠用了。
/home 硬盤大小*60% 例如:我要建一個web服務器,建一個nginx的用戶組和用戶,然后呢,肯定要先下載源代碼,然后放到nginx用戶的根目錄下面,安裝的目錄放到 /usr/local下面,代碼目錄也放在nginx用戶的根目錄下面,而不是放在/var下面,產生的log可能也放在nginx用戶的根目錄下面。這 樣服務器相關的東西,都放在用戶的目錄下面,這樣的用戶的這個目錄要很大。
/user 硬盤大小*20% 用戶安裝的地方,放在/usr/local下面,所以這個目錄也要大點。
/swap 內在大小*2
/var 硬盤大小*10% 很多的系統文件放在/var下面,單獨分區,可以提高服務器的性能
/ 剩下的都給根分區
hostnamectl set-hostname CentOS hwclock timedatectl timedatectl set-timezone Asia/Shanghai
cd /etc/yum.repos.d/
mv ./*.* ./bak/
wget -O CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-8.repo
curl -o CentOS-Base.repo http://
mirrors.aliyun.com
/repo/Centos-8.repo
ls -l /etc/yum.repos.d/
cat /etc/yum.repos.d/CentOS-Base.repo
dnf makecache
sshd --help
ssh -V
sshd -t //查配置文件的有效性和密匙的完整性
vim /etc/ssh/sshd_config
#PermitRootLogin yes
PermitRootLogin no //禁用root登陸
PasswordAuthentication no //禁止密碼登陸
#Port 22
Port 31234
semanage port -l|grep ssh
semanage port -a -t ssh_port_t -p tcp 10086
firewall-cmd --permanent --query-port=10086/tcp
firewall-cmd --permanent --add-port=10086/tcp
firewall-cmd --reload
systemctl restart sshd
systemctl restart firewalld.service
shutdown -r now
firewall-cmd --permanent --zone=public --remove-port=22/tcp
firewall-cmd --reload
firewall-cmd --list-ports
SSH:
ll ~/.ssh/id_*.pub
ssh-keygen -t rsa -b 4096 -C "your_email@domain.com"
ssh-copy-id remote_username@server_ip_address -p
PasswordAuthentication no
ChallengeResponseAuthentication no
systemctl restart sshd
JAVA:
dnf search java | grep -i --color JDK
dnf install java-1.8.0-openjdk java-1.8.0-openjdk-devel
dirname $(readlink $(readlink $(which java)))
vim /etc/profile
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.242.b08-0.el8_1.x86_64
export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/jre/lib/dt.jar:$JAVA_HOME/lib/tool.jar
export PATH=$PATH:$JAVA_HOME/bin
. /etc/profile
mysql:
for i in $(rpm -qa|grep mysql);do rpm -e $i --nodeps;done
rm -rf /var/lib/mysql && rm -rf /etc/my.cnf && rm -rf /usr/share/mysql
whereis mysql
find /-name mysqlyum remove mysql mysql-server mysql-libs
dnf localinstall rpm
dnf update
dnf install mysql-server
dnf install mysql
rpm -qa | grep mysql
ps -ef | grep mysql
mysqladmin --version
systemctl start mysqld
systemctl enable mysqld
systemctl status mysqld
cd /usr/bin // 相關命令
find my*
/usr/share/mysql // 配置文件目錄
/var/lib/mysql //數據庫文件目錄
/etc/my.cnf.d //mysql的啟動配置文件
client.cnf //mysql客戶端配置文件
mysql-server.cnf //mysql守護進程配置文件
mysql-default-authentication-plugin.cnf //默認權限授權配置文件
mysql -uroot
use mysql; //選擇數據庫
alter user 'root'@'localhost' identified by'root'; //修改密碼
flush privileges; //刷新權限表
select host,user,authentication_string from user;
CREATE USER 'root'@'%' IDENTIFIED BY 'Root_123456';
GRANT ALL ON *.* TO 'root'@'%';
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'Root_123456';
firewall-cmd --zone=public --add-port=3306/tcp --permanent
firewall-cmd --reload
firewall-cmd --list-ports
systemctl restart firewalld
redis:
配置文件: /etc/redis/redis.conf
備份文件: /var/lib/redis/*.rdb|*.aof
日志文件: /var/log/redis/redis-server.log
啟動文件: /etc/init.d/redis-server
dnf install redissystemctl enable --now redis
vim /etc/redis.conf
bind 127.0.0.1 192.168.1.233
systemctl restart redis
ss -an | grep 6379
sudo firewall-cmd --new-zone=redis --permanent
sudo firewall-cmd --zone=redis --add-port=6379/tcp --permanent
sudo firewall-cmd --zone=redis --add-source=192.168.1.11/24 --permanent
sudo firewall-cmd --reload
redis-cli -h 192.168.1.10 ping