很早之前的电脑ThinkPad E440,一直没怎么用。最近整理了一下电脑的资料,全部备份到云盘。整理的过程感觉电脑很慢很慢,难受极了。整理完后,终于我要对它下手了!
我制作了启动U盘,把Ubuntu 22.04的镜像烧录进去,通过U盘启动,把系统装在ThinkPad上。居然电脑出奇的好用,根本不卡。那就记录一下吧。

先从官网下载镜像,然后通过BalenaEtcher来把系统镜像放在U盘上。接着就是启动与安装了,没什么特别的,只要改一下BIOS的启动顺序即可。
参考: https://ubuntu.com/tutorials/install-ubuntu-desktop#2-download-an-ubuntu-image
可以用系统自带的,但我使用的是Shutter,直接在Ubuntu Software搜索安装即可。但安装完不能使用自选区域截图,会提示:
cannot work without X11 server
解决方案:
找到/etc/gdm3/custom.conf文件,去掉注释:WaylandEnable=false
重启一下:sudo systemctl restart gdm3即可。
设置快捷键:
Settings -> Keyboard -> Keyboard Shortcuts -> View and Customize Shortcuts
接着拉到最后的Custom Shortcuts。添加如下:

参考:
新版本的Typora收费了,并且官网也下载不了原有的免费版本,可以在这个链接下载:
下载地址:https://github.com/iuxt/src/releases/download/2.0/Typora_Linux_0.11.18_amd64.deb
然后使用apt安装即可:
sudo apt install ./Typora_Linux_0.11.18_amd64.deb
参考:https://zahui.fan/posts/64b52e0d/
Settings -> Power -> Show Battery Percentage
设置里找到Regin & Language,Manage installed Languages,安装中文。输入法系统选iBus即可。接着在Keyboard那添加中文输入法,有拼音和五笔,如果操作不了,可能需要先重启:

可以通过Win + 空格来切换。中英文通过Shift。
大致如下:
sudo apt install git
git config --global user.name "LarryDpk"
git config --global user.email "larry.dpk@gmail.com"
# 生成ssh key,把pub key放GitHub上
ssh-keygen -t rsa -b 4096 -C "larry.dpk@gmail.com"
Git拉取代码报错:
$ git pull
ssh: connect to host github.com port 22: Connection timed out
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
换成另一个域名:ssh.github.com:

参考: https://docs.github.com/en/authentication/troubleshooting-ssh/using-ssh-over-the-https-port
git status显示数字,不显示中文:
git config --global core.quotepath false
因为Chrome在Ubuntu不在Software Center,所以要通过先下载安装包的方式来下载:
wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
sudo dpkg -i google-chrome-stable_current_amd64.deb
系统已经自带了Python3,版本也比较高,也没办法再安装了。但要安装pip3:
$ python3 --version
Python 3.10.6
sudo apt install python3-pip
我的电脑是一个SSD盘,一个普通硬盘,系统装在SSD上,所以需要把硬盘挂载一下:
sudo mount /dev/sda3 /home/larry/data
但每次都这样手动mount很麻烦,又要输入密码,所以我们让系统在启动的时候就mount,在/etc/fstab文件中添加一行:
# disk
UUID=277de78c-6639-4373-a5cd-38feff129de7 /home/larry/data ext4 defaults 0 0
重启即可。
参考: https://developerinsider.co/auto-mount-drive-in-ubuntu-server-22-04-at-startup/
下载Linux 64位版本:https://github.com/aliyun/oss-browser
直接打开会报错,少了libgconfi-2-4,安装后打开即可:
$ ./oss-browser
./oss-browser: error while loading shared libraries: libgconf-2.so.4: cannot open shared object file: No such file or directory
$ sudo apt install libgconf-2-4
参考:https://stackoverflow.com/questions/37624225/shared-libraries-libgconf-2-so-4-is-missing
下载JDK: https://github.com/graalvm/graalvm-ce-builds/releases
我下载的版本是:graalvm-ce-java11-linux-amd64-22.3.0.tar.gz
解压后指定JAVA_HOME即可。
JAVA_HOME=/home/larry/software/graalvm-ce-java11-22.3.0
export PATH=$JAVA_HOME/bin:$PATH
直接下载后解压即可:https://maven.apache.org/download.cgi
export M2_HOME=/home/larry/software/apache-maven-3.8.6
export PATH=$M2_HOME/bin:$PATH
在.bashrc添加:
if [ -f ~/bash_profile.sh ]; then
. ~/bash_profile.sh
fi
然后便可在bash_profile.sh文件中添加自己的配置了:
export JAVA_HOME=/home/larry/software/graalvm-ce-java11-22.3.0
export PATH=$JAVA_HOME/bin:$PATH
export M2_HOME=/home/larry/software/apache-maven-3.8.6
export PATH=$M2_HOME/bin:$PATH
alias l='ls -al'
下载软件: https://github.com/kingToolbox/WindTerm/releases/tag/2.5.0
选择自动复制已经支持了。
右键直接粘贴:

