A. 下载iso文件,制作启动U盘
aria2c -x 4 -s 12 "https://mirrors.tuna.tsinghua.edu.cn/ubuntu-releases/24.04/ubuntu-24.04-desktop-amd64.iso" "https://mirrors.163.com/ubuntu-releases/24.04/ubuntu-24.04-desktop-amd64.iso" "https://mirrors.zju.edu.cn/ubuntu-releases/24.04/ubuntu-24.04-desktop-amd64.iso"
安装启动盘制作软件rufus230Please respect copyright.PENANAFySq2vV5c0
https://github.com/pbatard/rufus/releases/download/v4.5/rufus-4.5.exe230Please respect copyright.PENANA6Km1XoB9Ib
U盘的容量必须大于7G,在rufus中选择U盘, iso文件,MBR分区类型,NTFS文件格式,点击开始,选择以ISO镜像模式写入。
官方参考资料:230Please respect copyright.PENANATcKwvASZpr
https://ubuntu.com/tutorials/create-a-usb-stick-on-windows#1-overview
230Please respect copyright.PENANAiniLQvsOb1
B. 安装ubuntu
从U盘启动电脑230Please respect copyright.PENANAA3yqK1krhk
try or install ubuntu230Please respect copyright.PENANAwOhmOOHHHm
choose your language: english230Please respect copyright.PENANAc4cdFlOmai
accessibility in ubuntu: next230Please respect copyright.PENANABtOGo9f1lZ
select your keyboard layout: english(US)230Please respect copyright.PENANAL6qWPLPlzb
connect to the internet: connect to a wi-fi network230Please respect copyright.PENANAfbOb4Xzq8G
install ubuntu230Please respect copyright.PENANAe2eZ1f3kEO
interactive installation230Please respect copyright.PENANAZh7vlByngx
extended selection230Please respect copyright.PENANArNP8f7najs
check: install third-party software for graphics and wi-fi hardware230Please respect copyright.PENANAwUdKvVtBzQ
check: download and install support for additional media formats230Please respect copyright.PENANAxNWkGxaBQ4
erase disk and install ubuntu230Please respect copyright.PENANA1CLvyi0DTd
choose sdb230Please respect copyright.PENANATUpO0PDge8
your name: buda 230Please respect copyright.PENANADJf0sA1TfT
your computer's name: vultr230Please respect copyright.PENANA5GrdFHFe0G
your username: buda 230Please respect copyright.PENANAqHFQ2tS1Q9
timezone: shanghai230Please respect copyright.PENANApn859VU9uu
install230Please respect copyright.PENANA4HwlFdGK99
restart now230Please respect copyright.PENANAMWTkbLJU8p
拔出U盘, 按enter键
230Please respect copyright.PENANAq4Gvtt8XxI
C. 初始化設置
点击左下角ubuntu图标进入开始菜单,将terminal pin to dash230Please respect copyright.PENANA41XioEBdLu
# sudo apt update && sudo apt upgrade -y
安装常用工具, 開發编译环境230Please respect copyright.PENANAE7OVDy9mP6
# sudo apt install nano net-tools build-essential gdb git glibc-source unzip openssl libssl-dev libzip-dev aria2 lsof230Please respect copyright.PENANACZaHyaTMb0
# cd /usr/src/glibc230Please respect copyright.PENANAJeMZ1XkQdK
# tar xvf glibc-2.39.tar.xz230Please respect copyright.PENANAt8z63xqnAn
在gdb中指定glibc的源代碼:230Please respect copyright.PENANAFlZ9DZv5P4
gdb> directory /usr/src/glibc/glibc-2.39
將用戶加入root組230Please respect copyright.PENANA7rbuSnYBSq
# usermod -a -G root buda230Please respect copyright.PENANAIH20FF4dPB
# groups buda
黑屏时间设置:15分钟无操作后黑屏230Please respect copyright.PENANAyqzmWtVql4
点左下角进入开始菜单, search "power", click " (settings) Power" blank screen: 15 mins
apt search rethinkdb230Please respect copyright.PENANAvXxPSNPGDn
apt show rethinkdb230Please respect copyright.PENANAja2ZWOl5zR
apt remove rethinkdb230Please respect copyright.PENANARFnksTpGdg
cd /etc/apt/sources.list.d/ #进入PPA源文件所在目录230Please respect copyright.PENANANIJxGvVVbw
sudo rm XXX.list #删除一个PPA源list文件230Please respect copyright.PENANADWCDNA0ijT
sudo apt update
230Please respect copyright.PENANANY3yisBBpu
D. 安裝中文輸入法rime
# sudo apt install ibus-rime rime-data-luna-pinyin230Please respect copyright.PENANADUhfIXXk1N
点击左下角进入开始菜单,选择settings, keyboard,+ add input source...,others, chinese(rime)230Please respect copyright.PENANAFINUcDHzCd
点击chinese(rime)右边的小竖点,move up,将chinese(rime)移到Input Sources列表的第一行230Please respect copyright.PENANAJG0bBP5o6o
编辑配置文件230Please respect copyright.PENANA3BjRXsNxA9
一次显示9个候选词、模糊音230Please respect copyright.PENANAqNGj5IXU8f
# nano ~/.config/ibus/rime/default.custom.yaml230Please respect copyright.PENANA0Umt1AhyKV
---------default.custom.yaml的内容如下-----------230Please respect copyright.PENANAlFHrqQnJCl
patch:230Please respect copyright.PENANANTQ8B0Aj2l
"menu/page_size": 9
'speller/algebra':230Please respect copyright.PENANAJapY6KDEmk
- erase/^xx$/ # 第一行保留
# 模糊音定義230Please respect copyright.PENANA6IcpHbi2iV
- derive/^([zcs])h/$1/ # zh, ch, sh => z, c, s230Please respect copyright.PENANADPiA4yOYap
- derive/^([zcs])([^h])/$1h$2/ # z, c, s => zh, ch, sh
- derive/^n/l/ # n => l230Please respect copyright.PENANAu0CbbVkNEq
- derive/^l/n/ # l => n
- derive/([ei])n$/$1ng/ # en => eng, in => ing230Please respect copyright.PENANAGXoo6kkiNy
- derive/([ei])ng$/$1n/ # eng => en, ing => in230Please respect copyright.PENANA4WBbplXI7n
--------------------------------------------------------------230Please respect copyright.PENANA57ZIuz1hUf
为了使模糊音生效,拷贝配置文件230Please respect copyright.PENANAWTsOEKn8Ny
# cp default.custom.yaml luna_pinyin_simp.custom.yaml && cp default.custom.yaml luna_pinyin.custom.yaml230Please respect copyright.PENANA8iFPQ6N1VD
部署rime输入法:230Please respect copyright.PENANAzlQ6ieHcbY
# ibus restart230Please respect copyright.PENANA4FMzMvvucz
# ibus engine rime230Please respect copyright.PENANA8uSxHLfawV
在输入时按F4或者Ctrl+\`可弹出菜单,选择菜单上的数字可进行简繁输入转换230Please respect copyright.PENANAdRSnGhAjlJ
按shift键进行中英输入转换230Please respect copyright.PENANAI9bhoUZQM7
有时候输入法失效时,可以重新运行一下部署rime的命令
参考资料:230Please respect copyright.PENANAaApt7959az
CustomizationGuide · rime/home Wiki · GitHub230Please respect copyright.PENANArFiNUceKgZ
https://www.cnblogs.com/keatonlao/p/12983158.html
230Please respect copyright.PENANAvM0YjYacip
E. 安裝重要軟件
从code官网下载deb包,然后安装230Please respect copyright.PENANAWfk4n3FH3k
# sudo apt install ./code_1.90.0-1717531825_amd64.deb
gimp图片编辑器, chromium浏览器230Please respect copyright.PENANAabAwdIJvDp
从app center安装
墙内安装node/npm230Please respect copyright.PENANAvRPob1N655
https://nodejs.org/en/ 下载LTS版本230Please respect copyright.PENANA0vAyAyo9gn
# cd ~/Downloads230Please respect copyright.PENANAVUSXG7xHd4
# wget https://nodejs.org/dist/v20.15.0/node-v20.15.0-linux-x64.tar.xz230Please respect copyright.PENANAzA0i23K27w
# tar --strip-components 1 -xvf node-v20.15.0-linux-x64.tar.xz -C /usr/local230Please respect copyright.PENANAlhl08dqEGz
# node -v230Please respect copyright.PENANAR1zLRBnVv4
# npm install npm@latest -g230Please respect copyright.PENANAwrhCv0zRmS
# npm config get registry230Please respect copyright.PENANAKgJxze54eN
# npm config set registry https://registry.npmmirror.com230Please respect copyright.PENANAAi9MkbRPTN
如果想用回官方registry:230Please respect copyright.PENANA8r9Vf8dF33
# npm config set registry https://registry.npmjs.org
墙外安装node/npm230Please respect copyright.PENANAaTuT0FSnpj
# curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash230Please respect copyright.PENANAq9dkYj0Tod
# export NVM_DIR="$([ -z "${XDG_CONFIG_HOME-}" ] && printf %s "${HOME}/.nvm" || printf %s "${XDG_CONFIG_HOME}/nvm")"230Please respect copyright.PENANA8brAr4OWwM
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm230Please respect copyright.PENANA1C66yK5JJU
# nvm install --lts230Please respect copyright.PENANAdD8wf4DADR
# npm install npm@latest -g
安装230Please respect copyright.PENANA1rSy8747GQ
npm i package_name230Please respect copyright.PENANAq7BYSDNPar
项目更新230Please respect copyright.PENANA8UVuIorWW0
npm update
F. 配置服務器連接
1. ssh免密登录Linux服务器
在客户端检查是否存在证书230Please respect copyright.PENANA2EQQV5OJEM
# ls -al ~/.ssh/id_*.pub230Please respect copyright.PENANAZ5jPPuiwvS
如果不存在,生成证书230Please respect copyright.PENANAT8GjFbaNrx
# ssh-keygen -t rsa -b 4096 -C "[email protected]"230Please respect copyright.PENANAg1VFxXsEND
生成证书的过程中使用空白的 passphrase230Please respect copyright.PENANAgfMCMg8amV
将证书拷贝到服务器230Please respect copyright.PENANAKfRhuMYHzQ
# ssh-copy-id root@server
2. 从windows登录linux
如果是从windows系统连接ubuntu,可以安装putty作为访问服务器的终端。 230Please respect copyright.PENANAdGLfvNKmLG
下载putty: https://www.putty.org/
putty免密登录Linux服务器的方法
在putty的安装目录找到puttygen.exe,运行生成ssl私钥和公钥,保存私钥到文件,复制公钥。230Please respect copyright.PENANAzYh6U9BJxF
在putty的 connection/data 设置登录用户名为root,connection/ssh/auth/credentials中设置私钥的文件,保存设置。230Please respect copyright.PENANACYum2m5TwY
将公钥写入服务器的 ~/.ssh/authorized_keys 文件中, reboot ubuntu使修改生效230Please respect copyright.PENANAYciNcnaAaw
# nano ~/.ssh/authorized_keys230Please respect copyright.PENANAyrE4nkv0vB
# reboot
如果想保持putty与服务器的连接保持不断线,可以在Putty中设置每隔一定的时间发一次心跳消息。
3. 保持与服务器的ssh连接不断线的方法
ssh连接服务器时如果容易断线,可以修改服务器sshd的设置,保持ssh连接不断线:230Please respect copyright.PENANAjlbasnmnJe
# nano /etc/ssh/sshd_config230Please respect copyright.PENANAiCArGzVTw9
ClientAliveInterval 60 # 表示每60秒发送一次请求,从而保持连接不断线。230Please respect copyright.PENANA4laiq6Gah0
ClientAliveCountMax 10 # 表示服务器发出请求后客户端没有响应的次数达到10次,就自动断开连接230Please respect copyright.PENANAHpfn9E7kS0
# systemctl restart sshd
4. 從ubuntu remote windows用remmina
從app中心安裝remmina230Please respect copyright.PENANAe5PrCVCVCI
新建connection到windows
Basic標籤230Please respect copyright.PENANAcmahFcvGlS
server: ip/domain.name, username: Administrator, password: ***230Please respect copyright.PENANAbvdDXjVzje
share folder中填寫ubuntu中的路徑,則可從windows訪問230Please respect copyright.PENANARRpUASXm2w
resolution中可設置合適的屏幕大小
Advanced標籤230Please respect copyright.PENANAcDHuv6GBpv
output audio: 選擇local,則是windows發出的聲音
windows server 默認是麼有開啓聲音服務的,要設置一下才能發出聲音:230Please respect copyright.PENANAe6993fOmLH
https://cloud.tencent.com/developer/article/1894933
G. 網絡安全設置
防火墙设置230Please respect copyright.PENANAecOQMWcDdq
# ufw allow 22230Please respect copyright.PENANANeVB5PCPon
# ufw allow 80230Please respect copyright.PENANAV8I5PQKfLj
# ufw allow 443230Please respect copyright.PENANAK6o5T7G9p7
# ufw enable230Please respect copyright.PENANAMrafDrclEn
# ufw status
H. 常用命令
创建软链接230Please respect copyright.PENANAYQNaQNZZGc
# sudo ln -s 源文件 目标文件
修改密码230Please respect copyright.PENANAyEhLITQ1jm
# passwd root230Please respect copyright.PENANAR4yX8S3V1K
# usermod -a -G groupA username230Please respect copyright.PENANAQIOsutjb7c
# groups username
修改hostname230Please respect copyright.PENANAvQ63jLPc9a
# hostnamectl set-hostname xiaoyue
查看cpu230Please respect copyright.PENANARMRXLab3W1
# lscpu
查看内存230Please respect copyright.PENANAweDWLRZ6CA
# free -h230Please respect copyright.PENANANTQcknyncs
# top
釋放被buff/cache占用的内存230Please respect copyright.PENANAgubRghaSi8
# sync; echo 3 > /proc/sys/vm/drop_caches # 清空页面缓存230Please respect copyright.PENANAEoypgAa5Y3
# sync; echo 1 > /proc/sys/vm/drop_caches # 清空目录项缓存230Please respect copyright.PENANAx7r1FKr6L4
# sync; echo 2 > /proc/sys/vm/drop_caches # 清空SLAB缓存230Please respect copyright.PENANAZtvcZNsNCL
# sync; echo 3 > /proc/sys/vm/drop_caches # 清空所有缓存230Please respect copyright.PENANAld1YeUMIq6
用sudo执行:230Please respect copyright.PENANA7tc9HHTkKx
# sudo sh -c "echo 3 > /proc/sys/vm/drop_caches"
230Please respect copyright.PENANApsjMzre29r
查看硬盘230Please respect copyright.PENANAJtyqAx8IxD
# sudo lshw -c disk230Please respect copyright.PENANADOIdMzFxxX
查看分区230Please respect copyright.PENANA0HxoBiOEGI
# sudo fdisk -l230Please respect copyright.PENANANl9LtbMZtF
查看磁盘剩余空间230Please respect copyright.PENANAaDbZ72Fit7
# df -hl
文件壓縮和打包230Please respect copyright.PENANAdXUQk6oLnN
將在windows上壓縮出的zip文件傳遞給Linux系統解壓縮時,文件名會出現亂碼,這是因爲在Windows上文件名的編碼取決於「控制面板-時鐘和區域-區域-管理-非unicode程序語言」中的設置,中國大陸默認是簡體中文,gb2312(cp936)編碼. 而在Linux系統上則統一是utf-8編碼。230Please respect copyright.PENANAZvDn36uLBw
如何解決?最簡單的辦法是在解壓縮的時候說明一下原來的編碼,這樣壓縮工具就會識別出原來的文件名而自動將文件名轉爲utf8編碼, 命令如下:230Please respect copyright.PENANAhkAMdclOEw
unzip -O cp936 temp.zip
改變文件權限230Please respect copyright.PENANAtDLaVtXPOl
# chmod g+w <文件/目录路径>230Please respect copyright.PENANAl4VIHyy7kl
# chmod -R g+w /path/to/directory230Please respect copyright.PENANANVJwyOlKVl
设置所有者为 rwx,组为 r-x,其他用户为 r--:230Please respect copyright.PENANAblpfMgxzuK
# chmod 755 <文件/目录路径>
u:所有者(user)。230Please respect copyright.PENANAV13n6vjiq3
g:所属组(group)。230Please respect copyright.PENANASrRZxH9LVc
o:其他用户(others)。230Please respect copyright.PENANAdLDlsvmc4B
a:所有用户(u、g、o)。230Please respect copyright.PENANAyOvRlv7Cx3
操作符:230Please respect copyright.PENANAtX9GfV09U9
+:添加权限。230Please respect copyright.PENANATqA1fp6l2K
-:移除权限。230Please respect copyright.PENANABmVdkmVetk
=:设置权限。230Please respect copyright.PENANAOhGqvTVHcs
權限:230Please respect copyright.PENANAo0QlXOulil
r(读) = 4230Please respect copyright.PENANALLhDTLLk9Y
w(写) = 2230Please respect copyright.PENANAIB9CA3ceCr
x(执行) = 1230Please respect copyright.PENANAgV1dd8Vi7R
-(无权限) = 0230Please respect copyright.PENANAns5cyaNXLE
通过加法得到最终的权限值。例如:230Please respect copyright.PENANAm1oAOrvG1g
7 = rwx(4 + 2 + 1)230Please respect copyright.PENANAL1xQUJhIsK
5 = r-x(4 + 1)230Please respect copyright.PENANADZid0Q07lZ
6 = rw-(4 + 2)230Please respect copyright.PENANASj4XsR6Jab
230Please respect copyright.PENANAcb2Iuffepk
I. 创建自定义命令
# nano ~/.bash_aliases230Please respect copyright.PENANAV9eUHtf1H5
添加alias, 比如:230Please respect copyright.PENANA1CrecWlIHS
alias gitbuda='gitbuda() { git add -A; git commit -m "$1"; git push; }; gitbuda'230Please respect copyright.PENANAdenzvTbDAA
其中$1表示命令的第一个参数,这样就可以用 gitbuda "commit message"来运行命令230Please respect copyright.PENANA2pPrlLblLh
# source ~/.bash_aliases
Section X. Thanks
https://ubuntu.com
230Please respect copyright.PENANAkjcBVDHMH1
Section Y. Contacts Me
If you found any errors or have any suggestions for this article, please let me know, my wechat: si_jinmin, my email: [email protected]230Please respect copyright.PENANA4F6Qo5q89h
如果您发现本文有任何错误,或者对本文有好的建议,欢迎与我联系探讨,我的微信: si_jinmin, 我的email: [email protected]
如果您對C/C++ programming, Linux, website development, Vue, Git, vscode感興趣,邀請您加入「Linux/C/C++ Website Development」微信群,請加我的微信(si_jinmin)以便拉您进群。
ns216.73.216.146da2