-
Notifications
You must be signed in to change notification settings - Fork 9
/
Copy pathSiSR.tex
458 lines (333 loc) · 30.5 KB
/
SiSR.tex
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
% !TEX program = xelatex
% !Mode:: "TeX:UTF-8"
\documentclass[cn,11pt,chinese,twoside]{elegantbook}
%\usepackage{indentfirst}%首行缩进宏包
%\usepackage{titlesec}%定义章节标题宏包
\usepackage{verbatim}%提供多行注释\begin{comment}....\end{comment}
\usepackage{longtable}
\usepackage{ulem}
\usepackage{draftwatermark}
\usepackage{everypage}
%\SetWatermarkText{抛砖引玉,不要照搬照抄}
%\SetWatermarkText{包含错误或过时,欢迎更新指正}
\SetWatermarkText{\parbox{100cm}{%
\centering
抛砖引玉,不要照搬照抄 \\
包含错误或过时,欢迎更新指正}}
\SetWatermarkLightness{0.9}
\SetWatermarkScale{0.2}
%========================= 自定义页眉与页脚 ========================%
\pagestyle{fancy}
\lhead{\href{https://github.com/xuanleng/SiSR}{工欲善其事,必先利其器}}
%\chead{}
%\rhead{}
\lfoot{主讲“器”的思维逻辑}
\cfoot{\thepage}
\rfoot{
\hyperref[content]{目录}
}
%--------------------------------------------------------------------------------------------------------------------------%
%==========================目录层次设置============================%
\setcounter{part}{-1}
\setcounter{chapter}{0}%设置目录计数初值
\setcounter{tocdepth}{3} %设置目录的显示级别。book类从-1开始,为第一级。
\setcounter{secnumdepth}{3}
%(1)设置自动编号的深度(即编号到哪一级别)。{num}在article中取0到5的整数相应于目录中显示到\chapter,\section,\subsection,\subsubsection,\paragraph 或\subparagraph 层次。在book和report中,num取-1到5之间的整数相应于在目录中显示到\part,\chapter,\section,\subseciton,\subsubsection, \paragraph 或\subparagraph 层次。
%(2)对长标题用\section[abc]{abcdefg}形式的命令。
%(3)另外,还可以利用\addtocounter{secnumdepth}{num}来使得当前章节编号深度增加或减小,num可取正值或负值。
%(4)对于高级内容要求的章节以星号标识,然后在正文中用\begin{advanced}\section{...}\end{advanced}即可
%------------------------------------------------------------------------------------------------------------------------%
%===========================设置罗马字============================%
\makeatletter
\newcommand{\rmnum}[1]{\romannumeral #1}
\newcommand{\Rmnum}[1]{\expandafter\@slowromancap\romannumeral #1@}
\makeatother
%-------------------------------------------------------------------------------------------------------------------------%
%=======================Fortran源码环境设置========================%
\lstset{
language=Fortran,
basicstyle=\ttfamily,% set font
basicstyle=\tt\tiny\color{black},
commentstyle=\color[rgb]{.133,.545,.133},%comments in green
keywordstyle=\bfseries, % keywords in bold
keywordstyle=\color{blue},
stringstyle=\color[rgb]{.627,.126,.941},
showstringspaces=false, % do not emphasize spaces in strings
lineskip=-2pt,
alsoletter={...},%
morekeywords={aimag,clc,break,case,catch,continue,elseif,else,end,for,function,global,
if,otherwise,persistent,return,switch,try,while,open,real*8},%增加 keywords
tabsize=4, % number of spaces of a TAB
mathescape=false,escapechar=§, % escape to latex with §...§
upquote=true, % upright quotes
aboveskip={1.5\baselineskip}, % a bit of space above listings
columns=fixed ,% nice spacing
backgroundcolor=\color[rgb]{0.95,1.0,1.0},%设置背景色
breaklines=true,%很实用
numbersep=3mm,
numbers=left,
numberstyle=\scriptsize,
numberstyle=\color{magenta},
frame=shadowbox,
frame=single, % frame
framexleftmargin=6mm, xleftmargin=6mm % tweak margins
}
%----------------------------------------------------------------------------------------------------------------------%
%\includeonly{chapters/chapter0}
\title{科研中的技能技巧}
\subtitle{\href{http://lengxuan.me/open-source-project/}{Skills in Scientific Researches}}
\author{\href{xuanleng.me}{冷轩 (第一任)}\\
{\kaishu 项目地址}: \url{https://github.com/xuanleng/SiSR}, \url{https://gitee.com/xuanleng/SiSR}\\
{\kaishu \LaTeX{} 模板}:\href{https://github.com/ElegantLaTeX/ElegantBook}{Ethan Deng \& Liam Huang: ElegantBook}
}
%\institute{Elegant\LaTeX{} Program}
\date{\today}
%\version{3.10}
\extrainfo{关注时代需求,解决时代问题}
%\logo{logo-blue.png}
\cover{cover.jpg}
\newcommand{\tabincell}[2]{\begin{tabular}{@{}#1@{}}#2\end{tabular}}
\begin{document}
%\begin{comment}
\lstset{
%numbers=none,
% numberstyle=\scriptsize,
% frame=none,
% flexiblecolumns=false,
language=sh,
basicstyle= \ttfamily,% set font
morekeywords={cut},
% breaklines=true,
% extendedchars=true,
% escapechar=\%,
% texcl=true,
% showstringspaces=true,
keywordstyle=\bfseries,
% tabsize=4
}
%\end{comment}
%=======================Scilab源码环境设置========================%
\lstset{%这里的设计参考基于listings开发的写matlab代码的宏包mcode
language=Scilab,
alsoletter={...},%
morekeywords={%这个注释号必须,不然空格有影响
clc,break,case,catch,continue,elseif,else,end,for,function,global,%
if,otherwise,persistent,return,switch,try,while,log...},%增加 keywords
basicstyle=\ttfamily,% set font
showstringspaces=false, % do not emphasize spaces in strings
tabsize=4, % number of spaces of a TAB
mathescape=false,escapechar=§, % escape to latex with §...§
upquote=true, % upright quotes
aboveskip={1.5\baselineskip}, % a bit of space above listings
columns=fixed ,% nice spacing
keywordstyle=\bfseries, % keywords in bold
keywordstyle=\color{blue},
commentstyle=\color[rgb]{.133,.545,.133},%comments in green
%stringstyle=\color[rgb]{.627,.126,.941} % strings in purple这个用了就无法自动换行
%backgroundcolor=\color[rgb]{0.95,1.0,1.0},%设置背景色
breaklines=true,%很实用
numbersep=3mm, numbers=left, numberstyle=\scriptsize,%\tiny, % number style
frame=single, % frame
framexleftmargin=6mm, xleftmargin=6mm % tweak margins
}
%----------------------------------------------------------------------------------------------------------------------%
%======================= 数学公式距离设置 ========================%
%在\begin{document}后生效
\setlength{\abovedisplayskip}{2pt plus1pt minus1pt} %公式前的距离
\setlength{\belowdisplayskip}{4pt plus1pt minus1pt} %公式后面的距离
%\setlength{\abovedisplayshortskip}{2cm}
%\setlength{\belowdisplayshortskip}{2cm}
%\setlength{\abovedisplayskip}{3pt} %公式前的距离
%\setlength{\belowdisplayskip}{3pt} %公式后面的距离
\setlength{\arraycolsep}{2pt} %在一个array中列之间的空白长度, 因为原来的太宽了
\allowdisplaybreaks[4] % \eqnarray如果很长,影响分栏、换行和分页(整块挪动,造成页面空白),可以设置成为自动调整模式
%-----------------------------------------------------------------------------------------------------------------------%
\maketitle
\frontmatter
\newpage
\thispagestyle{empty}
\vspace*{\stretch{1}}
\noindent\begin{center}
{\fontsize{20pt}{0}\kaishu 献给那些帮助过我们的人们}
\end{center}
\vspace{\stretch{1}}
\newpage
\thispagestyle{empty}
\vspace*{\stretch{1}}
\noindent\begin{center}
{\fontsize{20pt}{0}\kaishu 工欲善其事,必先利其器} %70
\end{center}
\vspace{\stretch{1}}
\tableofcontents
\label{content}
%\listofchanges
\mainmatter
\chapter*{前言}
\addcontentsline{toc}{chapter}{前言}
\section*{文档定位:工欲善其事,必先利其器}
\addcontentsline{toc}{section}{文档定位:工欲善其事,必先利其器}
\begin{enumerate}
\item 这是一份为科研入门提供“器”的文档,旨在积累科研中的经验和技巧,让新手快速上手和少走弯路。
\item 这是一份工具书性质的文档,为了满足自己日常科研的需要。把科研中遇到的问题都记录下来,不走重复的路,节省时间。
\item 这是一份与时俱进的,由大家一起开源协作的文档。
\item 这是一份抛砖引玉型文档,主讲“器”的思维逻辑。抓住核心,提供学习参考资料为主,不做细致讲解。
\item 这是一份大部分转载自网上资料并自我理解加工的文档,转载要写明出处。早期写作不规范,如有遗漏请告知和见谅。
\end{enumerate}
\section*{RTFM与问“问题”及听取建议、意见}
\addcontentsline{toc}{section}{RTFM与问“问题”及听取意见}
\paragraph{问“问题”与听取意见是人想要进步的基本素养。——冷轩}
\paragraph{听取建议、意见}
夫子说过“三人行必有我师焉”。无论是前辈、同学、同事、晚辈沟通,都有听取意见的时候。听取他人意见不是听取他人对自己的观点的附和,往往是与自己观点不同甚至相背的。这时候就让人很难受。但是难受是让自己进步的前兆。如果非常坚持自己的观点,那就给他人观点一个机会,先试用一下他人观点,比较一下优缺点。最终结果往往不是自己或他人观点的胜出,而是不同观点的融合。所以要经常反思:我给过别人建议、意见机会了吗?
\paragraph{RTFM} is an initialism for the expression "read the fucking manual" – typically used to reply to a question that could have been easily answered from the product manual or documentation.\footnote{\url{https://en.wikipedia.org/wiki/RTFM}}
大家的时间和精力都是有限的,请不要问些“简单问题”浪费别人的生命。每个人都应该具备自主学习能力,不要张口就要“答案”,这是不利于自己成长的。问别人“问题”前请反问自己两点:
\begin{itemize}
\item 网上搜索过了吗?
\item 自己思考过了吗?
\item 流程:首先尝试自己解决,再和同事讨论,再问上级。
\item 记录解决问题过程的心得体会,然后自己解决问题的能力与速度会不断提升,进而关注到别人未解决的问题,此时你已经站到人类知识的边界了,为人类拓荒了。
\end{itemize}
\section*{组织形式}
\addcontentsline{toc}{section}{组织形式}
\begin{itemize}
\item 主编制:主要负责文档管理,可以选择多个副主编帮忙管理。不想承担管理时,可以指定新的主编。
\item 文档结构:前言章节为固定结构,由文档定位、组织形式、历任主副编、经历分享和第一次推送打卡等构成。
\begin{enumerate}
\item 经历分享:基于文档定位,这是一个避坑文档,所以鼓励大家分享踩坑、脱坑经历,写在经历分享中。
\item 第一次推送打卡:记录自己的称呼和第一次推送感言。
\end{enumerate}
\end{itemize}
\section*{历任主副编}
\addcontentsline{toc}{section}{历任主副编}
\begin{itemize}
\item 第一任主编:冷轩\\
本文档创始人,初始文档页数为367页。
\end{itemize}
\section*{第一次推送打卡}
\addcontentsline{toc}{section}{第一次推送打卡}
这里记录自己第一次推送更新的情形和感言。
\begin{enumerate}
\item 2020-05-26: xuan更新了前言内容,进一步明确了文档目的和组织形式。
\item 2020-06-08: Liming 初次了解 Git 和 \LaTeX{},打开文档报错 100 多个,查了 1 个小时才发现实际上只是typesetting engine 的选择和cover文件的路径出问题,第一次推送更新,算是开始正式上路了。
\item 2020-09-14: Ting学习了Git和Github,感觉受益颇多。当下,科技发展如火如荼,一定要始终坚持在学习的道路上,不断学习,勇于创新。
\end{enumerate}
\section*{更新日志}
\addcontentsline{toc}{section}{更新日志}
请参考:\url{https://github.com/xuanleng/SiSR/network}
\section*{版本比较}
\addcontentsline{toc}{section}{版本比较}
为方便展示大家的修改,希望有个版本比较机制。 在 \LaTeX 文档编辑过程中,通常用 latexdiff 命令比较两个文档的差异, 然后编译生成有标注的Pdf文件方便查看差异,如图(\ref{fig:367})所示。但是它无法比较用 \verb|\input| 和 \verb|\include| 插入的子文档。这时可以用 latexpand 的命令来将所有子文件插入到主文件中,默认是屏蔽注释的。同直接使用是没问题的,但是遇到 \verb| %**|
情形会报错,因为 符号 \%的存在。通常用法如下:
\begin{verbatim}
latexpand --verbose --keep-comments SiSR.tex >new-SiSR-fl.tex
\end{verbatim}
这样就可以愉快的使用 latexdiff 命令了。
Git记录了不同版本的信息,结合以上功能,我们就可以愉快的比较不同版本的差异了,更方便大家协同写文档。在Gitlab上已经存在相关项目了:
\url{https://gitlab.com/git-latexdiff/git-latexdiff} 。但是该项目中没有考虑之前提到过的情形,在
\url{https://gitlab.com/xuanleng/git-latexdiff} 版本中做了补充,请大家采用后者版本。
安装成功后,和上一个文档版本比较的命令是:
\begin{verbatim}
git latexdiff --xelatex --main SiSR.tex HEAD^
\end{verbatim}
\begin{figure}[h!]
\centering
\frame{\includegraphics[width=0.8\textwidth]{pictures/compare.pdf}}
\caption{文档差异比较}
\label{fig:367}
\end{figure}
\section*{编辑公告}
\addcontentsline{toc}{section}{编辑公告}
\begin{itemize}
\item 文档是抛砖引玉型,勾勒了很多框架,但没来得及补充具体内容。希望大家能丰富起来~
\item \sout{为了保持持续更新,编辑至少要在周末做一次内容更新。} 随心而发,不定期更新!
\end{itemize}
\section*{经历分享}
\addcontentsline{toc}{section}{经历分享}
\subsection*{2012——前言一}
\addcontentsline{toc}{subsection}{2012——前言一}
Ubuntu 更新很快,每年都发布两个版本,4月一个,10月一个,很多技术技巧很快会成为历史\footnote{但是 Linux 的那些基本的东西可以说是不会变的},注意技术技巧的时间是很有必要的。
我使用 Ubuntu 的过程可谓是曲曲折折、磕磕碰碰、一步一步走来。最开始接触到 Ubuntu 是08年在学校 BBS 上看到相关的帖子,被 Ubuntu 的 3D 特效和开放源代码所吸引。最开始是怎么装的 Ubuntu 记得不是很清楚,好像是下载光盘镜像刻录在光盘上,用光盘装的,装的是双系统。遇到的最大问题是,上外网的问题,学校上外网是用客户端的,按流量计费。但是在 Ubuntu 下搞定这个客户端一直没有很好解决。还有一个没有很好解决的是显卡驱动的问题。而最最重要的是 Windows XP 下的很多软件在 Ubuntu 下没有很好的对应版本,如 QQ 和 银行网盾。学校玩 Ubuntu 的人也很少。于是虽说是双系统,但大部分还是在用 XP, Ubuntu 成为一个摆设。后来因为占用硬盘,干脆格掉了。这是第一个时期。过了一段时间,手又痒了,这次学会了用 U盘装,还是双系统。虽然Ubuntu 下有网页登录客户端,但始终没有摆脱 Windows,Ubuntu 再次成为摆设。没有摆脱Windows,Ubuntu 的使用始终是很难发展的。第三个时期,也就是现在,可以总算对 Windows 说再见了。毕业了,没有了客户端,上网直接拨号,上网问题不存在了;电脑换了,Ubuntu 也发展了很多,显卡驱动问题不存在了;WebQQ 也完善了许多,QQ 问题不在了;Ubuntu 有了专门的软件商店,里面有很多免费的开放源代码的软件,再加上虚拟机 Virtualbox 功能强大,我在 Ubuntu 下设了个虚拟机装了 XP 来应对一些目前没法替代的软件,其实也就是网购、网银那些了,这样软件的问题可以说也不存在了。时至今日,我终于才迈过 Ubuntu 的门槛,而这花了我四年时间。这个时间真是有点长,有各种因素,最本质的还是自己真正花在这上面的时间太少。欣慰的是,我终究没有放弃这。
这个使用记是伴随 Ubuntu 的更新一起前进的,最开始是基于11.10,现在基于12.04 。有些技巧会过时,有些基本的却不会变,这得自己好好斟酌体会。
\rightline{——冷轩 2012.05.05\qquad}
\subsection*{2014——前言二}
\addcontentsline{toc}{subsection}{2014——前言二}
这是这份笔记结构的第一次重大调整,原名叫《Ubuntu 使用记》,主要是我使用 Ubuntu 过程中的记录。最开始写这份笔记的时候是2012年,现在已经是2014年,近两年了。为什么现在才考虑进行结构调整并改名为《计算机的使用》,或许是现在对计算机了解的更深入,使用的更多吧。本笔记的主题将是自己对计算机所有相关的学习记录,包括系统 Linux 和其中一个发行版 Ubuntu 的使用,也有脚本语言 Shell 的学习,也有 Fortran、C、C++等语言的学习。
\rightline{——冷轩 2014.03.07\qquad}
%定位为纯粹的个人的计算机学习记录,记的都是自己想记下的东西。
%\rightline{——冷轩 2014.07.19\qquad}
%曾经的想法,现在进化了
\subsection*{2020——前言三}
\addcontentsline{toc}{subsection}{2020——前言三}
这是这份文档的第二次重大调整,原名叫《计算机的使用》,现改名叫《科研中计算机的使用》。
缩小范围,针对科研服务的。
\rightline{——冷轩 2020.02.15\qquad}
\subsection*{2014.07.30——Ubuntu和Win7双系统安装最终解决之道}
\addcontentsline{toc}{subsection}{2014.07.30——Ubuntu和Win7双系统安装最终解决之道}
这两天,真的是备受煎熬。由于历史原因,没想到自己对 Linux 系统的需求性越来越强,当时给笔记本安装 Ubuntu 时分配的硬盘空间太小了,不够用,要重装。说实话,自己是很不愿意重装的,毕竟用了很久了,很多东西要重新安装,配置,很麻烦的。一重装,问题就来了,这也确定了我接下来两天煎熬的日子。安装 Ubuntu 的时候,不能识别已经有的 Win7。怀疑系统版本问题,怀疑启动盘没制作好,怀疑电脑硬盘分区问题。最后已经存在的 Win7 也重装了,电脑系统算是彻底重装了。Win7 系统版本不好,装了不满意,网上下载,那天却莫名其妙的断网。重装了几次 Win7,硬盘分区也试了很多次,安装 Ubuntu 的时候总是检测不到已有的 Win7。很烦躁,不知道自己能不能搞定,甚至质疑自己当初重装系统的决定。不过,这个决定是正确的,这条路必须走,问题必须拿下。问题到了第二天有了转机,终于在网上搜到问题的解释。迷雾渐渐消散,我也似乎领会到了解决之道。
自己分区安装 Ubuntu,然后在 Win7 下用软件 EasyBCD 建立引导。 Linux 文件系统清晰明了,很喜欢,我只分三个区就行了。 1、/ boot 分区, 包含了操作系统的内核和在启动系统过程中所要用到的文件,一般 200 MB 就行了;2、 /swap 交换分区,物理内存大于512MB时分配与物理内存等容量,也是一种文件系统,它的作用是作为 Linux 的虚拟内存。 在 Windows 下, 虚拟内存是一个文件, pagefile.sys,而在 Linux 下,虚拟内存需要使用独立分区; 3、/分区,剩下的容量都用于根分区了,觉得没必要细分,细分反而麻烦。 至于如何在 Win7 下用软件 EasyBCD 建立引导,网上资料较多,搜索便是。
安装方法是正确的但也不是很顺利,安装过程不太正常,试了两次都是这样。怀疑制作安装盘的U盘出问题了。不巧,没其他U盘了,又开始借U盘,也不是很顺利,跟技术没关系就不讲了。果真是U盘的问题,期待许久的界面终于在第二天晚上快要回宿舍的时间见到了。这次折腾,不是没有收获,其实还挺大的。对Ubuntu的安装有了深入的了解,可以说学会了终极安装的方法。在这个过程中,也发现了新的东西。只是希望,以后折腾是在风险可控的范围内尝试。虽然这次数据备份了,但是我只有这台笔记本,安装不上,那真是麻烦了。
失败确实是成功之母。我真的是在屡屡失败之中成长起来的。心态也要锻炼起来,不要起伏波动太大,从容应对。
no zuo no die。 就在写这个的过程中,我又折腾了。在试 nvidia 的显卡驱动,结果图形界面进不去了。好在还有命令行界面,多年的折腾经验告诉我,镇定,要镇定。果断网上搜索,一堆看法。后来想到,卸载nivdia驱动就行了,于是敲入
sudo apt-get --purge remove nvidia-*
命令。然后,图形界面又回来了。果断还是用系统默认的显卡驱动吧。
做事之前,先做风险评估。尝试固然很好,但要做风险评估。
\rightline{——冷轩\qquad}
\subsection*{2014.09.11——双显卡驱动最终解决之道}
\addcontentsline{toc}{subsection}{2014.09.11——双显卡驱动最终解决之道}
Ubuntu 的显卡驱动问题一直都是很头疼的问题。这次不是手贱了。一次更新后,开机在5个点亮完就没反应了。进入修复模式,偶然瞥到“load fallback graphics devices [fail]”,不用说又是显卡驱动问题。其实没这个提示,出现这个问题也大概猜到是显卡驱动的问题。 回想到上次的经历,这次问题的处理心里大概有个底。首先想办法进入命令行模式。以往版本的系统启动时都有这个选项的,14.04版本隐藏了。本来想想办法调出这个模式的引导的。但在这之前抱着运气的态度再次尝试了修复模式。在修复模式下,选择进入低画质模式,虽然成功登陆,但是桌面空白,只有鼠标,可以理解,本来就是显卡驱动出问题了嘛。突然想起进入命令行模式的快捷键,Ctrl+Alt+F1,果然进入了。然后就是按照上次的经历,输入命令,移除所有关于 nvidia 的官方驱动,即:\\
\verb|apt-get --purge remove nvidia-*|
成功了!图形界面进去了。可是问题没完,ubuntu 的开源显卡驱动,不太好。首先,显示面只占了方形区域,两边空白,鼠标还有闪烁,很不好用。安装 nivida 官方驱动又出问题,怎么办? 我想先查看下我的电脑的显卡信息吧,\verb[lspci |grep VGA[,赫然显示:
00:02.0 VGA compatible controller: Intel Corporation 2nd Generation Core Processor Family Integrated Graphics Controller (rev 09)
01:00.0 VGA compatible controller: NVIDIA Corporation GF108M [GeForce GT 630M] (rev ff)
我的电脑是双显卡,立即想起关于双显卡驱动的 Bumblebee Project。 打开主页 \url{http://www.bumblebee-project.org}, 按照说明,安装Bumblebee,重启,无需再额外装 nvidia 驱动了,世界平静了。
\rightline{——冷轩\qquad}
\subsection*{2014.10.15——又进不了系统了}
\addcontentsline{toc}{subsection}{2014.10.15——又进不了系统了}
今天弹出软件更新,看着就更新了下。可是没想到,在下载flash插件的时候一直卡着下载不下来。我下意识的就知道问题要来了,但也没办法只能强关。重启后,果然出了问题,无线网卡打不开。我知道是之前更新的问题,于是想着重新更新下。可是还是卡在flash插件的更新那了。只能再次强关,这次就没那么幸运,系统果断进不了了。网上查询了下,貌似用 Ubuntu 启动优盘启动,然后在运行命令修护。虽然操作看着还会,只是挺麻烦的。后来想着开机时有修护模式,就试着进入了修护模式。但是第一次进入修护模式还是老问题。后来第二次进入修护模式,选了较低版本的内核,成功进入了修护模式。运行了软件包修护选项,经过一系列的修护后,终于又进入系统了。后来重启也正常了第一次进入修护模式没有成功,大概是最新的内核在更新的时候出了问题吧,所以选用久了内核成功了。Linux 系统真的好折腾人啊,不敢再更新了。
也别一朝被蛇咬,十年怕井绳。以后更新的时候,注意看看更新文件。那个可能引起麻烦的,Ubuntu 用了这么多年了,心里也有个数。不要因为困难而停止进步。
\rightline{——冷轩\qquad}
\subsection*{2020.04.27——好久没这么折腾了}
\addcontentsline{toc}{subsection}{2020.04.27——好久没这么折腾了}
真的好久没这么折腾了。折腾一般是折腾系统。从记录可以看到,上次折腾还在六年前,也说明我用Ubuntu系统已经稳定运行六年了。心爱的外星人Alienware 15已经陪伴我5年了,经历了我硕士、博士、第一站博后三个重要阶段,也立下汗马功劳。我是搞理论数值模拟的,经常在它上面测试程序,甚至装PBS进行多核计算。听到风扇呼呼的声音一直于心不忍。做了第二站博后,工作强度更大,生怕它突然坏了,而且有了点积蓄,就匆匆买了台继任者联想的X1 Carbon系列,让它退居二线。
电脑买的很匆忙,没有考虑清楚。其实也是有考虑机型的,就是联想的 Y9000X,奈何在美国没有相关机型上市,时间紧迫。拿到电脑,很自然系统从Win10换成Ubuntu了。驱动的老问题又出现了,WiFi不行,就用了个外置WiFi,指纹识别不行,红外摄像头不行。其实这样用着还行。后来工作中发现,这边需要写大量的word,ppt,也要经常用Labview,这些Ubuntu就没有优势了。想着丧失这么多功能,电脑又这么贵有点可惜。所以在因为疫情等原因,停发工资又有不可名状的活呆在宿舍期间,觉得还是把系统还原为Win10,用Windows吧。八年来主力系统首次换成Windows,什么有助工作用什么吧。不过Ubuntu肯定会回来的,喜欢它的干净,特别是最近推出的最简化安装选项。于是折腾就开始了。
Win10倒是很快很方便的还原好了,之前有备份系统。在坚果云数据同步花了很长时间,主要是好像Win10休眠它也就停了。接着折腾Windows版\TeX Live,刚好遇到2020版更新,用的模板出bug,自己也对环境变量不熟悉,后来解决了,记录在本文档中了。接着就是,Windows版Intel Fortran编译器,很不幸,没折腾成功,好像要配合Visual Studio使用。后来考虑利用Windows新功能,子系统,WSL。在 WSL 的Ubuntu中安装Linux版Intel Fortran。 装了最新的2020版Ubuntu,然后安装Intel Fortran,试了很多遍各种查资料,没成功。后来想到,会不是2020版Ubuntu,太新了,Intel Fortran不支持,因为以前发生过这样事。果断安装了2018版Ubuntu,再安装Intel Fortran,总算不再报那个错了。新的报错又来了,好像Intel Fortran需要图形界面,WSL Ubuntu是没有的。就在网上查了一通,成功安装上了图形界面,最后Intel Fortran还报了一些错,但是不是紧要的,能安装下去,最终能成功编译运行我的程序了。前前后后,折腾了四天多。
\rightline{——冷轩\qquad}
\subsection*{2020.07.18——折腾好几天的文献管理引发对本文档定位的进一步思考}
\addcontentsline{toc}{subsection}{2020.07.18——折腾好几天的文献管理引发对本文档定位的进一步思考}
上周很仔细的写了自己对文献管理的看法和具体细节,这周方案就改了,实在打脸。
技术更新总是很快的,但是技术的思维逻辑总是不变的。因为它们是为了解决某类问题而存在的,问题不变,基本的思维逻辑就不会变。为了让文档拥有更持久的生命力,文档中的内容以如下框架构成:
1)推荐的应用(软件、技能)的思维逻辑;2)关键的操作方法;3)进一步内容的引申。
技术往往对应商业产品,而这个产品要成功,也应有站得住脚的基本商业逻辑。
\rightline{——冷轩\qquad}
\subsection*{2023.3.1——好久没折腾,这次是自己搭建计算集群}
\addcontentsline{toc}{subsection}{2023.3.1——好久没折腾,这次是自己搭建计算集群}
大概去年9月自己搭建计算集群成功了,现在乘从着第一次升级,才开始记录。
那次搭建现在想来还是很紧张。我的科研需要大量的计算,经费不多,仔细计算发现,买计时比自己买设备要贵5倍。
那就需要自己搭建计算集群,虽然单个服务器使用也行,但是资源优化调度很不好。
青椒不易,处于考核期,急需成果完成考核,成果又需要大量计算。
当时搭建计算集群心里是非常没底的,当时计划是两周没成功就放弃,先买机时撑过考核再说。
算是自己多年linux的积累还行吧,失败了20多次,在两周内总算成功了。
没想到的是,这次居然遇到了六、七个手册外的问题,两度想放弃重装,在心里很没底的情况下解决了。
现在想来上次成功是非常幸运的,如果遇到这次的问题,兴许就失败了。
第一次打算重来是系统居然缺失一些文件,虽然自己安装了缺失文件,还是有问题。只能想着重装系统了,不过在这之前又搜索了一下,发现自己安装错了文件,两个文件名一字之差。
第二次是intel编译器的问题,source varset.sh 文件会自动配置好环境变量,由于显示结果很正常,也没多心。结果就是死活找不到编译命令,也一度想重装。后来发现,是程序自带的这个配置环境变量文件有问题,改成了手动配置,就好了。
也乘着这次更新,本文档也有些变化,最主要的是一些自己淘汰不用的技术要分离,新建到一个专门的历史文档中。
\rightline{——冷轩\qquad}
\part{入门必备}
\include{chapters/chapter0}
\part{Linux}
\include{chapters/Linux_foundation}
\include{chapters/Linux_command}
\include{chapters/Shell}
\include{chapters/Modern_Command_Line_Tools}
\include{chapters/Linux_operation}
\part{Ubuntu}
\include{chapters/Ubuntu}
\part{数值方法}
\include{chapters/Numerical_analysis}
\part{编程语言导引}
\include{chapters/Programming}
%\part{并行计算}
%\include{chapters/Parallel_computing}
%\part{历史文档} %删除的内容
%\include{chapters/Python}
\end{document}