初始化一台linux设备



time: 2018-06-18 13:00:00
tags: Linux
---

注意

系统版本: Ubuntu 18.04 LTS

代码

# 更新系统
sudo apt-get update
sudo apt-get upgrade -f -y

# 改变系统启动顺序
sudo vi /etc/default/grub
# 按INS键进入插入模式
# 改变GRUB_DEFAULT的值
# 按ESC退出插入模式
# 输入ZZ保存并退出
# 更新grub.cfg文件
sudo upgrade-grub

# 解决安装双系统后Windows下时间错乱
# 首先确保Ubuntu的时间正确
sudo apt-get install ntpdate
sudo ntpdate time.windows.com
# 更新硬件时间
sudo hwclock --localtime --systohc

# 配置Qt
sudo apt-get update
sudo apt -y full-upgrade
sudo apt install g++
sudo apt install gcc
sudo apt install make
sudo apt --fix-broken install
# 如果依然报错无法找到IGL
sudo apt-get install libgl-dev

# 卸载 firefox
dpkg --get-selections |grep firefox
sudo apt-get purge firefox

# 配置SSH
sudo apt-get update
sudo apt-get install openssh-client
sudo apt-get install openssh-server
# 检查是否安装成功
ps -e|grep ssh

# 配置VNC
sudo apt-get update
sudo apt-get install tightvncserver
# 启动服务
tightvncserver
# 关闭 VNC连接 n
vncserver -kill : n

# 安装 *.deb
sudo dpkg -i *.deb
# 如果报错,尝试:
sudo apt --fix-broken install

# 安装Caffe-cpu-only
sudo apt-get update
sudo apt install caffe-cpu
# 虽然caffe已经安装好,不过我们需要下载一些工具:
cd ~
git clone https://github.com/BVLC/caffe.git
# 下载mnist数据
sudo bash ~/caffe/data/mnist/get_mnist.sh
# 转换成LMDB数据
sudo bash ~/caffe/examples/mnist/create_mnist.sh
# 修改mnist例子的配置文件
sudo vi ~/caffe/examples/mnist/lenet_solver.prototxt
# 运行例子
sudo time sh ~/caffe/examples/mnist/train_lenet.sh

# 下载并安装Anaconda
cd ~/Download
wget -c https://mirrors4.tuna.tsinghua.edu.cn/anaconda/archive/Anaconda3-5.2.0-Linux-x86_64.sh
sudo bash ./Anaconda3-5.2.0-Linux-x86_64.sh
# 为Anaconda的Python设置alias
alias python_a="/home/**yourusername**/anaconda3/bin/python"

# 安装Caffe2
# 创建一个名为 caffe2env 的 Anaconda 环境
conda create --name caffe2env
# 激活 caffe2env
source activate caffe2env
# 安装caffe2-cpu-only
conda install -c caffe2 caffe2
# 关闭 caffe2env
source deactivate

原文地址:https://www.cnblogs.com/justsong/p/9195051.html

时间: 2024-08-29 10:38:22

初始化一台linux设备的相关文章

初始化一台linux server来做项目管理和测试

毕业以后很多没做过这么技术的事情了,不过今年要开始咯. Goal: 练手安装Nginx,并且配置不同的server,后端有Tomcat的(JIRA),有PHP(总得有的),还有Tornado和Node. 最后效果是都放在一个Nginx后面的不同子域名(而不是不同端口或者path).那么记录开始. [Optional] 懒人用的Ubuntu Server 没用CentOS因为不熟,用的Ubnutu 14.04.安装Xfce4+VNC.然后 vncserver :1 -geometry 1280x9

【转】Linux设备驱动之sysfs

Sysfs文件系统是一个类似于proc文件系统的特殊文件系统,用于将系统中的设备组织成层次结构,并向用户模式程序提供详细的内核数据结构信息. 去/sys看一看,localhost:/sys#ls /sys/block/ bus/ class/ devices/ firmware/ kernel/ module/ power/Block目录:包含所有的块设备Devices目录:包含系统所有的设备,并根据设备挂接的总线类型组织成层次结构Bus目录:包含系统中所有的总线类型Drivers目录:包括内核

Linux设备驱动核心理论(一)

