比ChatGPT4o更“聪明”的甜点级OS Copilot

本文涉及的产品
无影云电脑企业版,4核8GB 120小时 1个月
资源编排,不限时长
无影云电脑个人版,1个月黄金款+200核时
简介: 总体来说,OS Copilot的命令行模式非常适合小白学习Linux使用,但是还不够成熟,在复杂情景下存在一定出错率,有很大进步空间。但是在部分基本常识方面秒杀部分人类和ChatGPT4o,很让我惊喜。目前OS Copilot只能用在Alibaba Cloud Linux 3有点遗憾,希望未来能够支持更多的操作系统、增加跨会话的联动功能。此外,OS Copilot作为阿里云生态的产品完全可以与安骑士和云平台的运维监控等功能打通提供更多数据能力。

比ChatGPT4o更“聪明”的甜点级OS Copilot

在写这篇文章时OS Copilot已经安装部署完毕并且正常运行了,我新开通了一台ECS来完成本次评测,以常用情景切入进行评价。如果你还没有安装可以参阅官方的帮助文档,那里有很详细的说明:https://help.aliyun.com/zh/alinux/user-guide/instructions-for-os-copilot

场景一:Linux系统上采集监控日志以FTP的方式上传至日志服务器

Prompt:我需要在Linux操作系统中安装FTP客户端。其次在服务器中创建Linux.bat,获取服务器时间、Hostname、文件系统使用率、文件系统、节点使用率、内存、CPU、进程使用率等服务器信息并写入指定的文件内,最后使用FTP上传至日志服务器中。请给出解决方案。

image.png

[Copilot]:

    Alibaba Cloud Linux 3 上安装 FTP 客户端可以使用 `yum` 命令来安装 `filezilla`

 

```bash

sudo yum install filezilla -y

```

 

接下来,你需要在服务器上编写一个名为 `Linux.bat` 的脚本(请注意,在Linux中我们通常使用`.sh`扩展名表示脚本)。这个脚本将获取服务器的时间、hostname、文件系统使用率等信息,并将其写入到一个名为 `server_info.txt` 的文件中。以下是一个简单的示例脚本:

 

```bash

#!/bin/bash

 

# 获取当前时间

current_time=$(date)

 

# 获取hostname

hostname=$(hostname)

 

# 获取文件系统使用率

df_output=$(df -h)

fs_usage=$(echo "$df_output" | awk 'NR==2 {print $5}')

 

# 获取文件系统

fs=$(echo "$df_output" | awk 'NR==2 {print $1}')

 

# 获取节点使用率

nodename=$(uname -n)

node_load=$(uptime | awk '{print $(NF-2)}')

 

# 获取内存使用情况

mem_total=$(free | grep Mem | awk '{print $2}')

mem_used=$(free | grep Mem | awk '{print $3}')

mem_percent=$(echo "scale=2; ($mem_used / $mem_total) * 100" | bc)

 

# 获取CPU使用情况

cpu_percent=$(top -bn1 | grep "Cpu(s)" | sed "s/.*, *\([0-9.]*\)%* id.*/\1/" | awk '{print 100 - $1}')

 

# 获取进程数量

process_count=$(ps axo comm | wc -l)

 

# 将所有信息写入文件

echo "Current Time: $current_time" > server_info.txt

echo "Hostname: $hostname" >> server_info.txt

echo "File System Usage: $fs_usage" >> server_info.txt

echo "File System: $fs" >> server_info.txt

echo "Node Name: $nodename" >> server_info.txt

echo "Node Load: $node_load" >> server_info.txt

echo "Memory Usage: $mem_percent%" >> server_info.txt

echo "CPU Usage: $cpu_percent%" >> server_info.txt

echo "Process Count: $process_count" >> server_info.txt

```

 

保存此脚本后,记得赋予执行权限:

 

```bash

chmod +x Linux.sh

```

 

然后运行此脚本来生成 `server_info.txt` 文件。

 

最后,你可以使用 FileZilla 客户端将 `server_info.txt` 上传到日志服务器。以下是基本步骤:

 

