更新于 

开发配置

iTerm2

没有一个好看的终端怎么行

1
brew install --cask iterm2

终端美化

Starship
安装

1
brew install starship
1
echo 'eval "$(starship init zsh)"' >> ~/.zshrc

配置文件

1
2
3
4
mkdir -p ~/.config
cd ~/.config
wget https://raw.githubusercontent.com/44maker/kaliinit/main/starship.toml
cd ~

卸载sharship

  1. 删除 shell 配置中~/.zshrc
    用于初始化 Starship 的所有行
  2. 删除 Starship

Tmux

安装

终端复用神器

1
brew install tmux

教程
Tmux 使用教程- 阮一峰的网络日志
Tmux使用手册

配置文件

1
nano ~/.tmux.conf
1
2
3
4
5
6
7
8
9
10
11
12
13
14
#tmux attach 如果无分离终端则新建
new-session
# split panes using | and -
bind | split-window -h
bind - split-window -v
unbind ' " '
unbind %
bind -r k select-pane -U # 绑定k为↑
bind -r j select-pane -D # 绑定j为↓
bind -r h select-pane -L # 绑定h为←
bind -r l select-pane -R # 绑定l为→
# reload config file (change file location to your the tmux.conf you want to use)
bind r source-file ~/.tmux.conf; display-message "Config reloaded.."
bind V source-file ~/.tmux/layout1
1
2
mkdir ~/.tmux
nano ~/.tmux/layout1
1
2
3
4
5
selectp -t 0 # select the first (0) pane
splitw -v -p 50 # split it into two halves
selectp -t 1 # select the new, second (1) pane
splitw -h -p 50 # split it into two halves
selectp -t 0 # go back to the first pane

完成后

之后使用的话,在终端输入tmux
然后 Ctrl + B 再按 Shift + V
就可以分屏了

常用命令

最大化

复制模式 q退出

窗口列表

切换窗口

会话列表

挂起

Git

1
2
3
4
5
# 配置邮箱 
git config --global user.email "xxxxx@xxx.com"

# 配置用户名
git config --global user.name "xxx"

Python

在调试Python的时候可能遇到不同的环境问题,在这里先使用pyenv进行本地环境配置,后面如果做机器学习、深度学习等使用conda虚拟环境配置

1
brew install pyenv

配置shell环境

1
echo 'eval "$(pyenv init -)"' >> ~/.zshrc

查看可安装的版本

安装与卸载

查看已安装的版本

1
2
3
4
#当前版本
pyenv version
#查看已经安装的Python版本
pyenv versions

版本切换

1
2
3
4
5
6
7
8
# shell 会话设置 只影响当前的shell会话
pyenv shell <python版本>
# 取消 shell 会话的设置
pyenv shell --unset
# local 本地设置 只影响所在文件夹
pyenv local <python版本>
# global 全局设置 一般不建议改变全局设置
pyenv global <python版本>
注意pyenv 的 global、local、shell 的优先级关系是:shell > local > global

JAVA

JDK8
https://www.123pan.com/s/L9uDVv-QQu7H.html
JDK11
https://www.123pan.com/s/L9uDVv-9Qu7H.html
JDK17
下载安装之后
再安装jenv便于切换环境

1
brew instal jenv

配置zshrc环境

1
2
echo 'export PATH="$HOME/.jenv/bin:$PATH"' >> ~/.zshrc
echo 'eval "$(jenv init -)"' >> ~/.zshrc

安装完成后

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#查看当前的 Java 版本
jenv version
#列出目前 jenv 所有可切换管理的版本
jenv versions

#手动添加本地的 Java Home 路径
jenv add /Library/Java/JavaVirtualMachines/jdk-20.jdk/Contents/Home/
jenv add /Library/Java/JavaVirtualMachines/jdk1.8.0_291.jdk/Contents/Home/
jenv add /Library/Java/JavaVirtualMachines/zulu-17.jdk/Contents/Home/

#global 全局设置 一般不建议改变全局设置
jenv global <java 版本>

#shell 会话设置 只影响当前的shell会话
jenv shell <java 版本>
#取消 shell 会话的设置
jenv shell --unset

#local 本地设置 只影响所在文件夹
jenv local <java 版本>

Docker

1
brew install --cask docker

OrbStack

OrbStack 是一种在 macOS 上运行 Docker 容器和 Linux 机器的快速、轻便且简单的方法。可以将其视为强大的 WSL 和 Docker Desktop 替代方案,全部集成在一个易于使用的应用程序中

1
brew install orbstack

Docker切换OrbStack

1
docker context use orbstack

在设置中可以进行换源

1
2
3
4
5
6
7
8
9
10
11
12
13
14
{
"ipv6": true,
"registry-mirrors": [
"http://hub-mirror.c.163.com",
"https://registry.docker-cn.com",
"https://mirror.baidubce.com",
"https://kn77wnbv.mirror.aliyuncs.com",
"https://0dj0t5fb.mirror.aliyuncs.com",
"https://docker.nju.edu.cn",
"https://kuamavit.mirror.aliyuncs.com",
"https://y0qd3iq.mirror.aliyuncs.com",
"https://docker.mirrors.ustc.edu.cn"
]
}

Parallels Desktop

Mac上性能最好的虚拟化工具

UTM

