Linux
(64)systemd 保存 golang 服务日志到指定文件
## 需求场景
我想将 golang 打印的日志保持到指定日志文件,方便需要的时候进行查看。例如:
```
log.Println("some log")
```
而默认用 systemd 管理该服务的时候,是看不到日志输
linux 用户组权限
以一个实际案例来体验一下 linux 用户组的权限查看及配置。
## 需求场景
测试环境:ubuntu 20.04。
我在服务器上新建的用户,希望能够不用 sudo 就可以查看 nginx 的 access.log 日志文件。
Ubuntu 20.04 禁止 root 用户远程 ssh 登录服务器
为了防止被暴力破解服务器 root 密码,我决定禁止 root 用户远程登录。
## 禁用方法
修改 sshd 服务的配置文件:
/etc/ssh/sshd_config
搜索 PermitRootLogin
ubuntu 20.04 添加新用户,并赋予 sudo 权限
避免所有操作和部署都使用 root 用户,以免被利用漏洞被入侵系统。
所以在新购的 Ubuntu 20.04 服务器上,部署服务之前,我需要先新建一个用户,
并赋予 sudo 权限。
然后禁用 root 用户远程登录服务器。
linux top 命令按照内存使用率排序
默认 top 命令是按照 CPU 使用率排序的。
但是,某些进程启动后,并不活跃,就很难看到该进程的表现。例如,启动一个 golang gin 的 web 服务进程,在没有访客请求的情况下,虽然其内存占用有 18M,但其 CPU 使用
Linux 下查看用户所属的用户组
## 查看当前用户
```
> groups
zhongwei adm dialout cdrom floppy sudo audio dip video plugdev lxd netdev
```
## 查看指定用户
清理 history 命令的历史记录
history 命令的历史实际上是存储在 ~/.bash_history 文件里,查看一下
less ~/.bash_history
就会发现,里面存储了所有的命令记录。
所以,清除的方法自然是删除该文件即可。
CentOS 中文乱码
打开配置文件 /etc/sysconfig/i18n
添加两行
```
LANG=zh_CN.UTF-8
LC_ALL=zh_CN.UTF-8
```
使配置生效
source /etc/sysconf
快速登录 laravel 项目对应的 mysql 数据库
Laravel 项目的开发联调阶段,我经常要到服务器上修改 mysql 的表结构。每次打开 .env 文件 copy mysql 用户名及密码,然后复制到 mysql 命令行登陆,非常繁琐。
于是,我写了一个 shell 脚本,可以自
tmuxinator 无法启动,no server running on /tmp/tmux-1000/default
好几台新装的 Ubuntu 系统 (18.04, 及 16.04) 中 tmuxinator 无法启动,报错
```
$ tmuxinator xxx
/usr/lib/ruby/vendor_ruby/tmuxinator/pr