Linux使用过程中,日常操作的需求满足

需求 1,如何安装软件包 (以搜狗输入法为例)

Linux 系统的软件安装分为两种类型
类型 1: 源码安装
在linux的世界,有很多软件只提供了源代码给你,需要你自己进行编译安装,一般开源的软件都会使用tar.gz压缩档来进行发布,当然也有其他的形式。拿到源代码的压缩文档,把它解压到/tmp目录下,进入/tmp/软件目录,然后执行以下三个命令:

(1) ./configure
(2) make
(3) sudo make install

在第一步./configure时可能会提示说有某某软件找不到,例如提示“libgnome”这个开发包找不到,那就把libgnome这个关键词 copy,然后打开新立得软件管理器,在里面搜索libgnome这个关键词,就会找到libgnome相关的项目,把前面有个ubuntu符号的 libgnome包(注意:同样需要安装dev包,但可以不装doc包)全部安装,通过这个方法把./configure过程中缺失的开发包都全部装上就 OK了,第一步能顺利通过,第二,三步基本问题不大。

类型 2:安装包安装
安装包安装,图形化的Linux 可以通过直接双击安装包进行安装
或者先进入到软件包存放路径,通过dpkg 命令安装
dpkg -i *.deb
yum install

卸载一个软件
dpkg -r 软件名称
删除已安装文件
apt remove fcitx*

类型 2:rpm yum 区别
rpm yum用于rhel、centos、fedora、suse等
dpkg apt用于debain、ubuntu等

需求 2 ,如何查看软件的安装路径 (以搜狗输入法为例)

搜狗输入法的 文件名称 为 fcitx ,查找安装路径的方式有以下几种

whereis :

sudo whereis fcitx (可以不加sudo )

使用find 命令 :

find 路径 参数 查询关键字
find  / -name

使用 dpkg -L 关键字

在这里插入图片描述

使用rpm 命令

(01)安装一个包:bai# rpm -ivh
(02) 升级一个包:# rpm -Uvh
(03) 移走一个包:# rpm -e
(04) 安装参数:
–force 即使覆盖属于du其它包的文件也强zhi迫安装
–nodeps 如果该RPM包的安装依赖其它包,即使其它包没装,也强迫安装。
(05) 查询一个包是否被安装:# rpm -q < rpm package name>
(06) 得到被安装的包的信息:# rpm -qi < rpm package name>
(07) 列出该包中有哪些文件:# rpm -ql < rpm package name>
(08) 列出服务器上的一个文件属于哪一个RPM包:#rpm -qf
(09) 可综合好几个参数一起用:# rpm -qil < rpm package name>
(10) 列出所有被安装的rpm package:# rpm -qa
(11) 列出一个未被安装进系统的RPM包文件中包含有哪些文件:# rpm -qilp < rpm package name>

需求 3,如何电脑的CPU 位数 32 或者 64 位

sudo uname -i    //查询系统的平台
x86_64    //代表 64 位机器  
sudo uname -o //查询系统类型
GUN/Linux     //linux 系统

详细的参数参见下图表
在这里插入图片描述

需求 4,修改 IP 地址

通过界面永久修改 IP 地址
带界面的Ubantu 系统,永久修改IP 地址

通过命令临时修改IP 地址,重启后失效

ifconfig 网卡名  ip地址   netmask  掩码值 
ifconfig eth0 192.168.1.1  netmask 255.255.255.0 

永久修改网关

route add default gw 192.168.1.1 

通过修改文件永久修改IP 地址

  1. ip 地址的文件存放于 /etc/network/interface 文件中
    通过 vi 将以下信息写入文件中
    auto eth0
    iface eth0 inet static
    address 192.168.1.100
    netmask 255.255.255.0
    gateway 192.168.1.1

2.修改DNS
DNS 文件存放于以下目录 base 文件中
在这里插入图片描述
修改此文件信息 nameserver 192.168.1.1

需求 5,查找安装软件的包名

使用 dpkg -l 命令 用 grep 过滤
dpkg -l |grep fcitx

需求 6,宏观理解源码安装

