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"
安装启动盘制作软件rufus125Please respect copyright.PENANAmXQnlDrvaX
https://github.com/pbatard/rufus/releases/download/v4.5/rufus-4.5.exe125Please respect copyright.PENANAwGbn8lhkSk
U盘的容量必须大于7G,在rufus中选择U盘, iso文件,MBR分区类型,NTFS文件格式,点击开始,选择以ISO镜像模式写入。
官方参考资料:125Please respect copyright.PENANABbYD8CKK2V
https://ubuntu.com/tutorials/create-a-usb-stick-on-windows#1-overview
125Please respect copyright.PENANAsiNhNQUSvE
B. 安装ubuntu
从U盘启动电脑125Please respect copyright.PENANACFsaTUowQu
try or install ubuntu125Please respect copyright.PENANA9f8aZiT9mt
choose your language: english125Please respect copyright.PENANAPxKBl3TAfo
accessibility in ubuntu: next125Please respect copyright.PENANAt85FHEogAQ
select your keyboard layout: english(US)125Please respect copyright.PENANA8IlQHYWmT3
connect to the internet: connect to a wi-fi network125Please respect copyright.PENANAosDADP2VjZ
install ubuntu125Please respect copyright.PENANA38DuDrnncU
interactive installation125Please respect copyright.PENANANhcBf8MLxm
extended selection125Please respect copyright.PENANAAekFimsVAu
check: install third-party software for graphics and wi-fi hardware125Please respect copyright.PENANAujKCBSiEX4
check: download and install support for additional media formats125Please respect copyright.PENANAnrJpbjABby
erase disk and install ubuntu125Please respect copyright.PENANABs4JGqUzpO
choose sdb125Please respect copyright.PENANAuxZCZZ0kn0
your name: buda 125Please respect copyright.PENANAYw7Fby8oPc
your computer's name: vultr125Please respect copyright.PENANAgvE8uptp8I
your username: buda 125Please respect copyright.PENANAScy7JDbikj
timezone: shanghai125Please respect copyright.PENANA3yuiu7kIWX
install125Please respect copyright.PENANA5ILFh1OkRs
restart now125Please respect copyright.PENANAcNwxLuLB6L
拔出U盘, 按enter键
125Please respect copyright.PENANAve5Xizaipr
C. 初始化設置
点击左下角ubuntu图标进入开始菜单,将terminal pin to dash125Please respect copyright.PENANA72fmaUmhPa
# sudo apt update && sudo apt upgrade -y
安装常用工具, 開發编译环境125Please respect copyright.PENANAq3p70BEBzA
# sudo apt install nano net-tools build-essential gdb git glibc-source unzip openssl libssl-dev libzip-dev aria2 lsof125Please respect copyright.PENANAwdcnJ2mRuY
# cd /usr/src/glibc125Please respect copyright.PENANAsm0MetBi8x
# tar xvf glibc-2.39.tar.xz125Please respect copyright.PENANA7319CdyZfT
在gdb中指定glibc的源代碼:125Please respect copyright.PENANAOjLWUaLMio
gdb> directory /usr/src/glibc/glibc-2.39
將用戶加入root組125Please respect copyright.PENANApCrroqq8Ff
# usermod -a -G root buda125Please respect copyright.PENANA8kO6XnJjdm
# groups buda
黑屏时间设置:15分钟无操作后黑屏125Please respect copyright.PENANAfI5zliwfol
点左下角进入开始菜单, search "power", click " (settings) Power" blank screen: 15 mins
apt search rethinkdb125Please respect copyright.PENANAP4xr5tZgff
apt show rethinkdb125Please respect copyright.PENANAJYS265HSPn
apt remove rethinkdb125Please respect copyright.PENANAYOTbquA2md
cd /etc/apt/sources.list.d/ #进入PPA源文件所在目录125Please respect copyright.PENANAOlClGs0B2Y
sudo rm XXX.list #删除一个PPA源list文件125Please respect copyright.PENANAmbFlUndODS
sudo apt update
125Please respect copyright.PENANAEBns6Dqr1O
D. 安裝中文輸入法rime
# sudo apt install ibus-rime rime-data-luna-pinyin125Please respect copyright.PENANAPVID1DVOMO
点击左下角进入开始菜单,选择settings, keyboard,+ add input source...,others, chinese(rime)125Please respect copyright.PENANA6GZ7nIYCWs
点击chinese(rime)右边的小竖点,move up,将chinese(rime)移到Input Sources列表的第一行125Please respect copyright.PENANA9DRjMxdwuM
编辑配置文件125Please respect copyright.PENANABMzW3HOppd
一次显示9个候选词、模糊音125Please respect copyright.PENANAsSUTkMmEsR
# nano ~/.config/ibus/rime/default.custom.yaml125Please respect copyright.PENANAkcE8yVAAD8
---------default.custom.yaml的内容如下-----------125Please respect copyright.PENANAGfr1TpTgkg
patch:125Please respect copyright.PENANAfUfyQGIw8b
"menu/page_size": 9
'speller/algebra':125Please respect copyright.PENANAtlMfaJLVMO
- erase/^xx$/ # 第一行保留
# 模糊音定義125Please respect copyright.PENANAOWvwBGoejv
- derive/^([zcs])h/$1/ # zh, ch, sh => z, c, s125Please respect copyright.PENANAZMdJTPb8yy
- derive/^([zcs])([^h])/$1h$2/ # z, c, s => zh, ch, sh
- derive/^n/l/ # n => l125Please respect copyright.PENANAgWdlqnmTsp
- derive/^l/n/ # l => n
- derive/([ei])n$/$1ng/ # en => eng, in => ing125Please respect copyright.PENANAWXxnM2qOW8
- derive/([ei])ng$/$1n/ # eng => en, ing => in125Please respect copyright.PENANAzAQdhLubro
--------------------------------------------------------------125Please respect copyright.PENANAK8w9ZEmNpP
为了使模糊音生效,拷贝配置文件125Please respect copyright.PENANA0FQCvPQHKx
# cp default.custom.yaml luna_pinyin_simp.custom.yaml && cp default.custom.yaml luna_pinyin.custom.yaml125Please respect copyright.PENANAUg4IRqH5uA
部署rime输入法:125Please respect copyright.PENANAq3Sbowy0ec
# ibus restart125Please respect copyright.PENANAZvhdETzI4H
# ibus engine rime125Please respect copyright.PENANAkfhIOvIoAJ
在输入时按F4或者Ctrl+\`可弹出菜单,选择菜单上的数字可进行简繁输入转换125Please respect copyright.PENANAGKSC21Ucx2
按shift键进行中英输入转换125Please respect copyright.PENANAUi5sqXYtwl
有时候输入法失效时,可以重新运行一下部署rime的命令
参考资料:125Please respect copyright.PENANAHXxcQJF4ws
CustomizationGuide · rime/home Wiki · GitHub125Please respect copyright.PENANA2YsxOYmre1
https://www.cnblogs.com/keatonlao/p/12983158.html
125Please respect copyright.PENANAslgBOCyyw4
E. 安裝重要軟件
从code官网下载deb包,然后安装125Please respect copyright.PENANAmWAovIwoyG
# sudo apt install ./code_1.90.0-1717531825_amd64.deb
gimp图片编辑器, chromium浏览器125Please respect copyright.PENANAT80rKvT4OX
从app center安装
墙内安装node/npm125Please respect copyright.PENANAlQ9LrrZyBJ
https://nodejs.org/en/ 下载LTS版本125Please respect copyright.PENANAA3XBBdMp3k
# cd ~/Downloads125Please respect copyright.PENANA3emMzokxs4
# wget https://nodejs.org/dist/v20.15.0/node-v20.15.0-linux-x64.tar.xz125Please respect copyright.PENANAVlGXwXTpuu
# tar --strip-components 1 -xvf node-v20.15.0-linux-x64.tar.xz -C /usr/local125Please respect copyright.PENANAxU2TZiLJAk
# node -v125Please respect copyright.PENANA8d9JRTzIiY
# npm install npm@latest -g125Please respect copyright.PENANAV6bvWvNOrW
# npm config get registry125Please respect copyright.PENANAtiMfUzyNUD
# npm config set registry https://registry.npmmirror.com125Please respect copyright.PENANA8ckwATwuRe
如果想用回官方registry:125Please respect copyright.PENANAQeFxIpMLer
# npm config set registry https://registry.npmjs.org
墙外安装node/npm125Please respect copyright.PENANA8IVPg9vdKG
# curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash125Please respect copyright.PENANAAbZGuV8tA8
# export NVM_DIR="$([ -z "${XDG_CONFIG_HOME-}" ] && printf %s "${HOME}/.nvm" || printf %s "${XDG_CONFIG_HOME}/nvm")"125Please respect copyright.PENANAmpJUAYOiPs
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # This loads nvm125Please respect copyright.PENANAHR9WvnCfou
# nvm install --lts125Please respect copyright.PENANAeVFsQTemHZ
# npm install npm@latest -g
安装125Please respect copyright.PENANAD6b5OZkeOc
npm i package_name125Please respect copyright.PENANAHD36juArRe
项目更新125Please respect copyright.PENANAEfuHBFyTsU
npm update
F. 配置服務器連接
1. ssh免密登录Linux服务器
在客户端检查是否存在证书125Please respect copyright.PENANAdQVlCSdALy
# ls -al ~/.ssh/id_*.pub125Please respect copyright.PENANAd2LvIcdLWt
如果不存在,生成证书125Please respect copyright.PENANAat09BTeASa
# ssh-keygen -t rsa -b 4096 -C "[email protected]"125Please respect copyright.PENANAunGwHszN8R
生成证书的过程中使用空白的 passphrase125Please respect copyright.PENANAxlIZ1KdtA2
将证书拷贝到服务器125Please respect copyright.PENANAMAFtxcEccN
# ssh-copy-id root@server
2. 从windows登录linux
如果是从windows系统连接ubuntu,可以安装putty作为访问服务器的终端。 125Please respect copyright.PENANAWWs9l7gVyS
下载putty: https://www.putty.org/
putty免密登录Linux服务器的方法
在putty的安装目录找到puttygen.exe,运行生成ssl私钥和公钥,保存私钥到文件,复制公钥。125Please respect copyright.PENANAe2MsQG54t3
在putty的 connection/data 设置登录用户名为root,connection/ssh/auth/credentials中设置私钥的文件,保存设置。125Please respect copyright.PENANAI1hH4Xb92p
将公钥写入服务器的 ~/.ssh/authorized_keys 文件中, reboot ubuntu使修改生效125Please respect copyright.PENANAKXNEFeSTqi
# nano ~/.ssh/authorized_keys125Please respect copyright.PENANAxxNorkbagF
# reboot
如果想保持putty与服务器的连接保持不断线,可以在Putty中设置每隔一定的时间发一次心跳消息。
3. 保持与服务器的ssh连接不断线的方法
ssh连接服务器时如果容易断线,可以修改服务器sshd的设置,保持ssh连接不断线:125Please respect copyright.PENANALWVk1XcME4
# nano /etc/ssh/sshd_config125Please respect copyright.PENANAQ5Nvfp8bpS
ClientAliveInterval 60 # 表示每60秒发送一次请求,从而保持连接不断线。125Please respect copyright.PENANAPn8QwjiNj1
ClientAliveCountMax 10 # 表示服务器发出请求后客户端没有响应的次数达到10次,就自动断开连接125Please respect copyright.PENANAJWRMBF9peW
# systemctl restart sshd
4. 從ubuntu remote windows用remmina
從app中心安裝remmina125Please respect copyright.PENANAWaV3787pLT
新建connection到windows
Basic標籤125Please respect copyright.PENANAo9X77gWOVR
server: ip/domain.name, username: Administrator, password: ***125Please respect copyright.PENANAo16nQ9Rr1b
share folder中填寫ubuntu中的路徑,則可從windows訪問125Please respect copyright.PENANAbdnVbbOAx0
resolution中可設置合適的屏幕大小
Advanced標籤125Please respect copyright.PENANAHvmdfJti3l
output audio: 選擇local,則是windows發出的聲音
windows server 默認是麼有開啓聲音服務的,要設置一下才能發出聲音:125Please respect copyright.PENANAFXlpnpQ9uu
https://cloud.tencent.com/developer/article/1894933
G. 網絡安全設置
防火墙设置125Please respect copyright.PENANAQh5VKBtIJF
# ufw allow 22125Please respect copyright.PENANA3zlCSDrLD3
# ufw allow 80125Please respect copyright.PENANAjFCfjjuxLa
# ufw allow 443125Please respect copyright.PENANA5nAhGcLjNW
# ufw enable125Please respect copyright.PENANAFICqyAcmPS
# ufw status
H. 常用命令
创建软链接125Please respect copyright.PENANA71HMim443f
# sudo ln -s 源文件 目标文件
修改密码125Please respect copyright.PENANANUENgNeefG
# passwd root125Please respect copyright.PENANApJw3eZd2KQ
# usermod -a -G groupA username125Please respect copyright.PENANAuTU07dWiGV
# groups username
修改hostname125Please respect copyright.PENANAx6Kr4PFQRV
# hostnamectl set-hostname xiaoyue
查看cpu125Please respect copyright.PENANA2DslgAhhUV
# lscpu
查看内存125Please respect copyright.PENANA6zvhe7SdOu
# free -h125Please respect copyright.PENANA3mfBFcNZj9
# top
釋放被buff/cache占用的内存125Please respect copyright.PENANAOOkvw6G0q8
# sync; echo 3 > /proc/sys/vm/drop_caches # 清空页面缓存125Please respect copyright.PENANAIMuo8cMGuC
# sync; echo 1 > /proc/sys/vm/drop_caches # 清空目录项缓存125Please respect copyright.PENANAfi6IQmZCL2
# sync; echo 2 > /proc/sys/vm/drop_caches # 清空SLAB缓存125Please respect copyright.PENANAC29apIbnBV
# sync; echo 3 > /proc/sys/vm/drop_caches # 清空所有缓存125Please respect copyright.PENANAh8hGb1lhD7
用sudo执行:125Please respect copyright.PENANA3tGHdyA0cF
# sudo sh -c "echo 3 > /proc/sys/vm/drop_caches"
125Please respect copyright.PENANAq5e3luOBR1
查看硬盘125Please respect copyright.PENANABnuFEyYw8D
# sudo lshw -c disk125Please respect copyright.PENANAni9O9pEnwG
查看分区125Please respect copyright.PENANAo30wywYq0b
# sudo fdisk -l125Please respect copyright.PENANAtE5G4NP6HA
查看磁盘剩余空间125Please respect copyright.PENANAqwyBPkZb5g
# df -hl
文件壓縮和打包125Please respect copyright.PENANAwPAyoZvW1G
將在windows上壓縮出的zip文件傳遞給Linux系統解壓縮時,文件名會出現亂碼,這是因爲在Windows上文件名的編碼取決於「控制面板-時鐘和區域-區域-管理-非unicode程序語言」中的設置,中國大陸默認是簡體中文,gb2312(cp936)編碼. 而在Linux系統上則統一是utf-8編碼。125Please respect copyright.PENANACLWl5AEkxq
如何解決?最簡單的辦法是在解壓縮的時候說明一下原來的編碼,這樣壓縮工具就會識別出原來的文件名而自動將文件名轉爲utf8編碼, 命令如下:125Please respect copyright.PENANA8m0pCbRbPd
unzip -O cp936 temp.zip
改變文件權限125Please respect copyright.PENANAgIN0eSPTaL
# chmod g+w <文件/目录路径>125Please respect copyright.PENANAFfFm6LZkUf
# chmod -R g+w /path/to/directory125Please respect copyright.PENANAqP2emCEGed
设置所有者为 rwx,组为 r-x,其他用户为 r--:125Please respect copyright.PENANAmRaojA0nXF
# chmod 755 <文件/目录路径>
u:所有者(user)。125Please respect copyright.PENANAy7TtQctmlZ
g:所属组(group)。125Please respect copyright.PENANAubhutbSjsR
o:其他用户(others)。125Please respect copyright.PENANAJ40c6hvsku
a:所有用户(u、g、o)。125Please respect copyright.PENANAtz9bQPc39n
操作符:125Please respect copyright.PENANA29SjfjZIJx
+:添加权限。125Please respect copyright.PENANAOUHwAyVGde
-:移除权限。125Please respect copyright.PENANAB28qMzNMsr
=:设置权限。125Please respect copyright.PENANAKW02ytN7W4
權限:125Please respect copyright.PENANAgs8e6LyYUg
r(读) = 4125Please respect copyright.PENANA0vZCckMYoI
w(写) = 2125Please respect copyright.PENANAft7KXJbKyG
x(执行) = 1125Please respect copyright.PENANAETmWq4Q7CH
-(无权限) = 0125Please respect copyright.PENANAKTJWx2cEZc
通过加法得到最终的权限值。例如:125Please respect copyright.PENANAqtwN3FyFEH
7 = rwx(4 + 2 + 1)125Please respect copyright.PENANACpAsKGgD13
5 = r-x(4 + 1)125Please respect copyright.PENANA7QtewipAKX
6 = rw-(4 + 2)125Please respect copyright.PENANAnC7kfAzMWM
125Please respect copyright.PENANAKp6U9b7wxC
I. 创建自定义命令
# nano ~/.bash_aliases125Please respect copyright.PENANA4JMiUZXZKn
添加alias, 比如:125Please respect copyright.PENANAUGnZyNUhyX
alias gitbuda='gitbuda() { git add -A; git commit -m "$1"; git push; }; gitbuda'125Please respect copyright.PENANAPUJcPBNpS0
其中$1表示命令的第一个参数,这样就可以用 gitbuda "commit message"来运行命令125Please respect copyright.PENANAL0XEMcb1m8
# source ~/.bash_aliases
Section X. Thanks
https://ubuntu.com
125Please respect copyright.PENANA4fhkk7Cjd9
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]125Please respect copyright.PENANAE8qcqulHGt
如果您发现本文有任何错误,或者对本文有好的建议,欢迎与我联系探讨,我的微信: si_jinmin, 我的email: [email protected]
如果您對C/C++ programming, Linux, website development, Vue, Git, vscode感興趣,邀請您加入「Linux/C/C++ Website Development」微信群,請加我的微信(si_jinmin)以便拉您进群。
ns18.222.162.251da2