1. 打开 FileZilla

2. 在左侧栏中点击“站点管理器”(Site Manager)。

3. 点击“新建”(New Site)按钮。

4. 输入新站点的详细信息,包括主机名(Host)、用户名(User)、密码(Password)以及端口(Port,通常是21)。

5. 点击“连接”(Connect)按钮以连接到日志服务器。

6. 在右侧栏中浏览日志服务器上的目录。

7. `server_info.txt` 拖拽到右侧栏中的相应位置,或者右键点击目标目录,选择“上传”(Upload)。

 

注意:这些步骤假设你已经知道日志服务器的登录凭据和网络设置。如果没有,请与系统管理员联系以获取必要的信息。

 

[Copilot]发现如下命令:

    1. sudo yum install filezilla -y

    2. current_time=$(date)

  

       hostname=$(hostname)

  

       df_output=$(df -h)

       fs_usage=$(echo "$df_output" | awk 'NR==2 {print $5}')

  

       fs=$(echo "$df_output" | awk 'NR==2 {print $1}')

  

       nodename=$(uname -n)

       node_load=$(uptime | awk '{print $(NF-2)}')

  

       mem_total=$(free | grep Mem | awk '{print $2}')

       mem_used=$(free | grep Mem | awk '{print $3}')

       mem_percent=$(echo "scale=2; ($mem_used / $mem_total) * 100" | bc)

  

       cpu_percent=$(top -bn1 | grep "Cpu(s)" | sed "s/.*, *\([0-9.]*\)%* id.*/\1/" | awk '{print 100 - $1}')

  

       process_count=$(ps axo comm | wc -l)

  

       echo "Current Time: $current_time" > server_info.txt

       echo "Hostname: $hostname" >> server_info.txt

       echo "File System Usage: $fs_usage" >> server_info.txt

       echo "File System: $fs" >> server_info.txt

       echo "Node Name: $nodename" >> server_info.txt

       echo "Node Load: $node_load" >> server_info.txt

       echo "Memory Usage: $mem_percent%" >> server_info.txt

       echo "CPU Usage: $cpu_percent%" >> server_info.txt

       echo "Process Count: $process_count" >> server_info.txt

    3. chmod +x Linux.sh

 

[Copilot]: 请选择要执行的命令,从[1, 3]中进行选择,回复'n''no'进行取消,回复'r''retry'重新生成回答。

请输入:

评价:脚本生成的没有问题,但是FTP上传的部分存在问题,OS Copilot告诉我们应该使用 FileZilla 客户端将`server_info.txt` 上传到日志服务器然后给出了一连串FileZilla客户端的操作。问题在于这些操作在Windows系统中可行,Alibaba Cloud Linux 3根本没有图形化界面。OS Copilot在相对复杂的问题下表现不佳,但优化prompt表达能弥补部分缺陷。

该问题相对合理的方法是将通过FTP上传文件这一操作也写入脚本中。

# 设置FTP凭证(在实际环境中,这些变量应该在环境中设置) FTP_SERVER="192.168.1.90" FTP_USER=${FTP_USER:-"your_ftp_username"} FTP_PASS=${FTP_PASS:-"your_ftp_password"}

这个示例使用lftp工具,配置了FTPS传输,并包含了错误处理机制:

# 检查FTP凭证是否设置 if [ -z "$FTP_USER" ] || [ -z "$FTP_PASS" ]; then echo "FTP用户名或密码未设置" >&2 exit 1 fi # 使用lftp进行安全的FTPS上传 lftp -e " set ftp:ssl-allow yes open $FTP_SERVER user $FTP_USER $FTP_PASS put $filename -o ftp.log bye " || { echo "日志文件上传失败" >&2 exit 1 } echo "日志文件上传成功"

 

场景二:配置NFS服务

Prompt:配置NFS服务

[Copilot]:

    要在Alibaba Cloud Linux 3 上配置 NFSNetwork File System)服务,你需要按照以下步骤操作:

 

