当前位置: 首页 > news >正文

ubuntu学习技巧2:Terminal命令学习

1.两台Ubuntu系统相互进行文件传输

-ssh

	$: sudo apt-get install openssh-server
	
	## 从服务器(远程端)拷贝整个目录到当地文件夹中:
	scp -r username@servername:/var/www/remote_dir/(远程目录) /var/www/local_dir(本地目录)
	
	## 将本地文件目录上传到服务器(远程端):
	scp  -r local_dir username@servername:remote_dir

-NFS

	$: sudo apt-get install nfs-kernel-server

	"主客户端:"
	#为指定IP设置共享文件目录,向/etc/exports添加以下内容:
		/home/user/catkin_ws/src/        192.***.**.**(rw,sync,fsid=0,crossmnt,no_subtree_check,no_root_squash)
	
	#添加完成之后重启nfs服务:
		$: 	sudo /etc/init.d/nfs-kernel-server restart
	# 不想再分享这个目录之后,可以关闭该服务器的分享目录:
		$: 	/etc/init.d/nfs-kernel-server stop
	
	"从客户端:"
	#为了从主客户端中分享出来的目录下复制文件,现在本地建立一个文件夹nfs,然后再将主客户端的分享文件夹挂载在nfs/下:
		$: mkdir ./nfs
		$: sudo mount -t nfs -o  tcp,rw,nolock  192.168.1.114:/home/ian/catkin_ws/src/ ./nfs/

在退出时,先在从客户端退出文件夹,并取消挂载的目录文件夹,然后再在主客户端上关闭该分享服务.

2.linux 命令详解 (节选部分非常有用的)

	ps aux | grep ros | awk '{print $2}' | xargs kill -9

3.为minipc增加虚拟内存(编译大项目时会出现内存不够,程序已杀死)

	"虚拟内存可以大于电脑的实际内存"
	free -m  ## 可以查看自己系统原有的交换内存大小,单位是M
	sudo su -
	mkdir swap && cd swap    ## 此时是在根目录下创建一个文件夹swap
	
	dd if=/dev/zero of=swapfile bs=1G count=8
	## 总共设置8G内存
	
	"激活虚拟交换内存"
	mkswap swapfile
	swapon swapfile  ## 可忽略警告,因为这个时候你去查看就可以发现交换内存已经增加了(暂时的).
	## 到这里就已经成功了,但是为了重启之后设置的虚拟内存依然有效,则进行以下设置
	
	sudo swapoff  /swap/swapfile   ##  遇到设备忙等错误时,可以关掉Swap文件再重新激活;
	sudo swapon /swap/swapfile  ## 激活Swap
	
	## 此时开的虚拟内存是暂时的,可以设置永久保持
	sudo vim /etc/fstab
	## 中间不是空格,而是`tab`键
	/swap/swapfile	/swap	swap	defaults	0	0
	

4. /usr/bin/ld: 找不到-lmosek64 一类型的错误

	"首先定位所需要的库文件是否已经安装,若没有则安装即可"
	locate libmosek64*
	
	"若库文件已经存在,则需要链接库,一般是链接到 /usr/lib/x86_64-linux-gnu/ 目录下"
	sudo ln -s  ***上一步你定位到的库文件目录***/libmosek64.so.1**  /usr/lib/x86_64-linux-gnu/libmosek64.so

[参考链接]

1.ssh-scp

2.NFS-mount

3.增加虚拟内存

星期五, 05. 七月 2019 11:55上午

相关文章:

  • RobotSlamApplication(2): 视觉SLAM中常用的一些第三方库简介
  • C++11回顾学习(1): 语法简要回顾和通俗解释
  • 菜鸟专学:从头到尾创建自己的SLAM系统
  • 菜鸟专学:Eigen--Sophus--CV--三种不同库对矩阵的操作方式
  • ROS回顾学习(7):ubuntu下设置(ROS)程序开机自启动
  • RTAB-Map学习和测试详解
  • ROS回顾学习(8): 项目研究中遇到问题和难点记录
  • 菜鸟专学:明确自己编程习惯的变量命名法
  • OpenCV第一讲: 常规函数和类的使用 -- HighGui Core模块
  • kinect V2 驱动安装说明
  • C++11回顾学习(2): 一些常用的函数和小技巧
  • ROS回顾学习(9): 单通道深度图像转化为彩色图发布
  • C++11回顾学习(3): CPU多核与多线程、并行与并发
  • OpenCV第二讲:图像滤波及几何变换
  • OpenCV第三讲: 方框滤波、均值滤波、高斯滤波
  • 时间复杂度分析经典问题——最大子序列和
  • conda常用的命令
  • Git的一些常用操作
  • Java 最常见的 200+ 面试题:面试必备
  • Python代码面试必读 - Data Structures and Algorithms in Python
  • weex踩坑之旅第一弹 ~ 搭建具有入口文件的weex脚手架
  • 基于Javascript, Springboot的管理系统报表查询页面代码设计
  • 经典排序算法及其 Java 实现
  • 配置 PM2 实现代码自动发布
  • 前端相关框架总和
  • 入手阿里云新服务器的部署NODE
  • 使用Gradle第一次构建Java程序
  • 小程序上传图片到七牛云(支持多张上传,预览,删除)
  • 验证码识别技术——15分钟带你突破各种复杂不定长验证码
  • Oracle Portal 11g Diagnostics using Remote Diagnostic Agent (RDA) [ID 1059805.
  • raise 与 raise ... from 的区别
  • 不要一棍子打翻所有黑盒模型,其实可以让它们发挥作用 ...
  • 好程序员web前端教程分享CSS不同元素margin的计算 ...
  • ​你们这样子,耽误我的工作进度怎么办?
  • # Maven错误Error executing Maven
  • #mysql 8.0 踩坑日记
  • (ibm)Java 语言的 XPath API
  • (ISPRS,2023)深度语义-视觉对齐用于zero-shot遥感图像场景分类
  • (附源码)php投票系统 毕业设计 121500
  • (附源码)springboot 智能停车场系统 毕业设计065415
  • (附源码)SSM环卫人员管理平台 计算机毕设36412
  • (十五)devops持续集成开发——jenkins流水线构建策略配置及触发器的使用
  • (五)c52学习之旅-静态数码管
  • (学习日记)2024.03.12:UCOSIII第十四节:时基列表
  • (转)Sublime Text3配置Lua运行环境
  • .net core 微服务_.NET Core 3.0中用 Code-First 方式创建 gRPC 服务与客户端
  • .NET MVC 验证码
  • .Net的DataSet直接与SQL2005交互
  • .net下简单快捷的数值高低位切换
  • .Net下使用 Geb.Video.FFMPEG 操作视频文件
  • .vue文件怎么使用_vue调试工具vue-devtools的安装
  • /var/spool/postfix/maildrop 下有大量文件
  • @reference注解_Dubbo配置参考手册之dubbo:reference
  • [AI]文心一言爆火的同时,ChatGPT带来了这么多的开源项目你了解吗
  • [GDMEC-无人机遥感研究小组]无人机遥感小组-000-数据集制备