linux

收集一些linux的命令

  1. 菜鸟教程:https://www.runoob.com/linux/linux-command-manual.html

命令行打开文件管理器

1
nautilus .

创建用户并设置ssh密钥连接

  1. 在root下操作,su后输入密码

  2. 使用useradd命令添加,-m使得自动创建用户主目录

1
useradd -m YOUR_USERNAME
  1. 设置密码
1
passwd YOUR_USERNAME
  1. 关闭密码登陆

    1. 修改配置文件
    1
    vi /etc/ssh/sshd_config
    1. 新增一行
    1
    PasswordAuthentication no
    1. 重启服务
    1
    systemctl restart sshd.service
  2. 配置ssh登陆

    本机生成密钥对,将生成的公钥添加到服务器的~/.ssh/authorized_keys,没有该文件则直接创建,若有多个公钥则换行处理。

查看磁盘空间

  1. 查看目录大小,超过指定层数的目录后不予显示
1
du -h --max-depth 1
  1. 查看磁盘总大小和已用大小
1
df -h
  1. 查看文件夹大小
1
ll -h

dpkg

  1. 安装
1
sudo dpkg -i xxx.deb
  1. 查看已安装
1
sudo dpkg -l
  1. 卸载
1
sudo dpkg -r xxx

tmux

  1. 新建:tmux new -s new_name

  2. 加载:tmux attach -t your_name

  3. 查看所有tmux:tmux ls

  4. tmux中后台运行:tmux detach

  5. tmux中退出:exit

  6. 删除session:tmux kill-session -t your_name

  7. 创建一个新tmux并执行指定命令,适合写在.sh

1
2
3
4
#!/bin/bash 

tmux new-session -d -s your_session_name
tmux send-keys -t your_session_name 'python tmp.py --auth=YOUR_AUTH' C-m

网络DNS问题

  1. 有时候无法clone github的仓库,或python无法安装包,或hugging face无法拉取模型等等问题,是因为dns无法解析,下面这种方式
1
2
3
4
# sudo vim /etc/resolv.conf
nameserver 8.8.8.8 //google服务器
nameserver 8.8.4.4 //google备用服务器

创建软链接

  1. 本想将dataA复制为dataB,但是dataA太大,这时候可以创建软链接

    1
    ln -s /your/path/to/dataA /another/path/to/dataB
  2. 删除软链接

    1
    2
    3
    4
    5
    6
    7
        rm /another/path/to/softlink

    ## hugging face

    1. 换源
    ```sh
    export HF_ENDPOINT=https://hf-mirror.com

git

参考:https://blog.csdn.net/qtiao/article/details/97783243

  1. 初始化:git init
  2. 查看历史:git log
  3. 查看状态:git status
  4. 查看区别:git diff
  5. 暂存文件:git add *.java
  6. 取消暂存:git rm xxx
  7. 提交:git commit -m xxx
  8. 查看分支:git branch
  9. 创建分支:git branch xxx
  10. 切换分支:git checkout
  11. 创建分支并切换:git checkout -b xxx
  12. 合并分支:git merge
  13. 拉取/推送仓库:git pull/push
  14. 拉取所有子模块:git clone --recurse-submodules xxx
  15. stash相关操作:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    // 1.直接stash
    $ git stash
    // 2.带message
    $ git stash -m "Your message here"
    // 3.查看所有stash,输出如下
    $ git stash list
    stash@{0}: On sink: edit-sink
    stash@{1}: On develop: sdk-test
    // 4.应用某个stash
    $ git stash apply stash@{0}
  16. 更改的操作:
    1
    2
    3
    4
    5
    6
    // 1. 比较当前分支相对于目标分支的更改,并重定向到文件
    $ git diff target_branch > tmp.diff
    // 2. 在当前分支应用某个更改文件
    $ git apply tmp.diff
    // 3. 将stash中的内容保存到diff文件中
    git stash show -p stash@{0} > tmp.diff

vim

  • 行尾:$,即shift + 4
  • 行首:|,即shift + \
  • 粘贴到系统剪贴板:NORMAL下选中,直接ctrl c,或者"+yor"*y
  • 从系统剪贴板粘贴:按左边shift,然后"+p比较舒适
  • 下一个word:w
  • 上一个word:b
  • 文件首行:NORMAL下gg
  • 文件末行:NORMAL下G,可以接着$到末行末尾
  • 全局搜索:vscode中得在insert下ctrl+f搜索,或者使用vim的/?,分别表示从当前光标往后和往前搜索,可以先gg/
  • 撤销:u,恢复:ctrl+r
  • 设置vsdode相对行号:ctrl+shift+p打开设置,搜索editor.lineNumbers,然后设置relative
  • 跳转行号,:5第五绝对行,:+10第10相对行,:-3第3相对行
  • hjkl分别是左下上右
  • v选择块, ctrl+v竖向选择

conda

  1. 创建环境:conda create -n your_env_name python=X.X
  2. 激活环境:conda activate your_env_name
  3. 删除包:conda remove [package]
  4. 删除环境:conda remove -n your_env_name --all
  5. 查询已安装的包:conda list
  6. 查询虚拟环境:conda env list
  7. 备份环境:conda env export > environment.yml
  8. 从备份中重建:conda env create -f environment.yml

pip

  1. 换源:在~/.pip/pip.conf中添加
    1
    2
    3
    [global]
    trusted-host = mirrors.aliyun.com
    index-url = http://mirrors.aliyun.com/pypi/simple

nvm

  1. 显示当前版本:nvm current
  2. 安装指定版本:nvm install [node版本号]
  3. 卸载指定版本:nvm uninstall [node版本号]
  4. 使用指定版本:nvm use [node版本号]
  5. 启用版本管理:nvm on
  6. 关闭版本管理:nvm off

ollama

官网:https://ollama.com/

  1. macos安装:brew install ollama
  2. 启动服务:brew services start ollama
  3. 运行模型:ollama run <模型名称>
  4. 关闭服务:brew services stop ollama

vscode

  1. 默认缩进:cmd+shift+p,选择首选项:打开设置(ui),输入tabsize

brew

  1. 清理软件安装包:brew cleanup
  2. 查看安装包:brew list

docker

MacOS上安装无界面的docker

1
2
3
4
5
6
brew install docker
brew link docker

brew install colima
colima start
colima stop

未完待续

啊,这是23年6月开的坑,感觉已经过了好久,最近有空一定多写写博客!——23.11.5