ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

计算机三级Linux备考指南:从命令到Shell脚本的实战梳理

计算机三级Linux备考指南:从命令到Shell脚本的实战梳理 很多人一听到“计算机三级”脑子里冒出来的大概率是数据库、网络技术、嵌入式这几个老牌科目。其实三级里还有一门Linux应用与开发技术这几年报考热度涨得很快。这科目跟我印象里的“背题库”不太一样它更偏向实操考的是你坐在终端前会不会真的干活。如果你本身工作会碰Linux服务器或者想往运维、嵌入式、后端方向走这个三级Linux的含金量和备考性价比其实挺高的。这篇东西我不打算给你列一份“考点清单”就完事而是把我复习时真正梳理过的知识点框架、容易丢分的细节还有练习环境搭建的完整思路都摊开来讲希望能帮你少走弯路。1. 先看清考试盘子计算机三级Linux到底考什么、值不值得考1.1 这个科目的定位和考试风格全国计算机等级考试三级Linux应用与开发技术本质上是要验证你对Linux系统的基础使用、日常管理和简单脚本开发能力。跟三级数据库、三级网络技术那种“偏理论、偏背诵”的考试风格不同Linux这门课更看重你在命令行环境里的实际操作能力题目往往给一个具体场景比如“新建用户并设置密码”“修改某个文件的权限让特定用户可读写”“写一个备份脚本”之类的然后你需要在系统里真的把这件事做出来。我第一次刷题的时候还闹过误会以为跟二级Office差不多找个模拟软件点一点就行。后来发现完全不是三级Linux的得分点分布在命令执行结果、配置文件内容、脚本运行输出这些地方你不亲手敲一遍光靠脑子里记参数根本记不牢。换句话讲这是一门“动手能力大于记忆力”的考试。1.2 适合什么样的人考我个人觉得下面几类人特别适合选这个科目平时工作会接触Linux服务器比如后端开发、运维、测试顺手把知识体系梳理一遍。考研或就业方向偏嵌入式、物联网、云计算需要一份能证明Linux基础能力的证书。对计算机底层和开源系统有兴趣又不想啃纯理论喜欢“边敲边学”的人。已经过了二级想往三级走但觉得数据库SQL太枯燥、网络技术记忆量太大的人。如果你属于上面任何一类这门课都值得纳入考虑。尤其是嵌入式方向的热搜词一直没断过而Linux正是嵌入式开发绕不开的基础底座考个三级反而像是在帮自己补课。1.3 需要投入的时间和前期准备Linux三级不是零基础随便翻翻书就能过的科目但也不需要你非得是资深运维。一般来说有计算机基础的人认真准备一到两个月完全够用关键是得有一台能随时练习的Linux环境。我自己用的方案是虚拟机装Linux发行版既能随便折腾又不影响宿主机。后面有一章我会专门讲环境搭建和练习节奏这里先不展开。说白了这个科目就是“考试倒逼你把Linux基础打牢”拿证只是附带的奖励真正值钱的是你在准备过程中积累起来的实际操作能力。2. 主战场命令、权限和进程这套卷子的核心得分区2.1 文件与目录命令族别只会ls和cd考试里最基础也最要命的部分就是文件和目录操作。很多初学Linux的朋友上来就背命令但其实更重要的是理解Linux“一切皆文件”的设计哲学这样你才知道为什么普通文件的复制、删除、移动和目录的操作是同一套命令也才知道为什么权限要分那么细。说一下高频考点命令核心用法考试爱考的点lsls -l、ls -a、ls -lh查看权限位、隐藏文件、文件大小单位cpcp -r递归复制、cp -p保留属性复制目录不加-r必报错mv移动或重命名跨文件系统移动时的行为差异rmrm -rf强制递归删除危险操作考试常考“如何安全删除”findfind /path -name “*.log”按名称、类型、大小、时间查找tartar -czf、tar -xzf打包压缩和解包解压的配对使用这里我特别想提一下tar命令。考试不会让你背一堆冷门参数但打包和解包几乎是必考。打包压缩用tar -czf 目标文件.tar.gz 被压缩目录解包解压对应tar -xzf 压缩包.tar.gz这个对应关系一定要练到肌肉记忆。还有一种常见考法是“把某目录下的所有.conf文件打包”那就得配合通配符*.conf和find命令一起用单纯背命令是应对不了这种组合题的。2.2 权限管理看懂rwx还不是终点权限这块是三级Linux里区分度很高的内容也是实际工作中最常出问题的点。每道权限题的核心就三个问题谁用户/组/其他人、能做什么读/写/执行、怎么改chmod/chown。先看权限位的构成-rw-r--r-- 1 root root 1024 Mar 1 10:00 test.txt第一个字符是文件类型-代表普通文件d代表目录l代表软链接。紧接着9个字符分成三段每段三位分别对应用户u、组g、其他人o的读r4、写w2、执行x1权限。网上很多文章让你把数字背下来我更推荐直接理解成二进制权值相加比如rwx是7r-x是5rw-是6这样看到任何权限组合都能心算出来不会一换数字就懵。考试里经常出现的场景是给指定的普通用户开放某个文件的写权限但又不希望影响其他用户。这种题不能无脑chmod 777正确思路是chown先确认文件属主再用chmod uw只给属主增加写权限或者用chmod gw给属组加权限。你还要能判断出如果文件属于root普通用户要改它得用sudo配合提权而不是直接改权限这个逻辑链条考试特别爱考。目录权限有个细节特别容易丢分目录的读权限决定你能不能ls列出内容执行权限决定你能不能cd进入目录。有时候用户能看懂目录内容却进不去就是缺少执行权限能进去却列不出内容就是缺读权限。实战排错时第一反应就应该是ls -ld看目录权限位而不是瞎猜。2.3 用户与用户组管理新建用户只是第一步热搜词里“linux新建用户”排得很靠前可见这确实是个高频操作。我也见过不少人在虚拟机里练手时用useradd加完用户就完事以为自己会了。实际上考试和真实工作里的用户管理远不止建一个账号这么简单。常规的一组命令是useradd -m -s /bin/bash testuser # 创建用户并生成家目录指定shell passwd testuser # 设置或修改密码 usermod -aG wheel testuser # 把用户加入附加组sudo组 userdel -r testuser # 删除用户并删除家目录这里面有三个坑值得单拎出来说第一useradd和adduser不完全一样。在很多发行版里adduser是交互式脚本会提示你设密码、填信息而useradd是纯命令行的底层工具不加参数时默认不创建家目录。考试或实际配置如果用了useradd testuser然后发现没有/home/testuser别惊讶这是设计如此。第二用户能不能用sudo取决于他是否在sudo组里。不同发行版的sudo组名不一样CentOS/RHEL系通常是wheelUbuntu/Debian系通常是sudo。考试题目如果明确说“让用户有管理员权限”你得能根据系统环境判断该加哪个组。第三su -和su有个很隐蔽的区别带横杠会加载目标用户的完整环境变量工作目录也会切过去不带横杠只是切换用户身份环境还是原来的。考试遇到“切换用户后命令找不到”这类场景多半就是没用su -导致PATH不对。2.4 查看和管理进程从ps到kill进程管理是另一大高频区常见的组合拳是ps查看、top监控、kill结束。我复习的时候习惯把这几个命令当成一个“排障链路”来记先确认可疑进程叫什么、PID是多少再评估它占了多少CPU和内存最后决定是kill结束它还是kill -9强制终止。ps -ef # 查看所有进程标准格式 ps aux # 查看所有进程BSD格式能看CPU和内存占用 top # 动态监控系统资源使用情况 kill -9 PID # 强制结束进程谨慎使用 pkill 名称 # 按进程名结束我印象里考试特别喜欢给一个场景Linux系统突然变卡让你排查是哪个进程占用了大量内存。这种题光会敲top还不够你得知道进去以后按M是让进程按内存占用排序按P是按CPU占用排序然后把可疑的PID记下来再用kill结束它。还有一个小众考点是jobs、bg、fg这组命令涉及前后台任务切换虽然分值不高但考到了就是送分题前提是你练过。3. 容易忽略的第二梯队vi编辑器、Shell脚本和网络配置3.1 vi编辑器三种模式切换是送分还是丢分全看熟练度vi是Linux环境里绕不过去的编辑器考试通常会给一个配置文件要求你用vi修改指定内容。这个考点本身不难难在很多人平时用惯了图形界面进了vi就卡在“怎么退出”这一步。复习vi我建议只抓核心三种模式普通模式、插入模式、命令行模式的切换外加十来个高频操作。vi /etc/hosts # 打开文件 # 进入后默认是普通模式 i # 在当前光标前进入插入模式 Esc # 回到普通模式 :wq # 保存并退出 :q! # 不保存强制退出 dd # 删除当前行 yy # 复制当前行 p # 粘贴 /关键词 # 搜索关键词 :set nu # 显示行号很多备考经验帖把这个考点归纳成“会用就行”我的看法是最好练到闭着眼睛都能完成“进入文件→找到某一行→修改→保存退出”这条流程。因为考试时你本来就紧张再加上系统环境可能和你平时练的不一样vi操作不够熟的话一个简单的改配置题都可能耗掉十几分钟。3.2 Shell脚本语法本身不难坑全在细节Shell编程是三级Linux里我认为最有“含金量”的考点因为它在实际工作和后续学习里真的会反复用到。考试范围不外乎变量、条件判断、循环、函数以及脚本执行权限这些基础内容。看一个最基础的脚本案例#!/bin/bash # 备份指定目录到 /backup 下带时间戳 backup_dir/var/log target/backup time$(date %Y%m%d%H%M%S) mkdir -p $target tar -czf $target/log_backup_$time.tar.gz $backup_dir if [ $? -eq 0 ]; then echo 备份成功$target/log_backup_$time.tar.gz else echo 备份失败 fi这个脚本几乎把三级Shell的高频考点全串起来了变量赋值、命令替换$(date ...)、$?退出状态码、if [ 条件 ]判断、tar配合打包。我自己练的时候发现把类似的脚本亲手敲一遍、执行一遍、再故意改错几个地方比刷十道选择题都管用。写脚本时最容易踩的坑就是空格问题。if [ $? -eq 0 ]里面方括号和变量之间、变量和-eq之间都必须有空格少一个空格脚本就直接报错。还有赋值语句time$(date %Y%m%d)等号两边不能有空格这个跟大多数编程语言的习惯不一样特别容易写顺手就错了。考试里“新建一个脚本并赋予可执行权限”也是经典场景如果你忘了chmod x script.sh那只能bash script.sh这样跑直接./script.sh会提示权限不够。就这一个小细节已经能卡住一批人。3.3 网络配置和DNS考的不只是ip地址三级Linux里的网络配置核心集中在网卡IP、主机名和DNS这几项。热搜词里“linux中配置dns出现的问题”还挺靠前说明这是不少人实际操作中翻车的地方。先看最基本的排查三连ip addr # 查看IP地址现在基本不用ifconfig了 ip route # 查看路由表 ss -tlnp # 查看监听端口netstat -tlnp也可DNS这块最常见的考题是系统能ping通IP但解析不了域名。问题基本出在/etc/resolv.conf配置不对。这个文件的正确写法是nameserver 8.8.8.8 nameserver 223.5.5.5每行一个nameserver指定DNS服务器地址。如果你改了配置文件还是解析不了就要考虑是不是网络管理服务比如NetworkManager会覆盖这个文件这时候需要到网卡配置文件里设置DNS而不是直接改/etc/resolv.conf。这个“改了又被覆盖”的现象在真实服务器上也经常遇到三级考试虽然未必考那么深但备考时理解这一层做题会通透很多。另外静态IP配置也是一个高频操作在CentOS系的网卡配置文件里关键字段是BOOTPROTOstatic加IPADDR、NETMASK、GATEWAY、DNS1。写错网关导致的典型现象是“自己能上网但外面访问不了自己”或者“ping网关通、ping不通外网IP”。4. 实操中那些坑从解压乱码到权限异常我踩过的都替你踩了4.1 Windows和Linux文件交互解压乱码的根源和解决题目热搜词里“linux 解压文件乱码”能上榜说明这个问题实在太普遍了尤其是从Windows传zip包到Linux解压的情况。乱码的根源不在压缩工具而在于文件名编码不同Windows下zip包里的文件名通常是GBK编码Linux系统默认用的是UTF-8两边对不上就显示成乱码。我自己的处理办法是先确认系统有没有unzip和7z然后看情况选择# 方法一用 unzip 指定编码解压需要较新版本 unzip -O GBK 文件名.zip # 方法二安装 7zip 并指定编码解压 7z x 文件名.zip # 方法三已经解压出乱码文件名的用 convmv 转换编码 convmv -f GBK -t UTF-8 --notest *考试虽然不太可能直接考“解压中文乱码”这种题但这恰恰是你在虚拟机里练习时最容易遇到的环境问题。我第一周练习时从Windows拖了个资料包到Linux里解压出来全是乱码文件名折腾了好一会儿才搞明白是编码问题。提前知道这个坑能帮你节省大量备考时间。4.2 虚拟机装Linux蓝屏八成不是Linux的锅热搜词“虚拟机安装linux蓝屏”也挺有意思很多人在VMware里装Linux发行版时宿主机直接蓝屏重启。这里要说明一下绝大多数情况是宿主机自身环境的问题而不是Linux镜像有问题。最常见的几个原因和对应解法现象原因解决办法开启虚拟机瞬间蓝屏BIOS里VT-x虚拟化没开进BIOS开启Intel VT-x/AMD-V安装过程中蓝屏Windows内核隔离/内存完整性开启关闭内核隔离、基于虚拟化的安全设置运行特定发行版蓝屏VMware版本太老升级VMware到较新版本卡在启动界面无响应Hyper-V与VMware冲突禁用Hyper-V功能或改用WSL2方案我个人的建议是如果宿主机上已经开了很多VMware虚拟机装Linux的时候优先检查Windows功能里是不是启用了Hyper-V两者抢虚拟化资源是蓝屏重灾区。要是实在不行也可以直接用WSL2对备考来说绝大多数命令和Shell脚本练习都能完成不过遇到systemd服务管理的题目体验会差一些还是建议用一个完整虚拟机。4.3 新建完用户却无法登录或没权限权限链路的连锁反应前面提到用户管理是高频考点这里我详细展开一个真实场景新建了一个用户也设置了密码但用这个用户登录后发现家目录进不去或者用不了sudo。排查思路是这样一条链路# 查看家目录属主和权限 ls -ld /home/testuser # 正常应该是 testuser testuser 755 # 如果属主是 root说明创建用户时家目录生成有问题 chown -R testuser:testuser /home/testuser # 查看用户所属组 id testuser # 查看是否在sudo组里 groups testuser这个场景非常典型考试也经常以选择题或操作题的形式出现为什么用户不能sudo为什么用户登录后没有写权限答案往往就落在“用户不在附加组里”或者“家目录属主不是该用户”这两个点上。理解了这条链路你再看到相关题目就不会被绕晕了。4.4 一个容易被忽略的隐患umask默认权限umask这个考点经常被安排在权限章节的角落里但考试命中率并不低。它的逻辑是新建文件的默认权限 0666减去umask值新建目录的默认权限 0777减去umask值。绝大多数系统的默认umask是022所以新建文件是644新建目录是755。有一个高频坑如果你把umask改成002再创建文件权限就变成664意味着同组的人可以写这个文件。有些考试题会给你一个场景“希望同一组的人都能编辑新创建的文件应该怎么设置umask”知道原理答案就呼之欲出了。练习的时候你可以在当前Shell里执行umask 002然后用touch test.txt验证比硬背结论要直观得多。5. 备考阶段的实操路线从搭环境到模拟考场5.1 学习环境搭建一定要有一台“能随便折腾”的Linux三级Linux备考最忌讳的就是只看不练。我的建议是装一个虚拟机Linux发行版选主流的就行CentOS系和Ubuntu系都可以因为考题设计通常会兼容主流发行版的操作习惯但你在练习阶段最好固定用某一个熟悉它的包管理器和配置路径。虚拟机装好以后建议第一时间做两件事创建快照和开启共享文件夹。创建快照的好处是练坏了随时回滚不用每次坏了都重新装系统共享文件夹方便你在Windows和Linux之间传资料和脚本。刚开始我用U盘拷文件后来改用共享文件夹效率高多了。5.2 一个能覆盖大部分考点的练习清单按我自己的备考习惯把高频考点整理成了一份自测清单每次练习就对照着过一遍大概如下用命令行完成新建目录、复制文件、移动文件、删除文件的组合操作。修改一个文件的权限让属主可读写执行、同组可读执行、其他人仅可读。新建用户并设置密码把用户加入sudo组验证登录和提权。用find命令查找指定大小以上的日志文件并打包压缩。用vi修改一个配置文件加一行内容并保存退出。写一个带变量和if判断的Shell脚本赋予执行权限并运行。查看系统当前监听的所有端口找到对应进程PID。手动配置一个静态IP地址并重启网络服务验证生效。这套清单练完一遍我觉得三级Linux的操作题心里基本就有底了。后面每周末再做一遍直到所有操作能不看笔记顺畅完成。5.3 考前一周的模拟策略临近考试那一周建议别再一个一个知识点零散地过而是直接模拟考场环境做题。给自己设定一个时间限制比如一个半小时然后从头到尾做一整卷中间不允许翻笔记做完之后再对照解析把错题涉及的知识点在系统里重新操作一遍。模拟的时候要有意识地练“看题→找出要用哪几个命令→先在脑子里过一遍流程→再动手”这个习惯。三级Linux的操作题很多时候不是考你不会用命令而是考你实不熟练命令敲错了能不能及时发现、报错了能不能快速定位原因。我复习后期几乎每天都会把tar、chmod、useradd、vi这一套组合动作快速走一遍为的就是形成肌肉记忆。5.4 从三级Linux往后走还能往哪延伸如果你考完三级Linux感觉还挺顺手的可以考虑接着往这几个方向走一是嵌入式Linux开发方向这块会涉及交叉编译、内核模块、设备树等内容三级里考到的Shell和文件系统基础都用得上二是系统运维与云原生方向热门关键词里的linux kvm网络、linux提权、透明加密这些基本上都是进阶话题三是继续钻研Shell脚本进阶甚至Python自动化运维把日常重复性操作脚本化。我个人备考时的体会是三级Linux最大的价值不是那一张证书而是它逼着你把Linux从“听说过”变成“用过”、再变成“能解决问题”。真正做到这一步之后后面不管是学网络安全、搞服务器运维还是做嵌入式开发你都会发现当初敲的每一条命令、排的每一个错都没有白费。如果你正准备报考我的建议就一条每天尽量留出固定时间坐到终端前面敲一敲把命令练成习惯比考前突击背题库管用得多。
返回列表