mirror of
https://github.com/LCTT/TranslateProject.git
synced 2026-09-04 04:32:49 +08:00
Merge branch 'master' of https://github.com/PeterPan0106/TranslateProject
This commit is contained in:
@@ -1,153 +0,0 @@
|
||||
[#]: subject: "How I recovered my Linux system using a Live USB device"
|
||||
[#]: via: "https://opensource.com/article/22/9/recover-linux-system-live-usb"
|
||||
[#]: author: "David Both https://opensource.com/users/dboth"
|
||||
[#]: collector: "lkxed"
|
||||
[#]: translator: "geekpi"
|
||||
[#]: reviewer: " "
|
||||
[#]: publisher: " "
|
||||
[#]: url: " "
|
||||
|
||||
我如何使用 Live USB 设备恢复我的 Linux 系统
|
||||
======
|
||||
Fedora Live USB 发行版为引导和进入恢复模式提供了有效的解决方案。
|
||||
|
||||
![USB 驱动器][1]
|
||||
|
||||
图片来源:[Markus Winkler][2] 发布于 [Unsplash][3]
|
||||
|
||||
我的家庭实验室里有十几台物理计算机以及更多的虚拟机。我使用这些系统中的大多数进行测试和实验。我经常写关于使用自动化来简化系统管理任务的文章。我还在多个地方写过,我从自己的错误中学到的东西比几乎任何其他方式都多。
|
||||
|
||||
在过去的几周里,我学到了很多东西。
|
||||
|
||||
我给自己制造了一个大问题。作为系统管理员多年,写了数百篇关于 Linux 的文章和五本书,我应该知道得更清楚。话又说回来,我们都会犯错,这是一个重要的教训:你永远不会因为有经验而不犯错。
|
||||
|
||||
我不打算讨论我的错误的细节。告诉你这是一个错误就足够了,在我做之前我应该多考虑一下我在做什么。此外,细节并不是重点。经验不能让你免于犯下的每一个错误,但它可以帮助你恢复。这就是本文要讨论的内容:使用 Live USB 发行版启动并进入恢复模式。
|
||||
|
||||
### 问题
|
||||
|
||||
首先,我创建了问题,这本质上是 `/etc/default/grub` 文件的错误配置。接下来,我使用 Ansible 将错误配置的文件分发到我所有的物理计算机并运行 `grub2-mkconfig`。全部 12 个。这真的,真的很快。
|
||||
|
||||
除了两台之外,所有的都无法启动。它们在 Linux 启动的早期阶段崩溃,出现各种无法定位 `/root` 文件系统的错误。
|
||||
|
||||
我可以使用 root 密码进入“维护”模式,但是如果没有挂载 `/root`,即使是最简单的工具也无法访问。直接引导到恢复内核也不起作用。系统真的被破坏了。
|
||||
|
||||
### Fedora 恢复模式
|
||||
|
||||
解决此问题的唯一方法是找到进入恢复模式的方法。当一切都失败时,Fedora 提供了一个非常酷的工具:用于安装 Fedora 新实例的同一个 Live USB 驱动器。
|
||||
|
||||
将 BIOS 设置为从 Live USB 设备启动后,我启动到 Fedora 36 Xfce live 用户桌面。我在桌面上打开了两个相邻的终端会话,并在两者中都切换到了 root 权限。
|
||||
|
||||
我在一个中运行了 `lsblk` 以供参考。我使用结果来识别 `/` 根分区以及 `boot` 和 `efi` 分区。我使用了我的一台虚拟机,如下所示。在这种情况下没有 `efi` 分区,因为此 VM 不使用 UEFI。
|
||||
|
||||
```
|
||||
# lsblk
|
||||
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
|
||||
loop0 7:0 0 1.5G 1 loop
|
||||
loop1 7:1 0 6G 1 loop
|
||||
├─live-rw 253:0 0 6G 0 dm /
|
||||
└─live-base 253:1 0 6G 1 dm
|
||||
loop2 7:2 0 32G 0 loop
|
||||
└─live-rw 253:0 0 6G 0 dm /
|
||||
sda 8:0 0 120G 0 disk
|
||||
├─sda1 8:1 0 1G 0 part
|
||||
└─sda2 8:2 0 119G 0 part
|
||||
├─vg01-swap 253:2 0 4G 0 lvm
|
||||
├─vg01-tmp 253:3 0 10G 0 lvm
|
||||
├─vg01-var 253:4 0 20G 0 lvm
|
||||
├─vg01-home 253:5 0 5G 0 lvm
|
||||
├─vg01-usr 253:6 0 20G 0 lvm
|
||||
└─vg01-root 253:7 0 5G 0 lvm
|
||||
sr0 11:0 1 1.6G 0 rom /run/initramfs/live
|
||||
zram0 252:0 0 8G 0 disk [SWAP]
|
||||
```
|
||||
|
||||
`/dev/sda1` 分区很容易识别为 `/boot`,根分区也很明显。
|
||||
|
||||
在另一个终端会话中,我执行了一系列步骤来恢复我的系统。特定的卷组名称和设备分区(例如 `/dev/sda1`)因系统而异。此处显示的命令特定于我的情况。
|
||||
|
||||
目标是使用 Live USB 引导并完成启动,然后仅在镜像目录中挂载必要的文件系统,并运行 `chroot` 命令在 chroot 镜像目录中运行 Linux。这种方法绕过损坏的 GRUB(或其他)配置文件。但是,它提供了一个完整的运行系统,其中安装了所有原始文件系统以进行恢复,既是所需工具的来源,也是要进行更改的目标。
|
||||
|
||||
以下是步骤和相关命令:
|
||||
|
||||
1. 创建目录 `/mnt/sysimage` 以提供 `chroot` 目录的位置。
|
||||
|
||||
2. 将根分区挂载到 `/mnt/sysimage`:
|
||||
|
||||
```
|
||||
# mount /dev/mapper/vg01-root /mnt/sysimage
|
||||
```
|
||||
|
||||
3. 将 `/mnt/sysimage` 设为你的工作目录:
|
||||
|
||||
```
|
||||
# cd /mnt/sysimage
|
||||
```
|
||||
|
||||
4. 挂载 `/boot` 和 `/boot/efi` 文件系统。
|
||||
|
||||
5. 挂载其他主要文件系统。此步骤不需要像 `/home` 和 `/tmp` 这样的文件系统:
|
||||
|
||||
```
|
||||
# mount /dev/mapper/vg01-usr usr
|
||||
|
||||
# mount /dev/mapper/vg01-var var
|
||||
```
|
||||
|
||||
6. 挂载重要但已挂载的文件系统,它们必须在已经 chroot 的系统和原始 Live 系统之间共享,而后者仍然在外面运行:
|
||||
|
||||
```
|
||||
# mount --bind /sys sys
|
||||
|
||||
# mount --bind /proc proc
|
||||
```
|
||||
|
||||
7. 一定要最后操作 `/dev` 目录,否则其他文件系统不会挂载:
|
||||
|
||||
```
|
||||
# mount --bind /dev dev
|
||||
```
|
||||
|
||||
8. chroot 系统镜像:
|
||||
|
||||
```
|
||||
# chroot /mnt/sysimage
|
||||
```
|
||||
|
||||
系统现在已经准备好了,无论你需要做什么,都可以把它恢复到一个工作状态。然而,有一次我能够在这种状态下运行我的服务器数天,直到我能够研究和测试真正的修复方法。我并不推荐这样做,但在紧急情况下,当有任务需要启动和运行时,这可能是一个选择。
|
||||
|
||||
### 解决方案
|
||||
|
||||
当我让每个系统进入恢复模式,修复就很容易了。因为我的系统现在就像成功启动一样工作,我只需对 `/etc/default/grub` 和 `/etc/fstab` 进行必要的更改并运行 `grub2-mkconfig > boot/grub2/grub.cfg ` 命令。我使用 `exit` 命令退出 chroot,然后重启主机。
|
||||
|
||||
当然,我无法自动从我的意外事故中恢复过来。我必须在每台主机上手动执行整个过程,这是使用自动化快速和容易地传播我自己的错误的一点报应。
|
||||
|
||||
### 得到教训
|
||||
|
||||
尽管它们很有用,我曾经讨厌在我的一些系统管理员工作中举行的“经验教训”会议,但看来我确实需要提醒自己一些事情。因此,这里是我从这场自作自受的惨败中获得的“教训”。
|
||||
|
||||
首先,无法引导的十个系统使用了不同的卷组命名方案,而我的新 GRUB 配置没有考虑到这一点。我只是忽略了它们可能不同的事实。
|
||||
|
||||
* 彻底考虑清楚。
|
||||
* 并非所有系统都相同。
|
||||
* 测试一切。
|
||||
* 验证一切。
|
||||
* 永远不要做假设。
|
||||
|
||||
现在一切正常。希望我也聪明一点。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://opensource.com/article/22/9/recover-linux-system-live-usb
|
||||
|
||||
作者:[David Both][a]
|
||||
选题:[lkxed][b]
|
||||
译者:[geekpi](https://github.com/geekpi)
|
||||
校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://opensource.com/users/dboth
|
||||
[b]: https://github.com/lkxed
|
||||
[1]: https://opensource.com/sites/default/files/lead-images/markus-winkler-usb-unsplash.jpg
|
||||
[2]: https://unsplash.com/@markuswinkler?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText
|
||||
[3]: https://unsplash.com/s/photos/usb?utm_source=unsplash&utm_medium=referral&utm_content=creditCopyText
|
||||
@@ -0,0 +1,157 @@
|
||||
[#]: subject: "5 Free and Open-Source Figma Alternatives"
|
||||
[#]: via: "https://itsfoss.com/figma-alternatives/"
|
||||
[#]: author: "Ankush Das https://itsfoss.com/author/ankush/"
|
||||
[#]: collector: "lkxed"
|
||||
[#]: translator: "geekpi"
|
||||
[#]: reviewer: " "
|
||||
[#]: publisher: " "
|
||||
[#]: url: " "
|
||||
|
||||
5 个免费和开源的 Figma 替代品
|
||||
======
|
||||
Figma 是一个流行的界面设计工具。你可以免费开始使用,也可以选择高级订阅计划以供进阶使用。
|
||||
|
||||
这是一个令人印象深刻的平台,许多专业人士都依赖它。然而,在 2021 年,[Figma][1] 通过施加某些限制改变了其免费计划。虽然这使一些用户寻找替代品,但对许多人来说仍然是可控的。
|
||||
|
||||
不幸的是,在 2022 年,**Adobe 宣布以 200 亿美元收购 Figma** 让许多用户望而却步。因此,每个人都开始寻找免费且可能开源的替代品。
|
||||
|
||||
为了帮助你,我们决定编一份 Figma 的免费和开源替代品清单,你可以试试。
|
||||
|
||||
**注意:**提到的替代品不一定是 Figma 的完全替代品。我们建议你尝试一下,看看它们是否符合你的要求。
|
||||
|
||||
### 1. Penpot
|
||||
|
||||
![A Video from YouTube][2]
|
||||
|
||||
**主要亮点:**
|
||||
|
||||
* 自托管选择。
|
||||
* 使用 SVG 作为原生格式。
|
||||
* 基于网络。
|
||||
* 跨平台。
|
||||
|
||||
Penpot 很快被公认为可靠的免费和开源 Figma 替代品。
|
||||
|
||||
即使它处于测试阶段,在写这篇文章时,用户似乎喜欢它提供的东西。我不是一个设计专家,但这个工具的用户体验似乎令人印象深刻。
|
||||
|
||||
Penpot 的独特之处在于它使用 SVG 作为其原生格式,这很罕见,但也为设计师提供了巨大的好处。
|
||||
|
||||
![penpot screenshot][3]
|
||||
|
||||
你可以期待 Figma 的基本功能,因为开发人员提到该工具的原始灵感是 Figma,他们旨在提供熟悉的用户体验,而不给你的设计冒险增加障碍。
|
||||
|
||||
前往其官方网站或 GitHub 页面探索更多信息。
|
||||
|
||||
[Penpot][4]
|
||||
|
||||
### 2. Quant UX
|
||||
|
||||
![A Video from YouTube][5]
|
||||
|
||||
**主要亮点:**
|
||||
|
||||
* 原型设计和测试。
|
||||
* 无需注册即可获得有限访问权限。
|
||||
* 定期添加新的测试版功能。
|
||||
* 自托管选择。
|
||||
|
||||
Quant UX 是一种原型设计工具,你可以在其中测试你的设计并获得有关它们的见解。
|
||||
|
||||
你可以为 Android 手机、iPhone 或台式机创建自定义原型或选择任何可用的屏幕尺寸。
|
||||
|
||||
这也是你会发现不断添加功能的地方,其中一些处于测试阶段。它更专注于通过让你导入设计或创建简单的模型来测试事物。
|
||||
|
||||
它允许你无需注册即可访问一些内容,但要使所有功能正常工作,你需要注册一个帐户。在其 [GitHub 页面][6]上探索更多信息。
|
||||
|
||||
[Quant UX][7]
|
||||
|
||||
### 3. Plasmic
|
||||
|
||||
![A Video from YouTube][8]
|
||||
|
||||
**主要亮点:**
|
||||
|
||||
* 免费和开源。
|
||||
* 拖放功能。
|
||||
* 它支持从 Figma 导入设计。
|
||||
|
||||
Plasmic 是用于构建网页的卓越设计工具。如果你使用 Figma 进行网页设计,这可能是一个可供选择的工具。
|
||||
|
||||
当你选择高级计划时,它免费提供大部分功能,并为团队解锁更多扩展版本历史记录、分析和其他特殊功能。它不仅限于设计网页,还支持 A/B 测试来实验和改进网站的用户交互。
|
||||
|
||||
无论你使用的是[开源 CMS][9] 还是 Jamstack 站点,Plasmic 几乎都支持集成。前往其官方网站或 [GitHub 页面][10]了解更多信息。
|
||||
|
||||
[Plasmic][11]
|
||||
|
||||
### 4. Wireflow
|
||||
|
||||
![wireflow userflow][12]
|
||||
|
||||
**主要亮点:**
|
||||
|
||||
* 免费使用。
|
||||
* 没有付费选项。
|
||||
* 它没有被积极维护。
|
||||
|
||||
Wireflow 作为用户流原型工具是一个有趣的产品,它完全免费使用,没有付费选项。
|
||||
|
||||
此外,你无需注册帐户。从其官方网站开始,与他人合作规划你的项目并进行头脑风暴。
|
||||
|
||||
不幸的是,它自 2021 年以来没有看到任何最近的开发活动。但是,它仍然活跃并且仍然是一个免费和开源的解决方案。你可以查看其 [GitHub 页面][13]了解更多信息。
|
||||
|
||||
[Wireflow][14]
|
||||
|
||||
### 5. Akira UX
|
||||
|
||||
![akira ux 2020][15]
|
||||
|
||||
**主要亮点:**
|
||||
|
||||
* 早期开发中的应用。
|
||||
* 专注于成为原生 Linux UX 应用。
|
||||
|
||||
[Akira UX][16] 是一个令人兴奋的项目,旨在带来一个原生 Linux 设计程序,该程序可以与一些基于 Web 的解决方案一样工作。
|
||||
|
||||
Akira 的项目负责人加入了 Mozilla Thunderbird 担任产品设计经理。因此,截至目前,该项目还没有被积极地开发。但是,作为一个免费的开源项目,任何人都可以负责它并致力于相同的愿景。
|
||||
|
||||
它目前是你可以测试的早期开发版本。你可以在 Flathub 的 beta 渠道中找到它,并按照其 [GitHub 页面说明][17]进行安装。
|
||||
|
||||
[Akira UX][18]
|
||||
|
||||
### 总结
|
||||
|
||||
用免费和开源的解决方案取代 Figma 并不容易。但是,如果你不关心 Figma 的所有功能,我们的一些建议应该可以帮助你完成工作。
|
||||
|
||||
*你知道有什么其他免费和开源的 Figma 替代品吗?请在下面的评论中告诉我你的想法*。
|
||||
|
||||
--------------------------------------------------------------------------------
|
||||
|
||||
via: https://itsfoss.com/figma-alternatives/
|
||||
|
||||
作者:[Ankush Das][a]
|
||||
选题:[lkxed][b]
|
||||
译者:[geekpi](https://github.com/geekpi)
|
||||
校对:[校对者ID](https://github.com/校对者ID)
|
||||
|
||||
本文由 [LCTT](https://github.com/LCTT/TranslateProject) 原创编译,[Linux中国](https://linux.cn/) 荣誉推出
|
||||
|
||||
[a]: https://itsfoss.com/author/ankush/
|
||||
[b]: https://github.com/lkxed
|
||||
[1]: https://www.figma.com/
|
||||
[2]: https://youtu.be/JozESuPcVpg
|
||||
[3]: https://itsfoss.com/wp-content/uploads/2022/09/penpot-screenshot.jpg
|
||||
[4]: https://penpot.app/
|
||||
[5]: https://youtu.be/eGDTAJlB-uI
|
||||
[6]: https://github.com/KlausSchaefers/quant-ux
|
||||
[7]: https://quant-ux.com/
|
||||
[8]: https://youtu.be/sXXpe5jjnRs
|
||||
[9]: https://itsfoss.com/open-source-cms/
|
||||
[10]: https://github.com/plasmicapp/plasmic
|
||||
[11]: https://www.plasmic.app/
|
||||
[12]: https://itsfoss.com/wp-content/uploads/2022/09/wireflow-userflow-800x570.jpg
|
||||
[13]: https://github.com/vanila-io/wireflow
|
||||
[14]: https://wireflow.co/
|
||||
[15]: https://itsfoss.com/wp-content/uploads/2022/09/akira-ux-2020.png
|
||||
[16]: https://itsfoss.com/akira-design-tool/
|
||||
[17]: https://github.com/akiraux/Akira
|
||||
[18]: https://github.com/akiraux/Akira
|
||||
Reference in New Issue
Block a user