CentOS – 嗨软 https://ihacksoft.com/archive 分享最好用的常用软件 Tue, 22 Nov 2022 02:41:09 +0000 zh-CN hourly 1 https://wordpress.org/?v=4.9.26 CentOS 之 vsftpd 从安装到配置命令笔记 https://ihacksoft.com/archive/570.html https://ihacksoft.com/archive/570.html#respond Tue, 16 Apr 2019 11:46:22 +0000 https://ihacksoft.com/?p=1299   我的 VPS 上用的是 CentOS 系统,FTP 服务是必须的,经常需要修改网站文件,上传和下载,没 FTP 很不方便。 vsftpd 已经使用多年,但是一台新的服务器安装或配置 vsftpd 经常忘记相关命令,故在此记录一下。

vsftpd是否安装

rpm -q vsftpd

没有的话安装一下(记得已经联网)

yum install vsftpd

——————
安装完成后你可以 chkconfig –list vsftpd 查看它是否开机自启动,结果是没有的。用 chkconfig vsftpd on 命令让它开机自启。
——————
如果想允许root登录:
vi /etc/vsftpd/user_list
vi /etc/vsftpd/ftpusers
#屏蔽掉 root
——————
先关闭iptables:

service iptables stop
——————

下面添加用户hqwftp:

useradd -d /home/hqwftp/ -g ftp -s /sbin/nologin hqwftp
passwd hqwftp

service vsftpd restart

这样就可以顺利登录了。但是有个问题:它可以跳转目录。下面把这个问题解决一下。

——————–
vi /etc/vsftpd/

#chroot_list_enable=YES 这行注释去掉
# (default follows)
#chroot_list_file=/etc/vsftpd/chroot_list 这行注释也去掉,然后保存

那/etc/vsftpd/chroot_list又是什么文件呢?vsftpd目录下总共就只有三个文件:ftpuser、user_list、vsftpd.conf(还有一个脚本文件不用管它)。
其实chroot_list这个文件默认是不存在的,所以你只需要vi chroot_list新建它,然后在里面加入用户名hqwftp即可。

编辑文件chroot_list:
vi /etc/vsftpd/chroot_list
内容为ftp用户名,每个用户占一行,如:
hqwftp

然后别忘了重启服务:

service vsftpd restart

搞定!!!

————————

扩展:修改端口号

vi vsftpd.conf

在最后加入一条

listen_port=2687

重启service vsftpd restart搞定

————————

重启一下系统看看会不会自启动
结果却不行,为什么?想到了iptables,刚才只是关了一下,并不是永久禁用。

再次执行 service iptables stop,OK,搞定!

或者永久关闭:chkconfig iptables off

完。

===========================================

我发现改了端口号后在 windows cmd 命令行里ftp 192.168.100.11 2687这样子不能登录的。找到解决方法:

先 ftp
然后 ftp> open 192.168.100.11 2687
搞定!!!

===========================================

Apache

安装:yum -y install httpd.i*
配置文件在:/etc/httpd/conf/httpd.conf
主页文件在:/var/www/html

直接用 vi index.html 然后写入一个简单的HTML。

然后 service httpd start 搞定。

]]>
https://ihacksoft.com/archive/570.html/feed 0
CentOS 一条命令即可查看各目录占用的硬盘空间大小 https://ihacksoft.com/archive/504.html https://ihacksoft.com/archive/504.html#respond Sun, 24 Mar 2019 07:06:01 +0000 https://ihacksoft.com/?p=514   我的 VPS 用的是 CentOS 系统,一段时间后发现 VPS 的硬盘就占用非常大,但是自己网站数据并不多,那么是什么占用了我的 VPS 硬盘空间呢?我们可以通过命令 du -sh 来分析一下。