将源码解压 后
INSTALL 文件里 ,为 安装手顺
make 报错检查依赖项
sudo apt-get install gcc build-essential

编译不通过的时候,记得查看 configur.log 从中获取有关信息

Linux源码安装步骤12

  1. 获取源码

  2. 查看INSTALL与README文件
    (解压后查看INSTALL与README文件,这两个文件中详细介绍了本软件的安装方法和注意事项)

  3. 创建Makefile文件
    (执行configure命令,生成Makefile文件)

  4. 编译
    (执行make clean;make命令将源码编译成二进制文件。
    PS:make clean命令用来清除上一次编译生成的目标文件。这个步骤可有可无,但为了确保编译的成功,还是加上为好。防止由于软件中含有残留的目标文件导致编译失败)

  5. 安装
    (执行make install命令将上一步编译好的二进制文件安装到指定的目录中去)

可以新建一个文件夹,用来放编译文件
mkdir build
cd build
…/configure --prefix=$HOME/.local/ --enable-checking=release --disable-multilib
make
make install

需求 7 , 查看插入的U盘

使用df -l 命令查看外接设备的路径

需求 8 , 常用的文件解压缩

首先看文件是什么类型的

tar command:
tar -cvf test.tar  *.py  打包       //将全部的py 文件打包为 test.tar  
tar -xvf test.tar   解包           
tar -zcvf xxx.tar.gz 压缩打包       
tar -zxvf xxx.tar.gz 解压缩
tar -zxvf xxx.tar.gz -C / 指定路径
tar -jcvf xxx.tar.bz2   *.py   压缩打包   
tar -jxvf xxx.tar.bz2
zip zzz.zip *.py 

需求 9 , * . tar.xz 文件如何解包

第一步:
xz -d 要解压的文件 解压成 tar 文件
第二部:
tar xvf *.tar 解压

需求 10 , Linux 14.04 千疮百孔装输入法,记录吐血过程

  1. 下载 fcitx 源码 进行安装,参照手顺 需要安装依赖包 LibX11, Cairo-Xlib
  2. 遂开始装LibX11 依赖,装过程中提示gcc 版本要求 5.0 以上
  3. 遂开始装gcc 编译器 ,下载gcc 源码 ,安装提示 依赖包版本不符合
  4. 遂下载 gpm mpfr mpc 开始安装 gpm ,提示 m4 报错
  5. 遂安装 m4 后重新执行 报错无 yacc , 命令执行yacc 链接某个安装包进行安装重试
  6. 继续安装mpc 提示 gcc 版本低,进入死循环,先跳过
  7. 遂按摩装mpfr 提示 antomake 未安装
  8. 遂安装antomake wget https://ftp.gnu.org/gnu/automake/automake-1.15.tar.gz
  9. sudo autoreconf -ivf 解决了报 aclocal: configure.ac' orconfigure.in’ is required 的错
    10.虚晃一枪,再重试后又失败 ,重新查看日志报错信息
    11.此处需要注意automake 在编译过程中,有时有有版本的要求,所以我装了对应的automake后报错消失
  10. 继续安装 mpfr 后提示 makeinfo missing ,命令输入行输入makeinfo 后提示需要安装 textinfo ,根据提示 apt-get install 安装 ,不再报错,之后重新安装mpc 成功
  11. 开始着手安卓gcc 后,提示无 32位开发 lib 使用参数 --disable multilib
  12. 安装过程中遇到 make 编译巨慢的现象 ,为了防止这种漫长漫长的等待
    先搞清楚你电脑的CPU 核数 , 使用命令 make -j2n (n代表电脑内核数量)
    4 核 CPU 直接 make -j8 马力全开
  13. 当前进度安装 gcc 8.3 ,安装完毕后开始安装LibX11

需求 11, …/configure 的参数说明 转载3

下面是关于configure后面跟的参数的详细说明

‘configure’脚本有大量的命令行选项.对不同的软件包来说,这些选项可能会有变化,但是许多基本的选项是不会改变的.带上’–help’选项执行’configure’脚本可以看到可用的所有选项.尽管许多选项是很少用到的,但是当你为了特殊的需求而configure一个包时,知道他们的存在是很有益处的.下面对每一个选项进行简略的介绍:

