Link to home
Start Free TrialLog in
Avatar of marrowyung
marrowyung

asked on

install the gcc-c++4.8.5-39.el7.x86_64.rpm to my test Centos linux box make it to emergency mode, can't start GUI anymore.

hi,

once after I install the gcc-c++4.8.5-39.el7.x86_64.rpm to my test Centos linux box and it say restart, and once after that the GUI mode crashed and never can come back!

it now in emergency mode and don't know what to do, any idea to bring the GUI mode back ?
ASKER CERTIFIED SOLUTION
Avatar of Dr. Klahn
Dr. Klahn

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of marrowyung
marrowyung

ASKER

anyway to check what  gcc-c++ package has been installed ?
Fourth possibility:  Restore the system using the most recent full backup and never attempt to upgrade gcc again.  This can be enforced using yum and the yum-versionlock plugin.

probably need to destroy it totally !

linux seems very dangerous and unstable ! just once gcc installation can make this happen!

 Ideally there will be something such as "library file version mismatch" which can be corrected.

how to correct ?
SOLUTION
Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Likely what's occurred is you've attempted to place a .rpm on your machine, then install the .rpm directly, rather than through the package repository.

no! I install through CentoS SW store, and it prompt for a restart, and I click yes, then can't start GUI anymore.

all rpm I install manually works well !  except that one from CentOS rps store GUI.

Said another way, some code on your machine is built to only work with the original libc installed + can no longer work with the libc version you have installed now.

you can say it in this way but I just follow what is need for Oracle on linux installattion:

1. https://docs.oracle.com/en/database/oracle/oracle-database/18/ladbi/running-rpm-packages-to-install-oracle-database.html#GUID-BB7C11E3-D385-4A2F-9EAF-75F4F0AACF02
2. https://www.oracle.com/technical-resources/articles/hunter-rac11gr2-iscsi.html#7


The most simple approach will be to remove gcc, leaving dependent software installed, then reinstall the original version of gcc.

in emergency mode I can't run this: cat /var/log/yum.log | grep gcc

it said
cat: /var/log/yum.log: No such file or directory


so you likely have a mess now which can never be fixed.

most likely! and what i did is install that rpm from CentOS application store ! amazing ! I don't like that CentoS linux thing, I downlaod all .rpm from repo of centos and all working fine except this!

but install one application destory everything doesn't make sense.
SOLUTION
Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
SOLUTION
Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
$ /usr/bin/yum list gcc
'

that linux box is in emergenecy mode, yum said to be missing!~

and I do this:
$ rpm -qa | grep -E -i "^gcc"
nothing returned!


Add following line
export LC_ALL=C
inside /etc/bashrc file.
and re-login at gui.

when I reboot I see that ;

setlocale: LC_ALL: cannot change locale (c): No Such file or directory.

cat ~/.xsession-errors.err

GUI error log ?

yum list gcc-c++
rpm -qa | grep -E -i "^gcc"

I think yum list and rpm -qa do the same thing, to list out what package was installed ?
@marrowyung

I have given my comment only when
>> following error happening: => ~/.xsession-errors.err
Hence remove the changes you have applied in /etc/bashrc

When ever you do changes take a backup

https://gist.github.com/ibrahimlawal/bfec7092cb64d46d8f9d1fd2c0c3d9c8
after testing
if not working
copy backup file to original.

>> to list out what package was installed ?
yes

sample output at my system:
$ yum list gcc-c++ 2>&1 | grep -E -i "^gcc"
gcc-c++.x86_64                      4.1.2-55.el5                       installed

Open in new window

yum list gcc-c++ 2>&1 | grep -E -i "^gcc"

what is 2>&1 for ? combine 2 x result together?

$ yum list gcc-c++ 2>&1 | grep -E -i "^gcc"

I am in emergency mode, can't do yum

This one:  
rpm -qa | grep -E -i "^gcc"

should be
rpm -qa | grep -E -i "gcc"
?

