巴登网盘常见问题说明
1、服务器的问题
- 服务器中病毒或者有耗费cpu的任务在长时间执行。可以使用top命令去查看cpu的使用情况
- 服务器内存耗尽。使用 free -mht 查看内存的使用情况
- 硬盘可使用率不足。可使用命令df -h
2、docker服务的问题
2.1、docker的服务状态
systemctl is-active docker
: 这个命令将检查Docker服务的运行状态。使用方式:在终端中输入
systemctl is-active docker
,并按下回车键。如果输出为active
,表示Docker已经启动;如果输出为inactive
,表示Docker未启动。docker info
: 这个命令将提供有关Docker的详细信息,其中包括Docker的运行状态。使用方式:在终端中输入
docker info
,并按下回车键。如果输出包含关于服务器的信息,表示Docker已经启动。
2.2、docker重启
要重启Docker服务,您可以使用以下命令步骤:
停止Docker服务:
sudo systemctl stop docker
等待一段时间,确保Docker服务完全停止。
启动Docker服务:
sudo systemctl start docker
检查Docker服务状态,确认是否已成功启动:
sudo systemctl status docker
如果输出显示服务已经启动并运行,那么Docker已经成功重启
3、docker的镜像问题
查看docker的镜像启动情况 docker ps -a
以下是一个示例
54e6a5481d99 eyeblue/tank:3.1.2 "/data/build/tank" 10 days ago Exited (2) 13 hours ago tank
a81c8b9750fe mysql:5.7 "docker-entrypoint.s…" 10 days ago Exited (0) 13 hours ago dockermysql
Exited (2) 13 hours ago,表明该镜像在13小时之前因为某种原因自行退出了。
这个时候我们可以去重启这个镜像
启动容器
docker start containId
containId 就是第一个表格重点 第一列,比如54e6a5481d99。
上面的2个需要先启动mysql,再启动网盘。因为有依赖关系
其他常用的docker命令
查看docker中所有的镜像 docker images
4、防火墙的问题
要确定Linux服务器是否对外开放了某个端口,您可以使用以下方法:
使用telnet命令:telnet是一种网络协议,可以用于在终端上进行基本的网络连接测试。
使用方式:在终端中输入
telnet <服务器IP> <端口号>
,并按下回车键。如果连接成功并且屏幕上出现类似于以下内容的信息,则表示该端口对外开放了:Trying <服务器IP>... Connected to <服务器IP>. Escape character is '^]'.
如果连接不成功或无法建立连接,则表示该端口对外关闭。
使用nmap命令:nmap是一种网络探测和安全扫描工具,可用于确定服务器上的端口状态。
使用方式:在终端中输入
nmap -p <端口号> <服务器IP>
,并按下回车键。nmap将扫描指定的端口,并显示其状态。如果输出中显示端口为"open",则表示该端口对外开放了。
这些方法中,telnet是一种简单且常用的方式,可以快速检查端口是否对外开放。而nmap则更为强大,可以扫描服务器上的多个端口,并提供更详细的信息。
请注意,您需要替换<服务器IP>
和<端口号>
为实际的IP地址和端口号。此外,某些情况下,服务器防火墙规则或网络配置可能会影响到这些命令的结果。
查看服务端ssh 开放的端口 vim /etc/ssh/sshd_config
5、其他场景的使用问题
5.1、为什么不能上传中文文件?
请首先检查数据库的编码,采用utf-8编码就可以上传中文。
以下提供常用数据库指令,以下数据库名为tank
,表为tank30_user
# 查看数据库编码
USE tank;
SHOW VARIABLES LIKE 'character_set_database';
# 修改数据库编码
ALTER SCHEMA `tank` DEFAULT CHARACTER SET utf8 ;
# 查看表以及字段编码
show create table tank.tank30_user;
# 修改表编码
ALTER TABLE `tank`.`tank30_user`
CHARACTER SET = utf8 ;
# 修改字段编码
ALTER TABLE `tank`.`tank30_user`
CHANGE COLUMN `username` `username` VARCHAR(45) CHARACTER SET 'utf8' NOT NULL ;
5.2、如何配置nginx反向代理?
通常我们不希望把6010端口暴露到公网,这时需要nginx进行反向代理,让用户使用域名及80端口(或443端口)就能访问蓝眼云盘。以下是tanker.eyeblue.cn
的nginx配置
#https://tanker.eyeblue.cn
server{
listen 443 ssl;
server_name tanker.eyeblue.cn;
ssl on;
ssl_certificate /letsencrypt/full_chain.pem;
#private key
ssl_certificate_key /letsencrypt/private.key;
gzip on; #开启或关闭gzip on off
gzip_disable "msie6"; #不使用gzip IE6
gzip_min_length 100k; #gzip压缩最小文件大小,超出进行压缩(自行调节)
gzip_buffers 4 16k; #buffer 不用修改
gzip_comp_level 3; #压缩级别:1-10,数字越大压缩的越好,时间也越长
gzip_types application/javascript text/css text/javascript; # 压缩文件类型
gzip_vary off; #跟Squid等缓存服务有关,on的话会在Header里增加 "Vary: Accept-Encoding"
location / {
proxy_pass http://127.0.0.1:6010;
proxy_set_header host $host;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_pass_request_headers on;
client_max_body_size 2048m;
}
}
#http://tanker.eyeblue.cn 转发所有80的请求到443
server {
listen 80;
server_name tanker.eyeblue.cn;
rewrite ^(.*)$ https://tanker.eyeblue.cn$1 permanent;
}
由于前端资源文件chunk-vendors.js
约2M,因此在nginx的配置中使用gzip压缩可以显著提升访问速度。
5.3、为什么太大的文件就不能上传了?
可能是反向代理的软件对post大小限制了,比如上方nginx
配置的client_max_body_size 2048m;
就使得最大只能上传2G
的文件
5.4、为什么我的doc,ppt,xls等office文件不能预览?
由于默认预览office文件是借助了微软的接口,它有这几个限制。
- 你部署的蓝眼云盘必须是公网ip或者外网可以访问的域名。(也就是或127.0.0.1或者localhost都不行)
- 文件不能太大,超过10M微软的预览接口便不支持了。
你可以通过自定义预览引擎,来使用决定文件应该怎样预览。
- 文件不能太大,超过10M微软的预览接口便不支持了。
5.4、公有文件和私有文件有什么区别?
公有文件是指没有权限控制的文件,任何人拿到了下载链接均可下载。
私有文件是需要授权才可以访问的文件。 授权有三种方式:
- 登录用户可以下载自己的文件
- 所有人可以根据提取码下载其他人分享的文件
- 用户可以为私有文件夹生成一个临时下载链接,该下载链接会在一段时间后过期