‘–cache-file=FILE’
'configure’会在你的系统上测试存在的特性(或者bug!).为了加速随后进行的配置,测试的结果会存储在一个cache file里.当configure一个每个子树里都有’configure’脚本的复杂的源码树时,一个很好的cache file的存在会有很大帮助.

‘–help’
输出帮助信息.即使是有经验的用户也偶尔需要使用使用’–help’选项,因为一个复杂的项目会包含附加的选项.例如,GCC包里的’configure’脚本就包含了允许你控制是否生成和在GCC中使用GNU汇编器的选项.

‘–no-create’
'configure’中的一个主要函数会制作输出文件.此选项阻止’configure’生成这个文件.你可以认为这是一种演习(dry run),尽管缓存(cache)仍然被改写了.

‘–quiet’
‘–silent’
当’configure’进行他的测试时,会输出简要的信息来告诉用户正在作什么.这样作是因为’configure’可能会比较慢,没有这种输出的话用户将会被扔在一旁疑惑正在发生什么.使用这两个选项中的任何一个都会把你扔到一旁.(译注:这两句话比较有意思,原文是这样的:If there was no such output, the user would be left wondering what is happening. By using this option, you too can be left wondering!)

‘–version’
打印用来产生’configure’脚本的Autoconf的版本号.

‘–prefix=PEWFIX’
'–prefix’是最常用的选项.制作出的’Makefile’会查看随此选项传递的参数,当一个包在安装时可以彻底的重新安置他的结构独立部分.举一个例子,当安装一个包,例如说Emacs,下面的命令将会使Emacs Lisp file被安装到"/opt/gnu/share":
$ ./configure --prefix=/opt/gnu

‘–exec-prefix=EPREFIX’
与’–prefix’选项类似,但是他是用来设置结构倚赖的文件的安装位置.编译好的’emacs’二进制文件就是这样一个问件.如果没有设置这个选项的话,默认使用的选项值将被设为和’–prefix’选项值一样.

‘–bindir=DIR’
指定二进制文件的安装位置.这里的二进制文件定义为可以被用户直接执行的程序.

‘–sbindir=DIR’
指定超级二进制文件的安装位置.这是一些通常只能由超级用户执行的程序.

‘–libexecdir=DIR’
指定可执行支持文件的安装位置.与二进制文件相反,这些文件从来不直接由用户执行,但是可以被上面提到的二进制文件所执行.

‘–datadir=DIR’
指定通用数据文件的安装位置.

‘–sysconfdir=DIR’
指定在单个机器上使用的只读数据的安装位置.

‘–sharedstatedir=DIR’
指定可以在多个机器上共享的可写数据的安装位置.

‘–localstatedir=DIR’
指定只能单机使用的可写数据的安装位置.

‘–libdir=DIR’
指定库文件的安装位置.

‘–includedir=DIR’
指定C头文件的安装位置.其他语言如C++的头文件也可以使用此选项.

‘–oldincludedir=DIR’
指定为除GCC外编译器安装的C头文件的安装位置.

‘–infodir=DIR’
指定Info格式文档的安装位置.Info是被GNU工程所使用的文档格式.

‘–mandir=DIR’

指定手册页的安装位置.

‘–srcdir=DIR’
这个选项对安装没有作用.他会告诉’configure’源码的位置.一般来说不用指定此选项,因为’configure’脚本一般和源码文件在同一个目录下.

‘–program-prefix=PREFIX’
指定将被加到所安装程序的名字上的前缀.例如,使用’–program-prefix=g’来configure一个名为’tar’的程序将会使安装的程序被命名为’gtar’.当和其他的安装选项一起使用时,这个选项只有当他被`Makefile.in’文件使用时才会工作.

‘–program-suffix=SUFFIX’
指定将被加到所安装程序的名字上的后缀.

‘–program-transform-name=PROGRAM’
这里的PROGRAM是一个sed脚本.当一个程序被安装时,他的名字将经过`sed -e PROGRAM’来产生安装的名字.

