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"
安装启动盘制作软件rufus236Please respect copyright.PENANA1SZgjNgzEB
https://github.com/pbatard/rufus/releases/download/v4.5/rufus-4.5.exe236Please respect copyright.PENANAcjSqa9ENJl
U盘的容量必须大于7G,在rufus中选择U盘, iso文件,MBR分区类型,NTFS文件格式,点击开始,选择以ISO镜像模式写入。
官方参考资料:236Please respect copyright.PENANAUsaajpMhNd
https://ubuntu.com/tutorials/create-a-usb-stick-on-windows#1-overview
236Please respect copyright.PENANAvGVI5q8uQN
B. 安装ubuntu
从U盘启动电脑236Please respect copyright.PENANAl01WL5N1Gl
try or install ubuntu236Please respect copyright.PENANAcAoWy36AD5
choose your language: english236Please respect copyright.PENANAsVSeX6Khun
accessibility in ubuntu: next236Please respect copyright.PENANAl3vCtnZ8WE
select your keyboard layout: english(US)236Please respect copyright.PENANAhJBLupR4nS
connect to the internet: connect to a wi-fi network236Please respect copyright.PENANAnL0Iclyu36
install ubuntu236Please respect copyright.PENANAxXTnefsUFq
interactive installation236Please respect copyright.PENANAHYnPevJIgo
extended selection236Please respect copyright.PENANAPYIXZXuAPa
check: install third-party software for graphics and wi-fi hardware236Please respect copyright.PENANABjEFgXyvFF
check: download and install support for additional media formats236Please respect copyright.PENANASYsZierded
erase disk and install ubuntu236Please respect copyright.PENANAtUpsvP1a3X
choose sdb236Please respect copyright.PENANAdKJCKSQX0U
your name: buda 236Please respect copyright.PENANANQYyV2JyYg
your computer's name: vultr236Please respect copyright.PENANA6xNg4QeQPJ
your username: buda 236Please respect copyright.PENANAZWE5GNyzHS
timezone: shanghai236Please respect copyright.PENANAgjw52EVyuI
install236Please respect copyright.PENANA8LuUrOGOKG
restart now236Please respect copyright.PENANAn24iitFaBW
拔出U盘, 按enter键
236Please respect copyright.PENANA7baFl5nm2R
C. 初始化設置
点击左下角ubuntu图标进入开始菜单,将terminal pin to dash236Please respect copyright.PENANATsczfC1SOO
# sudo apt update && sudo apt upgrade -y
安装常用工具, 開發编译环境236Please respect copyright.PENANA7Ww1xKcMLm
# sudo apt install nano net-tools build-essential gdb git glibc-source unzip openssl libssl-dev libzip-dev aria2 lsof236Please respect copyright.PENANAWjIUpHI7Z6
# cd /usr/src/glibc236Please respect copyright.PENANAsHcchwgifV
# tar xvf glibc-2.39.tar.xz236Please respect copyright.PENANAfmvLMnZwaz
在gdb中指定glibc的源代碼:236Please respect copyright.PENANAdM5TW37XmO
gdb> directory /usr/src/glibc/glibc-2.39
將用戶加入root組236Please respect copyright.PENANAORaJqXfoYY
# usermod -a -G root buda236Please respect copyright.PENANAijtgwuLZ8A
# groups buda
黑屏时间设置:15分钟无操作后黑屏236Please respect copyright.PENANA9EwnHLsbuL
点左下角进入开始菜单, search "power", click " (settings) Power" blank screen: 15 mins
apt search rethinkdb236Please respect copyright.PENANA7JhdQ6blFd
apt show rethinkdb236Please respect copyright.PENANA4wkpAJB0nL
apt remove rethinkdb236Please respect copyright.PENANAKorpLKsiv8
cd /etc/apt/sources.list.d/ #进入PPA源文件所在目录236Please respect copyright.PENANAfqKLRcHUNg
sudo rm XXX.list #删除一个PPA源list文件236Please respect copyright.PENANAR3UCr1ofmg
sudo apt update
236Please respect copyright.PENANAQPpVa2eG7V
D. 安裝中文輸入法rime
# sudo apt install ibus-rime rime-data-luna-pinyin236Please respect copyright.PENANA2UqlHeiWT0
点击左下角进入开始菜单,选择settings, keyboard,+ add input source...,others, chinese(rime)236Please respect copyright.PENANAwqoM4ayMxe
点击chinese(rime)右边的小竖点,move up,将chinese(rime)移到Input Sources列表的第一行236Please respect copyright.PENANAy0ob7v8dcw
编辑配置文件236Please respect copyright.PENANA2BAQuMOMU4
一次显示9个候选词、模糊音236Please respect copyright.PENANAP8SA2REp3g
# nano ~/.config/ibus/rime/default.custom.yaml236Please respect copyright.PENANApFH7QCXG3u
---------default.custom.yaml的内容如下-----------236Please respect copyright.PENANAF9HnOb9fkm
patch:236Please respect copyright.PENANAXcfDjk6CeM
"menu/page_size": 9
'speller/algebra':236Please respect copyright.PENANAAeUO2afwQf
- erase/^xx$/ # 第一行保留
# 模糊音定義236Please respect copyright.PENANAmq16vYb18F
- derive/^([zcs])h/$1/ # zh, ch, sh => z, c, s236Please respect copyright.PENANA04td1oXYmJ
- derive/^([zcs])([^h])/$1h$2/ # z, c, s => zh, ch, sh
- derive/^n/l/ # n => l236Please respect copyright.PENANATbIioZJZcZ
- derive/^l/n/ # l => n
- derive/([ei])n$/$1ng/ # en => eng, in => ing236Please respect copyright.PENANAA4d2P8yZDf
- derive/([ei])ng$/$1n/ # eng => en, ing => in236Please respect copyright.PENANAldb1FXVzHd
--------------------------------------------------------------236Please respect copyright.PENANA4WwNCF1aXz
为了使模糊音生效,拷贝配置文件236Please respect copyright.PENANA64xplQvkGG
# cp default.custom.yaml luna_pinyin_simp.custom.yaml && cp default.custom.yaml luna_pinyin.custom.yaml236Please respect copyright.PENANAnhRY3UAqMv
部署rime输入法:236Please respect copyright.PENANApoYuqwCYLS
# ibus restart236Please respect copyright.PENANAxqcf3RaNmb
# ibus engine rime236Please respect copyright.PENANAlFbugj1rbi
在输入时按F4或者Ctrl+\`可弹出菜单,选择菜单上的数字可进行简繁输入转换236Please respect copyright.PENANAafw9XadBkO
按shift键进行中英输入转换236Please respect copyright.PENANA2GS6QOBEuX
有时候输入法失效时,可以重新运行一下部署rime的命令
参考资料:236Please respect copyright.PENANAnQ0UMPPM3t
CustomizationGuide · rime/home Wiki · GitHub236Please respect copyright.PENANAuikKje2gBi
https://www.cnblogs.com/keatonlao/p/12983158.html
236Please respect copyright.PENANABy8z9akU5D
E. 安裝重要軟件
从code官网下载deb包,然后安装236Please respect copyright.PENANAmpkXtHhsbk
# sudo apt install ./code_1.90.0-1717531825_amd64.deb
gimp图片编辑器, chromium浏览器236Please respect copyright.PENANAxKNLoIqoaj
从app center安装
墙内安装node/npm236Please respect copyright.PENANAvkdVe0krvx
https://nodejs.org/en/ 下载LTS版本236Please respect copyright.PENANAlp6c3EfwZN
# cd ~/Downloads236Please respect copyright.PENANAHdWpydH9Qw
# wget https://nodejs.org/dist/v20.15.0/node-v20.15.0-linux-x64.tar.xz236Please respect copyright.PENANAUway9T2Fhs
# tar --strip-components 1 -xvf node-v20.15.0-linux-x64.tar.xz -C /usr/local236Please respect copyright.PENANAaI2XEINzTD
# node -v236Please respect copyright.PENANAyLUbUt9W3I
# npm install npm@latest -g236Please respect copyright.PENANAA5E71O4Zb1
# npm config get registry236Please respect copyright.PENANAeTMDBAQhw9
# npm config set registry https://registry.npmmirror.com236Please respect copyright.PENANAJax4024t5X
如果想用回官方registry:236Please respect copyright.PENANAV11V4GQJFX
# npm config set registry https://registry.npmjs.org
墙外安装node/npm236Please respect copyright.PENANAALvs6wIwhV
# curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash236Please respect copyright.PENANArr6syDmVx8
# export NVM_DIR="$([ -z "${XDG_CONFIG_HOME-}" ] && printf %s "${HOME}/.nvm" || printf %s "${XDG_CONFIG_HOME}/nvm")"236Please respect copyright.PENANAS7aORDVBhc
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm236Please respect copyright.PENANAuz0sgNHI2y
# nvm install --lts236Please respect copyright.PENANAQd1ZvIA4S4
# npm install npm@latest -g
安装236Please respect copyright.PENANA5sNaD9vEQn
npm i package_name236Please respect copyright.PENANASI1oGxevgd
项目更新236Please respect copyright.PENANASPT3hz4JP1
npm update
F. 配置服務器連接
1. ssh免密登录Linux服务器
在客户端检查是否存在证书236Please respect copyright.PENANAVE2G2KFnp1
# ls -al ~/.ssh/id_*.pub236Please respect copyright.PENANAO8TZQGqwLV
如果不存在,生成证书236Please respect copyright.PENANAcIPEUAFsqJ
# ssh-keygen -t rsa -b 4096 -C "[email protected]"236Please respect copyright.PENANAdXj5VoX2pz
生成证书的过程中使用空白的 passphrase236Please respect copyright.PENANAWmia8yVNMI
将证书拷贝到服务器236Please respect copyright.PENANAyONuK0Zi1T
# ssh-copy-id root@server
2. 从windows登录linux
如果是从windows系统连接ubuntu,可以安装putty作为访问服务器的终端。 236Please respect copyright.PENANAFNNiWh4hJu
下载putty: https://www.putty.org/
putty免密登录Linux服务器的方法
在putty的安装目录找到puttygen.exe,运行生成ssl私钥和公钥,保存私钥到文件,复制公钥。236Please respect copyright.PENANAP5t7aGWZ8H
在putty的 connection/data 设置登录用户名为root,connection/ssh/auth/credentials中设置私钥的文件,保存设置。236Please respect copyright.PENANAsYTlS6Awml
将公钥写入服务器的 ~/.ssh/authorized_keys 文件中, reboot ubuntu使修改生效236Please respect copyright.PENANAqksHCwF839
# nano ~/.ssh/authorized_keys236Please respect copyright.PENANAeBzpX2Ocnk
# reboot
如果想保持putty与服务器的连接保持不断线,可以在Putty中设置每隔一定的时间发一次心跳消息。
3. 保持与服务器的ssh连接不断线的方法
ssh连接服务器时如果容易断线,可以修改服务器sshd的设置,保持ssh连接不断线:236Please respect copyright.PENANA9C2FowCqVi
# nano /etc/ssh/sshd_config236Please respect copyright.PENANAO2cev4IMOw
ClientAliveInterval 60 # 表示每60秒发送一次请求,从而保持连接不断线。236Please respect copyright.PENANAQeI4LXAN56
ClientAliveCountMax 10 # 表示服务器发出请求后客户端没有响应的次数达到10次,就自动断开连接236Please respect copyright.PENANA7CcBuIYcCz
# systemctl restart sshd
4. 從ubuntu remote windows用remmina
從app中心安裝remmina236Please respect copyright.PENANArfzdaq8eIx
新建connection到windows
Basic標籤236Please respect copyright.PENANA8USbsUFrYU
server: ip/domain.name, username: Administrator, password: ***236Please respect copyright.PENANAyU0Ub7zOZn
share folder中填寫ubuntu中的路徑,則可從windows訪問236Please respect copyright.PENANA8rFOSiI1S9
resolution中可設置合適的屏幕大小
Advanced標籤236Please respect copyright.PENANAnPlNwnoksE
output audio: 選擇local,則是windows發出的聲音
windows server 默認是麼有開啓聲音服務的,要設置一下才能發出聲音:236Please respect copyright.PENANActfZZWQKSr
https://cloud.tencent.com/developer/article/1894933
G. 網絡安全設置
防火墙设置236Please respect copyright.PENANAek2vInWsaa
# ufw allow 22236Please respect copyright.PENANAFtVHvVv1oO
# ufw allow 80236Please respect copyright.PENANAUGlpjDWMLX
# ufw allow 443236Please respect copyright.PENANArNWX2jkWsg
# ufw enable236Please respect copyright.PENANASBMn1dfoyF
# ufw status
H. 常用命令
创建软链接236Please respect copyright.PENANArzoocqKPFL
# sudo ln -s 源文件 目标文件
修改密码236Please respect copyright.PENANAtdi7ZtU3TZ
# passwd root236Please respect copyright.PENANAPX3WHrMmqb
# usermod -a -G groupA username236Please respect copyright.PENANA6qKNRxYeht
# groups username
修改hostname236Please respect copyright.PENANAtUqoUIHo7a
# hostnamectl set-hostname xiaoyue
查看cpu236Please respect copyright.PENANA4xUOMNygAn
# lscpu
查看内存236Please respect copyright.PENANAforNUmER20
# free -h236Please respect copyright.PENANALtLiAAKTIK
# top
釋放被buff/cache占用的内存236Please respect copyright.PENANAmqaoFe9OWT
# sync; echo 3 > /proc/sys/vm/drop_caches # 清空页面缓存236Please respect copyright.PENANARfWKAd5AKP
# sync; echo 1 > /proc/sys/vm/drop_caches # 清空目录项缓存236Please respect copyright.PENANA3HXQIpRu8s
# sync; echo 2 > /proc/sys/vm/drop_caches # 清空SLAB缓存236Please respect copyright.PENANA7DlLB6GTNu
# sync; echo 3 > /proc/sys/vm/drop_caches # 清空所有缓存236Please respect copyright.PENANALhQVQHPWeJ
用sudo执行:236Please respect copyright.PENANAKiFIZ5paY6
# sudo sh -c "echo 3 > /proc/sys/vm/drop_caches"
236Please respect copyright.PENANAJTYYeGE46y
查看硬盘236Please respect copyright.PENANAKwRsbhnQ9y
# sudo lshw -c disk236Please respect copyright.PENANAzrGRdkb2We
查看分区236Please respect copyright.PENANAlgLRUIOWtA
# sudo fdisk -l236Please respect copyright.PENANAjy0qptFYxF
查看磁盘剩余空间236Please respect copyright.PENANAJzPaUY98N6
# df -hl
文件壓縮和打包236Please respect copyright.PENANAaeSqFBY7fk
將在windows上壓縮出的zip文件傳遞給Linux系統解壓縮時,文件名會出現亂碼,這是因爲在Windows上文件名的編碼取決於「控制面板-時鐘和區域-區域-管理-非unicode程序語言」中的設置,中國大陸默認是簡體中文,gb2312(cp936)編碼. 而在Linux系統上則統一是utf-8編碼。236Please respect copyright.PENANAunvdZhrmXn
如何解決?最簡單的辦法是在解壓縮的時候說明一下原來的編碼,這樣壓縮工具就會識別出原來的文件名而自動將文件名轉爲utf8編碼, 命令如下:236Please respect copyright.PENANAcR7tFppxA7
unzip -O cp936 temp.zip
改變文件權限236Please respect copyright.PENANA3VpsVnDlO0
# chmod g+w <文件/目录路径>236Please respect copyright.PENANAPSnSU2xHYV
# chmod -R g+w /path/to/directory236Please respect copyright.PENANAyMxmMQgH2h
设置所有者为 rwx,组为 r-x,其他用户为 r--:236Please respect copyright.PENANAJL3ZGZd1wz
# chmod 755 <文件/目录路径>
u:所有者(user)。236Please respect copyright.PENANAliaL7GS8bN
g:所属组(group)。236Please respect copyright.PENANAPQsEA5wbkH
o:其他用户(others)。236Please respect copyright.PENANAhQnjTDpL2x
a:所有用户(u、g、o)。236Please respect copyright.PENANAiUr3jJs6rN
操作符:236Please respect copyright.PENANAcEipDc1Ev9
+:添加权限。236Please respect copyright.PENANAlRuvlRW9NB
-:移除权限。236Please respect copyright.PENANAr9ZtFU4dK6
=:设置权限。236Please respect copyright.PENANABedtN2rvdl
權限:236Please respect copyright.PENANAHM0YoiXeC0
r(读) = 4236Please respect copyright.PENANAdRHWDcJPQN
w(写) = 2236Please respect copyright.PENANAq7YeTrcJoM
x(执行) = 1236Please respect copyright.PENANATwfGYlVLLq
-(无权限) = 0236Please respect copyright.PENANA1SkCwjWufL
通过加法得到最终的权限值。例如:236Please respect copyright.PENANAm2jmTfEjaO
7 = rwx(4 + 2 + 1)236Please respect copyright.PENANA1xDzMYWRZI
5 = r-x(4 + 1)236Please respect copyright.PENANAFxPIVjLhS0
6 = rw-(4 + 2)236Please respect copyright.PENANAW1PFcb3YJD
236Please respect copyright.PENANACvj52X0uWv
I. 创建自定义命令
# nano ~/.bash_aliases236Please respect copyright.PENANArXlijfk6de
添加alias, 比如:236Please respect copyright.PENANA1Xp1uu2sFS
alias gitbuda='gitbuda() { git add -A; git commit -m "$1"; git push; }; gitbuda'236Please respect copyright.PENANAYJDmmyrFUJ
其中$1表示命令的第一个参数,这样就可以用 gitbuda "commit message"来运行命令236Please respect copyright.PENANAeefZeVgl0A
# source ~/.bash_aliases
Section X. Thanks
https://ubuntu.com
236Please respect copyright.PENANAj9Gg6h8t4U
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]236Please respect copyright.PENANA7h2cqrFzY4
如果您发现本文有任何错误,或者对本文有好的建议,欢迎与我联系探讨,我的微信: si_jinmin, 我的email: [email protected]
如果您對C/C++ programming, Linux, website development, Vue, Git, vscode感興趣,邀請您加入「Linux/C/C++ Website Development」微信群,請加我的微信(si_jinmin)以便拉您进群。
ns216.73.216.251da2