Ubuntu系统用了好多年了,各类软件、服务配置、错误处理方案已经形成了若干条笔记,可一直没来得及及整理归档,最近决定开始慢慢整理,把以前、现在和以后的笔记都陆续按类别整理在此,一来可以记录自己的点点滴滴,其次也可以分享给有需要的人学习!
1.1 网易云音乐
下载网址:https://music.163.com/#/download
安装:sudo dpkg -i netease-cloud-music_1.1.0_amd_ubuntu.deb
sudo apt-get install -f 修复依赖文件
卸载:sudo apt-get remove netease-cloud-music
1.2 wps
下载网址:http://www.wps.cn/product/wpslinux/
安装:sudo dpkg -i wps-office_10.1.0.5672-a21_amd64.deb
sudo apt-get install -f 修复依赖文件
1.3 GIMP
在开始安装GIMP 2.8.22之前,请使用以下命令删除已安装的GIMP版本:
$ sudo apt-get remove gimp
现在运行以下命令在Ubuntu上安装GIMP 2.8.22:
$ sudo add-apt-repository ppa:otto-kesselgulasch/gimp
$ sudo apt-get update
$ sudo apt-get install gimp
安装完成后,就可以从Ubuntu Dash或Terminal打开GIMP了。
1.4 install flashplayer
1) for FireFox
Installing using the plugin tar.gz:
o Unpack the plugin tar.gz and copy the files to the appropriate location.
o Save the plugin tar.gz locally and note the location the file was saved to.
o Launch terminal and change directories to the location the file was saved to.
o Unpack the tar.gz file. Once unpacked you will see the following:
+ libflashplayer.so
+ /usr
o Identify the location of the browser plugins directory, based on your Linux distribution and Firefox version
o Copy libflashplayer.so to the appropriate browser plugins directory. At the prompt type:
+ cp libflashlayer.so
/usr/lib/mozilla/plugins
o Copy the Flash Player Local Settings configurations files to the /usr directory. At the prompt type:
+ sudo cp -r usr/* /usr
2) for Chromiun
Ubuntu 16.04/14.04.5 安装 Chromium浏览器,Flash播放器--software&updates->Other software->Canonical Partners(必须选中)->close使其更新数据源待软件源更新完毕(此过程耗时长短依赖于网络状况、与软件源服务器的连接等因素),按下 Ctrl + Alt + t键盘组合键,输入以下命令:sudo apt install adobe-flashplugin 根据接下来的提示输入管理员密码,将会出现adobe-flashplugin的安装提示,这时在提示后面输入“Y”,adobe-flashplugin 的安装即会开始。以上方法亲测可用
Ubuntu 14.04 用户可以通过以下命令安装 Pepper Flash Player For Chromium :
sudo apt-get install pepperflashplugin-nonfree
sudo update-pepperflashplugin-nonfree --install
3) for ubuntu chronme
https://get.adobe.com/cn/flashplayer/ 自动识别flash 类型,下载tar.gz, 根据提示拷贝文件到相应目录即可
1.5 install sublime text
Sublime Text 是一个同时支持win、linux、mac的轻量级代码编辑器,其安装方法如下:
方法1:直接在官网http://www.sublimetext.com/3 下载tar包,解压即可使用,默认无桌面快捷方式,需要手动建立,新建快捷方式可参考笔者文章:ubuntu小技巧5——如何在桌面添加软件快捷方式,如何设置软件打开快捷键
方法2:添加源 使用apt或者yum安装,参考官方文档
http://www.sublimetext.com/docs/3/linux_repositories.html
apt安装方法如下:
Install the GPG key:
wget -qO - https://download.sublimetext.com/sublimehq-pub.gpg | sudo apt-key add -
Ensure apt is set up to work with https sources:
sudo apt-get install apt-transport-https
Select the channel to use:
Stable
echo "deb https://download.sublimetext.com/ apt/stable/" | sudo tee /etc/apt/sources.list.d/sublime-text.list
Dev
echo "deb https://download.sublimetext.com/ apt/dev/" | sudo tee /etc/apt/sources.list.d/sublime-text.list
Update apt sources and install Sublime Text
sudo apt-get update
sudo apt-get install sublime-text
1.6 ubunt chm文档阅读器
Ubuntu默认无法打开chm文档,需要安转KchmViewer才能打开chm文档;
安装方法:
apt-get install kchmviewer
2.1 mysql
sudo apt-get install mysql-server
sudo apt isntall mysql-client
sudo apt install libmysqlclient-dev
如果为桌面版本可以在Ubuntu Software Center中安装MySQL Workbench
2.2 安装git
apt install git
2.3 安装nfs
apt install nfs-kernel-server
2.4 filezilla安装
https://filezilla-project.org/download.php?show_all=1
FileZilla_3.38.1_x86_64-linux-gnu.tar.bz2
解压执行后出现无法
2.5 安装codeblocks
apt install codeblocks
也可以在软件中心安装
2.6 安装apache2
apt install apache2
安装后可通过systemctl restart/start/stop/status apache2 操作该服务,服务器默认开启80端口,可在浏览器中通过ip访问80端口
2.7 Ubuntu server1604安装步骤
语言English
Country:other->Asia->China
Unkted States:en_US.UTF-8
Detect keyboard layout :no
Country for keyboard :English (us)
Keyboard layout :English (us)
Encrypt your home directory:No
Partitioning method:Guided -use entire disk
Write changes to disk:yes
Http proxy:Continue
manage uogrades:Install security updates automaticly
chose software to install:standard system utilities,ssh server,samba server
Install grub:yes
swap一般为4-8G即可,若有boot分区,则选择BootLoader为boot分区,其他正常安装即可,一般可将usr和var单独使用分区
2.8 软件安装删除相关说明
apt-get autoclean : 如果你的硬盘空间不大的话,可以定期运行这个程序,将已经删除了的软件包的.deb安装文件从硬盘中删除掉。如果你仍然需要硬盘空间的话,可以试试apt-get clean,这会把你已安装的软件包的安装包也删除掉,当然多数情况下这些包没什么用了,因此这是个为硬盘腾地方的好办法。
apt-get clean : 类似上面的命令,但它删除包缓存中的所有包。这是个很好的做法,因为多数情况下这些包没有用了。但如果你是拨号上网的话,就得重新考虑了。
apt-get autoremove : 删除为了满足其他软件包的依赖而安装的,但现在不再需要的软件包。
其它:
apt-get remove 软件包名称:删除已安装的软件包(保留配置文件)。
apt-get --purge remove 软件包名称:删除已安装包(不保留配置文件)
参考文章:https://blog.csdn.net/flydream0/article/details/8620396
一、删除垃圾:
1)非常有用的清理命令:
sudo apt-get autoclean 清理旧版本的软件缓存
sudo apt-get clean 清理所有软件缓存
sudo apt-get autoremove 删除系统不再使用的孤立软件
这三个命令主要清理升级缓存以及无用包的。
2)清理opera firefox的缓存文件:
ls ~/.opera/cache4
ls ~/.mozilla/firefox/*.default/Cache
3)清理Linux下孤立的包:
终端命令下我们可以用:
sudo apt-get install deborphan -y
4)卸载:tracker
这个东西一般我只要安装ubuntu就会第一删掉tracker他不仅会产生大量的cache文件而且还会影响开机速度。所以在新得利里面删掉就行。
附录:包管理的临时文件目录:包在/var/cache/apt/archives;没有下载完的在/var/cache/apt/archives/partial
二、删除软件
ubuntu软件的删除一般用“ubuntu软件中心”或“新立得”就能搞定,但有时用命令似乎更快更好
sudo apt-get remove --purge 软件名
sudo apt-get autoremove 删除系统不再使用的孤立软件
sudo apt-get autoclean 清理旧版本的软件缓存
dpkg -l |grep ^rc|awk '{print $2}' |sudo xargs dpkg -P 清除残余的配置文件保证干净。
三、删除多余内核
1)首先要使用这个命令查看当前Ubuntu系统使用的内核
uname -a
2)再查看所有内核
dpkg --get-selections|grep linux
3)最后小心翼翼地删除吧
sudo apt-get remove linux-image-2.6.32-22-generic
linux-headers-xxxxxx
linux-headers-xxxxxx-generic 总之中间有“xxxxxx”那段的旧内核都能删,注意一般选内核号较小的删
注意:linux var/lib/dpkg 不可以删除
install rpm 工具
sudo apt-get install rpm
rpm -i name.rpm
rpm -e 需要卸载的安装包
2.9 如何查看chm文件
sudo apt-get install xchm //不稳定,中文译码容易出错
sudo apt-get install xchmviewer //比较稳定
sudo apt-get install xchmsee
sudo apt-get install gnochm
sudo apt-get install kchmviewer
2.10 如何通过ping 用户别名 来访问用户
在/etc/hosts中添加 192.168.1.20 ip20 ,保存后即可通过ping ip20获取192.168.1.20的ping信息,通过ssh ip20也可以连接该机器,这样可以避免每次输入较长的ip。
2.11 vmware-player 安装和卸载
安装: 直接通过如下命令安装即可, 版本名称需根据实际情况做相应改变.
bash VMware-Player-15.5.0-14665864.x86_64.bundle
卸载:
首先检查产品名称和版本 ->
# vmware-installer -l
Product Name Product Version
==================== ====================
vmware-player 15.5.0.14665864
根据名称和版本卸载player ->
# vmware-installer -u vmware-player 15.5.0.14665864
2.12 Ubuntu 更改主机名称
接入Ubuntu终端后,命令行前面默认为 用户名@主机名称, 对于一些租的云服务器,主机名称可能会很长,因此需要手动修改,方法下:
vim /etc/hostname
修改为需要的主机名称,然后重启即可生效.
2.13 Ubuntu系统升级
sudo do-release-upgrade -d
建议升级前更改下系统源,否则下载非常慢
参考文章:https://www.omgubuntu.co.uk/2020/04/how-to-upgrade-to-ubuntu-20-04
3.1 (1)虚拟机启动时候出现:A job is running for Raise network interfaces(1min 3s / 5min 4s)
该过程导致启动时间延长了XminYs,该问题一般为虚拟机网络没有配置好,解决方案参考笔者一下博文:
Windows小技巧8--VMware workstation虚拟机网络通信 - https://blog.csdn.net/u011127242/article/details/83684972
(2)主机未连网时候,无法访问虚拟机的解决方法:
主机未连网时候,虚拟机正常情况下使用桥接是无法和主机通信的,因为桥接的是主机的无线或有线硬件Ip,然后使用DHCP功能分配虚拟机网络,使之和主机在同一个网络,因此主机不联网时候,虚拟机桥接正常情况接近报废;
使用,ipconfig查看主机IP,发现没有有线和无线的ip,但是有VMnet1(host only)和VMnet8(NAT)的IP以及对应的子网掩码,此时只要将VMworkstation设置为Host Only,并在虚拟机新建一个手动设置的ip(host only),使其Ip和VMnet1的网段相同,子网掩码也相同,网关为xxx.xxx.xxx.1即可,设置好了就可以用putty连接虚拟机了
编辑/etc/network/interface
将默认的iface ens33 inet dhcp
修改为iface ens33 inet static
添加adress 169.254.78.152(和vmnet1同网段)
设置vm网络为仅主机模式,重启即可连接虚拟机了
3.2 使用filezilla(非自动安装,手动下载安装包)
libstdc++.so.6: version `GLIBCXX3.4.22’ not found
这是因为当前版本的libstdc++.so.6缺少GLIBCXX_3.4.22.查看当前版本的GLIBCXX命令为,
strings /usr/lib/x86_64-linux-gnu/libstdc++.so.6 | grep GLIBCXX
解决方法:
安装libstec++,
sudo apt-get install libstdc++6
如果还未解决,则可以终端运行如下命令:
sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt-get update
sudo apt-get upgrade
sudo apt-get dist-upgrade
这是在运行命令, strings /usr/lib/x86_64-linux-gnu/libstdc++.so.6 | grep GLIBCXX
3.3 缺少libpng-1.6.32
1)到链接 https://sourceforge.net/projects/libpng/?source=directory 下载文件 libpng-1.6.32.tar.xz (997.1 kB)
2)解压,执行 xz -d libpng-1.6.32.tar.xz 将 xlibpng-1.6.32.tar.xz 解压成 libpng-1.6.32.tar , 然后再 tar xvf libpng-1.6.32.tar来解包
3)安装
cd libpng-1.6.32
./configure
make check
sudo make install
4)配置动态链接,执行sudo ldconfig,到此,libpng16.so.16 安装成功
3.4 大型项目注意事项
编译文件的时候必须要-g ,以便于可以生成core文件;
Linux系统需要设置core文件名称携带进城ID,否则出现第二次崩溃的时候会覆盖第一次崩溃的core文件;建议系统定期备份core文件,形式为core_id_time的形式,以防程序二次出问题时候覆盖第一次core文件
3.5 windows和linux下python文件格式问题
win下结尾为"\r\n",linux下为"\r",执行python程序会出现#!/usr/bin/python3^M: bad interpreter 的问题,此时可以使用vi中:set ff=unix命令解决,亲测可用;也有说使用sed -i 's/^M//g' filename解决,测试无法成功
3.6 Ubuntu新建用户后发现无法使用ll,且文档无颜色区分
useradd username
解决办法:cp /root/.bashrc /home/UserName/ 即可立马解决问题
/home/.bashrc或者~/.bashrc都可以,但是需要source /home/UserName/.bashrc 或者source ~/.bashrc才能生效,永久生效则添加source xxx到/etc/profile 中, 否则只会临时生效,.bashrc只保存某个用户的特性化信息,如shell初始化路径,别名等,不对其其它用户产生影响;ubuntu启动后会执行/etc/profile来加载一些配置,因此可以在profile中加入一些特殊配置,如切换路径、export 环境变量,单环境变量添加到/etc/environment最合适
3.7 Win和linux文件共享方法
Ubuntu桌面,可以通过右键LocalNetworkShare来共享本地用户的文件,若共享root的文件则需要对该文件赋值777权限,而且需要在/etc/samba/smb.conf的global setting中添加usershare owner only=false,否则无法共享root的文件夹,共享完成后在win上文件管理器输入\\UbuntuIP即可;
Windows上共享文件夹方法为:右键->属性-->共享-->网络文件和文件夹共享 来实现文件共享,然后在Ubuntu的Network输入smb://WindowsIP即可
更多文件共享方法参考博文:arm-linux笔记3:arm-linux PC文件传输方法总结(4种最常见的方法)--https://blog.csdn.net/u011127242/article/details/47295905
3.8 同步Windows和Ubuntu的时钟时区
由于windwos和ubuntu的时间统计方式不同,导致每次登陆windows或者ubuntu后系统时间不准确,此时需要设置号正常的时区,然后更新到硬件CMOS中即可。一般将Ubuntu时间方式更改和Windows同步,方法如下:1)tzselect 依次选择时区,2)date -s MM/DD/YY 和 date -s hh:mm:ss 修改准确时间,3)hwclock --systohc 更新时间设置到硬件中;更新成功后,在windows和Ubuntu下切换其时间不会发生改变。
1604及早期版本可以使用以上方法,较新版本系统使用上述方法无效时候,可以直接root用户执行timedatectl set-local-rtc 1,然后重启即可(笔者1910使用该timedatectl成功解决该问题)
3.9 登录ssh后,使用xshell连接其ftp传输文件出现 sftp subsystem request is rejected错误
sftp subsystem request is rejected.
please make sure that sftp subsystem is properly installed in ssh server
cat /etc/ssh/sshd_config后,发现如下内容被删掉,重新添加后执行/etc/init.d/ssh reload,即可正常使用sftp。
# 5. x509
Subsystem sftp /usr/lib/sftp-server
3.10 免密码登录
echo (h01)~/.ssh/id_rsa.pub >.ssh/authorized_keys
或者ssh-copy-id h02|h03
3.11 Ubuntu右边数字键盘无法使用问题
笔者最近安装最新Ubuntu1804版本后,发现不论NumLock为on或者off右边数字键盘无法使用,经过多次查阅资料后发现系统settings-Universal Access- Pointing & Clicking-Mouse Keys为on,该功能导致右边键盘和鼠标作用类,关闭后即可恢复数字输入功能。
也可以通过如下脚本控制Mouse Keys开关:
#!/bin/bash
#gsettings set org.gnome.desktop.a11y.keyboard mousekeys-enable true
#gsettings set org.gnome.desktop.a11y.keyboard mousekeys-enable false
key="org.gnome.desktop.a11y.keyboard mousekeys-enable"
current=$(gsettings get $key)
if [ "$current" == "true" ]; then
gsettings set $key false
else
gsettings set $key true
fi
参考链接:How to set a keyboard shortcut for toggling 'mouse keys' on/off in universal access, 18.04?
3.12 无法识别exfat格式硬盘
对于某些版本ubuntu无法识别exfat格式硬盘,直接输入如下命令即可:
sudo apt-get install exfat-utils
3.13 安装搜狗输入法后,Ubuntu fcitx CPU占用率很高解决方法
笔者最近使用Ubuntu的时候发现cpu使用率过高,导致系统严重发热,经过排查后发现fcitx占用率过高;笔者输入法只使用了sogou,因此查看后发现搜狗输入法默认开启了高级->智能输入->云计算候选词 功能,关闭后并重启输入法,cpu使用率恢复正常.
3.14 去掉Ubuntu 终端 咚咚咚 的按键声音
ubuntu 按backspace键的时候总是发出 咚咚咚 的响声,解决方法为:
sudo vi /etc/inputrc
把#set bell-style none 前面的# 去掉
重启终端即可取消 按键声.
注: 有些用户采用 terminal->preference->Profiles->Sound(Terminal bell) 去掉sound的方法;但是笔者测试发现仍然去不掉, 但上面方法直接修改inputrc却可行, 可能于系统版本不一致有关,实际使用的时候两种方法都可以参考.
3.15 解决vim '假卡死' 问题
笔者最近在使用vim的时候,偶发现vim无任何输入,以为是卡死,就重启了几次,后来发现每隔几天都会出现该问题,感觉应该不是卡死原因导致的;
查阅资料发现不小心按了ctrl+s导致的, 按下 Ctrl+S快捷键后,你依然可以像终端发送命令,终端也会正常执行,只是不会将反馈内容和结果显示在终端上而已,这个特性可以用来暂停显示快速滚动输出的内容,比如在编译大型项目的时候;
恢复方法为 ctrl+Q.
3.16 将UTC时区改为CST时区
$ date
2020年 04月 15日 星期三 15:41:28 UTC (更改前时间)
# mv /etc/localtime /etc/localtime_bak
# ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime (此处可以根据实际选择)
$ date
2020年 04月 16日 星期四 23:54:14 CST(更改后时间)
本文中的虚拟机为VM12.X版本,其它Linux配置若为桌面软件则为Ubuntu Desktop 1604 版本,若为非桌面版则为Ubuntu Server 1601版本