Linux迷+Python粉 - 系统https://blog.pythonwood.com/2018-04-27T19:00:00+08:00XUbuntu18.04(Bionic河狸)正式发布,系统安装升级记录2018-04-27T19:00:00+08:002018-04-27T19:00:00+08:00pythonwoodtag:blog.pythonwood.com,2018-04-27:/2018/04/XUbuntu18.04(Bionic河狸)正式发布,系统安装升级记录/<p>Ubuntu&nbsp;18.04发布时间是(美国)4月26号,彼时的中国已经是27号,就是今天。我花了一天时间折腾升级旧Ubuntu系统到刚发布的最新版。</p> <p>多年使用linux经验已经使得这个过程驾轻就熟,闲庭信步:)。为了不忘记,将有沉淀价值的部分,简要记录一下。</p> <h2 id="linuxubuntu">偶然得知Linux,成为Ubuntu多年用户<a class="headerlink" href="#linuxubuntu" title="Permanent link">&para;</a></h2> <h3 id="ubuntults">建议:只使用Ubuntu的<span class="caps">LTS</span>版本(长期维护 …</h3><p>Ubuntu&nbsp;18.04发布时间是(美国)4月26号,彼时的中国已经是27号,就是今天。我花了一天时间折腾升级旧Ubuntu系统到刚发布的最新版。</p> <p>多年使用linux经验已经使得这个过程驾轻就熟,闲庭信步:)。为了不忘记,将有沉淀价值的部分,简要记录一下。</p> <h2 id="linuxubuntu">偶然得知Linux,成为Ubuntu多年用户<a class="headerlink" href="#linuxubuntu" title="Permanent link">&para;</a></h2> <h3 id="ubuntults">建议:只使用Ubuntu的<span class="caps">LTS</span>版本(长期维护)<a class="headerlink" href="#ubuntults" title="Permanent link">&para;</a></h3> <p>我的Ubuntu升级之路是10.04 -&gt; 14.04 -&gt; 18.0,中间的<span class="caps">LTS</span>版本12.04和16.04因在升级后不满意而没用,回滚恢复降版本。如果升级前没有备份,就没法恢复。系统升级前备份旧系统的准备很重要,让你可以安心折腾走得更远。这次也是花了很长时间全备份的。如果失败需要恢复系统可参考<a href="https://blog.pythonwood.com/2017/11/树莓派SD卡Linux系统盘复制,10分钟克隆新机/" title="树莓派SD卡Linux系统盘复制,10分钟克隆新机">关于linux系统备份与恢复的随笔</a></p> <h3 id="xubuntu1804bionic">期待已久的XUbuntu18.04(Bionic河狸)正式发布<a class="headerlink" href="#xubuntu1804bionic" title="Permanent link">&para;</a></h3> <p>新系统意味着更好的驱动,更好的软件版本,比如ubuntu14.04驱动<span class="caps">RTL8723BE</span>这种网卡会偶尔掉线。不幸,我的一台笔记本就是<span class="caps">RTL8723BE</span>网卡的。显然大版本升级 14.04 -&gt; 18.04 能巧妙地不折腾而解决很多旧问题(再比如http2支持)。因此,我是带着期待在等待Ubuntu18.04发布的,同时这次升级也没有退路(14.04太老了)。幸好,升级还算满意。已经用上了最新Ubuntu了,并且速度还可以,在换<span class="caps">SSD</span>盘后的酷睿I3老机上运行顺畅。</p> <h4 id="ubuntu-1804-xubutnu">Ubuntu 18.04 桌面截图(XUbutnu)<a class="headerlink" href="#ubuntu-1804-xubutnu" title="Permanent link">&para;</a></h4> <p><img alt="XUbutnu18.04桌面截图" src="https://blog.pythonwood.com/uploads/2018/2018-04-27XUbutnu18.04桌面截图.jpg" title="XUbutnu18.04桌面截图"></p> <h2 id="ubutnu1804-xfce">Ubutnu18.04安装升级过程 (Xfce版本)<a class="headerlink" href="#ubutnu1804-xfce" title="Permanent link">&para;</a></h2> <h3 id="10-ubutnuxubuntu">1.0 选择并下载Ubutnu版本(XUbuntu)<a class="headerlink" href="#10-ubutnuxubuntu" title="Permanent link">&para;</a></h3> <p>旧系统是配搭Xfce桌面的<a href="https://blog.pythonwood.com/2014/07/笔记本系统转换Linux一个半月——xubuntu14.04截图纪念里程碑/" title="xubuntu14.04截图纪念">XUbuntu14.04</a>,Xfce同时也是Linus本人选择<a href="https://linux.cn/article-202-1.html" title="Linus Torvalds 弃 GNOME 3 用 Xfce">Linus Torvalds 弃 <span class="caps">GNOME</span> 3 用 Xfce</a>。XUbuntu里面的好软件有很多,比如文件管理器Thunar,截图软件xfce4-screenshooter,网速提示器xfce4-netload-plugin,<span class="caps">CPU</span>内存提示器xfce4-systemload-plugin等等。同时Ubuntu18的Xfce比原版<span class="caps">ISO</span>文件轻量很多。 <img alt="Ubuntu18的Xfce比原版ISO文件轻量很多" src="https://blog.pythonwood.com/uploads/2018/2018-04-27Ubuntu18的Xfce比原版ISO文件轻量很多.jpg"></p> <h3 id="20">2.0 升级前先备份<a class="headerlink" href="#20" title="Permanent link">&para;</a></h3> <h4 id="21-deb">2.1 备份已安装过的deb包名称列表<a class="headerlink" href="#21-deb" title="Permanent link">&para;</a></h4> <div class="highlight"><pre><span></span><span class="o">(</span> <span class="nt">zcat</span> <span class="o">/</span><span class="nt">var</span><span class="o">/</span><span class="nt">log</span><span class="o">/</span><span class="nt">apt</span><span class="o">/</span><span class="nt">history</span><span class="p">.</span><span class="nc">log</span><span class="o">*</span><span class="p">.</span><span class="nc">gz</span> <span class="o">|</span> <span class="nt">grep</span> <span class="nt">Commandline</span><span class="o">:</span> <span class="o">;</span> <span class="nt">zcat</span> <span class="o">/</span><span class="nt">var</span><span class="o">/</span><span class="nt">log</span><span class="o">/</span><span class="nt">apt</span><span class="o">/</span><span class="nt">history</span><span class="p">.</span><span class="nc">log</span><span class="o">*</span><span class="p">.</span><span class="nc">gz</span> <span class="o">|</span> <span class="nt">grep</span> <span class="nt">Commandline</span><span class="o">:</span> <span class="o">)</span> <span class="o">&gt;</span> <span class="o">~/</span><span class="nt">deb</span><span class="p">.</span><span class="nc">list</span><span class="p">.</span><span class="nc">txt</span> </pre></div> <h4 id="22-pythonrubyperl">2.2 备份已安装过的python包名称列表(无则忽略,ruby,perl等备份操作同理)<a class="headerlink" href="#22-pythonrubyperl" title="Permanent link">&para;</a></h4> <div class="highlight"><pre><span></span>( pip2 list ; pip3 list ) &gt; ~/pip.list.txt </pre></div> <h4 id="23-etcvar-rootetcvar">2.3 /etc,/var一些关键目录备份, root权限执行(/etc是配置文件仓库,/var包含各用户的定时任务)<a class="headerlink" href="#23-etcvar-rootetcvar" title="Permanent link">&para;</a></h4> <div class="highlight"><pre><span></span>cd /; sudo tar czf ~/etc.tar.gz etc var/spool/cron/crontabs </pre></div> <h4 id="24">2.4 繁重但强烈建议的全盘备份<a class="headerlink" href="#24" title="Permanent link">&para;</a></h4> <p>备份方法多种:rsync同步到安全盘备份 或 tar打包放到安全目录下 或&nbsp;dd复制分区为文件保存到安全目录下。</p> <h3 id="30">3.0 分区、格式化、安装<a class="headerlink" href="#30" title="Permanent link">&para;</a></h3> <h4 id="31-ubuntu1804">3.1 方式一:从新硬盘或空白分区安装ubuntu18.04<a class="headerlink" href="#31-ubuntu1804" title="Permanent link">&para;</a></h4> <p>linux分区不是越多越好的,推荐 / + /home 模式, 实用而不折腾,&nbsp;一个分区代表系统,一个分区代表用户数据空间。这样的好处就是为后续升级带来方便。</p> <p>根 / 分区给15G已经完全足够,绰绰有余了。&nbsp;把剩余空间都给/home,因为/分区使用量不会明显增加,/home分区放的东西却会成倍的增加。</p> <p>多年之后我目前用的分区方式,window与linux双系统共存的分区方式。msdos方式只能4主分区,刚好用完: <img alt="Ubuntu安装推荐分区" src="https://blog.pythonwood.com/uploads/2018/2018-04-27Ubuntu安装推荐分区.jpg" title="Ubuntu安装推荐分区"></p> <h4 id="32-linux">3.2 方式二:从旧linux系统升级<a class="headerlink" href="#32-linux" title="Permanent link">&para;</a></h4> <p>告诫:不要尝试从命令<code>sudo apt-get dist-upgrade</code>升级,结局一般都是不能自动处理错误而中止升级,系统可能因此寿终正寝,只留下无辜的你。这和不要尝试用系统升级方法装windows是一样的。</p> <p>参考升级方法:</p> <ol> <li>之前已有linux分区是 / + /home 模式,先把 &ldquo;/&rdquo; 所在分区格式化,然后将整个ubuntu18.04安装 &ldquo;/&rdquo;&nbsp;所在区。</li> <li>系统安装后重启进入ubuntu18.04系统,原 &ldquo;/home&rdquo; 分区不会挂载。&nbsp;总过程已经完成一半了。</li> <li>再挂载并将原 &ldquo;/home&rdquo; 分区清理瘦身一下,删除家目录中.thumbnails,&nbsp;.cache这些可能冲突或不大重要的用户数据。</li> <li>将新/home目录内容rsync同步到旧 &ldquo;/home&rdquo;&nbsp;分区所在目录里。</li> <li>修改/etc/fstab,增加1行让系统重启后挂载原 &ldquo;/home&rdquo;&nbsp;盘。确认无误后重启就完成全部过程。</li> </ol> <p>这样的好处是家目录中的图片、视频、工作文件、工作目录等用户资料依然在那里,变了的只是系统部分,优雅完成升级。</p> <h3 id="40-ubuntu1804">4.0 安装Ubuntu18.04系统之后的优化<a class="headerlink" href="#40-ubuntu1804" title="Permanent link">&para;</a></h3> <h4 id="41-ubuntu1804">4.1 Ubuntu18.04修改源<a class="headerlink" href="#41-ubuntu1804" title="Permanent link">&para;</a></h4> <p>原来的url是cn.archive.ubuntu.com, 速度下载包时有<span class="caps">3MB</span>以上。其实不换也是可以的。</p> <p>如果要换, 以阿里举例, 修改/etc/apt/sources.list文件内容即可(修改前备份),&nbsp;改其他第三方的同理该域名即可。</p> <div class="highlight"><pre><span></span><span class="k">deb</span> <span class="s">http://mirrors.aliyun.com/ubuntu/</span> <span class="kp">bionic</span> <span class="kp">main</span> <span class="kp">restricted</span> <span class="k">deb</span> <span class="s">http://mirrors.aliyun.com/ubuntu/</span> <span class="kp">bionic-updates</span> <span class="kp">main</span> <span class="kp">restricted</span> <span class="k">deb</span> <span class="s">http://mirrors.aliyun.com/ubuntu/</span> <span class="kp">bionic</span> <span class="kp">universe</span> <span class="k">deb</span> <span class="s">http://mirrors.aliyun.com/ubuntu/</span> <span class="kp">bionic-updates</span> <span class="kp">universe</span> <span class="k">deb</span> <span class="s">http://mirrors.aliyun.com/ubuntu/</span> <span class="kp">bionic</span> <span class="kp">multiverse</span> <span class="k">deb</span> <span class="s">http://mirrors.aliyun.com/ubuntu/</span> <span class="kp">bionic-updates</span> <span class="kp">multiverse</span> <span class="k">deb</span> <span class="s">http://mirrors.aliyun.com/ubuntu/</span> <span class="kp">bionic-backports</span> <span class="kp">main</span> <span class="kp">restricted</span> <span class="kp">universe</span> <span class="kp">multiverse</span> <span class="k">deb</span> <span class="s">http://mirrors.aliyun.com/ubuntu</span> <span class="kp">bionic-security</span> <span class="kp">main</span> <span class="kp">restricted</span> <span class="k">deb</span> <span class="s">http://mirrors.aliyun.com/ubuntu</span> <span class="kp">bionic-security</span> <span class="kp">universe</span> <span class="k">deb</span> <span class="s">http://mirrors.aliyun.com/ubuntu</span> <span class="kp">bionic-security</span> <span class="kp">multiverse</span> </pre></div> <h3 id="42-ubuntu1804">4.2 Ubuntu18.04调整用户界面、桌面工具栏、安装字体、重新安装历史包等<a class="headerlink" href="#42-ubuntu1804" title="Permanent link">&para;</a></h3> <h4 id="421-xp">4.2.1 调整桌面工具栏到下面,下重上轻的风格看起来比较稳重。也是xp时代传下的习惯。<a class="headerlink" href="#421-xp" title="Permanent link">&para;</a></h4> <h5 id="xubutnu1804ubuntubionic-beaver"><strong>XUbutnu18.04截图(Ubuntu),这个版本别名&rdquo;Bionic Beaver&rdquo;仿生河狸</strong><a class="headerlink" href="#xubutnu1804ubuntubionic-beaver" title="Permanent link">&para;</a></h5> <p><img alt="XUbutnu18.04程序截图" src="https://blog.pythonwood.com/uploads/2018/2018-04-27XUbutnu18.04程序截图.jpg" title="XUbutnu18.04程序截图"></p> <h4 id="422-cpu">4.2.2 在桌面地板面板工具栏上,添加自定义显示比如网速,<span class="caps">CPU</span>,内存等。<a class="headerlink" href="#422-cpu" title="Permanent link">&para;</a></h4> <p>添加网速提示器xfce4-netload-plugin,<span class="caps">CPU</span>内存提示器xfce4-systemload-plugin后的工具栏随时可获知负载网速这些计算机情况,用户体验比windows更赞! <img alt="XUbuntu已设置显示网速和CPU内存负载的工具栏" src="https://blog.pythonwood.com/uploads/2018/2018-04-27XUbuntu已设置显示网速和CPU内存负载的工具栏.jpg" title="XUbuntu已设置显示网速和CPU内存负载的工具栏"></p> <h4 id="423">4.2.3 安装谷歌拼音,文泉驿字体,调整系统字体大小等<a class="headerlink" href="#423" title="Permanent link">&para;</a></h4> <p>Ubuntu18.04默认安装fcitx-sunpinyin也好用,用起来和googlepinyin差不多。所以……我还是选大款的好了。</p> <div class="highlight"><pre><span></span>sudo apt-get install fcitx-googlepinyin fonts-wqy* </pre></div> <h4 id="424">4.2.4 安装以前安装过的软件<a class="headerlink" href="#424" title="Permanent link">&para;</a></h4> <p>之前记录过旧系统安装的软件,现在按需安装回来。</p> <div class="highlight"><pre><span></span>apt-get install gedit gthumb tmux vim-gtk3 python-pip python3-pip ipython ipython3 iotop iftop sysstat nload iptraf virtualbox virtualbox-ext-pack gparted testdisk fcitx-googlepinyin smplayer vlc gpaint xpaint pinta pelican python-bs4 axel aria2 unzip apt-file gimp remmina retext potool curl geoip-bin phantomjs lynx vim-tiny gnome-disk-utility sqlite3 python-mysqldb python-pymysql kazam pitivi gsound-tools flowblade mp3splt-gtk mp3wrap mtp-tools adb cmake </pre></div> <h3 id="43-qqctrlaltalinuxxfce-screenshooterqq">4.3 实现<span class="caps">QQ</span>截图功能,快捷键Ctrl+Alt+A框选截屏。(linux下用xfce-screenshooter变身<span class="caps">QQ</span>截图神器)<a class="headerlink" href="#43-qqctrlaltalinuxxfce-screenshooterqq" title="Permanent link">&para;</a></h3> <p>不需安装额外软件xfce-screenshooter是XUbuntu自带的,只需操作如下步骤: 打开设置-&gt; 键盘 -&gt; 应用程序快捷键 -&gt; 添加。 然后命令框输入xfce4-screenshooter&nbsp;&ndash;region确认,再按住Ctrl+Alt+A,确认添加即可。</p> <p>xfce4-screenshooter这软件很赞,不需安装<span class="caps">QQ</span>就能有很好的截图体验。某些时候,linux用户体验可以比windows好,需要使用者本身已经对linux比较上手。 <img alt="在Linux下设置QQ截图功能" src="https://blog.pythonwood.com/uploads/2018/2018-04-27在Linux下设置QQ截图功能.jpg" title="在Linux下设置QQ截图功能"></p> <h3 id="50-ubuntu1804">5.0 安装Ubuntu18.04系统之后的问题解决<a class="headerlink" href="#50-ubuntu1804" title="Permanent link">&para;</a></h3> <h4 id="51-ubuntu1804shadowsocks">5.1 Ubuntu18.04启动shadowsocks报错解决<a class="headerlink" href="#51-ubuntu1804shadowsocks" title="Permanent link">&para;</a></h4> <p>原因:openssl升级到1.1.0以上版本,导致shadowsocks启动报undefined symbol:&nbsp;EVP_CIPHER_CTX_cleanup错误</p> <p>解决:&nbsp;将py文件中所有的EVP_CIPHER_CTX_cleanup改为EVP_CIPHER_CTX_reset</p> <div class="highlight"><pre><span></span>sudo vim /usr/local/lib/python2.7/dist-packages/shadowsocks/crypto/openssl.py # 按实际路径改 </pre></div> <h4 id="52-ubuntu1804wpserror-while-loading-shared-libraries-libpng12so0">5.2 Ubuntu18.04安装wps(解决报错error while loading shared libraries: libpng12.so.0)<a class="headerlink" href="#52-ubuntu1804wpserror-while-loading-shared-libraries-libpng12so0" title="Permanent link">&para;</a></h4> <p>第一步下载wps-office_10.1.0.5672~a21_amd64.deb, libpng12-0_1.2.54-1ubuntu1_amd64.deb,&nbsp;wps_symbol_fonts.zip(window字体非必须)文件备用。</p> <p>第二步运行命令安装:</p> <div class="highlight"><pre><span></span>sudo dpkg -i wps-office_10.1.0.5672~a21_amd64.deb libpng12-0_1.2.54-1ubuntu1_amd64.deb </pre></div> <h4 id="53-panel">5.3 底部面板panel出现重复的网络图标解决<a class="headerlink" href="#53-panel" title="Permanent link">&para;</a></h4> <p><img alt="panel面板重复出现network图标" src="https://blog.pythonwood.com/uploads/2018/2018-05-09面板显示重复网络图标.png" title="panel面板重复出现network图标"></p> <p>解决:设置 - 会话与启动 - 程序自启动 - 取消勾选network项。 注销,再登录,重新勾选,注销,再登录。&nbsp;图标恢复只有一个。</p> <h3 id="60-ubuntu1804">6.0 安装Ubuntu18.04总结提升<a class="headerlink" href="#60-ubuntu1804" title="Permanent link">&para;</a></h3> <p>升级过程比较有把握,遇到的问题都是典型缺so文件这些小问题,通过谷歌搜索就能解决。</p> <p>某些时候,linux用户体验可以比windows好,需要使用者本身已经对linux比较上手。</p>树莓派初始化环境搭建的一些事2017-12-05T13:46:00+08:002017-12-05T13:46:00+08:00pythonwoodtag:blog.pythonwood.com,2017-12-05:/2017/12/树莓派初始化环境搭建的一些事/<p>第二波研究树莓派功能了,上次主要是当作linux系统来研究,这次当作只能设备来研究。是奔着遥控式家庭影音的方案来研究的,树莓派的基础环境非常重要,所以从新理一理,记录下来。</p> <h3 id="_1">一、奔着遥控式家庭影音的购买方案<a class="headerlink" href="#_1" title="Permanent link">&para;</a></h3> <p>经比较,树莓派在京东是挺贵的,鉴于是标准化带电子产品,去天猫买<a href="https://s.click.taobao.com/t?e=m%3D2%26s%3Di1ZaWZT35VIcQipKwQzePOeEDrYVVa64K7Vc7tFgwiHjf2vlNIV67pR2%2B%2F9Hp9mCHGUKWrwhgPms9V29auOuBOBgn3DwXo5fTavSczFePlBPv%2F0P2woSTIiNFfNqYeZfZqRIxUL2qmOWt8ptzziuV9VDE9N5gf5%2FRemoLTADB2DGJe8N%2FwNpGw%3D%3D&amp;pvid=10_120.239.178.0_551_1512529291425" title="树莓派天猫链接">树莓派</a>可以了。我没买<span class="caps">SD</span>卡,将旧的class10的16G的<span class="caps">SD …</span></p><p>第二波研究树莓派功能了,上次主要是当作linux系统来研究,这次当作只能设备来研究。是奔着遥控式家庭影音的方案来研究的,树莓派的基础环境非常重要,所以从新理一理,记录下来。</p> <h3 id="_1">一、奔着遥控式家庭影音的购买方案<a class="headerlink" href="#_1" title="Permanent link">&para;</a></h3> <p>经比较,树莓派在京东是挺贵的,鉴于是标准化带电子产品,去天猫买<a href="https://s.click.taobao.com/t?e=m%3D2%26s%3Di1ZaWZT35VIcQipKwQzePOeEDrYVVa64K7Vc7tFgwiHjf2vlNIV67pR2%2B%2F9Hp9mCHGUKWrwhgPms9V29auOuBOBgn3DwXo5fTavSczFePlBPv%2F0P2woSTIiNFfNqYeZfZqRIxUL2qmOWt8ptzziuV9VDE9N5gf5%2FRemoLTADB2DGJe8N%2FwNpGw%3D%3D&amp;pvid=10_120.239.178.0_551_1512529291425" title="树莓派天猫链接">树莓派</a>可以了。我没买<span class="caps">SD</span>卡,将旧的class10的16G的<span class="caps">SD</span>利用上(class10意思是写入速度约<span class="caps">10MB</span>/s)。</p> <ol> <li> <p><strong>我购买并用上的:</strong> <a href="https://s.click.taobao.com/t?e=m%3D2%26s%3DjB5CtrQXlAccQipKwQzePOeEDrYVVa64K7Vc7tFgwiHjf2vlNIV67rCnyOxJms%2BVtTN3K9waqqis9V29auOuBOBgn3DwXo5fTavSczFePlBPv%2F0P2woSTBN3oW5I7sw9oXcuyoAGSVzy%2Flc8YI1OgQvABqsOAyUlBEellxPfI1OiZ%2BQMlGz6FQ%3D%3D&amp;pvid=10_120.239.178.0_533_1512539397311" title="公牛usb插座天猫链接">公牛usb魔方插座</a>,<a href="https://s.click.taobao.com/t?e=m%3D2%26s%3Di1ZaWZT35VIcQipKwQzePOeEDrYVVa64K7Vc7tFgwiHjf2vlNIV67pR2%2B%2F9Hp9mCHGUKWrwhgPms9V29auOuBOBgn3DwXo5fTavSczFePlBPv%2F0P2woSTIiNFfNqYeZfZqRIxUL2qmOWt8ptzziuV9VDE9N5gf5%2FRemoLTADB2DGJe8N%2FwNpGw%3D%3D&amp;pvid=10_120.239.178.0_551_1512529291425" title="树莓派天猫链接">树莓派</a>,<a href="https://s.click.taobao.com/t?e=m%3D2%26s%3DyO9jlKzcxlwcQipKwQzePOeEDrYVVa64K7Vc7tFgwiHjf2vlNIV67jeJ0D4P3i%2B8UOZr0mLjuses9V29auOuBOBgn3DwXo5fs9cRaxJdiKw3LnkA3bZiA%2F6gPESVKznnDfaTZ11r%2FGF6awgoXsc5TKo%2FiSVAKeldcSpj5qSCmbA%3D&amp;pvid=10_120.239.178.6_72377_1512026724825" title="华趸hdmi转vga线带音频带供电"><span class="caps">HDMI</span>转<span class="caps">VGA</span>带供电</a>,带开关按钮线的电源,杜邦线。</p> </li> <li> <p><strong>不用购买就用上的配件:</strong> 红外接收仪(从坏的遥控玩具拆下可用),旧电视遥控器一个,老<span class="caps">VGA</span>显示屏,旧音箱。</p> </li> <li> <p><strong>我购买而还没用的可选配件:</strong> 七彩<span class="caps">RGB</span>的<span class="caps">LED</span>元件,面包板,<a href="https://s.click.taobao.com/t?e=m%3D2%26s%3DfV%2BZ61WfxfkcQipKwQzePOeEDrYVVa64K7Vc7tFgwiHjf2vlNIV67lKP%2BmjvssA7r8hK%2FDw%2Bbm2s9V29auOuBOBgn3DwXo5fs9cRaxJdiKw3LnkA3bZiA0KFaRH2Tl0r%2BlUnyCWbT92Wt8ptzziuVx4DebA4okkCqN5EGMnCL1bGJe8N%2FwNpGw%3D%3D&amp;pvid=10_120.239.178.0_378_1512536718652" title="HDMI转DVI天猫链接"><span class="caps">HDMI</span>转<span class="caps">DVI</span></a>,光敏电阻。</p> </li> <li> <p><strong>我认为不用买的:</strong>&nbsp;小屏幕(退货了),温度感应,五向摇杆,蜂鸣器,触摸感应器等。</p> </li> </ol> <p><img alt="房间树莓派媒体中心" src="https://blog.pythonwood.com/uploads/2017/房间树莓派媒体中心.jpg" title="房间树莓派媒体中心"></p> <h3 id="raspbian">二、树莓派安装官方的raspbian系统并初始化<a class="headerlink" href="#raspbian" title="Permanent link">&para;</a></h3> <h4 id="_2">基础部分教程:<a class="headerlink" href="#_2" title="Permanent link">&para;</a></h4> <p>包括修改Pi密码,修改国内源,显示中文,设置时区为Asia/Shanghai,安装开源中文字体<strong>文泉驿</strong>,安装fcitx谷歌拼音,开启ssh服务,设置wifi连接密码</p> <ol> <li> <p><strong>树莓派上手配置</strong>&nbsp;https://yaogangli.gitbooks.io/raspberry-pi-learning/content/Raspbian.html</p> </li> <li> <p><strong>新手入门树莓派必做的四件事</strong>&nbsp;http://blog.csdn.net/A_lPha/article/details/53116767</p> </li> <li> <p><strong>How to setup multiple WiFi networks?</strong>&nbsp;https://raspberrypi.stackexchange.com/questions/11631/how-to-setup-multiple-wifi-networks/11674</p> </li> <li> <p><strong>ssh服务配置</strong>&nbsp;https://www.raspberrypi.org/documentation/remote-access/ssh/</p> </li> </ol> <h4 id="_3">优化部分教程:<a class="headerlink" href="#_3" title="Permanent link">&para;</a></h4> <p>包括添加u盘自动挂载功能,<span class="caps">VNC</span>服务,优化无网络下树莓派开机时间等</p> <ol> <li> <p><strong>树莓派<span class="caps">USB</span>存储设备自动挂载</strong>&nbsp;http://www.jianshu.com/p/188828d9777a</p> </li> <li> <p><strong>How to change timeout in systemctl</strong>&nbsp;https://unix.stackexchange.com/questions/186162/how-to-change-timeout-in-systemctl</p> </li> <li> <p><strong>安装<span class="caps">VNC</span>服务(tightvncserver)</strong>&nbsp;https://www.digitalocean.com/community/tutorials/how-to-install-and-configure-vnc-on-ubuntu-14-04</p> </li> <li> <p><strong>配置与学习树莓派config.txt配置文件</strong>&nbsp;https://www.zybuluo.com/SiberiaBear/note/328982</p> </li> </ol> <h3 id="_4">三、重要提醒:<a class="headerlink" href="#_4" title="Permanent link">&para;</a></h3> <p>经验证,我安装一大堆东西后,<span class="caps">SD</span>卡使用才4G,其中几百兆是音乐,&nbsp;所以8G卡也是够用的。</p> <p>熟悉Linux环境的话,完成一台树莓派环境配置之后,可随时备份,其它树莓派克隆环境就可以了。具体方法参考另一篇随笔。 <a href="https://blog.pythonwood.com/2017/11/树莓派SD卡Linux系统盘复制,10分钟克隆新机/">树莓派<span class="caps">SD</span>卡Linux系统盘复制,10分钟克隆新机</a></p> <h3 id="_5">四、参考<a class="headerlink" href="#_5" title="Permanent link">&para;</a></h3> <ol> <li> <p>开始 Raspberry Pi 项目前需要知道的 10 件事&nbsp;https://www.digikey.com.cn/zh/articles/techzone/2017/feb/10-things-to-know-before-starting-a-raspberry-pi-project</p> </li> <li> <p>树莓派启动那些事&nbsp;http://elmagnificogi.github.io/tags/#RaspberryPi</p> </li> </ol>树莓派SD卡Linux系统盘复制,10分钟克隆新机,raspbain备份恢复2017-11-30T15:02:00+08:002017-12-05T10:12:00+08:00pythonwoodtag:blog.pythonwood.com,2017-11-30:/2017/11/树莓派SD卡Linux系统盘复制,10分钟克隆新机/<p>有旧和新树莓派二个,发现<span class="caps">SD</span>卡的raspbian系统可在不同树莓派之间通用,挺好。</p> <h3 id="_1">学通树莓派系统克隆,兼备安装、备份与恢复能力。<a class="headerlink" href="#_1" title="Permanent link">&para;</a></h3> <p>在家里,用了一周时间,将新买的树莓派3,<a href="https://s.click.taobao.com/t?e=m%3D2%26s%3DyO9jlKzcxlwcQipKwQzePOeEDrYVVa64K7Vc7tFgwiHjf2vlNIV67jeJ0D4P3i%2B8UOZr0mLjuses9V29auOuBOBgn3DwXo5fs9cRaxJdiKw3LnkA3bZiA%2F6gPESVKznnDfaTZ11r%2FGF6awgoXsc5TKo%2FiSVAKeldcSpj5qSCmbA%3D&amp;pvid=10_120.239.178.6_72377_1512026724825" title="华趸hdmi转vga线带音频带供电"><span class="caps">HDMI</span>转<span class="caps">VGA</span>带供电</a>(性价比推荐),旧显示屏,旧音箱。组成家庭媒体中心。手机使用bubbleupnp投屏和推送音乐播放 …</p><p>有旧和新树莓派二个,发现<span class="caps">SD</span>卡的raspbian系统可在不同树莓派之间通用,挺好。</p> <h3 id="_1">学通树莓派系统克隆,兼备安装、备份与恢复能力。<a class="headerlink" href="#_1" title="Permanent link">&para;</a></h3> <p>在家里,用了一周时间,将新买的树莓派3,<a href="https://s.click.taobao.com/t?e=m%3D2%26s%3DyO9jlKzcxlwcQipKwQzePOeEDrYVVa64K7Vc7tFgwiHjf2vlNIV67jeJ0D4P3i%2B8UOZr0mLjuses9V29auOuBOBgn3DwXo5fs9cRaxJdiKw3LnkA3bZiA%2F6gPESVKznnDfaTZ11r%2FGF6awgoXsc5TKo%2FiSVAKeldcSpj5qSCmbA%3D&amp;pvid=10_120.239.178.6_72377_1512026724825" title="华趸hdmi转vga线带音频带供电"><span class="caps">HDMI</span>转<span class="caps">VGA</span>带供电</a>(性价比推荐),旧显示屏,旧音箱。组成家庭媒体中心。手机使用bubbleupnp投屏和推送音乐播放,听音乐的享受更舒服了,显示屏再大些就更好。</p> <p><img alt="房间树莓派媒体中心" src="https://blog.pythonwood.com/uploads/2017/房间树莓派媒体中心.jpg" title="房间树莓派媒体中心"></p> <p>在工作室,还有一个树莓派和支持<span class="caps">HDMI</span>输出的投影仪。如果能复制现有树莓派的系统<span class="caps">SD</span>卡,将省事不少。(重复的事应少做)</p> <h3 id="_2">开始折腾尝试<a class="headerlink" href="#_2" title="Permanent link">&para;</a></h3> <p>借助我的个人电脑是ubutnu,可以看见树莓派分区情况,第二个分区14G采用了3G,很多空间是多余的。</p> <p><img alt="gparted看树莓派分区" src="https://blog.pythonwood.com/uploads/2017/gparted看树莓派分区.jpg" title="gparted看树莓派分区"></p> <p>用了1天的不断努力尝试终于才成功,囧。</p> <h3 id="1ddddrescue">失败1:使用<span class="caps">DD</span>或ddrescue<a class="headerlink" href="#1ddddrescue" title="Permanent link">&para;</a></h3> <p>不幸的是我是从14.6G卡克隆到14.4G卡,使用dd失败是注定的。使用dd的必要条件是目标卡要更大。</p> <h3 id="2linuxssdetc">失败2:源自笔记本linux系统迁移<span class="caps">SSD</span>的经验——分区一样,复制文件,改etc配置法。<a class="headerlink" href="#2linuxssdetc" title="Permanent link">&para;</a></h3> <p>linux磁盘迁移,只需分区格式化,复制文件,修改etc下的fstab和udev目录的网卡信息,chroot+grub安装。就能完成。</p> <p>然而实践得知,不适用树莓派迁移。启动时卡在&rdquo;smsc95xx 1-1.1:1.0: eth0: register &lsquo;smsc95xx&rsquo;&nbsp;&hellip;&rdquo;之后。无法启动。</p> <p>比较发现,复制时,不会有dev/by-partuuid/目录,而本身树莓派是有这个目录的。</p> <h3 id="ddrawresize2fsqemu-imgdiskdd">成功:dd读取为raw镜像盘、resize2fs缩容分区、qemu-img缩容disk、dd写入成功启动树莓派<a class="headerlink" href="#ddrawresize2fsqemu-imgdiskdd" title="Permanent link">&para;</a></h3> <h4 id="ddrawsd">先dd读取物理盘为raw格式镜像盘。这样就可以方法搞,最坏情况也不影响已有的系统sd卡内容。<a class="headerlink" href="#ddrawsd" title="Permanent link">&para;</a></h4> <div class="highlight"><pre><span></span>$sudo dd if=/dev/sdb of=/home/16G.img bs=128K </pre></div> <h4 id="loopgparted">挂载loop设备以便于gparted能操作<a class="headerlink" href="#loopgparted" title="Permanent link">&para;</a></h4> <div class="highlight"><pre><span></span>$sudo losetup /dev/loop0 /home/16G.img $sudo partprobe /dev/loop0 # 运行后才会出现分区/dev/loop0p1,/dev/loop0p2 </pre></div> <h4 id="14g6gblock6g">第二分区从14G缩容到6G(实际是把分散的Block数据集中到前6G位置。非真正改变分区大小)<a class="headerlink" href="#14g6gblock6g" title="Permanent link">&para;</a></h4> <div class="highlight"><pre><span></span>$sudo e2fsck -f /dev/loop0p2 $sudo resize2fs /dev/loop0p2 6G </pre></div> <h4 id="gparted-fdisk-6g">GParted / Fdisk 更改第二分区为6G<a class="headerlink" href="#gparted-fdisk-6g" title="Permanent link">&para;</a></h4> <p>GParted&nbsp;/dev/loop0打开,然后选择第二分区右击,选择&rdquo;更改/移动大小&rdquo;。设置。</p> <h4 id="loop">卸载恢复loop设备:<a class="headerlink" href="#loop" title="Permanent link">&para;</a></h4> <div class="highlight"><pre><span></span>$sudo partprobe -d /dev/loop0 $sudo losetup -d /dev/loop0 </pre></div> <h4 id="raw">raw虚拟磁盘缩容<a class="headerlink" href="#raw" title="Permanent link">&para;</a></h4> <div class="highlight"><pre><span></span>$sudo qemu-img resize /home/16G.img -8G $qemu-img info /home/16G.img image: xxx.img file format: raw virtual size: 5.9G (6380060672 bytes) disk size: 5.9G </pre></div> <h4 id="ddsd">使用<span class="caps">DD</span>写入新<span class="caps">SD</span>卡,启动成功。<a class="headerlink" href="#ddsd" title="Permanent link">&para;</a></h4> <p>可选:写入sd后可以用resize2fs扩容分区完全用上<span class="caps">SD</span>卡空间,参考上面缩容。</p> <h3 id="_3">总结提升<a class="headerlink" href="#_3" title="Permanent link">&para;</a></h3> <ol> <li>linux下安装树莓派系统到<span class="caps">SD</span>卡,使用dd刻录后还有剩余空间,用resize2fs可让最后分区来占满。</li> <li>使用dd来备份整个硬盘太慢,可以用resize2fs将数据块移动到前面,parted缩小分区,然后刻录硬盘前面有数据部分即可。这样备份文件就不会臃肿。</li> <li>备份镜像恢复时,过程类似初次安装系统。</li> </ol> <h3 id="_4">参考<a class="headerlink" href="#_4" title="Permanent link">&para;</a></h3> <p>把一块硬盘上的 Linux 系统整个复制到新硬盘上的方法. <a href="https://www.v2ex.com/t/183310">https://www.v2ex.com/t/183310</a></p> <p>openstack文档 <a href="http://docs.ocselected.org/openstack-manuals/kilo/image-guide/content/ch_modifying_images.html#losetup-kpartx-nbd">http://docs.ocselected.org/openstack-manuals/kilo/image-guide/content/ch_modifying_images.html#losetup-kpartx-nbd</a></p> <p>使用qemu-img改变镜像文件大小 <a href="http://niusmallnan.com/_build/html/_templates/knowladge/resize_raw_file.html">http://niusmallnan.com/_build/html/_templates/knowladge/resize_raw_file.html</a></p> <p>笔记本硬盘更换记(使用<span class="caps">LVM</span>进行在线数据迁移) <a href="http://cathay4t.blogspot.hk/2009/05/lvm.html">http://cathay4t.blogspot.hk/2009/05/lvm.html</a></p> <p>新电脑+旧系统:教你在不同机器间转移Linux <a href="http://www.geekfan.net/1860/">http://www.geekfan.net/1860/</a></p> <p>usb-creator-gtk 方法和&nbsp;clonezilla方法没有深入研究。</p>笔记本系统转换Linux一个半月——xubuntu14.04截图纪念里程碑2014-07-05T23:30:00+08:002017-11-30T22:12:00+08:00pythonwoodtag:blog.pythonwood.com,2014-07-05:/2014/07/笔记本系统转换Linux一个半月——xubuntu14.04截图纪念里程碑/<h3 id="_1">前言<a class="headerlink" href="#_1" title="Permanent link">&para;</a></h3> <p>自学计算机技术,越到后面,越依赖ubuntu,以致于很多时候都是一开机就打开虚拟机上的ubuntu10.04,Linux已经变得越来越重要了。</p> <h3 id="_2">操作<a class="headerlink" href="#_2" title="Permanent link">&para;</a></h3> <p>2014-04-17,ubuntu14.04(trusty),长期支持版(<span class="caps">LTS</span>=long term support),还记得那天也是我腾讯实行的2面。我知道等到时机了,果断装双系统 …</p><h3 id="_1">前言<a class="headerlink" href="#_1" title="Permanent link">&para;</a></h3> <p>自学计算机技术,越到后面,越依赖ubuntu,以致于很多时候都是一开机就打开虚拟机上的ubuntu10.04,Linux已经变得越来越重要了。</p> <h3 id="_2">操作<a class="headerlink" href="#_2" title="Permanent link">&para;</a></h3> <p>2014-04-17,ubuntu14.04(trusty),长期支持版(<span class="caps">LTS</span>=long term support),还记得那天也是我腾讯实行的2面。我知道等到时机了,果断装双系统!&nbsp;开始</p> <p>用实验室那台ubuntu13.10直接升级,用了几个钟换来开机后一大堆的错误弹框,累觉不爱,说明直接升级是不行的,在此谨记!</p> <p>很不喜欢ubuntu后面自己的桌面。拿实验室的继续重装ubuntu-gnome版,还能接受,但却有些太求炫不求实的感觉。</p> <p>萌生转kubuntu,feroda, mint,&nbsp;centos等的想法,差点转了mint,唯一觉得debin-&gt;ubuntu-&gt;mint这样子的飘着很难让人放心,比如你相信一个人99%,但很难相信他的孙辈。</p> <p>搜索良久,纠结良久,看到开源新闻消息说Linus受不了gnome3的卖炫而投向xfce阵型。我便也跟风转xubuntu,转完后大喜,因为超过我理想期望很多。</p> <h3 id="xubuntu1404">xubuntu14.04优点<a class="headerlink" href="#xubuntu1404" title="Permanent link">&para;</a></h3> <p>一、Olivier&nbsp;Fourdan开发,一个运行在各类Unix下的轻量级桌面环境。</p> <p>二、仿win风格的界面,对双系统的人很好</p> <p>三、超省资源,开机后htop显示198M已用内存</p> <p>四、32Linux内核系统识别了4G的3.97G,win7只识别2.95G,让我惊喜</p> <h3 id="xubuntu1404_1">xubuntu14.04截图<a class="headerlink" href="#xubuntu1404_1" title="Permanent link">&para;</a></h3> <p>改成windows风格桌面很容易</p> <p><img alt="xubuntu14.04截图" src="https://blog.pythonwood.com/uploads/2014/xubuntu14.04截图.jpg"></p> <!-- 文件管理器风格也是windows化的 terminal,python爬虫输出信息 --> <p>更多截图http://www.douban.com/photos/album/132398060/</p> <p><img alt="tu1" src="https://img1.doubanio.com/view/photo/m/public/p2185668349.jpg"></p> <hr> <p><img alt="tu2" src="https://img3.doubanio.com/view/photo/m/public/p2185668275.jpg"></p> <hr> <p><img alt="tu3" src="https://img3.doubanio.com/view/photo/m/public/p2185668295.jpg"></p>虚拟机系统正式转换——从windows到Linux-ubuntu新手2013-07-10T16:29:00+08:002017-11-30T22:30:00+08:00pythonwoodtag:blog.pythonwood.com,2013-07-10:/2013/07/虚拟机系统正式转换——从windows到Linux-ubuntu新手/<p>记录大二下学期转换ubuntu10.04的一些系统折腾</p> <h3 id="_1">版本选择:<a class="headerlink" href="#_1" title="Permanent link">&para;</a></h3> <ol> <li> <p><strong>经多次实验,Ubuntu个人认为长期支持(<span class="caps">LTS</span>)版才值得装。</strong></p> </li> <li> <p>VMware9中测试:Ubuntu10.04开机内存170M,Ubuntu12.04开机内存340M。</p> </li> <li> <p>个人感觉Ubuntu12.04像win7华丽消耗大,Ubuntu10.04像<span class="caps">XP</span>,对程序员实在。</p> </li> <li> <p>Ubuntu12.04的桌面切换真麻烦 …</p></li></ol><p>记录大二下学期转换ubuntu10.04的一些系统折腾</p> <h3 id="_1">版本选择:<a class="headerlink" href="#_1" title="Permanent link">&para;</a></h3> <ol> <li> <p><strong>经多次实验,Ubuntu个人认为长期支持(<span class="caps">LTS</span>)版才值得装。</strong></p> </li> <li> <p>VMware9中测试:Ubuntu10.04开机内存170M,Ubuntu12.04开机内存340M。</p> </li> <li> <p>个人感觉Ubuntu12.04像win7华丽消耗大,Ubuntu10.04像<span class="caps">XP</span>,对程序员实在。</p> </li> <li> <p>Ubuntu12.04的桌面切换真麻烦。</p> </li> </ol> <p>我最后选择了VMware9+Ubuntu10.04。</p> <h3 id="linux-ubuntuvmware">安装Linux-Ubuntu(VMware平台支持下):<a class="headerlink" href="#linux-ubuntuvmware" title="Permanent link">&para;</a></h3> <h4 id="_2">双系统形式:<a class="headerlink" href="#_2" title="Permanent link">&para;</a></h4> <p>wubi安装:不用分区,直接在某原分区建立文件来代表Ubuntu,应该是虚拟化技术。安全快捷,易卸载。</p> <p>光盘安装:win7原来有4分区,安装Ubuntu后E盘少了7G,无其它变化,推测装在了E盘。</p> <h4 id="_3">单系统:<a class="headerlink" href="#_3" title="Permanent link">&para;</a></h4> <p>安装后占3.6G左右,其中用于虚拟内存交换的空间2G,系统文件/bin/*等只占1G多。</p> <h5 id="_4">安装过程的技巧:<a class="headerlink" href="#_4" title="Permanent link">&para;</a></h5> <p>安装过程所增加的用户只是桌面用户,非超级用户。安装后用sudo root&nbsp;passwd修改root密码。</p> <p>计算机名和用户名最好3到6个字符就好了。</p> <p>Ubuntu安装过程下载中文语言包时最好跳过,太慢了,装好后自己设置一个快的源,然后下载。</p> <h3 id="_5">常用软件安装:<a class="headerlink" href="#_5" title="Permanent link">&para;</a></h3> <p>极点五笔,个人比较钟意。</p> <p>Adobe Flash&nbsp;为了网页(若安装gecko_mediaplayer,则不用)。</p> <p><strong>Mplayer&nbsp;相传宇宙最强播放器(然后最好gecko_mediaplayer,SMPlayer一起装)。</strong></p> <p>wine 用于运行Windows程序。 aMule&nbsp;电骡(官方中译),可选,个人测试不好。</p> <p>build-essential&nbsp;程序依赖库。</p> <p>g++,nasm,emacs,open-ssh,vnc……</p> <p><strong>gvim</strong></p> <p>就我而言,我更喜欢gvim,即使用了3个月emacs了,但是还是义无反顾地转成vim党了。</p> <p>gvim是编辑器之神,emacs是神一样的编辑器。前句强调gvim始终是一个编辑器,后句说明emacs可以做远超编辑器的事。</p> <h3 id="-">使用-习惯:<a class="headerlink" href="#-" title="Permanent link">&para;</a></h3> <p>Ubuntu12.04开机都会打开终端(Terminal),在第二桌面。比较喜欢linux的多虚拟桌面功能。</p> <p>firefox总是在第三桌面打开,影音在第四桌面。</p> <p>将常打开的程序放在面板上。</p> <h3 id="_6">终端:<a class="headerlink" href="#_6" title="Permanent link">&para;</a></h3> <p>输入密码不以星号表示,无显示,惯了就好。桌面窗口环境则由星号表示。</p> <p>最常用的键:Tab;方向上;Ctrl+C;&nbsp;补全,重复历史,强制终止。</p> <p>最常用命令:ls;cat;history&nbsp;; </p> <p>最好用的符号:|;&lt;;&gt;; </p> <p>Ctrl+A/D/L/R:&nbsp;到行首/行尾/清屏/查找命令历史</p> <h3 id="win7linux">Win7/Linux字符编码问题:<a class="headerlink" href="#win7linux" title="Permanent link">&para;</a></h3> <h4 id="win7linux_1">Win7/Linux编码差异:<a class="headerlink" href="#win7linux_1" title="Permanent link">&para;</a></h4> <p>win7的多字符实现:<span class="caps">GBK</span>,2字节;Unicode:unicode16,2字节。Linux的多字符实现:utf8,1-6字节;Unicode:unicode32,4字节。</p> <h3 id="_7">换行符问题:<a class="headerlink" href="#_7" title="Permanent link">&para;</a></h3> <p>win7换行=\r\n 而Linux换行=\n;所以Linux文本在win7下用记事本打开都是一行的。转换很简单用fromdos / todos&nbsp;命令就行。</p> <p>win7下保存的文本文件复制到Linux下后,中文变成乱码。</p> <p>===〉win7的字符是<span class="caps">GBK</span>,Linux的字符是<span class="caps">UTF8</span>,utf8在win7可以正常显示,所以建议用iconv命令转成<span class="caps">UTF8</span>,而不是将Linux默认的编码变成<span class="caps">GBK</span>来适应。</p> <p>win7下保存的文本文件到Linux下后,双击提示运行。</p> <p>===〉方法:chmod a-x <filename>;或者先在win7打包成zip文件,再复制,再解压,就可以彻底解决。这是个目前最好的通用方法。</p> <h3 id="_8">感受<a class="headerlink" href="#_8" title="Permanent link">&para;</a></h3> <p>至今已经输入2000个命令。不知不觉习惯中。</p> <div class="highlight"><pre><span></span>* | more # 分屏显示 iconv -f gbk -t utf8 sample_config.txt | fromdos &gt; ../release/sample_config cat -n ~/.bash_history | todos &gt; _bash_history2013-07-10.txt </pre></div> <p><span class="caps">JNU</span> 2013-07-10 16:41:51&nbsp;今天考完《Linux/Unix使用》。</p>