登陆vps的ssh后,输入下面的命令:
du -sh /*

可以列出你整个VPS所有文件夹的大小。其中“/*”是控制分析哪个目录的,你根据上面的结果,然后灵活变化后面的路径就行了,例如:
du -sh /usr/*

用这个命令来分析usr目录下的文件夹大小,最后定位到大文件,直接删除就行了。

]]>
https://ihacksoft.com/archive/504.html/feed 0
CentOS 7 启用 iptables 并关闭默认的 firewall 防火墙 https://ihacksoft.com/archive/483.html https://ihacksoft.com/archive/483.html#respond Mon, 18 Mar 2019 02:51:47 +0000 https://ihacksoft.com/?p=493   VPS 上更新到了最新的 CentOS 7,以前没有配置防火墙,为了系统安全,现打算启用防火墙并进行严格过滤控制。CentOS 7.0 默认使用的是 firewall 作为防火墙,没用过,听说也不是很好用,我还是比较习惯用 iptables。

  所以接下来要做的主要是两步:一是关闭默认的防火墙;二是开启 iptables,并对其进行配置,主要是开放一些端口。

一、关闭默认的 firewall

systemctl stop firewalld.service #停止firewall
systemctl disable firewalld.service #禁止firewall开机启动
firewall-cmd --state #查看默认防火墙状态(关闭后显示notrunning,开启后显示running)

启用 iptables 防火墙

编辑防火墙配置文件:

vi /etc/sysconfig/iptables

这里使用80和8080端口为例:

 # sampleconfiguration for iptables service
    # you can edit thismanually or use system-config-firewall
    # please do not askus to add additional ports/services to this default configuration
    *filter
    :INPUT ACCEPT [0:0]
    :FORWARD ACCEPT[0:0]
    :OUTPUT ACCEPT[0:0]
    -A INPUT -m state--state RELATED,ESTABLISHED -j ACCEPT
    -A INPUT -p icmp -jACCEPT
    -A INPUT -i lo -jACCEPT
    -A INPUT -p tcp -mstate --state NEW -m tcp --dport 22 -j ACCEPT
    -A INPUT -p tcp -m state --state NEW -m tcp --dport 80 -jACCEPT
    -A INPUT -p tcp -m state --state NEW -m tcp --dport 8080-j ACCEPT
    -A INPUT -j REJECT--reject-with icmp-host-prohibited
    -A FORWARD -jREJECT --reject-with icmp-host-prohibited

命令:wq!保存。

一般添加到“-A INPUT -p tcp -m state –state NEW -m tcp–dport 22 -j ACCEPT”行的上面或者下面,切记不要添加到最后一行,否则防火墙重启后不生效。

systemctl restart iptables.service #最后重启防火墙使配置生效
systemctl enable iptables.service #设置防火墙开机启动
]]>
https://ihacksoft.com/archive/483.html/feed 0
CentOS7 安装 PHP7.x 详细全过程 https://ihacksoft.com/archive/482.html https://ihacksoft.com/archive/482.html#respond Mon, 18 Mar 2019 02:34:01 +0000 https://ihacksoft.com/?p=492   相信现在大部分站长为了减少折腾,VPS 上用的环境都是一键安装包,LNMP 或 LAMP(Linux+Nginx(Apache)+MySQL+PHP)。这样虽然很方便,但并不利于学习,如果环境包中的某个组件出现问题,很难自己手动解决。以当前最新的 PHP 7.2 为例,看看如何在 CentOS7 下安装 PHP。

安装 PHP 7.2

安装 EPEL 软件包:
$ sudo yum install epel-release

安装 remi 源:
$ sudo yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm

安装 yum 扩展包:
$ sudo yum install yum-utils

启用 remi 仓库:
$ sudo yum-config-manager --enable remi-php72
$ sudo yum update

安装 PHP7.2
$ sudo yum install php72

安装 php-fpm 和一些其他模块
$ sudo yum install php72-php-fpm php72-php-gd php72-php-json php72-php-mbstring php72-php-mysqlnd php72-php-xml php72-php-xmlrpc php72-php-opcache

输入 php72 -v 可查看安装结果。

php-fpm 服务

设置开机自启动
$ sudo systemctl enable php72-php-fpm.service

常用 php-fpm 命令

# 开启服务
$ sudo systemctl start php72-php-fpm.service

# 停止服务
$ sudo systemctl stop php72-php-fpm.service

# 查看状态
$ sudo systemctl status php72-php-fpm.service

通过 egrep 查询 nginx 服务器的用户和用户组:
$ egrep '^(user|group)' /etc/nginx/nginx.conf

结果示例:
user nginx;

编辑 /etc/opt/remi/php72/php-fpm.d/www.conf,修改执行 php-fpm 的权限:
$ sudo vi /etc/opt/remi/php72/php-fpm.d/www.conf

设置用户和用户组为 nginx:
user = nginx
group = nginx

保存并关闭文件,重启 php-fpm 服务:
$ sudo systemctl restart php72-php-fpm.service

路径整理如下:

# php 安装路径
/etc/opt/remi/php72

# nginx 配置文件
/etc/nginx/nginx.conf

# nginx 默认项目路径
/usr/share/nginx/html
]]>
https://ihacksoft.com/archive/482.html/feed 0
查看当前 CentOS 系统版本命令及解释! https://ihacksoft.com/archive/478.html https://ihacksoft.com/archive/478.html#respond Thu, 14 Mar 2019 08:42:19 +0000 https://ihacksoft.com/?p=488   阿里云买了好几年了,都不记得 CentOS 的系统版本了。因为现在有一个操作,在 CentOS 6 和 CentOS 7 下方法不同,查看命令为:cat /etc/redhat-release

[root@HQW-Aliyun ~]# cat /etc/redhat-release
CentOS release 6.5 (Final)

此外,顺便学习下查看 Linux 内核的命令:cat /proc/version

[root@HQW-Aliyun ~]# cat /proc/version
Linux version 2.6.32-431.17.1.el6.x86_64 (mockbuild@c6b8.bsys.dev.centos.org) (gcc version 4.4.7 20120313 (Red Hat 4.4.7-4) (GCC) ) #1 SMP Wed May 7 23:32:49 UTC 2014

解释如下:
Linux version 2.6.32-431.17.1.el6.x86_64 (mockbuild@c6b8.bsys.dev.centos.org)
Linux 内核版本号
gcc version 4.4.7 20120313
gcc 编译器版本号
Red Hat 4.4.7-4
Red Hat版本号,因为 CentOS 是基于 Red Hat 的啊!

]]>
https://ihacksoft.com/archive/478.html/feed 0
Linux CentOS7 下安装 TeamViewer 的方法及错误处理 https://ihacksoft.com/archive/440.html https://ihacksoft.com/archive/440.html#respond Fri, 19 Oct 2018 02:23:17 +0000 https://ihacksoft.com/?p=450   TeamViewer 在 Windows 下非常好用,用于远程连接特别方便!现在要在一台 Linux 服务器(CentOS7)下同样安装 TeamViewer,应该怎么操作?

  官网下载地址: https://www.teamviewer.com/en/download/linux/,选择linux,下载rpm包,直接安装:
yum install teamviewer.x86_64.rpm

出现一个error提示,关键词:libQt5WebKitWidgets.so,以下是错误原文:

Error: Package: teamviewer-13.0.6634-0.x86_64 (/teamviewer.x86_64)
  Requires: libQt5WebKitWidgets.so.5()(64bit) >= 5.5
You could try using --skip-broken to work around the problem
You could try running: rpm -Va --nofiles --nodigest

解决方法

在这个网址下载qt5-qtwebkit的库:
https://centos.pkgs.org/7/epel-x86_64/qt5-qtwebkit-5.6.2-1.el7.x86_64.rpm.html

直接附上qt5-qtwebkit Binary package的下载连接吧:
http://dl.fedoraproject.org/pub/epel/7/x86_64/Packages/q/qt5-qtwebkit-5.6.2-1.el7.x86_64.rpm

rpm安装qt5-qtwebkit
rpm -Uvh qt5-qtwebkit-5.6.2-1.el7.x86_64.rpm

又出现错误,提示Header V3 RSA/SHA256 Signature,以下是错误原文:
warning: qt5-qtwebkit-5.6.2-1.el7.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID 352c64e5: NOKEY

百度故障原因:这是由于yum安装了旧版本的GPG keys造成的,解决的方法就是在rpm 语句后面加上–force –nodeps:
–nodeps 就是安装时不检查依赖关系;
–force 就是强制安装;

重新安装qt5-qtwebkit,终于装好了。
rpm -Uvh qt5-qtwebkit-5.6.2-1.el7.x86_64.rpm --force --nodeps

再次安装TeamViewer:
yum install -y teamviewer.x86_64.rpm

搞定,问题解决!

]]>
https://ihacksoft.com/archive/440.html/feed 0
Linux(CentOS)FTP 无法上传下载原来是这个原因! https://ihacksoft.com/archive/394.html https://ihacksoft.com/archive/394.html#respond Thu, 05 Jul 2018 11:09:20 +0000 https://ihacksoft.com/?p=404   在 VPS(CentOS) 上整了一套网站管理系统,一切都顺利的,到了 FTP 有问题了,特意看了内含的软件,FTP用的 Pure FTPd 程序。一开始是无法下载,那是因为防火墙的问题,FTP 运行需要21和20端口,开启一下即可。下载是可以了,但上传还是不行,以为是我的 Flashfxp 问题,想换成 FileZilla 客户端程序,其实问题不在这里,我忽略了一个很重要的问题:写入权限。赶紧 SSH 连接上服务器,对指定目录 chmod -R 777。小结一下,如果 Linux FTP 无法上传下载,有可能的原因,一是端口阻断,二是权限问题。希望对遇到同样问题的朋友有所帮助。

]]>
https://ihacksoft.com/archive/394.html/feed 0
CentOS 之 vsftpd 笔记 https://ihacksoft.com/archive/1363.html https://ihacksoft.com/archive/1363.html#respond Mon, 30 Oct 2017 13:01:19 +0000 https://ihacksoft.com/?p=2092 vsftpd是否安装

rpm -q vsftpd

没有的话安装一下(记得已经联网)

yum install vsftpd

------------------
安装完成后你可以 chkconfig --list vsftpd 查看它是否开机自启动,结果是没有的。用 chkconfig vsftpd on 命令让它开机自启。
------------------
如果想允许root登录:
vi /etc/vsftpd/user_list
vi /etc/vsftpd/ftpusers
#屏蔽掉 root
------------------
先关闭iptables:

service iptables stop
------------------

下面添加用户hqwftp:

useradd -d /home/hqwftp/ -g ftp -s /sbin/nologin hqwftp
passwd hqwftp

service vsftpd restart

这样就可以顺利登录了。但是有个问题:它可以跳转目录。下面把这个问题解决一下。

--------------------
vi /etc/vsftpd/

#chroot_list_enable=YES 这行注释去掉
# (default follows)
#chroot_list_file=/etc/vsftpd/chroot_list 这行注释也去掉,然后保存

那/etc/vsftpd/chroot_list又是什么文件呢?vsftpd目录下总共就只有三个文件:ftpuser、user_list、vsftpd.conf(还有一个脚本文件不用管它)。
其实chroot_list这个文件默认是不存在的,所以你只需要vi chroot_list新建它,然后在里面加入用户名hqwftp即可。

编辑文件chroot_list:
vi /etc/vsftpd/chroot_list
内容为ftp用户名,每个用户占一行,如:
hqwftp

然后别忘了重启服务:

service vsftpd restart

搞定!!!

--------------------------

扩展:修改端口号

vi vsftpd.conf

在最后加入一条

listen_port=2687

重启service vsftpd restart搞定

------------------------

重启一下系统看看会不会自启动
结果却不行,为什么?想到了iptables,刚才只是关了一下,并不是永久禁用。

再次执行 service iptables stop,OK,搞定!

或者永久关闭:chkconfig iptables off

完。

===========================================

我发现改了端口号后在 windows cmd 命令行里ftp 192.168.100.11 2687这样子不能登录的。找到解决方法:

先 ftp
然后 ftp> open 192.168.100.11 2687
搞定!!!

===========================================

Apache

安装:yum -y install httpd.i*
配置文件在:/etc/httpd/conf/httpd.conf
主页文件在:/var/www/html

直接用 vi index.html 然后写入一个简单的HTML。

然后 service httpd start 搞定。

]]>
https://ihacksoft.com/archive/1363.html/feed 0
CentOS Linux 中zip文件解压和压缩方法 https://ihacksoft.com/archive/1313.html https://ihacksoft.com/archive/1313.html#respond Mon, 15 Feb 2016 10:21:19 +0000 https://ihacksoft.com/?p=2042   下午在阿里云SSH上操作下载了一个全新的zip文件,然后不知道怎么解压了?于是网上搜索,搜到以下这一段还是不错的,它有较为详细的实例讲解,留一份日后可以参考。

实例讲解

1、把/home目录下面的mydata目录压缩为mydata.zip
zip -r mydata.zip mydata #压缩mydata目录

2、把/home目录下面的mydata.zip解压到mydatabak目录里面
unzip mydata.zip -d mydatabak

3、把/home目录下面的abc文件夹和123.txt压缩成为abc123.zip
zip -r abc123.zip abc 123.txt

4、把/home目录下面的wwwroot.zip直接解压到/home目录里面
unzip wwwroot.zip

5、把/home目录下面的abc12.zip、abc23.zip、abc34.zip同时解压到/home目录里面
unzip abc\*.zip

6、查看把/home目录下面的wwwroot.zip里面的内容
unzip -v wwwroot.zip

7、验证/home目录下面的wwwroot.zip是否完整
unzip -t wwwroot.zip

8、把/home目录下面wwwroot.zip里面的所有文件解压到第一级目录
unzip -j wwwroot.zip

主要参数

-c:将解压缩的结果
-l:显示压缩文件内所包含的文件
-p:与-c参数类似,会将解压缩的结果显示到屏幕上,但不会执行任何的转换
-t:检查压缩文件是否正确
-u:与-f参数类似,但是除了更新现有的文件外,也会将压缩文件中的其它文件解压缩到目录中
-v:执行是时显示详细的信息
-z:仅显示压缩文件的备注文字
-a:对文本文件进行必要的字符转换
-b:不要对文本文件进行字符转换
-C:压缩文件中的文件名称区分大小写
-j:不处理压缩文件中原有的目录路径
-L:将压缩文件中的全部文件名改为小写
-M:将输出结果送到more程序处理
-n:解压缩时不要覆盖原有的文件
-o:不必先询问用户,unzip执行后覆盖原有文件
-P<密码>:使用zip的密码选项
-q:执行时不显示任何信息
-s:将文件名中的空白字符转换为底线字符
-V:保留VMS的文件版本信息
-X:解压缩时同时回存文件原来的UID/GID

]]>
https://ihacksoft.com/archive/1313.html/feed 0
CentOS 最新版的下载地址 + 版本选择详解 https://ihacksoft.com/archive/centos-download-and-version-differences.html https://ihacksoft.com/archive/centos-download-and-version-differences.html#respond Sun, 09 Mar 2014 16:12:03 +0000 https://ihacksoft.com/?p=1202   这篇文章其实是我前几天写的,因为当时开心软件园还没有重新开始发文,所以把它放到了小伙子博客上。我觉得写得还可以,无需大改,所以就不做变动了,把原文再发一下,因为安装完成了,所以图片换了下。应该说这篇文章对于新手刚开始学习 CentOS 还是很有帮助的,至少知道了去哪里下载 CentOS 最新版本以及如何选择适合自己的版本。至于安装方法,有机会单独发文。]]>   这篇文章其实是我前几天写的,因为当时开心软件园还没有重新开始发文,所以把它放到了小伙子博客上。我觉得写得还可以,无需大改,所以就不做变动了,把原文再发一下,因为安装完成了,所以图片换了下。应该说这篇文章对于新手刚开始学习 CentOS 还是很有帮助的,至少知道了去哪里下载 CentOS 最新版本以及如何选择适合自己的版本。至于安装方法,有机会单独发文。

  发现越来越多的机关单位、事业单位开始使用 Linux 作为主要服务器,毕竟,Linux的稳定性和高效性是众所周知的,所以我也打算把自己这一块技术加强一下。早上就想下个 CentOS 最新版,安装到单位电脑的 VMWare 虚拟机里进行学习。之前我学 Linux 都采用 Rat Hat,这次为什么选择 CentOS 呢?简简说说这个系统吧!

  CentOS 可以说成是 Red Hat Linux 的免费版本,它来自于 Red Hat Enterprise Linux 依照开放源代码规定发布的源代码所编译而成,它对上游代码的主要修改是为了移除不能自由使用的商标。两者的区别,只在于 CentOS 并不包含封闭源代码软件。正因为如此,现在很多服务器都选择使用 CentOS 来代替商业性的 RedHat。而且在2014年1月7号,CentOS 与 Red Hat 已经宣布合作了。别担心,它依然免费。

CentOS最新版

CentOS 最新版下载地址

  现在最新版是6.5,去哪里下载呢?官方提供了诸多镜像下载地址。国外的就不说了,罗列下中国大陆的主要下载地址:

China NetEase(163网易)
http://mirrors.163.com/centos/

China Sohu Inc, Beijing P.R. China(搜狐)
http://mirrors.sohu.com/centos/

China CMCC Taian Branch(泰安移动)
http://mirrors.ta139.com/centos/

China Star Studio of UESTC(电子科技大)
http://mirrors.stuhome.net/centos/

China University of Science and Tech of China(中科大)
http://centos.ustc.edu.cn/centos/

China Northeastern University, Shenyang Liaoni(东北大学)
http://mirror.neu.edu.cn/centos/

  自己选择吧,我一般选163。进入之后我们点击“6.5/”下载最新版,然后点击进入“isos/”,此时出现两个文件夹,分别是 i386x86_64。如何选择?就看下一节吧。

CentOS 版本选择

  i386是给32位机器使用的,而x86_64适用于64位机器。前者只能使用32位数码软件,后者可以兼用32位数码软件,这就是两者区别。如果你的服务器内存超4GB,强烈建议使用64位版本;如果像我这样只在虚拟里安装学习,那么32位就行了,也就是选择i386版本。进入之后我们看到这样一个界面:

CentOS最新版

CentOS-6.5-i386-LiveCD.iso
CentOS-6.5-i386-LiveCD.torrent
CentOS-6.5-i386-LiveDVD.iso
CentOS-6.5-i386-LiveDVD.torrent
CentOS-6.5-i386-bin-DVD1.iso
CentOS-6.5-i386-bin-DVD1to2.torrent
CentOS-6.5-i386-bin-DVD2.iso
CentOS-6.5-i386-minimal.iso
CentOS-6.5-i386-minimal.torrent
CentOS-6.5-i386-netinstall.iso
CentOS-6.5-i386-netinstall.torrent

  这么多文件该怎么选择呢?对新手来说,可能一下子要蒙了。不急,慢慢来。先观察文件后缀名,分.iso和.torrent两种,前者是ISO镜像文件直接下载,后者是BT种子下载,这只是下载方式的不同而已。再来看看文件名的不同,也就是版本的选择了。我们看到共分为LiveCD、LiveDVD、bin-DVD、bin-DVD和netinstall五种,分别作下介绍:

1、BinDVD版:这就是普通安装版,需安装到计算机硬盘才能用,bin版也是最完整的版本,一般都比较大,因为包含了大量的常用软件,安装时无需再在线下载。像我这样安装到虚拟机里使用的,选它没错。

2、LiveDVD版:看名字就知道了,就是光盘安装版。它可以通过光盘启动电脑,启动出CentOS系统,也有图形界面,也有终端。也可以安装到计算机,但是有些内容可能还需要再次到网站下载(自动)。

3、LiveCD版:相比LiveDVD这是个更精简的光盘CentOS系统,体积更小,便于维护使用。

4、minimal版:就是迷你版,精简了更多的东西,不管是服务器实用安装还是虚拟机学习安装,不推荐用此版本。

5、netinstall版:顾名思义,网络安装版。除非是逼不得已的情况,不然不推荐。

  其实README.txt文件里面(如上图)已经写得比较清楚了,只不过都是英文的,可以看一下。另外,md5sum和sha1sum文件是MD5和SHA1的校验值。ISO文件下载后可以对照一下,以保证文件的原版完整性。

]]>
https://ihacksoft.com/archive/centos-download-and-version-differences.html/feed 0