说明:博主已经从 CentOS 6 过渡到 Debian 9 使用有一些时日,下面列出一些比较常见的问题,无论你是准备将Debian 9作为桌面系统使用还是作为服务器使用,相信这篇文章对于初次使用或准备过渡到 Debian 9 系统有一定的帮助。(此文将会继续保持更新)

Debian9-800x419.jpg

1.如何修改系统语言?

如果一开始使用的是英语或者汉语,现在想切换,那就先安装locales并打开

sudo apt-get install locales
sudo dpkg-reconfigure locales

找到想要的语言,空格键选中,tab键切换到ok,然后移动光标到想要使用的主语言,tab键切到ok。 然后就可以在系统设置里添加汉语了。

2.中文方块字/乱码怎么办?

安装locales并打开

sudo apt-get install locales
sudo dpkg-reconfigure locales

配置编码进入选择:(空格键是选择,选择完了后Tab切换到OK,再ENTER确认)

en_US.UTF8
zh_CN GB2312
zh_CN GBK GBK
zh_CN UTF-8 UTF-8

修改/etc/default/locale文件

LANG=en_US.UTF-8

如果还有方块需要装字体:

sudo apt-get install ttf-arphic-uming
sudo apt-get install ttf-wqy-zenhei

最后使用reboot重启系统。

3.如何添加普通用户为sudoer

debian下默认新建的用户都是普通用户,不是sudoer,这个和ubuntu有很大区别。这意味着你无法使用sudo来暂时提升权限。 打开terminal,切到root

su
apt install sudo
chmod u+w /etc/sudoers
gedit /etc/sudoers

在下面的数据中

# User privilege specification
root    ALL=(ALL:ALL) ALL

按照root用户的形式,追加一行 ,如:

# User privilege specification
gowah    ALL=(ALL:ALL) ALL

应用设置

chmod u-w /etc/sudoers

此时如果你用sudo进行一些安装操作,应该会提示有lock,重启一下就好了。

4.如何配置软件源

修改源为你自己常用的源,教育网我一般用ustc的ipv6的源,速度超爽,如果你是有线的话。 ustc本身也提供了一个配置生成器,只需要点几下就可以生成你想要的源,然后:

sudo apt-get update && sudo apt-get upgrade

如果需要更换网易源、阿里云源,参考文章 -> 传送门

5.如何配置SSH允许root用户登录

先安装ssh服务

sudo apt-get install ssh

使用nanovim编辑器修改/etc/ssh/sshd_config文件,找到

#PermitRootLogin prohibit-password

修改为:

PermitRootLogin yes

保存并退出。

最后执行命令/etc/init.d/ssh restart重启ssh 即可生效。

6.如何安装iwlwifi无线驱动

中科大 ustc 源默认开启了no-free库,没有使用中科大软件源的可以使用命令自己追加上去:

#添加源

echo "deb http://mirrors.ustc.edu.cn/debian/ stretch main contrib non-free" >> /etc/apt/sources.list

#更新源
sudo apt-get update

开始安装驱动:

#安装无线网卡驱动
sudo apt-get install firmware-iwlwifi
#安装完后启动wifi模块(注意这里必须进su)
sudo su
modprobe -r iwlwifi ; modprobe iwlwifi

然后右上角就可以选择无线了。

7.如何找回消失的ll命令

如果想让debian也支持 ll 命令的话则需要修改用户目录下面的.bashrc 配置文件,使用 vim 编辑.bashrc配置文件,找到这样几行:

# export LS_OPTIONS='--color=auto'
# alias ll='ls $LS_OPTIONS -l'
# alias l='ls $LS_OPTIONS -lA'

取消上面几行的注释符#,变成

export LS_OPTIONS='--color=auto'
alias ll='ls $LS_OPTIONS -l'
alias l='ls $LS_OPTIONS -lA'

保存后,执行 source ~/.bashrc使配置生效即可使用重新使用ll命令

8.常用软件安装

1) 安装Fcitx输入法

apt-get install fcitx -y

apt-get install fcitx-pinyin            
apt-get install fcitx-sunpinyin        
apt-get install fcitx-googlepinyin 

2) 安装搜狗輸入法

sudo apt install fcitx fcitx-tools fcitx-config* fcitx-frontend* fcitx-module* fcitx-ui-* presage
sudo apt install sogoupinyin

3) 安装IPtux或Dukto R6 局域网文件传输

sudo apt install netease-cloud-music

ieaseMusic 详见 github:https://github.com/trazyn/ieaseMusic

4) 安装chrome浏览器

sudo apt install google-chrome-stable

或者手动安装:

#32位
wget https://dl.google.com/linux/direct/google-chrome-stable_current_i386.deb
dpkg -i ./google-chrome-stable_current_i386.deb
#修复依赖
apt-get -f install

#64位
wget https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
dpkg -i ./google-chrome-stable_current_amd64.deb
#修复依赖
apt-get -f install

5) 安装vs-code

sudo apt install code

6) 安装文档查看器

