1个稳定版本
1.0.0 | 2022年1月14日 |
---|
#434 in 操作系统
12KB
226 行
RustMetOS
要启动它,请使用rustup安装标准Rust编译器,然后在以下部分中运行以下命令以构建某些组件。
构建
标准分发存档
您还需要安装Python以运行构建脚本。Python 3.7应该是最低要求
Unix
cd {Root of the project}
cd rustmetos_std
python3 build.py
cp target/archives/standard.zip ../standard_dist.zip
Windows
cd {Root of the project}
cd rustmetos_std
py -3 build.py
copy target\archives\standard.zip ..\standard_dist.zip
Rustmetos二进制文件
Unix / Windows
cd {Root of the project}
cd rustmetos
cargo build --release
上述操作应在项目的根目录下的rustmetos/target/release/目录中创建一个rustmetos
或rustmetos.exe
文件。
只需运行生成的可执行文件,并在提示标准分发存档时,提供之前使用命令构建的存档的绝对路径。在执行上述步骤后,存档应位于项目的根目录中。
指南
管理此系统的简单指南。让我们从安装和构建完成后开始。现在我们处于Rustmetos Shell
,正如加载init配置后所述。
让我们研究标准安装的目录结构。标准安装附带了一些在根目录下的目录,其中一个是重要的/bin/
和/conf/
。第一个包含用于管理系统的二进制文件,后者包含基本配置。其中一个是init.conf
。默认情况下,它包含以下内容
[exec]
name=sh
在上面的配置中,它定义了一个名为exec
的部分,该部分定义了在程序开始时运行的可执行文件。默认情况下,它是内部硬编码为internal:core_shell
,以便用户至少有某种方式在没有安装的情况下与系统交互。sh
是它的扩展,具有多个其他功能。
您可以始终删除配置,或者您可以在sh
中输入boot set internal:core_shell
,这将修改此配置以在启动时启动核心shell。
在核心壳中,可以输入 help
来列出所有命令。核心壳中的命令是具体的,预计不会在功能上得到改进,但 sh
就不同了。它预计会随着时间的推移而改进,并具有多个功能。在核心壳中你可以做一件非常重要的事情,那就是 reset
。一旦输入,主目录就会被销毁,下一次启动时才能重新创建。系统失去了所有记忆,就像新的一样。
在本指南下方,你可以找到标准分布中提供的命令列表,并按创建顺序排列。
标准命令
sh
简称为壳。直接调用它,它将带你到一个交互式提示符,可以用来执行在核心壳中可以执行的各种更强大的任务。
在核心壳中调用它
exec sh
boot
boot 命令为 init.conf
的 exec
部分提供了一个简单的配置修改实用工具。目前它允许执行一个命令,即 set
启动可执行文件。
你可能想用它来在核心壳和 sh
或任何其他自定义可执行文件(如 init 系统之间切换)。
从 sh
切换到核心壳
boot set internal:core_shell
从核心壳切换到 sh
exec boot set sh
read
从文件中读取并打印到控制台。它更多的是 cat {file}
的一个副本,但比 cat
功能要弱得多。你可以用它来将任何通常为文本格式的文件读取到标准输出。
在 sh
中读取 init.conf
home
read conf/init.conf
unzip
将 zip 文件解压缩到提供的目录中。例如,给定一个名为 example.zip
的文件,你可以使用它将内容提取到文件夹中。
在 sh
中将 example.zip
解压缩到名为 my_example
的文件夹中
unzip example.zip my_example
贡献
贡献是任何开源项目的必要动力和核心。这个项目最初只是为了教育,因为我需要某种目的来学习 Rust。在开发过程中,我遇到了多种情况,只是为了帮助我更好地学习和理解 Rust。因此,这个项目对我来说是学习 Rust 的动力,但任何贡献都受欢迎,因为我有我的缺点,我很乐意了解它们。
最好的贡献方式是改进现有的软件或改进这个单页文档。次要的帮助方式是向标准分布引入更多的可执行文件。
依赖关系
~2–11MB
~96K SLoC