and my result is not that gcc , but libgcc-8.3.1_4.5.e1`8.x86_64

is not that !
what is 2>&1 for ? combine 2 x result together?

I am not going to write comments using C/C++/java/awk/...

0 => input file descriptor
1 => output file descriptor
2 => error file descriptor
$ ls FileNotFound.txt
ls: FileNotFound.txt: No such file or directory

Open in new window


$ ls delete.txt
ls: delete.txt: No such file or directory
$ ls FileNotFound.txt >delete.txt
ls: FileNotFound.txt: No such file or directory
$ ls -l delete.txt
-rwxrwSrwx 1 root root 0 Apr 12 02:59 delete.txt

Open in new window

delete.txt => zero bytes => empty file

$ ls FileNotFound.txt >delete.txt 2>&1
$ cat delete.txt
ls: FileNotFound.txt: No such file or directory

Open in new window


If you are having root user or sudo access
$ sudo su - root
[sudo] password for murugesandins:
$ yum list gcc-c++
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
ol5_u7_base                                                                                        | 1.1 kB     00:00
Installed Packages
gcc-c++.x86_64                                           4.1.2-55.el5                                            installed

Open in new window


output using murugesandins user
$ sudo yum list gcc-c++
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
Installed Packages
gcc-c++.x86_64                                           4.1.2-55.el5                                            installed
$ sudo yum list gcc-c++ 2>&1 | grep -E -i "^gcc"
gcc-c++.x86_64                      4.1.2-55.el5                       installed

Open in new window

sudo yum list gcc-c++
execute "yum list gcc-c++" using root user
redirect error and output  to same file descriptor.
When we are executing at terminal
output file descriptor => current terminal
error file descriptor => current terminal
sudo yum list gcc-c++ 2>&1 => redirect error to output file descriptor.
after this grep gcc
-E option => use regular expression
search the line beginning with gcc => ^gcc
Example:
vi sample.txt => /^gcc => go to the line which is starting with gcc

$ sudo rpm -qa | grep -i gcc
$ sudo rpm -qa | grep -i gcc
[sudo] password for murugesandins:
devtoolset-2-gcc-4.8.2-15.1.el5
libgcc-4.1.2-55.el5
devtoolset-1.1-gcc-c++-4.7.2-5.el5
gcc-c++-4.1.2-55.el5
gcc44-c++-4.4.7-11.el5_11
devtoolset-1.1-gcc-gfortran-4.7.2-5.el5
devtoolset-1.1-gcc-plugin-devel-4.7.2-5.el5
gcc-4.1.2-55.el5
devtoolset-1.1-gcc-4.7.2-5.el5
devtoolset-2-gcc-c++-4.8.2-15.1.el5
gcc44-4.4.7-11.el5_11
libgcc-4.1.2-55.el5

Open in new window


$ echo I am using $(cat /etc/redhat-release). Hence used $(which yum)
I am using CentOS release 5.5 (Final). Hence used /usr/bin/yum
$ which yum
/usr/bin/yum

Open in new window

SOLUTION
Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
$ yum -y install gcc-c++
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
Setting up Install Process
Package gcc-c++-4.1.2-55.el5.x86_64 already installed and latest version
Nothing to do

Open in new window


$ sudo yum install gcc-c++
[sudo] password for murugesan:
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
Setting up Install Process
Package gcc-c++-4.1.2-55.el5.x86_64 already installed and latest version
Nothing to do
$ sudo grep murugesan /etc/sudoers
murugesan       ALL=(ALL)       ALL
murugesandins   ALL=(ALL)       ALL

Open in new window

David Favor,

The biggest problem that occurs when the compiler + libgcc ends up... out of whack (technical term) is this can cause a cascade of other packages to have been put into odd states... which means you'll have to likely deal with a long parade of problems... fixing one, then many others pop up for each fix...

yeah ! I will remove it then! what i am doing here is learning sth, like what if next I trust a application /package from Centos GUI apps store and install it and it ask for a reboot, then SAME thing happen ?!!?

is this how Centos manage/vaildate an apps ? Windows and ios seems never has this kind of thing! andriod seems also do not have as I don't experience one!

This incident make me do not trust linux at all ! install and apps will have this problem! it should check for conflict and dependence like when we are install using yum /rpm !

amazing !  so next time I experience this agian I have to reinstall everythnig again ?


what I am trying to do is this:

https://www.experts-exchange.com/questions/29173670/procedure-to-install-oracle-on-linux-VM-if-I-have-the-RPM-package.html?anchor=a43064221¬ificationFollowed=249493482&anchorAnswerId=43064221#a43064221

you can try to help on this too ! if it is not this oracle on linux installation execrise I am not going to install that.


MURUGESAN,

rpm -qa | grep -E -i "^gcc"


for me this return nothing.

rpm -qa | grep -E -i "gcc"

this return libgcc-8.3.1-4.5.el8.x86_64
MURUGESAN,

yum -y install gcc-c++

yeah, working for me on other 2 x linux hosts which still fine after reboot

then how to remove it using rpm on the failured nodes?
I always used to use following commands:
1)
After installing any yum
yum list > ~/svn/yum_list.txt 2>/dev/null &
View installed packages inside ~/svn/yum_list.txt

2)
yum remove Package_Name

Open in new window

Example:
$ sudo yum remove wget.x86_64
[sudo] password for murugesandins:
Loaded plugins: fastestmirror
Setting up Remove Process
Resolving Dependencies
There are unfinished transactions remaining. You might consider running yum-complete-transaction first to finish them.
--> Running transaction check
---> Package wget.x86_64 0:1.11.4-3.el5_8.2 set to be erased
--> Finished Dependency Resolution

Dependencies Resolved

==========================================================================================================================
 Package                 Arch                      Version                             Repository                    Size
==========================================================================================================================
Removing:
 wget                    x86_64                    1.11.4-3.el5_8.2                    installed                    1.4 M

Transaction Summary
==========================================================================================================================
Remove        1 Package(s)
Reinstall     0 Package(s)
Downgrade     0 Package(s)

Is this ok [y/N]: N
Exiting on user Command
Complete!

Open in new window

Before removing obtain approval from supervisor.
$ sudo rpm -e wget.x86_64

Open in new window

Also save your history using
svn/git/TFS, database and SMTP.
yum remove Package_Name

on that nodes, can't do yum as it say yum command not found.

I tried rpm -e <package-name>, it seems can't !

$ sudo rpm -e wget.x86_64

doesn't work for me either.

I think I better reinstall it to save time!

Also save your history using
svn/git/TFS, database and SMTP.

svn is a command ? or you are asking me tto save history to TFS ?
>> oracle on linux
I have used oracle many years ago. Hence cannot provide related help at oracle/mydb.
you mena you havent' touch Oralce on linux for years ?
>> Also save your history using svn/git/TFS, database and SMTP.

We have to save our history using svn command or git command at Linux oriented operating systems.
If they are not available TFS available at windows.
Save your data at Database.
future employee/team => can use them when they need in future => like easy search at bing/google.

All your history commands are saved in $HISTFILE
$ cat $HISTFILE

Open in new window

if TFS svn and git not available => share the content of $HISTFILE file (follow company policies and supervisor approval)
$ # yes before 2013
$ # => I am not interested to write the reason here.
$ # :)
of course I am having oracle user at vmplayer => but not using that.
$ grep -i oracle ~/svn/yum_list.txt  | grep installed
oracle-xe.x86_64                             11.2.0-1.0               installed
oraclelinux-release.x86_64                   5-11.0.2                 installed

Open in new window


$ sudo yum install oracle-xe.x86_64 oraclelinux-release.x86_64
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
Setting up Install Process
Package oraclelinux-release-5-11.0.2.x86_64 already installed and latest version
Nothing to do

Open in new window

>> Oralce on linux for years
I do not need that
since having .txt .gz .zip .tgz .sh readme.cmd bash mksh.exe files to achieve the same.
:)
$ # yes before 2013
$ # => I am not interested to write the reason here.
$ # :)

no need to write
!
tks anyway

please keep helping me on linux as I come from Windows world !

so this incidnet make me very unhappy about linux ! still a mess !

when I use SUSE linux 22 years ago, linux is hell, finally I swtich back to windows 3.1, save me a lot time.

now linux is much better but GUI seems still sucks !
@marrowyung

>> no need to write
$ echo wELcome | wc
      1       1       8

>> incident  make me very unhappy about Linux
until we learn and provide KT status used to be the same.
>> still a mess !
once we achieve that we like mess(to order food using "Iyer Mess") a lot.

>> linux is hell
I love hell which is providing me the heaven at heart
I always used to think any commands(for my daily task even for home work).

>>  but GUI seems still
I am not interested at GUI but using putty.exe or C:\Windows\System32\cmd.exe
C:\Users\murugesandins> TYPE c.cmd
@ECHO OFF
CLS
C:\Users\murugesandins> c
C:\PROGRA~2\INTERN~1> CD \
C:\> DIR /O:D /A /X | C:\Windows\System32\find.exe "Program Files (x86)"
Tue 24-Mar-2020  10:37 PM    <DIR>          PROGRA~2     Program Files (x86)

C:\>cd PROGRA~2
C:\PROGRA~2> DIR /O:D /A /X | C:\Windows\System32\find.exe "Internet Explorer"
Tue 07-Apr-2020  08:08 PM    <DIR>          INTERN~1     Internet Explorer

C:\PROGRA~2>cd INTERN~1

C:\PROGRA~2\INTERN~1> DIR /S /B iexplore.exe
C:\PROGRA~2\INTERN~1\iexplore.exe
C:\PROGRA~2\INTERN~1>

Open in new window

I started liking UNIX from 1995 when started studying Beginners All purpose Symbolic Instruction Code

I am writing these comments to reduce reader's tension across the world.
you can understand this meaning :)
until we learn and provide KT status used to be the same.
KT ?

the linux and hate MS incident make me still stick with MS !

I don't want to spend too much time on IT, I prefer dating a girl **!

like other than RAC, what oracle is doing better than SQL Server? I see nothing !

era changed  ! RAC is not REAL mulitple write master anyway !  sad ! and RDBMS world experts knows multi concurrent write is not good ! that's why MS SQL Always on also not multi write! MySQL and MariaDB cluster by default is not multi write master! hard to keep ACID is they turn it on !

actually I have post asking how to display real time CPU, RAM, disk and network usage, seems linux do not have it !

in Windows, right click on task bar and run task manager, all there !
>> want to spend too much time on IT
Save money for future exceptions.

Of course I am going out of scope 29178462

$ echo "KT :)" | sed "s/\(.\)\(.\)/\1nowledge \l\2ransfer/;"
Knowledge transfer :)
[code]

CPU, RAM, disk and network usage
Task manager => copy value and write in .txt file handle the values
[code]
$ top -n 1 > required.txt 2>&1
$ netstat -na | grep LISTEN > listen.txt 2>&1 

Open in new window


C:\Users\murugesandins> C:\Windows\System32\NETSTAT.EXE -na  > delete.txt 2>delete.txt
The process cannot access the file because it is being used by another process.

C:\Users\murugesandins> C:\Windows\System32\NETSTAT.EXE -na  > delete.txt 2>delete1.txt

C:\Users\murugesandins>

Open in new window


>> MySQL MariaDB $ORACLE_HOME/bin/sqlplus sqlplus.exe ....
I do not want to write comment on business persons/saint/... across the world.
Related to usage of OS and applications => depends on requirement, money, bugs, KT from/to the team.
post your comment /query related to current 29178462
if resolved => make solved / assisted.
SOLUTION
Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
@marrowyung

1. Proceed as per the comment from Arnold (after obtaining approval)
2. take a backup of existing file.
cp -ip /etc/inittab /etc/inittab.Original
-i => interactive mode
-p => /etc/inittab.Original used to have same modification birth (stat) time excluding inode.
$ ls -i /etc/inittab  /etc/inittab.Original
427884 /etc/inittab  427516 /etc/inittab.Original

Open in new window

427516 => /etc/inittab.Original [ inode like primary key at DB / employee id at office / roll number at school :) ]
$ grep -E "^id:"  /etc/inittab
id:5:initdefault:

after approval and backup change 5 to 3.
3 -> 5