1. 首先,你需要安装 `nfs-utils` 包,它包含了 NFS 服务器所需的组件。使用 yum 工具来完成这个任务:

   ```bash

   sudo yum install nfs-utils

   ```

 

2. 安装完成后,你需要编辑 NFS 的配置文件来指定哪些目录可以被共享。默认情况下,配置文件位于 `/etc/sysconfig/nfs` 。打开并编辑此文件:

   ```bash

   sudo vi /etc/sysconfig/nfs

   ```

   在 `[nfsv4]` `[nfsv4.1]` 段落下添加要共享的目录,比如:

   ```makefile

   # 共享目录路径及访问权限

   export_dir="/path/to/your/shared/directory"

   # 访问主机列表

   hosts_allow="*"

   ```

 

   保存并关闭文件。

 

3. 创建一个你要共享的目录(如果尚未创建),并设置适当的权限:

   ```bash

   sudo mkdir -p /path/to/your/shared/directory

   sudo chmod -R 777 /path/to/your/shared/directory

   ```

 

4. 开启并启用 NFS 服务:

   ```bash

   sudo systemctl start nfs-server

   sudo systemctl enable nfs-server

   ```

 

5. 如果你的网络防火墙是活跃的,可能需要开启 NFS 相关端口(通常是 TCP UDP 端口 2049)。可以使用 firewall-cmd 命令进行配置:

   ```bash

   sudo firewall-cmd --permanent --add-service=nfs

   sudo firewall-cmd --reload

   ```

 

6. 重启 NFS 服务以应用更改:

   ```bash

   sudo systemctl restart nfs-server

   ```

 

现在 NFS 服务已经配置好,其他系统可以通过网络访问你在第2步中指定的共享目录了。

 

注意:在实际生产环境中,强烈建议不要使用 `hosts_allow="*"` 这样宽松的访问控制,而是具体列出允许访问的IP地址或子网,以提高安全性。此外,确保为共享目录设置合适的权限,只允许必要的操作。

评价`nfs-utils` 包是Alibaba Cloud Linux 3 上默认安装的包,并且通过检索文件发现nfs配置文件并不位于 `/etc/sysconfig/nfs`,而在/etc/nfs.conf

image.png

场景三:小学数学

image.png

image.png

这是一个部分人类和ChatGPT4o都回答错误的小学数学题,我们看看OS Copilot表现如何。

image.png

Prompt13.11大于13.8评价:OS Copilot赢了,它用及其细致的分析告诉了我们13.11并没有大于13.8

总体来说

总体来说,OS Copilot的命令行模式非常适合小白学习Linux使用,但是还不够成熟,在复杂情景下存在一定出错率,有很大进步空间。但是在部分基本常识方面秒杀部分人类和ChatGPT4o,很让我惊喜。目前OS Copilot只能用在Alibaba Cloud Linux 3有点遗憾,希望未来能够支持更多的操作系统、增加跨会话的联动功能。此外,OS Copilot作为阿里云生态的产品完全可以与安骑士和云平台的运维监控等功能打通提供更多数据能力。

