Linux中桌面环境和窗口管理器的区别

Linux中桌面环境和窗口管理器的区别

如果您是Linux用户,您一定听说过桌面环境这个术语。这是选择Linux发行版时的决定性因素之一。还有一些在初学者中相对不太为人所知的东西,那就是窗口管理器。在本文中,我们将理解它们,并了解它们之间的比较。

什么是桌面环境

桌面环境是一套应用程序和程序,使Linux发行版具有图形化可用性。它包含了不同的组件,如任务栏、开始菜单、小部件、文件管理器、屏幕锁定器、主题管理器、终端模拟器等等。

不同的桌面环境有不同的组件集,所有这些组件和程序都具有相似的外观和感觉,它们共同构建了桌面环境的独特外观。例如,KDE自带(Konsole终端模拟器和海豚文件管理器),而xfce自带(xfce终端模拟器和Thunar文件管理器)。不同的桌面环境是为了不同的目的而构建的,比如xfce是一个轻量级的桌面环境,因此带有轻量级的程序和实用程序,KDE被开发为高度可定制的,而肉桂是为了看起来现代并拥有良好的用户体验,因此有看起来现代的程序。

Linux中桌面环境和窗口管理器的区别

KDE桌面环境

Linux中桌面环境和窗口管理器的区别

肉桂桌面环境

桌面环境还自带窗口管理器。所以窗口管理器是桌面环境的一部分。现在,让我们来理解什么是窗口管理器。

什么是窗口管理器

窗口管理器是负责创建和放置窗口应用程序的软件。它控制不同的窗口如何在一个屏幕上堆叠在一起。它为每个应用程序窗口提供了一个标题栏和边框,用户可以通过它们来调整窗口的大小和位置。正如我们所看到的,它与桌面环境捆绑在一起。但是如果它是桌面环境的一部分,它怎么可能是桌面环境的替代品呢?问题是,你可以在没有桌面环境的情况下安装窗口管理器,但之后,你必须自己安装其他必要的组件,如文件管理器、终端模拟器、菜单栏等。如果您使用独立的窗口管理器,那么基本上您将构建自己独特的环境。如果你决定走这条路,你有很多选择。它们分为两部分。

  1. 平铺式窗口管理器: 他们在屏幕上把窗户贴在一起,就像贴在地板上或拼图上的瓷砖一样。创建的每个新窗口都有自己的屏幕矩形共享,并且不与其他窗口重叠。一些著名的平铺窗口管理器有i3、bspwm、dwm等。
  2. 叠加窗口管理器: 它们允许窗户重叠。它们是最常用的,并被所有主要的桌面环境使用。它们也被称为浮动窗口管理器。一些著名的堆叠管理器有Fluxbox、Openbox和KWin。

Linux中桌面环境和窗口管理器的区别

i3 WIndow manager

Linux中桌面环境和窗口管理器的区别

dwm窗口管理器

为什么要使用窗口管理器

使用独立的窗口管理器比使用Desktop环境有一些用例和优势,例如

  • Saving Resources: 使用窗口管理器比桌面环境使用更少的资源。即使像xfce这样的轻量级桌面环境也比独立窗口管理器使用更多的资源。
  • Customization 与桌面环境不同,窗口管理器不附带菜单栏、文件管理器等基本软件。因此,您可以为基本实用程序安装任何您喜欢的选项,例如文件管理器。在桌面环境中也可以这样做,但这里的不同之处在于,您可以选择完全不使用组件。例如,你可以决定完全不使用日历应用程序。这节省了空间,并且在安装所有必需组件的过程中,您不会自动安装所有您不需要的东西。这也使其最小化。
  • Faster workflow: 设置窗口管理器以及安装和配置所有必需的实用程序和组件需要时间。但是一旦完成,安装就会比传统的桌面环境更有效。此外,许多窗口管理器为用户提供了许多键盘快捷方式。学习它们可以节省很多时间。

因此,使用窗口管理器是非常酷、快速和高效的。但是您是否应该使用窗口管理器并投入时间来设置它并习惯使用它呢?不是每个人都适合。

使用桌面环境的优点

桌面环境的存在是有原因的,根据您的用例和优先级,您可以为自己选择一个。

  • 它们对用户很友好,
  • 需要更少的时间来设置,
  • 很容易定制,因为他们提供了在桌面环境本身调整设置的选项,
  • 有不同的选项和不同的发行版,准备安装。

你应该选择哪一个,为什么