参考: https://github.com/kingToolbox/WindTerm/issues/19#issuecomment-719334753
修改锁屏密码: 点击一下右下角的Lock Screen即可修改。
以IDEA为例,直接通过IDEA自己提供的工具,如下图所示:

或者自己创建对应的Entry,放在特定的位置:
$ cat /usr/share/applications/jetbrains-idea.desktop
[Desktop Entry]
Version=1.0
Type=Application
Name=IntelliJ IDEA Ultimate Edition
Icon=/home/larry/software/ideaIU-2022.3/bin/idea.svg
Exec="/home/larry/software/ideaIU-2022.3/bin/idea.sh" %f
Comment=Capable and Ergonomic IDE for JVM
Categories=Development;IDE;
Terminal=false
StartupWMClass=jetbrains-idea
StartupNotify=true
如果只是自己生效则放在~/.local/share/applications。
其它例子:
[Desktop Entry]
Version=1.0
Type=Application
Name=WindTerm
Icon=/home/larry/software/WindTerm_2.5.0/windterm.png
Exec="/home/larry/software/WindTerm_2.5.0/WindTerm" %f
Comment=WindTerm
Categories=Development;SSH;
Terminal=false
StartupNotify=true
IDEA占用的内存还是太多了,还是使用VSCode吧,直接Ubuntu Software搜索安装即可。
到官网下载: https://repo.anaconda.com/archive/Anaconda3-2022.10-Linux-x86_64.sh
然后执行命令安装:
$ bash ./Anaconda3-2022.10-Linux-x86_64.sh
会有一些提示,要输入yes等。最后init,执行命令:
$ source ~/.bashrc
其它就是帮我们加了这段内容到.bashrc文件中:
# >>> conda initialize >>>
# !! Contents within this block are managed by 'conda init' !!
__conda_setup="$('/home/larry/anaconda3/bin/conda' 'shell.bash' 'hook' 2> /dev/null)"
if [ $? -eq 0 ]; then
eval "$__conda_setup"
else
if [ -f "/home/larry/anaconda3/etc/profile.d/conda.sh" ]; then
. "/home/larry/anaconda3/etc/profile.d/conda.sh"
else
export PATH="/home/larry/anaconda3/bin:$PATH"
fi
fi
unset __conda_setup
# <<< conda initialize <<<
同时,它直接把系统的python也切换了:
$ which python
/home/larry/anaconda3/bin/python
$ which python3
/home/larry/anaconda3/bin/python3
$ which pip
/home/larry/anaconda3/bin/pip
$ which pip3
/home/larry/anaconda3/bin/pip3
$ python --version
Python 3.9.13
$ python3 --version
Python 3.9.13
$ pip --version
pip 22.2.2 from /home/larry/anaconda3/lib/python3.9/site-packages/pip (python 3.9)
直接在官网下载Linux deb版本: https://pan.baidu.com/download#pan
然后用下面命令安装即可:
$ sudo apt install ./baidunetdisk_4.15.6_amd64.deb
可以直接在Software Center安装,也可以到官网下载安装:https://www.videolan.org/
Sinatra新手;我正在运行一些rspec测试,但在日志中收到了一堆不需要的噪音。如何消除日志中过多的噪音?我仔细检查了环境是否设置为:test,这意味着记录器级别应设置为WARN而不是DEBUG。spec_helper:require"./app"require"sinatra"require"rspec"require"rack/test"require"database_cleaner"require"factory_girl"set:environment,:testFactoryGirl.definition_file_paths=%w{./factories./test/
我有两个Rails模型,即Invoice和Invoice_details。一个Invoice_details属于Invoice,一个Invoice有多个Invoice_details。我无法使用accepts_nested_attributes_forinInvoice通过Invoice模型保存Invoice_details。我收到以下错误:(0.2ms)BEGIN(0.2ms)ROLLBACKCompleted422UnprocessableEntityin25ms(ActiveRecord:4.0ms)ActiveRecord::RecordInvalid(Validationfa
我试过重新启动apache,缓存的页面仍然出现,所以一定有一个文件夹在某个地方。我没有“公共(public)/缓存”,那么我还应该查看哪些其他地方?是否有一个URL标志也可以触发此效果? 最佳答案 您需要触摸一个文件才能清除phusion,例如:touch/webapps/mycook/tmp/restart.txt参见docs 关于ruby-如何在Ubuntu中清除RubyPhusionPassenger的缓存?,我们在StackOverflow上找到一个类似的问题:
电脑0x0000001A蓝屏错误怎么U盘重装系统教学分享。有用户电脑开机之后遇到了系统蓝屏的情况。系统蓝屏问题很多时候都是系统bug,只有通过重装系统来进行解决。那么蓝屏问题如何通过U盘重装新系统来解决呢?来看看以下的详细操作方法教学吧。 准备工作: 1、U盘一个(尽量使用8G以上的U盘)。 2、一台正常联网可使用的电脑。 3、ghost或ISO系统镜像文件(Win10系统下载_Win10专业版_windows10正式版下载-系统之家)。 4、在本页面下载U盘启动盘制作工具:系统之家U盘启动工具。 U盘启动盘制作步骤: 注意:制作期间,U盘会被格式化,因此U盘中的重要文件请注
之前在培训新生的时候,windows环境下配置opencv环境一直教的都是网上主流的vsstudio配置属性表,但是这个似乎对新生来说难度略高(虽然个人觉得完全是他们自己的问题),加之暑假之后对cmake实在是爱不释手,且这样配置确实十分简单(其实都不需要配置),故斗胆妄言vscode下配置CV之法。其实极为简单,图比较多所以很长。如果你看此文还配不好,你应该思考一下是不是自己的问题。闲话少说,直接开始。0.CMkae简介有的人到大二了都不知道cmake是什么,我不说是谁。CMake是一个开源免费并且跨平台的构建工具,可以用简单的语句来描述所有平台的编译过程。它能够根据当前所在平台输出对应的m
在VMware16.2.4安装Ubuntu一、安装VMware1.打开VMwareWorkstationPro官网,点击即可进入。2.进入后向下滑动找到Workstation16ProforWindows,点击立即下载。3.下载完成,文件大小615MB,如下图:4.鼠标右击,以管理员身份运行。5.点击下一步6.勾选条款,点击下一步7.先勾选,再点击下一步8.去掉勾选,点击下一步9.点击下一步10.点击安装11.点击许可证12.在百度上搜索VM16许可证,复制填入,然后点击输入即可,亲测有效。13.点击完成14.重启系统,点击是15.双击VMwareWorkstationPro图标,进入虚拟机主
需求:要创建虚拟机,就需要给他提供一个虚拟的磁盘,我们就在/opt目录下创建一个10G大小的raw格式的虚拟磁盘CentOS-7-x86_64.raw命令格式:qemu-imgcreate-f磁盘格式磁盘名称磁盘大小qemu-imgcreate-f磁盘格式-o?1.创建磁盘qemu-imgcreate-fraw/opt/CentOS-7-x86_64.raw10G执行效果#ls/opt/CentOS-7-x86_64.raw2.安装虚拟机使用virt-install命令,基于我们提供的系统镜像和虚拟磁盘来创建一个虚拟机,另外在创建虚拟机之前,提前打开vnc客户端,在创建虚拟机的时候,通过vnc
我正在尝试将以下SQL查询转换为ActiveRecord,它正在融化我的大脑。deletefromtablewhereid有什么想法吗?我想做的是限制表中的行数。所以,我想删除少于最近10个条目的所有内容。编辑:通过结合以下几个答案找到了解决方案。Temperature.where('id这给我留下了最新的10个条目。 最佳答案 从您的SQL来看,您似乎想要从表中删除前10条记录。我相信到目前为止的大多数答案都会如此。这里有两个额外的选择:基于MurifoX的版本:Table.where(:id=>Table.order(:id).
我目前正在用Ruby编写一个项目,它使用ActiveRecordgem进行数据库交互,我正在尝试使用ActiveRecord::Base.logger记录所有数据库事件具有以下代码的属性ActiveRecord::Base.logger=Logger.new(File.open('logs/database.log','a'))这适用于迁移等(出于某种原因似乎需要启用日志记录,因为它在禁用时会出现NilClass错误)但是当我尝试运行包含调用ActiveRecord对象的线程守护程序的项目时脚本失败并出现以下错误/System/Library/Frameworks/Ruby.frame
我有一个应用需要发送用户事件邀请。当用户邀请friend(用户)参加事件时,如果尚不存在将用户连接到该事件的新记录,则会创建该记录。我的模型由用户、事件和events_user组成。classEventdefinvite(user_id,*args)user_id.eachdo|u|e=EventsUser.find_or_create_by_event_id_and_user_id(self.id,u)e.save!endendend用法Event.first.invite([1,2,3])我不认为以上是完成我的任务的最有效方法。我设想了一种方法,例如Model.find_or_cr