Linux 管理开机启动

如果想要科学的管理 Linux 的开机启动项,那么了解 Linux 开机启动流程是非常有必要的。链接的文章将 Linux 开机启动流程讲述的非常通俗易懂,这里就不再详述。简单地归纳: 加载内核 ,读入 /boot 目录下内核文件 内核加载完成后,运行第一个程序 /sbin/init(PID 为 1),用来初始化系统环境 依据运行级别启动守护进程(daemon 或者称为服务) 加载开机启动程序 用户登录 进入 login shell,依据不同的登录方式(命令行登录,ssh 登录,图形界面登录),系统加载不同的 shell 配置, Read more ...

2018-02-05 linux , startup , script , shell , command

每天学习一个命令:ed 行编辑器

ed 是一个面向行的文本编辑器。ed 命令还有一个严格的 red 命令,red 命令只能编辑当前目录中的文件,并且不能够执行shell命令。 当使用 ed 命令明确指定一个文件时,文件的一份拷贝被读入编辑器的缓存,所有的编辑都是保存在缓存中,而不是直接在文件中修改。如果退出 ed 却没有显示的使用 w 命令来保存修改的话,所有的修改内容都会丢失。 编辑的内容可以通过两种不同的方式:command 和 input 两种模式。使用第一种命令模式时,ed 命令通过从标准输入读取命令并将修改执行在编辑器缓存中。一个典型的命令 ,s/old/new/g Read more ...

2018-02-02 linux , command , unix , ed , line , editor

每天学习一个命令: rename 批量修改文件名

