C槽系统目录--Windows资料夹常识

从这篇开始,我们要介绍一些Windows系统常识,做为一个资工先了解Windows的系统结构,懂得问题可以出现在什麽地方,来当做我们之後来Debug的知识,今天预计要来看研究一些基本系统资料夹的意义。


C槽主目录

首先,让我们由浅入深,从C槽讲几个大家都认识的资料夹出来(划掉的是我自己建立的资料夹,因为我目前只有一个槽,所以自己的东西都摆在这里)。
Imgur

  • DRIVERSeSupport是ASUS内建的备份和驱动程序夹
  • PerfLogs:全名是performance logs,是系统的资讯日志档,可以检视系统表现,检视具体问题和执行情况
  • Program Files:是预设使用者安装程序的存放路径Program Files (x86):程序安装的时候,64位的程序一般安装到Program Files中,32位元的程序通常会装在这里,让 32位元的程序能执行在64位元的系统中
  • Temp:存放系统或其他软件临时档案
  • Windows:Windows的作业系统资料夹
  • 使用者:包括使用者的资料像桌面、我的文件等,还有使用者帐户的设定

不过还有一些项目可能被隐藏,这时候在档案总管案检视把隐藏的项目勾起来,再到选项的检视把隐藏作业系统档的选项取消勾选,使用完平常记得把开关关回去才不会误触系统档。
Imgur

这时候会看到更多档案和资料夹,像是储存系统还原点的System Volume Information,纪录intel晶片组驱动安装的intel,应用程序不用提权就可以存放程序资料的ProgramData等等,或是虚拟记忆体的分页档pagefile.sys,睡眠储存系统使用状态的hiberfil.sys之类的。
Imgur
Imgur

总之各种档案诸罗万象的,细分下去还得了,如果遇到不认识的档案google一下就有了,虽然大部分你找到的标题都是Can I delete XXX flie……如果你想要系统稳定的话,清理这回事还是交给专业的软件去执行吧,笔者的目的是要来探讨一些最近发现的重要的资料夹意义,跟我们前面的登录档和软件安装相关,所以可能有点零碎~就当作随手笔记轻松看吧。


批次处理常用系统路径

写下几个常用的系统位置变数,通常%%之间的大小写无差别

  • %systemdrive% = C:\(当前启动的系统的的磁碟区)
  • %windir% = %SystemRoot% = C:\ Windows(当前启动的系统根目录)
  • %programfiles% = C:\Program Files(程序安装目录)

C:\Windows的System32和SysWOW64的意义

因为现在的电脑大部分都是64位元的,但还是很多程序是32位元的版本,Program Files也因此出现x86版本,但还是有些动态连结库跟文件会存在Windows资料夹内,仔细观察会出现一件怪事,System32有大量的64位元文件,SysWOW64有大量的32位元程序,笔者一开始在找登录档文件还一度怀疑自己找错位置,其实他们关系非浅。

这要回到一开始,在Windows系统跟intel处理器都是32位元的结构的时候,System32资料夹包括Windows系统文件,系统的内建的程序,还有各种程序会用到的.dll档等等,甚至有软件会把自己的.dll写到这里,程序从Program Files开始启动,有时候会到System32加载.dll档。

直到现在这个64位元的时代,系统大部分是64位元的,软件也提供32和64位元两种版本,通常32位元的程序可以向上兼容在64位元的系统上运行,但他们用的.dll档一定也要是32位元的,遇到64位元则会崩溃,所以Program Files要分成两种,System32也要拆两个,因为很多软件在读取路径都会直接读System32,所以後来Windows就沿用这个名字,把目前主流的64位元需要的档案放在这,以前32位元需要的档案放到SysWOW64资料夹,这些程序的登录档常常会写在HKLM\SOFTWARE\Wow6432NodeWOW64是代表Windows 32-bit on Windows 64-bit,而Windows系统中也有File System Redirector会去帮我们规划好这两个资料夹的内容避免安装路径搞错。
总而言之,如果我们要查看目前的系统文件,多半是去System32看而不是去名称带有64的SysWOW64。


C:\Users\XXX\AppData资料夹

这个资料夹是隐藏的,他主要有三个子资料夹:

  • Local:等於%localappdata%,包含安装的相关的文件,里面的资料无法跟使用者配置文件一起移动,也无法跟服务器同步,他也会包括一些下载的暂存文件跟使用者对软件的设定档,里面有个Temp资料夹会放些暂存资料,如果要删除,通常建议要超过24-48小时风险才比较低。
  • LocalLow:性质跟Local内容差不多,但他的访问级别比较低,如果我们在受保护的情况下运行某个程序,他只能拜访这个资料夹而不能拜访Local。
  • Roaming:等於%appdata%,他包括一些软件的使用者自定义的配置设定,具有在同个网域中可以互相共用的特性。

笔者会介绍这个资料夹是有原因的,好比有次我用Unity Hub想装某个版本的Unity到D槽,那一次安装动辄十几G,结果似乎是网路问题安装失败,本来快满出来的C槽就更满了,解决办法就是我们要到AppData\Local\Temp抓出刚刚下载不完整的Unity安装档移除掉才可以重新安装,否则就要等24小时让系统自己把他删除,这是一个手动排除错误的例子,如果我们很清楚他的由来就可以这麽做。

或者有时候装过一个应用程序又把他解除安装了,再装一次会发现上次的设定还在,原因就是解除安装的时候没有把配置文件拿掉,这样有好有坏,虽然这些文件大小不大,不太会暂用磁碟空间,但我们有时候再次安装是为了回到最初始的状态,这些设定反而延用错误的设置,或是一些portable版的程序也会在这里产生设定档,手动移除可能可以回到初始状态重新正常安装。

今天讲的是一些Windows系统夹的意义,对这些有一定的了解可以方便我们找到需要的资料,甚至手动排除一些安装错误跟回复初始设定,下篇我们要讲的是Windows的帐户权限,除了一般使用者还有其他高级帐号,无时无刻在系统中处理不同等级的事务。

Imgur

参考资料:
https://www.gushiciku.cn/dl/1psc1/zh-tw
https://kist28366.pixnet.net/blog/post/375007390
https://www.itread01.com/content/1546488032.html
https://www.howtogeek.com/326509/whats-the-difference-between-the-system32-and-syswow64-folders-in-windows/
https://www.howtogeek.com/318177/what-is-the-appdata-folder-in-windows/
https://www.thewindowsclub.com/local-localnow-roaming-folders-windows-10
https://superuser.com/questions/21458/why-are-there-directories-called-local-locallow-and-roaming-under-users-user


<<:  [DAY17]认识Helm - The package manager for Kubernetes

>>:  英雄列表范例:删除英雄

33岁转职者的前端笔记 DAY 28 CSS 选取器类别笔记

CSS 最重要的一环就是选取器,新手一定要了解熟悉 CSS 选取器 才能事办功倍,开发速度也会提升许...

Day3 简易调色盘小实作

一开始我们还是利用storyboard写呦! 之後才会变成xib得方式! 这个小作品我用的是stor...

DAY29 MongoDB 使用 C# Driver 操作

DAY29 MongoDB 使用 C# Driver 操作 不知道有没有人记得 DAY1 文章说本篇...

Day 17手势识别GestureDectector

手势识别GestureDectector (一)介绍 支援一些较复杂的互动,例如缩放、双击、垂直、水...

30天学会 Python: Day 6- 你的加法不是你的加法

Python 中的字串和串列有很多相似的性质,可以想成字串是元只能是字元的串列 所以可以用索引和 S...