4.Linux内核模块 4.1 Linux内核模块简介 如果把所有需要的功能都编译到Linux内核.这回导致两个问题,一是生成的内核会很大,二是如果我们要在现有的内核中新增或删除功能,将不得不重新编译内核. 现在我们需要的是一种机制使得编译出的内核本身并不需要包含所有功能,而在这些功能需要被使用的时候,其对应的代码被动态地加载到内核中. Linux提供了这样的一种机制,这种机制被称为模块(Module).模块具有这样的特点: 模块本身不被编译如内核映像,从而控制内核的大小. 模块一旦被加载,它就

linux设备驱动第五篇:驱动中的并发与竟态

综述 在上一篇介绍了linux驱动的调试方法,这一篇介绍一下在驱动编程中会遇到的并发和竟态以及如何处理并发和竞争. 首先什么是并发与竟态呢?并发(concurrency)指的是多个执行单元同时.并行被执行.而并发的执行单元对共享资源(硬件资源和软件上的全局.静态变量)的访问则容易导致竞态(race conditions).可能导致并发和竟态的情况有: SMP(Symmetric Multi-Processing),对称多处理结构.SMP是一种紧耦合.共享存储的系统模型,它的特点是多个CPU使用共

Linux设备驱动中的阻塞和非阻塞I/O

[基本概念] 1.阻塞 阻塞操作是指在执行设备操作时,托不能获得资源,则挂起进程直到满足操作所需的条件后再进行操作.被挂起的进程进入休眠状态(不占用cpu资源),从调度器的运行队列转移到等待队列,直到条件满足. 2.非阻塞 非阻塞操作是指在进行设备操作是,若操作条件不满足并不会挂起,而是直接返回或重新查询(一直占用CPU资源)直到操作条件满足为止. 当用户空间的应用程序调用read(),write()等方法时,若设备的资源不能被获取,而用户又希望以阻塞的方式来访问设备,驱动程序应当在设备驱动层的

Linux 设备和模块的分类

概念:在Linux系统中,所有设备都被映射成 [设备文件] 来处理,设备文件,应用程序可以像操作普通文件一样对硬件设备进行操作. 一.设备类型 整理自:(相当不错,建议有时间看下原文) <第一章 设备驱动简介 1.3.节 设备和模块的分类> <Linux设备驱动之字符设备驱动> 一般情况下,以 Linux 的设备可区分为 3 种基本设备类型:字符设备.块设备,  网络设备 一个字符设备或块设备都在/dev目录下对应一个设备文件. linux用户程序通过设备文件(或称设备节点)来使用

Linux设备驱动开发 - 平台设备驱动

Linux2.6的内核中引入了一种新的设备驱动模型-平台(platform)设备驱动,平台设备驱动分为平台设备(platform_device)和平台驱动(platform_driver),平台设备的引入使得Linux设备驱动更加便于移植. 一.平台设备平台设备结构体: 1 struct platform_device { 2 const char * name; /* 设备名 */ 3 int id; 4 struct device dev; /* 设备结构体 */ 5 u32 num_res

linux设备驱动第三篇:写一个简单的字符设备驱动

在linux设备驱动第一篇:设备驱动程序简介中简单介绍了字符驱动,本篇简单介绍如何写一个简单的字符设备驱动.本篇借鉴LDD中的源码,实现一个与硬件设备无关的字符设备驱动,仅仅操作从内核中分配的一些内存. 下面就开始学习如何写一个简单的字符设备驱动.首先我们来分解一下字符设备驱动都有那些结构或者方法组成,也就是说实现一个可以使用的字符设备驱动我们必须做些什么工作. 1.主设备号和次设备号 对于字符设备的访问是通过文件系统中的设备名称进行的.他们通常位于/dev目录下.如下: [plain] vie

linux设备驱动阻塞机制 等待队列

阻塞与非阻塞是设备访问的两种方式.在写阻塞与非阻塞的驱动程序时,经常用到等待队列. 一.阻塞与非阻塞 阻塞调用是指调用结果返回之前,当前线程会被挂起,函数只有在得到结果之后才会返回. 非阻塞指不能立刻得到结果之前,该函数不会阻塞当前进程,而会立刻返回. 对象是否处于阻塞模式和函数是不是阻塞调用有很强的相关性,但并不是一一对应的.阻塞对象上可以有非阻塞的调用方式,我们可以通过一定的API去轮询状态,在适当的时候调用阻塞函数,就可以避免阻塞.而对于非阻塞对象,调用的函数也可以进入阻塞调用.函数sel