Linux 系统设置 ¶
约 3129 个字 207 行代码 预计阅读时间 15 分钟
这一篇主要记录在配置 linux 时候遇到的一些问题和解决方案
VMware¶
【VMware Workstation 17】 VMware Workstation v17.x 永久许可证激活密钥:
MC60H-DWHD5-H80U9-6V85M-8280D
4A4RR-813DK-M81A9-4U35H-06KND
NZ4RR-FTK5H-H81C1-Q30QH-1V2LA
JU090-6039P-08409-8J0QH-2YR7F
4Y09U-AJK97-089Z0-A3054-83KLA
VMware 无法复制问题的解决 ¶
安装 VMware Tools 选项显示灰色的正确解决办法 ¶
1. 关闭虚拟机;
2. 在虚拟机设置分别设置 CD/DVD、CD/DVD2 和软盘为自动检测三个步骤;
3. 再重启虚拟机,灰色字即点亮。
4. 重新安装 vmware-tools
- 虚拟机无法打开
虚拟机使用的是此版本 VMware Workstation 不支持的硬件版本。 模块“Upgrade”启动失败。
打开.vmx
文件,修改virtualHW.version = "19"
一行至virtualHW.version = "16"
系统配置 ¶
换源 ¶
lsb_release -a
uname -a
vim /etc/apt/sources.list
注意换源的时候注意备份之前的
sudo cp /etc/apt/sources.list /etc/apt/sources.list.backup
20.04 版本的源
wget http://fishros.com/install -O fishros && bash fishros
ubuntu | 镜像站使用帮助 | 清华大学开源软件镜像站 | Tsinghua Open Source Mirror
# 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-updates main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-updates main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-backports main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-backports main restricted universe multiverse
deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-security main restricted universe multiverse
# deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-security main restricted universe multiverse
ubuntu 镜像 _ubuntu 下载地址 _ubuntu 安装教程 - 阿里巴巴开源镜像站
deb http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-proposed main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ focal-backports main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ focal main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ focal main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ focal-updates main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ focal-updates main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ focal-backports main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ focal-backports main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ focal-security main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ focal-security main restricted universe multiverse
deb https://mirrors.ustc.edu.cn/ubuntu/ focal-proposed main restricted universe multiverse
deb-src https://mirrors.ustc.edu.cn/ubuntu/ focal-proposed main restricted universe multiverse
deb https://mirrors.zju.edu.cn/ubuntu/ focal main restricted universe multiverse
deb https://mirrors.zju.edu.cn/ubuntu/ focal-updates main restricted universe multiverse
deb https://mirrors.zju.edu.cn/ubuntu/ focal-backports main restricted universe multiverse
deb https://mirrors.zju.edu.cn/ubuntu/ focal-security main restricted universe multiverse
sudo apt-get update
sudo apt-get upgrade
404
Ubuntu 换源后仍然报错:404、没有 Release 文件 _ 没有 release 文件所以禁用 -CSDN 博客 sudo apt-get update 命令出现没有Release文件问题解决_debian apt get update 没有release 文件-CSDN博客
另外的解决方法,拉取 https 问题
sudo apt install apt-transport-https
sudo apt install ca-certificates
中文系统 ¶
在系統中添加中文語言,既可以顯示中文,也可以輸入中文。
Fcitx:谷歌拼音、搜狗拼音、搜狗五笔拼音 IBus:智能拼音,五笔(86版) XIM:略(现在用的相对比较少)
sudo apt-get update
sudo apt-get install fcitx-bin
sudo apt-get install fcitx-table
sudo apt-get install fcitx-table-all
蓝牙操作 ¶
打开系统蓝牙
systemctl status bluetooth
sudo service bluetooth start
sudo /etc/init.d/bluetooth restart
bluetoothctl
输入以下命令
list
scan on
devices
power on
agent on
default-agent
pair yourDeviceMAC
其中 pair 后面跟上扫描出的键盘的 MAC 地址,根据提示输入密码,显示配对成功,此时,在桌面的设置界面“我的设备”中可以看到蓝牙中键盘为已配对状态,但此时可能依然无法成功连接。
查看系统信息 ¶
查看 cpu 信息
cat /proc/cpuinfo
查看系统架构
uname - a
sudo !4
更改密码 ¶
passwd
sudo passwd username
更改 root 密码
sudo passwd root
PS1 修改 ¶
vim ~/.bashrc
打开文件夹 ¶
sudo apt-get install nautilus
nautilus .
截图 ¶
- 使用 screen
- 使用键盘上面的 print screen
通用软件 ¶
apt-get install git
apt-get install vim
- tldr:简易版 man 手册
- fd-find:人性化的 find
- rg(ripgrep):快速搜索
- fzf : 模糊搜索
安装软件的一些常见命令 ¶
sudo dpkg -i xxx.deb
tar -xzvf xxxx.tar.gz
chorme¶
sudo apt install chromium-browser
chromium-browser --version
terminator¶
sudo apt-get install terminator
设置为默认终端
开启 or 关闭快捷键 | 作用 |
---|---|
Ctrl + Shift + O |
水平分割终端(分成上下两个窗口) |
Ctrl + Shift + E |
垂直分割终端(分成左右两个窗口) |
Ctrl + Shift + W |
关闭当前终端 |
Ctrl + Shift + X |
放大(还原)当前终端 |
Ctrl + Shift + G |
清屏 |
Ctrl + Shift + Q |
关闭所有终端(退出程序) |
Ctrl + Shift + T |
开一个新终端 |
快捷键 | 作用 |
---|---|
alt+方向键 or ctrl+TAB |
切换窗口 |
ctrl shift + |
加字号 |
F11 |
全屏 |
super(win) + g |
group, 将不同窗口打包,指令可以广播 |
Super+Shift+g |
取消分组 |
ctrl+shift+f |
搜索命令 |
Ctrl+Shift+c |
复制指令 |
Ctrl+Shift+v |
粘贴指令 |
Ctrl+Shift+X |
将分割的某一个窗口放大至全屏使用 |
Ctrl+Shift+Z |
从放大至全屏的某一窗口回到多窗格界面 |
vscode¶
可以使用 fishros 进行安装
- 用内嵌的浏览器搜索 vscode,下载 vscode 的 .deb 格式的安装包
- 在终端中输入
sudo dpkg -i code_1.72.1-1665423861_amd64.deb
进行解压包 - 在 vscode 软件上点击鼠标右键,点击
Edit Application
- 有个 Command 选项,输入
/usr/share/code/code --unity-launch %F --no-sandbox
即可,再点击保存。
SSH¶
sudo apt install net-tools
ifconfig
sudo apt-get install openssh-server
ssh user@remote
ssh -X ldz@192.168.0.1 # 带图形化界面
ssh -p 1234 ldz@192.168.0.1 # 指定端口
vim /etc/ssh/sshd_config
- 第 33 行 : 将 PermitRootLogin without-password(第 33 行) 改为 PermitRootLogin yes 并去掉前面的注释符号(#)
- 第 57 行 :#PasswordAuthentication yes( 第 57 行 ) 的注释去掉,如果是 no 就改为 yes
- 保存
service ssh restart
验证安装
service ssh status

开机自启动
update-rc.d ssh enable
配置免密登陆
ssh-keygen -t rsa
passphrase
,不设置则为空,这里看心情吧,如果不放心私钥的安全可以设置一下)
执行结束以后会在/home/当前用户
目录下生成一个 .ssh
文件夹 , 其中包含私钥文件 id_rsa
和公钥文件 id_rsa.pub
。
ssh-copy-id 会将公钥写到远程主机的 ~/.ssh/authorized_key
文件中
ssh-copy-id name@ip
注意,windows 的 cmd 中不能直接执行 ssh-copy-id 命令,可以使用 git bash 或者其他 linux 终端工具
当出现
Number of key(s) added: 1 Now try logging into the machine, with: "ssh 'HAHA@127.0.0.1'" and check to make sure that only the key(s) you wanted were added.
说明配置成功!
深入理解 ~/.ssh/config 和 /etc/ssh/ssh_config 配置文件 - 百度开发者中心
错误与解决方法
警告:远程主机标识已更改!
此报错是由于远程的主机的公钥发生了变化导致的。 ssh 服务是通过公钥和私钥来进行连接的,它会把每个曾经访问过计算机或服务器的公钥(public key
ssh-keygen -R XX.XX.XX.XX
ssh -6 user@ipv6
conda¶
清华镜像地址:https://mirrors.tuna.tsinghua.edu.cn/anaconda/miniconda/
按照你系统的架构选择合适的下载
uname -m
wget https://mirrors.tuna.tsinghua.edu.cn/anaconda/miniconda/Miniconda3-py39_24.7.1-0-Linux-aarch64.sh
下载后执行得到的文件
bash Miniconda3-py39_24.7.1-0-Linux-aarch64.sh
一路点 enter 和 yes,最后重启终端,得到带有(base)
的提示符,说明安装成功
如果出现了错误,有可能是因为使用的是‵sh` 的原因。
进入
vi Miniconda3-py39_24.7.1-0-Linux-aarch64.sh
把第一行从 ‵#!/bin/sh` 改成
#!/bin/bash
node¶
使用 fishros 进行安装
npm install --global yarn
yarn --version
坚果云 ¶
参考帖子 记录 Ubuntu22.04 安装坚果云 感谢
wget https://www.jianguoyun.com/static/exe/installer/nutstore_linux_src_installer.tar.gz
sudo tar zxf nutstore_linux_src_installer.tar.gz
cd nutstore_linux_src_installer
sudo ./update-toolchain.sh
这里我报错了,少一个库
没搞明白,就全装了
sudo aptitude install libnautilus-extension4
sudo aptitude install libnautilus-extension1a
sudo aptitude install libnautilus-extension-dev
sudo ./configure
sudo make
sudo make install
./runtime_bootstrap
直接按 1
webDAV 的使用
nutstore login
nutstore logout
nutstore list sync
nutstore sync <文件或文件夹路径>
nutstore unsync <文件或文件夹路径>
nutstore status
nutstore upload <文件或文件夹路径>
nutstore download <文件或文件夹路径>
nutstore delete <文件或文件夹路径>
nutstore mkdir <文件夹路径>
nutstore info <文件或文件夹路径>
nutstore account
nutstore help
wechat¶
typora¶
参考 Ubuntu22.04 环境下使用 Typora_typora ubuntu-CSDN 博客 WittonBell/typoraCracker: A patch and keygen tools for typora.
wget -qO - https://typora.io/linux/public-key.asc | sudo tee /etc/apt/trusted.gpg.d/typora.asc
# add Typora's repository
sudo add-apt-repository 'deb https://typora.io/linux ./'
sudo apt update
# install typora
sudo apt install typora
我下载的二进制文件,没有用这个
picgo¶
Molunerfinn/PicGoA simple & beautiful tool for pictures uploading built by vue-cli-electron-builder
cd Picgo
```shell
npm i @vue/cli-service
ubuntu PicGo 安装和腾讯云图床配置,超详细!!!-CSDN 博客
todesk¶
ToDesk 远程桌面软件 - 免费安全流畅的远程连接电脑手机
- arm download
sudo apt-get install libappindicator3-1
sudo apt-get install ./todesk-v4.7.2.0-arm64.deb
todesk
jupyter¶
pip install jupyter jupyterlab
sudo reboot
jupyter lab --generate-config
设置开机启动
sudo vim /etc/systemd/system/jupyter-lab.service
[Unit]
Description=Jupyter Lab Server
After=network.target
[Service]
Type=simple
User=usslab
WorkingDirectory=/home/<name>/
ExecStart=/<path>/jupyter-lab --port 8888 --no-browser
[Install]
WantedBy=multi-user.target
sudo systemctl enable jupyter.service
sudo systemctl start jupyter.service
sudo systemctl status jupyter.service
访问 localhost:8888
即可看到,如果有公网的 ip 也可以访问到
新立得 ¶
sudo apt install -y synaptic
nano¶
常见操作
操作 | 快捷键 |
---|---|
保存 | Ctrl + O |
退出 | Ctrl + X |
删除 | Ctrl + K |
网络 ¶
VPN¶
uname -a
如果输出包含 x86_64 使用下面命令安装 :
wget https://github.com/clashdownload/Clash_for_Windows/releases/download/0.20.39/Clash.for.Windows-0.20.39-x64-linux.tar.gz
如果输出包含 aarch64 使用下面命令安装 :
wget https://github.com/clashdownload/Clash_for_Windows/releases/download/0.20.39/Clash.for.Windows-0.20.39-arm64-linux.tar.gz
如果 wget 下载不了,到 Windows 把这两个链接输进去下载好,再用 u 盘拷贝到你的 Linux 系统也是一样的。
找到你下载的安装包,解压提取,打开文件夹,里面有一个 cfw
文件,双击就是 Clash 了。如果不行,请在该文件夹内打开终端,使用./cfw
命令执行它。
进入网络设置,把 proxy 改成这个样子
export http_proxy=http://your_proxy_server:your_proxy_port
export https_proxy=http://your_proxy_server:your_proxy_port
连接 wifi ¶
sudo vim /etc/netplan/50-cloud-init.yaml
network:
ethernets:
enp2s0:
dhcp4: true
wifis:
wlan0:
dhcp4: true
access-points:
"<ssid>":
password: "<passowrd>"
version: 2
设置好之后退出,重启网络
sudo netplan apply
1. 该编辑文件中不能出现制表符,要不然会有问题;在执行后面的命令会报错;
2. 改文件的编辑必须严格按照格式来,是分层的,用空格来退格
启动 netplan-wpa-wlan0.sevice 失败:未找到单元 netplan-wpa-wlan0.service - ubuntu
注意事项
出现类似错误:line8 column 6:cloud not find expected
提示是冒号:后面没加空格
出现类似错误:netplan found character that cannot start any token
,提示是没有按五个层次写配置文档,一定要下一层比上一层多空一格或以上。
出现类似错误: Invalid YAML: inconsistent indentation:
# 缩进不对,就是每一层没有严格缩进
sudo apt install net-tools wireless-tools network-manager
校网验证 ¶
net2.zju.edu.cn
QSCTech/zjunet: Command Line Scripts for ZJU (VPN / WLAN / DNS)
w3m 之类的命令行浏览器试试
比较简单的 ubuntu 18.04 有线连接校园网的方法 - CC98 论坛
路由 ¶
内网穿透 ¶
校园网内登录寝室电脑远程桌面和 ssh 连接 WSL - 知乎 干货 | 在校园网中用ssh连接宿舍电脑
压缩 ¶
zip -r examples.zip examples # examples为目录
unzip name.zip
unzip name.zip -d 当前目录
tar xvf name.tar
复制 scp ¶
关于 scp 传输文件踩过的坑 ( 最全 !linux 与 windows 相互传输文件 , 连接失败 , 免密登录 , 连接超时 ) - 知乎
基本语法 ¶
scp [可选参数] 源文件 目标文件
# 复制文件
scp local_file remote_username@remote_ip:remote_folder
scp local_file remote_username@remote_ip:remote_file
# 复制目录
scp -r local_folder remote_username@remote_ip:remote_folder
-r
: 递归复制整个目录-P port
: 指定远程主机的端口号-p
: 保留原文件的修改时间和访问权限-q
: 不显示传输进度条-C
: 允许压缩-v
: 详细方式显示输出
示例 ¶
# 复制本地文件到远程服务器
scp file.txt user@192.168.1.100:/home/user/
# 复制远程文件到本地
scp user@192.168.1.100:/home/user/file.txt ./
# 复制整个目录
scp -r local_folder user@192.168.1.100:/home/user/
# 使用特定端口
scp -P 2222 file.txt user@192.168.1.100:/home/user/
局域网 ¶
apt-get install -y cifs-utils
windows 做服务器 ¶
windows 作客户端 ¶
如果你是没有打开 smb 服务,那么继续往下看,打开控制面板进入
点击“启用或关闭 windows 功能”
把 smb 的几个都点开,然后点击确定,立即重启
然后直接在 explorer 中输入 ip 地址即可。
注意输入的格式:
- 不是smb://156.26.51.55
- 而是应该直接双斜杠+ip地址
,如果有具体的共享的文件夹的话就把路径跟在后面。不需要加smb前缀,也不能用 //
,要用 \\
,然后输入对应的账户和密码就完事了。
linux 做服务器——samba¶
sudo apt install samba
systemctl start smbd.service
systemctl enable smbd.service
systemctl start nmbd.service
systemctl enable nmbd.service
systemctl status smbd.service
systemctl status nmbd.service
net usershare add "共享名" /home/Desktop/文件名 "备注名" Everyone:R guest_ok=y
参数 | 含义 |
---|---|
Everyone:R | 设置 Everyone 用户为只读权限 |
Everyone:F | 设置 Everyone 用户为可写权限 |
Everyone:D | 设置 Everyone 用户为拒绝权限 |
guest_ok=y | 允许匿名访问 |
guest_ok=n | 不允许匿名访问 |
sudo apt install smbclient
smbclinet //ip/name -U xxx
注意权限问题
-
设置了当前共享文件夹有可写权限的话,那么需要增加当前文件夹的 other 的写权限
-
设置了匿名访问的话需要设置当前目录以及这个目录的父目录的 other 的可执行权限
不然的话,不管使用命令访问还是使用图形界面访问都是会导致报错没有权限的问题
linux 作客户端——挂载文件系统 ¶
smbclient -L 192.168.1.70 -U lab
Enter lab's password: #输入密码,不回显
Domain=[WIN7] OS=[Windows 7] Server=[Windows 7]
#共享点名称# #类型# #描述#
Sharename Type Comment
--------- ---- -------
ADMIN$ Disk 远程管理
Share Disk
C$ Disk 默认共享
Connection to 192.168.1.70 failed (Error NT_STATUS_RESOURCE_NAME_NOT_FOUND)
NetBIOS over TCP disabled -- no workgroup available #可能会出现一些错误警告,不过可以列出的话就不用管
将 //<ip>/test
挂载到 /mnt/
目录上,如果不需要认证,则无需指定用户名和密码。
sudo mount -t cifs //<ip>/test /mnt/test_shared -o dir_mode=0777,file_mode=0777
linux mount 挂载文件夹设置权限 - 秋声梧叶 - 博客园
开机自动挂载(修改 /etc/fstab
文件
将//192.168.xx.xx/sharedir
挂载到/mnt/cifs
上,并指定了用户名和密码 ; 如果不需要认证,可以不指定用户名和密码。
//192.168.3.4/sharedir /mnt/cifs cifs username=demo,password=demo 0 0
然后可以把/mnt/folder
直接当作 linux 中的文件夹进行文件的操作
umount /dev/hda2
pywin32 库没有安装好 Python 如何通过 Python 访问 Windows 网络上的共享文件夹 | 极客教程
用户设置 ¶
新建用户 ¶
sudo passwd root
sudo adduser username
sudo userdel -r username
sudo grep bash /etc/passwd
用户权限 ¶
sudo usermod -a -G adm username
sudo usermod -a -G sudo username
Q & A¶
sh: 0: getcwd() failed: No such file or directory
一般来说是因为你 cd 到了某个目录之后 rm 了这个目录,这时去执行某些 service 脚本的时候就会报 get cwd 错误。 只需要 cd 到任何一个实际存在的目录下再执行就好了
Could not load the Qt platform plugin “xcb“
经过一番深入的探索,最终找到了一个有效的解决方案,即通过以下命令安装所有与 libxcb 相关的库:
sudo apt install libxcb-*
Java¶
.jar
文件打开方式 ¶
1. 双击打开
- 命令行打开 x
java -jar xxx.jar
java -jar xxx.jar &
nohup java -jar test_jar-1.0-SNAPSHOT.jar &
nohup 意思是不挂断运行命令,当账户退出或终端关闭时,程序仍然运行。
当用 nohup 命令运行 jar 包时,缺省情况下该应用的所有输出被重定向到 nohup.out 的文件中,除非另外指定了输出文件。