sudo apt install evince

7) 安装pdf编辑器

sudo apt install pdfmod

8) 安装日志查看

sudo apt install gnome-logs

9) 安装十六进制编辑器

sudo apt install ghex

10) 安装网易云音乐或ieaseMusic

sudo apt install netease-cloud-music

ieaseMusic 详见 github:https://github.com/trazyn/ieaseMusic

9.包管理及常用命令使用方法

9.1 dpkg 命令如何使用

需要管理员权限来安装一个 .deb 文件,执行

sudo dpkg -i <package>.deb

列出软件包安装的所有文件清单:

sudo dpkg -L <package>

卸载(不清理配置)

sudo dpkg -r <package>

完全清除

sudo dpkg -P <package>

9.2 apt-get 如何彻底卸载软件包

# 删除软件及其配置文件
apt-get --purge remove <package>
# 删除没用的依赖包
apt-get autoremove <package>
# 此时dpkg的列表中有“rc”状态的软件包,可以执行如下命令做最后清理:
dpkg -l |grep ^rc|awk '{print $2}' |sudo xargs dpkg -P

9.3 为什么推荐使用aptitude进行包管理

aptitude在删除一个包时,会同时删除本身所依赖的包。这样,系统中不会残留无用的包,整个系统更为干净。另外强调一点aptitude和apt-get 包管理二选一,不能混用否则将可能导致依赖关系混乱引起出错。

aptitude update            更新可用的包列表 
aptitude safe-upgrade      执行一次安全的升级 
aptitude full-upgrade      将系统升级到新的发行版 
aptitude install pkgname   安装包 
aptitude remove pkgname    删除包 
aptitude purge pkgname     删除包及其配置文件 
aptitude search string     搜索包 
aptitude show pkgname      显示包的详细信息 
aptitude clean             删除下载的包文件 
aptitude autoclean         仅删除过期的包文件  

9.4 apt包管理命令怎么使用?

sudo apt-cache search package_name      #搜索包
sudo apt-cache show package_name      #查看包信息
sudo apt-cache show depends package_name      #查看此包的依赖关系
sudo apt-get install  package_name      #安装软件
sudo apt-get upgrade      #更新已安装的软件
sudo apt-get update      #更新软件包列表
sudo apt-get remove package_name      #卸载一个软件包但是保留相关的配置文件
sudo apt-get --purge remove package_name      #卸载一个软件包同时删除配置文件
sudo apt-get clean      #删除软件包的备份

10.系统管理命令 systemctl

#显示系统状态:
systemctl status
#立即激活单元:
systemctl start [单元]
#立即停止单元:
systemctl stop [单元]
#重启单元:
systemctl restart [单元]
#开机自动激活单元:
systemctl enable [单元]
#取消开机自动激活单元:
systemctl disable [单元]
#命令单元重新读取配置:
systemctl reload [单元]
#输出单元运行状态:
systemctl status [单元]
#检查单元是否配置为自动启动:
systemctl is-enabled [单元]
#显示单元的手册页:
systemctl help [单元]
#重新载入 systemd,扫描新的或有变动的单元:
systemctl daemon-reload
#输出激活的单元:
systemctl list-units
#查看已激活的服务:
systemctl list-units -t service
#输出运行失败的单元:
systemctl --failed
#禁用一个单元:
systemctl mask [单元]
#取消禁用一个单元:
systemctl unmask [单元]
#查看所有已安装服务:
systemctl list-unit-files
#检查某个服务的所有配置细节
systemctl show [服务]
#获取某个服务的依赖性列表
systemctl list-dependencies [服务]
#查看环境变量
systemctl show-environment
#重启系统
systemctl reboot
#关闭系统
systemctl poweroff
#进入待机状态
systemctl suspend
#进入休眠状态
systemctl hibernate
#进入混合休眠模式
systemctl hybrid-sleep
#进入救援状态
systemctl rescue

11.如何配置防火墙?

请参考文章《Ubuntu/Debian 系统安装配置 UFW 简单防火墙》

12.如何添加开机启动

请参考文章《Debian9 如何添加开机自启动》

13.如何给备份/还原Debian9系统

请参考文章《使用 SystemBack 为 Debian/Ubuntu 创建系统备份》

14.如何快速安装XFC4桌面和远程桌面服务

请参考文章《Debian 9 如何安装 XFCE 桌面 + 开启 XRDP 远程桌面服务》

Gnome桌面则建议安装使用Anydesk:

sudo apt install anydesk

15.ifconfig命令找不到怎么办?

Debian,Arch Linux,CentOS/RHEL 7等一些Linux发行版已经弃用了net-tools,其他发行版计划弃用net-tools,改而使用iproute2。所以要再想使用ifconfig命令就要从新安装net-tools

sudo apt install net-tools

16.Linux 目录结构及对应的意义

详见文章 《了解 Linux 目录结构及对应的作用》

17.修改Debian系统默认的开机等待时间