如果你想快速开始,不想处理设置窗口管理器的麻烦,比如桌面环境的完整生态系统,或者只是一个初学者,坚持使用桌面环境可能是你正确的选择。另一方面,如果你使用桌面环境一段时间,你觉得你的桌面很臃肿,你渴望一些最小的和快速的东西,或者你有一个低端的PC,你想为你的系统节省一些资源,有一些开销,去愉快地使用窗口管理器,旅程是有益的和美丽的。

总结

在本文中,我们了解了桌面环境和窗口管理器,它们的优点和用例。Linux可以不使用这两种方式,只使用命令行界面,但是我们可以选择安装桌面环境或单独的窗口管理器,或者完全不安装,这将取决于用例和用户的偏好。如果您希望熟悉Linux,设置窗口管理器可能是一个很好的学习之旅。

赞(1)

评论 抢沙发

评论前必须登录!

 

Linux 基础教程
Linux 简介Linux 安装Linux 云服务器Linux 系统启动过程Linux 系统目录结构Linux 忘记密码解决方法Linux 远程登录Linux 文件基本属性Linux 文件与目录管理Linux 用户和用户组管理Linux 磁盘管理Linux vi/vimlinux yum 命令VMware 安装 Centos7 超详细过程
Linux 命令
Linux 命令大全Linux cat命令Linux chattr命令Linux chgrp命令Linux chmod命令Linux chown命令Linux cksum命令Linux cmp命令Linux diff命令Linux diffstat命令Linux file命令Linux find命令Linux git命令Linux gitview命令Linux indent命令Linux cut命令Linux ln命令Linux less命令Linux locate命令Linux lsattr命令Linux mattrib命令Linux mc命令Linux mdel命令Linux mdir命令Linux mktemp命令Linux more命令Linux mmove命令Linux mread命令Linux mren命令Linux mtools命令Linux mtoolstest命令Linux mv 命令Linux od命令Linux paste命令Linux patch命令Linux rcp命令Linux rm命令Linux slocate命令Linux split命令Linux tee命令Linux tmpwatch命令Linux touch命令Linux umask命令Linux which命令Linux cp命令Linux whereis命令Linux mcopy命令Linux mshowfat命令Linux rhmask命令Linux scp命令Linux awk 命令Linux read 命令Linux updatedb 命令Linux col命令Linux colrm命令Linux comm命令Linux csplit命令Linux ed命令Linux egrep命令Linux ex命令Linux fgrep命令Linux fmt命令Linux fold命令Linux grep 命令Linux ispell命令Linux jed命令Linux joe命令Linux join命令Linux look命令Linux mtype命令Linux pico命令Linux rgrep命令Linux sed 命令Linux sort命令Linux spell命令Linux tr命令Linux expr命令Linux uniq 命令Linux wc命令Linux let 命令Linux lprm命令Linux lpr命令Linux lpq命令Linux lpd命令Linux bye命令Linux ftp命令Linux uuto命令Linux uupick命令Linux uucp命令Linux uucico命令Linux tftp命令Linux ncftp命令Linux ftpshut命令Linux ftpwho命令Linux ftpcount命令Linux cd命令Linux df命令Linux dirs命令Linux du命令Linux edquota命令Linux eject命令Linux mcd命令Linux mdeltree命令Linux mdu命令Linux mkdir命令Linux mlabel命令Linux mmd命令Linux mrd命令Linux mzip命令Linux pwd命令Linux quota命令Linux mount命令Linux mmount命令Linux rmdir命令Linux rmt命令Linux stat命令Linux tree命令Linux umount命令Linux ls命令Linux quotacheck命令Linux quotaoff命令Linux lndir命令Linux repquota命令Linux quotaon命令Linux badblocks命令Linux cfdisk命令Linux dd命令Linux e2fsck命令Linux ext2ed命令Linux fsck命令Linux fsck.minix命令Linux fsconf命令Linux fdformat命令Linux hdparm命令Linux mformat命令Linux mkbootdisk命令Linux mkdosfs命令Linux mke2fs命令Linux mkfs.ext2命令Linux mkfs.msdos命令Linux mkinitrd命令Linux mkisofs命令Linux mkswap命令Linux mpartition命令Linux swapon命令Linux symlinks命令Linux sync命令Linux mbadblocks命令Linux mkfs.minix命令Linux fsck.ext2命令Linux fdisk命令Linux losetup命令Linux mkfs命令Linux sfdisk命令Linux swapoff命令Linux apachectl命令Linux arpwatch命令Linux dip命令Linux getty命令Linux mingetty命令Linux uux命令Linux telnet命令Linux uulog命令Linux uustat命令Linux ppp-off命令Linux netconfig命令Linux nc命令Linux httpd命令Linux ifconfig命令Linux minicom命令Linux mesg命令Linux dnsconf命令Linux wall命令Linux netstat命令Linux ping命令Linux pppstats命令Linux samba命令Linux setserial命令Linux talk命令Linux traceroute命令Linux tty命令Linux newaliases命令Linux uuname命令Linux netconf命令Linux write命令Linux statserial命令Linux efax命令Linux pppsetup命令Linux tcpdump命令Linux ytalk命令Linux cu命令Linux smbd命令Linux testparm命令Linux smbclient命令Linux shapecfg命令Linux adduser命令Linux chfn命令Linux useradd命令Linux date命令Linux exit命令Linux finger命令Linux fwhios命令Linux sleep命令Linux suspend命令Linux groupdel命令Linux groupmod命令Linux halt命令Linux kill命令Linux last命令Linux lastb命令Linux login命令Linux logname命令Linux logout命令Linux ps命令Linux nice命令Linux procinfo命令Linux top命令Linux pstree命令Linux reboot命令Linux rlogin命令Linux rsh命令Linux sliplogin命令Linux screen命令Linux shutdown命令Linux rwho命令Linux sudo命令Linux gitps命令Linux swatch命令Linux tload命令Linux logrotate命令Linux uname命令Linux chsh命令Linux userconf命令Linux userdel命令Linux usermod命令Linux vlock命令Linux who命令Linux whoami命令Linux whois命令Linux newgrp命令Linux renice命令Linux su命令Linux skill命令Linux w命令Linux id命令Linux groupadd 命令Linux free命令Linux reset命令Linux clear命令Linux alias命令Linux dircolors命令Linux aumix命令Linux bind命令Linux chroot命令Linux clock命令Linux crontab 命令Linux declare命令Linux depmod命令Linux dmesg命令Linux enable命令Linux eval命令Linux export命令Linux pwunconv命令Linux grpconv命令Linux rpm命令Linux insmod命令Linux kbdconfig命令Linux lilo命令Linux liloconfig命令Linux lsmod命令Linux minfo命令Linux set命令Linux modprobe命令Linux ntsysv命令Linux mouseconfig命令Linux passwd命令Linux pwconv命令Linux rdate命令Linux resize命令Linux rmmod命令Linux grpunconv命令Linux modinfo命令Linux time命令Linux setup命令Linux sndconfig命令Linux setenv命令Linux setconsole命令Linux timeconfig命令Linux ulimit命令Linux unset命令Linux chkconfig命令Linux apmd命令Linux hwclock命令Linux mkkickstart命令Linux fbset命令Linux unalias命令Linux SVGATextMode命令Linux gpasswd 命令Linux ar命令Linux bunzip2命令Linux bzip2命令Linux bzip2recover命令Linux gunzip命令Linux unarj命令Linux compress命令Linux cpio命令Linux dump命令Linux uuencode命令Linux gzexe命令Linux gzip命令Linux lha命令Linux restore命令Linux tar命令Linux uudecode命令Linux unzip命令Linux zip命令Linux zipinfo命令Linux setleds命令Linux loadkeys命令Linux rdev命令Linux dumpkeys命令Linux MAKEDEV命令Linux poweroff 命令Linux bc 命令Linux tail 命令Linux xargs 命令Linux 常用命令全拼AWK 工作原理AWK 数组AWK 条件语句与循环AWK 用户自定义函数AWK 内置函数8 个有力的 Awk 内建变量
Linux 问答
Nano和VIM编辑器的区别Bash脚本中Zsh和Bash的区别Ubuntu中APT和DPKG的区别Linux中桌面环境和窗口管理器的区别Owncloud和Nextcloud的区别wget和curl的区别UNIX系统中用户cpu时间和系统cpu时间的区别KornShell 和 BashShell 的区别Linux下Ext4和Btrfs文件系统的区别片上系统SoC 与 单板计算机SBC的区别用户级线程和内核级线程的区别优先级倒置和优先级继承的区别MMU和MPU有什么区别UEFI(统一可扩展固件接口)与BIOS的区别不同类型的RAM(随机存取内存)Ubuntu 和 Red Hat Linux 的区别Ubuntu 和 Kali Linux 的区别Jumpshare 和 Ubuntu One 的区别Ubuntu和Fedora的区别RAID 1 和 RAID 5的区别比特币和区块链的区别Arch Linux 和 Kali Linux 的区别Fedora 和 Kali Linux 的区别硬拷贝和软拷贝的区别RAID 5 和 RAID 10的区别本地文件系统 (LFS) 和分布式文件系统 (DFS) 的区别RPA 和 Selenium 的区别Linux 和 OS/2的区别Linux 和 Plan 9 的区别硬盘驱动器和闪存驱动器的区别中断和异常的区别