目录
相关文章
|
4天前
|
自然语言处理 运维 前端开发
OS Copilot-操作系统智能助手-新手小白入门必选~
作为一名安卓开发工程师,我日常专注于前端和移动端开发。然而,在项目推进中偶尔需要部署服务端,这对不熟悉Linux的我来说颇具挑战。每次用命令行工具操作时,常需频繁查阅命令及参数,效率低下。 幸运的是,我发现了阿里云推出的OS Copilot智能助手。它通过自然语言问答功能,让命令行操作变得轻松流畅,帮助我快速定位并解决问题,显著提升了工作效率。安装简单,配置便捷,支持单命令模式和命令行模式,极大简化了Linux操作,成为我得力的开发利器。 总结而言,OS Copilot让我这个Linux小白也能高效处理服务端任务,操作体验焕然一新,是不可多得的智能助手。
|
5天前
|
弹性计算 运维 自然语言处理
操作系统智能助手OS Copilot新功能
作为一名运维工程师,我体验了OS Copilot的-t/-f/管道功能。通过安装组件并运行`co`命令,顺利测试了系统健康度评估、复杂任务处理和配置文件解析等功能。-t参数可快速进入agent模式,-f参数能高效执行复杂任务,管道功能则帮助理解系统配置。建议增加平台支持、明确提示、更多自定义选项及优化自然语言处理能力。OS Copilot极大提升了Linux系统的使用效率,未来有望成为更多用户的得力助手。
|
4天前
|
Linux Shell 开发者
OS Copilot初体验
作为一名个人开发者,我主要从事云资源的运维和管理。最近体验了OS Copilot的-t/-f/管道功能,其中-f功能显著提升了编写bash脚本的效率,例如快速查找深圳罗湖区的行政编码。管道功能则帮助我更好地理解Linux相关知识,如内核参数。安装时遇到环境变量配置提示问题,但不影响使用。建议优化结果显示效果,以提高终端阅读体验。
|
2天前
|
弹性计算 运维 数据安全/隐私保护
OS Copilot测评
作为一名个人开发者,我在ECS实例中部署个人服务时顺利使用了OS Copilot的-t/-f/管道功能。该工具对非资深运维人员非常友好,极大提升了命令行操作效率,减少了查阅资料的时间。但在安装和使用过程中遇到了一些问题,如权限配置、-t参数执行多余操作、-f参数重复确认等,建议优化用户体验并完善文档说明。
|
3天前
|
人工智能 运维 监控
操作系统智能助手OS Copilot新功能测评
本文介绍了操作系统智能助手OS Copilot的新功能测评。作为一名运维工程师,作者分享了安装过程中遇到的小问题及解决方法,并详细描述了使用体验。OS Copilot在回答速度、命令执行和任务处理方面表现一般,但提供了便捷的自动化操作,适合新手学习。作者指出其优点包括深度定制化、简化重复工作和对新手友好;不足之处在于回答不够流畅、汉化程度低且智能化水平有待提高。整体评分6分,未来有提升空间。
|
3天前
|
运维 弹性计算 Ubuntu
操作系统智能助手OS Copilot体验测评
作为一名高校云资源运维管理人员,我在使用OS Copilot时遇到了一些问题并找到解决办法。主要问题包括:1. **Access Key错误**:需为RAM账号授权;2. **-t参数部分结果缺失**:某些命令执行不成功会自动替换;3. **-t参数有时无效**:如测试网络连接时无差异;4. **-f参数方便二次调用**:可将任务保存至文件并自动安装依赖工具包;5. **管道操作权限问题**:可能需要额外权限。建议简化授权流程,减少Access Key和Secret的复杂性。
42 13
操作系统智能助手OS Copilot体验测评
|
3天前
|
安全 开发者
阿里OS Copilot新功能测评
作为一名个人开发者,我测试了OS Copilot的-t/-f/管道功能,尽管任务执行失败,但整体体验不错。安装过程简单,智能体操作便捷但存在安全风险。参数帮助详细却冗长,建议简化并增加总结和示例。对于危险操作,阿里云的安全提示值得肯定,但仍需丰富文案和提供用户教育内容。期待未来改进与突破!
|
4天前
|
弹性计算 运维 数据可视化
OS Copilot安装与多项功能测评报告
OS Copilot安装与多项功能测评报告
50 15
|
4天前
|
人工智能 运维 Java
阿里云OS Copilot使用心得
作为一名后端开发工程师,我最近尝试了阿里云的Linux智能助手OS Copilot。安装过程简单,但需确保服务器内存充足(至少600M空闲)。使用RAM用户设置ACCESS_KEY时遇到问题,最终用主账号KEY解决。单命令模式体验良好,能快速生成Java服务启动脚本等。Copilot在Linux系统管理、网络配置和Shell脚本编写方面表现出色,极大提升了工作效率。虽然担心AI对运维工作的影响,但目前看来更多是助力而非替代。
38 6
|
11天前
|
存储 弹性计算 运维
云端问道 7 期实践教学-使用操作系统智能助手 OS Copilot 轻松运维与编程
使用操作系统智能助手 OS Copilot 轻松运维与编程
37 14