Prechádzať zdrojové kódy

Z991239-5285 #comment installv2版本初步编码完成

80374374 1 rok pred
rodič
commit
ff69002b3c
1 zmenil súbory, kde vykonal 36 pridanie a 50 odobranie
  1. 36 50
      addin/installv2.sh

+ 36 - 50
addin/installv2.sh

@@ -14,7 +14,7 @@ rvc_install_path_hardware_dir=${rvc_install_path_Run_dir}/hardwarecfg
 rvc_install_path_versions_dir=${rvc_install_path_Run_dir}/version
 res=0
 
-#设置开机自动登录用户
+#设置开机自动登录用户(有做冗余判断)
 setup_autologin()
 {
     given_user=$1
@@ -39,7 +39,7 @@ setup_autologin()
     fi
 }
 
-#设置免密使用root权限
+#设置免密使用root权限(有做冗余判断)
 sudo_priviledge() 
 {
 
@@ -53,9 +53,7 @@ sudo_priviledge()
 
     ret=0
 	echo "[INFO]: to process editing sudoers file..."
-    
-    cp ${given_sudoers_file} ${given_sudoers_file}.tmp
-	
+	cp ${given_sudoers_file} ${given_sudoers_file}.tmp
     chmod 0640 ${given_sudoers_file}.tmp
     cat ${given_sudoers_file}.tmp | grep  'includedir /etc/sudoers.d' > /dev/null
     if [ $? = 0 ]; then
@@ -84,16 +82,18 @@ sudo_priviledge()
     chmod 0440 ${given_sudoers_file}.tmp
 
     if visudo -c -f ${given_sudoers_file}.tmp ; then
-        echo check syntax correct on ${given_sudoers_file}
+        echo check syntax correct on ${given_sudoers_file}.tmp
     else
         echo "[ERROR]: syntax check failed on file ${given_sudoers_file}"
         rm ${given_sudoers_file}.tmp
+		#if [ -f "${given_sudoers_file}.backup" ]; then
+		#fi
         return 3
     fi
 
     if [ $ret -eq 1 ]; then
         echo "[SUCCESS]: config file has been change !!"
-        cp ${given_sudoers_file} ${given_sudoers_file}.backup.${curr_timestamp}
+        cp ${given_sudoers_file} ${given_sudoers_file}.backup
         mv ${given_sudoers_file}.tmp ${given_sudoers_file}
         ret=0
     else
@@ -119,33 +119,33 @@ else
     echo no any arguments.
 fi
 
+#获取当前登录的用户名称,这里可以考虑用另外一种优化的方法
+rvc_user=$USER
+if [ -z "$rvc_user" -o "$rvc_user" = "root" ]; then
+	users=$(cat /etc/passwd | awk -F: '$3>=500' | cut -f 1 -d :)
+	echo "user list: $users"
+	cnt=0
+	for var in $(echo ${users} | awk '{split($0,arr,",");for(i in arr) print arr[i]}')
+	do
+		if [ ${var} != 'nobody' -a ${var} != 'systemd-coredump' -a ${var} != 'liuwt' -a ${var} != 'deepin-anything-server' ]; then
+			cnt=$((${cnt}+1))
+			rvc_user=${var}
+		fi
+	done
+	if [ $cnt -ne 1 ]; then
+		echo "too many users: $cnt"
+		rvc_user=''
+	else
+		echo "aim user: $rvc_user"
+	fi
+fi
+
 if [ "$argument1" = "uninstall" ]; then
 	rm /etc/xdg/autostart/spexplorerauto.desktop > /dev/null 2>&1
     rm /usr/share/applications/spexplorerauto.desktop > /dev/null 2>&1
     rm -rf /opt/rvc > /dev/null 2>&1
     rm -rf /opt/Run > /dev/null 2>&1
     rm -rf /opt/wlog > /dev/null 2>&1
-	
-	rvc_user=$USER
-    if [ -z "$rvc_user" -o "$rvc_user" = "root" ]; then
-        users=$(cat /etc/passwd | awk -F: '$3>=500' | cut -f 1 -d :)
-        echo "user list: $users"
-        cnt=0
-        for var in $(echo ${users} | awk '{split($0,arr,",");for(i in arr) print arr[i]}')
-        do
-            if [ ${var} != 'nobody' -a ${var} != 'systemd-coredump' -a ${var} != 'liuwt' -a ${var} != 'deepin-anything-server' ]; then
-                cnt=$((${cnt}+1))
-                rvc_user=${var}
-            fi
-        done
-        if [ $cnt -ne 1 ]; then
-            echo "too many users: $cnt"
-            rvc_user=''
-        else
-            echo "aim user: $rvc_user"
-        fi
-    fi
-    rm /home/$rvc_user/Desktop/spexplorerauto.desktop > /dev/null 2>&1
 
     echo "[INFO]: set menu tool as show mode..."
     gsettings set com.deepin.dde.dock hide-mode  keep-showing
@@ -159,6 +159,14 @@ if [ "$argument1" = "uninstall" ]; then
 		rm -rf $papers_bak_dir
     fi
 	
+	if [ -z "$rvc_user" ]; then
+		echo "[ERROR]: username is empty, please find more details"
+		exit 1
+	elif [ "$rvc_user" = "root" ]; then
+		echo "[ERROR]: username is invalid, please find more details"
+		exit 2
+	fi
+    rm /home/$rvc_user/Desktop/spexplorerauto.desktop > /dev/null 2>&1
 	exit 0
 fi
 
@@ -255,29 +263,7 @@ echo "============== during installation custom scripts done =============="
 
 echo "============== post installation custom scripts start =============="
 
-rvc_user=$USER
 sudoers_file=/etc/sudoers
-
-#获取当前登录的用户名称,这里可以考虑用另外一种优化的方法
-if [ -z "$rvc_user" -o "$rvc_user" = "root" ]; then
-	users=$(cat /etc/passwd | awk -F: '$3>=500' | cut -f 1 -d :)
-	echo "user list: $users"
-	cnt=0
-	for var in $(echo ${users} | awk '{split($0,arr,",");for(i in arr) print arr[i]}')
-	do
-		if [ ${var} != 'nobody' -a ${var} != 'systemd-coredump' -a ${var} != 'liuwt' -a ${var} != 'deepin-anything-server' ]; then
-			cnt=$((${cnt}+1))
-			rvc_user=${var}
-		fi
-	done
-	if [ $cnt -ne 1 ]; then
-		echo "too many users: $cnt"
-		rvc_user=''
-	else
-		echo "aim user: $rvc_user"
-	fi
-fi
-
 if [ -z "$rvc_user" ]; then
 	echo "[ERROR]: username is empty, please find more details"
 	exit 1