加入收藏 | 设为首页 | 会员中心 | 我要投稿 拼字网 - 核心网 (https://www.hexinwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 服务器 > 搭建环境 > Linux > 正文

Linux下的开源软件有哪些有趣的玩法?

发布时间:2022-11-11 12:47:56 所属栏目:Linux 来源:
导读:  把同学在Windows下中毒的U盘插到我电脑上,

  隐藏文件病毒木马一览无余,微微一笑,键入"rm ..."。

  //以下才是正文,新增 ThinkPad 玩法指南

  //(last updated: 2015.06.29 11:01:31)
  把同学在Windows下中毒的U盘插到我电脑上,
 
  隐藏文件病毒木马一览无余,微微一笑,键入"rm ..."。
 
  //以下才是正文,新增 ThinkPad 玩法指南
 
  //(last updated: 2015.06.29 11:01:31)

  推荐三个终端下的游戏:
 
  2048

  俄罗斯方块:bsdtris

  RPG游戏:nethack

  然后推广一个我写的播放器,
 
  bsdelf/mous · GitHub
 
  提供三种前端界面,其中一种是在字符终端下用的,
 
  支持后台播放,全键盘操作,类似 Vim 的按键绑定,Tag 基本不会乱码,
 
  支持 ape/flac/mp3/m4a/ogg/wav/wv/wma 格式(不依赖 ffmpeg):

  //放着 Konsole 的标签页功能不用常年待在 tmux 里算不算好玩?

  开源系统最大的好处在于可定制性,以下是自己的一些折腾的玩法:
 
  用 beautifulsoup, urllib, sqlite3 编写 python 脚本,解析学院主页上的学术会议报告通知,一旦有新报告就记入数据库,并且发微博 at 一部分人,放入 crontab 自动定期执行。对 dmenu 程序启动器的哲学不满,遂参考其源代码重写了一个按 MRU(Most Recently Used) 排序的程序启动器名为 mrulauncher。讨厌 top 命令在显示内存大小的时候不按「超过 1024 就升级单位」的规则来,遂修改源码定制自己的 top。用 vim+xelatex+mupdf 写论文,但每次 make 之后 mupdf 无法自动刷新。查阅手册后发现它接收一个 SIGHUP 信号可以用来刷新,遂写了一个名为 mupdf-refresh 的脚本,在 Makefile 里调用,实现编译完后自动刷新。笔记本是 ThinkPad R400,自从某次更新 BIOS 之后,风扇转速一旦升上去就降下不来了(即使 CPU 温度降下来),遂自己写了一个名为 fand 的守护程序根据 CPU 温度调节风扇转速。上文那个播放器。早年许多播放器不支持 APE 格式,不支持格式转换,中文还乱码,遂抛弃它们,移植 APE 官方解码库,从头写了个基于插件的播放器自己用着。assaultcube(类似CS的FPS游戏)玩得不过瘾,遂修改源码:去掉后座力,弹药无限,增加护甲。写内核模块,又不想让自己的机器 kernel panic。于是搭建一个 nfs,存放内核模块的源码,然后在虚拟机里挂载这个 nfslinux软件源,开发测试内核模块。使用 zfs-periodic 脚本对 /home 分区每小时做快照,保留最近12小时的快照。再也不担心误删文件了。使用 tmpfs(共享所有主存模式),编译啊、浏览器缓存什么的都放在内存文件系统上,又快又干净。有一次更新系统后发现 CPU 的中断率异常的高,于是用二分查找(svn update -r xxxxx,编译安装内核,重启),搞了N次,终于确定了哪次 revision 导致问题,然后上邮件列表问,很快就得到开发者回复,修好了这个问题。
 
  用 wget 抓取教授们的个人主页,有时会有意外收获:)
 
  wget-site: aliased to wget -c -r -np -k --timeout=3
  学习一些开源项目,有时候时间隔久了就分不清他们用哪种版本管理器,同步前要确认一下再敲相关命令很麻烦,于是弄了一个名为"up"的命令:
 
  up () {
          if [ -d ".git" ]
          then
                  echo "git pull origin"
                  git pull origin
          elif [ -d ".svn" ]
          then
                  echo "svn up"
                  svn up
          elif [ -d ".hg" ]
          then
                  echo "hg pull"
                  hg pull
                  echo "hg update"
                  hg update
          else
                  echo "Bad repository!"
          fi
  }

  以下是我没去做的,但技术上毫无难点的玩法(适用于ThinkPad):
 
  thinklight:加载 acpi_ibm 内核模块后,便有了 /dev/led/thinklight 节点,只要在命令行执行
 
  echo 1 > /dev/led/thinklight
  或者
 
  sysctl dev.acpi_ibm.0.thinklight=1
  就能控制键盘灯。这意味着只要在别的软件里(例如邮件客户端)稍微加点代码,就能实现类似 iOS 的「LED闪烁以示提醒」那种效果。
 
  hdaps:众所周知 ThinkPad 有APS硬盘保护功能(依靠2轴传感器)。

  然而现在许多人换固态硬盘了,不再需要APS,所以我们就能随心所欲地使用这个传感器,通过驱动读取笔记本 x-y 轴倾,调整某些应用程序的行为。

(编辑:拼字网 - 核心网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!