LINUX.ORG.RU

Как заигнорить ошибку /etc/profile?

 ,


0

1

При включении компа стал получать вместо рабочего стола ошибку error found when loading /etc/profile в виде окна в котором можно нажать на ОК, и загрузка пойдёт дальше.

/bin/bash -l выдаёт это (в сообщении перед загрузкой текст тот же):

========================================================================
Ubuntu 20.04 'focal' reached end-of-life for general support in May 2025.

The packages in the Flatpak PPAs for Ubuntu 20.04 will not necessarily
be updated, even if there are security vulnerabilities. Please upgrade
to a newer LTS branch of Ubuntu.
========================================================================

Т.е. похоже «ошибка» состоит в том, что моя система устарела. Я про это конечно же в курсе и пока что не могу переустановить на свежачок. Как заставить систему игнорить эту «ошибку» и загружать как раньше рабочий стол без всяких «угроз»? Про это инфы в гугле не нашёл.

Система Linux Mint 20.2 Cinnamon


Ответ на: комментарий от kostik87

Файл есть, права такие. Его содержимое вроде не связано с этим:

# /etc/profile: system-wide .profile file for the Bourne shell (sh(1))
# and Bourne compatible shells (bash(1), ksh(1), ash(1), ...).

if [ "${PS1-}" ]; then
  if [ "${BASH-}" ] && [ "$BASH" != "/bin/sh" ]; then
    # The file bash.bashrc already sets the default PS1.
    # PS1='\h:\w\$ '
    if [ -f /etc/bash.bashrc ]; then
      . /etc/bash.bashrc
    fi
  else
    if [ "`id -u`" -eq 0 ]; then
      PS1='# '
    else
      PS1='$ '
    fi
  fi
fi

