差别
这里会显示出您选择的修订版和当前版本之间的差别。
两侧同时换到之前的修订记录 前一修订版 | |||
is:cos:centos安装及异常问题点拔萃 [2025/02/17 04:01] – 移除 - 外部编辑 (未知日期) 127.0.0.1 | is:cos:centos安装及异常问题点拔萃 [2025/02/17 04:01] (当前版本) – ↷ 页面is:centos安装及异常问题点拔萃被移动至is:cos:centos安装及异常问题点拔萃 A.L | ||
---|---|---|---|
行 1: | 行 1: | ||
+ | ~~NOTOC~~ | ||
+ | ====== 基于CentOS7.4的服务器搭建笔记 ====== | ||
+ | 记录起始于:2019/ | ||
+ | {{category> | ||
+ | |||
+ | ===== 安装问题点 ===== | ||
+ | |||
+ | ==== CentOS7 修改IP ==== | ||
+ | - `ifconfig` 查看网络相关配置 | ||
+ | - `cd / | ||
+ | - `vi ifcfg-xxxx` 编辑centos的网卡配置文件 | ||
+ | - 将BOOTPROTO改为static(获取IP的方式静态) | ||
+ | - 设置以下参数: | ||
+ | - `IPADDR=192.168.1.177` | ||
+ | - `NETMASK=255.255.255.0` | ||
+ | - `GATEWAY=192.168.1.1` | ||
+ | - `DNS1=x.x.x.x` | ||
+ | - `DNS2=8.8.8.8` | ||
+ | - `ONBOOT=yes` 系统启动时启动此设置 | ||
+ | - 保存退出:`: | ||
+ | - `service network restart` 重启网卡 | ||
+ | - `ifconfig` 测试新设置的ip是否生效 | ||
+ | |||
+ | ==== GUI切换Terminal ==== | ||
+ | - `Ctrl+Alt+F1~F6` 从图形登陆界面切换到dos界面 | ||
+ | - 切换到命令行界面:`init 3` | ||
+ | - 切换到图形界面:`init 5` | ||
+ | |||
+ | ==== centos下修改文件后如何保存退出 ==== | ||
+ | - 按`ESC`键进入命令模式,然后: | ||
+ | - `:w` 保存文件但不退出vi | ||
+ | - `:w file` 将修改另存为file,不退出vi | ||
+ | - `:w!` 强制保存,不退出vi | ||
+ | - `:wq` 保存文件并退出vi | ||
+ | - `:wq!` 强制保存文件并退出vi | ||
+ | - `:q` 不保存文件,退出vi | ||
+ | - `:q!` 不保存文件,强制退出vi | ||
+ | - `:e!` 放弃所有修改,从上次保存文件开始再编辑 | ||
+ | |||
+ | ==== PHP extension冲突问题(如:php70w 与 php-common < 7.0的冲突) ==== | ||
+ | - 一般情况下发生在PHP升级时,php核心和扩展多版本共存,版本发生冲突情况下的警告,可能导致php环境运行异常 | ||
+ | - PHP7极大地改进了性能,在一些WordPress基准测试中,性能可达PHP 5.6的3倍。 | ||
+ | - 使用Yum安装PHP有两个源可选: | ||
+ | - webtatic提供的php70w | ||
+ | - remi源 | ||
+ | - 安装步骤: | ||
+ | - `yum install epel-release` | ||
+ | - `rpm -Uvh https:// | ||
+ | - `yum update` | ||
+ | - `yum list | grep php` 罗列yum源可安装包 | ||
+ | - 另一种做法,移除php-common: | ||
+ | - `yum remove php-common` | ||
+ | - 再次执行:`yum -y install php70w-devel` | ||
+ | - 使用yum install命令安装: | ||
+ | - 安装前先卸载其他版本的PHP:`yum -y remove php*` | ||
+ | - 修改yum源: | ||
+ | - `rpm -Uvh https:// | ||
+ | - `rpm -Uvh https:// | ||
+ | - 安装PHP及其扩展(以php7.2为例): | ||
+ | - `yum -y install php72w php72w-cli php72w-common php72w-devel php72w-embedded php72w-fpm php72w-gd php72w-mbstring php72w-mysqlnd php72w-opcache php72w-pdo php72w-xml` | ||
+ | - 安装完成后,使用`php -v`查看安装的PHP版本,确认版本号正确。 | ||
+ | |||
+ | ==== 修改php.ini 解决mbstring扩展异常 ==== | ||
+ | - 安装mbstring扩展: | ||
+ | - `yum install php-mbstring` 或 `yum --enablerepo=remi install php-mbstring` | ||
+ | - 修改php.ini: | ||
+ | - `vim / | ||
+ | - 找到并修改以下配置: | ||
+ | - `mbstring.language = Chinese` | ||
+ | - `mbstring.internal_encoding = UTF-8` | ||
+ | - `mbstring.http_input = auto` | ||
+ | - `mbstring.http_output = UTF-8` | ||
+ | - `mbstring.encoding_translation = On` | ||
+ | |||
+ | ==== CentOS下php版本查询及手工修改路径案例 ==== | ||
+ | - 常用命令: | ||
+ | - `php -v` | ||
+ | - `httpd -v` | ||
+ | - `rpm -qa |grep php` | ||
+ | - `rpm -qa |grep httpd` | ||
+ | - `php -m` 查看加载情况 | ||
+ | - 案例:查找系统里PHP相关的目录或文件并手工修改profile | ||
+ | - `find / -name php` 查看列出的 PHP 版本信息 | ||
+ | - `/ | ||
+ | - `/ | ||
+ | - 删除 `/usr/bin/` 目录下的所有PHP相关文件: | ||
+ | - `rm -rf ./php` | ||
+ | - `rm -rf ./php-cgi` | ||
+ | - `rm -rf ./ | ||
+ | - `rm -rf ./phpize` | ||
+ | - 在环境变量中添加自己编译的 PHP 路径: | ||
+ | - `vim / | ||
+ | - 在最后一行添加:`export PATH="/ | ||
+ | - 保存退出,执行:`source / | ||
+ | - 再次检查 PHP 版本:`php -v` | ||
+ | - 通过yum安装PHP7: | ||
+ | - `rpm -Uvh https:// | ||
+ | - `yum -y install php70w-devel` | ||
+ | - 如果报错冲突: | ||
+ | - 移除php-common:`yum remove php-common` | ||
+ | - 再次执行:`yum -y install php70w-devel` | ||
+ | |||
+ | ==== find: ‘/ | ||
+ | - 这是一个FUSE文件系统和权限不配的问题,解决方法: | ||
+ | - 卸载该文件:`umount / | ||
+ | - 删除该文件:`rm -rf / | ||
+ | |||
+ | ==== php版本升级或者更改后发生httpd服务异常的问题处理 ==== | ||
+ | - apache不知道php版本已更改,因此php网页用不了apache(httpd)。 | ||
+ | - 例如,在`/ | ||
+ | - `sudo vim / | ||
+ | - 内容:`<? | ||
+ | - 在浏览器输入`IP/ | ||
+ | - 修改apache的配置文件: | ||
+ | - 找到php的配置文件:`sudo find / -name php.ini` | ||
+ | - 找到apache的配置文件:`sudo find / -name httpd.conf` | ||
+ | - 修改`httpd.conf`,在最后一行添加:`PHPIniDir / | ||
+ | - 保存并重启apache:`systemctl restart httpd` | ||
+ | - 再次访问`IP/ | ||
+ | |||
+ | ==== 修改Apache默认端口80 ==== | ||
+ | - 修改`/ | ||
+ | - 找到`Listen 80`,修改为`Listen 5555` | ||
+ | - 保存并重启apache:`service httpd restart` | ||
+ | |||
+ | ==== CentOS防火墙设置 ==== | ||
+ | - 常用命令: | ||
+ | - `yum install firewalld` 查看已安装的firewall文件 | ||
+ | - `service firewalld start` 启动防火墙 | ||
+ | - `service firewalld stop/ | ||
+ | - `ps -ef |grep firewall` 查看当前firewall运行的进程 | ||
+ | - `service firewalld restart` 重启防火墙 | ||
+ | - `service firewalld status` 查看防火墙状态 | ||
+ | - `firewall-cmd --version` 查看版本 | ||
+ | - `firewall-cmd --get-zones` 查看防火墙区域 | ||
+ | - `firewall-cmd --get-default-zone` 查看默认区域 | ||
+ | - `firewall-cmd --list-all-zones` 查看所有区域的配置信息 | ||
+ | - `firewall-cmd --list-all` 查看防火墙规则 | ||
+ | - 查询、开放、关闭端口: | ||
+ | - `firewall-cmd --query-port=8080/ | ||
+ | - `firewall-cmd --permanent --add-port=80/ | ||
+ | - `firewall-cmd --permanent --remove-port=8080/ | ||
+ | - `firewall-cmd --reload` 重启防火墙 | ||
+ | |||
+ | ==== U盘挂载mount命令 ==== | ||
+ | - 挂载: | ||
+ | - `mount /dev/hda2 /home` | ||
+ | - 卸载: | ||
+ | - `umount /dev/hda2` | ||
+ | - `umount /usr` | ||
+ | - 详细介绍: | ||
+ | - `mount [-参数] [设备名称] [挂载点]` | ||
+ | - 常用参数: | ||
+ | - `-a` 安装在`/ | ||
+ | - `-f` 伪装mount,检查设备和目录但不真正挂载 | ||
+ | - `-n` 不把安装记录在`/ | ||
+ | - `-r` 将文件系统安装为只读 | ||
+ | - `-v` 详细显示安装信息 | ||
+ | - `-w` 将文件系统安装为可写 | ||
+ | - `-t` 指定文件系统类型(如ext2、vfat、ntfs等) | ||
+ | - `-o` 指定挂载选项(如defaults、ro、rw等) | ||
+ | |||
+ | ==== ntfs格式识别 ==== | ||
+ | - 安装ntfs支持: | ||
+ | - `yum makecache` | ||
+ | - `yum install ntfs-3g` | ||
+ | - 查看盘符: | ||
+ | - `fdisk -l` | ||
+ | - 挂载: | ||
+ | - `mount -t ntfs-3g /dev/sdb1 /mnt/usb` | ||
+ | |||
+ | ==== 文件查看及复制操作 ==== | ||
+ | - 查看当前文件夹下各文件大小: | ||
+ | - `ll -lh` | ||
+ | - 查看某文件夹占用总空间大小: | ||
+ | - `du -h --max-depth=1 / | ||
+ | - 查看磁盘空间使用情况: | ||
+ | - `df -h` | ||
+ | - 杀掉占用文件的进程: | ||
+ | - `fuser -u / | ||
+ | |||
+ | ==== 挂载nas/ | ||
+ | - 创建挂载目录: | ||
+ | - `mkdir /mnt/nas` | ||
+ | - 挂载: | ||
+ | - `mount -o username=xxxxx, | ||
+ | - 卸载: | ||
+ | - `umount -l /mnt/nas` | ||
+ | - 开机自动挂载: | ||
+ | - 编辑`/ | ||
+ | |||
+ | ==== CentOS修改SSH端口号 ==== | ||
+ | - 查看ssh默认端口: | ||
+ | - `netstat -anp|grep ssh` | ||
+ | - 修改`/ | ||
+ | - 添加新端口:`Port 10022` | ||
+ | - 向防火墙添加端口: | ||
+ | - `firewall-cmd --zone=public --add-port=10022/ | ||
+ | - `firewall-cmd --reload` | ||
+ | - 向SELinux添加端口: | ||
+ | - `semanage port -a -t ssh_port_t -p tcp 10022` | ||
+ | - 重启ssh服务: | ||
+ | - `systemctl restart sshd.service` | ||
+ | |||
+ | ==== CentOS的安全预防 ==== | ||
+ | - 避免弱口令 | ||
+ | - 修改ssh默认端口 | ||
+ | - 禁止root远程登录 | ||
+ | |||
+ | ==== yum clean all大坑解决 ==== | ||
+ | - 删除`/ | ||
+ | - 检查`/ | ||
+ | - 执行`yum makecache`和`yum update` | ||
+ | |||
+ | ===== 异常问题点 ===== | ||
+ | |||
+ | ==== phpMyAdmin安装后无法访问 ==== | ||
+ | - 修改`/ | ||
+ | - 注释掉`Require ip 127.0.0.1`和`Require ip ::1` | ||
+ | - 添加`Require all granted` | ||
+ | - 重启httpd: | ||
+ | - `systemctl restart httpd` | ||
+ | |||
+ | ==== Centos7.6 +Gnome 桌面卡但鼠标能动的解决办法 ==== | ||
+ | - 切换到命令行模式:`Ctrl+Shift+F2` | ||
+ | - 杀掉gnome-shell进程:`killall -9 gnome-shell` | ||
+ | - 切换回图形界面:`Ctrl+Shift+F1` | ||
+ | |||
+ | ==== 双系统启动进入GNU界面的处理 ==== | ||
+ | - 使用`ls`查看分区: | ||
+ | - `grub> ls` | ||
+ | - 设置根目录: | ||
+ | - `grub> set root = (hd1,6)` | ||
+ | - 指定kernel和initrd: | ||
+ | - `grub> linux (hd1, | ||
+ | - `grub> initrd (hd1, | ||
+ | - 启动: | ||
+ | - `grub> boot` | ||
+ | - 更新grub: | ||
+ | - `sudo update-grub` | ||
+ | - `sudo grub-install /dev/sda` |