写给真的想折腾的人看的Linux入门指南(慢更)
- 18楼
winget实际上也挺好用,但是部分例如update、uninstall这类命令还在试验阶段
- 29楼
大佬鉴作
- 已编辑
- 31楼
用Windows和Android扩充你的Linux生态
1.Windows
wine
是一个可以在Linux下运行Windows软件的兼容层。
装好wine
后直接wine Application.exe
就可以运行Windows应用程序了。在wine
内安装的程序会自动生成启动器图标。(即~/.local/share/applications/wine/
下的.desktop
文件)
但是,原版wine
对国内流氓软件兼容不佳,深度团队修改了一个deepin-wine
来兼容更多国产应用。
目前,deepin-wine
分为基于wine 2.4
的deepin-wine
和基于wine 5.0
的deepin-wine5
。使用方法与原版wine
相同,把wine
替换为deepin-wine
即可。深度团队打包了微信、QQ等常用软件,可以在安装deepin-wine
对应版本后安装使用。
wine
的命令行使用方式可能让小白们望而生畏,也不好配置,但是有两个工具提供了更为有好的基于原版wine
的图形化使用方式和一些tweaks:PlayOnLinux
和winetricks
。
在PlayOnLinux
中,你可以安装受验证的可用的软件并快速管理。整体使用方式很简单,就不讲了。
在winetricks
中,你可以对wine
容器做微调,并安装.NET等微软系统核心组件和运行库,还有安装软件。
但是,这两种方式多少还要做一点配置。有一家商业公司开发了一个付费闭源软件(有开源信仰的请跳过此段):CrossOver
。对于小白来说,CrossOver
是一个为你提供一站式解决方案的wine
工具。你可以在友好的图形化界面中安装软件,并且CrossOver
会自动帮你装好依赖。
最后说一下,CrossOver
是闭源软件,需要收费,在国内由马克丁代理,所以请买国外版(在官网把语言调成英语就可以下载和购买国外版了)。
2.Android
你有三个选择:XDroid
,Anbox
和Genymotion
。
XDroid
先来看一段官网介绍:
xDroid采取独有的非虚拟化技术,避免了虚拟机、模拟器以及切换系统内核等技术带来的性能损耗、稳定性下降等问题,支持安卓应用以原生程序的形式安装、运行,其性能和流畅性可与电脑应用程序相媲美。
使用很简单,兼容性一般,我就不说了,如果你要初次尝试推荐你用虚拟机,因为XDroid
很难卸载
Anbox
官网:这玩意是个容器,把安卓应用扔进容器里运行可以让它像其他应用一样与系统融合。
安装:官网有,自己去看吧,Arch用户可以用AUR上的包安装。
使用及兼容性:兼容性较差,使用麻烦(adb install
安装应用)
Genymotion
就是虚拟机,不说了
第四种选择:Deepin/UOS
缺点说在前边,就是需要你换发行版并忍受Debian系巨慢的更新。
Deepin商店里已经有很多安卓应用了,直接下载就行,而且都能用。
总之,好水
- 已编辑
- 32楼
Init 与 Service (不讲底层,只讲交互)
Init 是开机后第一个被内核启动的进程,之后的进程全部由 init 负责启动。Init 还负责后台服务的管理。像 Upstart(已停止维护)和 systemd 这样的 init 还提供基于事件的触发方式,可以在需要时自动启动服务。
Service 服务可以当成是后台运行的程序(和 Windows 上的服务有点像)
Init 有很多,最常见的是 systemd。systemd 被大部分发行版采用,所以,以下内容全部基于 systemd。
万 恶 之 源 systemd
在 systemd 中,我们常用的服务叫做 service,基于事件的“服务自动启动器”叫做套接字 socket。
systemd 提供了很多实用的工具,这里我们讲两个:
systemctl: 服务管理
系统层级
以下内容需要 Root 权限
如果你要操作的是服务 (.service) 那么可以不写 .service, 而如果你操作的是套接字 (.socket) 或其他类型,则需要写上完整名称。
systemctl enable xxx.service
启用服务
systemctl disable xxx.service
禁用服务
systemctl start xxx.service
启动服务
systemctl stop xxx.service
停止服务
systemctl mask xxx.service
屏蔽服务(这样各种应用程序就无法启动这个服务了)
systemctl enable --now xxx.service
等同于 systemctl enable xxx.service; systemctl start xxx.service
systemctl disable --now xxx.service
等同于 systemctl disable xxx.service; systemctl stop xxx.service
用户层级
在上面的命令的 systemctl
后面 加上 --user
。
journalctl: 系统日志管理
一般我们在服务启动失败时会排查系统日志。这时就会用到 journalctl 。
用法:
一般查看日志时使用 journalctl -e
。-e
参数告诉 journalctl 要“反着看”,从结尾开始放日志。
如果服务启动失败,最好使用 journalctl -xe
。-x
参数告诉 journalctl 要输出与日志关联的 systemd 单元,能够让我们看出是哪个服务产生的日志。