2025年6月

在Linux系统中,可以使用以下命令来查看当前硬盘空间剩余情况:

使用df命令

 df 命令可以显示文件系统的磁盘使用情况统计信息。常用的参数组合是 -h ,它会以人类可读的格式(如KB、MB、GB等)显示信息。示例如下:

df -h
 
该命令会列出系统中各个文件系统的挂载点以及对应的磁盘使用情况,包括总容量、已使用量、剩余容量和使用百分比等信息。

使用du命令

 du 命令主要用于查看目录或文件的磁盘使用情况。如果要查看当前目录下各个子目录占用的磁盘空间,并以人类可读的格式显示,可以使用以下命令:

bash

du -h --max-depth=1
 

 --max - depth = 1 表示只显示当前目录下一级子目录的信息,不深入到更底层的目录。如果要查看整个根目录下各个目录的磁盘使用情况,可以使用:

bash

sudo du -h --max-depth=1 /
 

需要使用 sudo 提升权限,因为根目录下有些文件和目录需要管理员权限才能访问。

使用ncdu命令

 ncdu 是一个基于文本界面的磁盘使用情况分析工具,它可以以交互的方式展示目录和文件的大小,让你更直观地查看磁盘空间的占用情况。如果系统中没有安装 ncdu ,可以使用包管理工具进行安装,例如在Ubuntu系统中可以使用以下命令安装:

bash

sudo apt install ncdu
 

安装完成后,在终端中输入 ncdu 并回车,它会从当前目录开始扫描,并显示各个目录和文件的大小。你可以使用方向键在目录树中导航,按回车键进入子目录,按 q 键退出。

1. 确认 Docker 使用了代理

你 curl 用的是代理:

Uses proxy env variable https_proxy == 'http://192.168.222.155:17890'
但是 Docker 默认不会继承系统环境变量,你需要专门配置 Docker 代理。

设置 Docker 的代理环境变量:
创建目录(如果不存在):

sudo mkdir -p /etc/systemd/system/docker.service.d
然后创建文件:

sudo nano /etc/systemd/system/docker.service.d/http-proxy.conf
填入以下内容(根据你的代理地址替换):

[Service]
Environment="HTTP_PROXY=http://192.168.222.155:17890"
Environment="HTTPS_PROXY=http://192.168.222.155:17890"
Environment="NO_PROXY=localhost,127.0.0.1,::1"
保存退出后,刷新 systemd 并重启 Docker:

sudo systemctl daemon-reexec
sudo systemctl daemon-reload
sudo systemctl restart docker
然后测试拉取镜像:

docker pull hello-world

2. Docker 登录(可选但推荐)

有些镜像需要认证,比如你反复请求后可能会被限速。

执行:

docker login
输入 Docker Hub 的用户名和密码或 token。

3. 国内镜像加速器(推荐)

为避免 Docker Hub 网络不稳定的问题,可以继续使用国内镜像源。

编辑 /etc/docker/daemon.json:

{
"registry-mirrors": [

"https://mirror.baidubce.com",
"https://docker.mirrors.ustc.edu.cn",
"https://hub-mirror.c.163.com"

]
}
然后重启 Docker:

sudo systemctl daemon-reexec
sudo systemctl restart docker

一步一步排查:

  1. 确认网络连通性
    curl -v https://registry-1.docker.io/v2/
    看是否能够连通。如果卡住、超时或者报错,说明问题是网络层的问题。
  2. 是否被代理、GFW 阻断?
    如果你在中国大陆,访问 Docker Hub 很可能是被墙了。

✅ 解决办法:配置镜像加速器
编辑 /etc/docker/daemon.json,添加如下内容:

{
"registry-mirrors": ["https://registry.docker-cn.com"]
}
或者用阿里云/网易的镜像加速器,比如:

{
"registry-mirrors": ["https://<你的阿里云ID>.mirror.aliyuncs.com"]
}
然后重启 Docker:

sudo systemctl daemon-reexec
sudo systemctl restart docker

  1. 测试 DNS 是否正常解析
    nslookup registry-1.docker.io
    或者:
    dig registry-1.docker.io
    如果没有 IP 地址返回,说明 DNS 配置可能有问题。

✅ 解决方法:设置公共 DNS
编辑 Docker 的 DNS 配置 /etc/docker/daemon.json:
{
"dns": ["8.8.8.8", "1.1.1.1"]
}
然后重启 Docker。

  1. 测试是否能 ping Docker Hub
    ping registry-1.docker.io
    注意: 一些 Docker Hub 域名不响应 ping,这是正常的,但如果出现 Network is unreachable 或者 Name or service not known,就说明网络或 DNS 出问题。
  2. 尝试登录
    docker login
    可以规避匿名用户被限速的情况。
  3. 确认系统时间正确
    系统时间不对可能导致 TLS 握手失败:

如不正确可同步:

sudo ntpdate time.windows.com

  1. 如果仍不行
    你也可以尝试国内镜像服务,比如:

阿里云容器镜像服务(可免费申请)
网易云镜像加速器
DaoCloud 镜像加速器

一、docker官方提供的一键安装docker命令

1、一键安装命令

wget -qO- https://get.docker.com | bash -s docker --mirror Aliyun