if [ -d /etc/profile.d ]; then
  for i in /etc/profile.d/*.sh; do
    if [ -r $i ]; then
      . $i
    fi
  done
  unset i
fi

В profile.d файлы тоже есть, но при беглом осмотре не увидел ничего подозрительного.

STinger
() автор топика
Ответ на: комментарий от STinger

Проверь, что нет строк с форматом конца строк \n, т.е. Windows, а все в формате \r\n - можешь сделать замену через утилиту dos2unix.

kostik87 ★★★★★
()
Последнее исправление: kostik87 (всего исправлений: 1)
Ответ на: комментарий от kaldeon

ls /etc/profile.d

-rw-r--r-- 1 root root   96 дек  5  2019 01-locale-fix.sh
-rw-r--r-- 1 root root  729 фев  2  2020 bash_completion.sh
-rwxr-xr-x 1 root root  196 апр 17  2024 cprocsp.sh
-rw-r--r-- 1 root root   33 мар 15  2022 firefox.sh
-rw-r--r-- 1 root root  951 янв 21 14:19 flatpak.csh
-rw-r--r-- 1 root root  873 янв 21 14:19 flatpak.sh
-rw-r--r-- 1 root root 1107 ноя  3  2019 gawk.csh
-rw-r--r-- 1 root root  757 ноя  3  2019 gawk.sh
-rw-r--r-- 1 root root  349 окт 28  2020 im-config_wayland.sh
-rw-r--r-- 1 root root  999 июл 20  2021 libvirt-uri.sh
-rw-r--r-- 1 root root 1368 июн 11  2020 vte-2.91.sh
-rw-r--r-- 1 root root  966 июн 11  2020 vte.csh
-rw-r--r-- 1 root root  954 мар 26  2020 xdg_dirs_desktop_session.sh

cat /etc/bash.bashrc

# System-wide .bashrc file for interactive bash(1) shells.

# To enable the settings / commands in this file for login shells as well,
# this file has to be sourced in /etc/profile.

# If not running interactively, don't do anything
[ -z "$PS1" ] && return

# check the window size after each command and, if necessary,
# update the values of LINES and COLUMNS.
shopt -s checkwinsize

# set variable identifying the chroot you work in (used in the prompt below)
if [ -z "${debian_chroot:-}" ] && [ -r /etc/debian_chroot ]; then
    debian_chroot=$(cat /etc/debian_chroot)
fi

# set a fancy prompt (non-color, overwrite the one in /etc/profile)
# but only if not SUDOing and have SUDO_PS1 set; then assume smart user.
if ! [ -n "${SUDO_USER}" -a -n "${SUDO_PS1}" ]; then
  PS1='${debian_chroot:+($debian_chroot)}\u@\h:\w\$ '
fi

# Commented out, don't overwrite xterm -T "title" -n "icontitle" by default.
# If this is an xterm set the title to user@host:dir
#case "$TERM" in
#xterm*|rxvt*)
#    PROMPT_COMMAND='echo -ne "\033]0;${USER}@${HOSTNAME}: ${PWD}\007"'
#    ;;
#*)
#    ;;
#esac

# enable bash completion in interactive shells
#if ! shopt -oq posix; then
#  if [ -f /usr/share/bash-completion/bash_completion ]; then
#    . /usr/share/bash-completion/bash_completion
#  elif [ -f /etc/bash_completion ]; then
#    . /etc/bash_completion
#  fi
#fi

# sudo hint
if [ ! -e "$HOME/.sudo_as_admin_successful" ] && [ ! -e "$HOME/.hushlogin" ] ; then
    case " $(groups) " in *\ admin\ *|*\ sudo\ *)
    if [ -x /usr/bin/sudo ]; then
	cat <<-EOF
	To run a command as administrator (user "root"), use "sudo <command>".
	See "man sudo_root" for details.
	
	EOF
    fi
    esac
fi

# if the command-not-found package is installed, use it
if [ -x /usr/lib/command-not-found -o -x /usr/share/command-not-found/command-not-found ]; then
	function command_not_found_handle {
	        # check because c-n-f could've been removed in the meantime
                if [ -x /usr/lib/command-not-found ]; then
		   /usr/lib/command-not-found -- "$1"
                   return $?
                elif [ -x /usr/share/command-not-found/command-not-found ]; then
		   /usr/share/command-not-found/command-not-found -- "$1"
                   return $?
		else
		   printf "%s: command not found\n" "$1" >&2
		   return 127
		fi
	}
fi
STinger
() автор топика
Ответ на: комментарий от kostik87

Проверь, что нет строк с форматом конца строк \n, т.е. Windows, а все в формате \r\n - можешь сделать замену через утилиту dos2unix.

Так наоборот же! \n это юниксовый формат (LF), \r\n это виндовый (CRLF).

Bfgeshka ★★★★★
()
Ответ на: комментарий от kostik87

Нету, да и не менял я там ничего, тем более из венды.

Предполагаемые варианты, почему оно стало вылезать - по времени (истечение срока поддержки + сколько-то месяцев), при последнем запуске flatpak update оно могло что-то встроить, либо при последнем запуске обновления пакетов через менеджер обновлений (я недавно запускал чтобы обновить golang из подключенной сторонней репы, системные обновы конечно же оттуда больше не прилетают).

STinger
() автор топика
Ответ на: комментарий от kaldeon

В норме ни один из этих скриптов не должен выдавать никакого вывода? А если вывод есть, то он идёт в ошибку?

Клонировал flatpak.sh, сделал его исполняемым и запустил - он выдал этот текст ошибки. Сделал то же самое с libvirt-uri.sh - вывода не было.

STinger
() автор топика
Ответ на: комментарий от firkax

Я разумеется посмотрел) Там, если я правильно понял, установка переменных с XDG папками для флатпака. Поэтому решил запустить и посмотреть.

Его содержимое, если кому интересно:

# shellcheck shell=sh
if command -v flatpak > /dev/null; then
    # set XDG_DATA_DIRS to include Flatpak installations

    new_dirs=$(
        (
            unset G_MESSAGES_DEBUG
            echo "${XDG_DATA_HOME:-"$HOME/.local/share"}/flatpak"
            GIO_USE_VFS=local flatpak --installations
        ) | (
            new_dirs=
            while read -r install_path
            do
                share_path=$install_path/exports/share
                case ":$XDG_DATA_DIRS:" in
                    (*":$share_path:"*) :;;
                    (*":$share_path/:"*) :;;
                    (*) new_dirs=${new_dirs:+${new_dirs}:}$share_path;;
                esac
            done
            echo "$new_dirs"
        )
    )

    export XDG_DATA_DIRS
    XDG_DATA_DIRS="${new_dirs:+${new_dirs}:}${XDG_DATA_DIRS:-/usr/local/share:/usr/share}"

    unset new_dirs
fi

В общем запуск flatpak –installations и выдаёт эту ошибку.

STinger
() автор топика
Ответ на: комментарий от STinger

А если к этой строчке 2>> /dev/null дописать то рабочий стол запустится без ошибки уже? (если ты конечно не хочешь флатпак вообще снести)

firkax ★★★★★
()
Последнее исправление: firkax (всего исправлений: 1)
Ответ на: комментарий от kostik87

Ну он был встроен в систему, и я что-то ранее нужное через него устанавливал (помимо телеграма). Разбираться на просроченной системе лень.

Кстати когда он стал какой? Раньше вроде snap какой звали и рекомендовали флатпак как нормальную альтернативу))

Кроме отсутствия нормального гуя (но может я плохо искал?) для управления пакетами я как-то особой каковости во флатпаке не заметил.

STinger
() автор топика
Ответ на: комментарий от STinger

Гуй есть, называется flatseal.

А в теории флатпак лучше снапа, конечно. Только вот требует дофига места, конфигурять его замучаешься, а у пакетов постоянно какие-то проблемы с ограничением доступа между системой и контейнером. Сколько возни нужно для правильной работы каждого другого пакета - ужас, проще научиться использовать баблврап или файрджейл.

Bfgeshka ★★★★★
()
Ответ на: комментарий от Bfgeshka

flatseal

Поставил посмотреть - это не то что я хотел. Это софтина для модификации разрешений, что конечно же полезно, но категорически недостаточно для «нормального гуя».

Я бы хотел что-то вроде магазина приложений, где можно добавлять/удалять репы и ставить/обновлять приложения из них. Чтобы не лезть в енти ваши магические консоли и не стаптывать клаву набором заклинания flatpak update.

конфигурять его замучаешься, а у пакетов постоянно какие-то проблемы с ограничением доступа между системой и контейнером

Конфигурировать - не занимался этим в принципе. С проблемами не особо сталкивался. Долгое время единственным приложением в нём был только телеграм (так как встроенный в Минт менеджер его оттуда поставил), с ним была проблема что не открывались ссылки t_me, потом вероятно при обновлениях пофиксилось само. Сейчас осталась проблема что при сохранении файла из него он предлагает сделать это не в загрузки, и даже не в хомяк, а в какую-то хрен пойми где располагающуюся папку. Но я это делаю так редко, что не особо раздражает.

В другом софте из флатпака я вообще не наблюдал проблем, но софта этого у меня мало, и пользовался я им крайне эпизодически.

STinger
() автор топика