UTM 是一个功能齐全的系统模拟器和虚拟机主机,适用于 iOS 和 macOS。它基于 QEMU。所以可以模拟x86、ARM64 和 RISC-V。

1
brew install --cask utm

Vulnhub

kali攻击机上官网下载iso文件导入即可
官网下载
然后到vulnhub查找自己想要练习的靶机,并下载ova
vulnhub vulnhub国内镜像

1
2
cd Downloads
tar xvf xxx.ova

解压完成后安装一下qemu

1
brew install qemu

转换成qcow2格式

1
qemu-img convert -O qcow2 xxx-disk001.vmdk xxx.qcow2

打开UTM,选择左上角➕,新建
选择模拟->其他->勾选跳过ISO启动->选择内存等->继续->填写名字->保存
在主页面能看到新建的机器->右击编辑->选择QEMU->取消勾选UEFI启动
右击IDE Drive删除
再点击驱动器下方的新建->导入->选择刚刚生成的qcow2文件即可

x86

在网上下载你想要模拟的x86系统的iso文件
打开UTM->左上角➕->选择模拟->linux(或者windows)->调整内存->驱动器大小->名字->完成
之后就可以正常打开使用了

VirtualBox

Virtualbox是一个开源的虚拟机工具
可以在官网下载安装
官网下载
Virtualbox更加适用于打靶机的情况,比如hackmyvm靶场中大部分的靶机都是适配Virtualbox的

Vmware Fusion

Vmware是除了PD以外非常优秀的虚拟机工具,如果觉得PD收费太高,那么可以选择Vmware
官网下载

4C21U-2KK9Q-M8130-4V2QH-CF810

Firefox

开源浏览器

1
brew install --cask firefox

Arc

非常好看的浏览器,垂直标签栏能更好的保存网站分类

1
brew install --cask arc
注意需要加入愿望单,获取名额

Electerm

支持ssh/sftp的客户端
支持github,gitee同步

1
brew install --cask electerm

Insomnia

一个用于GraphQL、REST、WebSockets、SSE和gRPC的开源、跨平台API客户端

1
brew install --cask insomnia

Vscode

1
brew install --cask visual-studio-code

官网下载

Miniconda

安装

下载安装包
官方链接 清华镜像

1
2
curl -O https://repo.anaconda.com/miniconda/Miniconda3-latest-MacOSX-arm64.sh
sh Miniconda3-latest-MacOSX-arm64.sh

在安装的最后会出现

1
2
Do you wish the installer to initialize Miniconda3 by running conda init? [yes|no]
[yes] >>>

输入yes
此时安装包会向当前 SHELL 的配置文件(~/.zshrc)中写入 conda 初始化语句
查看conda版本,检查是否安装成功

配置

取消激活base环境

因为我们之前已经配置了本地python环境,为了区分用途[pyenv管理的python用于python开发等,conda用于机器学习、深度学习等]
以上是我个人的习惯,如果只有单方面需求,使用对应的python配置方法即可
安装Miniconda 后,打开终端默认会激活 base 环境
所以通过命令取消掉

1
conda config --set auto_activate_base False

想要在终端激活conda中的虚拟环境的时候

1
conda activate base[虚拟环境名]

想要恢复默认激活base环境

1
conda config --set auto_activate_base True

conda-forge

conda-forge 是一个由社区维护的大量 Python 包的通道。 为 conda 增加 conda-forge 通道,可以安装更多的软件包

1
conda config --add channels conda-forge

设置通道优先级为 strict。当一个包同时位于 conda-forge 和 main 通道时,总是使用 conda-forge 提供的包

1
conda config --set channel_priority true

显示通道 URL

1
conda config --set show_channel_urls true

conda换源

1
2
conda config --add default_channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
conda config --set 'custom_channels.conda-forge' https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud

设置 conda 使用更快的 libmamab solver

1
2
conda install -n base conda-libmamba-solver
conda config --set solver libmamba

conda虚拟环境

创建虚拟环境

1
conda create -n py38 python=3.8

激活虚拟环境

1
conda activate py38

查看已创建的虚拟环境

1
conda env list 

退出当前环境

1
deactivate 环境名字

删除环境

1
conda remove -n 环境名字 --all

删除环境钟的某个包

1
conda remove -n 环境名字 包名 

TensorFlow

安装

1
2
3
conda install -c apple tensorflow-deps
pip install tensorflow-macos
pip install tensorflow-metal

测试

1
2
3
4
5
conda activate py38
python
import tensorflow as tf
print("tf version",tf.__version__)
print("tf gpu",tf.test.is_gpu_available())

Pytorch

安装

Anaconda

1
conda install pytorch torchvision torchaudio -c pytorch-nightly

pip

1
pip3 install --pre torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/nightly/cpu

测试

1
2
3
4
5
6
7
import torch
if torch.backends.mps.is_available():
mps_device = torch.device("mps")
x = torch.ones(1, device=mps_device)
print (x)
else:
print ("MPS device not found.")

The output should show:

1
tensor([1.], device='mps:0')

安装一些常用的库

1
pip install pandas matplotlib glob2 tqdm opencv-python scipy scikit-learn mlx

Adobe全家桶

https://www.yuque.com/yihulaojiu-gsfg9/zz2qv5/vixkf6




👀总访问 次 | 🥷总访客

本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。