虽然 Linux 下有很多方式可以重命名文件,比如 mv filename newfilename,设置可以使用 cat 命令来将一个文件输出重定向到文件 cat file > newfile,或者可以拷贝的时候重命名 cp file newfile 。 但是其实 Linux 下有一个命令 rename 顾名思义,就是用来重命名文件的,并且能够按照正则批量重命名文件。他的基本使用方式就是 rename [options] "s/oldname/newname/" file 这个命令可以分开几部分来讲,首先对于整体命令先不看选项(option Read more ...

2018-01-31 linux , command , rename , file

MyBatis 中 insert 和 insertSeletive 区别

MyBatis generator 自动生成的 mapper 文件中有两个 insert 方法,insert 和 insertSelective,这两个方法都可以插入一条数据 对于 insert: int insert(T record); 对于 insertSelective int insertSelective(T record); insertSelective 对应的 SQL 语句加入了 NULL 检验,只会插入数据不为 null 的字段,而 insert 会插入所有字段,会插入 null 数据。 也就意味着如果定义了表 def Read more ...

2018-01-30 mybatis , mysql , orm , java

v2ray 使用和总结

v2ray 是一个模块化的代理工具,支持 VMess,Socks,HTTP,Shadowsocks 等等协议,并且附带很多高级功能,HTTP 伪装, TLS 等等。 安装 install root 账户下执行 bash <(curl -L -s https://install.direct/go.sh) 该脚本会自动安装 unzip 和 daemon。脚本执行成功后,进行如下操作: 编辑文件 vim /etc/v2ray/config.json 来配置 运行 service v2ray start 来启动 v2ray 使用 Read more ...

2018-01-26 linux , windows , mac , socks , http , shadowsocks , proxy , vmess

自建网络硬盘 ownCloud

ownCloud 是一个文件分享服务,可以将个人的文件内容,比如文本,图片,音频等等存储到一个中心服务器上,类似于 Dropbox。但是与 Dropbox 不同之处在于 ownCloud 是开源的,任何人都可以检视其源代码并且可以为之贡献代码,这意味着他将文件的控制权交给了个人,敏感的文件任何人都无法查看,但于此同时他也将文件的安全交给了个人管理。 ownCloud 安装 [[OwnCloud]] 安装之前确保有 sudo 权限,并且 ownCloud 需要 web 服务器,比如 nginx 或者 Apache 数据库 MySQL P Read more ...

2018-01-25 linux , cloud , drive , owncloud

使用 Celery Once 来防止 Celery 重复执行同一个任务

在使用 Celery 的时候发现有的时候 Celery 会将同一个任务执行两遍,我遇到的情况是相同的任务在不同的 worker 中被分别执行,并且时间只相差几毫秒。这问题我一直以为是自己哪里处理的逻辑有问题,后来发现其他人 也有类似的问题,然后基本上出问题的都是使用 Redis 作为 Broker 的,而我这边一方面不想将 Redis 替换掉,就只能在 task 执行的时候加分布式锁了。 不过在 Celery 的 issue 中搜索了一下,有人使用 Redis 实现了分布式锁,然后也有人使用了 Celery Once。 大致看了一下 Celery On Read more ...

2018-01-24 celery , celery-once , redis , broker , queue , task , unique , python

pipenv 使用

pipenv 是目前官方 推荐使用的包管理工具。 能够为项目创建和管理虚拟环境,从 Pipfile 文件添加或删除安装的包,Pipfile.lock 来锁定安装包的版本和依赖信息。 不用再维护 requirements.txt, 使用 Pipfile 和 Pipfile.lock 来代替 在安装了 pyenv 的条件下,可以自动安装需要的 Python 版本 这里就不得不提到 pyenv 了,pyenv 能用来管理不同的 Python 版本,结合 pyenv-virtualenv 也能够快速创建虚拟环境,不过这个 pipenv 提供了 Read more ...

2018-01-23 python , virtualenv , pyenv , pipenv

又一款抓包分析软件 wireshark

Wireshark 是一款网络分析工具,也是学习网络协议的工具,原先介绍过的 Charles ,mitmproxy 等 HTTP 抓包工具,都局限于 HTTP/HTTPS 请求,对于更底层的 TCP/IP,UDP 等协议就无能为力了。Wireshark 可以抓取网卡上的网络包,并实时展示,Wireshark 包括了过滤器,协议显示等等工具。 Wireshark 和其他工具的区别,比如 Charles,mitmproxy,Fiddler 等。Charles, mitmproxy,Fiddler 是专门用来捕获 HTTP,HTTPS 请求的。Wiresha Read more ...

2018-01-16 wireshark , charles , mitmproxy , proxy

使用 Chevereto 自建照片分享

Chevereto 是一款分享照片的程序,可以非常轻松得在自己的服务器上搭建照片分享程序,功能强大,外观精美。Chevereto 本身是收费使用的,一次性付费,终身使用,但是其开源版本可以免费使用。 目前 Chevereto 的价格是 $39,可以免费升级到 V4 版本。作者已经发生声明,在 2021 年底将终止 Free 版本的维护。 Docker 安装 推荐使用 Docker 安装 Chevereto: https://github.com/einverne/dockerfile 安装 在安装之前请先检查需要的系统配置,至少保证 VP Read more ...

2018-01-15 php , photo , google , flickr , chevereto , self-hosted

最近文章

  • Claudia 可视化管理 Claude Code Claudia 是一款专为 Anthropic  的 Claude Code 设计的开源图形用户界面(GUI)桌面应用,可以创建自定义代理,交互式管理,以及在后台运行。它将命令行形式的 Claude Code 转换为直观的可视化操作界面,显著提升了  AI 辅助编程的用户体验。
  • Claude Code Sub Agent 功能说明 Claude Code Sub Agents (子代理) 是 Anthropic 在 Claude Code 工具中推出的一项新功能,允许开发者创建专门的 AI 助手来处理特定类型的编程任务。功能在 v1.0.60 版本中正式发布。
  • 远程控制 Claude Code 让 AI 一刻不停 日常都是在终端里面使用 Claude Code 进行代码的编写,但是因为 Cloud Code 每一次执行都要花费很长的时间等待,那我想着有没有一种方法可以让我们进行远程的控制,比如说在 Cloud Code 完成大段代码的编写之后,即使我们不在电脑旁,我们也可以继续让 Cloud Code 进行下一个需求的编写。
  • 为程序员而设计的屏幕共享服务:Screego 或许你曾经有过这样的经历,你想要把自己的屏幕分享给自己的好友或者是工作伙伴,你会发现自己可能需要打开 Microsoft Teams 或者是 Google Meet,然后使用它内建的屏幕分享的功能来分享自己的屏幕。但是这些工具的话,他们要不就是需要你们共同拥有账号,并且打开可能会有几秒钟的延迟,要不就是他们分享的质量会很差,甚至都无法看清自己的屏幕上的文字或者代码。
  • 关于习惯养成和打破的科学 昨天,花了半天的时间去听了 Andrew Huberman 的一个 YouTube 视频 —- The Science of Making & Breaking Habits,主要讲的是从神经科学结合心理学的角度,探讨了习惯的形成和破除机制,并且 Huberman 教授提供了多项实用的工具来帮助我们培养习惯以及破除我们不希望的习惯。

赞助