Ubuntu 及 Ros 配置

前言

简要的记录配置 UbuntuROS 的过程,感觉在Docker 里面运行 ROS 还是不舒服的,因此在自己的windows电脑里安装了 VirtualBox(主要是开源免费), 进而安装了 Ubuntu 2020版本的。几年之前把实验室那台电脑配置的好好的,但是很多东西都忘记了,感觉还是有记录的必要性的。

下面的内容是参考了 yangbingdong的博客进行配置的。

关掉sudo的密码

先修改默认编辑器为vim(默认为nano):

sudo update-alternatives --config editor

输入vim对应的序号回车即可。

打开 visudo

sudo visudo

找到

# Allow members of group sudo to execute any command
%sudo ALL=(ALL:ALL) ALL

修改为

%sudo   ALL=(ALL:ALL) NOPASSWD:ALL

这样所有sudo组内的用户使用sudo时就不需要密码了。

如果不小心输入错了且保存退出了,再用 sudo visudo 可能就进不去了,这时候可通过 pkexec visudo 来修复这一问题。

Oh-My-Zsh

首先, 安装 Zsh

sudo apt-get install zsh

接下来需要下载 oh-my-zsh 项目来帮我们配置 zsh, 采用wget安装(需要先安装git)

sudo apt-get install git -y

然后输入

sh -c "$(wget https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh -O -)"

更换shell,运行以下命令将默认shell更改为Zsh:

chsh -s $(which zsh)

ROS 的安装

这个维基百科说的太详细了,可参考网址 wiki.ros.org/noetic/installnation/Ubuntu,下面就简要的说一部分。首先先设置好Ubuntu 软件更新那部分,需要将允许 “restricted”,”universe”和“multiverse”,可参考网址 https://help.ubuntu.com/community/Repositories/Ubuntu

然后添加ROS源

sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'

和密钥

sudo apt-key adv --keyserver 'hkp://keyserver.ubuntu.com:80' --recv-key C1CF6E31E6BADE8868B172B4F42ED6FBAB17C654

添加结束后,刷新下 sudo apt-get update, 安装即可(我这里都安装了)

sudo apt install ros-noetic-desktop-full

如果不想每次打开命令行都 souce /opt/ros/noetic/setup.bash, 可以将此内容加到bash或zsh中,看自己用的shell了,自己的是zsh,所以直接加进去即可

echo "souce /opt/ros/noetic/setup.bash" >> ~/.zshrc

这样每次打开一个命令行的时候,都会运行。

关闭Ubuntu开机时输入密码

主要是每次登陆虚拟机都要输入开机密码,比较烦, 有个简单的办法可以关闭, 在设置里找到下图所示的位置, 点击自动登陆即可

dpkg frontend lock

常见报错了。。。。

Unable to acquire the dpkg frontend lock (/var/lib/dpkg/lock-frontend), is another process using it?

sudo rm /var/lib/dpkg/lock-frontend
sudo dpkg --configure -a

查看根文件磁盘空间使用情况

df -h | grep '/$'

删除桌面图标

个人问题, 喜欢桌面的清洁,除非非常非常重要的东西,一般不会把任何文件放置在桌面上的,下面主要是针对不容易删除的图标进行的操作

gsettings set org.gnome.shell.extensions.desktop-icons show-trash false
gsettings set org.gnome.shell.extensions.desktop-icons show-home false
CMakeLists Eigen FCPX GNU Gazebo Git Interest KDL Life Linux Matrix ODE ROS Ros UML Ubuntu VcXsrv algorithm algorithms axis-angle bode calibration chrome control cpp data_struct dots figure gdb latex launch life linux mac math matlab memory motor moveit operator optimal algorithm python robot robotics ros ros2 rtb simulation stl thread tools twist urdf velocity vim web work wsl
知识共享许可协议