‘–build=BUILD’
指定软件包安装的系统平台.如果没有指定,默认值将是’–host’选项的值.

‘–host=HOST’
指定软件运行的系统平台.如果没有指定,将会运行`config.guess’来检测.

‘–target=GARGET’
指定软件面向(target to)的系统平台.这主要在程序语言工具如编译器和汇编器上下文中起作用.如果没有指定,默认将使用’–host’选项的值.

‘–disable-FEATURE’
一些软件包可以选择这个选项来提供为大型选项的编译时配置,例如使用Kerberos认证系统或者一个实验性的编译器最优配置.如果默认是提供这些特性,可以使用’–disable-FEATURE’来禁用它,这里’FEATURE’是特性的名字.例如:
$ ./configure --disable-gui

‘-enable-FEATURE[=ARG]’
相反的,一些软件包可能提供了一些默认被禁止的特性,可以使用’–enable-FEATURE’来起用它.这里’FEATURE’是特性的名字.一个特性可能会接受一个可选的参数.例如:
$ ./configure --enable-buffers=128
`–enable-FEATURE=no’与上面提到的’–disable-FEATURE’是同义的.

‘–with-PACKAGE[=ARG]’
在自由软件社区里,有使用已有软件包和库的优秀传统.当用’configure’来配置一个源码树时,可以提供其他已经安装的软件包的信息.例如,倚赖于Tcl和Tk的BLT器件工具包.要配置BLT,可能需要给’configure’提供一些关于我们把Tcl和Tk装的何处的信息:
$ ./configure --with-tcl=/usr/local --with-tk=/usr/local
‘–with-PACKAGE=no’与下面将提到的’–without-PACKAGE’是同义的.

‘–without-PACKAGE’
有时候你可能不想让你的软件包与系统已有的软件包交互.例如,你可能不想让你的新编译器使用GNU ld.通过使用这个选项可以做到这一点:
$ ./configure --without-gnu-ld

‘–x-includes=DIR’
这个选项是’–with-PACKAGE’选项的一个特例.在Autoconf最初被开发出来时,流行使用’configure’来作为Imake的一个变通方法来制作运行于X的软件.’–x-includes’选项提供了向’configure’脚本指明包含X11头文件的目录的方法.

‘–x-libraries=DIR’
类似的,’–x-libraries’选项提供了向’configure’脚本指明包含X11库的目录的方法.

在源码树中运行’configure’是不必要的同时也是不好的.一个由’configure’产生的良好的’Makefile’可以构筑源码属于另一棵树的软件包.在一个独立于源码的树中构筑派生的文件的好处是很明显的:派生的文件,如目标文件,会凌乱的散布于源码树.这也使在另一个不同的系统或用不同的配置选项构筑同样的目标文件非常困难.建议使用三棵树:一棵源码树(source tree),一棵构筑树(build tree),一棵安装树(install tree).这里有一个很接近的例子,是使用这种方法来构筑GNU

需求 12 , Linux 修改环境变量

环境变量的存储文件在 etc/profile 下

修改bashrc 文件
vi/root/.bashrc
修改内容例子如下 :
export PATH="$PATH:/opt/au1200_rm/build_tools/bin

需求 12 磁盘格式化

磁盘格式化可以使用命令 mkfs 
sudo mkfs -t ext4 /dev/sdb  
将磁盘 sdb 格式化为  ext4 格式 

需求 13 查看当前空间剩余大小

可以使用 free 命令

需求 14 了解Linux 磁盘挂载系统

查看当前系统挂载了那些磁盘
fdisk -l   
fdisk 是一个磁盘管理工具,可以创建分区,等

需求 15

查看当前系统挂载了那些磁盘
fdisk -l   
fdisk 是一个磁盘管理工具,可以创建分区,等

  1. https://www.cnblogs.com/benwu/articles/8436209.html ↩︎

  2. https://www.cnblogs.com/crxis/p/10399587.html ↩︎

  3. https://blog.csdn.net/luckywang1103/article/details/18674231 ↩︎

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值