系统默认每次开机都要等待5秒时间,可以使用vimnano编辑器修改/etc/default/grub文件,将 GRUB_TIMEOUT=5 改为 GRUB_TIMEOUT=0。这将改变启动时间为 0 秒。

修改完 grub 配置,使用以下命令来使更改生效:

sudo update-grub

18.如何提高Linux系统物理内存的使用率?

Swappiness 是内核参数,默认值为 60 ,表示当内存使用到(100-60)% 时,就会开始出现交换分区的使用了。由于内存的读取速度比硬盘的读取速度快很多,因而,尽可能设置使用内存,有利于增强系统性能。

临时修改(即重启回归默认值60),执行命令:

sysctl vm.swappiness=10

永久修改,执行命令:

echo "vm.swappiness=10">> /etc/sysctl.conf

应用配置使其生效:

sysctl -p

19.如何开启内核自带的 BBR 算法优化

Linux从内核版本4.9开始支持BBR,如何开启BBR?运行下面命令:

echo -e "net.core.default_qdisc=fq \nnet.ipv4.tcp_congestion_control=bbr" >> /etc/sysctl.conf

应用配置使其生效:

sysctl -p

20.Linux系统如何进行IO调优?

通过适当的调整 nr_requests 参数可以大幅提升磁盘的吞吐量,缺点就是你要牺牲一定的内存。但是这个牺牲的比例,目前 我还没有一个比较严格的数字,所以大家还是要慎重的去更改为好,最后先做一个压力测试,再去进行更改。当然如果你服务器的内存很足,就不必有此顾虑了。具体步骤如下:

执行命令 fdisk -l查看自己的物理磁盘名称。以磁盘名称 sda为例,查看当前请求阵列:

cat /sys/block/sda/queue/nr_requests

默认值为 128

使用dd命令测试 1G 文件读写所需所需时间(请求时间越少代表读写效率越高),重复测试并记录:

time dd if=/dev/zero of=test bs=1M count=1024

调整请求队列数为512

echo 512 > /sys/block/sda/queue/nr_requests 

重复使用dd命令测试 1G 文件读写所需时间(重复测试前请记先删除之前的生成的测试文件)不断调整、测试、对比来确定最适合的请求列队数。

21.如何切换JAVA版本

查看jdk旧版本优先级
sudo update-alternatives --display javac

配置java环境变量
sudo gedit /etc/profile
#Java环境变量
export JAVA_HOME=/opt/jdk1.8.0_181
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib 
export PATH=${JAVA_HOME}/bin:$PATH

应用新的环境变量
source /etc/profile
解压新jdk版本至/usr/local/lib下,使用update-alternatives配置
sudo update-alternatives --install /usr/bin/java java /usr/local/lib/jdk1.8.0_151/bin/java 100
sudo update-alternatives --install /usr/bin/javac javac /usr/local/lib/jdk1.8.0_151/bin/javac 100

选择默认的JDK版本
sudo update-alternatives --config java 
选择新版本的编号

验证检查
sudo update-alternatives --display javac
java -version

22.如何安装Tomcat


解压tomcat至/usr/local/lib下
sudo mv apache-tomcat-9.0.1 /usr/local/lib

配置tomcat环境变量
sudo gedit /etc/profile

#Tomcat环境变量
export CATALINA_BASE=/usr/local/lib/apache-tomcat-9.0.1
export CATALINA_HOME=//usr/local/lib/apache-tomcat-9.0.1
export TOMCAT_HOME=/usr/local/lib/apache-tomcat-9.0.1

应用新修改的环境变量
source  /etc/profile

配置tomcat用户名密码的设置

切换到tomcat安装目录
cd /usr/local/lib/apache-tomcat-9.0.1

配置用户名密码
sudo gedit conf/tomcat-users.xml

<role rolename="tomcat"/>
<role rolename="role1"/>
<user username="tomcat" password="tomcat" roles="tomcat"/>
<user username="both" password="tomcat" roles="tomcat,role1"/>
<user username="role1" password="tomcat" roles="role1"/>

<user username="admin" password="admin" roles="manager"/>

23.64位系统如何开启32位支持

打开终端然后输入:
dpkg --print-architecture;
输出:
amd64
则说明已经拥有了64位架构内核
 
打开多架构支持:
sudo dpkg --add-architecture i386;
sudo apt update;
 
确认打开多架构支持:
dpkg --print-foreign-architectures
输出:
i386

相关推荐

  1. 甲骨文 Debian 扩容引导卷/无损调整系统分区
  2. 使用 SystemBack 为 Debian / Ubuntu 创建系统备份
  3. Debian 9 如何安装XFCE桌面+开启XRDP远程桌面服务
  4. Debian 9/Ubuntu 16.04 如何配置使用NFS服务
  5. Debian 9安装独立的Samba服务器
  6. 关于Debian/Ubuntu 系统备份及还原的手动方法
文章作者:喵斯基部落
原文地址:https://www.moewah.com/archives/2686.html
版权声明:本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。非商业转载及引用请注明出处(作者、原文链接),商业转载请联系作者获得授权。