2、安装完成后需要执行

systemctl daemon-reload

systemctl restart docker

3、证明安装完成,docker 的命令如下:

systemctl start docker # 启动docker
systemctl stop docker # 停止docker
systemctl status docker # 查看docker状态
systemctl restart docker # 重新启动docker

以下为官方安装文档:https://jellyfin.org/docs/general/installation/container

  1. 下载最新的容器镜像。

    docker pull jellyfin/jellyfin
    
  2. 为配置和缓存数据创建持久存储。

    在主机上创建两个目录并使用绑定挂载:

    mkdir ./path/to/config -p
    mkdir ./path/to/cache -p

    或者创建两个持久卷:

    docker volume create jellyfin-config
    docker volume create jellyfin-cache

    3、 通过以下方式之一创建并运行容器。

    注意:Docker 的默认网络模式是桥接模式。如果省略主机模式,则将使用桥接模式。使用主机网络 ( --net=host) 是可选的,但必须使用 DLNA 才能使用。

    一、使用 Docker 命令行界面:

    docker run -d \
    --name jellyfin \
    --user uid:gid \
    --net=host \
    --volume /path/to/config:/config \ # Alternatively
    --volume jellyfin-config:/config
    --volume /path/to/cache:/cache \ # Alternatively
    --volume jellyfin-cache:/cache
    --mount type=bind,source=/path/to/media,target=/media \
    --restart=unless-stopped \
    jellyfin/jellyfin

    正确命令:

    docker run -d --name jellyfin --net=host --volume ./path/to/config:/config --volume ./path/to/cache:/cache --mount type=bind,source=/mnt/sda/smba,target=/media1 --mount type=bind,source=/mnt/sdb/av250G,target=/media2,readonly --restart=unless-stopped jellyfin/jellyfin

    需要使用绑定挂载将文件夹从主机操作系统传递到容器操作系统,而卷由 Docker 维护,可以认为更容易通过外部程序备份和控制。对于简单的设置,使用绑定挂载比使用卷更容易。如果需要,可以绑定挂载多个媒体库:

    • -mount type=bind,source=/path/to/media1,target=/media1
      --mount type=bind,source=/path/to/media2,target=/media2,readonly
      ...etc

    二、使用 Docker compose

    创建一个docker-compose.yml包含以下内容的文件。在下面的用户行中添加您想要运行 jellyfin 的 UID 和 GID,或者删除用户行以使用默认用户(root)。

    version: '3.5'
    services:
    jellyfin:
    image: jellyfin/jellyfin
    container_name: jellyfin
    user: uid:gid
    network_mode: 'host'
    volumes:

    • /path/to/config:/config
    • /path/to/cache:/cache
    • type: bind
      source: /path/to/media
      target: /media
    • type: bind
      source: /path/to/media2
      target: /media2
      read_only: true
      restart: 'unless-stopped'
      # Optional - alternative address used for autodiscovery
      environment:
    • JELLYFIN_PublishedServerUrl=http://example.com
      # Optional - may be necessary for docker healthcheck to pass if running in host network mode
      extra_hosts:
    • 'host.docker.internal:host-gateway'

    然后在docker-compose.yml运行相同的文件夹中:

    docker compose up

    要在后台运行容器,请添加-d上述命令。

    ### kodi安装jellyfin插件访问jellyfin服务器

    参考文章:https://sspai.com/post/76951

    # Kodi搭建

    搭建并配置好Jellfin之后,接着需要安装Kodi。

    官网地址:Kodi

    下载到本地后,默认安装即可,安装结束之后勾选Run Kodi即可进入Kodi页面:

1.png


默认为英文,接着进行配置。

点击设置,进入Interface,在左边的菜单里选择 Skin 并把字体改成 Arial based,在Regional选项设置语言选项,下拉选择中文简体就会自动安装,一定要注意是先选择字体,不然中文字符会乱码:

2.png

3.png


接着点击小齿轮图标进入设置界面,选择系统菜单项,在左边的菜单里选择插件,然后打开未知来源选项:

4.png


接着回到进入设置界面,选择文件管理菜单项,在左边的菜单里选择添加源,然后在弹出的窗口里输入下面的地址:

5.png

6.png


接着安装 Jellyfin 插件,点击小齿轮图标进入设置界面,选择插件菜单项,再选择从 zip 文件安装,接着选择刚才创建的 kodi jellyfin 网络源:

7.png


在弹出的窗口里选择 repository.jellyfin.kidi.zip,等待执行完成。然后返回到上一级菜单选择从库安装,从弹出的窗口里选择 Kodi jellyfin Addons,安装即可:

7.png


接着会弹出窗口配置插件,这几步一般保持默认选项即可,最后登录Jellfin的服务器,在安装Jellfin过程设置的密码,选择要添加的媒体,进行添加。

最后,等待几秒同步,回到首页,就会看到Jelyyfin的媒体内容。

后续对媒体增删改的过程,主要是通过在Jellyfin端进行,kodi可以设置每次启动自动同步,也可以选择手动的更新。

事实上流媒体功能远不止这些,还可以设置媒体的自动刮削、中文字幕插件等等。有时间再写其他的折腾记录。