检测到论坛CSS可能没有正确加载,如出现排版混乱请刷新重试。

We detected that the CSS might not be loaded correctly. If the website displays abnormally, Please refresh and try again.

  • *nix
  • 写给真的想折腾的人看的Linux入门指南(慢更)

panjk0518 不算特别困难吧.....
在我看来, ArchLinux的安装无非是过程繁琐一些, 有很多步骤需要自己做.... 在安装图形界面之前其实真的没有什么困难的地方....


gyigi 你还要安装图形界面, 设置相应的服务

    gyigi 确实

    綾瀬桃桃 BIOS+GPT请在硬盘开头分一个1M的分区,不格式化,类型是BIOS Boot(fdisk)/ef02(gdisk)/bios_grub(parted),分区GUID为21686148-6449-6E6F-744E-656564454649。(来自ArchWiki)

    さらば限界少女 我之前安装Arch也觉得不是很难,但刚开始用Deepin那会觉得Arch就是大佬专属的发行版,安装超级费劲。

    我装Arch的时候是卡在NetworkManager那里了,NetworkManager装好了,dhcpcd也装了,NetworkManager.service也启动了,然而就是连不上网。(刚去查ArchWiki发现可能是systemd-resolved没启动,还有我应该也没装图形化前端,不过终端下也连不上网,应该就是系统服务的问题)

      来更新啦~

      包管理器的使用

      1.dpkg

      dpkg是Debian系Linux的包管理器。一般我们在使用的时候会使用apt工具来安装软件。apt就是dpkg的一个前端。
      apt常用的用法有这些:

      • apt install安装软件包(以root身份运行)
      • apt search搜索软件包
      • apt removeapt purge卸载软件包(以root身份运行)。两者的区别是apt remove不会清除软件的配置文件(按照Windows下的说法就是有卸载残留),而apt purge会清除软件的配置文件。
      • apt autoremove清除作为依赖安装但现在已经没有任何程序依赖的包(举个例子:安装a时安装了b,然后你立即卸载了a,这时使用apt autoremove就可以删除b)(以root身份运行)
      • apt update刷新软件源缓存(以root身份运行)
      • apt upgrade升级所有软件包(以root身份运行)

      安装本地软件:apt install ./文件(以root身份运行)
      一个提示:Debian系发行版的跨代兼容性不是很好,请下载对应你的系统版本的软件

      2.rpm

      rpm有两个前端:dnfzypper。(yum已经过时,此处不再介绍)

      2.1 dnf

      dnf是RedHat系Linux发行版所使用的rpm前端。
      dnf的常用用法与apt差不多,如下:

      • dnf install安装软件包(以root身份运行)
      • dnf search搜索软件包(以root身份运行)
      • dnf remove卸载软件包(以root身份运行)
      • dnf update升级所有软件包(以root身份运行)

      dnf会自动刷新软件源缓存。

      安装本地软件包:dnf install ./文件(以root身份运行)

      2.2 zypper

      zypper是SUSE系发行版使用的rpm前端。
      常用用法和dnf一样,不过可以简写。
      zypper install==zypper in
      zypper search==zypper se
      zypper remove==zypper rm
      zypper update==zypper up

      zypper会自动刷新软件源缓存。
      安装本地软件的命令也可以简写,把上面的dnf换成zypper就行了。

      3.pacman

      pacman是Arch系Linux发行版使用的包管理器。
      主要用法如下(除搜索软件外皆须root身份运行,所有命令区分大小写):

      • pacman -S安装软件包
      • pacman -Sy刷新软件源缓存(pacman -Syy强制刷新)
      • pacman -Ss搜索软件
      • pacman -Su更新全部软件包
      • pacman -Syu刷新软件源缓存并更新全部软件包
      • pacman -U安装本地软件包
      • pacman -R清除软件包
      • pacman -Rs清除软件包并清除未被使用的依赖
      • pacman -Qtdq | pacman -Rs -apt autoremove相同(此命令还有另外一种写法:pacman -Rs $(pacman -Qtdq)

      这里仅介绍包管理器的基本用法,还有更多命令(如dnf provides等)的用法未介绍。如果感兴趣可使用man命令查看包管理器的使用手册或查阅相应发行版的Wiki。来更新啦~

      包管理器的使用

      1.dpkg

      dpkg是Debian系Linux的包管理器。一般我们在使用的时候会使用apt工具来安装软件。apt就是dpkg的一个前端。
      apt常用的用法有这些:

      • apt install安装软件包(以root身份运行)
      • apt search搜索软件包
      • apt removeapt purge卸载软件包(以root身份运行)。两者的区别是apt remove不会清除软件的配置文件(按照Windows下的说法就是有卸载残留),而apt purge会清除软件的配置文件。
      • apt autoremove清除作为依赖安装但现在已经没有任何程序依赖的包(举个例子:安装a时安装了b,然后你立即卸载了a,这时使用apt autoremove就可以删除b)(以root身份运行)
      • apt update刷新软件源缓存(以root身份运行)
      • apt upgrade升级所有软件包(以root身份运行)

      安装本地软件:apt install ./文件(以root身份运行)
      一个提示:Debian系发行版的跨代兼容性不是很好,请下载对应你的系统版本的软件

      2.rpm

      rpm有两个前端:dnfzypper。(yum已经过时,此处不再介绍)

      2.1 dnf

      dnf是RedHat系Linux发行版所使用的rpm前端。
      dnf的常用用法与apt差不多,如下:

      • dnf install安装软件包(以root身份运行)
      • dnf search搜索软件包(以root身份运行)
      • dnf remove卸载软件包(以root身份运行)
      • dnf update升级所有软件包(以root身份运行)

      dnf会自动刷新软件源缓存。

      安装本地软件包:dnf install ./文件(以root身份运行)

      2.2 zypper

      zypper是SUSE系发行版使用的rpm前端。
      常用用法和dnf一样,不过可以简写。
      zypper install==zypper in
      zypper search==zypper se
      zypper remove==zypper rm
      zypper update==zypper up

      zypper会自动刷新软件源缓存。
      安装本地软件的命令也可以简写,把上面的dnf换成zypper就行了。

      3.pacman

      pacman是Arch系Linux发行版使用的包管理器。
      主要用法如下(除搜索软件外皆须root身份运行,所有命令区分大小写):

      • pacman -S安装软件包
      • pacman -Sy刷新软件源缓存(pacman -Syy强制刷新)
      • pacman -Ss搜索软件
      • pacman -Su更新全部软件包
      • pacman -Syu刷新软件源缓存并更新全部软件包
      • pacman -U安装本地软件包
      • pacman -R清除软件包
      • pacman -Rs清除软件包并清除未被使用的依赖
      • pacman -Qtdq | pacman -Rs -apt autoremove相同(此命令还有另外一种写法:pacman -Rs $(pacman -Qtdq)

      这里仅介绍包管理器的基本用法,还有更多命令(如dnf provides等)的用法未介绍。如果感兴趣可使用man命令查看包管理器的使用手册或查阅相应发行版的Wiki。

        winget实际上也挺好用,但是部分例如update、uninstall这类命令还在试验阶段

          何木槿 winget我win11直接没有(

          这个图片他怎么出不来

          何木槿 我也不知道(
          不过原来win10可以,我一开始以为应用商店的那个东西没装,结果发现装了,我也就不管他了,因为没什么折腾思路

            gyigi 你用的是PowerShell?切换成wsl吧(虽然我没怎么用过WIndows Terminal

              [已注销] 是的

              [已注销] 额……我在深度论坛下见过一个案例,sudo rm -rf /*跑了一半后中止,把删除的内容从安装镜像补回来后还能开机,不过软件还在不在就是另一回事了。

              ha1 windows terminal里的ps(
              平时直接把它当cmd用(虽然本身就可以这么用)

              • ha1 回复了此帖

                gyigi 是(
                你在新建窗口的+旁边的下拉菜单看下有没有wsl(

                诶不对winget是win下的?草

                  ha1 我现在升了22449又有了((
                  麻了

                  panjk0518 当然,这意味着你可以随便sudo rm -rf /*,而不用像Windows一样提权了(这条命令会删除系统里的所有文件,不要运行!!!)。

                  Hello? Can someone help me? (大雾

                  12 天 后

                  用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.4deepin-wine和基于wine 5.0deepin-wine5。使用方法与原版wine相同,把wine替换为deepin-wine即可。深度团队打包了微信、QQ等常用软件,可以在安装deepin-wine对应版本后安装使用。

                  wine的命令行使用方式可能让小白们望而生畏,也不好配置,但是有两个工具提供了更为有好的基于原版wine的图形化使用方式和一些tweaks:PlayOnLinuxwinetricks
                  PlayOnLinux中,你可以安装受验证的可用的软件并快速管理。整体使用方式很简单,就不讲了。
                  winetricks中,你可以对wine容器做微调,并安装.NET等微软系统核心组件和运行库,还有安装软件。

                  但是,这两种方式多少还要做一点配置。有一家商业公司开发了一个付费闭源软件(有开源信仰的请跳过此段):CrossOver。对于小白来说,CrossOver是一个为你提供一站式解决方案的wine工具。你可以在友好的图形化界面中安装软件,并且CrossOver会自动帮你装好依赖。
                  最后说一下,CrossOver是闭源软件,需要收费,在国内由马克丁代理,所以请买国外版(在官网把语言调成英语就可以下载和购买国外版了)。

                  2.Android

                  你有三个选择:XDroidAnboxGenymotion

                  XDroid

                  先来看一段官网介绍:

                  xDroid采取独有的非虚拟化技术,避免了虚拟机、模拟器以及切换系统内核等技术带来的性能损耗、稳定性下降等问题,支持安卓应用以原生程序的形式安装、运行,其性能和流畅性可与电脑应用程序相媲美。

                  使用很简单,兼容性一般,我就不说了,如果你要初次尝试推荐你用虚拟机,因为XDroid很难卸载

                  Anbox

                  官网:这玩意是个容器,把安卓应用扔进容器里运行可以让它像其他应用一样与系统融合。
                  安装:官网有,自己去看吧,Arch用户可以用AUR上的包安装。
                  使用及兼容性:兼容性较差,使用麻烦(adb install安装应用)

                  Genymotion

                  就是虚拟机,不说了

                  第四种选择:Deepin/UOS

                  缺点说在前边,就是需要你换发行版并忍受Debian系巨慢的更新。
                  Deepin商店里已经有很多安卓应用了,直接下载就行,而且都能用。

                  总之,好水

                  1 年 后

                  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 单元,能够让我们看出是哪个服务产生的日志。

                  © 2025 wvbCommunity 管理团队

                  删封申诉 | 知乎专栏 | 状态监控 | 用户协议(EULA) | 隐私政策

                  本站文章除其作者特殊声明外,一律采用CC BY-NC-SA 4.0许可协议进行授权,进行转载或二次创作时务必以相同协议进行共享,严禁用于商业用途。